< 1263081802 0 :MigoMipo!unknown@unknown.invalid QUIT :"When two people dream the same dream, it ceases to be an illusion. KVIrc 3.4.2 Shiny http://www.kvirc.net" < 1263082152 0 :ehird!unknown@unknown.invalid QUIT :Ping timeout: 180 seconds < 1263082249 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is probably slightly crazy. Or silly. < 1263082254 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Template-like macros, anyone? < 1263082431 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :are they chocolate-covered? < 1263082521 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1263082534 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :darn. < 1263082605 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the nature is so beautiful < 1263082613 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :trees, especially < 1263082644 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yay, trees < 1263082658 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i want to touch them but the snow cover would be damaged < 1263082695 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but i think it should start warming above -20 celsius now < 1263082737 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :-10.8 here, says the internet < 1263082746 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: huh? < 1263082753 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :was near -30 during the week though < 1263082762 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :we had a Chinook yesterday < 1263082789 0 :Asztal!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1263082802 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :(Chinook = local name for Foehn wind) < 1263082814 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :was around -20 the rest of the week < 1263082865 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Implementing something similar to C++ templates using macros. < 1263082875 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263082878 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :sounds scary < 1263082888 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :just having better template syntax would be good I think < 1263082891 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"AEG registered the trademark Fön in 1908 for its hairdryer. The word became a genericized trademark and is now, with varying spelling, the standard term for "hairdryer" in several languages, such as Finnish, German, Swiss German, Danish, Italian, Dutch, Norwegian, Czech, Croatian, Latvian, Romanian, Hebrew, Slovak, Slovenian, Swedish, Russian, Ukrainian, Turkish and Swiss French." < 1263082894 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :coppro: do you have beautiful trees there? < 1263082895 0 :Asztal!n=asztal@host86-156-98-119.range86-156.btcentralplus.com JOIN :#esoteric < 1263082904 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: we do! But all the snow melted :( < 1263082914 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :probably not if I went to the mountains though < 1263082922 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :(not melted, not not beautiful) < 1263082923 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :coppro: The only scary bit is that it needs two GCC extensions to work similarly to C++ templates. < 1263082931 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: O_o < 1263082931 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :({ }), and functions on the stack. < 1263082935 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263082944 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1263082955 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :you meant CPP < 1263082969 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... Yes... < 1263082996 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :In what other context would "similar to C++ templates using macros" make any sense? < 1263083047 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :any? < 1263083055 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :there are more than just CPP macros < 1263083080 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And they don't really make sense when discussing "C++ templates", now do they? < 1263083092 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :well, you didn't explain the context < 1263083109 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :you may have just been trying to make some macro system with similar power or function to C++ templates for all I knew < 1263083130 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Why would I do something like that? :P < 1263083290 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah *that* would've been crazy. < 1263083327 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :we are mad here, but not _that_ mad < 1263084857 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1263085199 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to bed. ( http://eatliver.com/i.php?n=5201 ) < 1263085270 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :very poignant < 1263085297 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :I DON'T GET IT < 1263085541 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's metaphorical < 1263086083 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://eatliver.com/i.php?n=5190 < 1263086122 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION suggests looking carefully at that one < 1263086344 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :hello, oerjan < 1263086391 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :hello, oklofok < 1263086410 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hello, bsmntbombdood < 1263086758 0 :uorygl!unknown@unknown.invalid PRIVMSG #esoteric :hello, bsmntbombdood < 1263087360 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :helllllloe < 1263089761 0 :ehird!i=5b68ec1f@gateway/web/freenode/x-idffifywwzpjowsw JOIN :#esoteric < 1263089766 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm *totally* dickinsonian < 1263089824 0 :ehird!unknown@unknown.invalid PART #esoteric :? < 1263089830 0 :ehird!i=5b68ec1f@gateway/web/freenode/x-idffifywwzpjowsw JOIN :#esoteric < 1263090119 0 :ehird_!i=5b68ec1f@gateway/web/freenode/x-njbwfhduzwvbzdvd JOIN :#esoteric < 1263090205 0 :ehird!unknown@unknown.invalid QUIT :Ping timeout: 180 seconds < 1263090318 0 :ehird!n=quassel@91.104.236.31 JOIN :#esoteric < 1263090319 0 :ehird!unknown@unknown.invalid QUIT :Client Quit < 1263090346 0 :ehird!n=quassel@91.104.236.31 JOIN :#esoteric < 1263090398 0 :ehird_!unknown@unknown.invalid QUIT :Ping timeout: 180 seconds < 1263090689 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1263091318 0 :Gregor!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263091479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: ping < 1263091487 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Pong < 1263091494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: what's the Tile command to set theme? < 1263091497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tile::setTheme foo doesn't work < 1263091510 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I've not messed with Tk 8.5. < 1263091518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bah < 1263091520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% package require tile < 1263091520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0.8.0 < 1263091520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% tile::setTheme xpnative < 1263091520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :invalid command name "tile::setTheme" < 1263091587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wiki.tcl.tk sez these should all work < 1263091602 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shruggeth < 1263091686 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay, one really dumb question though < 1263091692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should use tclsh to execute a tcl script, right? < 1263091693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :batch mode < 1263091697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(never wish) < 1263091746 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263091758 0 :coppro!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1263091771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The following instructions are for the Tile package, not for the ttk included in Tk 8.5. There are subtle differences, such as tile::setTheme becoming ttk::setTheme and others. < 1263091774 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :wish has no reason to exist any more; package require Tk. Always. < 1263091775 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Badabingo. < 1263091784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: objection: interactive use < 1263091806 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: package require Tk works just as well in interactive use. < 1263091812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But it's more typing. < 1263091859 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I take it you're not familiar with how there used to be a bunch of different tclsh's... < 1263091870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1263091871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ttk::setTheme alt < 1263091871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :button .b -text "Hello, world!" -command exit < 1263091871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pack .b < 1263091874 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :tclsh, wish, expect, expectk, etc. < 1263091882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if I have to prefix stuff with ttk:: to get it to actually use the widgets < 1263091886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because it doesn't seem to be changing anything < 1263091891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: erm, expect is a separate program < 1263091918 0 :Gregor!n=gregor@65.183.185.22 JOIN :#esoteric < 1263091964 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: A Tcl shell with expect loaded. < 1263092250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://wiki.tcl.tk/14796 < 1263092252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-( < 1263092257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have to use ttk widgets to get theming. < 1263092265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I thought it was added to the base Tk widgets; lame. < 1263092290 0 :coppro!n=coppro@unaffiliated/coppro JOIN :#esoteric < 1263093001 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263093116 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263093124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Much better! < 1263093446 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1263093692 0 :FireFly!unknown@unknown.invalid QUIT :"Leaving" < 1263097034 0 :coppro!unknown@unknown.invalid QUIT :"I am leaving. You are about to explode." < 1263098220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#amend if anyone wants to discusserate my editorate btw. < 1263098949 0 :coppro!n=coppro@unaffiliated/coppro JOIN :#esoteric < 1263099583 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wb coppro < 1263100617 0 :ehird!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1263103502 0 :Pthing!unknown@unknown.invalid QUIT :Remote closed the connection < 1263106048 0 :MizardX!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263106247 0 :lament!n=lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1263106756 0 :Asztal!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263110399 0 :clog!unknown@unknown.invalid QUIT :ended < 1263110400 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1263111383 0 :soupdragon!n=somebody@unaffiliated/fax JOIN :#esoteric < 1263112561 0 :AnMaster!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1263112736 0 :AnMaster!n=AnMaster@unaffiliated/anmaster JOIN :#esoteric < 1263114387 0 :lament!unknown@unknown.invalid QUIT : < 1263117666 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263118828 0 :jpc!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263121688 0 :soupdragon!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1263121704 0 :soupdragon!n=somebody@unaffiliated/fax JOIN :#esoteric < 1263122662 0 :FireFly!n=firefly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1263124912 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1263125814 0 :ais523!n=ais523@unaffiliated/ais523 JOIN :#esoteric < 1263126278 0 :olsner!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263126317 0 :olsner!n=salparot@c83-252-238-148.bredband.comhem.se JOIN :#esoteric < 1263126896 0 :MizardX!n=MizardX@unaffiliated/mizardx JOIN :#esoteric < 1263127013 0 :augur!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1263127643 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : Side effects for any library function may include it returning NULL, the program exiting, or fucking output to standard output! < 1263127676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sounds like an esolang < 1263128436 0 :zeotrope!n=user@bas3-kitchener06-1096642390.dsl.bell.ca JOIN :#esoteric < 1263128951 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :huh? where? < 1263128967 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :hi SimonRC < 1263128981 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1263129369 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1263130177 0 :k!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263130198 0 :kar8nga!unknown@unknown.invalid QUIT :Nick collision from services. < 1263130201 0 :k!unknown@unknown.invalid NICK :kar8nga < 1263130920 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1263131365 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does anyone know if information is transferred faster by reading or by listening. Assume a skilled reader and native speaker. < 1263131394 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :reading, absolutely < 1263131418 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it's impossible to talk at the normal reading speed < 1263131422 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1263131439 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklofok, well what about news? Try talking as fast as they do on news on TV or radio < 1263131445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you will have a hard time managing that < 1263131469 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(at least, most people have a hard time managing that) < 1263131515 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :even if i just mumble something like "bzzb" for every word, it will take about 3 times more to read something < 1263131524 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :looking at a sentence at a time vs. looking at a word at a time < 1263131525 0 :BeholdMyGlory!n=behold@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1263131531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm probably < 1263131553 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :a bit of an exaggeration maybe, but i think it's definitely reading. < 1263131565 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :(i did test the bzzb thing) < 1263131639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263131983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bbl < 1263132003 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird for the logs, here's a Perl6 code snippet for you: "subset Even of Int where { $_ % 2 == 0 }" < 1263132012 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :now if only we could persuade them to do type inference too, that would be perfect < 1263132041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and as it's Perl6, I shudder at the $_ and think $^a would work better) < 1263132041 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :think an advanced perl6 compiler could prove that even + even = even? < 1263132175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, it doesn't try to do type inference at all < 1263132254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, it does work with $^a too < 1263132273 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I bet it looks at how many arguments the block's expecting, and uses $_ or the first arg accordingly < 1263132303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :works with pointy blocks too, this is fun < 1263132636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, $^a ? < 1263132639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what does that mean < 1263132654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and why the alphanumeric bit. Did they run out of other symbols? < 1263132656 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: if you use variables starting $^ inside a block in perl6 < 1263132663 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then they become arguments to the block, in alphabetical order < 1263132669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm okay < 1263132686 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, do they just take every feature they can think of and throw it in? < 1263132691 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :e.g. {"$^a $^c $^b"}<1 2 3> returns "1 3 2" < 1263132710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :um, forgot the parens < 1263132726 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say {"$^a $^c $^b"}(|<1 2 3>) < 1263132728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263132736 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and forgot to interpolate the param list < 1263132748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, interpolate? < 1263132750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't like the implicit alphabetical order thing, you can do it explicitly < 1263132751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the param list?! < 1263132763 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: func(<1 2 3>) passes it one argument, the list (1, 2, 3) < 1263132770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263132774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :func(|<1 2 3>) passes it three, 1, 2, and 3 < 1263132784 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well okay, varargs style kind of < 1263132785 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which could of course be written func(1, 2, 3) < 1263132800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can see why that other notation is useful < 1263132807 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to pass varargs from an array < 1263132820 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say -> $first, $second, $third {"$first $third $second"}(|<1 2 3>) < 1263132821 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263132834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or for invoking functions with a list of arguments and you don't know the function or the number of arguments until runtime < 1263132836 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't like alphabetical order, you can use a lambda instead < 1263132844 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it's kind-of weird that the lambda operator is -> {} < 1263132853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263132881 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say (sub ($first, $second, $third) {"$first $third $second"})(|<1 2 3>) < 1263132884 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263132888 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's perl5y syntax for a lambda, also accepted in perl6 < 1263132923 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say (sub ($first, $second, $third) {"$first $third $second"})(:second(2), :third(3), :first(1)) < 1263132924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263132928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can name the arguments instead if you like < 1263132936 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when calling a sub < 1263132958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say -> $first, $second, $third {"$first $third $second"}(:second(2), :third(3), :first(1)) < 1263132959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263132967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with the pointy block too, it seems pointy blocks work identically to subs < 1263133371 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263134505 0 :jetxee!n=sergey@151.57.248.159 JOIN :#esoteric < 1263134524 0 :jetxee!unknown@unknown.invalid PART #esoteric :? < 1263134894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, pointy blocks? < 1263134907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the -> {} notation for lambdas < 1263134912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263134919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, thought you meant <> < 1263134926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :looks pointy to me < 1263134941 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> say {"$^a $^c $^b"}(:b(2), :c(3), :a(1)) < 1263134943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 3 2 < 1263134946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, that works as well? < 1263134949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm impressed < 1263134959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION abbreviates < 1263134997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, seems they got rid of the :1a abbreviation for :a(1) < 1263135019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably a good thing, that was beginning to get too silly for words < 1263135041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm? < 1263135067 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the only real reason they added :1a to the language < 1263135075 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :was so you could have a function with params called st, nd, and th < 1263135079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and do :2nd < 1263135081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err okay < 1263135087 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :are those reserved words? < 1263135088 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, to make Python programmer's heads explode < 1263135096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nothing's a reserved word in Perl6 < 1263135107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, then why can't you have params called st, nd or th? < 1263135111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can < 1263135121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just you'd have to write :nd(2) rather than :2nd < 1263135127 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which defeats the whole point in that naming < 1263135132 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, is that perl6 syntax? < 1263135141 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because iirc you used shift or something in perl5 < 1263135144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, although it's not stabilised yet < 1263135161 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perl6 has actual syntax for arguments < 1263135166 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than lumping them all in @_ < 1263135171 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also I'd much rather use python than perl. Even for text processing < 1263135203 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :perl does make my head explode, Python only makes the frontal indention lobe explode < 1263135287 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, still I have found the secret of perl now < 1263135291 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :still,* < 1263135301 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> sub if ($a) { say $a } ; if('Hello, world!'); < 1263135303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1263135333 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :if ?? < 1263135341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is: if you can think of a single use case where it would be one letter shorter than current alternatives, implement the feature < 1263135356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon, he redefined if < 1263135362 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :read the line < 1263135362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I didn't < 1263135364 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I defined it < 1263135368 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the original usage of if still works < 1263135372 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1263135381 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how can both work at once? < 1263135393 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster, quantum physics < 1263135398 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's no code snippet where it's ambiguous whether you mean if the control-flow operator or if the function < 1263135461 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon, :P < 1263135563 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> if (1 != 2)+4 < 1263135565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :5 < 1263135566 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> if(1 != 2)+4 < 1263135568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1263135617 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> if (1 != 2) { say "Hello, world!" } < 1263135619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Hello, world! < 1263135629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :> if(1 != 2) { say "Hello, world!" } < 1263135630 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Confused at line 1, near "{ say \"Hel" < 1263135634 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whitespace sensitivity is fun < 1263135646 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(those are, respectively, function, function, control operator, syntax error) < 1263135760 0 :lifthrasiir!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1263137035 0 :soupdragon!unknown@unknown.invalid QUIT :"Leaving" < 1263137085 0 :soupdragon!n=somebody@unaffiliated/fax JOIN :#esoteric < 1263137158 0 :soupdragon!unknown@unknown.invalid QUIT :Client Quit < 1263137359 0 :lieuwe!i=3efb65d9@gateway/web/freenode/x-ybsisabtsgyxhrvt JOIN :#esoteric < 1263137498 0 :soupdragon!n=somebody@unaffiliated/fax JOIN :#esoteric < 1263137903 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :i need a name for the esolang i'm making, hard to come up with something that isn't used already :-/ < 1263137914 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :call it lieuwe < 1263137939 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: ehrm, no, i wouldn't like my name all ofer ze interwebz < 1263137957 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :whats the language < 1263137960 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :whats it < 1263137961 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :show me < 1263138001 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : soupdragon: ehrm, no, i wouldn't like my name all ofer ze interwebz <-- if you don't, why are you using that nick on irc < 1263138002 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :(add[(get[foo]),(get[bar])]) to add two variables... < 1263138018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since this channel has public logs after all. < 1263138025 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :and do nothing with the result :-P < 1263138037 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :how is it eso? < 1263138045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe, looks just verbose, < 1263138048 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: ... You mean you don't go by Real "nick" Name? < 1263138049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/,$// < 1263138058 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: not yet, need to add some odd funcs in... < 1263138068 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1263138124 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :decisions, decisions... < 1263138196 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: nope, atleast not here, i do on most forums... < 1263138228 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Lame. < 1263138261 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: ? < 1263138868 0 :uorygl!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1263138933 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :i need some moar ideas, is there some place where i can find high level esolangs? the wiki doesn't seem to have any... < 1263138947 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Glass < 1263138981 0 :uorygl!n=warrie@lunch.normish.org JOIN :#esoteric < 1263139120 0 :olsner!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1263139341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: the issue is, most esolangs are created to explore a particular concept < 1263139351 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas high-level languages tend to be full of lots of different concepts < 1263139374 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and then there are languages which feel simultaneously high- and low-level, like INTERCAL < 1263139399 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(the whole thing's pretty much an abstraction inversion; you have some rather high-level commands/operators, but they're mostly useful only for implementing low level commands/operators in) < 1263139453 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm, yeah, i was thinking 'bout going in a different direction with this, i have the lexer/parser done, i was thinking about a esolang to python converter... or possibly just convert it to a ast and execute it... < 1263139472 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :and that users could define their own lang for it... < 1263139475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: those are typical methods of implementing esolangs < 1263139528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(CLC-INTERCAL manual: http://smuggle.intercal.org.uk/manual/) < 1263139538 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has things like first-class filehandles < 1263139549 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to the extent that you can steal a filehandle from another process and continue reading from it / writing to it < 1263139590 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: 0.o < 1263139605 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :CLC-INTERCAL has something very like object-orientation, too < 1263139650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and something which is vaguely similar to a reference, except it isn't < 1263139665 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: now that sounds like tho mother off all esolangs < 1263139683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :huge progress has been made in INTERCAL development over the past few years < 1263139693 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :e.g. C-INTERCAL's threading model and CLC-INTERCAL's data type model < 1263139729 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: It is. < 1263139753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : lieuwe: those are typical methods of implementing esolangs <-- typical? < 1263139767 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :"Caution! Under no circumstances confuse the mesh with the interleave operator, except under confusing circumstances!" < 1263139772 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: compilation to an existing high-level language, and tree-ising and then interpreting < 1263139773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well there are a few examples of it, but I wouldn't call it typical < 1263139783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah hm. < 1263139786 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: confusing mesh and interleave just gives you a syntax error anyway < 1263139794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, misinterpreted you then. Thought you meant "doing like CLC" < 1263139797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263139799 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is quite unusual afaik < 1263139809 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, that's certainly an atypical method of implementing an esolang < 1263139831 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(CLC-INTERCAL is implemented in CLC-INTERCAL; most of the code that does the actual work, though, is in the VM, which is written in Perl) < 1263139839 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: Also, here's an operator: http://upload.wikimedia.org/wikipedia/commons/4/41/INTERCAL_Circuitous_Diagram.svg < 1263139855 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: actually, I'm pretty sure that diagram is just a joke < 1263139866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some people have tried tracing it and it doesn't seem to mean anything meaningful < 1263139868 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: O.o < 1263139871 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes. < 1263139885 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The select operator actually has mechanics... < 1263139889 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm. Semantics. < 1263139895 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Not a bus line to New York. < 1263139900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, it doesn't make sure even if you know what select does. < 1263139912 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the biggest giveaway is that it takes two 8-bit arguments in the diagram < 1263139917 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but two 16-bit arguments in the code < 1263139939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it might be a stripped-down version, I suppose < 1263139973 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but what does it do instead of select < 1263139992 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :who knows? < 1263140008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it uses a complicated version of logic, which has more than two values for its booleans < 1263140020 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and does one of the outputs lead to power supply? < 1263140024 0 :olsner!n=salparot@c83-252-238-148.bredband.comhem.se JOIN :#esoteric < 1263140028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :look near the bottom < 1263140052 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ^ < 1263140056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi olsner < 1263140068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: err, no, that looks more like they just grounded one of the wires < 1263140070 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hiya < 1263140071 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which might be an input for al I know < 1263140073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*all < 1263140080 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :standard method of indicating a constant 0 on a circuit diagram < 1263140086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :horrible forcast here: -26 C during the night < 1263140093 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1263140094 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh right < 1263140144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what do you call the space below the house in English. Usually there is some inspection hatchet somewhere. Most of the time you can't stand straight in there < 1263140161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :definitely not cellar. < 1263140168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "basement" and "cellar" are both used, but for larger spaces < 1263140169 0 :olsner!unknown@unknown.invalid PRIVMSG #esoteric :Boden went from -31 to +.5 in one day < 1263140176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(a basement's somewhere you live in, a cellar's a storage space) < 1263140177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not large < 1263140183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but maybe half a meter high < 1263140188 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think it's pretty rare to have a small space beneath the house in the UK < 1263140192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you can't store stuff in it, nor live in it < 1263140192 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so we don't have a word for it < 1263140193 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "Crawl space". < 1263140196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, ah < 1263140198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :normally it's just the foundations straight underneath < 1263140201 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well "grund" in Swedish < 1263140207 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: that would be the general term, not for a place under a house in particular < 1263140208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how do you inspect the foundations? < 1263140214 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then < 1263140214 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you don't? < 1263140216 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Yes. < 1263140217 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1263140218 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or you dig up the floor, if you need to < 1263140242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the ground temperature in the UK rarely gets so low that it freezes pipes, or that you have to insulate the house from it < 1263140269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well we have a temp/humidity sensor in that crawl space in this house. The remote unit that you read the results on shows it as -1.2 C in there < 1263140277 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and there are water pipes around there somewhere < 1263140283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1263140306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is rarely this cold for so long as it has been this winter < 1263140330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if it hits -20 C or so around here, it is usually just for a day or two. Rather than several weeks < 1263140341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's been worse than usual here < 1263140348 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but worse than usual is just -3 or so at night, and snow most days < 1263140349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there too? hm < 1263140353 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263140357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, -3 *at night* < 1263140378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that's practically early spring! < 1263140391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, this is why we don't need underground crawl spaces < 1263140403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1263140476 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263140478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway the weather has been strange this weekend. Warmest place was somewhere up near the polar circle, and coldest in mid-south < 1263140496 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hi! < 1263140499 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hello < 1263140514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#amend for talking about my text editor, btw. < 1263140518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*for talking < 1263140522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, do you americans have a specific name for that type of crawl spaces though? < 1263140530 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, alter you mean? < 1263140536 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, or how did the vote go? < 1263140544 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No. < 1263140550 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, amend sounds so religious ;P < 1263140555 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't come up enough generally. < 1263140556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Uh, I think it was 3:3:1. < 1263140565 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No it doesn't. Alter does, though - altar. < 1263140579 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I prefer amend, so there. < 1263140582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, "amen(d) - the fundamental(ist) text editor" < 1263140585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice slogan? < 1263140595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Not... really, no. < 1263140605 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Methinks I prefer "For the generalised transmogrifying of textual information." :-P < 1263140620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, which one is most memorable? < 1263140639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Neither are memorable at all. < 1263140649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: did you logread before coming online, by the way? < 1263140652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also amend sounds like it would be /etc/init.d/amend < 1263140655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doing so < 1263140657 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in: a daemon < 1263140690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, and amarok is a daemon that amaros. < 1263140703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what? < 1263140706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :06:00:03 ehird for the logs, here's a Perl6 code snippet for you: "subset Even of Int where { $_ % 2 == 0 }" < 1263140707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :k != d < 1263140708 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1263140710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: oops. < 1263140712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1263140718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yep, I know < 1263140742 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :such a pity it doesn't do type inference < 1263140746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that line gave me an idea btw: a mathematica/haskell/perl hybrid < 1263140752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, type inference on dependent types is probably TC or even uncomputable < 1263140759 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: go away, that idea is inherently trolling < 1263140760 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :od: the o daemon < 1263140765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, :D < 1263140776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fold: the fol daemon < 1263140777 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well okay, not every such one < 1263140783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ld: the l daemon < 1263140814 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ldd: the l daemon daemon < 1263140818 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Our editor, who art in /usr/bin, < 1263140823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hallowed by thy Name. < 1263140843 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thy ubiquity come. < 1263140849 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thy customisation will be done, < 1263140854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I /do/ actually like the idea of amen for the editor, and amend for an associated daemon < 1263140856 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :On Windows as it is in Linux. < 1263140863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Give us this day our daily mail. < 1263140869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And forgive us our permissions violations, < 1263140875 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As we forgive those who violate permissions against us. < 1263140882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And lead us not into Emacs, < 1263140886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But deliver us from vim. < 1263140895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For thine is the transmogrification, < 1263140898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and the power, and the glory, < 1263140901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for ever and ever. < 1263140902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Amend. < 1263140909 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that naming scheme doesn't follow: rpcbind: rpcbin daemon?. It is "rpcbind daemon" < 1263140917 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in, the d is doing twice the work < 1263140926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thus od could be the od daemon < 1263140941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, to anger AnMaster and confuse ais523: KDE 4 is pretty nice. < 1263140963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :theory: ehird actually likes all DEs < 1263140967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I can imagine worse things than KDE4 < 1263140973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so far, it's consistent with the evidence < 1263140985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I can count them on the fingers of one hand < 1263140998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, shouldn't `subset Even of Int where { .% 2 == 0 }` work? < 1263141001 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this is Perl 6, after all < 1263141005 0 :Asztal!n=asztal@host86-156-98-119.range86-156.btcentralplus.com JOIN :#esoteric < 1263141017 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, I dislike OS X, and modern Windows, I think < 1263141021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I don't think % is a legal method name < 1263141024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, I don't like GNOME as much as I used to. < 1263141033 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: every operator should be a method too, duh < 1263141048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, maybe would < 1263141052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :implicit $_ feels so wrong in Perl6, though < 1263141058 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even though it's all over the place in Perl5 < 1263141064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's not implicit, it's . < 1263141073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's much more Perl 6 than saying $_ imo < 1263141076 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, that's an implicit left argument to . < 1263141079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is an operator < 1263141095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : also, I don't like GNOME as much as I used to. <-- would you start liking it more if I said I thought KDE4 was better? < 1263141096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :actually, I'd call prefix . and infix . different operators < 1263141107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Surprisingly enough, I don't care about your opinions. < 1263141119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: also, have you tried Quassel IRC? Kubuntu includes it instead of Konversation, it's rubbish < 1263141125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I haven't < 1263141129 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't feel KDE-ish at all, it just feels unpolished and crappy < 1263141135 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Konversation is much nicer < 1263141165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :06:51:07 the only real reason they added :1a to the language < 1263141167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :06:51:15 was so you could have a function with params called st, nd, and th < 1263141168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :06:51:19 and do :2nd < 1263141170 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Beautiful. < 1263141176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: are you sure they got rid of it ratehr than rakudo not implementing it? < 1263141179 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, not sure < 1263141181 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I remember trying konversation some time ago. Was pretty limited back then < 1263141183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, you can do (2 nd) in Haskell < 1263141185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*rather < 1263141186 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it could be that it just isn't implemented yet < 1263141189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but yeah, it would have been before I even was on freenode < 1263141195 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably the first irc client I used even < 1263141200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instance Num ((Integer -> a) -> a) where < 1263141208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : fromInteger n f = f n < 1263141215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so (2 nd) -> (nd 2) < 1263141227 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the first IRC client I used was Chatzilla < 1263141227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm no, ksirc or something like that... I think that was before konversation even < 1263141235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which had loads of rough edges at the time, but was usable < 1263141264 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I had a rather ridiculous problem with the WiFi here < 1263141272 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: o.O < 1263141276 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It worked on the LiveCD, but activating the proprietary driver post-install just sat there and did nothing. < 1263141279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The solution? < 1263141285 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# depmod -a < 1263141288 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# modprobe wl < 1263141290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And do it again. < 1263141292 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Go figure. < 1263141313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I had a very similar problem ages ago, trying to install NVidia graphics drivers on Linux < 1263141321 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :when for some reason there wasn't a packaged version, or I couldn't use it < 1263141328 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I think I might have been installing on a computer with no internet connection) < 1263141329 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GRUB (2, even) installation worked fine though, no manual tweaking. Although at first it didn't seem to work, that was just because I forgot to shut down and start up again, which was required for GRUB on Mac or something for some reason. < 1263141353 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the issue was that it had called its kernel module the exact same thing as one that already existed < 1263141370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compositing wasn't on by default, but I just had to click an "Enable desktop effects" checkbox. < 1263141371 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think I fixed it by putting a modprobe in the startup scripts somewhere, to run with exactly the right timing to get the right module < 1263141385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :All in all, I'm pretty happy. < 1263141396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :...apart from font rendering. < 1263141432 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: which OS is it this time? KDE/Linux? < 1263141440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Kubuntu. < 1263141473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if the small default fonts are making him lean in, or whether he's just leaning in for no reason. < 1263141482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you mean, there's a version of Kubuntu that /didn't/ screw up the packaging? < 1263141489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Eh? < 1263141505 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the Ubuntu people have been consistently bad at packaging KDE, for some reason I don't really understand < 1263141514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :06:55:41 which is: if you can think of a single use case where it would be one letter shorter than current alternatives, implement the feature < 1263141517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yawn, perl trolling < 1263141521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how 1997 < 1263141529 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It seems alright here < 1263141542 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263141607 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to figure out how to tell Emacs to disable the fringe < 1263141647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :08:07:45 ais523: now that sounds like tho mother off all esolangs < 1263141650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL is, very literally, that. < 1263141658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, Princeton INTERCAL is < 1263141660 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL came later < 1263141667 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oops. < 1263141671 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/C-/d < 1263141713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one of the few bits of surviving info about Princeton INTERCAL was that it internally represented numbers as their string representation, in binary < 1263141718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably explains why it was so slow < 1263141786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :08:16:48 ais523, how do you inspect the foundations? < 1263141788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :08:16:54 then < 1263141789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :08:16:54 AnMaster: you don't? < 1263141791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : It worked on the LiveCD, but activating the proprietary driver post-install just sat there and did nothing. <-- what system is that? < 1263141794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!qdb < 1263141808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: perhaps you could read a few lines on and see < 1263141824 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, like you do when log reading? < 1263141833 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(hint: you don't) < 1263141915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : the issue was that it had called its kernel module the exact same thing as one that already existed <-- hm. Why not move away the existing module somewhere else < 1263141945 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because it was being maintained by the package manager < 1263141955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I don't like messing with package-manager-maintained files < 1263141985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well, to begin with I'm pretty sure the nvidia module is called "nvidia". Not sure what else would be called that < 1263141996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :another nvidia module, I assume < 1263142013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also, modprobe wouldn't work, would it? insmod might < 1263142028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :unless modprobe does allow you to give the full path < 1263142028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster -- telling you your anecdote is WRONG since 2007. < 1263142028 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, not sure < 1263142035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WRONG, I tell you! WRONG! < 1263142037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was pretty sure it doesn't. Seems it does < 1263142049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm, maybe it was under 2.4 it didn't allow that < 1263142053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I think it was a timing issue, more than giving the full path < 1263142068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, timing + mounting file systems then? < 1263142077 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, or maybe the initramfs < 1263142080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263142082 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :could be < 1263142159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Someone guess what my hostname is. :P < 1263142179 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :31.236.104.91.in-addr.arpa domain name pointer customer11288.pool1.Greenwich-GLN5000-BAS0001.orangehomedsl.co.uk. < 1263142182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no need to guess < 1263142185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, my hostname. < 1263142190 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Not my domain name. < 1263142197 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well okay. < 1263142208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, any clues or hints? < 1263142211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how to find what the default font rendering settings are if he's customised them < 1263142213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nope. < 1263142216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :without that it is basically impossible < 1263142230 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fine, I'll say warm/cold depending. < 1263142234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can try to guess the hostname of my current computer, too < 1263142242 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tux? < 1263142252 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I /think/ it's possible to determine it by having looked at my termcasts or something like that < 1263142252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Freezing. < 1263142254 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :what about the new quantum algorithm < 1263142257 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :? < 1263142264 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, mac? < 1263142273 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Freezing. < 1263142275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, intercal? < 1263142277 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :does linear algebra without Gaussian elimination or something < 1263142280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Freezing. < 1263142287 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ehird? < 1263142290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Freezing. < 1263142295 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have more imagination than this, you know. < 1263142318 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I know, I can check the fonts.conf stuff on the CD. < 1263142320 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well, is it the name of some animal? < 1263142327 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1263142337 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263142348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, is it related to programming? < 1263142359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. Science, though. < 1263142364 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah hm < 1263142371 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, chemistry? < 1263142387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. And I'm not going to do any more yes/nos now, back to cold/warm. :P < 1263142411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Planck? < 1263142423 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Exactly middle temperature. < 1263142426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Einstein? < 1263142432 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, wait, Planck is lukewarm. < 1263142440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Einstein is slightly sub-lukewarm. < 1263142445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm okay < 1263142450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Feynman < 1263142459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: do you know where the root FS is on the Ubuntu CD roms? < 1263142460 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ? < 1263142463 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It's not a name. < 1263142465 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :hellooooo < 1263142467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263142468 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :algorithm here < 1263142472 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no, I don't < 1263142472 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: Poop. < 1263142491 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I've ever actually looked at the CD ROM filesystem < 1263142497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just installed/liveCDed from them < 1263142498 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I give up < 1263142508 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Okay, fine: Physics. Not a name. < 1263142512 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263142520 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, electron? < 1263142527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or not a name of a thing either? < 1263142540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hot. < 1263142547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, neutron? < 1263142559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, about root fs of cd: iirc it is a squashfs image there < 1263142569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Can I do mount -t squashfs? < 1263142573 0 :Pthing!n=pthing@cpc11-pres4-0-0-cust168.pres.cable.virginmedia.com JOIN :#esoteric < 1263142592 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no clue. Also it might have been some other compressed fs than squashfs. < 1263142602 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway the squashfs thing is a *file* on the cd < 1263142609 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Yes, squashfs is in Linux. < 1263142611 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you would need to do a loopback mount < 1263142614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1263142623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :autorun.inf dists isolinux pics preseed ubuntu < 1263142624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :casper install md5sum.txt pool README.diskdefines wubi.exe < 1263142629 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm just going to do du < 1263142632 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And find the biggest file < 1263142632 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well you never answered: " ehird, neutron?" < 1263142635 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, file * < 1263142639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Hot. < 1263142639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would tell you < 1263142644 0 :kar8nga!unknown@unknown.invalid QUIT : < 1263142646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, positron? < 1263142655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :676504 ./casper/filesystem.squashfs < 1263142656 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263142659 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Hot. < 1263142661 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, proton? < 1263142664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why casper? < 1263142673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also "how hot" < 1263142680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Hot hot hot hot hot. < 1263142684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there are hell of a lot of elementary particles < 1263142687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You are three steps away from the answer in conceptspace. < 1263142692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not a single particle. < 1263142697 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, boson? < 1263142712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :On fire < 1263142720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fermion? < 1263142732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Warm < 1263142739 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1263142739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1263142741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, okay, fine: it's not a type of elementary particle. < 1263142745 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263142746 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's a type of composite particle. < 1263142772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, but a proton is a composite one. Of 3 quarks iirc < 1263142780 0 :Slereah!n=Slereah@ANantes-259-1-132-250.w92-139.abo.wanadoo.fr JOIN :#esoteric < 1263142784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, shut up. < 1263142786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's meson. < 1263142791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263142819 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1263142829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about your hostname then < 1263142834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: hi < 1263142836 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think it is ehird's turn to guess now < 1263142837 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: < 1263142838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I intend, without three objections, to set the contestmaster of Enigma < 1263142840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to 'none'. < 1263142841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :might wanna do something about that < 1263142844 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I noticed < 1263142845 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ais523-laptop < 1263142848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no < 1263142851 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :darn < 1263142856 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although that /is/ the default < 1263142863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the default? < 1263142866 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this time I actually got to set one < 1263142868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean the default < 1263142869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263142870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: can you give me warm/cold stuff? < 1263142871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ubuntu < 1263142877 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$username-$computertype < 1263142878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263142879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1263142891 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: not really, mostly because a) it takes effort, and b) it's the middle of winter anyway < 1263142894 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ubuntu sets the hostname based on the username? That's a bit odd < 1263142901 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1263142911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Ubuntu is designed around regular single-user machines, and it uses the first name as username by default. < 1263142915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ubuntu does not target multi user systems in 98% of the cases or so < 1263142920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So you get "elliott-desktop", which is a reasonable-ish hostname. < 1263142937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I suppose that makes sense < 1263142938 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: then I won't guess :p < 1263142940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw, how do you detect if you are on a desktop, laptop or whatever < 1263142943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: fair enoguh < 1263142954 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hah at the second reason < 1263142956 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll make it a more interesting longterm challenge, see how long it is before I let everyone know by accident < 1263142968 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I won't be trying to hide it, but I won't be trying to drop clues either < 1263142986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I will now promptly forget about that challenge < 1263142987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I've already let everybody know my hostname by accident so I guess I've already lost < 1263142997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh and I think I mentioned my hostname(s) in here before. < 1263143004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so pointless to ask anyone to guess < 1263143006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Gee, isit tux < 1263143007 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*is it < 1263143016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, not any longer on desktop < 1263143018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :used to be < 1263143023 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Dragon? < 1263143024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Poop? < 1263143031 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, dragon is my laptop. < 1263143041 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And poop is your desktop? < 1263143045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no < 1263143067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ehird@meson:/mnt/poop/etc/fonts$ diff <(ls /etc/fonts/conf.d) <(ld conf.d) < 1263143071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*ls conf.d < 1263143074 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, poop must be that old p4 that broke down < 1263143079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Empty diff; hmph. < 1263143089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though it was just anmaster-desktop iirc XD < 1263143091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aha, I have ~/.fonts.conf. < 1263143100 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: How Ubuntironic. < 1263143107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well it wasn't using ubuntu < 1263143127 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it ran win xp, slackware, qnx, suse and gentoo during it's lifetime < 1263143129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1263143136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably some more distros < 1263143144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You used QNX as a main OS? < 1263143159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes because it overwrote boot loader < 1263143163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rm .fonts.conf, reboot < 1263143168 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so until I had time to fix that < 1263143178 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263143192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also what is that metallish sound from my keyboard when I hit the key "g" < 1263143193 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And all of those had the same hostname? How boring < 1263143197 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't sound good at all < 1263143213 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well yes. it was back before I was on irc iirc < 1263143219 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :had modem back then < 1263143227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :adsl near the end < 1263143327 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263143329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway, no one up for guessing current hostname? it is temporarily assigned until I think of a better one < 1263143335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that should give you some help < 1263143338 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Things look nice now. Yay! < 1263143342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: anmaster-desktop < 1263143344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: rebooted X? < 1263143346 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, alas no < 1263143351 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, freezing evne < 1263143352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even* < 1263143357 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: rebooted totally, because they removed ctrl-alt-backspace < 1263143362 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Whether you were on IRC or not doesn't change the fact that it's boring :-P < 1263143381 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :quantum algorithm for linear equations < 1263143385 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: there's a setting to turn it back on, but annoyingly they didn't say where it was < 1263143393 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and they got rid of dontzap in favour of a more general option < 1263143401 0 :Slereah_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263143402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I'm looking for a bug-free, efficiently multithreaded real-time clock + infix calculator hybrid." --reddit < 1263143406 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so any more guesses? < 1263143411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Nope. < 1263143436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also what was your host name? < 1263143445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tux-arch < 1263143446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1263143459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You are boring. < 1263143466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, as I said: temporary < 1263143479 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I plan to rename it in the same style as the other ones < 1263143483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh, it's in the advanced tab under keyboard layouts in KDE, it seems < 1263143486 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what an obvious place to put it! < 1263143505 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I don't really care. < 1263143512 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It reboots pretty quickly. :P < 1263143521 0 :HackEgo!n=HackEgo@codu.xen.prgmr.com JOIN :#esoteric < 1263143522 0 :EgoBot!n=EgoBot@codu.xen.prgmr.com JOIN :#esoteric < 1263143525 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: VM, or on the hardware? < 1263143529 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hardware. < 1263143529 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, hi HackEgo, EgoBot < 1263143540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, however, "kraken" just doesn't cut it. Because sv:kraken = en:"the weak person"/"the poor person"(not about money, more like "poor you", when someone is sick) < 1263143560 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Buy an old [34]86 and call it that < 1263143564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, :D < 1263143575 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or 286, even < 1263143590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It will be your friend and it will run and old version of Slackware and it will do the things you tell it to do, slowly. < 1263143594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*run an old < 1263143622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and I need a fitting name. Since phoenix actually was symbolic, it was recovered from someone going to throw it away due to broken onboard vga port/graphics chipset (not sure which, never figured that out) < 1263143625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey, Konversation isn't set to join #amend by default. Let's fix that. < 1263143627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it runs headless < 1263143633 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That was easy. < 1263143640 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :dragon, well that thinkpad is quite powerful < 1263143642 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: right-click the tab, choose "Join on Connect"? < 1263143646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yep < 1263143649 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it is usually easy for most irc client < 1263143651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :clients* < 1263143659 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's a more longwinded way too, but no reason to use it < 1263143662 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That doesn't change the fact that it was easy. < 1263143672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well, actually it is trivial for my bouncer, it automatically updates on join by default < 1263143684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it wasn't meant to < 1263143685 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, iirc xchat has the same feature < 1263143693 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ? < 1263143698 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was talking to AnMaster. < 1263143706 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263143712 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was trying to parody AnMaster in my response, anyway < 1263143728 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird's harder to parody, he doesn't have any really obvious typing conventions < 1263143756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My unpredictability is either a sign that I'm terribly interesting or simply too mundane to have patterns. < 1263143758 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what was the convention in question. A bit hard for me to spot as a non-native speaker. < 1263143764 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyone who isn't AnMaster is welcome to tell me which. :P < 1263143778 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and my answer is "mu" < 1263143783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: using , rather than : to highlight someone < 1263143787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads "crawlspace" on reddit, goes argh < 1263143789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not a native speaking thing, but an IRC thing < 1263143793 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that is due to irc client simply < 1263143800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Talking to oerjan makes me experience synchronicity or something < 1263143801 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: isn't it customizable? < 1263143804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it is < 1263143806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Chatzilla used , by default but I changed it < 1263143808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but I prefer it this way < 1263143823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :, is grammatically incorrect. < 1263143828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Elliott, but I prefer it this way." < 1263143838 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not always grammatically incorrect < 1263143850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, it reads differently than it's supposed to on IRC, at least. < 1263143850 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's correct if used as "ais523, could you please go and implement Feather for me RIGHT NOW?" < 1263143854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And a lot of the time it's grammatically incorrect. < 1263143858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but incorrect when used for the normal IRC meaning < 1263143860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I thought the imitation part of "ehird, it wasn't meant to" was "it wasn't meant to". < 1263143868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's the kind of thing AnMaster says a lot. < 1263143871 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the whole thing was an imitation < 1263143872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, would you do that? < 1263143873 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :including that bit < 1263143877 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I'm busy < 1263143885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also I never said right now < 1263143898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that = "implement Feather for me RIGHT NOW". < 1263143902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, iirc I usually just ask about *if there has been* any progress < 1263143904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So "would you do that" does indeed say "right now". < 1263143913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1263143926 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sheesh, OS X lets me use C-a and C-e for start/end of line, but KDE doesn't. < 1263143926 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh, that was the natural interpretation for me < 1263143930 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What has the world come to? < 1263143935 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was unsure too. < 1263143958 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also that "would you do that" was a joke on what you said < 1263143963 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, you do realise you just made everything ever said in #esoteric a deliberate misinterpretation? < 1263143976 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What? < 1263143982 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hahah < 1263143983 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :oh my god < 1263143984 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : < 1263143987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there, that's fixed it < 1263143989 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1263143997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Who said I was using SGML/XML? < 1263144013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what were you using instead? < 1263144027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :éß < 1263144033 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ë < 1263144037 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe Perl6 < 1263144046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Gödel < 1263144049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Gödel < 1263144049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where would just be a literal '/deliberate-interpretation' < 1263144050 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what does that do in perl6? if anything at all? < 1263144066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: deliberate-*misinterpretation < 1263144066 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: <> quotes like "", except that it treats whitespace as commas rather than preserving it < 1263144083 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, but didn't you use <> to create a list or such before? < 1263144089 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, exactly < 1263144092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I used < 1263144095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263144097 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is equivalent to ('a', 'b', 'c') < 1263144098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1263144122 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait, no, <> quotes like '' except it treats whitespace as commas < 1263144130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's «» that quotes like "" < 1263144133 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey, I can type £ as Compose L. < 1263144137 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*Compose L -. < 1263144147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :shift-3 probably works better < 1263144153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it wouldn't be perl if you couldn't escape whitespace inside <> < 1263144156 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so how do you do that? < 1263144160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, that's #. < 1263144167 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: US keyboard? aargh < 1263144169 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I prefer the US layout, especially as I use # often - commenting, IRC, etc. < 1263144176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: using «» and backslashing it < 1263144176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, " is a more common character than @. < 1263144177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, US or US international? < 1263144180 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, where is # on UK? < 1263144181 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It should be in the letter area. < 1263144187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: to the left of return < 1263144189 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unshifted < 1263144189 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The UK layout is inferior in more or less every way, except perhaps \ placement. < 1263144193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*\| < 1263144199 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tell me if you find out how to type pi using compose < 1263144203 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I would like to know < 1263144205 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :never found it < 1263144225 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, where are *\| placed? < 1263144230 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I think the UK layout's superior: it doesn't have one symbol on two different keys (except |, but that's technically two different symbols on Windows) < 1263144233 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since they are in 3 different corners here < 1263144239 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can type # without using shift, and it's in an easy-to-press location < 1263144253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you have | on two different keys!? < 1263144258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't want to talk about the UK layout, anyway. < 1263144260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.modeemi.fi/~tuomov/b/2009/updates/Compose.txt < 1263144267 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: altgr-`, shift-\ < 1263144268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No pi here, as far as I can tell. < 1263144270 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You could add it. < 1263144274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, they're different symbols in EBCDIC < 1263144279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one has a broken bar, the other is continuous < 1263144280 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the former is ± here < 1263144288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the later... well that is tricky < 1263144289 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :

: "((pi symbol))" Uxxxx # UNICODE NAME < 1263144349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, wait, altgr- is ±, altgr+shift+ is ¬ < 1263144357 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :U03C0 # GREEK SMALL LETTER PI < 1263144366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :π < 1263144367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So < 1263144370 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and \ is altgr-+ so ¿ for shift-altgr-+ < 1263144383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :

: "π" U03C0 # GREEK SMALL LETTER PI < 1263144387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just append to your Compose file. < 1263144388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You're welcome. < 1263144396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, Now to locate the compose file < 1263144407 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"locate Compose" < 1263144409 0 :BeholdMyGlory!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Create ~/.XCompose < 1263144413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/usr/share/X11/locale/(locale)/Compose < 1263144416 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or what BeholdMyGlory said. < 1263144418 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263144431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/share/X11/locale/compose.dir < 1263144431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/share/X11/xkb/symbols/compose < 1263144433 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION assigns the Windows keys to Compose. < 1263144434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :are the closest one < 1263144440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BeholdMyGlory: Does that overwrite the global file or append? < 1263144446 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you mean you can create a compose shortcut for a Unicode snowman? < 1263144448 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :none matches exactly what ehird suggested < 1263144453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: EXCELLENT IDEA < 1263144460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aww, sm is taken: ℠ < 1263144462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION agrees with ehird on this < 1263144464 0 :BeholdMyGlory!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I don't know, I copied the global file to ~/.XCompose < 1263144478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BeholdMyGlory: is there any command to activate it or do I have to restart X? < 1263144489 0 :BeholdMyGlory!unknown@unknown.invalid PRIVMSG #esoteric :No idea :P < 1263144496 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Perhaps sy, as in unicode Snowman for You. < 1263144502 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or us, for Unicode Snowman. < 1263144518 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, the Ubuntu wiki recommends using the SAK for restarting X nowadays < 1263144527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow, DejaVu's snowman is brilliant < 1263144527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because you can't hit it by mistake using accessibility shortcuts < 1263144528 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://unicodesnowmanforyou.com/ < 1263144537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :He's wearing a top hat, smiling, standing on a slope, and has snow around him < 1263144539 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ooh, it's bigger than I remember it < 1263144546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SAK? < 1263144553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alt-(sysrq+k) < 1263144554 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ostrange < 1263144556 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :strange* < 1263144565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my locale is not in /usr/share/X11/locale/ < 1263144591 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would be sv_SE.UTF-8 < 1263144618 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh the mapping file < 1263144620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :en_US.UTF-8/Compose sv_SE.UTF-8 < 1263144644 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sv_SE = Swedish Swedish? < 1263144653 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, as opposed to sv_FI < 1263144665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm just amused that it's a different abbreviation at each side < 1263144679 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think SE is country code < 1263144687 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and sv is language code or suc < 1263144688 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :such* < 1263144702 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what the name of the Unicode Snowman is. < 1263144708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I need its name to add the Compose comment. :( < 1263144725 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: 'SNOWMAN' < 1263144754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Apparently include "%L" does something in .Xcompose. < 1263144760 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I bet L=locale=include locale's compose. < 1263144766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why is there a snowman in Unicode anyway, by the way? < 1263144766 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how does one reload the compose file < 1263144770 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Why not? < 1263144774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Restart X, I guess < 1263144780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: most things in Unicode are put there for a reason, I think < 1263144781 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, man page says it means "your locale" < 1263144784 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :%L that is < 1263144789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's not like Unicode magically gathers characters without people agreeing on them < 1263144792 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Perhaps a legacy character set < 1263144793 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so someone must have put it ther < 1263144795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"and %L expands to the name of the locale specific Compose file (i.e., "/usr/share/X11/locale//Com‐ < 1263144795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : pose"). < 1263144795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : For example, you can include in your compose file the default Compose file by using: < 1263144795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : include "%L"" < 1263144795 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*there < 1263144800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ugh the formatting < 1263144800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Which man page? < 1263144806 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, man Compose < 1263144807 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: man 5 Compose < 1263144815 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hah, beat you < 1263144819 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't have it. < 1263144823 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I do wonder, though, what it means by that < 1263144824 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, install it < 1263144824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: some Ubuntu package? < 1263144834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: That otherwrise it overwrites the locale's compose file. < 1263144836 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, find it with apt-file < 1263144838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*otherwise < 1263144839 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, very useful tool < 1263144844 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: either that's a really stupid comment, or I misunderstood the context of your sentence < 1263144846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suspect the second < 1263144849 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it allows you to search on files from not installed packages < 1263144853 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I mean, /usr/share/X11/locale contains no compose file for any of my locales < 1263144861 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does for me. < 1263144867 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ? < 1263144871 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Well, what's your locale < 1263144875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, compose.dir < 1263144875 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :C? :-P < 1263144878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it has a mapping < 1263144885 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: as in, an Ubuntu package wouldn't have put stuff in Unicode < 1263144888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Dunno, either US or brit I guess < 1263144891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :see what I said about sv_SE -> en_US compose mapping above < 1263144893 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I meant X11 manpages < 1263144894 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Ah, indeed. < 1263144900 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which locale value does it use, though? < 1263144904 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :LANG? Something else? < 1263144908 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, no clue < 1263144948 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I can find them in Japanese, but not English < 1263144952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I imagine the US and UK Compose files are much the same. < 1263144959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm just going to use apt-file < 1263144985 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, I suppose it won't be LC_NUMERIC, LC_TIME, LC_MONETARY, LC_PAPER, LC_ADDRESS, LC_TELEPHONE, or LC_MEASUREMENT < 1263144991 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's crazy, why is there "xmanpages-ja - Japanese manual pages for X" but no "xmanpages"? < 1263144993 0 :EgoBot!unknown@unknown.invalid QUIT :Remote closed the connection < 1263144998 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So I can fairly safely change my .XCompose to use %L < 1263145005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or anything else starting "xmanpages"? < 1263145013 0 :EgoBot!n=EgoBot@codu.xen.prgmr.com JOIN :#esoteric < 1263145023 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, use apt-file < 1263145037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ehird@meson:~$ sudo apt-file update < 1263145038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Downloading complete file http://gb.archive.ubuntu.com/ubuntu/dists/karmic/Contents-i386.gz < 1263145039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yawn. < 1263145044 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it takes a bit yes < 1263145069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ apt-file find /usr/share/man/man5/Compose.5.gz <-- no results. Maybe elsewhere on ubuntu? < 1263145096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe it just doesn't exist. < 1263145113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, s/find/search/; use proper APT terminology, dammit. < 1263145123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it is find for apt-file < 1263145128 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's either. < 1263145129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well both < 1263145133 0 :HackEgo!unknown@unknown.invalid QUIT :Remote closed the connection < 1263145134 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anything wrong with find < 1263145139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : search|find Search files in packages < 1263145149 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, find is shorter to type < 1263145151 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :APT uses search, apt-file says "Search" as the verb and lists search first. You are a bad person :P < 1263145154 0 :HackEgo!n=HackEgo@codu.xen.prgmr.com JOIN :#esoteric < 1263145171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Does the man page say anything about how to load .XCompose without restarting X? < 1263145204 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, alias qfile="apt-file find" alias qlist="dpkg -L" alias emerge="apt-get" ;P < 1263145210 0 :Gregor!unknown@unknown.invalid PRIVMSG #esoteric :There, now all my bots keep logs, so maybe I'll actually know WHY they quit :P < 1263145216 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(no I don't use that, but the gentoo commands are shorter) < 1263145218 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compose doesn't have FOR ALL by default? Hmph < 1263145232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, give me the line for it < 1263145233 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Not that I can see < 1263145240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It has ≥ and ≤, though. < 1263145246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Give me the line for what? < 1263145256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, it doesn't even have -> < 1263145260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's bull fucking shit < 1263145264 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It does say something about cache directories, though, and "see also - mkcomposecache(1)" < 1263145267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, when you create the "for all" and "there exists" lines, give them to me < 1263145275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, → is on altgr-i < 1263145276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Neither the directories mentioned nor that command exist here, though. < 1263145279 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no need to use compose for it < 1263145280 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1263145286 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fuck altgr < 1263145291 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compose is a far superior interface < 1263145293 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you don't have altgr? < 1263145301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have it, but I do not use it. < 1263145304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compose is a superior interface. < 1263145311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Alt Gr is just Alt here. < 1263145312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it is faster to use altgr than compose though < 1263145315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you make altgr a compose key, leaving the windows-logo key for super? < 1263145318 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, it is not. < 1263145321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fewer key presses < 1263145325 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: My compose has -> → < 1263145335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Time(3k) - Time(2k) = Omega < 1263145341 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, mine has -> to → < 1263145342 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as well < 1263145350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :→ < 1263145353 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is altgr-i for me < 1263145355 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :---> -> → < 1263145362 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(k = keypress) < 1263145364 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and does it work with compose? < 1263145374 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-x 8 is all the compose I need < 1263145394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you press altgr and i at about the same time. Not so for compose and then two separate keys < 1263145402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can do Compose+x y. < 1263145405 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, compare shift-A and "shift, release, a" < 1263145426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm true, but do you have to release x there? < 1263145428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And in fact, doing key combinations is not very ergonomic anyway. < 1263145435 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Nope. < 1263145447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wait, yes. < 1263145449 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But who cares. < 1263145451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you do for -> at least < 1263145454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can type it just as fast, so I don't care. < 1263145495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how to express <>> in compose format < 1263145505 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, did you try pkgfile on mkcomposecache? < 1263145548 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What's pkgfile? < 1263145553 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poop ≠ dung < 1263145553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why does man Compose on ubuntu open run-mailcap(1) < 1263145560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that makes no sense whatsoever < 1263145572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, like apt-file for arch < 1263145575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, iirc you ran arch? < 1263145587 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, pkgfile is in pkgtools package iirc < 1263145593 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't know what apt-file is either, but I suppose I can guess :-P < 1263145611 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Evidently yes, in pkgtools < 1263145625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it's useful to find what package provides a given file. Also it installs a cronjob to update the db < 1263145630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1263145657 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it claims to have done so < 1263145673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ pkgfile /usr/bin/pkgfile < 1263145673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :community/pkgtools < 1263145692 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, unlike apt-file, pkgfile is fairly slow. 5-10 seconds on my sempron system < 1263145700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with next to no disk activity < 1263145713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I suspect very inefficient searching < 1263145756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :still useful though < 1263145763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Nothing for mkcomposecache < 1263145774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :brb, restarting x < 1263145780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what's that command to restart x again? < 1263145782 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sysrq+k? < 1263145789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :alt-sysrq+k < 1263145804 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263145844 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263145853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wb < 1263145860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :π < 1263145862 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :☃ < 1263145864 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :→ < 1263145866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :← < 1263145871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am happy now. < 1263145871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you can enable that ctrl-alt-backspace again. In gnome go to keyboard settings -> layouts -> layout options. I suspect something similar is possible in KDE < 1263145879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wow, Kopete just notified me about every single online person after connecting. < 1263145882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is an xkb option thingy < 1263145883 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That was... interesting. < 1263145887 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't want to, though. < 1263145890 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Alt+Sysrq+K is just fine. < 1263145892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what, everyone online in the entire world? < 1263145892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah okay < 1263145897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Har har. < 1263145910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :π + 3 ≠ 6 < 1263145923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I interpreted it like ais..., but realised that was stupid, thus didn't say anything < 1263145932 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ♥ Unicode < 1263145935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :an guessed it must be "friends" or something like that < 1263145942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ♥s Unicode, even < 1263145946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, where do you have µ < 1263145946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: People on my contact list, obviously. < 1263145955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Kopete being an instant messenger (sp?). < 1263145961 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :µ. < 1263145961 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wait, people actually use contact lists? < 1263145963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compose m u. < 1263145969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: how else are you meant to use IM? < 1263145971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just memorise the email addresses, or where to look them up < 1263145973 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yeah, see. I don't jump to insane conclusions. Unlike ais523 < 1263145977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1263145990 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :likewise for IM, although I don't use it much if at all < 1263145995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, in your mail client? you don't use any address book? < 1263145999 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :-_- < 1263146000 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no < 1263146004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth < 1263146006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I just use Gmail's email autocomplete < 1263146008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But for IM < 1263146008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, paranoia? < 1263146009 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apart from my sent and received folders < 1263146014 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, just too much effort < 1263146015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ignoring the idiocy of remembering a bunch of crappy email addresses vs making one or two clicks to talk to someone, < 1263146020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That doesn't even tell me whether they're online or not. < 1263146033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how does gmail's auto complete work. Previous people you sent to? < 1263146036 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: why does it matter if they're online? < 1263146038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Or sent to you. < 1263146043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if so it is like auto collecting an address book < 1263146044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Because if they're not online, I can't talk to them. < 1263146048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Exactly. < 1263146052 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you mean you don't agree to talk to them in advance?> < 1263146056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, which my mail client does too < 1263146065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: How would I do that? By IMing them? < 1263146070 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Hey, can I IM you?" "Sure." < 1263146072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Hi." < 1263146089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Don't say "go up to them in person", I'm not about to go on a train or a plane every time I want to talk to someone. < 1263146111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: how do you find out how they are in the first place? < 1263146118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :all I can think of is Usenet or IRC < 1263146153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for me, the auto collected addresses for incomming are only done from those not marked (or later manually marked) as spam. And are not "bulk" priority (thus filtering mailing lists). And they are placed in a different category < 1263146157 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I used to use forums quite a bit, so a lot of the contact list is degrees-of-separation'd from there. < 1263146161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it is easy to weed them out should that be required < 1263146170 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Admittedly I only talk to maybe 10 of the people on my list, but I'm way too lazy to strip it down. < 1263146203 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as for IM: I don't use it < 1263146204 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: and they actually accept being IMed at random times just because they're online? < 1263146206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :irc and email for me < 1263146211 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sounds as bad as a mobile phone < 1263146211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :forums I avoid when possible < 1263146215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: If they have their IM client online, presumably they're willing to talk. < 1263146221 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You're being pretty idiotic; purposeful or not? < 1263146226 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: maybe they're trying to talk to someone else? < 1263146238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Most people can hold two separate conversations at once. < 1263146239 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, how does " ehird: and they actually accept being IMed at random times just because they're online?" differ from IRC? < 1263146244 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We do it often in this channel, you know. < 1263146244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and slightly purposeful, I'm being far more combative than I need to be < 1263146254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because nothing compels me to actually read IRC < 1263146262 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or to turn highlight on for a channel < 1263146262 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Or does it? < 1263146264 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I think it does. < 1263146269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I think this compels you to read IRC. < 1263146273 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: In exactly the same way as IM. < 1263146275 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I have unhighlighted a channel before now < 1263146280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, not this one < 1263146296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but what I meant for talking to someone else is < 1263146303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you want to talk to person A, you have to set the IM client to online < 1263146314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you do? < 1263146317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even if you aren't open to person B talking to you < 1263146325 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Look, most people don't mind their friends striking up a conversation with them. < 1263146329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, can't you set it to busy? < 1263146329 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :If you mind it, that's your problem. < 1263146341 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :In fact, most people *like* it when their friends talk to them. < 1263146345 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in, online but preocupied < 1263146347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I don't see how most people ever get anything done, then < 1263146366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Did you know that ~15 minute breaks every now and then actually make you more productive? < 1263146369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And what AnMaster said. < 1263146372 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Put it on busy or offline. < 1263146373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes < 1263146382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, there is one difference to irc though. Well... to IRC channels. IRC /msg to a single person is more similar < 1263146384 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and that is < 1263146386 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :If someone messages you, say "working, sorry". < 1263146389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Simple. < 1263146391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is easier to just say "brb" or such < 1263146400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and ignore the channel for a few hours < 1263146407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(well "bbl" in that case I guess) < 1263146409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, so it's an Internet version of mobile phones, effectively < 1263146413 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when you need to do something else < 1263146420 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, now imagine IM on phones < 1263146423 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mobile phones don't have a busy status. < 1263146424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably explains a lot, I don't really understand why people use mobiles either < 1263146428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "Imagine"? I have that. < 1263146439 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well but ais523 is stuck in old tech... < 1263146443 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I *know* it exists < 1263146452 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I am actually angry at people using mobiles, because of the passive effects on the rest of us) < 1263146452 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I just wasn't sure ais523 did < 1263146458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :...? < 1263146467 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think ais523's internal model of social interaction is very, very different to the rest of us < 1263146475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(in particular, the general collapse of payphones, and people getting phoned at inconvenient moments while they're meant to be having meetings with you) < 1263146475 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :He seems to view starting a conversation with someone as rude < 1263146479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I do < 1263146488 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Issues, I think is the word here. < 1263146494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Issues. < 1263146506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hey, I thought you considered my model of social interaction as different? < 1263146519 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :everyone probably has a different model of social interaction < 1263146525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Do you view starting a conversation as rude? < 1263146544 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :this argument is stupid < 1263146558 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, not unless it is a random idiot asking for "how do I get program y to work on vista?", for a program I'm just in the channel in < 1263146561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Then you're not that crazy. < 1263146564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I do get that type of /msg once in a while < 1263146569 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Such a view is a very Finnish attitude to have, actually. < 1263146572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :those are generally very irritating < 1263146576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, which view? < 1263146590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, was that self-referential? < 1263146590 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Viewing starting a conversation as rude. < 1263146597 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: heh < 1263146597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263146608 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, that was the only way I could read it though < 1263146644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This channel is now: The official poop channel 2010 < 1263146651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no < 1263146660 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :All non-poop-related discussion is banned, although esolang discussion will be ignored by the powers that be. < 1263146680 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1263146681 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1263146703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: err, arbitrarily changing the topic of a channel tends not to work if you aren't the founder, or at least an op < 1263146718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tell me if you find a way to reload compose without restarting X < 1263146728 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :otherwise I'm going to delay testing pi < 1263146730 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I should know, most of my attempts to change it to being about esolangs fail < 1263146730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Stop being a pussy and press the keycombo. < 1263146740 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or the ☃ will be sad. < 1263146744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1263146753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what? ctrl-alt-backspace you mean? < 1263146759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263146768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well no thanks, I have some long running stuff I don't want to abort < 1263146773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :graphical ones < 1263146774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I've kept this X session running for about 3 days now < 1263146783 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a bit annoying, though, because hibernate takes longer than shutting down < 1263146794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and weirdly, also corrupts the icon cache < 1263146800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm. I usually keep X running for weeks < 1263146805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what? < 1263146815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the icons that show up when you press alt-tab < 1263146822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for some reason, on this computer hibernation corrupts them < 1263146825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I was pleasently surprised last night when suspend to RAM worked perfectly and quickly. < 1263146827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they are cached? < 1263146828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but has no visible other problems < 1263146831 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Resume took a bit longer than OS X, but it was nice. < 1263146843 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I assume so, otherwise htf could they change whilst leaving everything else the same? < 1263146845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also if that happened, I wouldn't trust hibernation, who knows what else it may corrupt < 1263146857 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does restarting the program fix the icon? < 1263146860 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1263146864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you used "htf"? < 1263146868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :YOU? < 1263146872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION blinks < 1263146882 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, I don't see how it can be a swear word if it's that abbreviated < 1263146900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how very.... aisish < 1263146912 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has a meaning of its own < 1263146914 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like "lol" < 1263146920 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is nowadays unusable for its original meaning < 1263146958 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no it isn't. I tend to use "haha" when I actually doesn't laugh out loud. And "lol" only if I do that. which is rare < 1263146978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you're out of touch with modern usage, then < 1263147004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, correction: I rebel against the modern usage < 1263147005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(also, usage differs by channel; for instance in pokemon IRC channels, it normally means "heh, someone sent out something laughably weak", or a similar build) < 1263147008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523, calling someone out of touch < 1263147009 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :classic < 1263147018 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: depends on what I'm calling them out of touch /with/ < 1263147023 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I was considering saying that. Then realised I was too < 1263147039 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I did not quite want you to have that much fun < 1263147051 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[18:08] ais523, no it isn't. I tend to use "haha" when I actually doesn't laugh out loud. And "lol" only if I do that. which is rare < 1263147064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hey, there's a grammar mistake there < 1263147065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, because it's not as if "haha" is an onomatapeeyuh (too lazy to spell) for out-loud laughter or anything. < 1263147069 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, don't* < 1263147069 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I only noticed the second time round < 1263147075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You're so rebellacious and prescriptivist. < 1263147076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, the one I meant? < 1263147078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what's wrong with me? < 1263147079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1263147086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think I wrote it as /me first then changed my mind < 1263147121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I never said I was consistent. < 1263147135 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :another IRC spec issue: technically, aren't people breaking the spec by replying to /me with a non-CTCP privmsg rather than a CTCP-ACTION reply? < 1263147147 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, NCTCP you mean < 1263147152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1263147157 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not that there's anything wrong with that, I'm just amused at how far actual IRC usage differs from the spec < 1263147165 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: "CTCP-ACTION reply" < 1263147172 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :CTCP replies are notices < 1263147175 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: *I don't actually laugh out loud < 1263147179 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sorry, had to fix it < 1263147185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, see above < 1263147187 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I fixed it < 1263147189 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*Sorry, had to fix it, even. < 1263147194 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I sometimes laugh out loud, and then it's really hard to express what I'm actually doing < 1263147200 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :CTCP is a separate spec < 1263147205 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because "lol" is already taken, and typing it out is a pain < 1263147205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"when I actually don't laugh out loud" is not valid. < 1263147207 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :coppro: ok, point taken < 1263147209 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well, not sure about action. Since it is rather different from the other ctcp < 1263147210 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :which is followed a lot less than the regular spec < 1263147212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ctcps* < 1263147220 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes it is < 1263147221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for VERSION and such sure < 1263147225 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :though the current iteration of IRC isn't exactly well-implemented either < 1263147233 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :the worst, though, is colors < 1263147237 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no one implements CTCP colors < 1263147240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, ctcps sounds like some sort of secure ctcp < 1263147242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mIRC does. < 1263147245 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :coppro, ctcp colours? < 1263147246 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :coppro: they exist? < 1263147246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As does ChatZilla. < 1263147248 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what the heck is that < 1263147248 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As does X-Chat. < 1263147253 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Everyone implements IRC colours. < 1263147254 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I thought mIRC sent special character codes < 1263147258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1263147259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than doing a CTCP for them < 1263147262 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay then. < 1263147264 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :no, everyone implements mIRC colors < 1263147266 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :not CTCP ones < 1263147274 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so what are ctcp colours < 1263147281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is* < 1263147291 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure, but I think they might be based on literal control-Cs < 1263147297 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like CTCP's based on literal control-As < 1263147302 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :http://www.invlogic.com/irc/ctcp.html#3.6 < 1263147337 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :mIRC uses ^C < 1263147340 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my guess is that the reason nobody implements that is that nobody implements CTCPs inline in normal messages < 1263147345 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :but CTCP uses ^FCA < 1263147350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is strange < 1263147364 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :same with other formats < 1263147370 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :bold, for instance, is usually just ^B < 1263147373 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :not ^FB < 1263147444 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :coppro, what is the format of ? < 1263147455 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hey that spec is spelled properly < 1263147457 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : < 1263147457 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :almost done writing an overcomplicated bf->python converter... < 1263147466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*spelt < 1263147473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, indeed < 1263147475 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :trying to work that out < 1263147476 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: Is it over 20 lines? < 1263147479 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ah, so it is < 1263147481 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1263147481 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes < 1263147485 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Ot0-F, an index into the usual-ish 16-colour palette. < 1263147487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: Rewrite it. < 1263147492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :coppro, ? < 1263147492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1263147494 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :s/Ot/It's a hex digit in / < 1263147500 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :either IX, where X is a hex digit < 1263147508 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :or an #XXXXXX code < 1263147508 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that's a pretty crazy typo < 1263147513 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it contains a tokenizer and a grammar analyzer, but the point is that you can write different langs for it... < 1263147528 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ṕóóṕ < 1263147537 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, is that for ctcp colour or mirc? < 1263147542 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you could write a anything->anything converter for it... < 1263147553 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh it supports full also < 1263147555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rigt < 1263147556 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right* < 1263147558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :An anything->anything converter enabler? < 1263147564 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You mean a language in which you can write compilers? < 1263147565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underlambda! < 1263147579 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, over 20 lines is okay for optimising < 1263147580 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: pretty much, < 1263147580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Is Underlambda implemented yet? < 1263147584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wants to write everything->underlambda and underlambda->everything < 1263147584 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with enough optimising I mean < 1263147585 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: partially < 1263147590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the spec isn't pinned down yet < 1263147606 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and derla, especially, is rather light on implemented commands < 1263147611 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Right. The spec was a bit strange, since the part immediately before the color table says "Each colour will be an index, selected from the following table", but it indeed is either IX and #rrggbb. < 1263147618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :next jobs are probably pinning down I/O, and string handling < 1263147637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, and where is the table? < 1263147664 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: In the spec coppro linked to. < 1263147664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh there < 1263147669 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not near the colour command at all < 1263147688 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1263147704 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, oh that is I < 1263147707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, as defined above < 1263147741 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, I know. That's why the text immediately above the table is a bit misleading. < 1263147756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also everything->underlambda seems very ambitious. ;P < 1263147765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for a single compiler at least < 1263147767 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: maybe not directly < 1263147774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it would be loads of separate compilers < 1263147792 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe interp-bundling ones, I don't really care about efficiency for that bit < 1263147821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, write a generic framework for esolang compiling. Oh wait, that won't work. There will be lots of esolangs that won't fit in such a framework, almost by definition < 1263147858 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also, does underlambda support self modification? < 1263147872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not directly, in that the syntax is always the same < 1263147886 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can do some pretty heavy command redefinition with the preprocessor, but not at runtime < 1263147893 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I meant as in "befunge98 -> underlambda" < 1263147896 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: In any case CTCP's one messy spec. That particular document says it's an Internet Draft, valid for a maximum of six months; and it's from February 1997. The "original" spec from 1994 -- http://www.irchelp.org/irchelp/rfc/ctcpspec.html -- doesn't specify the text formatting codes at all. < 1263147908 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's perfectly fine, you just bundle a befunge interp written in underlambda < 1263147915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well give up on "everything" then. For compilers. Interpreters would work < 1263147923 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that is a compiler, technically < 1263147924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well true, but that hardly counts as compiling really < 1263147933 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the reason to do it like that is so that compilations can be chained < 1263147939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you can, say, compile Unlambda to Thue < 1263147967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, technically yes. But it isn't really in the spirit of compilation. < 1263147980 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is in the spirit of cross-implementing all esolangs, though < 1263147985 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is what Underlambda is for < 1263148014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not in the spirit, rather "in the interest" would be better there < 1263148020 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :i think i might have the most over-complicated hello world program in python here, 148 lines O.o < 1263148024 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: spirit too < 1263148032 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: you should see my hello world in brainfuck < 1263148036 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's several megabytes long < 1263148042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mostly stdlib overhead < 1263148056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe, because it was generated by his C->BF gcc backend < 1263148095 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: O.o, my hellow world was compiled from bf to python, imagine how long that one would be :-O < 1263148104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also, what about banana-scheme->unlambda? < 1263148122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and unlambda→ < 1263148142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: only cross-implementing TC langs < 1263148149 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and maybe sub-TC -> underlambda < 1263148153 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unlambda itself is a pain to compile out of < 1263148159 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you'd want to go via underlambda < 1263148161 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and underlambda->super-tc? < 1263148173 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: possibly, but it's so hard to test that I might not bother < 1263148185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? you said you wanted underlambda should be used for cross implementing? < 1263148195 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if it is a pain to compile out of, then what is the point < 1263148211 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you are muddling Unlambda and Underlambda < 1263148215 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Unlambda = pain to compile out of < 1263148222 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also can you really implement befunge98 with all fingerprints required for fungot to run in underlambda < 1263148223 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ee ' /ignore foo all' maybe then. dunno, your fnord < 1263148226 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underlambda = easy to interpret out of, and moderately difficult to compile out of < 1263148227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, typo then < 1263148240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: as I said, I/O isn't decided yet < 1263148248 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but nothing else should be problematic, given TCness and all < 1263148256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, sure it would. Since it uses SOCK < 1263148259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for socket IO < 1263148272 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you thought fungot used netcat or something? < 1263148273 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: are there any builtin plain string matching functions? i'm just using the windows standalone < 1263148311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :psox < 1263148322 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what's making you think that socket I/O isn't I/O? < 1263148322 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :all you need is stdio + special semantics for io < 1263148324 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't get your reasoning here < 1263148332 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Sockets are MAGIC, dude! < 1263148339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well, they are different from file IO < 1263148350 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on unix it isn't just opening a file < 1263148368 0 :coppro!unknown@unknown.invalid QUIT :Read error: 54 (Connection reset by peer) < 1263148370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I am the publisher of a now defunct and formerly popular avant-garde lifestyle magazine from the 70s and 80s. A magazine design enthusiast is now beginning to scan and post full copies of every issue of the magazine. Can anyone offer legal advice or a course of action to pursue (or provide me with a precedent that I can use against this guy)?" < 1263148372 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, plus, SOCK supports listening to incomming connections to. Which means bind() accept() and such < 1263148377 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I like the part where he admits it's causing no damage whatsoever to him < 1263148381 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it is still, nevertheless, I/O < 1263148401 0 :ais523!unknown@unknown.invalid PART #esoteric :? < 1263148404 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well true < 1263148414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :blah = cat /dev/foop < 1263148419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :blah == /dev/foop3 or w/e < 1263148421 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tada, listening < 1263148423 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1263148437 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how do you mean. < 1263148481 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"accept incoming connection on port 5432 and return the handle for it" < 1263148497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders where the wastebasket is in kde 4 < 1263148516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: < 1263148520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :open file /dev/listen < 1263148527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :write "5432" < 1263148531 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :x = read < 1263148535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :print x --> /dev/foop < 1263148538 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :open file x < 1263148540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :y = read < 1263148546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :print y --> /dev/foop47 < 1263148549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :open file y < 1263148552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :...use y as socket... < 1263148736 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :after i've implemented bf what should i implement next? < 1263148761 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Underload! < 1263148777 0 :ais523!n=ais523@unaffiliated/ais523 JOIN :#esoteric < 1263148780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :π³ ≠ 27. Hooray for Compose. < 1263148784 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :re-implement CLC-INTERCAL? < 1263148786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I thought you were working. < 1263148788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: ouch < 1263148789 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I am < 1263148794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I like keeping an eye on a channel < 1263148795 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, sure, but the OS doesn't have it? < 1263148797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I actually got something done, though < 1263148808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to continue working nevertheless, and may have to leave again < 1263148811 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well, Plan9 does I guess < 1263148813 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but not linux < 1263148838 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: implementing underload... < 1263148845 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay, Underload < 1263148853 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: compiling or interpreting? < 1263148874 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: compiles to python, which is interpreted... < 1263148882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compiling Underload is fun. < 1263148888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I pioneered that < 1263148907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: your optimised compiler is of a similar speed to derlo on large programs, I find < 1263148928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and derlo's memory usage is a lot lower when faced with code like :*:*:*:*:*:* < 1263148931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: My compiler didn't optimise < 1263148938 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, you used -O3 < 1263148940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, it would be "your optimising compiler". < 1263148942 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a form of optimising < 1263148942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1263148949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I see. < 1263148955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: It was just a proof of concept. < 1263148961 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I could write a better one if I wanted. < 1263148969 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :derlo's more optimising, I hope to implement optimised integers at some point < 1263148970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nobody said the strings and the code had to match, after all. < 1263148974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So you could do a good bit of optimising there. < 1263148978 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grr, (set-fringe-style 'left-only) doesn't work < 1263148986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what is the fringe? < 1263149010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The little grey border to the left and right. < 1263149014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(X11 only.) < 1263149016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, graphical only. < 1263149044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, which shows you things like lines wrapping < 1263149076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's ugly at the right because the scrollbar is right next to it for me. < 1263149093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Although I'd prefer it just be white, instead; having the text run right up against the scrollbar is ugly too. < 1263149119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wish I knew how to set faces without using customise. < 1263149121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*customize < 1263149210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grr, why can't you drag to rearrange in KDE's taskbar? < 1263149243 0 :lieuwe!unknown@unknown.invalid QUIT :"Page closed" < 1263149247 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, how do you do comments in LaTeX again? < 1263149254 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% Poop < 1263149265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or % Poop if you want < 1263149266 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I was wondering if it was \comment{} < 1263149266 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1263149269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or % Poop if you want < 1263149271 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1263149274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or %% Poop if you want < 1263149279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Konversation does %% -> %... < 1263149284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1263149292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because % introduces escape codes < 1263149296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :%Atime%A < 1263149302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :%Atime%A < 1263149304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No it doesn't < 1263149305 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, although you can't do ctcps with it it seems < 1263149310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poop < 1263149310 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :%Bbold%B works < 1263149311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poop < 1263149315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but this channel is +c < 1263149316 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poop < 1263149321 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : poop < 1263149332 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: heh, %I = tab = italics < 1263149336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1263149342 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :read it yet ehird < 1263149344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(Konversation treats tab as toggle-italics, which can be annoying) < 1263149348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: Read what? < 1263149352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that's the correct interpretation < 1263149352 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :that buke < 1263149354 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: If you're talking about GNU Emacs, (set-fringe-style x) takes a cons cell as x, with car as the left fringe size in pixels and cdr as the right. The textual modes ("left-only" and so on) seem to only work if you use it interactively as M-x set-fringe-style. < 1263149356 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :metamorphisi < 1263149359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although some clients use it as invert < 1263149361 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: no < 1263149364 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Yes, I figured that out. < 1263149365 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :foo!!! < 1263149367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thanks anyway. < 1263149372 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There should be a way to enable formatting but no colours. < 1263149384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I like italics and bold but not red or green. < 1263149460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The simplest Emacs Lisp function ever written: < 1263149463 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(defun run-frink () < 1263149465 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : (interactive) < 1263149465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: do you care enough to write a patch? < 1263149466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : (comint-run "frink")) < 1263149476 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: What, to the ircd? < 1263149482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean for +c and the like. < 1263149483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, you mean in a channel? < 1263149489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There should be +½c. < 1263149493 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I thought you meant to Konversation, to display only the colours you liked < 1263149497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Naw. < 1263149502 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you could allow, say, soothing lilac but not clashing orange < 1263149520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you should join #amend. :| < 1263149528 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not while I'm busy < 1263149536 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :stupid Research Skills course, it's the PhD version of PSE < 1263149538 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey, there's less talk in there than in here. :P < 1263149548 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: lol < 1263149565 0 :kar8nga!n=kar8nga@jol13-1-82-66-176-74.fbx.proxad.net JOIN :#esoteric < 1263149579 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(for people outside the UK who don't know: PSE (sometimes PSHE) is a relatively useless subject (Personal Skills [and Health] education) that's mandatory in UK schools) < 1263149603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and is generally considered a waste of time; the syllabus theoretically includes potentially interesting areas, but the lessons never cover them) < 1263149608 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :I don't speak Arabic. - لا أتكلم العربية - lā atakallamu al-ʿarabīyah < 1263149608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I swear skills is a backronym from sex. < 1263149625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No hablas Inglais or something. < 1263149628 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :ehird I voted alter why is it not called alter? < 1263149641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it mostly/entirely isn't even sex education < 1263149641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: turns out polls take more than one sample :D < 1263149642 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as you know < 1263149657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what was the final result? < 1263149663 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You can't prove that they didn't create it just to avoid having a lesson named sex education. :P < 1263149668 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :3:3:1 < 1263149686 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :polls are wrong < 1263149687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Ørjan picked Other, but refused to specify.) < 1263149691 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :in primary school, before we had sex classes we got sealed brown envelopes to give to our parents < 1263149692 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: We have (in theory) this mandatory "introduction to postgraduate studies" course, which should be in the spring period... but the "course portal" website only speaks of the 2009 iteration, the actual course-enrollment-system doesn't find *anything* with the course code, and the preliminary schedules published before Christmas also have it completely missing. < 1263149694 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :literacy! numeracy! computer-literacy! < 1263149703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and three others which nobody ever remembers! < 1263149705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: Well, since it was a draw I just picked the one I liked best. < 1263149711 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :and the classroom rumour was "oh i heard of this! this is PSE and it means personal sex education" < 1263149716 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :reading, riting, rithmetic, rogramming < 1263149717 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :half true < 1263149738 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, working with others, improving own learning and performance, and problem solvings < 1263149744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Reeling and writhing, etc. < 1263149752 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*problem solving < 1263149755 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :Values < 1263149759 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :we had a class on Values < 1263149786 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with a capital V < 1263149786 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :the four R's < 1263149791 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :the four Rs* < 1263149794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most of our PSE lessons were just incomprehensible < 1263149807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there was one about a moon mission with a list of phrases to put into order < 1263149812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1263149815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to do with prioritisation, or something < 1263149822 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, about half were spent teaching us how to fill out UCAS forms < 1263149823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Are you sure it wasn't the LSD lesson? < 1263149834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, or the TPS lesson. < 1263149838 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which I suppose is really relevant to the school's results < 1263149842 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's important to them < 1263149862 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there were also a couple with an automated careers thing < 1263149873 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where you answered an 100-question questionnaire and it tried to guess which job you'd end up in < 1263149893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I don't think it was all that reliable < 1263149900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what did it say for you? < 1263149915 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also isn't that terribly demoralising < 1263149920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I want to be an astronaut!" "You will be a bin man" < 1263149925 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1263149932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: computer games programmer, I think < 1263149932 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :marxchat < 1263149933 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A bin man must be something related to binary. < 1263149937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Close enough. < 1263149946 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes, that was one of the closer ones < 1263149953 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :although the questions were things like < 1263149958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I remember someone else in my class was told that they should become a croupier < 1263149961 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :"i like being ordered around to kill people" < 1263149966 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and my form teacher was supposed to be a gardnere < 1263149969 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*gardener < 1263149970 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :"i like doing scientific experiments" < 1263149986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I like being ordered around to kill people as part of scientific experiments" < 1263149992 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :we didn't get anything as firm as one thing, just a list of like 30 or so things < 1263149997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, still "working"? < 1263149999 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1263150009 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, nice multitasking :) < 1263150057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yay Frink accepts π as pi < 1263150079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what is Frink? < 1263150086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://futureboy.us/frinkdocs/ < 1263150087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and why are you going on about it so much? < 1263150095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm just setting it up in Linux. < 1263150105 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And tested that Compose worked with it. < 1263150114 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :frink seems way cool < 1263150122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it totally is. :| < 1263150222 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DSL designed for physical calculations? < 1263150258 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, with hints of Mathematicaitis about it < 1263150265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, I suppose that sells to its target market < 1263150282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not even remotely Mathematica-like. < 1263150293 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's symbolic, yes, and it uses [] for function application because f(x) is f*x. < 1263150295 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :it made me think of mathematica < 1263150296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I'm the sort of person who wonders why it should come with a historical exchange rate database rather than, say, having it as a library on a CPAN-alike) < 1263150300 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :fwiw I don't program in either langauge < 1263150309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(that's what I mean by Mathematicaitis in this case) < 1263150317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Because it's a calculator, not a batch programming language. < 1263150328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It does have non-core libraries, anyway: http://futureboy.us/fsp/frinklibs.fsp < 1263150335 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :still, it feels wrong not having that data be separate < 1263150349 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Only if you think about it as a batch programming language. < 1263150390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even as an interactive language < 1263150437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, it's not just useful for physical calculations: it's also good for abstract calculations, regexp processing, screen scraping, translation, generating graphics, making simple web pages that can do calculations, and also calling out to Java if you like that kind of thing. < 1263150454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: see, when you say "historical exchange rates should be in a library", I see that as < 1263150459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"regexp processing should be in a library in Perl" < 1263150468 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it isn't, because it's far more convenient and quick to access this way < 1263150474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is the intended use < 1263150495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :meh, you could even set it to load by default < 1263150509 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is Frink batch-usable even if that isn't the intended use? < 1263150546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263150573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not so much unintended as not the main use. < 1263150590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I find it more convenient this way and I'm sure Alan Eliasen, the author, does too. < 1263150608 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Frink++ for the Junkyard Wars reference, anyway < 1263150613 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I used to love Scrapheap Challenge < 1263150625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the US version wasn't as ruined as the US versions of most gameshows are < 1263150660 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"fathoms water gravity barrel" is one of my favourite strings. < 1263150820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So if one meter is 200 million beardseconds, why aren't we counting in 100 million beardseconds? < 1263150888 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what, exactly? < 1263150896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1263150937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess 100 million beardseconds is 1 hMbs (hecto-mega beardsecond.) :-D < 1263150949 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: as in, does 100 million beardseconds = 0.5m exactly, or approximately? < 1263150958 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1 beardsecond := 5 nm < 1263150963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's a novelty unit, not an actual measured thing. < 1263150978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I guessed it was a novelty unit < 1263150983 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although presumably the beard has an actual purpose < 1263150990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The beard-second is a unit of length inspired by the light year, but used for extremely short distances such as those in nuclear physics. The beard-second is defined as the length an average beard grows in one second. Kemp Bennet Kolb defines the distance as exactly 100 Ångströms,[3] while Nordling and Österman's Physics Handbook has it half the size at 5 nanometers.[4] Google Calculator supports the beard-second for unit conversions using the latter < 1263150992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :conversion factor.[5] < 1263151000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I see 5 nm most often. < 1263151035 0 :lament!n=lament@S0106001cf0fce011.vc.shawcable.net JOIN :#esoteric < 1263151047 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, the kilometer will be replaced with the khMbs. < 1263151051 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The kilo-hecta-mega beardsecond! < 1263151070 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aka the hecto-giga beardsecond < 1263151113 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :http://www.google.co.ck/search?q=432+beard+seconds+in+attoparsecs < 1263151114 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :NICE < 1263151155 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :432 beardseconds -> attoparsecs < 1263151157 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0.000070000832656209624476 < 1263151161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just to re-inject some Frink fanboyism into the discussion. < 1263151172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Admittedly I had to do beardsecond := 5 nm, but it defined the plural form for me automatically.) < 1263151183 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1263151267 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: also, it gets commented on by Peter Norvig, which is also very cool < 1263151301 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, who is that < 1263151312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you are no longer welcome here → < 1263151335 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hey, ais523 didn't know who jwz was < 1263151344 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://en.wikipedia.org/wiki/Peter_Norvig < 1263151359 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :what's so good about Norvig? < 1263151360 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh that guy at google < 1263151361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't actually know he worked for NASA/Google, though < 1263151362 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :jwz is just a cool dude, not an excellent computer scientist < 1263151369 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I knew of him from his research < 1263151375 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :I only read his PAIP book < 1263151394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, which part of it? < 1263151416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's all over the place < 1263151428 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, randomly searching for research you just think "oh, it's Norvig again" < 1263151430 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :he's that good < 1263151454 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :what did he do?? < 1263151462 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember ever coming across his work :/ < 1263151480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: then you're working in the wrong area < 1263151488 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :what are should I be in < 1263151496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the first time I saw his work it was some minor AI result < 1263151508 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :I read his AI book PAIP < 1263151537 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :to learn Lisp < 1263151840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Grr, I really want to move these taskbar items. < 1263151941 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm? < 1263151944 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :reoder? < 1263151946 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :re-order* < 1263151953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263151962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, from what, to what? < 1263151992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want to move a window entry. < 1263152005 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1263152027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, as in, move it from alphabetical order to something else? < 1263152037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not alphabetical, it's in opening order. < 1263152040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I just want to move one entry, ffs. < 1263152046 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I se < 1263152048 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :see* < 1263152059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, never heard of that feature < 1263152060 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :can't you just drag them? that works in Gnome, I thought it worked in KDE too < 1263152067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I thought it did too < 1263152068 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: what???? < 1263152072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh it does indeed < 1263152077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[ Firefox poop ] < 1263152079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Click, drag, drop. < 1263152081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Moved. < 1263152084 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well in firefox yes < 1263152084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is really, really standard stuff. < 1263152087 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1263152089 0 :augur!n=augur@c-68-54-80-152.hsd1.md.comcast.net JOIN :#esoteric < 1263152090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :never tried in taskbar under gnome < 1263152090 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I MEANT A FIREFOX WINDOW < 1263152100 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pretty sure it didn't work in the taskbar of KDE < 1263152103 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on KDE 3.5 < 1263152117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, oh I thought you meant system task bar < 1263152121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: only a couple of days ago I saw someone shouting at Microsoft for not implementing that until Win7 when every other common OS had done it for years < 1263152122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I did. < 1263152125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, system task bar < 1263152136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh < 1263152336 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ehird: "I want to be an astronaut!" "You will be a bin man" <<< if a kid who initially wanted to be an astronaut decides to change his mind after getting the results, he probably didn't want it enough for it to have been a possibility anyway. < 1263152361 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, some people become binmen, presumably they do it through choice < 1263152382 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :oklofok good point !!! < 1263152384 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :not that it defeats your point, just attacking your example, for no reason < 1263152387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: no shit < 1263152389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was a joke < 1263152409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: um, that's no reason not to take it seriously < 1263152412 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :especially in /this/ channel < 1263152417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :half the on-topic stuff we discuss is jokes < 1263152424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bah :P < 1263152507 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :nothing i see is either a joke or not, everything will be considered serious, and every answer will be considered a serious answer, while nothing at all is taken seriously at the same time. < 1263152545 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :this is what happens when environments are separated from the outer game, but made to look like it < 1263152558 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh my god the trees are beautiful < 1263152563 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i was just outside again < 1263152567 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and like... snow < 1263152573 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and trees..... wow < 1263152583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the canal's nice here, it's frozen over < 1263152583 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :my head hurts < 1263152586 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is pretty rare < 1263152591 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :should read some measure theory, exam tomorrow < 1263152597 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :woah measure theory < 1263152613 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :frozen masses of water look sorta boring usually < 1263152618 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :"woah"? < 1263152630 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :woah < 1263152633 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :woah. < 1263152667 0 :Pthing!unknown@unknown.invalid PRIVMSG #esoteric :woajhhhhh < 1263152789 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i already took the exam for the real analysis course following the measure theory course, and it wasn't too hard, by some logic this is probably even simpler. < 1263152817 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i might even sleep a few hours tonight < 1263152822 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :I would have thought real analysis is easier than measure theory < 1263152849 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :hey kiddles < 1263152853 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: < 1263152855 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :no : < 1263152863 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1263152886 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :our MT course was basically about lebesque and a few other measures, measurable functions, and basic results about lebesque integration < 1263152894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Lesbianesque. (What?) < 1263152909 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the RA course builds a lot of structures over the framework < 1263152944 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want to write a spreadsheet program, but: < 1263152950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :- it'd be best as a mode in my editor < 1263152953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :- my editor isn't done yet. < 1263152954 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but writing programs is annoying < 1263152954 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmph. < 1263152955 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i know < 1263152963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: Thankfully not :P < 1263153013 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well it's a bit annoying! (?) < 1263153021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wish kioslaves worked with Firefox so I could use man:/ :( < 1263153024 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :if you master all this stuff you can probably catch up with Terry Tao < 1263153044 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: is there an extension for that? < 1263153057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Probably not. < 1263153072 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: yes, the advanced courses of our university are so hard mastering their content makes you a supergenius < 1263153073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What would work is a KIOSlave FUSE FS. < 1263153098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then you could rewrite it to file:///mnt/kioslaves/man:(1) < 1263153102 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, apparently not < 1263153109 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you'd expect someone to have written one by now < 1263153116 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's impossible. < 1263153116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : I wish kioslaves worked with Firefox so I could use man:/ :( <-- I thought you hated firefox? < 1263153121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Extensions are just JavaScript. < 1263153121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :saying it was shit and such < 1263153125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It is. < 1263153142 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no they aren't, they can get into the internals too < 1263153145 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :e.g. vimperator < 1263153146 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah ff is the shit < 1263153148 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Extensions are just JavaScript. <-- in firefox? No you can load *.so < 1263153154 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://wiki.kde.org/tiki-index.php?page=KIO+Fuse+Gateway < 1263153156 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, then why use it < 1263153156 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's a plugin, not an extension. < 1263153164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And Netscape API plugins are just for embedded content. < 1263153168 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... Argh. < 1263153171 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Dead link. < 1263153179 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That's not getting into the internals. < 1263153186 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Firefox's UI is written in XUL and JavaScript. < 1263153193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: That's a plugin, not an extension. <-- no, you can load *.so in extensions too. At least for thunderbird. Enigmail does it < 1263153193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So of course JavaScript extensions can access it. < 1263153195 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can mess with the XUL, at least < 1263153200 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I would be surprised if you can't in firefox too < 1263153200 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes master stuff < 1263153202 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1263153228 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, hooking into Firefox's actual URL-loading code and routing it to KDE sounds unfun. < 1263153236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As in "huge pain in the arse" unfun. < 1263153271 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ehird: http://wiki.kde.org/tiki-index.php?page=KIO+Fuse+Gateway <-- 404 < 1263153275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh said already < 1263153437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They should just replace KDE with fullscreen Konqueror. It can split the screen, it can browse the web, it can manage files, it can run a terminal, it can do remote file management, it can look at audio CDs like encoded files, it can install packages... < 1263153443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I see no issue with this! < 1263153475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :reminds me of Emacs < 1263153554 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :augur, I am going to try and find a usage of the word 'and' in the non-conjunctive sense by searching the net. < 1263153602 0 :lieuwe!i=3efb65d9@gateway/web/freenode/x-yfipghgzcnaakern JOIN :#esoteric < 1263153644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION takes a deep breath, installs Flash. < 1263153649 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :in underload, does the ^ operator insert the item into the program, or replace the next op, or does it truncate the program? < 1263153657 0 :augur!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: what you might want to consider is situations in which "X and Y do V" does not imply "X does V and Y does V" < 1263153658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Insert the item into the program. < 1263153664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: You can think of (...) as a function. < 1263153665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ is call. < 1263153671 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or (...) is a string and ^ is eval. < 1263153690 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: ah, so it inserts and then just continues with the rest off the program... < 1263153728 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Of course, (...) differs from functions in most languages because you can print their contents and concatenate them (which is actually function composition - fun(f) return (fun(g) return (fun(x) return f(g(x)))) - but whatever). < 1263153742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: Yeah; otherwise, complex control flow would be impossible. < 1263153747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :...at least, I think so. ais523? < 1263153775 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: basically, imagine characters removed from the program as they're executed < 1263153780 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because there's no way to go back to them anyway < 1263153784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, I meant < 1263153797 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :does the s operator print a newline? < 1263153799 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^ inserts the top stack element just after the current IP, without overwriting anything, it's an insert < 1263153800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is Underload turing-complete if ^ is "execute the top element on the stack, then quit"? < 1263153802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: No. < 1263153804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: no, S doesn't < 1263153807 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can write ( < 1263153808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :)S < 1263153810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to print a newline < 1263153815 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ehird: ah, ok, thnx < 1263153826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I think so, because that's Muriel's control-flow operator < 1263153832 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it would be a different sort of language < 1263153869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, let's try and write programs in it! < 1263153899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. I just realised I don't have sound. < 1263153920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fixed. < 1263153922 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: but if ^ truncates the program, it doesn't mean it quits there, the stack thingy could write to the program,(but that would be hard to program in :-p) < 1263153942 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^ is the only way to write to the program, though < 1263153955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can see it in several different ways < 1263153963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :truncating ^ < 1263153964 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a function call, an eval, or replacing the ^ with the top stack element < 1263153965 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1263153967 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION writes an infinte loop < 1263153969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*infinite loop < 1263153970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(:^):^ < 1263153972 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: (:^):^ < 1263153972 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well that was easy < 1263153973 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No change there < 1263153990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Gah, Flash on Linux is desynchronised from the audio as always. < 1263154013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hmm... the problem is that there's not really any simple-but-non-trivial Underload programs < 1263154025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because they're all either trivial, or mind-boggling < 1263154036 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the fibonacci's pretty simple < 1263154040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, actually < 1263154042 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think we can write < 1263154046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(x)^y < 1263154048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as < 1263154061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ul (()(*))(~:^:S*a~^a~!~*~:(/)S^):^ < 1263154064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(x^)(y)~^ < 1263154065 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No? < 1263154068 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^ul (()(*))(~:^:S*a~^a~!~*~:(/)S^):^ < 1263154069 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :*/*/**/***/*****/********/*************/*********************/**********************************/*******************************************************/*****************************************************************************************/********************************************************************************* ...too much output! < 1263154075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Although that'd make (!)^foo problematic. < 1263154076 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :forgot EgoBot didn't do Underload... < 1263154080 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, wait! < 1263154082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's obvious < 1263154083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(x)^y < 1263154085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-> < 1263154088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(x)(y)*^ < 1263154096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1263154112 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how do you handle (a^b)^c, though? < 1263154141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*(c)*^)^ < 1263154159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :by doing these rewrites: < 1263154162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a^b)^c < 1263154171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*^)^c < 1263154177 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I'm not sure if that works if b manipulates the stack < 1263154178 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*^)(c)*^ < 1263154179 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263154182 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There we go < 1263154186 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Easy < 1263154198 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: easy, but wrong < 1263154213 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :executing that gives (a(b)*^c)^ < 1263154224 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric := a(b)*^c < 1263154240 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and the c never runs because it's after an ^ < 1263154247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah, of course < 1263154250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Let me continue the rewriting then < 1263154254 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*^)(c)*^ < 1263154261 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*^c)^ < 1263154265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*(c)*^)^ < 1263154276 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because (f)(g)* = (fg) < 1263154290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and then we just apply the regular a^b = a(b)*^ rule < 1263154296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does (a)(^)*^b become? < 1263154307 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a)(^)*^b < 1263154314 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a)(^)*(b)*^ < 1263154319 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a^b)^ < 1263154324 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you're evaluating the program, though < 1263154325 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(a(b)*^)^ < 1263154332 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: This isn't a machine translation < 1263154335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is for humans to do < 1263154339 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :is the S command always uppercase?(does it HAVE to be, or is lowercase also fine?) < 1263154345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: but I mean, that process could go into an infinite loop < 1263154347 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lieuwe: has to be uppercase < 1263154350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and a has to be lowercase < 1263154366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: So apply human ingenuity. < 1263154368 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :ais523: :-p < 1263154379 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For most programs, it should be a relatively simple translation. < 1263154401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I'm pretty sure it is TC, but that this isn't the way to go about a proof < 1263154462 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wasn't trying to prove it turing-complete. < 1263154473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I was trying to prove that it is quite a trivial variant of Underload for most programs. < 1263154488 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't call having to execute most of the program to compile a trivial variant < 1263154500 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's like, saying that replacing a program with its output is a trivial variant < 1263154568 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's a trivial variant FOR HUMANS TO TRANSLATE MOST PROGRAMS TO. < 1263154572 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Jesus christ. < 1263154597 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wish this mouse's left button was as easy to press as its right button. < 1263154670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://web11.twitpic.com/img/56256770-1eafd0a10499dc58601394e9fefa9c57.4b4a35c3-scaled.jpg Haskell's Tower of Babel < 1263154688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/$/./ < 1263154690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I don't see how it's trivial at all, for large programs < 1263154715 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :almost done my implementation, only got ( and ) left to do... < 1263154808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1263154820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Compose -> is → and Compose <- is ←, so what should up and down arrow be? < 1263154826 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^| and v|? < 1263154881 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: heh < 1263154924 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :{-# LANGUAGE IncomprehensibleTypes #-} < 1263154944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :strangely, altgr seems to produce ←↓→ but not the other arrow < 1263154961 0 :lieuwe!unknown@unknown.invalid PRIVMSG #esoteric :oh, crap, found something stupid in my implementation, it pushes the raw ops on the stack, not the python equivalent, darnit... ah, well, i'll continue tomorow... < 1263154964 0 :lieuwe!unknown@unknown.invalid QUIT :"Page closed" < 1263154977 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ew, get a real client < 1263154993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if he pushes the python equivalent he's going to handily break S :) < 1263154997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the pitfalls of underload < 1263154997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think lieuwe discovered the needing-to-store-two-representations issue < 1263155005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's not an issue for interpreters. < 1263155022 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is in a way, just they use the same representation for both < 1263155056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So you have a two-representation problem with only one representation. < 1263155059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Uh-huh. < 1263155081 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how easy is it to analyse to see if only the string meaning or only the code meaning are needed? < 1263155087 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(in some cases at least) < 1263155122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: needs string meaning = calls S while it is on top of stack < 1263155130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: really difficult, in general < 1263155134 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :needs code meaning = calls ^ while it is on top of stack < 1263155142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"it" also includes being concatenated with another function < 1263155152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric := halting problem in the purest sense < 1263155172 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :aye < 1263155210 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you might be able to trace control flow to rule out some common cases < 1263155252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf, my compose doesn't have Compose - - = em-dash, either < 1263155256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes note to add that < 1263155260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"I used to be a Zen Buddhist, and myself used to search endlessly for a "bigger picture". Then I got hungry, had a burrito, and was enlightened." --reddit < 1263155306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :any opinions on compose combos for up and down arrow? < 1263155314 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^| and v| are ugly imo :/ < 1263155333 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: use the arrow keys? < 1263155333 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I have been reading about some of factor's analysis. There was an almond-bread example that looked like over-HOFed stuff from Joy but translated into nice efficient machine code. Types were inferred all over the place and all the HOF-based control structures turned into loops and shit < 1263155352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Factor's compiler is amazing. < 1263155355 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :aye < 1263155376 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it does have an advantage over Smalltalk though < 1263155381 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :binding is a bit later < 1263155392 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you could probably do that with Underload too < 1263155403 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC:, you mean. < 1263155409 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, arrow keys could work, but combined with what? < 1263155411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :| up arrow? < 1263155417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's less efficient to type than | ^ < 1263155421 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just the up arrow? < 1263155426 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is Compose. < 1263155427 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or can you not have a one-char compose? < 1263155428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It takes two keys. < 1263155429 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :most words have to be declared before use, unlike smalltalk/ruby < 1263155435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: always exactly two? ugh < 1263155441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, no, N. < 1263155450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But if you have x y, you can't have multi_key x < 1263155452 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or multi_key x y z < 1263155457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for obvious reasons < 1263155460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1263155466 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how about composing the up-arrow with itself? < 1263155472 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are you really going to use the arrow keys as the first part of a compose, though? < 1263155476 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: I would expect that to give me Knuth's arrow. < 1263155482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Perhaps someone else already did. < 1263155486 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :is that not an up arrow? < 1263155492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Two up arrows. < 1263155498 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1263155502 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess that's just up arrow up arrow < 1263155512 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I meant, is Knuth's arrow different from the up arrow glyph you want? < 1263155513 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not for horizontal arrows < 1263155520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as you can't stack vertically in regular text < 1263155524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Unicode, you disappoint me < 1263155528 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I'd put Knuth arrow on ^^, because it is related to exponentiation < 1263155532 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Unicode, I am disappoint. < 1263155552 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you disappoint me with a literal lack of points < 1263155553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :codepoints, that is < 1263155555 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :unless it isn't what I think it is < 1263155619 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Left, right, up, down, adding to the compose file la la la < 1263155648 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :UUDDLRLRBASS < 1263155667 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So if mdash is -- what's endash? :P < 1263155670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :- space? < 1263155672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :--- < 1263155680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :endash is SHORTER. < 1263155683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and besides, that's impossible < 1263155684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I know what you said about prefixes < 1263155684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263155687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you have xy you can't have xyz :P < 1263155689 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mdash is ---, ndash is -- < 1263155695 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :— and – < 1263155703 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Completely identical in this monospaced font) < 1263155709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :look pretty differnt to me < 1263155714 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm trying to insert the Unicode character with the Compose key, you dolt < 1263155715 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but my ms are wider than my ns < 1263155719 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so obviously I can't use the Unicode chars directly < 1263155726 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I sort-of assumed compose would work like a modifier key < 1263155726 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Meh, altgr :-P < 1263155732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you hold it down while you type what to compose, then let go < 1263155768 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how about m- and n- < 1263155772 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :jsut how they sound < 1263155789 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263155830 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263155868 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :did you get that? < 1263155898 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :compose should reflect the structure of the letters < 1263155905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e. "o -> ö < 1263155907 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'o -> ó < 1263155911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :`o -> ò < 1263155914 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1263155916 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ss -> ß < 1263155926 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :Sußman < 1263155927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's just to make it easier to remember < 1263155931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.fileformat.info/info/unicode/char/search.htm?q=less%20than&preview=entity ;; what a useless set of results < 1263155942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I consider it a good design principle. < 1263155964 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Incidentally, I actually saw KDE refer to a daemon as a dæmon, and I facepalmed. < 1263156028 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1263156059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Because the Unix term is daemon. < 1263156091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :arguably those are the same thing, though < 1263156105 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, different graphical representations of the same word < 1263156110 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :æ is just kerning < 1263156114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I disagræ. < 1263156143 0 :FireFly!unknown@unknown.invalid QUIT :"Leaving" < 1263156175 0 :FireFly!n=firefly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1263156348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyone know of a unicode browsing app? < 1263156505 0 :lament_!n=lament@S0106002312fa554a.vc.shawcable.net JOIN :#esoteric < 1263156580 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :gnome-character-map ? < 1263156591 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :#define lambda(ret, body, ...) ({ ret __LAMBDA__ (__VA_ARGS__) { body }; __LAMBDA__; }) < 1263156592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, preferably not Gnome. < 1263156599 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... That kinda-sorta works. < 1263156617 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's the best you can do? < 1263156619 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Behold: < 1263156668 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is anticipating Oleg's lambda. Which, though very much lambda, is not C. :P < 1263156669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#define lambda(params, ...) ({ __typeof__(({ __VA_ARGS__; }))__LAMBDA__ params { return ({ __VA_ARGS__; }); }; __LAMBDA__; }) < 1263156688 0 :lament!unknown@unknown.invalid QUIT :Nick collision from services. < 1263156688 0 :lament_!unknown@unknown.invalid NICK :lament < 1263156690 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Okay, that's a good point. < 1263156693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lambda((int x), x*2) < 1263156728 0 :soupdragon!unknown@unknown.invalid QUIT :Nick collision from services. < 1263156745 0 :soupdragon!n=somebody@unaffiliated/fax JOIN :#esoteric < 1263156822 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bah. < 1263156835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyone know what the codepoints of <, >, ^, and | are? < 1263156840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*^ and < 1263156859 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That doesn't work; __typeof__ strongly dislikes unknown variables... < 1263156874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Oh, does it not? < 1263156894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#define lambda(params, ...) ({ __typeof__(lambda(params, ## __VA_ARGS__)) __LAMBDA__ params { return ({ __VA_ARGS__; }); }; __LAMBDA__; }) < 1263156897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1263156917 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Thar. < 1263156922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, what is __LAMBDA__ defined as? < 1263156926 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nothing. < 1263156928 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It isn't. < 1263156929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That defines __LAMBDA__. < 1263156947 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's just a name that's not likely to be in use. < 1263156960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh ffs, gnu extensions < 1263156974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Hey, if we restrict it to one parameter, we can do the typeof < 1263156977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :By doing params; body < 1263156991 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: XD < 1263157000 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: And then, it's curry. Delicious curry. < 1263157012 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I thought you couldn't pass lambdas like that out of the block they were defined in < 1263157024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: No, it's out of the function. < 1263157025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think. < 1263157027 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least in gcc < 1263157028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And you can pass them upwards. < 1263157031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just not downwards. < 1263157032 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, as far as I can see it defines lambda() not __LAMBDA__, and what is __LAMBDA__ good for? < 1263157042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that isn't passing it out, you're still inside the block < 1263157053 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: *sigh* < 1263157054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Learn C. < 1263157059 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: __LAMBDA__ is not defined in the C preprocessor. < 1263157066 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I know C. Just not GNU statement crap < 1263157075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nothing to do with GNU statement crap. < 1263157078 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or typeof < 1263157079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You fail at the pre-processor. < 1263157085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq's didn't use typeof. < 1263157089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, so why do you want it undefined < 1263157095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1263157113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :({ }) is a GNU extension < 1263157116 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :In mine, __LAMBDA__ is defined as a function of type ret(*)(__VA_ARGS__). < 1263157117 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as is nested functions < 1263157142 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The the statement: ret __LAMBDA__(__VA_ARGS__) {body}; < 1263157146 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/The/By/ < 1263157176 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's a function declaration. The following __LAMBDA__ makes the result of ({ }) be the address to that function. < 1263157179 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed. And I never bothered to learn any gnu extension apart from __attribute__, Because usually you can still compile the code with __attribute__ on other compilers (with relevant pre-processor code to just make it mean nothing) < 1263157187 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :while for other ones you would have to write the code twice < 1263157193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :once for gnu and once for portable < 1263157194 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The part you failed at is not a GNU extension. < 1263157241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, nasty, upper case name as a function name < 1263157271 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It never escapes the ({ }) block. < 1263157289 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and what on earth are the semantics for that now again < 1263157292 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: the part he may be failing at is defining functions inside other functions, which /is/ a GNU extension < 1263157295 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not that I will remember it tomorrow < 1263157303 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh right that crap < 1263157304 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: same as for do {} in Perl < 1263157314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :messes up with non-executable stacks too < 1263157319 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Statement expression. < 1263157323 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :due to the trampoline fail < 1263157359 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :A similar thing can be done in C++. < 1263157370 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unlike this, the lambda macro in C++ is valid C++. < 1263157391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, which I don't really know much about, deciding to stop messing with C++ soon after I saw what templates could do < 1263157441 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, that language is powerful, I must stop using it! < 1263157473 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, no, it was the messyness < 1263157517 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, like, not being able to place the methods of a template in a *.c (functions won't be there when template is instantiated in another file < 1263157518 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1263157540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :probably it might work if you create dummy instantiation of those in that source file < 1263157551 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but that is just ugly < 1263157583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, in fact, rather than rant here I just refer you to the C++ FQA < 1263157591 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :read it already < 1263157676 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also, horribly long compile time. I have yet to see any C++ compiler that manages at the speed of even gcc. And gcc is hardly fast. < 1263157709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and anything approaching the speed of tcc for c++? I'll believe it when I see it < 1263157782 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(I really prefer being able to test often when developing. With no optimisation it should IMO be fast to compile. Oh also please stop abusing operator overloading,) < 1263157886 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe someone could invent incremental compilation < 1263157890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it recompiles only what's changed? < 1263157908 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :doing it at file-level is too coarse for C++, is the issue < 1263158013 0 :coppro!n=coppro@unaffiliated/coppro JOIN :#esoteric < 1263158100 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1263158123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well, I haven't seen that done for less than file level for C++. Well precompiled headers, but when I tried that I couldn't get it to work < 1263158144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :think I managed to trigger ICE in gcc. That was during 4.1 or so, so it may be better nowdays < 1263158146 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: really? it's pretty easy < 1263158148 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :gcc header.h < 1263158160 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"ICE"? < 1263158174 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, ... Internal Compiler Error < 1263158190 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sheesh, that guy doesn't know a jargon acronym I used! < 1263158200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I must express my shock with an ellipsis. < 1263158221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, also it didn't work for more than one header. Nor if it wasn't the first header included < 1263158235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: I have a working lambda with __typeof__ < 1263158242 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or, if you defined anything before including it (in the source file) < 1263158284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://sprunge.us/deGW < 1263158385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: http://sprunge.us/RTgd This version handles multiple statements in the body < 1263158392 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't know how to fix the one-parameter-only issue, though. < 1263158415 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For the lulz, here's how it desugars: < 1263158417 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : upto(10, ({ __typeof__( ({ int i; (void)printf("%d\n", i); }) ) __LAMBDA__(int i) { return ({ (void)printf("%d\n", i); }); }; __LAMBDA__; })); < 1263158658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fn(int i, (void)printf("%d\n", i)) could also be written as fn(int i, printf("%d\n", i); return) :-D < 1263158696 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the multi-args problem can be "solved" with more parens < 1263158703 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nope. < 1263158710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Because __typeof__( ({ param; __VA_ARGS__; }) ) < 1263158716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :param -> "int i;" < 1263158717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but if < 1263158722 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :params; -> "(int i, int j);" < 1263158725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that wouldn't work as a declaration < 1263158726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(would it?) < 1263158732 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263158742 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that's... funky < 1263158779 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how about "fn(int i; char j, ... )" < 1263158782 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(ew) < 1263158788 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Solution: K&R C params. < 1263158799 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://sprunge.us/IOdM < 1263158801 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :why are you putting the decls at the top of the block rather than doing typeof on the function itself anyway? < 1263158803 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Advanced lambdaology! < 1263158818 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: erm < 1263158822 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah, I see now < 1263158824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does __typeof__(x) x = ... WORK? < 1263158833 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: fn(int i; int j, ...) is unworkable because we need to put it in the function params < 1263158862 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oh bugger yes < 1263158874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :answer: no, __typeof__(__LAMBDA__) __LAMBDA__(...) doesn't work < 1263158883 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :well I see that now < 1263158887 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :__typeof__( ({param_decl; __VA_ARGS__}) ) fn(params) param_decl < 1263158911 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Does GNU C99 support K&R parameters? < 1263158940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, you have to specify parameters like that in your actual FN usage that way. < 1263158945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Which is lame-butt. < 1263158945 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you just need C1X-style type inference(!) < 1263158980 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Yes. < 1263158984 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We could use X-Macros w/ PARAMS(PARAM(int,i),...) to generate a file with the prototype and a file with the argument list. < 1263158990 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then #include that. :-D < 1263159013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, who needs multiple parameters when you have currying? < 1263159019 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It even works with -std=c99 -pedantic < 1263159073 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION proceeds to implement the lambda calculus standard library in C. < 1263159079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wait, no. < 1263159087 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We can't even do currying. < 1263159094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Because you can't return a nested function. < 1263159099 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They expire if you shove 'em down the stack. < 1263159133 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's the main reason for Apple's blocks having explicit copying for them, yeah... < 1263159149 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I invoke Greenspun's Tenth Law and implement R5RS Scheme. < 1263159165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*Tenth Rule < 1263159174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, wait, the Rule is for Common Lisp only. < 1263159177 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Of course, you *could* implement a (stupid) copying scheme. < 1263159179 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what were the other 9 rules? < 1263159203 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, I want to know which language Common Lisp is a badly designed implementation of half of < 1263159209 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :they weren't < 1263159222 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523: itself < 1263159228 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Just make sure the function ends with: { int end_func = UINT_MAX; } < 1263159233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, Morris's Corollary is "...including Common Lisp." < 1263159239 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The rule was written sometime around 1993 by Philip Greenspun. Although it is known as his tenth rule, there are in fact no preceding rules, only the tenth. The reason for this according to Greenspun: "Sorry, Han-Wen, but there aren't 9 preceding laws. I was just trying to give the rule a memorable name."[3] < 1263159243 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And grep for UINT_MAX in your lambda copying function. < 1263159252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: O_O < 1263159277 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: ... Did I happen to mention that this is almost sure to break? < 1263159295 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Oh, make it volatile. Less likely to break. < 1263159296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :("Every program attempts to expand until it can read mail. Those programs which cannot so expand are replaced by ones which can." --Zawinski's Law of Software Envelopment) < 1263159310 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1263159404 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :s/read mail/post to twitter/ nowadays < 1263159425 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : Talking to oerjan makes me experience synchronicity or something < 1263159432 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well, naturally. also, what? < 1263159473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what's ^'s codepoint? < 1263159483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: What to call a house's crawl space was being discussed earlier < 1263159498 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: in hex? < 1263159510 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263159511 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"man ascii" says its 5e < 1263159514 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*it's < 1263159518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Thanks. < 1263159520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :`c printf("%x",'^'); < 1263159521 0 :HackEgo!unknown@unknown.invalid PRIVMSG #esoteric :No output. < 1263159524 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION doesn't recall that discussion. or know what a crawl space is. i guess i'll find out when i get to reddit. < 1263159530 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c printf("%x",'^'); < 1263159533 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :5e < 1263159537 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :helps to get the right bot... < 1263159537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: It was in here. < 1263159557 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^| for up arrow, but v| or |v for down arrow? < 1263159565 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how does !c work? < 1263159567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : pikhq: http://sprunge.us/RTgd This version handles multiple statements in the body <-- did I actually manage to convince you to use something that I recommended? < 1263159579 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: compiles and runs C, I think, adding an appropriate wrapper if necessary < 1263159582 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No? < 1263159590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { puts("Hello, world!"); } < 1263159599 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I'm pretty sure it was me who recommended that pastebin to you < 1263159599 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!c puts("poop!") < 1263159600 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :poop! < 1263159603 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523: massive security hole? < 1263159606 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: No, I told you about it. < 1263159608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: plash'd. < 1263159611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Go on; try and break it. < 1263159614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :God knows we have. < 1263159620 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :!c *NULL < 1263159627 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1263159629 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :broke it < 1263159630 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :!!! < 1263159640 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :soupdragon: just no output < 1263159645 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Kinda hard to break Plash. < 1263159653 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :that's just one interpretation ais :p < 1263159657 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { for(;;); return 0 } < 1263159658 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Does not compile. < 1263159660 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { for(;;); return 0; } < 1263159663 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hi < 1263159664 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c printf("a"); printf("%d",*(int*)NULL); printf("b"); < 1263159669 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :./interps/gcccomp/gcccomp: line 52: 24519 Segmentation fault /tmp/compiled.$$ < 1263159687 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hi AnMaster < 1263159688 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :If you manage to break out of Plash's sandboxed libc, you find yourself in an empty chroot. < 1263159696 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { for(;;){malloc(99999); return 0; } < 1263159697 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Does not compile. < 1263159704 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :With literally nothing but your program and ld. < 1263159704 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: unmatched braces < 1263159706 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { for(;;){malloc(9999);}; return 0; } < 1263159713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I do have to say the annotation today was quite nice < 1263159715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :v| or |v for down arrow? any opinions? < 1263159718 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that'll just be an infinite loop that silently terminates after a bit < 1263159719 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: both < 1263159722 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Alright < 1263159724 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you don't have to remember which < 1263159737 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :shouldn't timeouts give a message? < 1263159739 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c int main(void) { for(;;){fork();}; return 0; } < 1263159750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c for(;;) printf("x"); < 1263159756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!c puts("POOP") < 1263159759 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :POOP < 1263159759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!c puts("POOP"); < 1263159761 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is seeing what messages all the common stuff gives < 1263159762 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :POOP < 1263159770 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!ps < 1263159798 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1263159853 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :":39:53 < ehird> Go on; try and break it." < 1263159857 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmmmmmmmmmmmmmmm < 1263159879 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c for(;;) puts("beep"); < 1263159880 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :beep < 1263159887 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c for(;;) puts("beep"); < 1263159888 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :beep < 1263159892 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :huh < 1263159900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It DCCs you the rest of the output. < 1263159913 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh this will be fun < 1263159943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Plash is well-tested, mature open-source software. Your chance of breaking it via an IRC bot is extremely low. < 1263159953 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :true < 1263159959 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"* SimonRC is seeing what messages all the common stuff gives" < 1263159960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Even if you do, your chance of breaking out of the empty chroot you will find yourself in is extremely low too. < 1263159982 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :geordi has some pretty crazy sandboxing too < 1263159995 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :for those of you who have used geordi < 1263160006 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: Here's the vector of attack I would suggest: Make it download (it has functionality to do this) a statically-linked executable. Plash modifies the dynamically-linked glibc. < 1263160013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, also static binaries = no luck < 1263160014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then, try and break out through syscalls. < 1263160016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I tried that in plash < 1263160024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it worked up to a point < 1263160040 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Though, then you need to hope for a kernel bug. < 1263160043 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c for(int i = 1; i; i++) printf("%d", i); < 1263160056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: No, just kernel functionality which Plash doesn't want you using. < 1263160068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, since it runs the process in an empty chroot with a preloaded libc replacement that calls a server outside the chroot for file IO and such... < 1263160075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Admittedly, you then need a kernel exploit for the chroot. < 1263160083 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, thus, static binary can't do anything < 1263160093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION Alt+SysRq+K to reload .XCompose < 1263160097 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263160112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I did try direct syscalls < 1263160134 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I can't get it to spam me now < 1263160137 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263160139 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :!c for(int i = 1; i; i++) printf("%d\n", i); < 1263160142 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :1 < 1263160146 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bah; its unworking is present. < 1263160146 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Plash could start using ptrace for its sandboxing. < 1263160150 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :aha, needed a \n < 1263160153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ompose - -? No luck. < 1263160154 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And then have direct control over the system calls. < 1263160155 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I do believe you could do mischeif with sockets though < 1263160162 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't allow break out < 1263160167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh! < 1263160170 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but direct syscalls to directly work on sockets < 1263160170 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :gives up after 3500 lines < 1263160172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :could be fun < 1263160196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Plash could start using ptrace for its sandboxing. <-- planned feature iirc. And then all hope is lost < 1263160205 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :we are assuming we run arbitrary machine code here, right? < 1263160210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: You can. < 1263160212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!asm < 1263160217 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can also do !asm ...url... < 1263160219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or !c ...url... < 1263160223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char* a="!c char*a =|%s%c%s%c%s|; char* c=strdup(a); for(char *b=a; *b;) if(*b++=='|') b[-1]=0; printf(a+12,a,34,c,34,a+23);"; char* c=strdup(a); for(char *b=a; *b;) if(*b++=='|') b[-1]=0; printf(a+12,a,34,c,34,a+23); < 1263160225 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :./interps/gcccomp/gcccomp: line 52: 25004 Segmentation fault /tmp/compiled.$$ < 1263160228 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whoops < 1263160231 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what? < 1263160238 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how did you manage that < 1263160240 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: Not just "assuming". That's what Ptrace does. < 1263160253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does the compiler crash locally on that for you? < 1263160256 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably < 1263160260 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It runs arbitrary machine code in a very safe way. < 1263160270 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# Dashes < 1263160272 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : : "–" U2013 # EN DASH < 1263160274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : : "—" U2014 # EM DASH < 1263160275 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Shoulda known it already had it. < 1263160277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :– < 1263160279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— < 1263160288 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char* a="!c char*a =@%s%c%s%c%s@; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+12,a,34,c,34,a+23);"; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+12,a,34,c,34,a+23); < 1263160289 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :./interps/gcccomp/gcccomp: line 52: 25053 Segmentation fault /tmp/compiled.$$ < 1263160294 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what are you trying to do? < 1263160294 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that fix is needed, at least < 1263160297 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: quine < 1263160301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1263160306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you should file a bug if that happens outside plash < 1263160314 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :against what? < 1263160326 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh not gcc? < 1263160329 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263160329 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, misread the error < 1263160338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, thought it was gcc itself that segfaulted < 1263160370 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263160383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :←→↑↓ < 1263160385 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, anyway it doesn't currently use ptrace afaik < 1263160390 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what I'd do for the diagonals. < 1263160399 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, also I wonder how threads interact with this. < 1263160407 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in, pthreads < 1263160412 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :L/ \J r\ /7 ? < 1263160415 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Do you know of any way to get an alt-code-like setp on X? < 1263160417 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :*setup < 1263160417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone up for writing a short pthreads test program? < 1263160420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess -^ for upleft, ^- for upright, v- for downleft and -v for downright. < 1263160424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: alt-code-like? < 1263160432 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :where you type in a digit sequence < 1263160433 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or compose-uparrow-rightarrow ? < 1263160439 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: can't do that, can you? < 1263160442 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :in my case, I'd just want the Unicode codepoint < 1263160443 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :dunno < 1263160445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Ah. < 1263160450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :doesn't even compile, locally < 1263160450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Don't; Compose is far superior. ;-) < 1263160457 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ehird: But less generic < 1263160461 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :and not mutually exclusive either < 1263160483 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Look in System Settings → Region & Language → Keyboard Layout → Advanced < 1263160487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There might be something there. < 1263160491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/Advanced$/Advanced./ < 1263160518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Key sequence to kill the X server: [ ] Control + Alt + Backspace" < 1263160521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A GUI for everything! < 1263160537 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1263160537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: Nope, nothing there. < 1263160552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: You could generate a Compose file with every codepoint. < 1263160559 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so lets see < 1263160564 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It'd be gigantic and X11 would take about five years to start, but it'd work. < 1263160585 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :yeah :( < 1263160810 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, downside of compose: no key repeat < 1263160810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char a[]="!c char a[]=@%s%c%s%c%s@; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+13,a,34,c,34,a+24);"; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+13,a,34,c,34,a+24); < 1263160812 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :!c char a[]="!c char a[]=@%s%c%s%c%s@; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+13,a,34,c,34,a+24);"; char* c=strdup(a); for(char *b=a; *b;) if(*b++==64) b[-1]=0; printf(a+13,a,34,c,34,a+24); < 1263160813 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→ < 1263160815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :found my error < 1263160819 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :long live altgr < 1263160823 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for some reason I was trying to write to a constant string < 1263160846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, turn on -Wwrite-strings ;P < 1263160852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: how, with egobot? < 1263160857 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, easier just to fix the declaration < 1263160860 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well, that I don't know < 1263160864 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or write to c, fwiw < 1263160864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what? < 1263160869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that one warns you < 1263160869 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1263160904 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, nice polygot. Now just make it output brainfuck or underload every other time < 1263160916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can run fungot against egobot < 1263160917 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 1l 2l axo befunge bch bf8,16,32,64 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain rail sadol sceql udage01 unlambda whirl is that fnord < 1263160923 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Polyglor"? < 1263160925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*Polyglot < 1263160927 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's a quine. < 1263160933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err typo < 1263160935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or rather < 1263160938 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I thought ahead < 1263160940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char* a="!c char*a =@%s%c%s%c%s@; char* c=strdup(a); for(char *b=c; *b;) if(*b++==64) b[-1]=0; printf(c+12,c,34,a,34,c+23);"; char* c=strdup(a); for(char *b=c; *b;) if(*b++==64) b[-1]=0; printf(c+12,c,34,a,34,c+23); < 1263160941 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at the polygot < 1263160942 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :!c char*a ="!c char*a =@%s%c%s%c%s@; char* c=strdup(a); for(char *b=c; *b;) if(*b++==64) b[-1]=0; printf(c+12,c,34,a,34,c+23);"; char* c=strdup(a); for(char *b=c; *b;) if(*b++==64) b[-1]=0; printf(c+12,c,34,a,34,c+23); < 1263160960 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: 1l 2l axo befunge bch bf8,16,32,64 fyb fybs glass glypho kipple lambda lazyk linguine malbolge pbrain rail sadol sceql udage01 unlambda whirl is that fnord <-- what < 1263160961 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you aren't using? it's not scheme! they look like cavemen." " if you like < 1263160971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie!! what the hell was that string from < 1263160974 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fungot itself? < 1263160986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm no < 1263160989 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :possibly egobot < 1263160991 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263160993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :EgoBot. < 1263160993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char*a="!c char*a=@%s%c%s%c%s@;char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22);";char* c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22); < 1263160995 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :!c char*a="!c char*a=@%s%c%s%c%s@;char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22);";char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22); < 1263161000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fungot is going to have a bot change. < 1263161001 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: rigght moving the stuff to colin. < 1263161001 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :!fnord < 1263161005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!c char*a="!c char*a=@%s%c%s%c%s@;char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22);";char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22); < 1263161008 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :!c char*a="!c char*a=@%s%c%s%c%s@;char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22);";char*c=strdup(a);for(char*b=c;*b;)if(*b++==64)b[-1]=0;printf(c+11,c,34,a,34,c+22); < 1263161013 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there we go < 1263161018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :He is changing from the bot gender of fungot to EgoBot. < 1263161019 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: czech rock :d hope you're not disappointed, but i've never tried magic, so i'm supposed to be an atheist < 1263161022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :His new name will apparently be "colin". < 1263161029 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And he will be an atheist. < 1263161039 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1263161040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION nods head. Solemnly. < 1263161051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :of course, I think it's possible to do a much shorter C quine than that < 1263161060 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I think so too < 1263161067 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just, not right now, I have work to do that I really should be doing < 1263161075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well yes. isn't there a zero byte one from IOCCC? < 1263161087 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :the geordi quine is geordi: { char y(34); stringstream i("geordi: { char y(34); stringstream i(!); string t; getline(i, t, '!'); cout << t << y << i.str() << y << i.rdbuf(); }"); string t; getline(i, t, '!'); cout << t << y << i.str() << y << i.rdbuf(); } < 1263161101 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :C will be a bit slower < 1263161102 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that doesn't count < 1263161107 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : coppro that isn't C. That is C++ < 1263161110 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :I know < 1263161115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well the one byte one then? < 1263161120 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(){char*x="printf(%c%s%c,34,x,34)";return printf(x,34,x,34);} < 1263161124 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that wasn't a quine < 1263161125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :↑ C quine < 1263161138 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nobody said it was C. < 1263161138 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: how? < 1263161140 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :geordi runs C++. < 1263161143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: How what? < 1263161144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't print the char* or the int main < 1263161147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oops. < 1263161152 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :!c char*x="printf(%c%s%c,34,x,34)";return printf(x,34,x,34); < 1263161153 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :printf("printf(%c%s%c,34,x,34)",34,x,34) < 1263161165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oops, right. < 1263161168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's for the embedded version. < 1263161171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Let's try again: < 1263161174 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :!c return printf("printf(%c%s%c,34,x,34)",34,x,34); < 1263161175 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Does not compile. < 1263161197 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sec < 1263161240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(x,y){y="int main(x,y){y=%c%s%c;return printf(y,34,y,34);}";return printf(y,34,y,34);} < 1263161248 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what languages allow you to read the program code from inside the program. I mean, non-esolangs < 1263161255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Note my wonderful casting powers. < 1263161271 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :without opening the source file (if compiled) < 1263161277 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway that made me thing of a short bash quine < 1263161285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :!bash echo "test, does this have bash?" < 1263161289 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :!sh echo "test, does this have bash?" < 1263161289 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :test, does this have bash? < 1263161292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263161292 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(int x,char**y){x="int main(int x,char**y){x=%c%s%c;return printf(x,34,x,34);}";return printf(x,34,x,34);} < 1263161296 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :!sh echo "$0" < 1263161297 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :/tmp/input.25413 < 1263161298 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :↑ Valid C. < 1263161300 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :!sh cat "$0" < 1263161301 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :cat "$0" < 1263161303 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there < 1263161304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Behold my evil. < 1263161306 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :short bash quine! < 1263161325 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Anyone who thinks that is a quine is an idiot who has not seen it before. < 1263161325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or shell one + cat < 1263161326 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263161333 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Do you think you actually thought of that cheat yourself? < 1263161337 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Colin is one of my computers, so that's probably something I said. < 1263161339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no < 1263161339 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: undefined behaviour, you need explicit casts to make it relevant < 1263161345 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!perl #!/usr/bin/cat < 1263161346 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :Can't exec /usr/bin/cat at /tmp/input.25470 line 1. < 1263161350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :!perl #!/bin/cat < 1263161351 0 :EgoBot!unknown@unknown.invalid PRIVMSG #esoteric :#!/bin/cat < 1263161353 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, but I haven't read about it. I assumed someone else must have thought of it before < 1263161353 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there we go < 1263161359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(int x,char**y){x=(int)"int main(int x,char**y){x=%c%s%c;return printf(x,34,x,34);}";return printf((char*)x,34,x,34);} < 1263161362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's one of my favourite Perl quines just because it's so absurd < 1263161369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: You can do %s on an int because printf just has ... < 1263161389 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: assuming int is the same size as a pointer, it's likely to work < 1263161405 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's undefined behaviour even if they're the same, as the interp can use any implementation-defined tricks it likes to cast int to pointer < 1263161409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :including changing the representation < 1263161415 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why would perl even consider it may be invoked on a non-perl program? < 1263161422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :int main(){char*x="int main(){char*x=%c%s%c;return printf(x,34,x,34);}";return printf(x,34,x,34);} < 1263161424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Shorter, anyway. < 1263161442 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because you can do #!perl -w < 1263161448 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so it just executes the program mentioned < 1263161450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: so you can set perl as a generic command interpreter on a system that doesn't do shebangs < 1263161453 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it emulates them for you < 1263161459 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes for food < 1263161460 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: is that the real reason? wow < 1263161461 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no, that's an entirely different sort of magic < 1263161475 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if the name "perl" is in the string, it instead reads command-line options from it < 1263161480 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1263161481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: according to the manpages, yes < 1263161481 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I meant more like < 1263161485 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/path/to/perl -w < 1263161535 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that has the word "perl" in, so it'll run under whichever perl you ran it with < 1263161543 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even more fun is "#!/bin/sh -- # -*- perl -*- -p" < 1263161548 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is an actual example in the manual < 1263161584 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1263161588 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : If the #! line does not contain the word "perl", the program name after the #! is executed instead of the Perl interpreter. This is slightly bizarre, but it helps people on machines that don't do #!because they can tell a program that their SHELL is /usr/bin/perl, and Perl will then dispatch the program to the correct interpreter for them. < 1263161593 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :o.O < 1263161603 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whoops, missed a space unwrapping that < 1263161608 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : If the #! line does not contain the word "perl", the program name after the #! is executed instead of the Perl interpreter. This is slightly bizarre, but it helps people on machines that don't do #! because they can tell a program that their SHELL is /usr/bin/perl, and Perl will then dispatch the program to the correct interpreter for them. < 1263161617 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I like the "Hey, we added this so perl helps you do stuff, even if you don't code Perl that's okay, we're just here to help" < 1263161629 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"It was just a few lines of code and we like you guys, so, you know." < 1263161637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Set us as your command interpreter and whatnot." < 1263161638 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :reminds me of DNA Maze < 1263161649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :version 2 ran the DOS equivalent of the UNIX command "reset" once it exited < 1263161656 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so I could use it to restore messed-up ttys < 1263161662 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1263161674 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1263161692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(it was used for other purposes too; I once replaced the entire DRM of a C compiler with DNA Maze) < 1263161695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://simulacrum.dorm.duke.edu/allyourgoogle.svg < 1263161704 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(stop playing the game, you can use your compiler now) < 1263161709 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :svg is awesome < 1263161712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I never thought I'd stare at a functional Google homepage. Rotating. < 1263161725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Very slow in Firefox, though. Let me try it in a WebKit browser. < 1263161732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: brilliant < 1263161744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: so you can set perl as a generic command interpreter on a system that doesn't do shebangs <-- wouldn't it make more sense to have a special purpose such program < 1263161756 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Perl's a special purpose everything program < 1263161765 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, because if it's the 90s you don't have that kind of bandwidth < 1263161781 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"swiss army chainsaw" < 1263161781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and if installing Perl helps you run Perlish stuff, which usually comes with shebangs, all the better < 1263161809 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :Perl is the antiunix < 1263161846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh < 1263161848 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :On one tool for one job: "Those days are dead and gone and the eulogy was delivered by Perl." —Rob Pike < 1263161863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it would be a 10-20 line C program anyway < 1263161874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You don't have a C compiler. < 1263161889 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, okay, the binary would still be tiny < 1263161895 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you probably have cc, given the time period in question < 1263161899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But it's not such a huge big deal, it's just a nicety. < 1263161904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Why bother to seek out such a program? < 1263161905 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1263161918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :perl programs traditionally do the reverse, too < 1263161923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that quote by Rob Pike seems to be a good summary < 1263161924 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they're written as a perl/sh polyglot < 1263161933 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, they are? < 1263161934 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so that systems that don't do #! re-invoke it under perl if it's run by sh by mistake < 1263161935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how and why < 1263161948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like this: < 1263161950 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :okay that answers why, how < 1263161951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1263161951 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :eval 'exec perl -wS $0 ${1+"$@"}' < 1263161952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/perl < 1263161955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if $running_under_some_shell < 1263161959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ooh, synchronicity < 1263161967 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I added the first line for you to append to < 1263161970 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except I missed the seimcolon < 1263161976 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :; < 1263161977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fixed < 1263161979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, my first line came before yours, rather runing the effect at my end < 1263161980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is out of order < 1263161985 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bah < 1263161990 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/perl < 1263161993 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :eval 'exec perl -wS $0 ${1+"$@"}' < 1263161997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if $running_under_some_shell; < 1263162002 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there we go < 1263162009 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263162013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fun < 1263162018 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although, you'd want the -wS in the first line too, if you were using those options < 1263162029 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why -wS? < 1263162031 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sh has significant whitespace, so it never even looks at the third line < 1263162035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: in the example in the manual < 1263162043 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could omit it, but -w is rather recommended < 1263162051 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, and yes I know sh well enough to know newline ends command < 1263162055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess the shebang should be #!/usr/bin/perl -wS < 1263162060 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ooh, ridiculous Perl feature idea: < 1263162061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in Perl it doesn't, so it sees an if that fails < 1263162065 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and doesn't run the line before < 1263162071 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and eval is a valid Perl statement, so it parses < 1263162076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it looks for any line starting with "exec perl" before any other non-comment lines < 1263162078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and ignores it < 1263162079 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, undefined variable is false? < 1263162084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except, wait, no < 1263162087 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, or an error if use strict; is in use < 1263162092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it looks for any line starting with "exec perl" before any other non-comment lines < 1263162096 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so for a strict program, it would be < 1263162099 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/perl -wS < 1263162106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, why the eval? < 1263162107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and interprets all of the following arguments starting with - as arguments to Perl < 1263162109 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so < 1263162111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/perl < 1263162111 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :eval 'exec perl -wS $0 ${1+"$@"}' < 1263162113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :exec perl -wS < 1263162119 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if $::running_under_some_shell; < 1263162120 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1263162123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :exec perl -wS "$@" < 1263162127 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :would be like #!/usr/bin/perl -wS, except working on non-shebang machines < 1263162129 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: to hide the shellcode inside from Perl < 1263162132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: horrible and brilliant, methinks < 1263162136 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes < 1263162139 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no it should be ${1+"$@"} most likely < 1263162144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to deal with old shells < 1263162171 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, perl sees what's effectively eval 'stuff in quotes' if 0; < 1263162175 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and doesn't run the command at all < 1263162244 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, right < 1263162256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, couldn't that eval mess up things though < 1263162262 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, because it /never runs/ < 1263162270 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, *for the shell* < 1263162278 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, because the shell just evals what's inside it < 1263162284 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what if you pass some shell code as an argument. It looks improperly quoted < 1263162293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's properly quoted, it's in single quotes < 1263162303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which just like in shells, don't need quoting of anything but ' inside them < 1263162308 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh hm < 1263162311 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can put literal anything but ' inside singlequotes, I think < 1263162311 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :read it as "" < 1263162313 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well oaky < 1263162314 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :okay* < 1263162317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :possibly even literal NUL, although I'm less sure of that < 1263162324 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it can fail if $0 contains spaces < 1263162328 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not the val < 1263162330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eval* < 1263162334 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the code after < 1263162349 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ooh, well noticed, report it as a bug to the Perl people < 1263162349 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, as for literal NUL, those will cause bash at least to end the string there < 1263162357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as they are null terminated internally < 1263162363 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, but there aren't any so it's irrelevant to this discussion < 1263162366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, oh? wouldn't this differ between shell scripts < 1263162375 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1263162377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :perl scripts < 1263162381 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it is up to each perl script < 1263162391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, or is it from some manual page of perl? < 1263162391 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, but they could fix the example in the manual < 1263162400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed. where is the bug tracker? < 1263162401 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a2p does this: < 1263162405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/perl < 1263162406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' < 1263162408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : if $running_under_some_shell; < 1263162410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : # this emulates #! processing on NIH machines. < 1263162411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : # (remove #! line above if indigestible) < 1263162422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have no idea what "indigestible" means. < 1263162426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I have < 1263162428 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: unable to be eaten < 1263162428 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :you can't eat it < 1263162432 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1263162435 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I KNOW THAT < 1263162436 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so, it means the #! causes an error < 1263162445 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whereas it's a shebang to most shells, and a comment to most others < 1263162446 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes, as in shell or system can't handle #! < 1263162449 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ofc, all this is no use on windows < 1263162450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe # isn't a comment < 1263162463 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :digest < 1263162465 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :digestible < 1263162467 0 :soupdragon!unknown@unknown.invalid PRIVMSG #esoteric :indigestible < 1263162468 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm, someone write a perl / DOS batch file polyglot < 1263162482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay. < 1263162483 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where the batch file runs the perl < 1263162484 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, does perl use a mailing list or a bug tracker? < 1263162489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: they use rt < 1263162494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, rt? < 1263162495 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: mailing list is perl5-porters, but it has a bug tracker too < 1263162517 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, which manual page is it from? < 1263162521 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://rt.perl.org/perlbug/ < 1263162524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it's on "perlrun" < 1263162549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: is FOO = x; valid Perl? < 1263162557 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wth is up with the login < 1263162562 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no, there's no sigil < 1263162573 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: bitcard does the accounts for all the perl stuff < 1263162580 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, whatever that is < 1263162595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: an account. < 1263162596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's the accounts thing for Perl and CPAN < 1263162602 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ok, let me rephrase < 1263162611 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what can I put after FOO to make it a valid perl nop? < 1263162618 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess FOO; works, but eh < 1263162624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOO if 0; too < 1263162636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, bitcard certainly seems trustworthy: "You have requested an encrypted page that contains some unencrypted information. Information that you see or enter on this page could easily be read by a third party." < 1263162643 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hm, as long as FOO is purely alphanumeric and starts with a letter < 1263162647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does %0 work for "this program" in DOS? < 1263162649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: isn't that IE's warning message? < 1263162650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: tons of pages do that < 1263162654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, firefox < 1263162655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: stop whining < 1263162661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's not like perl have some password-stealing conspiracy < 1263162668 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I know one no other login pages doing that < 1263162672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or registration ones < 1263162676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wikipedia's did for ages < 1263162678 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Nobody gives a fuck < 1263162680 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I do know of pages once you are logged in < 1263162686 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, s/nobody/ehird/ < 1263162687 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the point is, the bit you enter the password in is encrypted < 1263162693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, I don't give a fuck. < 1263162696 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err, doesn't* < 1263162698 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so unless you're really scared of someone trying to MITM-interface-spoof you... < 1263162699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well < 1263162706 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :point is you shouldn't speak for everyone < 1263162709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't care, ais523 doesn't care, and you're the only person anal enough to care. < 1263162722 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I care to the extent that sort of message is actually a security risk < 1263162726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I know ais523 doesn't care because he's explaining why it isn't a problem to you. < 1263162729 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is, not very much < 1263162741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so does %0 work in batch files as "this program"? < 1263162743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION prepares mailinator < 1263162752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ... < 1263162761 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Perl: Spammer extraordinaires < 1263162766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I'm not sure, but I wouldn't be surprised if it didn't < 1263162771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure Larry Wall is too Christian to spam you < 1263162774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, are email addresses public < 1263162783 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: can you use them in strings? < 1263162786 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as on bugzilla < 1263162791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: They're mangled, I believe. < 1263162793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :foo AT bar DOT org < 1263162795 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or whatever < 1263162797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it interpolates fine, I think < 1263162804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, won't help much < 1263162806 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the issue is more getting things to not interpolate, in DOS < 1263162821 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are quoting rules but they make no sense and I can't remember them < 1263162852 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM ; if (0) { < 1263162854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl "%0" < 1263162855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM ; } < 1263162857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :print "Hello, world!\n"; < 1263162858 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tada. < 1263162874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now to make it work with a shebang and for shebangless systems. < 1263162884 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm... < 1263162891 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I think the perl "%0" might fail there in Perl < 1263162899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it's in an if (0) < 1263162914 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to Perl, it looks like this: < 1263162915 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM; < 1263162917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if (0) { < 1263162919 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :String found where operator expected at t.pl line 2, near "perl "%0"" < 1263162920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : perl "%0" REM; < 1263162921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :} < 1263162925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Huh. < 1263162927 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :qsort((int[]){5, 50, 1, 0}, 4, sizeof(int), lambda(int, (const void *x, const void *y), *x < *y?-1:*x > *y?1:0)); < 1263162930 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Whooo. < 1263162931 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :followed by a missing semicolon error < 1263162931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env perl will just try to execute the program #!/usr/bin/env with argument perl in batch, right? < 1263162937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it's parsing perl as "perl" < 1263162942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Now make it work with typeof, bitch. < 1263162945 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you get "perl" "%0" REM < 1263162946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Ah. < 1263162947 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which makes no sense < 1263162947 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Easy to fix. < 1263162963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :%{ is a string in perl, right? < 1263162964 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or a list < 1263162971 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, it's a dereferencing operator < 1263162975 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :%q{ then < 1263162976 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :for hash references < 1263162977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to } < 1263162983 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM ; %q{ < 1263162985 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl "%0" < 1263162986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, that's a slice of the hash called q < 1263162986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM %} < 1263162993 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: lambda((x, y), void *x; void *y;, *x < *y?-1:*x>*y?1:0) < 1263162996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :try without the % sign < 1263163000 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :REM ; q{ < 1263163004 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :REM } < 1263163007 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that works I think < 1263163008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM ; q{ < 1263163010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl "%0" < 1263163011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :REM } < 1263163021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: #!/usr/bin/env perl executes the program #!/usr/bin/env in batch, right? < 1263163026 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I think so < 1263163029 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: NO :| < 1263163041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(is #! a legal DOS directory name?) < 1263163045 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Only way for it to work with more than 1 argument that I can think of. < 1263163048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Well, it'll error out anyway. < 1263163056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does x || y work in batch? < 1263163059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or do I need to do something else < 1263163062 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :haha, you must be kidding < 1263163067 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :first, you run a test command < 1263163071 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then you use "if errorlevel" < 1263163074 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's much nicer to just write the return type. < 1263163075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah :P < 1263163078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: BAH < 1263163084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, forget shebangs, I'll just make it work in sh-doing systems < 1263163087 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And... C-like. < 1263163088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although, wait no < 1263163092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that breaks if you don't run it from a shell < 1263163098 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, as C-like as *lambda* can be. < 1263163114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: @echo off disables echoing future lines before executing them < 1263163125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: does that disable error messages too? < 1263163149 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gets an idea < 1263163153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does x;y work in batch? < 1263163185 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I don't think so < 1263163210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM ; q{ < 1263163211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@perl "%0" < 1263163213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :} < 1263163214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :print "Hello, world!\n"; < 1263163220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :↑ A silent version of my batch-perl-spawner. < 1263163252 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Huh. Nested functions aren't on the stack. < 1263163280 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Erm. Not necessarily. < 1263163283 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Though they might be. < 1263163288 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1263163296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What does perl -S do, anyway? < 1263163358 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1263163379 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :GCC *claims* that if you call them after the containing function exits, all hell breaks loose. < 1263163383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha, I'm loving this < 1263163387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this will be the best polyglot ever < 1263163404 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The assembly it outputs sticks the nested functions inside the text section. < 1263163407 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :With mangled names. < 1263163411 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, will you make it work for sh systems too? < 1263163428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Shebang, sh, batch and perl will all be handled. < 1263163442 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Batch might output an error before running the program, though. < 1263163449 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, something like < 1263163451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, okay that's impressive. Can't think of how you will handle #! in batch < 1263163453 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the DOS side of it seems to work (thanks, DOSbox!) < 1263163453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env perl < 1263163455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Command not found < 1263163457 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I'm not sure about the %0 < 1263163465 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It *seems* that if you simply don't refer to things in the outer function, you've got proper (but horribly inefficient) lambda. < 1263163478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Meh. < 1263163480 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: no, because the function is stored on the stack < 1263163484 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that one doesn't pass on arguments with batch < 1263163485 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no it isn't < 1263163487 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as far as I can see < 1263163491 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Not in the assembly I am looking at. < 1263163493 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh, right, just the trampoline < 1263163501 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what's the batch for "all my arguments"? < 1263163520 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ugh, %* I think < 1263163522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I'm not sure < 1263163544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1263163550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does eval "2+2", blah work in Perl? < 1263163557 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't have to work at runtime, actually, so I'm sure it does work < 1263163557 0 :soupdragon!unknown@unknown.invalid QUIT :"Leaving" < 1263163580 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not %* it seems < 1263163614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gah I can't find where to file a bug at that rt.perl.org thingy < 1263163633 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ok, I need your help: can you make "@REM 2>/dev/null" (without the quotes) valid Perl without sacrificing its sh semantics? < 1263163637 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ^ < 1263163653 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure either < 1263163687 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Here's how my GCC is pushing the address of a nested function: movl $comp_int.1972, %eax < 1263163696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: ah, must be optimising < 1263163700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well then, such a fucked up user interface, I'm not going to care < 1263163705 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it's not much of a lambda if you're referring to outside the function < 1263163705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it's for a greater good!!! < 1263163708 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I'm thinking < 1263163716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*it's for the greater good < 1263163716 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: -O0. < 1263163723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pity "null" isn't a legal regex modifier < 1263163729 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And passing it to qsort. < 1263163731 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah: < 1263163733 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-S < 1263163735 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :makes Perl use the PATH environment variable to search for the program (unless the name of the program contains directory separators). < 1263163747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: can you try echo %0 in dosbox for me to see if %0 works? < 1263163771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: ooh, wait < 1263163772 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :seems not, you get a literal %0 < 1263163776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM / 2>/dev/null < 1263163790 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about this: @REM = q= 2/dev/null #= < 1263163798 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that isn't valid perl < 1263163812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, but it's close < 1263163823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that breaks the sh semantics < 1263163831 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So, it's lambda, just not a closure. < 1263163834 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ perl -ce '@REM = q= 2/dev/null #=' < 1263163835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :-e syntax OK < 1263163835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it must run a command starting with @REM and do 2>/dev/null < 1263163844 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it does do that < 1263163848 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"2/dev/null" < 1263163849 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No, it doesn't. < 1263163849 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, forgot the > < 1263163855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is it valid with the >? < 1263163858 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ perl -ce '@REM = q= 2>/dev/null #=' < 1263163860 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :-e syntax OK < 1263163862 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yay. < 1263163865 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep, it's inside a string literal < 1263163873 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the entire statement is rather meaningless, but who cares < 1263163884 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't matter < 1263163886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1263163888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that breaks in sh < 1263163892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because of the trailing #= < 1263163896 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's a comment in sh < 1263163900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, ;#= is < 1263163902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it's #= < 1263163905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can put it on the next line if you prefer < 1263163909 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: anyway, not acceptable; I need to have || right after it < 1263163916 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No I can't, every line must start with @REM < 1263163921 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in fact, you can just put the = in an arbitrary place later in the program < 1263163922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, # is a comment even on same line isn't it? < 1263163927 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :@REM = q= 2>/dev/null < 1263163932 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :followed by an = somewhere much later < 1263163937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: well, okay < 1263163939 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just so long as there are no other = signs in-between < 1263163940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ echo foo #bar < 1263163940 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :foo < 1263163942 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ^ < 1263163953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that means I don't get to use my awesome hack though < 1263163958 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is? < 1263163962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eval 'exec perl blah;#', < 1263163967 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM if $running_under_some_shell; < 1263163975 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hahaha < 1263163985 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wouldn't the eval break under DOS? < 1263163988 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, have fun with newline conventions < 1263163991 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, because it's part of < 1263163998 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what does @REM mean to perl? < 1263164000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM 2>/dev/null || eval ... < 1263164005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the array called REM < 1263164005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: array variable REM < 1263164008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1263164019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or in perl5, to be precise, "these REM" < 1263164028 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because perl infers what sort of variable you mean from context < 1263164035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so it's "something containing multiple elements REM" < 1263164041 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which in the abstract, must mean the array < 1263164042 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: So, yeah. I've got a non-closure lambda. < 1263164062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, is that well defined behaviour? < 1263164062 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: http://sprunge.us/LRfW < 1263164066 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for gcc < 1263164072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if "%0" %* did what it should, this would work < 1263164081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as a batch file < 1263164093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it would output "#!/usr/bin/env perl" and then an error before running the program, however < 1263164094 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It's *contrary to the documentation* when returning one of these lambdas. < 1263164094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, I think the semantics of % are different inside and out, just for fun < 1263164098 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :batch files are evil < 1263164101 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :In sh, it should work perfectly < 1263164105 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :But it works perfectly according to the generated code. < 1263164107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :In perl, it should work perfectly < 1263164117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, well then, bad idea, depending on platform < 1263164119 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Conclusion: I am a genius as soon as we can get "%0" and %* working. < 1263164131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, iirc trampolines are messier on RISC in general < 1263164131 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: The documentation claims it's on the stack. < 1263164140 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, it might be < 1263164142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ooh, it can be made shorter < 1263164148 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, if a trampoline is generated < 1263164151 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can combine the two qs < 1263164160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, a trampoline is on the stack. It may be that none is required < 1263164162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :get rid of lines 3 and 4, and change line 6 to =; < 1263164164 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: When would one be generated? < 1263164174 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION would like to try to force on. < 1263164176 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env perl < 1263164176 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :s/on/one/ < 1263164177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM =q= 2>/dev/null||exec /usr/bin/env perl -S $0 ${1+"$@"} < 1263164179 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM =;q{ < 1263164180 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@perl -S "%0" %* < 1263164182 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :} < 1263164183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yep < 1263164186 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, either when it is needed, or always. I would suspect it may vary between versions < 1263164187 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1263164188 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you're right < 1263164190 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you do not need to change the q delimeter from = to { < 1263164196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, so when you need a closure I believe < 1263164203 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It certainly isn't "always"... < 1263164207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env perl < 1263164208 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, try using some variable from outside it < 1263164208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@REM =q= 2>/dev/null||exec /usr/bin/env perl -S $0 ${1+"$@"} < 1263164210 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :@perl -S "%0" %* < 1263164211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric := < 1263164213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Beautiful < 1263164215 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I picked = as it has no special meaning to the shell, but's a legal delimiter for q < 1263164218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, that isn't a compile time constant < 1263164219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Problems to solve: - "%0" %* - Shebang not erroring < 1263164220 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yes, is beautiful < 1263164222 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as in, it can't be optimised away < 1263164228 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: K. < 1263164231 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you need an @exit after that @perl line, though < 1263164244 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Other systems can't control that, and need a totally devious construct that will work under any of csh, sh, or Perl, such as the following: < 1263164246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : 1. eval '(exit $?0)' && eval 'exec perl -wS $0 ${1+"$@"}' < 1263164247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : 2. & eval 'exec /usr/bin/perl -wS $0 $argv:q' < 1263164249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : 3. if $running_under_some_shell; < 1263164250 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :what are you two trying to do? provide a line that perl ignores but batch causes to be executed in perl? < 1263164250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: csh, eh? < 1263164251 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does s/1/argc/ in his test. < 1263164252 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, also, note that it might work differently on different targets. Like ARM, x86. x86-64, SPARC, PCC < 1263164253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :PPC* < 1263164259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :coppro: my current script will execute on: < 1263164261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :coppro: write a perl/sh/bat polyglot that runs the perl program < 1263164267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: also with a shebang! < 1263164269 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Ahah. < 1263164270 0 :coppro!unknown@unknown.invalid PRIVMSG #esoteric :ACTION cries < 1263164273 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :test.c:17: warning: generating trampoline in object (requires executable stack) < 1263164278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: also, add csh to that list < 1263164282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want to make it work in csh too < 1263164286 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay csh < 1263164290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :YAY CSH < 1263164313 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this will end in beautiful, beautiful tears < 1263164324 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So, it would appear that it is in the text segment if it doesn't close. < 1263164389 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are there any other notable shells? < 1263164424 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : $ perl -mysw 'f$env("procedure")' 'p1' 'p2' 'p3' 'p4' 'p5' 'p6' 'p7' 'p8' ! < 1263164425 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : $ exit++ + ++$status != 0 and $exit = $status = undef; < 1263164435 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :^ perlrun's syntax on how to do the same thing under the VMS shell < 1263164435 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what the fuck < 1263164442 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh god < 1263164457 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, remember OS/1 < 1263164457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl/bat/sh/csh/vms/shebang polyglot < 1263164459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1263164459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I want to die now < 1263164459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :OS/2 < 1263164462 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's OS/2 too < 1263164466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, I'd prefer to forget it < 1263164471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :perl/bat/sh/csh/vms/os2/shebang polyglot < 1263164473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION weeps < 1263164476 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it must be doable, surely < 1263164479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if a little hard to test < 1263164484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It must be doable, unfortuantely. < 1263164488 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*unfortunately < 1263164503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what is your current one < 1263164512 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :C is a language with first-class functions that aren't closures. >:D < 1263164522 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : This incantation is a bit much to remember, but Perl will display it for you if you say "perl "-V:startperl"". < 1263164529 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: no, it has first-class function pointers < 1263164530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: My current one is what I sprunged plus ais523's modifications < 1263164534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the functions themselves are second-class < 1263164534 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I closed Emacs to kill the beast. < 1263164556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Go has both first-class functions AND first-class function pointers. < 1263164558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Take that. < 1263164564 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: But, but lambda(int, (int x, int y), x*y) ! < 1263164564 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :$ perl "-V:startperl" < 1263164565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :startperl='#!/usr/bin/perl'; < 1263164568 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, what happened when using trampoline? < 1263164576 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :boring < 1263164582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I lost track of it < 1263164587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ask ais523 < 1263164592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he can do the mods to my latest version < 1263164595 0 :ais523!unknown@unknown.invalid QUIT :"I need to go home" < 1263164596 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CAN'T HE AIS523 < 1263164598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1263164601 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Oh, it works just fine so long as the lambda is only used when the defining function is on the stack. < 1263164614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm? < 1263164620 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :GCC also warns you when it generates a trampoline. < 1263164627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well okay < 1263164727 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :A closure, hence, can easily be implemented in C: struct closure {void *function; void *free_variables} < 1263164785 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, wtf? < 1263164791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bash is executing .bashrc but not .bash_profile < 1263164792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, don't forget MPW and MacPerl < 1263164797 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shall soon be writing some bloody crazy C code. < 1263164818 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, see man bash. I end up sourcing files are required from each other -_- < 1263164834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, short story bash_profile is for login shells < 1263164838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bashrc for normal ones < 1263164850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :suggestion: source .bashrc from .bash_profile < 1263164879 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :further suggestion: if your distro doesn't do this, read man page to figure out how files in /etc/ are handled < 1263164897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, the relevant section is INVOCATION < 1263164910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but I can't make bashrc include profile because profile includes bashrc < 1263164910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: But I want profile to be loaded < 1263164910 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when just bashrc would normally be < 1263164912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My distro has . ~/.bashrc in .profile and no .bash_profile < 1263164951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, interactive shell? < 1263164984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : When bash is invoked as an interactive login shell, or as a non-interactive shell with the --login option, it first reads and executes com‐ < 1263164984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : mands from the file /etc/profile, if that file exists. After reading that file, it looks for ~/.bash_profile, ~/.bash_login, and ~/.pro‐ < 1263164984 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : file, in that order, and reads and executes commands from the first one that exists and is readable. < 1263164994 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll just set up all the files so they all do . ~/.profile < 1263164994 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and have everything in there < 1263164995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and < 1263164997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : When an interactive shell that is not a login shell is started, bash reads and executes commands from ~/.bashrc, if that file exists. This < 1263164997 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : may be inhibited by using the --norc option. < 1263165010 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I have all mine read ~/.bashrc instead < 1263165052 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah, because bash is the only thing that could read ~/.profile. < 1263165081 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also it behaves differently if invoked as bash or as sh < 1263165095 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no, but I have bash specific code in ~/.bashrc < 1263165101 0 :FireFly!unknown@unknown.invalid QUIT :"Leaving" < 1263165116 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, let me rephrase my question < 1263165135 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :where should I put environment variables that are applicable outside of shells but should be defined in both login and non-login interactive shells? < 1263165182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, depends on how the distro is set up for sourcing other files < 1263165192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and you *will* need to source some file for it < 1263165220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway, if it is exported, that should solve it < 1263165241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when you run startx, the env variables will be inherited I believe < 1263165257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ehird@meson:~$ egrep '(bashrc|bash_profile|profile)' .bashrc .profile < 1263165258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.bashrc:# ~/.bashrc: executed by bash(1) for non-login shells. < 1263165260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.bashrc:# this, if it's already enabled in /etc/bash.bashrc and /etc/profile < 1263165261 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.bashrc:# sources /etc/bash.bashrc). < 1263165263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile:# ~/.profile: executed by the command interpreter for login shells. < 1263165264 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile:# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login < 1263165266 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile:# the default umask is set in /etc/profile; for setting the umask < 1263165267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile: # include .bashrc if it exists < 1263165269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile: if [ -f "$HOME/.bashrc" ]; then < 1263165270 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.profile: . "$HOME/.bashrc" < 1263165272 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if Debian even thought about how to set it up nicely. < 1263165281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it loads bashrc < 1263165282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yeah, I'm just gonna kill X :-P < 1263165287 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263165287 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm? < 1263165292 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1263165341 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263165343 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :do you even use startx? Not GDM/KDM or such? < 1263165347 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also, night < 1263165349 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I use KDM, yeah. < 1263165351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: wait, < 1263165352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :→ < 1263165354 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe I should just put them in bashrc < 1263165357 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if profile loads bashrc < 1263165369 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :possibly. Night →→→ < 1263165448 0 :ehird!unknown@unknown.invalid QUIT :Remote closed the connection < 1263165489 0 :ehird!n=ehird@91.104.236.31 JOIN :#esoteric < 1263165686 0 :jix!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263166722 0 :bsmntbombdood_!n=gavin@174-16-206-237.hlrn.qwest.net JOIN :#esoteric < 1263166886 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :test.c:8: error: void value not ignored as it ought to be < 1263166889 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :FFFUUUU. < 1263166896 0 :augur!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1263166934 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :if you look into the void, the void looks back into you < 1263166974 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I am never using a void value that I can find... < 1263167001 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Unfortunately, GCC's line numbers are monumentally unuseful when it comes to macros. < 1263167098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :run cpp on it :P < 1263167127 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Not helpful at all. < 1263167137 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Did you know that CPP omits newlines? < 1263167312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1263167464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Behold: Go has both first-class functions and first-class function pointers. And they are both closures. http://sprunge.us/KHOM < 1263167477 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Well, I have a somewhat unwieldy C closure definition. < 1263167488 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Don't you wish you were programming in Go now? < 1263167489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1263167491 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(return type must be a pointer.) < 1263167515 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(oh, and you need to be explicit about what you're closing. *Really* explicit.) < 1263167537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :S'ok, PHP 6 requires that too XD < 1263167547 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Oi. Drool over http://sprunge.us/KHOM. < 1263167571 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That is spiffy. < 1263167675 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://sprunge.us/UViC < 1263167684 0 :bsmntbombdood!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1263167691 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It's a painful fib function! < 1263167725 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :http://sprunge.us/DUSj lambda.h < 1263167750 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I can see the C commitee accepting that as a standard heater for C11. < 1263167764 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But you'll have to rename it stdlam.h, and rename lambda to _LAMBDA. < 1263167769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(It would be _Lambda, but it's a macro.) < 1263167771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No wait. < 1263167772 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Is that a compliment or an insult? :P < 1263167776 0 :bsmntbombdood__!n=gavin@174-16-223-138.hlrn.qwest.net JOIN :#esoteric < 1263167777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :isalpha is a macro too < 1263167779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, _Lambda < 1263167795 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And closure would have to become _Closure, but stdlam.h can do #define closure _Closure. < 1263167816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :call would have to become _Call, and it would be a macro. < 1263167822 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wait, it is a macro. < 1263167823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whatever. < 1263167854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Make one that actually closes over something. < 1263167876 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: The example I pasted is closing over the fib closure. < 1263167903 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyone know how to set an alarm with kde? < 1263167924 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I could, of course, make its closing a bit more substantial. Un momento. < 1263167957 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Close over multiple variables in separate locations. < 1263167959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll wait here. < 1263167978 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :A suggested (simple) example?