< 1204848012 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'series of jpg images' is actually a video format < 1204848015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can't remember its name < 1204848027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ihope_: H.264 is where it's at < 1204848132 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric :So if I have one image displaying for half an hour... < 1204848299 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The brk and sbrk functions are historical curiosities left over from ear- < 1204848299 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : lier days before the advent of virtual memory management. < 1204848301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SHUT UP OS X MANPAGES < 1204848325 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204848328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: where is kigforth < 1204848824 0 :atsampson!n=ats@7hw.poik.net JOIN :#esoteric < 1204848890 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :so i have this MPEG file < 1204848892 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's porn < 1204848921 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it was made by catting several smaller clips together < 1204848951 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :now, some players (MPlayer) play all of it, and some (Quicktime) stop after the first clip < 1204848996 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i wonder if the mpeg standard is under-specified, or if mplayer is just really smart < 1204849062 0 :Corun!unknown@unknown.invalid PRIVMSG #esoteric :That's what I'm normally wondering while watching catted together porn. < 1204849078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lament: mplayer smartness < 1204849081 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric :lament: yes. < 1204849082 0 :slereah__!n=slereah@ANantes-252-1-13-240.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1204849095 0 :ihope_!unknown@unknown.invalid PRIVMSG #esoteric :Which, I suppose, means "both". < 1204849156 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :>:| < 1204849175 0 :slereah_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204849285 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1204851239 0 :Sgeo!n=Anonymou@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1204852246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmmm < 1204852252 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the eso-std.org pastebin will be up sometime < 1204852280 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Is it ESO approved? < 1204852294 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but of course. < 1204852303 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately; pygments doesn't haev that many esolang highlighters right now < 1204852305 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it has Brainfuck, though. < 1204852310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Still, writing 'em will be trivial. < 1204852332 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :What is there to highlight in BF apart from brackets? < 1204852622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :slereah__: grouping < 1204852627 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :<> and +- and ,. < 1204852637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :those groups should be highlighted differently but the same between chars < 1204852639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :< and > the same < 1204852643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :+ and - the same, but different from <> < 1204852654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :slereah__: Name the pastebin's code. :P < 1204852791 0 :Judofyr!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204852800 0 :Judofyr!n=Judofyr@cE699BF51.dhcp.bluecom.no JOIN :#esoteric < 1204852816 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Pastebin. 9000. < 1204852816 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Well, I have no idea. < 1204852816 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Wouldn't highlighting the +- and all result in a terrible eyesore? < 1204852816 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Oh, grouping. < 1204852816 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Why ., then? < 1204852821 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :It's a legitimate pice of code! < 1204852860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... < 1204852863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Highlight +- < 1204852866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as the same < 1204852868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Same with <> < 1204852869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1204852879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I.e. groups of instructions that are inverses or whatever, should highlight the same < 1204852883 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523's emacs mode does that < 1204852895 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Then I reiterate my remark : wouldn't that be a terrible eyesore? < 1204852936 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Like a gay alphabet soup < 1204852960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1204852963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's quite nice in ais523's mode < 1204852979 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Pixplz? < 1204852984 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Noes, lazy. < 1204853054 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Any other highlighter project in mind? < 1204853100 0 :ihope__!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1204853103 0 :ihope__!unknown@unknown.invalid NICK :ihope < 1204853161 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to make esolangs stats < 1204853170 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :number of symbols/commands < 1204853188 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :The "command" thing is a little fuzzy for some though. < 1204853335 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :... < 1204853338 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Holy shit. < 1204853343 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :I have no attention span < 1204853542 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :It is kind of a shame that we don't have attention spans. < 1204853557 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I have a wonderful idea for a program but don't have the attention span to write it. < 1204853623 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :I usually wait for some period of activity where I can actually hold on to a project for a few weeks! < 1204853666 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :That's pretty much how the Love Machine 9000 and Lazy Bird got written. And why everything since is in limbo. < 1204853671 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Some period of activity? < 1204853683 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :You know, motivation and focus! < 1204853699 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Are you currently schooling? < 1204853714 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Yes. Although it has little to do with it. < 1204853730 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :It's mostly motivation. < 1204854047 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :ACTION nods < 1204854060 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I blame all my lack of motivation to write programs and such on school. :-P < 1204854105 0 :ihope_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204854197 0 :slereah_!n=slereah@ANantes-252-1-13-240.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1204854198 0 :slereah__!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204854651 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :I want to give 10,000 creatures each a 10-kilobyte brain and see what emerges. < 1204854678 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Mudkips. < 1204855038 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Interesting. < 1204855067 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Quite. < 1204855116 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Well, I'll be gone, sir, and anon sir, and quoting Shakespeare again when I return. < 1204855120 0 :ihope!unknown@unknown.invalid PRIVMSG #esoteric :Adieu. < 1204855136 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Bai < 1204855202 0 :ihope__!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1204855457 0 :slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Is there a definition for a command? < 1204855641 0 :pikhq_!unknown@unknown.invalid NICK :pikhq < 1204856252 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204856430 0 :slereah__!n=slereah@ANantes-252-1-13-240.w82-126.abo.wanadoo.fr JOIN :#esoteric < 1204856430 0 :slereah_!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204856456 0 :calamari!n=calamari@ip24-255-58-177.tc.ph.cox.net JOIN :#esoteric < 1204856913 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1204860559 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :ihope__: so i herd u liek mudkips < 1204861084 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :GregorR, pikhq ihope__ slereah__: Should I remove directory manipulation, i.e. only allow removal of individual files at a time? < 1204861090 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :And copying moving etc.? < 1204861151 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Are you going to use it? < 1204861154 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird? < 1204861174 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :slereah__, hm? < 1204861227 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Because boy will you be disappointed if you toil at it only to never use it: < 1204861378 0 :ihope__!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204861760 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :" I blame all my lack of motivation to write programs and such on school. :-P" <<< i did too, until i got half a year basically off school, and my productivity crashed totally < 1204861766 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :also, he's not here < 1204861778 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Oh you. < 1204861811 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah, me :) < 1204861860 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i only implemented ints and lists to oklotalk, but while having to take a break from writing it i've realized it already lets you do pretty complicated abstractions < 1204861882 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :But... < 1204861886 0 :ehird!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1204861886 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :What is Oklotalk! < 1204861896 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :you can extend numbers with new operations and you can make new types with the old ones, and new ones... currently you cannot do both though :P < 1204861901 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :It's been six months and I still don't know! : < 1204861919 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that will require explicit second-order coding < 1204861926 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :which is kind of a lame term < 1204861941 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :slereah__: my grandest language atm < 1204861948 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :also my oldest language < 1204861959 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that much I know. < 1204861963 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :But what is inside! < 1204861968 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :What is the underlying concept! < 1204861981 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it's very... ugly. < 1204861997 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it's kinda like python, but even less restricted < 1204862018 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :syntax is 100% robust in that everything parses < 1204862068 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it's functional, although given it has both dynamic and static typing you can just make a while function and write iterative code without knowing it's done with recursion < 1204862075 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*scoping < 1204862094 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :'kay < 1204862097 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :dynamic *typing* simply sounds more natural, i always confuse the terms :) < 1204862148 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :like I = 5; while ´{ I < 10 } ´{ I <- I + 1 } < 1204862172 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :"´"'s are ncessary, because functions are assumed to be funcokens otherwise < 1204862189 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Funcokens? < 1204862192 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :a funcoken is a token parsed as an operation, kinda < 1204862209 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Phew. I had gay porn on my mind. < 1204862213 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :so you can do 4 {_ * __ - 2} 5 to get 4*5-2 < 1204862266 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Why the double underscore in the middle? < 1204862269 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :"__" as an implicit binary operand marked isn't done yet, so you'd have to do 4 {A B->A*B-2} 5, but anyway < 1204862275 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it means ropd < 1204862278 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :right operand < 1204862281 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :_ is left operand < 1204862289 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :...in case both are used, that is < 1204862300 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :if you don't use __ in the body, both will be in _ :D < 1204862319 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :so... parsing needs infinite lookahead < 1204862333 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i consider this a positive thing < 1204862357 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well... you don't have to do that at parsing < 1204862382 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i haven't done it yet, so i don't even know the exact semantics with more complicated functions < 1204862391 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1204862398 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Is it inspired by anything in particular? < 1204862405 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmm... wonder if i should make functions objokens by default... < 1204862415 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oklotalk? i guess by K < 1204862431 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :although i don't exactly know much about K < 1204862458 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the name looks like smalltalk, but when i decided on the name, i had no idea what smalltalk was < 1204862471 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Holy hell, K is ugly. < 1204862477 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Looks like an esolang! < 1204862485 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it's fairly curious smalltalk may be the language oklotalk has most in common with. < 1204862493 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders why everyone learns K instead of J :S < 1204862508 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: It's superior. < 1204862511 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :One letter above. < 1204862512 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: it's one more? < 1204862515 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1204862521 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :I like J a lot more < 1204862555 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :nothing says a joke is trivial more than two guys saying it simultaneously < 1204862587 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204862649 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :god i'm an idiot, went to see this guy to pick up my religion assignments he'd done for me... forgot my power cord and half of the assignments at his place, and he's not coming home for ages :) < 1204862662 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :whhell, as they say, cheating is self-beating! < 1204862680 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh, right, they don't. < 1204862701 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i had a dream i was running in the hallway of my house and ircing via the buttons of the elevator < 1204862716 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :What, you were senging it in binary? < 1204862749 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :no, the wall had the whole alphabet < 1204862761 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :not qwerty, pretty random < 1204862770 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :there was no screen, i saw the text in my head < 1204862794 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :this dream involved me drinking 3 liters of chocolate milk < 1204862798 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :DVORAK? < 1204862800 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :no < 1204862805 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well < 1204862808 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i don't know dvorak < 1204862814 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :so, maybe dvorak. < 1204862822 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Well, you know 6 letters of it already! < 1204862830 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :',.ppyfgfgcrgrcl < 1204862832 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :aoeuueididhtdhtn < 1204862833 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :;qjkjkxbkxbmmxbw < 1204862842 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: gesundheit < 1204862867 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :this is roughly the layout :P < 1204862872 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the problem with oklotalk parsing is, even though everything parses, most things are pretty uninteresting < 1204862895 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :faxathisia: baning at it at random? < 1204862898 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*banging < 1204862925 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :',.pyfgcrl aoeuidhtn qjkxbmwv <-- without duplicates < 1204862996 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204863005 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i like the idea of left-had only okoing < 1204863014 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :scscscscscscscscscscscscs < 1204863023 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well < 1204863028 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i guess there's efefefefefefe < 1204863037 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but i never got into that really < 1204863121 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :perhaps i should continue my cise interp instead of watching friends < 1204863459 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :orange juice, i want that < 1204863724 0 :Judofyr!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204867568 0 :calamari!unknown@unknown.invalid QUIT :"Leaving" < 1204869500 0 :lifthras1ir!unknown@unknown.invalid QUIT :brown.freenode.net irc.freenode.net < 1204869513 0 :Sgeo!unknown@unknown.invalid QUIT :Remote closed the connection < 1204869525 0 :lifthras1ir!n=lifthras@haje8.kaist.ac.kr JOIN :#esoteric < 1204870682 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :my keyboard feels sticky and disgusting :( < 1204870689 0 :Tritonio_!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204870726 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :but it's really. really pretty. < 1204871216 0 :cmeme!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204871387 0 :cmeme!n=cmeme@boa.b9.com JOIN :#esoteric < 1204872066 0 :Judofyr!n=Judofyr@cE699BF51.dhcp.bluecom.no JOIN :#esoteric < 1204872341 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :lament: pix < 1204872364 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :http://z3.ca/~lament/keyboard.html < 1204872391 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :8| < 1204872397 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :du bist schnell < 1204872446 0 :faxathisia!unknown@unknown.invalid PRIVMSG #esoteric :wow nice < 1204872458 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmph, i'm still loading < 1204872532 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :asdf i want a keyboard where keys aren't in that stupid formation < 1204872586 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it seems i'm the only one in this world who wants their character part of the keyboard to be symmetric < 1204872596 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean? < 1204872598 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :this is fairly weird, since not many have asymmetric hands < 1204872615 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the character part of the keyboard == the left part < 1204872620 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :where the characters are < 1204872625 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's mostly symmetric < 1204872639 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the uppermost line < 1204872648 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :is wrong < 1204872658 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it should be a bit to the right or a bit to the left < 1204872672 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i think the keyboard should just be split into two halves < 1204872674 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :every time i press a button on it, i die a bit inside, it's simply wrong. < 1204872682 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :since each button is only assigned one hand < 1204872690 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it makes no sense to keep the two parts together < 1204872713 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(well, you need to have two space buttons... big deal) < 1204872714 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :true, but that's something i can live with < 1204872722 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :such keyboards do exist < 1204872730 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :you mean, your kind? < 1204872734 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that i now < 1204872735 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :konw < 1204872737 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :know < 1204872763 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but are there any keyboards out there where the lines of the keys aren't... retarded? < 1204872779 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i have a hard time finding a term for that < 1204872780 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oh, nice, it's not even very expensive: < 1204872781 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :misaligned < 1204872781 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :http://www.kinesis-ergo.com/freestyle.htm < 1204872808 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :you see those in shops all the time < 1204872876 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmm... perhaps i could buy that projective keyboard and wribble it into giving me a sensible keyboard setting < 1204872889 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that would be double cool < 1204873182 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmph, if only oses would provide a basic set of objects for programs to use, for instance playlists would readily be unionizable without any effort < 1204873208 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well, i guess vlc supports that anyway, but i have no idea how < 1204873220 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :prolly just by opening the playlist < 1204874499 0 :Judofyr!unknown@unknown.invalid QUIT : < 1204876799 0 :clog!unknown@unknown.invalid QUIT :ended < 1204876800 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1204877382 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1204877822 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1204877913 0 :olsner!n=salparot@cust.fiber-lan.vnet.lk.85.194.50.194.stunet.se JOIN :#esoteric < 1204877939 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1204880172 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1204881400 0 :faxathisia!unknown@unknown.invalid QUIT :"-" < 1204885650 0 :oerjan!unknown@unknown.invalid QUIT :"Bus-y" < 1204886619 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Direct-threaded code is Fail for portability. You cannot portably compile DTC at run-time: each Forth word will be a list of function calls. But with my indirect-threaded code, each Forth word is a list of word addresses; more portably compilable. < 1204887152 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :lament: nise kb < 1204887154 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*nice < 1204889835 0 :tejeez!unknown@unknown.invalid QUIT :Read error: 145 (Connection timed out) < 1204890162 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ooh, cool stuff: http://www.lambdacs.com/debugger/debugger.html < 1204890196 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the more you play with it, the more amazing it gets < 1204891507 0 :Tritonio_!n=Tritonio@150.140.227.161 JOIN :#esoteric < 1204892762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: fix yur bzrweb ??? < 1204893969 0 :tejeez!n=tejeez@dsl-lhtgw1-fe7adf00-87.dhcp.inet.fi JOIN :#esoteric < 1204896057 0 :ihope__!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1204896059 0 :ihope__!unknown@unknown.invalid NICK :ihope < 1204896208 0 :jix!n=jix@dyndsl-091-096-046-251.ewe-ip-backbone.de JOIN :#esoteric < 1204897354 0 :ihope__!n=ihope@c-71-205-100-59.hsd1.mi.comcast.net JOIN :#esoteric < 1204897602 0 :Tritonio_!unknown@unknown.invalid QUIT :Remote closed the connection < 1204898375 0 :ihope!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204898775 0 :RedDak!n=dak@79.3.89.65 JOIN :#esoteric < 1204900728 0 :BMeph!n=chatzill@wsip-70-167-169-169.sd.sd.cox.net JOIN :#esoteric < 1204900896 0 :RodgerTheGreat!unknown@unknown.invalid QUIT : < 1204902484 0 :Corun!n=Corun@halls-129-31-72-183.hor.ic.ac.uk JOIN :#esoteric < 1204903764 0 :ais523!n=ais523@147.188.254.202 JOIN :#esoteric < 1204904029 0 :ihope__!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204906424 0 :Sgeo!n=Anonymou@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1204906470 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :LAST STORY IN FINE STRUCTURE RELEASED WOOHOO! http://qntm.org/?structure < 1204906540 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: ? < 1204906611 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :what's ? about it? < 1204906784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the sentence doesn't make a whole lot of sense, and I don't like clicking on random hyperlinks < 1204906789 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm optimizing befunge is near impossible < 1204906801 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that was deliberate in the design of befunge < 1204906811 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which was designed to keep out compilers, and optimisers by extension < 1204906817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in brainfuck an interpreter/compiler could just merge several + for example, in befunge that isn't possible < 1204906842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the k instruction of funge98 *can* be optimized sometimes, but that is about all < 1204906848 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1204906854 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed < 1204906901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :possibly you could do some JIT optimization, like say, pre-compile paths or something < 1204906933 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Fine Structure is basically a connected collection of fiction stories by Sam Hughes < 1204906987 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :damn, here i thought there were news about the variability of the fine structure constant < 1204907002 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, same < 1204907059 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's fascinating - a subatomic, dimensionless constant that apparently may have _changed_ over the lifetime of the universe < 1204907061 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, actually, several things in funge98 can be optimized, but almost none in befunge93 < 1204907079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: also, which happens to be ridiculously close to an integer < 1204907090 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(in fact 1/an integer, but it's dimensionless so it could just as easily be the other way up) < 1204907141 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hm... it seems to have drifted away from the 137.00 value that was announced previously < 1204907148 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably due to more accurate measurements < 1204907158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for example, on the ; instruction, store the position of the matching ; for next time you hit it, or k, for example you can optimize 2kv to just change direction once < 1204907241 0 :ehird!n=ehird@91.105.80.233 JOIN :#esoteric < 1204907251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I know that, but what exactly is it, I just know it is some constant that you can measure in a way that won't be affected by instruments (ie, you can't check if an atom got larger, because the atoms in the instrument you use to check would also have grown) < 1204907268 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION was wrong, it wasn't the last installment < 1204907273 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hi < 1204907285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: fix yur bzrweb <--- what is wrong with it? < 1204907288 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it works fine here? < 1204907290 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Fine-structure_constant < 1204907300 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, thanks < 1204907331 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :WIYF (& G T) < 1204907331 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"WIFY"? < 1204907347 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Wikipedia Is Your Friend < 1204907378 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, except, when the articles goes over my head *looks for Swedish interwiki or simple English*, like it often does in cases of physics < 1204907409 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://pastebin.ca/932238 < 1204907419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION sighs at the usual "stub" status of the Swedish pages < 1204907422 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(you asked me how Underlambda was getting on, that's the most recent draft spec) < 1204907426 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(but it isn't finished yet) < 1204907454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm? why not use latex for writing the draft? < 1204907466 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because those are just the notes I made < 1204907474 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION uses the gui "frontend" lyx for anything such < 1204907481 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the actual specification is likely to be in something more suitable < 1204907493 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but flat text files are good for jotting things down in < 1204907502 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I find lyx is very useful, and lets me avoid headache from pure latex < 1204907517 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I'm developing a reference interp which pretty much just implements the rewrite rules literally) < 1204907534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :However, the language is designed so that it can be compiled, or implemented much more efficiently. < 1204907557 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :It's just that the rewrite rules turned out to be a good way to write the spec in an unambiguous way < 1204907578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the definition of C, for instance, is very complicated when written out in words referring to stacks < 1204907583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, on jotting down I agree, but my draft for a befunge08 (basically 2D funge98 with some details to make it possible to implement in, say, bash, in a sane way, though my long term goal is extending to full 2D funge98) now at 10 pages, I use lyx for it < 1204907620 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : the definition of C, for instance, is very complicated when written out in words referring to stacks <-- hah indeed *has read large parts of C99 standard* < 1204907657 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, on your specs, "#! /usr/bin/underlambda" must it be that exact line? < 1204907661 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was referring to C the Underlambda command, not the language, but I've read much of the C89 and 99 draft standards too < 1204907663 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes < 1204907664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what if the binary is somewhere else? < 1204907668 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like in /usr/local/bin < 1204907671 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :symlink < 1204907683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the string is more for identification of the language < 1204907691 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I suggest it should be allowed to be: #!/usr/bin/env underlambda < 1204907703 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there are also various subtle things, such as # can be used as a quote symbol for an m4 interpreter < 1204907716 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... maybe #!/dev/env/underlambda < 1204907730 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that is the way I do for bash, because on for example, freebsd, all non-basesystem binaries are installed to /usr/local/* < 1204907755 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I don't like forcing symbols into people's environments < 1204907760 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and really, underlambda, or any esoteric language interpreter/compiler, does hardly belong in a base system of any OS < 1204907766 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there should be a /dev/which, really < 1204907776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, heh? no system got that < 1204907785 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that does what the which command does < 1204907790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/bin/env is standard, I think POSIX < 1204907791 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so /dev/which/sh = /bin/sh < 1204907798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so that means, /usr/bin/env bash < 1204907804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :will find bash if it is in the path < 1204907826 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :looking at env's man page, that looks like a bit of a hack < 1204907830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it is the generic portable way for when your interpreter may be in a different place < 1204907865 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION checks my BusyBox/ash root < 1204907868 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it seems to work there too < 1204907885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for example < 1204907887 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ls /usr/bin/python* /usr/local/bin/python < 1204907888 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ls: /usr/bin/python*: No such file or directory < 1204907888 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/local/bin/python < 1204907893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so maybe /usr/bin/env would work < 1204907894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on freebsd < 1204907903 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(I'm still open to suggestions) < 1204907913 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the important part is the #! / at the start, anywway < 1204907916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :s/ww/w/ < 1204907919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on gentoo linux: < 1204907920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :$ ls /usr/bin/python /usr/local/bin/python* < 1204907920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ls: cannot access /usr/local/bin/python*: No such file or directory < 1204907920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :/usr/bin/python < 1204907932 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you mean that space? hm ok < 1204907970 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(it's needed for portability, because there's some OS (forgotten which one) which looks for magic 32-bit words at the start of files to determine their file type) < 1204907982 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and it uses #! / as the magic word for executable text files) < 1204907992 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204908001 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, never heard of such a OS < 1204908008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suspect it's an old one < 1204908013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :tell me if you remember the name of it < 1204908071 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :The /usr/bin/underlambda was anyway just my guess at what should go there; I'm not very good with #! strings < 1204908132 0 :jix!unknown@unknown.invalid QUIT :"CommandQ" < 1204908527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well what is wrong with my bzrweb? it works here < 1204908554 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for portability, using env is likely the best way :/ < 1204908560 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1204908568 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :on modern systems, it should be available < 1204908571 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is it in POSIX? < 1204908592 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, not sure about that, but I think it may be < 1204908609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :STANDARDS < 1204908610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : The env utility conforms to IEEE Std 1003.1-2001 (``POSIX.1''). The -P, < 1204908610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : -S and -v options are non-standard FreeBSD extensions which may not be < 1204908610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : available on other operating systems. < 1204908622 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION checks on his gentoo system as well < 1204908646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm just the usual "see info page", sigh < 1204908660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(*bsd got way better man pages than linux) < 1204908750 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what do you think of the rest of the spec? < 1204908761 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(it isn't nearly finished yet, there should be a lot more, containing more advanced commands) < 1204908804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, was away eating so haven't had time to look < 1204908810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :OK < 1204908864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, tell me a summary what is special with this language please < 1204908876 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's designed as an update to Underload < 1204908886 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Tier 1 is sufficient to be TC < 1204908891 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :underload was one you never finished? or? < 1204908892 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and tier 2 for Brainfuck-completeness < 1204908896 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underload was finished < 1204908904 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but wasn't very usable for practical programming < 1204908910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :seeing as it was an output-only tarpit < 1204908934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok, what was special for underload then? < 1204908934 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underlambda is 'purer' in some sense; it's a concatenative programming language where all data are functions < 1204908942 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underload is basically a concatenative tarpit < 1204908950 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the same way that Brainfuck is an imperative tarpit < 1204908959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and Unlambda is a functional tarpit < 1204908979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok (you know, most of us in this channel, including myself, got very odd minds, or we wouldn't do this kind of stuff!) < 1204908997 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks that concatenative languages are very neat < 1204909002 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Unlambda isn't really a tarpit. it has bells and whistles. odd ones, but... < 1204909004 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I can't say, I'm familiar with the concatenative languages thing < 1204909015 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is their speciality? < 1204909021 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :basically, all commands are functions which take a stack as an argument and output another stack < 1204909035 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and concatenating two commands leads to another command which is the composition of their functions < 1204909045 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :manipulating code as data is normal, and the usual way to write loops < 1204909058 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(in fact the only flow control command in Underload is 'eval', written as ^) < 1204909076 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah, multi-stack based language? and self modifying? < 1204909098 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :one stack in Underload < 1204909103 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and not exactly self-modifying < 1204909110 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's more like Muriel; you construct new program on the fly < 1204909113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah, you said functions take stacks and return stacks? < 1204909118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204909119 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but with just one stack? < 1204909125 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you apply the entire program to an empty stack < 1204909130 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because the entire program is just a function < 1204909133 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sounds like unefunge98, with a single stack, stripped of most commands? < 1204909133 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and it returns a stack < 1204909144 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can use it like that < 1204909151 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except the flow control is completely different < 1204909161 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can put all sorts of data on the stack < 1204909175 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok, flow control is one of the major things that make funges to what they are < 1204909176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(such as bits of your program) < 1204909237 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as an example, an infinite loop in Underload is (:^):^ < 1204909249 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(:^) pushes the code :^ on the stack < 1204909259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :: copies that, so there are two copies of :^ on the stack < 1204909276 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and ^ executes the top stack element, leaving :^ as the program and :^ on the stack < 1204909282 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(and everything repeats from there) < 1204909293 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway, making the #! /usr/bin/env underlambda to the fixed string would be as bad, because what if someone else made another interpreter for the language, he/she couldn't use same name, and if you want to use a specific interpreter, you would have to run it like: nameofotherinterpreter sourcefile.whatever < 1204909311 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you would do it like that anyway < 1204909317 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... maybe I should simply just insist on the #! < 1204909319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm? < 1204909334 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you would normally run a program under an interpreter by writing the interpreter's filename < 1204909334 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, actually "#! /" should be ok < 1204909340 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204909350 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and you can write #! /bin/false if you don't want the program to be executable < 1204909368 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(one of my favourite Perl cheat quines: #!/bin/cat) < 1204909398 0 :slereah__!unknown@unknown.invalid PRIVMSG #esoteric :Hello people folks. < 1204909399 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, you would? you know, likely quite a few shell scripts exists in your /usr/bin, you are not likely to run them with the interpreter's name in front < 1204909403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hello slereah__ < 1204909411 0 :slereah__!unknown@unknown.invalid NICK :Slereah < 1204909416 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, but I generally prefix gcc to C programs < 1204909423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and likewise the name of a BF interp to BF programs < 1204909438 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Underlambda is expressly designed to be compilable < 1204909459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, for example, do you do bash /bin/gunzip? or just gunzip? < 1204909465 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(Underlambda tier 1 -> GolfScript is possible by simple text substitution, for instance) < 1204909472 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on my system it is a short shell script, calling gzip with some parameters < 1204909497 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :same here, actually < 1204909525 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but what I'm saying is that although shell scripts and other scripts are normally run through the #! line, programs in non-scripting languages normally aren't < 1204909533 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :especially on Windows... < 1204909538 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :windows, bah < 1204909547 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, but I want the language to be portable < 1204909569 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think python on windows installs some registry entry to make sure if you double click a *.py, it will run under python < 1204909574 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204909575 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is possible I know < 1204909578 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :based on the file extension < 1204909583 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's actually quite easy < 1204909595 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION used Windows for several years (and DOS before that), but uses Linux nowadays < 1204909613 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway, by forcing a specific #!* line, you restrict portability in fact < 1204909641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to me a portable program is one that works without problems on multiple systems without changing the source code < 1204909655 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a specific #! line is more portable, because at least it can be picked up by commands like file(1) < 1204909657 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, ah, I went from Mac OS 7 -> redhat linux 5.0 (or 6.0? not sure) < 1204909689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then slackware due to rpm hell, then suse, debian and quite a few other distros < 1204909697 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Idea : A negative reinforcment language. < 1204909702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but say if I write #! /home/ais523/blah/blah/blah/underlambda at the top of my script < 1204909707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and finally settled on gentoo and freebsd < 1204909710 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :If there's a syntax error, it deletes your hard drive :o < 1204909719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : to me a portable program is one that works without problems on multiple systems without changing the source code < 1204909719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1204909736 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then it might run on my system if I change the directory structure, but probably not yours < 1204909747 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : a specific #! line is more portable, because at least it can be picked up by commands like file(1) <--- file tells me a file starting with #!/bin/env bash is a bash script here < 1204909753 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :rerr < 1204909754 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err* < 1204909757 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*/usr/bin < 1204909762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yay for *not copy pasting* < 1204909764 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::/ < 1204909786 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : If there's a syntax error, it deletes your hard drive :o <-- you mean deathstation 9000? < 1204909801 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Sure, why not < 1204909805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Slereah, (if you don't know it, a joke about all the "the result is undefined" in C standard) < 1204909835 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :t.t: a underlambda script text executable < 1204909848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(actual output of file(1) when run on #! /usr/bin/env underlambda) < 1204909858 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :A hostile language < 1204909882 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed, file is quite smart. < 1204909896 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw, what is the correct file ending for a befunge93 program? and what about befunge98? < 1204909898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :except it sometimes identifies C files as Pascal < 1204909910 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: .bf and .b93 according to the specs < 1204909928 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is why I'm annoyed when people use .bf for Brainfuck < 1204909928 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm, .bf sounds like brainfuck to me < 1204909935 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it should be .b < 1204909943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204909953 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what about befunge98 then? < 1204909962 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :.b98 < 1204910181 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Ah, found the Gödel proof with modern notation. < 1204910191 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The original has the horrible PM notation. < 1204910257 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :pm? < 1204910267 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Principia Mathematica. < 1204910276 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204910290 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Fact : Bertrand Russel hated parenthesis < 1204910299 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :He didn't even like Polish notation! < 1204910312 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :He used some sort of horrible dot based notation. < 1204910459 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Although the Godel paper spare me the dots. < 1204910460 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204910463 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :sounds awesome < 1204910475 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i don't exactly like the standard math notation < 1204910485 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: http://membres.lycos.fr/bewulf/Russell/2.56.jpg < 1204910493 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :(Yes, that's why that folder is named Russell) < 1204910512 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Proof written in both Russell and modern notation. < 1204910527 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i'd like something like polish notation, but so that you could optionally have function arguments on top of each other < 1204910531 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :At least the first line. < 1204910536 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :kinda like you do with standard division notation < 1204910541 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i cannot open that < 1204910550 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :something wrong with my internets < 1204910557 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1204910611 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Well, if you want an example; < 1204910615 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :⊢ :: p ⊃ ~( ~q ) . ⊃ . p ⊃ q : ⊃ :. ~q ⊃ ~p . ⊃ . p ⊃ ~( ~q ) .: ⊃ : ~q ⊃ ~p . ⊃ . p ⊃ q < 1204910621 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :If the unicode displays. < 1204910626 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it does < 1204910629 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :go that's sexy < 1204910636 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*god < 1204910661 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :If you want to know the principle, it's in the PM. Maybe you'll understand it, unlike me! < 1204910678 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I can sort of read it, but I don't think I can actually write big things in it. < 1204910744 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i don't feel like guessing syntax without having no idea about semantics :P < 1204910755 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i'm assuming the u's are what they are in math ? < 1204910768 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :"is super-/subset of" < 1204910773 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1204910775 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1204910777 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :just superset < 1204910780 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It's the old notation for "imply" < 1204910781 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and okay < 1204910784 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1204910789 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that was my second guess < 1204910792 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :seen that somewhere < 1204910799 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Translation is ⊢ ( ( p → ~( ~q ) ) → ( p → q ) ) → ( ( ( ~q → ~p ) → ( p → ~( ~q ) ) ) → ( ( ~q → ~p ) → ( p → q ) ) ) < 1204910807 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :actually guessed that after realizing there were no C's < 1204910831 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :The dots serve to separate statements. < 1204910844 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :could someone link me the funge-98 spec? < 1204910873 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i cannot access pages, so i need the link so i can ask a guy to send it to me via dcc :P < 1204910880 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://quadium.net/funge/spec98.html < 1204910890 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :thnks < 1204910905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I actually think that's a mirror, but it seems to have the right data on < 1204910910 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*thanks < 1204910936 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that's the massive spec even ehird was scared of? < 1204911049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION isn't scared of it < 1204911053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but ehird was for some reason < 1204911083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :vacj < 1204911085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :back < 1204911091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :whoa < 1204911094 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i missed a LOT < 1204911164 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :if ehird doesn't consider something trivial, it must have some complexity. < 1204911169 0 :RedDak!unknown@unknown.invalid QUIT :Remote closed the connection < 1204911194 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: /usr/bin/env is highly common < 1204911205 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll use that, then < 1204911225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: bzrweb -- yours wont;' show the file contentes < 1204911236 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was more interested in forcing a particular magic string, than what that string actually was < 1204911248 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :i.e. I want all progams to use the same string but don't care what it is < 1204911331 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[17:06] * ais523 used Windows for several years (and DOS before that), but uses Linux nowadays < 1204911334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you used windows like yesterday < 1204911336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1204911346 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i remember saying that GNU/Windows was the most awful idea i've heard < 1204911364 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I still use Windows for some things, such as checking emails with my real work on my laptop < 1204911390 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :generally use SunOS when I don't have my laptop (accessed via Exceed on Windows) < 1204911401 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :GNU/Windows was what I used at home before I got this laptop < 1204911413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SunOS, hee :) < 1204911436 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :CDE/SunOS, to be precise < 1204911443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm a mac luser but i suck because my first mac was intel < 1204911445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was this one < 1204911447 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but at least it gives me a POSIX shell I can type commands into... < 1204911452 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and stupidly I didn't upgrade the ram from the base 1gig < 1204911454 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1204911462 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i can upgrade that on the cheap anyway, at least < 1204911485 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :works much better than my old, crusty computer though ... that thing was ready to die like 5 years ago < 1204911531 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could try to save it by putting some lightweight version of Linux on it < 1204911545 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has been working on a Linux system with 64MB memory and 16MB disk space recently < 1204911558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: the hardware is mostly mutually compatible < 1204911559 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Busybox/Linux, not GNU/Linux < 1204911573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the base system came from when i was a young'un.. < 1204911581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i didn't really know how to not break a computer then < 1204911670 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: anyway, the eso-std.org pastebin coding is underway < 1204911674 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... it seems that consistent-speed multithreading was implemented in both Funge-98 and FukYorBrane before it was added to INTERCAL < 1204911683 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: are you using an Emacs-based syntax highlighter? < 1204911690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: nope, something better ... < 1204911697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's written in python for about two reasons - the first, and most important, is the syntax highlighter -- Pygments < 1204911703 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it supports, like, 200 languages out of the box < 1204911706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :even Brainfuck, by default < 1204911715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and its lexer-thingy framework is very flexible < 1204911719 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://pygments.org < 1204911732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how does it handle Perl? < 1204911741 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's really hard to syntax-highlight < 1204911750 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what's that 'unparsable perl' snippet again? < 1204911752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the regexp + # thing < 1204911756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'll try it on pygments < 1204911771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :probably it fails somehow, but generally you shouldn't complain ;) < 1204911794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: look at the language dropdown < 1204911794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's huge < 1204911797 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :from memory, maybeunarymaybebinary /1*0; #/; < 1204911817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, that should be 'maybenullarymaybeunary' < 1204911832 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah it's this < 1204911832 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :whatever / 25 ; # / ; die "this dies!"; < 1204911847 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :same principle < 1204911863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: http://pygments.org/demo/636/ < 1204911876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, it fails, but fails in the same way that the eye would scan it < 1204911895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which.. isn't too bad, I'd say < 1204911992 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://pygments.org/demo/637/ < 1204911992 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :kate beats it on that < 1204911994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: bzrweb -- yours wont;' show the file contentes *looks* < 1204912014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah indeed < 1204912017 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :will fix later < 1204912055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :now I got a funge98 question, the standard doesn't mention the issue, and mycology doesn't test it. what should happen on this code (entering from left, going right): < 1204912067 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :04-k# < 1204912082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think thats undefined < 1204912102 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok, (at least C standard says things are undefined, sigh) < 1204912111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :2008?02?02 < 1204912112 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The behaviour of 1k # is now considered UNDEF. < 1204912117 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: from mycology web page < 1204912122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think that's isomorphic?? < 1204912126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err no < 1204912129 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1204912132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then contact Deewiant < 1204912137 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my question is for negative iterations < 1204912139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :memoserv might help. < 1204912145 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hmm < 1204912147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :jump bcakwards? < 1204912170 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what should happen when the iteration count is negative for k, in general, for #, jump backwards may be a good idea < 1204912175 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but what about other ones? < 1204912182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like +? or a number < 1204912183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I am sorry, I have no idea. < 1204912186 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ask Deewiant. :-) < 1204912189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm ok < 1204912202 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :when is he/she on irc normally? and in this channel? < 1204912218 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Used to be quite often. < 1204912225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[17:50] -NickServ- Nickname: Deewiant << ONLINE >> < 1204912225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[17:50] -NickServ- Registered: 1 year 9 weeks 4 days (5h 30m 22s) ago < 1204912231 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well whaddya know -- he's online now. < 1204912242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :In #haskell, no less. < 1204912245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am tempted to /invite him :-) < 1204912250 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :To put the real answer on the record. < 1204912255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aww. < 1204912257 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Who's Deewiant? < 1204912258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can only invite if you're an op?! < 1204912259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Lame. < 1204912263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Mycology & CCBI author. < 1204912274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And, therefore, Befunge-98 guru. < 1204912293 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Am I a PSOX guru? < 1204912303 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :* [Deewiant] is away (Sauna.) < 1204912316 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll /msg him for when he gets back, I guess. < 1204912382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I sent a /msg to him < 1204912873 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION smells a finn < 1204912911 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :KILL WITH FIRE < 1204912913 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :KILL KILL < 1204912930 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, another one < 1204912933 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :(i actually mean POWER, but no one knows the reference anyway) < 1204912976 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :POWER WITH FIRE? interesting. < 1204912991 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :umm no, silly < 1204912995 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :KILL POWER FIRE < 1204913001 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204913006 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and then POWER KILL < 1204913008 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that makes sense < 1204913008 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :not < 1204913042 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... that makes even less sense than the average HOMESPRING program < 1204913049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but apart from the caps is visually similar < 1204913055 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204913065 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :KILL POWER FIRE < 1204913082 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :FIRE POWER KILL < 1204913101 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :KIRE FOWER PILL < 1204913147 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :PILL ROW FREE PK < 1204913228 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :this channel must be the second weirdest i ever encountered < 1204913229 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :FLOWER KIPPER POLE < 1204913236 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :o_O < 1204913240 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :CLOWER FLIPPER MOLE < 1204913243 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: Not even close! < 1204913247 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*CLOVER < 1204913254 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :*CLOWNER < 1204913263 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: well, unless you count temporary chanels < 1204913265 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :NOONE OWNS CL < 1204913267 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*chanelzorz < 1204913281 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :chanel 5? < 1204913290 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yeah, and 9. < 1204913309 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: which one was weirder? < 1204913324 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :not in this network < 1204913325 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(just out of interest, #esoteric seems relatively sane about half the time it's active) < 1204913364 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :sure, that's why it was #2 < 1204913374 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Esoteric is pretty sane if I compare it to some other chans. < 1204913384 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Plus, it is even serious most of the time! < 1204913394 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :in the other channel, you often see hours of okoing without no one talking anything else. < 1204913397 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*on < 1204913421 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :okoing? < 1204913423 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :assssssdf, cise is hell to implement < 1204913430 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh noes, we are not the mad enough < 1204913434 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ais523: okokokokokokokokoko < 1204913443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why would anyone do that? < 1204913453 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: er, are you the only person in it? :D < 1204913455 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well, why not. < 1204913477 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: no, we're actually a registered association :) < 1204913501 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :What, the ESO association? < 1204913503 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :association internacional de okoficacion < 1204913510 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204913521 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how goes tuberculosis? < 1204913526 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I wonder, are there any girls on esolang? < 1204913532 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I ever saw one. < 1204913538 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :there was this sukoshi chick < 1204913542 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :there were one or two < 1204913554 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :*CACK* *COUGH* *ACKFOO* *GWAPF* < 1204913555 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :they were about as fucked up as you would expect esolang girls to be < 1204913571 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*two*? < 1204913574 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204913583 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :actually, i think i remember another one < 1204913588 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the one i scared away < 1204913596 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :with the naked pics? < 1204913610 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i don't remember < 1204913651 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204913656 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :something about being a sexbot < 1204913659 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204913673 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i should dig up the logs < 1204913697 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :her nick was something like gamegirl, unless she turned out to be a guy in the end, don't remember < 1204913722 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :actually, i vaguely recall you, lament, saying it couldn't be a girl, because no girl would put "girl" on their nick < 1204913723 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :anyone with "girl" in the nick is a guy, isn't that well-known? < 1204913730 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :probably, all of this was just a dream. < 1204913732 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: vise-versa? < 1204913765 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :no, i definitely don't think everyone with "guy" in the nick is a girl. but i might be wrong. < 1204913773 0 :oklofok!unknown@unknown.invalid NICK :okloMAN < 1204913784 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :believable so far < 1204913788 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :now change it to oklogirl < 1204913793 0 :okloMAN!unknown@unknown.invalid PRIVMSG #esoteric :omg < 1204913795 0 :okloMAN!unknown@unknown.invalid PRIVMSG #esoteric :no way! < 1204913799 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :rofl < 1204913803 0 :okloMAN!unknown@unknown.invalid PRIVMSG #esoteric :okay, okay < 1204913807 0 :okloMAN!unknown@unknown.invalid NICK :okloHOTGIRL < 1204913812 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :HEY BABY < 1204913814 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :see? not believable at all :) < 1204913815 0 :okloHOTGIRL!unknown@unknown.invalid PRIVMSG #esoteric :i'm so gonna get banned from all the chans i'm on. < 1204913819 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204913823 0 :Deewiant!n=mniemenm@iruel.hut.fi JOIN :#esoteric < 1204913823 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204913828 0 :okloHOTGIRL!unknown@unknown.invalid PRIVMSG #esoteric :lez hope not. < 1204913829 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh, most girls that I know are girls on irc use gender neutral nicks < 1204913830 0 :okloHOTGIRL!unknown@unknown.invalid NICK :oklopol < 1204913834 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: starting with this one :P < 1204913841 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lament: nooooo :D < 1204913843 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hi, did you see the questions I asked in /msg < 1204913845 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that's true of men too < 1204913851 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: negative k is undefined by the spec < 1204913880 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: in my interpreter it reflects, in some it crashes or causes infinite loops :-) < 1204913880 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :never let your k become negative < 1204913898 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :talking about the k-means algo? < 1204913900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also in general, the instruction k execute, executes on the k, right? < 1204913901 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: if you're interested in what exactly happens across interpreters have a look at http://iki.fi/matti.niemenmaa/befunge/mycology-comparison.html < 1204913904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It's funny that it's taken him a few days to get close to what you did in over a year. :-) < 1204913912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Though, admittedly, he DID have Mycology &co. to test it on :p < 1204913923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so what would 2k'c do? < 1204913926 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: most of the time was spent in writing Mycology, not the interpreter :-) < 1204913933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :everything gets finished in a day, or in about a year < 1204913947 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :make that over a year < 1204913951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I have used mycology on my befunge interpreter (not complete yet, but the 93 part is complete) < 1204913959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hehe. Still, in *Bash*.. < 1204913965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, indeed < 1204913969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... Next up: Besed-98? :-) < 1204913979 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it's not 100% specified whether k executes on or off the k, personally I think it's on the k < 1204914006 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 2k'c is something that could do pretty much anything depending on how you want to think about it < 1204914017 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it's similar to the issue with nested k < 1204914032 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what would you recommend a interpreter to do in those cases? < 1204914044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Print out messages implying that it is a toaster. < 1204914052 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :i.e. if you need to execute something that moves whilst within a k, do they all execute from the k or only the first or none of them or what < 1204914058 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :a *hot* toaster < 1204914061 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sort of like the ask-the-user on division by 0? < 1204914067 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :It should output to the bell. < 1204914073 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Your computer has a bell output, no? < 1204914079 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hah < 1204914086 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I find the 98 specs are quite unclear over k really hm < 1204914096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: for(;;){printf("\7");fflush(stdout);} < 1204914100 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there was some correspondence between Jerome Quelin (author of Language::Befunge), Mark Glines (author of Befunge98 [the interpreter]) and myself about nested k which somewhat relates to these questions of yours < 1204914102 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(note that division by zero produces a result of zero in Funge-98, but Befunge-93 instead is supposed to ask the user what they want the result of the division to be) < 1204914106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Slereah: for(;;){printf("\7***TOASTING***\n");fflush(stdout);} < 1204914107 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Heh < 1204914119 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: and yes, they are. as they are on many other things. < 1204914153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You should write a Trefunge test-suite. < 1204914155 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :wait, did I say Mark Glines? err. I meant Lee Houghton. < 1204914163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or -- a program that algorithmically generates an N-dimensional test suite! < 1204914165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm maybe someone should make those issues clearer? (at least C standard says things are undefined ;) < 1204914173 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: sh'ya right :-D < 1204914189 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I suppose you could ask Chris Pressey about that if you're interested < 1204914191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: even an autotester < 1204914196 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure if he is, though ;-) < 1204914212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, errm who? < 1204914215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% ./Ncology -s 1 -e 100 -p Nfunge < 1204914229 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: guy who invented Befunge < 1204914237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :..........................FAILS on 64d: Quaridor fails to jeuros through-outen the vinn. < 1204914269 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: he comes by here every few months < 1204914271 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204914292 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :When was the last time! < 1204914303 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I probably would have implemented correct nested k -handling in my interpreter but it would have turned out to be too tricky so I got lazy :-) < 1204914316 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :probably along the same time as he last edited the wiki... lessee < 1204914319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so what does your interpreter do on nested k? I can't get the the gcc d compiler to compile on 64-bit so... < 1204914335 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :can I paste five lines on Befunge here? < 1204914338 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :s/on/of/ < 1204914358 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and if not, is there a pastebin you guys use or something < 1204914363 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and also what does it do on for 2k'c < 1204914377 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not sure, but I think it'd first push ' and then c < 1204914378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yes! pb.eso-std.org < 1204914379 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that would be Nov 13 < 1204914381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Note: May not be up yet) < 1204914385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For now, pastebin.ca :-) < 1204914390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, interesting, and what about 3k'c then? heh < 1204914393 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: :-) < 1204914408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, Firefox can't find the server at pb.eso-std.org. < 1204914409 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 3k'ca would push ', c, and then a. (I think.) < 1204914413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: GOSH REALLY < 1204914430 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah right, didn't read the "may not be up" line < 1204914443 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'm not 100% sure to be honest, since 2k# jumps twice from k I guess that's how ' would work < 1204914451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and if the line ends after the c? < 1204914544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Hey, you should write the Befunge-98 lexer for eso-std's pastebin. Pygments' is horribly b0rken. :P < 1204914561 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so, summary, these instructions are not allowed in k: ", ; and space (and don't reflect) these are allowed but behaviour is unclear: k ' and s. < 1204914563 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think Befunge-98 would be extremely hard to parse properly within pygments though < 1204914565 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is that correct? < 1204914576 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it'd push a space as is standard for acccessing outside bounds < 1204914613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: space and ; are somewhat unspecified/unclear as well, the spec says they're not to be executed but whether that means they're ignored or reflected on is up to you < 1204914625 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://pastebin.ca/932396 < 1204914677 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hmh, that code is misaligned for some reason < 1204914927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm, I'd give a warning and not reflect on nested k. As for nested ', I'd push the char after the ' the given number of times for k to iterate, then continue after the k'c (or whatever char) < 1204914948 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err not " nested ' " < 1204914951 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :so what about 2k# then < 1204914954 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :remove nested in that place < 1204914966 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :does it make sense to you that it jumps only once? < 1204914967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, for that mycology got a test, I would follow that test < 1204914974 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I wrote that test. :-P < 1204914983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, indeed I know that < 1204915020 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm just saying that you're going to have some special casing to do if you want them all to "feel logical" < 1204915028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :negative iterations on k, on *nix: reflect on windows: format c: < 1204915033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*runs* < 1204915057 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :i.e. 5k# jumps 5 times, but 5k'c pushes c 5 times <- one of those has to be a special case < 1204915060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I already special case k, as I do the "ip forward" bit at the end of the main loop. < 1204915085 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Windows will prompt the user for the volume label of the hard drive if you do that < 1204915087 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean that you're going to need separate cases depending on what instruction k is executing < 1204915092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as a check against accidentally formatting it < 1204915098 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, aww < 1204915112 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: and further, if windows is installed on C, it'll say that the volume is in use even if you say yes to the "are you sure" < 1204915128 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION didn't realise that Windows did a volume-in-use check in such cases < 1204915150 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: and you can't really write a separate case for every instruction especially if you plan on implementing (m)any fingerprints :-) < 1204915152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : I mean that you're going to need separate cases depending on what instruction k is executing <-- yep < 1204915181 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I plan a minimal befunge98 implementation as I do it in bash(!) < 1204915187 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks k should always reflect with a negative argument < 1204915191 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the way it's specified, I don't think there should be any special cases < 1204915196 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, yeah < 1204915209 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because there is no way to run a command a negative number of times < 1204915209 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: apart from the invalid instructions like "; < 1204915223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is why Underlambda only supports nonnegative integers in its stdlib < 1204915247 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, hm, I'm sure it would be possible in TURKY BOMB ;) < 1204915260 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(what with all their "half a bit wide" and such) < 1204915263 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(or to be precise tier 4, which acts like an arithmetic stdlib, and has a low tier number because most implementations will want to optimise it for performance) < 1204915284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there's no syntax to express it in TURKEY BOMB but it fits well into the spirit of the language ;) < 1204915295 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, exactly < 1204915296 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: implement the TRDS fingerprint, it's a nice one < 1204915338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I'm not even sure how to do fingerprints, currently my plan for the negative funge space thing is four arrays around the origin, one for each quadrant < 1204915356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :TRDS is the time travel fingerprint < 1204915376 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :really annoyed me, probably spent a month on that one alone < 1204915382 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that reminds me, the funge registry thing link at http://catseye.tc/projects/funge98/doc/funge98.html is broken < 1204915399 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and then the first test I run against RC/Funge leads to it crashing < 1204915399 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so where do I find out about such things < 1204915399 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yeah, it doesn't exist < 1204915400 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like what handprint I should use and such < 1204915413 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :although I think there's an archive of it somewhere, sec < 1204915424 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :currently I use the sum of the values of the ASCII chars in Bashfunge < 1204915427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://catseye.tc/projects/funge98/doc/old_index.html < 1204915464 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: my Mycology page links to all Befunge-98 interpreters I know of and has downloads for any that've fallen of the 'Net, too < 1204915466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and what about the finger print registry? < 1204915492 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and Mycology tests almost every fingerprint that has been implemented on any of said interpreters :-) < 1204915506 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and the Mycology readme refers to the two or three that it doesn't test < 1204915507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the registry doesn't appear to be on catseye.tc, at the moment < 1204915517 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I linked to it above < 1204915517 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm, and where do I find docs on the different fingerprints? < 1204915537 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: in the readmes of the interpreters that first implemented them, mostly < 1204915546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1204915575 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: RC/Funge-98, the jvh version of same, and then http://catseye.tc/projects/funge98/ < 1204915624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also, for y instruction, byte size, what should your return in, say, an interpreted languages that treat everything as strings (like bash do)? < 1204915639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or if you use bignums < 1204915648 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :eh < 1204915651 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I dunno :-P < 1204915672 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :maybe the amount of memory installed? :-) < 1204915691 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hmh, the specs are clear as usual < 1204915692 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :" Typically 4, could also be 2, 8, really really large, infinity, etc." < 1204915699 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I wonder how one would push infinity as an integer < 1204915730 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'd just push a really big number. < 1204915736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'd give special meanings to negative values returned from that y request, like -1 = BIGNUM/infinity -2 = Not applicable -3 = Implementation defined < 1204915759 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :-3? of course it's implementation defined, you're asking the implementation what it defines it as :-) < 1204915771 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :something like that would be nice but it's not in the spec. < 1204915775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ok "-3 = none of these" < 1204915784 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(say, quantum befunge)? < 1204915794 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: certain floating-point bitpatterns are defined to mean infinity < 1204915798 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I thought about writing an "unofficial spec" which would clarify everything but decided against it, there are already two standards < 1204915805 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's not very helpful for an interp which only uses integers < 1204915811 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes, but this is an integer we're talking about. < 1204915819 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so I'd do befunge08 < 1204915820 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"In Funge-98, stack and Funge-Space cells alike should be treated as signed integers of the same size. " < 1204915823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION fires up lyx < 1204915827 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it's defined as above < 1204915842 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :maybe we need a Funge-08 < 1204915856 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: we already have 3 standards only 1 of which is properly defined and only 1 of the latter 2 was ever really implemented properly :-) < 1204915871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, bashfunge does a workaround for that, it can't store \0 in a variable, so results with \0 are stored as the *string* NUL heh < 1204915892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :personally I think Funge-98 is interesting enough in itself, a new standard wouldn't be of much use to anyone < 1204915905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is a big Funge-98 fan too < 1204915905 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: gotta love bash :-) < 1204915906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, 98 is so unclear < 1204915918 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :only in corner cases, though < 1204915919 0 :Judofyr!n=Judofyr@cE699BF51.dhcp.bluecom.no JOIN :#esoteric < 1204915937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm speccing up Underlambda as a set of rewrite rules, with side effects specified in English < 1204915943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I doubt that that would help for Befunge, though < 1204915952 0 :timotiis!n=timotiis@jfkew.plus.com JOIN :#esoteric < 1204915958 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I think it should at least say "on blah the result is undefined" like the C standards do < 1204915969 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the trouble is that there are so many cases to consider < 1204915976 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :especially with the fingerprint mechanism < 1204915977 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: are you referring to Befunge or Underlambda? < 1204915979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not knowing if it is undefined, or somewhere else in the standard is a problem < 1204915987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I decided early on not to test separate fingerprints together < 1204915995 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well yes, I'd implement 0 fingerprints < 1204916000 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :the universe would end trying to put them together < 1204916018 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also a working registry is needed IMO < 1204916030 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: aye, but as originally specified you can have fingerprints, so when you think from the viewpoint of the spec-writer it's tricky to go through everything < 1204916070 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: the days of standardizing funge-98 are over, in the meanwhile we make do with what we have :-) < 1204916073 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what is the license of the 98 standard document itself? < 1204916084 0 :RedDak!n=dak@host65-89-dynamic.3-79-r.retail.telecomitalia.it JOIN :#esoteric < 1204916090 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: beats me < 1204916098 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: has a copyright at the bottom apparently < 1204916125 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, doesn't say if you are allowed to make changes to it or not < 1204916142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I doubt mr. pressey is that much of a jerk :-P < 1204916147 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :by default things like that are copyrighted all-rights-reserved, unless the author states otherwise < 1204916148 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION would be much happier with something like GFDL or even CC-by-sa < 1204916167 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: at the time, such things weren't as much an issue as today < 1204916168 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I suspect that you'd get permission if you asked for it, but I think you do have to ask to avoid breaking the law < 1204916177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, indeed < 1204916182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone know his email? < 1204916190 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it's on the web page < 1204916214 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe on the site, but not on the page < 1204916216 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is amused that cats-eye.com has been domain parked, and the domain parkers have put a picture of a dog at the top < 1204916275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, can't find the email? < 1204916314 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://catseye.tc/about/catseye.html < 1204916325 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204916393 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: hurray for the {{catseye}} template! < 1204916397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the snarkiest template on all wiki. < 1204916477 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION has to go, anyway < 1204916479 0 :ais523!unknown@unknown.invalid QUIT :"bye!" < 1204916922 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh no, he went. we are not observed any more. does that mean we cease to exist? < 1204916923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I sent a mail about it < 1204916962 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I hope he's not interested, I'd hate to have to rewrite more bits of Mycology ;-) < 1204916982 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, then I'd write a Funge08 standard from scratch < 1204916996 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: and I'd be happy to not implement it ;-) < 1204917060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I aim at making it compatible. The only thing I'd is clean up corner cases, and add a new instruction to be able to modify some rules at runtime (say, should we use befunge93 or funge98 style spaces?) < 1204917082 0 :otesanek!n=otesanek@217.195.209.77 JOIN :#esoteric < 1204917088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in bash at least, the latter is quite easy < 1204917104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I would just redefine the function that handles the " instructions on the fly < 1204917106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204917125 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :or just add a check in the handler < 1204917143 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yeah, but that is slower to execute ;) < 1204917153 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :yeah, I suppose < 1204917172 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, also I can't get your interpreter to compile, because I can't get gcc d compiler to compile < 1204917187 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :complain to the GDC folks :-) < 1204917194 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204917213 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :join #d and ask about it < 1204917223 0 :RedDak!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1204917269 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I've been thinking of making a linux binary but never got around to it < 1204917298 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, for what arch? < 1204917305 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :x86, it's all I've got < 1204917309 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I got x86_64 < 1204917318 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but I could run it in 32-bit mode then < 1204917423 0 :RedDak!n=dak@host65-89-dynamic.3-79-r.retail.telecomitalia.it JOIN :#esoteric < 1204917436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw does j wrap? also what about say a program consisting of this only: ff*j < 1204917443 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :everything wraps < 1204917459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :would that wrap a lot of times? < 1204917459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204917466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so when mycology tests s at -1,-1, where should result end up? < 1204917511 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hmm? it does 501-01-p or something, right, and expects to get 5 back when it does 01-01-g < 1204917531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err not s indeed < 1204917534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :g I meant < 1204917539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(late here) < 1204917563 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ok, so it shouldn't put a value in negative fungespace? < 1204917575 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :of course it should, that's what p is defined as doing :-) < 1204917590 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't actually test that by jumping to -1,-1 though < 1204917598 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :although it prolly should < 1204917673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm, I think we should have several possibilities for implementations here, allowing them to implement only some quadrants ;) just to make test suite writing as hard as writing implementations < 1204917692 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :no no, the spec is quite unambiguous on this one ;-) < 1204917711 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and trust me, writing the test suite was much harder than writing CCBI :-D < 1204917720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but adding stuff to y would break things "abusing" y to get a value from the existing stack < 1204917739 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ah, that doesn't work on most impls anyway < 1204917774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it doesn't on mine either, I push -27315 and print out "the coder is a jerk" < 1204917778 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hint: easy way of implementing Funge-Space is to use a hash table or equivalent, if your lang provides such < 1204917806 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, bash doesn't, I use an array that wraps every nth entry, so [n * y +x] < 1204917817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and when it needs to grow, it reallocates the entire thing < 1204917821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :time consuming I know < 1204917830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(at least it is a sparse array) < 1204917844 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bash only provides single dimension arrays < 1204917947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw, writing a test suite would be easier with less compact code, I wrote some tests for my interpreter, fewer tests than mycology but more lines in file < 1204917955 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not a lot on each line though < 1204917965 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :that's not the hard part < 1204917972 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :the problem is that you can't assume instructions work < 1204917976 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :or that's how I tried to do it < 1204917988 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :so that you get maximal info even if some instruction prior doesn't work at all < 1204918037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, oh and mycouser.b98 doesn't check y if unbuffered input is used < 1204918049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so it wants an extra enter after asking for a char < 1204918063 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :just hold down the button then :-) < 1204918064 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :my interpreter uses unbuffered input < 1204918086 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :mycouser can't really assume y works either, since it's befunge-93 as well < 1204918087 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well, shouldn't it check 1y for that flag ? < 1204918092 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah ok < 1204918093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1204918115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you could check if it is 93 or 98, like you do in the main test suite < 1204918116 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1204918126 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I couldn't be bothered < 1204918135 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I do do something though since it checks a few fingerprints < 1204918149 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1204918185 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also "cell size in bytes", what about a trinary funge? < 1204918197 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or in future, one using qbytes? < 1204918209 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :doesn't matter, it still stores a set amount of data in each cell? < 1204918219 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(or infinity) < 1204918237 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yep but funge98 says: "1 cell containing the number of bytes per cell (global env)." < 1204918241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that wants it in bytes < 1204918254 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it may not be bytes, or not whole bytes, and so on < 1204918256 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hey, even bytes is poorly defined < 1204918262 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :8-bit bytes? 24-bit bytes? < 1204918267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, aren't they always 8 bits? < 1204918268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: byte = 8-bit < 1204918271 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :no < 1204918272 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's the definition of 'byte' < 1204918276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/Byte < 1204918279 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I thought so too < 1204918281 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(It is not the definition of 'char' in C, however.) < 1204918291 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(But mostly 'char' is 8-bits in C.) < 1204918295 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(sizeof(char) == 1 in C, always, though.) < 1204918300 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"historically, bytes have ranged from five to twelve bits." < 1204918309 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204918310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's fskced < 1204918311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204918311 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Bytes of six, seven, or nine bits were used on some computers, for example within the 36-bit word of the PDP-10." < 1204918320 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"The UNIVAC 1100/2200 series computers (now Unisys) addressed in both 6-bit (Fieldata) and 9-bit (ASCII) modes within its 36-bit word." < 1204918324 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :etc. :-) < 1204918332 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so if char is 16 bits, then what would sizeof a type of less bits be? < 1204918343 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :there is no such type < 1204918352 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah, char must be smallest? < 1204918356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1204918377 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right, then that part of the standard needs to be cleaned up < 1204918391 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :are you making notes? :-) < 1204918406 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I am < 1204918473 0 :otesanek!unknown@unknown.invalid PART #esoteric :? < 1204918485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I would add some special negative values, one being "something else" or such, then a y request of, say, 21 would return if it is binary/trinary/and so on and if 21 returns -1 it would be "qbits", a value of 0 = none of these < 1204918489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :something like that < 1204918507 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :the thing is they have to be of use to the program < 1204918508 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :22 would then define the size of the cells in the unit of 21 < 1204918509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204918511 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :read funge-98 < 1204918516 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :was quite simple < 1204918519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I have < 1204918534 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :point is, it doesn't work for a trinary funge or such < 1204918564 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :if it uses qubits it still has to return some kind of meaningful value instead of just "some qubits" < 1204918573 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or where there is no byte size, say, language interpreter is coded in is treating everything as strings < 1204918579 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i read it, i meant < 1204918581 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, indeed < 1204918597 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so... funge-98 doesn't have n-funge? < 1204918603 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :sure it does < 1204918605 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, it does < 1204918613 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it introduced them :-P < 1204918613 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however, that is n dimensions < 1204918614 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, i missed that then :) < 1204918629 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it assumes binary < 1204918640 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :...binary? < 1204918649 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, as in "not trinary" < 1204918651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1204918655 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(fournary?) < 1204918659 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1204918659 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :quaternary < 1204918662 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204918669 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyway, where's n-dimensionality defined? < 1204918672 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in the spec < 1204918677 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :probably in a footnote at the bottom or something < 1204918678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :aside from trefunge < 1204918703 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Funge-98 is a class of three real and officially sanctioned programming languages (Unefunge, Befunge, and Trefunge) and provides a paradigm for describing any number of imaginary ones with different topologies and any number of dimensions." < 1204918712 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this was said in the beginning < 1204918717 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :there you go < 1204918720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, yes, "any number" indeed < 1204918723 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but i didn't actually see any standardization on that < 1204918730 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :there's not much to standardize < 1204918743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, however, what about 2+3i-funge (no idea how to implement) < 1204918752 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or 1.84-funge? < 1204918764 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: how would you define a nonintegral space :-) < 1204918774 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, go ahead by all means < 1204918775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, indeed, no idea < 1204918782 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, i guess x can, in theory, set any vector to be delta. < 1204918786 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :like it says under "Other Topologies" < 1204918797 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :where does it get the length of the vector? < 1204918801 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: "vector" is defined as "n numbers where n is the number of dimensions" < 1204918808 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, however, please see http://catseye.tc/projects/turkeyb/doc/turkeyb.html < 1204918811 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: so in befunge, it's always 2 numbers, in trefunge it's 3, etc. < 1204918823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, "Two thirds of a bit plus half a trit." < 1204918823 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :fractional spaces are fractals. may be hard to do with a minimum cell distance though < 1204918836 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: :-) < 1204918837 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :An RPC client library based on JSON (so loads of good language support) in 119 lines of Python, even including an HTTP proxy for it. Woot. < 1204918860 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :The x "Absolute Vector" instruction pops a vector off the stack, and sets the IP delta to that vector. < 1204918860 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :A vector on the stack is stored bottom-to-top, so that in Befunge, x (and all other vector-popping instructions) pops a value it calls dy, then pops a value it calls dx, then sets the delta to (dx, dy). < 1204918863 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I never understood how "fractional spaces are fractals" work < 1204918867 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is all that's said about x. < 1204918884 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, so it's just a preset amount of dimensions? < 1204918887 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: "http://catseye.tc/projects/turkeyb/doc/turkeyb.html < 1204918890 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :darn < 1204918890 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lol. < 1204918892 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: "a vector (set of co-ordinates)" < 1204918900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: TURKEY BOMB is odd yet. < 1204918901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*yes < 1204918901 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: " The origin is (0, 0) in Befunge, (0) in Unefunge, and (0, 0, 0) in Trefunge. " < 1204918909 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ehird is trying to make a turkey bomb interpreter btw < 1204918916 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: good for you :-) < 1204918924 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've always assumed funge-98 supported infinite dimensions < 1204918954 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, the size of a vector grows with one cell for each dimension < 1204918974 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: and that has what to do with what? < 1204918986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, that the standard does define it < 1204919007 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the standard doesn't say anything about infinite dimensions < 1204919008 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :vector on stack (top -> bottom) zxy in 3-funge < 1204919015 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there's a preset amount of dimensions < 1204919019 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there English fails < 1204919032 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you can add 3 more dimensions using Swedish < 1204919042 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, or finnish < 1204919043 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :öäåzyx < 1204919044 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: no, it has to be finite if it's to be Cartesian < 1204919047 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, indeed < 1204919053 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway I meant zyx above < 1204919056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not zxy < 1204919057 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: no < 1204919062 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it can be *extendable* < 1204919075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes but you could always add one :P < 1204919079 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in a lazy funge, it could actually be done with the current x instruction < 1204919087 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but laziness isn't defined either < 1204919089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, just store all as bignums < 1204919100 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that doesn't help. < 1204919102 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, tell me more what you mean with that? < 1204919112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :adding dimensions on demand? < 1204919132 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just that i could start moving into any dimension < 1204919145 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :how would that work < 1204919148 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :using x < 1204919153 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, indeed, but how would x know how big the vector should be? < 1204919164 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so that you' use 0"gnirts", for instance < 1204919166 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but you don't < 1204919173 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, ah sounds good < 1204919182 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however, a problem < 1204919188 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's how i've done it, made a befunge extension a few years ago < 1204919195 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :0 is a valid delta in a dimension < 1204919197 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :before i knew much about befunge < 1204919208 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mind you, it's a lot more complicated and extensive than funge-98. < 1204919210 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :say, you mode 0 in the first dimension and 1 in the second < 1204919215 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that would be equal to > < 1204919224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, got a link? < 1204919224 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because even rail is more complicated than that :) < 1204919232 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't have much online. < 1204919236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :aww < 1204919242 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have exactly one language online. < 1204919246 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, what is rail? ruby on rails? < 1204919255 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and one graphica example on my page < 1204919258 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err no < 1204919264 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :rail @ esolang < 1204919267 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks < 1204919288 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :rail has function entry points at a semantical level, funge doesn't seem to < 1204919293 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1204919297 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it's all 'goto' < 1204919303 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah. < 1204919313 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :not even 'gosub' :-) < 1204919318 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh :) < 1204919403 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway clearly funge98 needs to be extended < 1204919408 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION suddenly wonders if you could combine gosub and COME FROM < 1204919423 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :indeed. the turtles need to be cleverer < 1204919428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, hm what about come to? < 1204919463 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no, I got no idea what come to would do? < 1204919468 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: rewrite the come from line to have the line of the return line? < 1204919484 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :come from is one hot concept < 1204919505 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :COME TO PAPA < 1204919518 0 :Judofyr!unknown@unknown.invalid NICK :JudoBot < 1204919544 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, right, and rail isn't mine, in case i wasn't clear about that and the page is neither < 1204919546 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah, the truth is revealed < 1204919550 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :COME TO: maybe a probability for the program to jump to that point at any time? Like gravity this probability would decrease when you get further from the statement? < 1204919552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about that? < 1204919553 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :once again, i cannot open pages < 1204919554 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he was not human at all < 1204919583 0 :JudoBot!unknown@unknown.invalid NICK :Judofyr < 1204919597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION looks at Judofyr < 1204919623 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what's that one language on esolang where every operation only *probably* works? < 1204919626 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or are there multiple? < 1204919632 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :I'm using wi-wi-wi-windows 386! < 1204919641 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :All my applications are running at once! < 1204919645 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'd like to see that, but once again, i need a straight link so i can dl via a friend < 1204919658 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Java2K < 1204919666 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204919672 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :remembered it had a j < 1204919692 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1204919701 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1204919701 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my downloader has disconnected :P < 1204919707 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :anyone wanna send me the spec on dcc? < 1204919709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, why not just browse the web? < 1204919712 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm feeling eso tonight < 1204919723 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, i cannot open webpages right now < 1204919730 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, dcc? should I dcc them to you? < 1204919731 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :don't ask me why, i don't know and i don't care :) < 1204919740 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: if it's not too much trouble. < 1204919763 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, well how can you recieve it then? < 1204919783 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :dunno why, but dcc works. < 1204919787 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just sounds like chicken or egg first problem to me < 1204919801 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :irc and messenger work fine < 1204919816 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, so you want me to send over DCC, the specs for DCC? < 1204919821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :may I ask why < 1204919836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: I have data here, I have data there < 1204919836 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what about ftp? < 1204919838 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'd like to read 'em < 1204919839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have data that has never been together < 1204919844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wi-wi-wi-windows 386! < 1204919849 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :yes! < 1204919849 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, is it so you know how to implement DCC so you can receive the specs on DCC so you can... < 1204919851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1204919870 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, what about gopher? would be easier for me < 1204919875 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs a gopher server < 1204919880 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :gopher! < 1204919880 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: umm... java2k specs that is < 1204919882 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204919885 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, :D < 1204919888 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i don't need dcc specs < 1204919893 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what's gopher? < 1204919894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : anyone wanna send me the spec on dcc? < 1204919906 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is even stupider than usual without google < 1204919907 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, that sounded like you wanted the specs on dcc < 1204919913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://weblog.jamisbuck.org/2008/3/6/when-duplication-is-not-duplication This is so wrong. Two or more, use a for! < 1204919916 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i didn't realize that, sorry < 1204919935 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :stop linking stuff! :D < 1204919937 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: do you actually /use/ gopher? < 1204919960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: He runs a server so he can tell everyone he runs a gopher server. < 1204919965 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Same reason he uses Bash.. < 1204919972 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ah, I see < 1204919978 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes to make ppl on irc ask about it < 1204919979 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1204919983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but bash I use more in fact < 1204919998 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, http://envbot.org <-- modular irc bot in bash, and project is serious < 1204920031 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :sure, "serious" in the sense that it's not a joke, but /why/? :-P < 1204920033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway gopher://inspircd.dyndns.org (yes it is a bit empty) < 1204920036 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's serious so far as AnMaster runs it to make people ask why. < 1204920040 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Do you see a pattern here?) < 1204920045 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no in fact not < 1204920049 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, because it is fun < 1204920053 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is starting to think no one will send the spec to him < 1204920054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: inspircd is a real program you know < 1204920055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and a challenge < 1204920060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes I know < 1204920079 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I used to be on the QA team of inspircd, quit though, had too little time for it last yea < 1204920080 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :year* < 1204920084 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I've never found shell scripts fun, but to each his own I guess :-) < 1204920088 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :got more time now, so I may rejoin < 1204920099 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so yes I know about inspircd :) < 1204920099 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is reminded of once dilbert lost his net access < 1204920118 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I'll do when I find out how to do dcc from erc < 1204920126 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what client? < 1204920129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :please don't flame about that I use ERC < 1204920134 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, I said ERC didn't I? < 1204920135 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1204920141 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :irc client for emacs < 1204920142 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: inspircd is far too unmodern.. < 1204920142 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm not aware of that < 1204920143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204920156 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it is? nah, I would say it is cutting edge < 1204920160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I oughta code IRCd That's Actually Modern, You Know, Like, No Code From 1992, I Mean Sheesh < 1204920161 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm guessing /dcc < 1204920167 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what one would you call modern then? < 1204920167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :itamyklncf1ims < 1204920176 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, "unknown command" < 1204920184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :erc can't do dcc < 1204920189 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah < 1204920190 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204920195 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe I could write a module to do it < 1204920200 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just I suck at elisp < 1204920202 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: already done < 1204920203 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :erc-dcc < 1204920206 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but erc is just a toy. < 1204920207 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :seriously. < 1204920207 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah right < 1204920213 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: btw. cise has turned out to be quite a task < 1204920233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: I want the spec! < 1204920233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1204920241 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :didn't finish the spec, because i had a sudden inspiration to just implement it :D < 1204920243 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw when I do funge08, it will be in LaTeX < 1204920248 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: let me tryyy < 1204920249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204920251 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, using the GUI frontend lyx :) < 1204920252 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: good luck with that :-) < 1204920266 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well lyx is easy, and I love lyx < 1204920269 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: nooooo, you'll just ruin my fun :) < 1204920275 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pure latex would be hard < 1204920290 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, http://www.lyx.org/ < 1204920294 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ummm < 1204920296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :latex isn't hard < 1204920301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But I think TeX is the nicest. < 1204920304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Pure, unadulterated TeX. < 1204920318 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok right, don't say my interest for bash is insane then :P < 1204920329 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :TeX is simple. < 1204920330 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And nice. < 1204920333 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: naww < 1204920335 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I suck at parsers < 1204920338 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :let me try horribly < 1204920359 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so do I, so I prefer languages where each char is an instruction < 1204920365 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like brainfuck or funge < 1204920367 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: this is no ordinary parsing ;) < 1204920390 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: lemme try :D < 1204920396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I certainly don't prefer those. < 1204920398 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you have to constantly type check as you parse, and choose the first parse tree without type mismatches < 1204920402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :They're unimaginative, for the most part. < 1204920406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: wow, that sounds awesome < 1204920408 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, for parsing them that is < 1204920411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :let me try, i'll make it terrible < 1204920420 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not for writing parsers in < 1204920421 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1204920426 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it is very awesome, indeed :) < 1204920447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, fun! < 1204920482 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's basically prefix, but type checked and with currying < 1204920483 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can you in java2k actually write a program that does the same thing every time it is run? < 1204920506 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, iirc < 1204920512 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i think you can make a metaprogram that gets you any desired *probability* of it working. < 1204920522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, 100%? < 1204920523 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the exact answer would be no, though, iirc. < 1204920534 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no < 1204920537 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1204920539 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :limit of 100 < 1204920546 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, is it turing complete then? < 1204920561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.p-nand-q.com/humor/programming_languages/java2k/13.txt < 1204920563 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hello world2k < 1204920565 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess technically no, but do realize ehird recalled differently. < 1204920571 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.p-nand-q.com/humor/programming_languages/java2k/26.txt < 1204920572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204920573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this prints out F < 1204920585 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :is it long? paste it to me if not :< < 1204920592 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, it certainly is < 1204920596 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is retarded < 1204920598 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I could pastebin it though < 1204920602 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :... < 1204920604 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1204920608 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204920614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'Java2K uses a 11-based number system, which is a very good approximation of the 10-based decimal system for many purposes, including counting up to and including 9.' < 1204920614 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204920614 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, tried restarting your router? < 1204920632 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: i lolled too :D < 1204920633 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh indeed < 1204920641 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no. i don't want to disconnect irc... < 1204920644 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::< < 1204920645 0 :ehird!unknown@unknown.invalid TOPIC #esoteric :Fe fi fo funge, I smell the brainfuck of an Englishman. | pastebin - http://pb.eso-std.org/ < 1204920649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lulz, not yet :D < 1204920655 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm thinking of not doing safety in PSOX 1.0 and just having the filesystem domain manipulate indivitual files < 1204920658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: get a decent client, sheesh ;) < 1204920662 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: lulz < 1204920665 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :That is, there will be an rm, but no rm -r < 1204920676 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: a decent client will not disconnect if i restart my router? :o < 1204920679 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Sgeo, PSOX, tank, skateboard, tanks are filled with water. < 1204920685 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: no < 1204920688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it will remember everything < 1204920689 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, depends < 1204920694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so you'll be out for about 3 mins < 1204920694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :max < 1204920697 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: i have konversation < 1204920705 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :can it be made remember? < 1204920707 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204920716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: yes < 1204920717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, with static ip it *may* be possible for client and server not to note that you disconnected < 1204920718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :go into networks < 1204920720 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm assuming you know everything about it becauseeeee you were using it iirc < 1204920720 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :edit Freenode < 1204920725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :assuming you reconnects fast enough < 1204920728 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :add to channel list < 1204920739 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :voila, channels auto-joined on startup/connect < 1204920768 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, you may also want your client to auto identify to services on connect < 1204920786 0 :jix!n=jix@dyndsl-091-096-046-251.ewe-ip-backbone.de JOIN :#esoteric < 1204920791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204920795 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :add to auto commands: < 1204920798 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/msg nickserv identify FOO < 1204920800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and voila < 1204920804 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :tbh i can't find "networks". < 1204920806 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can also tick 'connct at startup' < 1204920808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: its in the first menu < 1204920810 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :on the menu bar < 1204920888 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1204920897 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :define "in the first menu", it's not in any of the basic menus or "settings" :) < 1204920924 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*because < 1204920958 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders if YouOS is Still Alive < 1204920989 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: found it < 1204920993 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1204921017 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it was "server list", so naturally my robot brain saw no relation to "networks" < 1204921055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204921056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204921071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Hmm. < 1204921076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Another "Web OS" < 1204921082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How interesting, exciting, and useful. < 1204921096 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I made some apps for i < 1204921097 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :it < 1204921108 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm... i guess it's not that bad that i'm actually searching through the whole tokenization space + parse tree space... < 1204921118 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: plz spec < 1204921133 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :O(k^n) parsing, where k depends on similarity of tokens < 1204921165 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Although I agree taht it's mostly pointless < 1204921177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://squatt.er/ would be a great name to be domainsquatted < 1204921186 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: 'similarity'? < 1204921216 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what country is er? < 1204921273 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: hard to define < 1204921283 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm cannot find it < 1204921285 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the point is, you get an exponential amount of tokenizations < 1204921300 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and for each tokenization, and exponential amount of parse trees < 1204921315 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so, perhaps "second order" exponential number of possibilities < 1204921331 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the expression separator is finally starting to make sense < 1204921333 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204921410 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: i conclude that .er would be a great name to be domainsquatted < 1204921473 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh, Eritrea < 1204921533 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Personally I can't wait for the Somali government to ... come back into existence. < 1204921543 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :And hopefully sell domains to anyone. < 1204921546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/.er < 1204921568 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :rochest.er (lame delegation - delegated servers have no such zone) < 1204921569 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204921577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :.er is great for obscenities < 1204921579 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://fuck.er/ < 1204921798 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :ehird: What happened to your IRC-bot/parser? < 1204921838 0 :Corun!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1204921886 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Direct-threaded code is Fail for portability. You cannot portably compile DTC at run-time: each Forth word will be a list of function calls. But with my indirect-threaded code, each Forth word is a list of word addresses; more portably compilable. < 1204921982 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gets the deja-vu feeling < 1204922058 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yeah, but ehird weasn't there the first time < 1204922757 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :back < 1204922763 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: What about it? < 1204922775 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: Blah blah blah blah blah THIS IS FORTH DAMNIT < 1204922777 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :is it usable? < 1204922788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: No. Not yet. :( < 1204923203 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how do you compile at run-time? < 1204923219 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I assume you have to comma together a load of opcodes? < 1204923246 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: that isn't the last episode of fine structure. < 1204923260 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, I realized < 1204923264 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204923268 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I thought that the next one would be the last, but I was wrong < 1204923273 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Are you an FS fan? < 1204923278 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :a bit, yes < 1204923288 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I liked the ed stories too < 1204923338 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: its very simple to compile at runtime < 1204923351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :see: jonesforth :) < 1204923355 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Any hypotheses on the unlisted story? < 1204923356 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and ooh, Sam Hughes++ < 1204923374 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no, joensforth uses indirect-threaded code, like I do < 1204923375 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I tried looking for fiction edited in Feb. 2008, but didn't find anything < 1204923380 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you use direct-threaded code < 1204923386 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: oh, yes < 1204923388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, mine is simple < 1204923397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you see a word name < 1204923405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :look it up in the dictionary, find its funcptr < 1204923409 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :append that to the word < 1204923416 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but to compile, you must comma together a load of function calls < 1204923422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204923423 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and? < 1204923423 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no < 1204923434 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :a string of function pointers is not executable directly < 1204923443 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, compiling forth? quite possible iirc < 1204923451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: gosh, really. < 1204923455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: yes it is < 1204923457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip++() < 1204923466 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ip--() < 1204923471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip%2() < 1204923478 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err, what is the problem? < 1204923486 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok... < 1204923488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads up but can't find where discussion start < 1204923494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :starts* < 1204923500 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but the ip points to a pointer to a function... < 1204923512 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: funcptr() works in c. < 1204923515 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204923516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's (*funcptr)() < 1204923527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: anyway < 1204923535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if we have '+ +' < 1204923539 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, prototypes prefered ;P *runs* < 1204923541 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we search the dictionary for '+' < 1204923550 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and a function can't be built by caoncatenating together a load of pointers < 1204923556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then, the next memory address is its length < 1204923563 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then, is all the functions < 1204923565 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we just take that address < 1204923568 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and append it to our list. < 1204923576 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204923578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and the last thing in every function is the postlude < 1204923581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which pops the stack and goes back < 1204923586 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, ehird: may I ask what you are doing or trying to do? < 1204923588 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :so how do you compile ina reference to a function written in forth? < 1204923593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: ... < 1204923594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i just told you < 1204923595 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: write a forth < 1204923605 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :um < 1204923608 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :no < 1204923609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, there are plenty of interpreters and compilers for forth iirc? < 1204923610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: my forth words are valid functions < 1204923621 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes < 1204923621 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: There is also a working Befunge-98 implementation. Stop writing yours. < 1204923632 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Actually, stop writing any software. It's probably been done before. < 1204923634 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I'll have to see this to get what you are talking about < 1204923635 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok, point taken < 1204923638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1204923654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but forth isn't really esoteric is it? < 1204923699 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1204923699 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it isn't < 1204923699 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION makes a difference between "writing yet another compiler/interpreter for an esoteric language" and for "normal languages" < 1204923744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for a "mainstream/normal" language, I would try to improve existing tools, or have a extremely good reason to create a new one < 1204923750 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: IT'S FUN. < 1204923751 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :stfu. < 1204923762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so when do you plan to write your own C compiler? < 1204923765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*runs* < 1204923768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I have. < 1204923769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1204923774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, oh!? < 1204923775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :link? < 1204923776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Forths are a lot easier, though. < 1204923787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Bitrotten. And none of them really worked fully, as a whole they were probably pretty good. < 1204923797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204923799 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1204923815 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :considering GCC is still not fully C99... < 1204923840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :uhm < 1204923842 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :k&r c ofc < 1204923848 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok :/ < 1204923855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :C is simple, honestly < 1204923873 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks C should be classed as esoteric when it lacks prototypes ;P < 1204923901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: woot, i have a simple dictionary < 1204923901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :char d[] = { 3, 104, 108, 116, 0, F_hlt, 0 }; < 1204923905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, wait < 1204923908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a funcptr won't fit into a char. < 1204923909 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oops. < 1204923919 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm, that's interesting.. i don't wanna use whole ints for each name char < 1204923925 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, indeed, you need something that is intptr_t wide < 1204923936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, just int. portability is not important for forths :) < 1204923936 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that could be 64-bit even < 1204923940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: anywayu < 1204923941 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1204923944 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i can't just use an integer type < 1204923945 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs x86_64 < 1204923954 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: who gives a damn, this is a small toy interp < 1204923963 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I run x86_64 too, damnit. < 1204923969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but I don't want to use an int < 1204923972 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so you plan to compile it in -m32? < 1204923976 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :maybe some kind of union of char[4] and int? < 1204923981 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: maybe < 1204923985 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, 8 char! < 1204924003 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can you initialize unions in literals? < 1204924012 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I have a set of asserts that all the components of my union are the size of the union < 1204924014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, in C99 you can afaikk < 1204924021 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :{.foo = bar} < 1204924026 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, no c99 kthx < 1204924028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no idea about older C < 1204924058 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway please don't assume pointers are 32-bits. Such C code is horrible < 1204924058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204924069 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: this is meant to look like the J prototype interp ffs < 1204924078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why are you so uptight about people coding fun toy interpreters?! < 1204924088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I wonder if I can cast directly to a union < 1204924089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if so... < 1204924089 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :D d[] = { 3, "hlt\0\0\0\0\0", 0, F_hlt, 0 }; < 1204924097 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a dictionary record is this: < 1204924112 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm not, as long as it compiles with -ansi -pedantic -Wall -Wextra -Werror < 1204924113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1204924121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :name length, name, number of instructions, funcptr < 1204924122 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or -std=c99 instead of -ansi if you want < 1204924124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :0 terminates < 1204924126 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that would put a string pointer in there < 1204924143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: hmm, as an int? yes, probably < 1204924146 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204924147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damnit. < 1204924156 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what is the def of F_hlt? < 1204924159 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, SimonRC indeed about the string pointer: you can put an actual string in a struct too, in C99 < 1204924160 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :*runs* < 1204924162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: something like this: < 1204924168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :void F_hlt() {exit(0);} < 1204924169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :C99 got variable size structures < 1204924175 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yup < 1204924197 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: ok, what is the structure notation for this: < 1204924200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: for forth words, the funcptr will be F_magic < 1204924208 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: which will step through the funcptrs after it, calling it < 1204924214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thus, a program really is just a list of functions. < 1204924221 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204924222 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah, I think I see < 1204924225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it will be F_magic, hackified < 1204924229 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :to hardcode the addr < 1204924232 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but how does F_magic know which word to step through? < 1204924238 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: just like that. < 1204924239 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1204924241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the perverse way of doing closures < 1204924242 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1204924257 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: right, that was the admission I was looking for < 1204924260 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and this will only work on little endian 32-bit I assume? :P < 1204924264 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or you could hack with ip? < 1204924274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: actually, wait, that's right!! < 1204924278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204924279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but then.. < 1204924284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :words aren't a list of funcptrs any more < 1204924290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1204924291 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: stfu < 1204924329 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(In fact I had mentally discounted your perverse closures) < 1204924342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1204924348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ooh, wait... < 1204924352 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, no.. < 1204924360 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: since ip will be F_magic.. there's no way to utilize ip < 1204924361 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unless.. < 1204924363 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip2! < 1204924386 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you know, software that isn't portable bitrots much faster < 1204924413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't. give. a. shit. < 1204924421 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I will write this once, use it for 10 minutes, laugh, admire it. < 1204924427 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then ignore it < 1204924433 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw, someone made a forth interpreter in bash < 1204924434 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I repeat -- < 1204924442 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :THIS IS NOT INTENDED TO BE A SERIOUS INTERPRETER FOR REAL USE!!! < 1204924445 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ok what is so special about your forth interpreter? < 1204924453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NOTHING, except I wrote it! < 1204924456 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204924457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Goddamnit, shut. up! < 1204924468 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :well, mine is written in a really dense style < 1204924473 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and to give me some C practice < 1204924474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: ditto < 1204924497 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :most of the source is macro calls, and much fo the rest is macro defs < 1204924551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: I concede you're right with the funcptr thing. < 1204924552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, you know, C99 got the inline keyword :P < 1204924553 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How do you resolve it? < 1204924564 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: are you being intentionally dense? :| < 1204924570 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, aye < 1204924574 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: but how do you write this with it? : < 1204924585 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, I agree macros are useful sometimes < 1204924588 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :#define V(x,b) void x(){b} < 1204924591 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Or this: < 1204924593 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it is easy to overdo it < 1204924599 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :#define OD(c) C*p=dic;while(p){{c}p=p[1].p;} // loop p over dictionary < 1204924611 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, why do you want a macro like #define V(x,b) void x(){b} < 1204924612 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or this: #define W(n,pr,N,c) V(f_##n,c;ip++;) C n[]={{.s=N},{.p=pr},{.f=f_##n}}; // native word < 1204924619 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: BECAUSE IT'S A JOKE < 1204924622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IT'S LIKE THAT FOR FUN < 1204924624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IT'S AMUSING < 1204924627 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GOD. FDSFKSDF DAMNIT < 1204924628 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 'cause I have a lot og functions with that signature < 1204924639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, those macros would require some variables to be in that function, or global variables < 1204924646 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1204924652 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Would they?? Wow, I thought they involved puppies. < 1204924656 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(I think AnMaster is being not very serious and not showing it clearly, hence ehird is taking him to seriously) < 1204924661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: so how do you handle the thingy < 1204924661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and oh < 1204924663 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay then < 1204924663 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1204924674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, indeed you got it < 1204924680 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION bangs ehird and AnMaster's heads together < 1204924683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ow < 1204924684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ouch! < 1204924702 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the traditional Clarkstone approach for bickering boys < 1204924704 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1204924714 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but seriously, I'm much happier with clean code. you know about doxygen? there is such I thing for bash, called bashdoc < 1204924715 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I use it < 1204924725 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for any script larger than about 200 lines < 1204924731 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :does that tell you something ;P < 1204924740 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that might be where you're goping wrong < 1204924746 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you're writing 200 lines of bash < 1204924749 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*grin* < 1204924751 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, haha < 1204924771 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC, I got programs in bash with over 1000 lines of code (comments excluded) < 1204924778 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I think envbot is such < 1204924850 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: pleez tel muy? :p < 1204924857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, i know what i could do! < 1204924876 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oh, I forgot your question < 1204924878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :entry = name length, name, number of instructions, funcptr, instructions -- as usual < 1204924879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BUT < 1204924886 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION suggests ehird write a GCC frontend for forth < 1204924888 0 :ais523!n=ais523@pp02-fap01.bham.ac.uk JOIN :#esoteric < 1204924889 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instruction = address of 'name length', ... < 1204924889 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION runs < 1204924895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then, NEXT is: < 1204924917 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that is exactly what mine does, I think... < 1204924926 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and JonesForth < 1204924935 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it's indirect-threaded code < 1204924940 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the topic lies! < 1204924947 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ip += (*ip)+2; ip(ip+1); < 1204924949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, it does < 1204924950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: yes < 1204924950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204924965 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah, waitamo, maybe not < 1204924975 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#define NEXT ip+=(*ip)+2,ip(ip+1) < 1204924976 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1204924981 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: and that isn't what yours does < 1204924987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yours doesn't take the instructions as arguments < 1204925015 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :well, I pass round w, tha address of the most-recently-started word, as a global variable < 1204925030 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the dataflow is actually just that of an argument < 1204925054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: I still don't get how you resolve this < 1204925079 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204925113 0 :ais523!unknown@unknown.invalid NICK :ais523|slightly_ < 1204925113 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I have a structure I will call a word < 1204925123 0 :ais523|slightly_!unknown@unknown.invalid NICK :ais523|sl < 1204925129 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it is 3+n cells < 1204925149 0 :ais523|sl!unknown@unknown.invalid NICK :ais523|sl_busy < 1204925164 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :name pointer, previous word pointer, code pointer, data* < 1204925186 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :my forth code is a list of pointers to words < 1204925196 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric : oh no, he went. we are not observed any more. does that mean we cease to exist? < 1204925203 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :luckily, we have logs, so you're still alright < 1204925230 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :to execute forth code: < 1204925246 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the ip points to the current position in the list < 1204925267 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you deref the ip into the w register < 1204925285 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ah that's good < 1204925308 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :then you call the function pointed to by the code field of the word pointed to by the w register < 1204925351 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that function will often look at the w register to see which word is being executed < 1204925372 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :for forth words, the code is the co function < 1204925406 0 :jix!unknown@unknown.invalid QUIT :"CommandQ" < 1204925421 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that pushes the ip on the return stack, sets the ip to point to the data of the word (fields 3+), which is also a list of word addresses < 1204925436 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the last one of those will be the address of ret < 1204925447 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the code of ret is a function to pop the ip off the stack < 1204925465 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :EOF < 1204925875 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1204925881 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :cise mergesort parses correctly < 1204925906 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not that that's all that hard to do < 1204925914 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just 4 different parse trees < 1204925929 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for the second expression, two for the first < 1204925946 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mergesort, once again, '/,}#< < 1204925980 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it manages to parse that as (' (/ *)) ((}# <) *) < 1204925987 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :* is the "stream parameter" < 1204926035 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the stream is something that holds the current result of computations, the function params are on it, then passed on to each expression one by one, always putting the result back on the stream < 1204926053 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :' / }# < are the operations < 1204926067 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :as you see, nothing tells it what to curry and what way < 1204926107 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it simply knows }# wants a function, so it gives it "<", and appliesthe curried (}# <) to the stream parameter < 1204926121 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :where, on the other hand, "'" wants a list of lists (it) < 1204926127 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(it's the recursion function) < 1204926150 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so it will use / to split the stream parameter, and use the result of "/" as its lists < 1204926157 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"/" is the function to split lists < 1204926181 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm fairly sure i score one in my quest to invent something original here < 1204926190 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204926192 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which would be a total of 2 points! < 1204926194 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mwahaha < 1204926222 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :have you read about ursala? < 1204926229 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :no :| < 1204926237 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :is it... that? :) < 1204926249 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :http://www.basis.uklinux.net/ursala/ < 1204926259 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it is an insanely dense programming language < 1204926265 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :something like this is prolly done with perl too. i just make it a bit more explicit < 1204926274 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can't open that :) < 1204926284 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it has a sublanguage called pointer expressions where each command is 1 char, and you can do a fair amount in it < 1204926293 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: huh? < 1204926303 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm, and it does type checking for tokenization and parsing? < 1204926309 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :no, < 1204926313 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: i cannot open webpages. < 1204926316 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking m,ost ly the insane density < 1204926320 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: why? < 1204926331 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh, no, that was not my "new" idea... < 1204926341 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there's a lot of languages for that already < 1204926366 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the new thing is just the way i'm making it terse < 1204926379 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204926389 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i still have no idea whether it works for bigger programs, but i think it's pretty cool it could even parse that :) < 1204926403 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :doesn't that mean that changing the type of one function can break oterh functions by changing their parse treee? < 1204926416 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :sure. < 1204926420 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1204926431 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is incredibly inefficient to parse < 1204926442 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which is exactly why it might be fruitful for terseness < 1204926444 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :doesn't matter that much on modern machines < 1204926453 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :can humans parse it? < 1204926481 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :they can, but they won't necessarily find the right parse tree... < 1204926487 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a computer will take the first possible < 1204926492 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :a human will take what suits them. < 1204926497 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oh dear < 1204926502 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :well, it is esoteric < 1204926510 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm going to add commands for actually choosing the parse tree ;) < 1204926518 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how about ( and ) < 1204926526 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :like, "choose fifth parse tree" < 1204926534 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1204926545 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :those are parsed as you'd except < 1204926547 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :expect < 1204926559 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also, "," and ";" are used to separate expressions < 1204926563 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :give me more detail about how that mergesort works < 1204926570 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :by separating them, you can escape the hell of exponential parsing. < 1204926573 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1204926608 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(' (/ arg)) split arg in two, then recurse to both branches < 1204926618 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then, the result is given to the second part < 1204926622 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :}#< < 1204926634 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :((}# <) arg) < 1204926636 0 :BMeph!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1204926663 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :}# is fairly mergesort-spesific, although it's very generic, it takes a list of lists, and a function to choose an element from a list < 1204926677 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it then gives the function the head of each list < 1204926692 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and puts on a "return list" the head that was returned < 1204926697 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now, < has two definitions < 1204926707 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it can either take a list, and return minumum < 1204926710 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*minimum < 1204926726 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or it can take two values and return a boolean indicating which was smaller < 1204926738 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now, the first one is type inferred, of course < 1204926767 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204926769 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so }#< gets two sorted lists (they were recursed into), and always picks the smaller of their heads < 1204926775 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :until they're empty < 1204926789 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also, you don't need to check the special cases [] and [1-element] < 1204926820 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because recursing with param N just returns N if the function has already been called with it iiiin the same recursion stack < 1204926822 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*in < 1204926831 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that was some confusing terminology < 1204926836 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in the same recursion anyway < 1204926841 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what is the recursion pattern of ' ? < 1204926850 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pattern? < 1204926855 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what do you mean? < 1204926861 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what exactly does ' do? < 1204926865 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204926877 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it takes a list of values, and maps current function to it < 1204926888 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what is "current function"? < 1204926889 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :current being the one it is called from < 1204926894 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in this case the whole program < 1204926898 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204926901 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, the mergesort < 1204926917 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what does comma do? < 1204926926 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :separates two expressions < 1204926933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :when a function is called < 1204926939 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the params are put on the "stream" < 1204926947 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the stream is then run through each expression < 1204926967 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and after running them all, its contents are the return value of the function < 1204926985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can use it to escape the exponential parsing hell, i imagine < 1204926989 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"run through"? < 1204926999 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and in what order? < 1204927008 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lessay you have expressions e1 e2 e3 ... en < 1204927013 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :separated by commas < 1204927045 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you'd basically do (en ... (e3 (e2 (e1 args)))) < 1204927052 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and that would be the result of the function < 1204927060 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the expressions are functions < 1204927077 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :running through means applying the function to the contents of the stream, and putting the result on the stream < 1204927079 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :why is the stream called a stream? < 1204927087 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204927088 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because i decided it is :) < 1204927098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :information kinda flows through the expressions < 1204927102 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's the idea < 1204927113 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can have other kinds of expressions too, you see < 1204927119 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :pattern matching, for instance. < 1204927125 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can just do that on the fly < 1204927128 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1204927141 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :if I have a stream continging [1,2,3] and I pass it through icrement, what do I get out? < 1204927145 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this is done by prepending the expression with ; instead of a comma < 1204927150 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :depends < 1204927153 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what's increment? < 1204927161 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :\x -> x + 1 < 1204927172 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that would not have a parse tree. < 1204927184 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :indeed, no < 1204927192 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well < 1204927201 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I mean, increment is the function that returns one more than its argument < 1204927230 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lists may for instance map functions like that through them if nothing else works < 1204927241 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"if nothing else works"?! < 1204927252 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :on paper, at least, i have the possibility of putting a value for operations' types < 1204927266 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so that there are less wanted types of operations < 1204927278 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that are taken if a parse tree could not otherwise have been formed. < 1204927293 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204927304 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :this is nuts < 1204927321 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i probably will not implement that any time soon, because even doing what i have now efficiently is hell' < 1204927341 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and "less wanted operations" are by definition only used after the whole parse tree space has been searched < 1204927348 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and... that's an exponential job. < 1204927367 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how does / split the list? < 1204927368 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll take those nuts as a compliment, i'm fairly satisfied with cise myself <3 < 1204927370 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204927374 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it has two definitions < 1204927384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :int -> list -> list of lists < 1204927405 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which splits into (whatever the int was) lists < 1204927416 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*splits the given list into < 1204927425 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :equally distributing the elements < 1204927429 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then < 1204927432 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1204927436 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there's just / :: list -> list of lists < 1204927439 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which splits in hald < 1204927441 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*half < 1204927447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1204927466 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll try actually adding / :: int -> list -> list of lists now, lessee what happens < 1204927467 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 'night < 1204927485 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: is the implementation available anywhere? < 1204927489 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmph, you're both green, stupid konversation < 1204927505 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm, i just scribbled it up, so no, not yet at least < 1204927510 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also, it does not yet evaluate it. < 1204927515 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :although that isn't too hard < 1204927537 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the parsing is the gist of cise really < 1204927599 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how does ' know when to stop? < 1204927643 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :as i said, there's a runtime check that recursion is not done twice with the same params < 1204927655 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if it is, params are just returned. < 1204927658 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204927667 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :waitamo... < 1204927674 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the input the mergesort isn't a list of lists < 1204927687 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my original way was to return [] when given [], but that was less parametrizable < 1204927692 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how does }#> get given one? < 1204927696 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :' takes a *list* of values < 1204927715 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and returns a list of the values that went through recursion < 1204927716 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :now < 1204927725 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :mergesort gets (list int) < 1204927735 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :/ makes it (list (list int)) < 1204927753 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :' makes it (list (list int)), just recurses through them < 1204927762 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :then < 1204927777 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(}# <) gets the (list (list int)) ' returned < 1204927786 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm... < 1204927801 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wonder what happens if i do }#<'/... :D < 1204927812 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's semantically equivalent, you see < 1204927830 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :do we end up merging pairs of lists of lots at a time? < 1204927845 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :we may end up merging lists of lists < 1204927869 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not something you often need, prolly, true, but there are a *lot* of list operations in cise. < 1204927877 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's basically a list language < 1204927905 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :St sorts a list, for instance, currently < 1204927934 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there's also a separate "permutation type", you can kinda "almost" sort a list with it: < 1204927939 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you call Sp on a list < 1204927945 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and it returns a permutation < 1204927959 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which is how the list should be permutated to be sorted < 1204927966 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can just do Sp list list to get it sorted < 1204927985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204927996 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just today i had a situation where i needed that... < 1204928002 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that's cool < 1204928023 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it allows you to keep keys and values in seperate lists, and sort both by sorting one < 1204928042 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, for instance. < 1204928054 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the super-dooper operators sound rather J/K-ish < 1204928058 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but there was something that was pretty hard to do otherwise, involving a "group" operation as well < 1204928067 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah. < 1204928097 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :they do, i'm not saying i'm the first one to make a terse *array-processing language* either, just the parsing is completely "new" :P < 1204928112 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :also, i'm calling mine list-processing, but same thing i guess. < 1204928128 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, lists imply trees more than arrays, imo < 1204928136 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :also the magical figuring out what variation of an operator to apply is J/K-like < 1204928140 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :kinda < 1204928142 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and the overloading < 1204928149 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and cise should, at least in the future, also have a nice support for tttttrees < 1204928155 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204928164 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yes, sure, but i doubt it's done to this extent < 1204928165 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ho do they differ from ordinary trees? < 1204928173 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: indeed < 1204928176 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :most likely the parse tree is clear without context. < 1204928204 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there's compile-time *overloading* done based on types, but on the existing parse tree. < 1204928214 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yup < 1204928232 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :at least i think so, because no one in their right mind would do something like what i've done :D < 1204928252 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what do you means how do they differ from ordinary trees? < 1204928258 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :could you maintain a serious program written in it < 1204928271 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :surely any tiny change would introduce a fountain of problems < 1204928275 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :? < 1204928297 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, if you keep expressions short, it may just work. < 1204928327 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :parsing nested functions has to be done at runtime, though, it is done when the function is first encountered, based on what functions existed at that time < 1204928337 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :after that, the functions is uses will not change < 1204928349 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :this means you can, if you want, introduce new operators to the language < 1204928355 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :mmmm, jit < 1204928365 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"jit"? < 1204928373 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oops, JIT < 1204928379 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :just-in-time compiling < 1204928383 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1204928384 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :right < 1204928386 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ofc < 1204928413 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that is necessary, because when you're parsing the beginning of the program, you cannot have parsed the rest to see what operators will emerge < 1204928421 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because you'd have to have parsed the beginning. < 1204928433 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nothing good would arise from this sick fixed-point equation, methinks. < 1204928456 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :couldn't you just enforce top-down semaintics? < 1204928467 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :everything has to be deduceable from the program up to that point? < 1204928479 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, that's what i have, basically. < 1204928488 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204928490 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204928502 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you mean < 1204928517 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i could use the functions that have been defined in the source up to the point of parsing < 1204928517 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :? < 1204928526 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yes-ish < 1204928531 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's not good, because you may want to have circular dependency < 1204928540 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that is rare < 1204928547 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess. < 1204928550 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :introduce a specific operator for it < 1204928556 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: just do it like C and allow a way to predeclare a function < 1204928567 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yup < 1204928569 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i already have an operator for setting a variable. < 1204928576 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204928580 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or Forth has deferred words < 1204928594 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :which are also general-purpose function hooks, ISTR < 1204928600 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :predeclaration doesn't really fit in < 1204928606 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1204928610 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :or then does < 1204928615 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1204928619 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or how about a y-combinator kind of thing? < 1204928626 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you just have to have introduced the *token*, to use it in parsing < 1204928628 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :a specific mechnism for mutual reference < 1204928658 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you can do 0;foo to set foo, and then function-involving-foo;bar and then function-involving-bar;foo < 1204928662 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :; sets a variable < 1204928681 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :that's actually what C does, more or less < 1204928688 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1204928690 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Oh dear, NFS is playing up again < 1204928718 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess you could actually compile cise if it's done like that < 1204928723 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I thought ; was for function sequencinging kind of things? < 1204928743 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :which would be quite awesome actually, weeks of compiling just to get a few chars of program to compile :P < 1204928752 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(assuming using my unoptimized strict parser) < 1204928771 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: "," is the sequencer < 1204928780 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :";" is a pattern matcher < 1204928803 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204928803 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you can put parts of the stream or all of it in variables midway in the function < 1204928816 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :wibble < 1204928832 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :BTW, does the left or the right part of a function go "first"? < 1204928851 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1204928864 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay, this was a classic failure from my part... < 1204928872 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i did ghc cise.hs -o cise < 1204928883 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :guess what my cise SPEC was called ;) < 1204928889 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ouch < 1204928922 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :"file has changed do you want to reload from disk?" I HAVE NO IDEA WHY THAT'S HAPPENED, BUT SHUUURE :DDD < 1204928931 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'm a fucking idiot < 1204928939 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :lost much? < 1204928940 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, is there a cise~ ? < 1204928940 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204928952 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :or whatever? < 1204928957 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :can you "undo" the re-load~? < 1204928960 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: it's basically prefix + currying < 1204928965 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :look for a backup < 1204928965 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: i may just love you < 1204928968 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :let's see < 1204928978 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :or see if you pasted or copied it anywhere < 1204928988 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or something in a pastebin? < 1204928990 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah! :) < 1204929004 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i probably wouldn't even have looked xD < 1204929011 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :but it was there < 1204929013 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or be like Paul Graham and say "screw the docs the program is the spec" < 1204929026 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1204929035 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :in future, keep you manual is a different dir < 1204929043 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oklopol, so I was right? < 1204929043 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :guess i should < 1204929045 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or maybe call it "cise.txt" < 1204929052 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: yes, i do love you < 1204929148 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I can never remember the log for this channel < 1204929183 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION generally goes to it via the community portal on Esolang < 1204929205 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :it's http://tunes.org/~nef/logs/esoteric/ according to my browser history < 1204929216 0 :RedDak!unknown@unknown.invalid QUIT :Remote closed the connection < 1204929246 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION just writes t u in the address bar and the browser shows the rest < 1204929275 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :since I accidentally deleted the Underlambda specs (by typing rm * by mistake), I've set emacs to back up everything in a different directory < 1204929292 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and it took out my old reference interp at the same time < 1204929304 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but I'm working on a new version now (when I'm not doing University work) < 1204929371 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: doesn't your uni keep backups? < 1204929382 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I was doing it on my laptop < 1204929392 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :not on the University servers < 1204929410 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and although I keep backups, I didn't take them often enough to save the spec < 1204929420 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(which I'd only been working on for about 2 days then) < 1204929454 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1204929463 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :[['}#', '<'], ["'", ['/', '*']]] from }#<'/ < 1204929467 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1204929471 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i didn't check if that was right < 1204929473 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lol :P < 1204929475 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :let's check < 1204929482 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it is < 1204929490 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :one of my friends stores their home directory, minus large media files, in Subversion, so they can access it from anywhere, and so it's automatically backed up with a simple svn ci < 1204929506 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that pretty awesome, there is, after all, about 6 parse trees from those 4 tokens < 1204929518 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(okay, it's not) < 1204929525 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(but it's promising!) < 1204929561 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :5 character mergesort, and not even *complete* cheat < 1204929575 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :is cise concatenative < 1204929582 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I can't quite tell from your description < 1204929587 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :not fully, i don't think so < 1204929589 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :are they unicode characters < 1204929591 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well < 1204929594 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :cise is "gluing" < 1204929605 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :it stick stuff together in whatever way works < 1204929611 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1204929615 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :composition, argument-passing, curring, etc < 1204929623 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*currying < 1204929624 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, you can pretty much just slash your characters there and it works! < 1204929633 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :lament: i don't think so < 1204929652 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :except when the computer finds a nex and exciting interpreetation of your ambiguous parse tree... < 1204929656 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*new < 1204929662 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :curly bracket close, that number character, less-than, single quote, slash < 1204929667 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :And I thought C++ was bad < 1204929674 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204929679 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(In C++, parsing depends on the kinds of various identifiers) < 1204929694 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(and in cise, it depends on what parses don't cause type errors?) < 1204929705 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :(foo(bar); could meant many different things) < 1204929706 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: (exactly) < 1204929727 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :what do you do when there are two non-erroneous ways to parse the program? < 1204929729 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what is your typesystem? < 1204929734 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: but at least in c++, foo is always s single identifier ;) < 1204929741 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: it takes the first one. < 1204929749 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: i currently have ints, booleans and lists. < 1204929759 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :implemented simply as python tuples :) < 1204929780 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so you can just add types by introducing another type name :) < 1204929800 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what order do parses come in? i.e. which is "first"? < 1204929820 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that i shall define in the spec, currently it's what my implementation has. < 1204929841 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it has to be well-defined ofc, because this is all about terseness. < 1204929898 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, for many programs, you can simply use a clear prefix notation. < 1204929907 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :brackets? < 1204929909 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :so it should try to parse your thing as such < 1204929918 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :there are not brackets. < 1204929931 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :they would help human readers < 1204929933 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, () are used to define a function < 1204929937 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204929955 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i guess i might make it possible to use that in a sort of bracket-like fashion < 1204929957 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :somehow... < 1204929965 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or something liek it < 1204929973 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how about intercal-style "" < 1204929985 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :which also parse ambiguously < 1204929987 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you can set variables, so you can definately be as clear as you wish. < 1204929991 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hehe < 1204929993 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but less ambiguously than without < 1204930000 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204930034 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :;I,;mc,[]("[]"),=}!!b->"+"+mC1"-"-mC1">"+C1"<"-C1(;X)Wh=mC0=}X??b i wonder if this parses :P < 1204930042 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that's not at all ambiguous, even < 1204930048 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :...or then it is, not sure < 1204930063 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that should be a fully working binary brainfuck < 1204930065 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what should it do? < 1204930069 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :cool < 1204930080 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is amused by IRC messages crossing from time to time < 1204930081 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how the fuck does it work? < 1204930094 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: yeah, brain-lag < 1204930099 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it uses goto's and whiles, and i'm not sure i even remember how it works :) < 1204930105 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*boggle* < 1204930111 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but, it's like, 1 line! < 1204930116 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :goto is, of course, not impossible even in a concatenative language < 1204930121 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if J/K can beat that < 1204930133 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :first of all, a lot of that is not up to date anymore. < 1204930140 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i think. < 1204930164 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :let's look at something simpler, preferably :) < 1204930175 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Al/_:¨ this should check if a number is prime 8| < 1204930188 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :umlaut is a character in cise? < 1204930190 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :that isn't in ASCII < 1204930196 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :true. < 1204930218 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's in my keyboard, so i use it. :) < 1204930228 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i prolly change everything to ascii later < 1204930237 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because cheating otherwise, ofc < 1204930239 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :how does the ascii-checker work? < 1204930241 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :the shortest BF interpreter entered on codegolf.com was 106 bytes long < 1204930244 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :in Perl < 1204930275 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :however, that website doesn't let you see what the program was, unless it was you who submitted it < 1204930300 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: ascii-checker? < 1204930343 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1204930348 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I meant prime-checker < 1204930365 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, first of all, Al/_¨ should work now, second, this seems to rely on type *conversion* < 1204930365 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204930394 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :haskell.org < 1204930411 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that does (all (div val [1..val-1])) < 1204930422 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wong time no see < 1204930431 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :and assumes an integer can also be divided by a list to get a list of them resultzorz < 1204930436 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: I don't understand your last two comments < 1204930441 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204930446 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION does < 1204930455 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: or, in Bill Gates's case, long time no C < 1204930459 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the second explains the first one. perfectly. < 1204930460 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan is an irc advertiser bot < 1204930483 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :really? I thought they were a Norwegian mathematician < 1204930505 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but it's easy to jump to conclusions over the internet < 1204930508 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Ah, I see < 1204930517 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: observe oerjan closely, what you just saw was oerjan's *thing* < 1204930537 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :everyone has a thing! < 1204930542 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm, no I don't < 1204930565 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :you only have one thing in my head < 1204930596 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because you're not *that* active, not that weird, and you've clearly stated to me a personal detail < 1204930617 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :wonder if you know what that is < 1204930673 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, one a clock < 1204930682 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's my thing? < 1204930691 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: do you really have to ask? < 1204930710 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: it most probably starts with P < 1204930752 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy's thing is also pretty clear, you're branded for life. < 1204930769 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well < 1204930769 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks ais523|sl_busy has at least two things < 1204930781 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: what's the other? < 1204930783 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure I have several < 1204930801 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :he's also the INTERCAL guy in my mind < 1204930804 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :getting into arguments with ehird over programming style and choice of language is one of the non-obvious ones < 1204930806 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I misunderstood what you meant by "thing", I thought you meant style of talking < 1204930808 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: my branding comment meant exactly that while you have done a lot of stuff, you just have that one thing. < 1204930830 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :repeatedly adding daemons to EgoBot was another, but it isn't here at the moment < 1204930836 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah, i also know he's an intercal guru, but the global fame overrides that. < 1204930865 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :as for style of talking, I'm ridiculously addicted to singular they < 1204930870 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :even though I forget to use it from time to time < 1204930880 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :true < 1204930890 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Didn't we have this conversation a few months back? < 1204930905 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I am the neophile. < 1204930912 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204930923 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION is many philes... < 1204930931 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric : i need to eat something -> < 1204930935 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :neophile? Addicted to matrix, or something else? Obsessed with new stuff? < 1204930948 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :addicted to sniffing neon < 1204930965 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that would have no effect, surely? < 1204930976 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I go "ooh stack programming bounce bounce bounce bored ooh array programming bounce bounce bounce bored ooh hight-order functions bounce bounce bounce bored" < 1204930979 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :etc < 1204930987 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*higher-order < 1204930996 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you'll have to sniff a _lot_ < 1204931001 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy, would have an effect if oxygen didn't get to your lungs < 1204931008 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204931017 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm, actually a lot of guys here don't have a thing < 1204931018 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :write a few Underload programs, then you'll get the hang of concatenative programming < 1204931025 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :because i've never seen them talk < 1204931042 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :well, if you have any elemental flourine in you it will react with xenon... < 1204931043 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :or look at my draft Underlambda spec and write some pure functional concatenative programs (in the Unlambda sense of pure functional, not the Haskell sense) < 1204931048 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but not neon afaik < 1204931065 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: surely no body could survive large amounts of elemental flourine < 1204931080 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: unless you are a flourine elemental < 1204931095 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION recalls a GITP episode < 1204931095 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :flourine, or fluorine? < 1204931101 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :whatever < 1204931102 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I think we've been mispelling it consistently < 1204931116 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"uo" is rare in English < 1204931127 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Noun < 1204931127 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :flourine < 1204931127 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric : 1. Common misspelling of fluorine. < 1204931134 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(from Wiktionary) < 1204931155 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that's a LIE < 1204931166 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but the way that's written, it seems like "Common misspelling of fluorine" is the /definition/ of 'fluorine' < 1204931178 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :s/'fluorine'/'flourine'/ < 1204931186 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :flourine is a dangerous chemical arising in flour that has been stored too long < 1204931194 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1204931197 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :so therefore 'flourine' is a noun that can only possibly refer to the word 'flourine' < 1204931203 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :in a nice bit of self-reference < 1204931213 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204931235 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: how about a compiler with common sense < 1204931238 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :? < 1204931243 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :recursive [adj.]: see recursive < 1204931257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: No, I will NOT compile this virus! < 1204931264 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :"obviously I don't want to throw away all the results you stupid machine, I meant to save them in that otherwise-empty list!" < 1204931264 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: like, that it'd take the parse tree resulting in a nice algo? ;) < 1204931288 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and it would automatically change the program to DWYM < 1204931345 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :DWYM? < 1204931358 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Do What You Mean < 1204931362 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :(cannot google...) < 1204931363 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204931365 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: main(){printf("%i",pi);} < 1204931369 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :as in WYSIWYM < 1204931369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :prints out all of pi < 1204931370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but < 1204931381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :comparisons etc involving pi < 1204931381 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(posited as an improvement on WYSIWYG) < 1204931384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :use an approx. value < 1204931386 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: why you not have interwebz? < 1204931393 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have no idea < 1204931406 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :perhaps i should restart my router like ppl keep telling me :o < 1204931407 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: Router. Restart it. < 1204931407 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: that doesn't terminate < 1204931412 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: You just set up Konversation, so! < 1204931421 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :can you start a web browser? < 1204931426 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well, i just set just freenode < 1204931432 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :a better example would be 'recursive [adj.]: see the definition of recursive in the previous edition of this dictionary' < 1204931437 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: yes, but it won't open anything < 1204931446 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :with a genuine definition in the first edition < 1204931472 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: can you ping anywhere outside your network? < 1204931472 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :that would most likely be tail recursion < 1204931473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: lazily evaluated recursion < 1204931479 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :depending on the laziness of the reader < 1204931484 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: lessee < 1204931496 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: eso-std.org doesn't respond to pings < 1204931505 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: well, you can get on IRC... < 1204931507 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :recursive [adj.]: when a function (see recursive-inner). < 1204931509 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :looks like I'll have to go back to bouncing them off Google < 1204931512 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can ping google. < 1204931516 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :recursive_inner: calls a function that (see recursive_inner) < 1204931525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: does it not? oh wells. < 1204931529 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: it will, sometime. < 1204931532 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :no wait, Google isn't responding to pings from here either < 1204931542 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :the University firewall must block pings... < 1204931545 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: did you read my cise rant? < 1204931559 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it seems my idea actually works, to some extent < 1204931573 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: i *can* ping google < 1204931575 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :have you tried a different web browser? < 1204931583 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :hmm no < 1204931586 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :or telnet www.google.com 80 < 1204931589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: gimme spec < 1204931593 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :what about typing HTML commands in by hand? < 1204931606 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(heh, that's what SimonRC suggested, but I meant to say HTTP and got the wrong acronym) < 1204931637 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :okay. < 1204931643 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i can get google on telnet :P < 1204931646 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1204931648 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :LOL < 1204931658 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i have a proxy set, must be down :) < 1204931661 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION owns < 1204931714 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I have noticed I sometimes try to apply debugging techniques to religion-like things < 1204931726 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: that's unlikely to work < 1204931731 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :otehr peoples' < 1204931741 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::twisted: < 1204931741 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :unless they're porting gdb to humans nowadays < 1204931761 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i had a jehova's witness on the door today < 1204931770 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :apparently there's a big jesus party coming < 1204931773 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I mean, I see some nonsense, and try to divide up the reasoning < 1204931778 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: again < 1204931783 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :? < 1204931788 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION starts looking at Magnatune again < 1204931790 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yep, and same guy actually :) < 1204931820 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :surely everyone gets a chance to repent during those seven nasty years? < 1204931821 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it would be so awesome to join a group like that < 1204931826 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1204931828 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :BTW, I made an ogg version of the Fugue Hello World I wrote < 1204931834 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(for people who can't read MIDI) < 1204931836 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i've just seen so many cult movies i'm afraid they'd kill me :) < 1204931845 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :start your own < 1204931845 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but Esolang doesn't accept ogg-format uploads for some reason < 1204931850 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :then you'd be boss < 1204931856 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy, url? < 1204931857 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204931870 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: nowhere, as I've just explained < 1204931873 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1204931879 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I can paste it to a filebin temporarily, though, for you < 1204931881 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I thought maybe you put it up elsewhere < 1204931897 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Actually, I think I did get the midi to work < 1204931900 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :It's just painful < 1204931906 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: interwebs work now? < 1204931910 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1204931916 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :yay! < 1204931922 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :yayeeee < 1204931925 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: http://filebin.ca/ddtfxb/hworld.ogg < 1204931937 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :do i have to upload my interp now?;) < 1204931942 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(unfortunately that link will stop working after an unspecified length of time) < 1204931951 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :would be no use, you simply could not read it. < 1204931960 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ACTION invites oklopol to a party with lemons, a girl in a tub, goats, and E < 1204931965 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :mwahaha < 1204931985 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :omg i love tub parties < 1204931992 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :uh < 1204931996 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :will there also be another girl and a cup? < 1204931996 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Anyone up to making a PSOX program in Fugue? < 1204932003 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: of course < 1204932028 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: I have a very complicated indirect chain of programs which amount to a BF->Fugue compiler < 1204932032 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :good, is this the #esoteric orgy me and bsmntbombdood have been planning for ages? < 1204932047 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :however, they're sufficiently non-portable that I don't think they're capable of running on more than one computer < 1204932053 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and unfortunately that computer isn't this one < 1204932054 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :chain of programs? Please elaborate? < 1204932072 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: dunno < 1204932078 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :BF->Prelude compiler. Prelude->Fugue compiler, but with music in a weird intermediate format I invented. < 1204932110 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Then I use that weird intermediate + another program I wrote to send a series of keystrokes to a proprietary MIDI editor, typing in the entire piece of music < 1204932123 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(hmm... maybe I could alter it so it works with Rosegarden?) < 1204932131 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :is there any Choon involved? < 1204932144 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :According to the wiki and my understanding, Prelude is equiv. to Fugue.. is this wrong? < 1204932147 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Then, I export to MIDI, and use TiMidity to synthesize that into ogg if needed < 1204932153 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: almost but not quite < 1204932164 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :"not quite"? howso? < 1204932166 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Fugue's a superset because it can handle literal constants greater than 9 < 1204932172 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but that's a very minor difference < 1204932178 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: no Choon anywhere < 1204932222 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::') < 1204932224 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1204932227 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric ::'( < 1204932239 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :So why not translate Prelude to Fugue directly? < 1204932241 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: because it's a different language < 1204932245 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: because I don't know MIDI < 1204932251 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :or at least, I know MIDI pretty well < 1204932253 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but not its file format < 1204932265 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(I'm more used to it as a protocol) < 1204932266 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :btw i made a music description language the other day, it totally owns standard score notation < 1204932277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unquote :: 'R ('R -> 'S) -> 'S < 1204932278 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION types pylib into Fx < 1204932285 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i'll turn it tc next week, methinks < 1204932306 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Nothing on there, /me googles Python MIDI < 1204932307 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I'm having problems figuring out the kind of 'R in that < 1204932321 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :you mean you calculate scores? < 1204932324 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: R is an abbrev. for "Rest" < 1204932330 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for a while now i've been thinking about something like hamming distance for melodies, would be nice to have a database of songs < 1204932336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: It means "the rest of the stack." < 1204932347 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :for instance you could check whether a melody is your invention, or already exists < 1204932349 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.mxm.dk/products/public/pythonmidi < 1204932351 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And, of course, EVERYTHING types as ('R -> 'S) -- you give it a stack in and you get a stack out < 1204932360 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: this has been studied before of course < 1204932363 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: I seem to remember that someone once did that simply by writing down the up-down sequence of notes < 1204932370 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :which discriminates between tunes pretty quickly < 1204932375 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :althoug of course it isn't a perfect hash < 1204932376 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :but only roughly < 1204932394 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and will split very similar tunes apart < 1204932430 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :everything done on the subject suck ass as far as i know. < 1204932432 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and what if you can't remember the intor? < 1204932433 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*sucks < 1204932434 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*intro < 1204932481 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :it may be best to have it both for the intro and for the first few notes of the chorus/main theme, for tunes that have one < 1204932505 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :umm, or just the whole piece < 1204932528 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to write a prelude2fugue.py < 1204932547 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :my bf2pre.c is in the Esolang filestore IIRC < 1204932559 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oh great, now I have both the SG-1 and Atlantis themes in my head at once now < 1204932580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: damn, my headmusicplayer isn't multithreaded < 1204932585 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it has a gui like xmms too < 1204932595 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :mine task-switches... < 1204932619 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I do actually task-switch quite explicitly in some situations < 1204932646 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :atlantis theme? < 1204932651 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: you read the daily wtf, don't you? that place is becoming a wtf in itself < 1204932659 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: really? < 1204932660 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reads it < 1204932665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean, at least the *parody* MFDs in the comments are funny.. < 1204932674 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: yeah, Stargate Atlantis < 1204932685 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :did you see the thread with 700+ comments on one of the main stories? < 1204932690 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :which? < 1204932691 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :presumably it was linked from one of the big sites < 1204932708 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: the one where a company had used JavaScript for authentication < 1204932714 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: reddit linked it < 1204932719 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it got on the front page < 1204932720 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :where the password was checked against plain text client-side < 1204932724 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that would explain it < 1204932725 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hehehe < 1204932732 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that could describe several ones < 1204932742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Error: Target org.macports.fetch returned: fetch failed < 1204932743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Error: Status 1 encountered during processing. < 1204932743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sfhkjsdfh < 1204932745 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :the amusing thing was that it appeared to be a scam company's website in the first place < 1204932760 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i need to sleep for a while, cya -> < 1204932782 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :did anyone sign up as "little Bobby Tables"? :-) < 1204932797 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: you can't inject SQL into client-side JavaScript validation < 1204932808 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :that's one thing to be said for it, at least < 1204932814 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: no, but it might make it through to the server side < 1204932834 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :there was no server side < 1204932841 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :wibble < 1204932845 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :the page simply had a script that checked the username/password < 1204932855 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and if it was right, redirected the user to another web page < 1204932860 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1204932864 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :which they could just access directly if they knew the URL < 1204932887 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :still more amusingly, the people in charge of the website found out, and changed the username/password < 1204932895 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1204932899 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(but of course they were still visible in view source...) < 1204932902 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :What the fuck?! < 1204932911 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :that is the WTF moment < 1204932913 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :really < 1204932930 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :it was one of the better frontpage stories there < 1204932948 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I wonders if MFD is supposed to be any good or whether someone knows they are crap but people will like discussing it. < 1204932950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Amusingly, the daily wtf's first few submissions sucked. terribly < 1204932967 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it was not originally on thedailyWTF < 1204932968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: I dunno, I basically skim over the actual comic and read the hilarious modified versions in the comments instead < 1204932970 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION decides to give up on prelude2fugue < 1204932971 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :and IMO they weren't oo bad < 1204932975 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :*too < 1204932980 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: on Wikipedia, MFD is where non-article content is deleted < 1204932987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Mandatory Fun Day < 1204932989 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :as in, pointless webcomics that people run on project pages < 1204932996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hahahaha < 1204932996 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204932997 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I found the acronym coincidence amusing < 1204933000 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's great < 1204933004 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :maybe deliberate < 1204933009 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :what does "MFD" stand for? < 1204933015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: Misc. for deltition < 1204933016 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :Miscellany for Deletion < 1204933017 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*deletion < 1204933019 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1204933025 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :as in, all pages not covered by other deletion processes < 1204933032 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :mainly, it's used for project pages and user pages < 1204933032 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hm.... < 1204933032 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mandatory Fun Day: Man, Fuck 'Dis < 1204933050 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :no < 1204933059 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :although I hold the record for successful MfDs of system interface messages < 1204933065 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :Man, Fucked by Dis (the language) < 1204933078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1204933078 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(I have 2, nobody else has any) < 1204933083 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: system interface messages? < 1204933084 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: wow < 1204933086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how did you do that < 1204933092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: things like the global site header < 1204933096 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, they're actually transcluded pages < 1204933099 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1204933101 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :MediaWiki is awful, awful software < 1204933103 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :not quite transcluded, but much the same < 1204933106 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think everyone can agree on that < 1204933111 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and MediaWiki makes a lot of sense for WMF < 1204933118 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the forum software is TRWTF < 1204933121 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but most of its features are designed just to be convenient for them < 1204933123 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: I know < 1204933125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the wiki software is TRWTF < 1204933126 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :the preview that isn't < 1204933137 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I mentioned the CAPTCHA in one of my posts < 1204933140 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Twiki softwareITRWTF <-- shorthand! < 1204933144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: everyone does that < 1204933145 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1204933151 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :when you preview the post, it changes the captcha image, but keeps the same word < 1204933162 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :hehehe < 1204933165 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :giving you a second chance to OCR it with different data < 1204933177 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(and ehird: no, I didn't say what the CAPTCHA word was, like so many people do) < 1204933190 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://thedailywtf.com/Articles/18-The-Bullet-That-Slayed-The-Beast.aspx What is the expected *reaction* to this? 'Ha ha ha'? < 1204933195 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(but from what they have said, it seems to me that it's just taking random words from lorum ipsum) < 1204933205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It basically amonuts to 'LOL, Microsoft r awsum. Open src ppl SUXORR' < 1204933222 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :ehird: the reverse of the usual? < 1204933294 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I actually rather like MediaWiki in some ways < 1204933302 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(see Wiki Cyclic Tag on Esolang, for instance) < 1204933309 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :it's not TC because infinite loops are impossible < 1204933323 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Even toy wikis disable template recursion. :-) < 1204933323 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but it is TC when the user restarts the loop by hand (by piping output to input) < 1204933340 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :everything < 1204933344 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'s tc when the user does it < 1204933344 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1204933356 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :yes, but not much user intervention is needed < 1204933362 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I call the situation 'Muriel-complete' < 1204933386 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Would a brainfuck interp in MWT be possible? < 1204933404 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{{brainfuck|,[.,]|hello}} < 1204933405 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I've already written a cyclic tag system in it < 1204933411 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Obviously, you'd need to restart it at points < 1204933415 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But could you actually do that parsing? < 1204933424 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but there's no way to do parsing for chars that don't have special wikimarkup meanings < 1204933434 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204933440 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :which is why the cyclic tag system needs to use = as a list separator < 1204933471 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it may be possible if Extension:StringFunctions were installed, though < 1204933491 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(note that I avoided extensions for Wiki Cyclic Tag, including the well-known ParserFunctions that make MediaWiki a bit like a programming language) < 1204933530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Hmm. It occurs to me that a template system can trivially simulate the lambda calculus.. < 1204933532 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Like this: < 1204933542 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1204933544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :K is < 1204933550 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Err < 1204933554 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Let's try the mocking bird combinator < 1204933554 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :easier < 1204933555 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1204933561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{{ {{{1}}} | {{{1}}} }} < 1204933593 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no < 1204933605 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Yes, I know MW's probably doesn't allow that, but that's because it sucks < 1204933608 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :actually, maybe that would work < 1204933613 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and MW does allow that syntax < 1204933626 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but I was trying to track what happened to the parameters < 1204933626 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :only one way to find out.. < 1204933630 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but it seems it's fine < 1204933641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :User:Elliott/mwc/m here I come! < 1204933643 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and ehird: you'll just get a template loop error if you aim it at itself < 1204933646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(mwc == mediawikicode) < 1204933659 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: 'Y' could come in handy here < 1204933665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, you can't create anonymous templates though < 1204933673 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So you can't do Y, or much anything really < 1204933676 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1204933680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll try S, K, I < 1204933683 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :you may be able to do something with extra parameters < 1204933687 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, wait.. < 1204933691 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :by defining K1, S1, S2 < 1204933695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: Is it possible to curry it? < 1204933695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1204933699 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(the partially-curried forms of S and K) < 1204933700 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But how do we get the param to K1 < 1204933705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that was given to K < 1204933715 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :you would need to be passing more than one param around < 1204933722 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: example? < 1204933724 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :show me K < 1204933734 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :however, bug 5678 has now been fixed, so I don't think it's possible nowadays < 1204933752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean, you can do: < 1204933753 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :previously, you could do something like K = K1 {{!}} {{{1}}} < 1204933756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1204933759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What is {{!}} < 1204933767 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :a template containing just | < 1204933770 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK. < 1204933773 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll give it a try. < 1204933778 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but that only worked by exploiting a parser bug < 1204933782 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: K1, or {{{K1 ...}}} ? < 1204933789 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :related to ParserFunctions, which aren't on Esolang < 1204933805 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :you dereferenced the {{!}} using {{#if:1|{{{thingtodereference}}}}} < 1204933821 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but that doesn't work nowadays, and never ought to have worked in the first place < 1204933825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: {{User:Elliott/!}} < 1204933828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is that OK? < 1204933841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also < 1204933847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#if:1 could be simulated by If1 < 1204933851 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :yes, that's pretty much identical to the corresponding Wikipedia template < 1204933851 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which would be {{{1}}} < 1204933855 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and ehird, no, it was a bug in #if < 1204933862 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Welp, I'll try it anyway < 1204933879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: K1 would just be {{{1}}}, correct? < 1204933885 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1204933889 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1204933891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Then it could be < 1204933895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I {{!} {{{1}}} < 1204933895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1204933897 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :allowing for dereferences in appropriate places < 1204933914 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and I can't figure out where they ought to go right now < 1204933919 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1204933932 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but they won't work anyway, so you can't test < 1204933936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay :( < 1204933941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: so there's no way to curry a template properly < 1204933956 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :there may still be a way < 1204933958 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :alas, that si so often the case < 1204933960 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :but it's kind of hard to explain < 1204933968 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :I am working at work on a system that would be TC if you could curry < 1204933970 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :suppose /every/ template carries around two params < 1204933986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: I think I might see where you're going < 1204933993 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :then, you make sets of 3 templates, to generate the resulting template base name, first param, second param < 1204933998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Permission to pollute esolang's main namespace? I, K, etc. aren't going to be really common names.) < 1204934002 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and somehow cart blocks of those around < 1204934013 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I can't give you that permission, you'd have to ask Graue < 1204934027 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :who is Graue? < 1204934030 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll take Graue's permission as implied. iirc, you can delete pages, ais523|sl_busy, so if I regret it I'll just bash yiou ;) < 1204934032 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: esolangs owner < 1204934037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: hmmm < 1204934043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :K = K1 {{{1}}} < 1204934046 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :not on IRC? < 1204934049 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, see User:Ais523/k1 on Esolang; I had this sort of idea earlier < 1204934057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{{ {{ K | foo }} | bar }} < 1204934059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-> foo < 1204934069 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :SimonRC: not registered, apparently, but he does come here occasionally < 1204934074 0 :SimonRC!unknown@unknown.invalid PRIVMSG #esoteric :+ < 1204934078 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I've gottt it! < 1204934081 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Time to do shizz < 1204934103 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I can also block users :) < 1204934121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: don't be cruel :'( < 1204934136 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey hoo, K can just be 'I {{{1}}}' < 1204934138 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :I only intend to do that, though, if you cause a big mess and then blame it on me < 1204934138 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's cool < 1204934167 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :hmm... Esolang is still on Parser_OldPP, I think, so there is at least some chance that you'll be able to get delayed parsing of | < 1204934183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't think I need it, ais523|sl_busy. < 1204934184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, not sure. < 1204934186 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(on the new preprocessor, it decides which |s are literal and which ones are commands right at the start of parsing, so that wouldn't work) < 1204934241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: I think I can trick MW into accepting the Y combinator < 1204934246 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Since I think I can avoid *direct* recursion. < 1204934260 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I think it checks to see if the same template name is used three times in a chain < 1204934268 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :no matter what the params < 1204934269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmph. Oh well < 1204934301 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :MW? < 1204934305 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :MediaWiki < 1204934311 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Oh MediaWi..riright < 1204934324 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: is whitespace ignored? < 1204934330 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{{ {{{1}}} | abc }} and stuff < 1204934338 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :ehird: sometimes < 1204934347 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :if it's either side of a metadata character, it's normally ignored < 1204934359 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :and it's definitely ignored between {{ and |, which in this case is the only relvant case < 1204934376 0 :ais523|sl_busy!unknown@unknown.invalid PRIVMSG #esoteric :(except if you have a multiword template name, of course) < 1204934381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{{ {{ {{{1}}} | {{{3}}} }} | {{ {{{2}}} | {{{3}}} }} }} < 1204934382 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :S2 < 1204934384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523|sl_busy: is that OK?