X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=rhawk;h=0bc31a3ceadaf1512ed2ac9837a26ef77773f8b9;hb=55a82803d9b9a05ffc1e3ce2a12e452d8bcf0a9a;hp=f1478f67d74f64c6db025f533e25bdff303fdc06;hpb=8bb3be25a504498e533e4da919e1023646ca7828;p=~andy%2Frhawk diff --git a/rhawk b/rhawk index f1478f6..0bc31a3 100755 --- a/rhawk +++ b/rhawk @@ -4,6 +4,7 @@ @include "json.awk" @include "spades.awk" @include "email.awk" +@include "remind.awk" @include "sfvlug.awk" # Initialization @@ -27,6 +28,8 @@ BEGIN { join("#rhspades") join("#sfvlug") } + + PROCINFO["sorted_in"] = "@ind_str_asc"; } # Admin @@ -429,6 +432,24 @@ DST != "#rhnoise" && DST != NICK && say("#rhnoise", "(" DST ") " FROM ": " MSG); } +# Fun operators +function bang(a, b) { + if (a=="nan") return "nan"; + if (b=="nan") return "nan"; + if (a==b) return "nan"; + if (a==0) return "+0"; + if (b==0) return "-0"; + return 1/(1/a - 1/b); +} + +/^ *[+-]?[0-9]*\.?[0-9]+( *\? *[+-]?[0-9]*\.?[0-9]+)+ *$/ { + gsub(/?/, " "); + _num = $1+0; + for (_i=2; _i<=NF; _i++) + _num = bang(_num, $_i+0); + reply(_num); +} + # Misc { fflush("") }