< 1237507215 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :also maybe there aren't names dunnoes....... < 1237507259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :where are the namez < 1237507439 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err wow i can't figure out how to get a newline in a string in j < 1237507552 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err oklofok, I keep meaning to ask < 1237507556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how do you explicitly refer to a param < 1237507560 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e.g. id=:{my param} < 1237507625 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1237507631 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric :ACTION lost < 1237507636 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi Blipi < 1237507640 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric :I'm off (: < 1237507643 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric :Hey < 1237507647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bye Blipi < 1237507650 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237507651 0 :Blipi!unknown@unknown.invalid PRIVMSG #esoteric :Bye < 1237507656 0 :Blipi!unknown@unknown.invalid QUIT :"- nbs-irc 2.39 - www.nbs-irc.net -" < 1237507875 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha, LF < 1237507891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: sooo < 1237507892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how do you do it < 1237508100 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: pinger < 1237508311 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah you gotta use a 3: thing < 1237508390 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :o < 1237508417 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237508431 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237508436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for dyadic you get (x,y) as the argers < 1237508439 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i haven't used them........................... < 1237508447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but x and y are undefinered for monadies hwo stupiiiidy < 1237508448 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :*-ellipsis < 1237508450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah wait < 1237508450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's y < 1237508459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er or not < 1237508468 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :x and y are the args afaik < 1237508486 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but it's not that simple < 1237508487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : id =: 3 : 0 < 1237508487 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :y < 1237508488 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :) < 1237508490 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : id 2 < 1237508492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :2 < 1237508494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's y for mony-attic < 1237508500 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :x fun y < 1237508503 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237508508 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and (fun y) < 1237508510 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1237508510 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but < 1237508517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :calling another fucktion fails < 1237508521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :say=:1!:2&4 < 1237508521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sayn=:3:0 < 1237508522 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :say y < 1237508524 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :) < 1237508526 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sayn 'foo' < 1237508527 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :maybe there should be a language that had sads too < 1237508528 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gives a valueerror on the y part of say y < 1237508530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :HOW ODDITY < 1237508542 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: the opposite of fun is boringness, duh < 1237508544 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :although i guess that's technically not a good opposite for fun < 1237508546 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237508551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(boringness x <- x+1) < 1237508553 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i was just thinking 3 letters < 1237508558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't know how that would work but hrm. < 1237508561 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but a really long one works just as well < 1237508567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe like < 1237508577 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i have no ide < 1237508578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a < 1237508586 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the idea is basically < 1237508588 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :maybe it's boringness that should be functions < 1237508589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anti-do things to the arguments < 1237508594 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and fun should be something fun < 1237508594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instead of arguments you get unarguments < 1237508597 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you undo things to them, see? < 1237508601 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ah! < 1237508602 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :sure sure < 1237508731 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :you undo undergarments? < 1237508746 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237508749 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait no < 1237508752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's not boringness, that's fun < 1237508753 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :silly < 1237509172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: heh < 1237509174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :3:0 is (3:) 0 < 1237509177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but 3 :0 is 3 : 0 < 1237509180 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and the latter is what you want < 1237509183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so infuriating :DD < 1237509290 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :how so < 1237509298 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :: is a suffix < 1237509302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well yeah < 1237509304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :still infuriating < 1237509326 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :well you're the guy who didn't like random numbers for foreigns, so... < 1237509337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i serve to live < 1237509394 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system/extras/util/lab.ijs:output=: [: empty 1!:2 & 2 < 1237509398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cannot figure out why that works. < 1237509420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system/main/conlib.ijs:echo=: 0 0&$ @ (1!:2&2) < 1237509420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system/main/conlib.ijs:stdout=: 1!:2&4 < 1237509422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system/main/conlib.ijs:stderr=: 1!:2&5 < 1237509424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah yes. < 1237509489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env jconsole < 1237509489 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :echo 'Hello, world!' < 1237509491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(2!:55)0 < 1237509493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, that's better < 1237509567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :system/main/stdlib.ijs:exit=: 2!:55 < 1237509568 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1237509573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#!/usr/bin/env jconsole < 1237509573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :echo'Hello, world!' < 1237509575 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :exit 0 < 1237509581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1237509584 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if you add a spac < 1237509584 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1237509586 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's valid shell _and_ j < 1237509588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Jell! < 1237510450 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.schneier.com/blog/archives/2009/03/blowfish_on_24_1.html <-- hahaha < 1237510845 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :wait the algo has a backdoor? < 1237510857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1237510863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :24 is a stupid tv show < 1237510866 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fiction < 1237510870 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i meant in the show < 1237510872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237510881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean they're not exactly technical accuracers are they < 1237510893 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i love concising things I verb. < 1237510906 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :if they actually used the term "wavelength", i find that much funnier < 1237510921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they did < 1237510923 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i don't see why there couldn't be a backdoor in the algo in theory < 1237510928 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there could < 1237510953 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :anyway after time travel, hacking is probably my least favorite thing in tv shows < 1237510966 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :of course, i love watching both; but at the same time they are so goddamn painful to watch < 1237510979 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I like hitchhikers guide to the galaxy's time travel < 1237510989 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can't change the future, because it all just sort of works out. < 1237510998 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who cares about the butterfly effect if you're not a butterfly. < 1237511004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, there's temporal paradoxes in it < 1237511009 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except they don't actually do anything. < 1237511022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BLATANT DISREGARD FOR TIME hoooooo < 1237511062 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :i hate all the time travel types < 1237511125 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237511128 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :even qntm's? < 1237511140 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :wuzat < 1237511150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://qntm.org/?models < 1237511162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there's some crazy ass ones < 1237511253 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1237511416 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1237512512 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :the two timelines interacting stuff i don't remember seeing anywhere < 1237512558 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but no i didn't like any of those, i just think the whole idea is incredibly stupid < 1237513268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why < 1237513332 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :you might start by asking why i don't believe einstein is correct about time even being bendable < 1237513337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237513379 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :firstly i don't know any physics, secondly i'm a coconut. < 1237514288 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i feel you should all know < 1237514294 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :that Philip Glass's Pruit Igoe < 1237514298 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :is an incredible song < 1237514361 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Someone thinks I'm a bunch of penguins < 1237514379 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :well, "sgeo" IS italian for "bunch of penguins", you know < 1237514381 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :http://www.flickr.com/photos/83024403@N00/3266023863/ < 1237514408 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :you know < 1237514417 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i feel like that's something cory doctorow would write in one of his stories < 1237514442 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :a posthuman who's embodiment is as a half dozen or so penguins < 1237519928 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :People who "the xkcd guy" can refer to, in order: 1. Randall Munroe. 2. That guy who always wears a hat. 3. Cory Doctorow. 4. That furry. < 1237519949 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Except that furry isn't actually related to xkcd in any way. < 1237520255 0 :bsmntbombdood_!unknown@unknown.invalid NICK :bsmntbombdood < 1237521748 0 :GreaseMonkey!n=gm@unaffiliated/greasemonkey JOIN :#esoteric < 1237530190 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1237531764 0 :Asztal__!n=moo@chunkybacon.org JOIN :#esoteric < 1237532519 0 :Asztal!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237535999 0 :clog!unknown@unknown.invalid QUIT :ended < 1237536000 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1237537869 0 :neldoret1!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1237543771 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"X-Chat -> http://xchat.org <- At least when I quit I don't look like a lamer" < 1237545473 0 :Otrez!n=Otrez@smartskola.botkyrka.se JOIN :#esoteric < 1237545528 0 :Otrez!unknown@unknown.invalid PRIVMSG #esoteric :UHAHAHAHAHAHAHA < 1237545561 0 :Otrez!unknown@unknown.invalid PRIVMSG #esoteric :That was my friend -.- < 1237545762 0 :Otrez!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1237558916 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237560109 0 :Hiato!n=1@dsl-245-1-23.telkomadsl.co.za JOIN :#esoteric < 1237562054 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :o < 1237565919 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1237568181 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1237569188 0 :Hiato!n=1@dsl-245-1-23.telkomadsl.co.za JOIN :#esoteric < 1237569225 0 :asiekierka!i=dontbanm@078088180066.elblag.vectranet.pl JOIN :#esoteric < 1237569227 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Hi < 1237569237 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1237569255 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :What's the current "channel topic" as in, what are you currently talking aout? < 1237569256 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :about* < 1237569284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there wasn't one < 1237569312 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So uh, what's the current "esolang with interest", as in, what's the popular-esolang-of-the-while? < 1237569324 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :currently < 1237569346 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was thinking a lot about MiniMAX last night < 1237569358 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although nobody else knew I was doing that, so it probably hasn't caught on elsewhere yet < 1237569479 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Wow, MiniMAX's intepreter is only 14 bytes < 1237569486 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think you could pull it off as a compiler < 1237569496 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :just by making a compiler appending the MiniMAX code to the interpreter < 1237569497 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237569499 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237569504 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I had that plan too < 1237569509 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The goal is to make it 14 bytes too :P < 1237569519 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh wait < 1237569521 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it must be more < 1237569528 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cuz it must be more than the program you're appending < 1237569535 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But try to make it <= 128 bytes < 1237569541 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, the main loop of the interp is 8 bytes < 1237569546 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :my actual target was 32 < 1237569550 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :to set a new record < 1237569561 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I was going for the very shortest main loop I could, so I could use the rest for startup code < 1237569607 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But still, you have 14 < 1237569618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237569620 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :for the compiled app stub < 1237569622 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's without I/O or anything < 1237569627 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237569629 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :...right < 1237569632 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I have a 32-byte version with I/O somewhere lying around < 1237569639 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although I've never dared run it, so I don't know if it works < 1237569665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(the 14-byte version has I/O in that it reads the program, IIRC; but the actual program can't do I/O) < 1237569702 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :You know < 1237569712 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think you could make the 14-byte version into a floppy disk compiler < 1237569721 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in, the bootsector loads the data from the floppy disk into the RAM < 1237569725 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and executes the code of MiniMAX < 1237569740 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :You can do it with any small-interpreter esolang < 1237569745 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1237569745 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :or even with any ASM-interpreter esolang < 1237569753 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about FALSE? < 1237569766 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It's 1024 bytes of 68000 machine language < 1237569774 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :68000 < 1237569777 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :not x86 < 1237569810 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1237569815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :probably you could translate it < 1237569820 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :What about Shelta then? With 512 bytes of code it's impossible to add any code for the bootsector thing, right? < 1237569832 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, the trick is to load the program from the floppy disk too < 1237569843 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And I think you could make a 3-language interpreter bootsector < 1237569846 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you'd need a floppy disk driver < 1237569849 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :MiniMAX, MinISCule, Barely < 1237569855 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but this gives me an idea < 1237569856 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Make your own simple FS < 1237569863 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :an OS written entirely in esolangs < 1237569863 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :for example, 256 numbered files < 1237569867 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apart from a few bytes of asm < 1237569869 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ais523: THAT WAS MY IDEA! < 1237569878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, it's a good idea then if we both thought of it < 1237569878 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and I made it about a year and a half ago < 1237569883 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there have been EsoOS plans before < 1237569890 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but none of them really got anywhere, AFAIK < 1237569917 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, I think the EsoOS could consist of a "bootdata" program < 1237569921 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in, shell + esolang interpreters < 1237569930 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and it'll be a bootdisk for running esolangs < 1237569937 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this reminds me of suuda < 1237569938 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I have a bootsector BF ASM implementation by my friend < 1237569943 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is in my esolangs directory, even though it isn't really < 1237569944 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :He made a bootsector executing BF ASM code < 1237569952 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :complete with stdin/stdout I/O < 1237569955 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1237569965 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you know of self-extracting executables < 1237569974 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, compressed files with a .exe extension < 1237569986 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, suuda creates self-uudecoding executables < 1237569992 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the resulting executable's entirely plain text < 1237570107 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Actually, that implementation is smaller than 240 bytes < 1237570114 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm not surprised < 1237570115 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :182 bytes with the bootsector code < 1237570167 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The bootsector code is 29 bytes < 1237570176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :people have written Linux executables for BF < 1237570176 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think it could be about 155-160 bytes when modified < 1237570181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :where the entire program fit in the header information < 1237570182 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :to be non-bootsector < 1237570185 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so there's nothing but the header < 1237570212 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So we have ready versions of: BF, Shelta, Barely, MiniMAX, MinISCule < 1237570215 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237570250 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've never actually run the MiniMAX interp < 1237570251 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The bootsector-specific code is mostly configuring the stack so it MIGHT BE needed < 1237570257 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ais523: you DIDN'T!? < 1237570259 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I tend to be scared to run programs I've written by hand in machine code < 1237570267 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Run it in QEMU then < 1237570267 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237570271 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :That'll NEVER break your PC < 1237570274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237570295 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :actually, I must make myself The Reference of Assembler < 1237570297 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Because basically < 1237570319 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :me coding = PC, keyboard, book or references on the desk, some paper (if needed) < 1237570323 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1237570332 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I can quickly find information and I use that ability < 1237570334 0 :Hiato!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1237570384 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I need to print myself a book (or just print a stack of paper) containing memory stuff, commands, INT stuff and some other tricks < 1237570399 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :a stack of paper hold by something so i can browse it nearly like a book < 1237570437 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So basically, I would need to write a shell, a very simple FS (256 numbered files probably, as in, 00-FF) < 1237570439 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and all < 1237570448 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, there will be the Data Table, which will contain: < 1237570459 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :...er, 256 pointers to different positions on the floppy disk < 1237570488 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :While reading, it will jump to the proper spot, read the header (containing a "magic", type and some other stuff) and run the app < 1237570559 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, the first sector is the bootsector, then there's disk data (pointer to the files and some other misc. stuff), then th efiles < 1237570561 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the files* < 1237570568 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The bootsector will execute file 00 < 1237570575 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :which will always be in ASM < 1237570583 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1237570591 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :what do you think < 1237570640 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And if you need INT information, I will link you to a good webpage in a sec < 1237570663 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :or not in a sec < 1237570665 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :my PC crashed < 1237570670 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :therefore me needeth to reset my PC < 1237570692 0 :asiekierka!unknown@unknown.invalid QUIT : < 1237570904 0 :asiekierka!i=dontbanm@078088180066.elblag.vectranet.pl JOIN :#esoteric < 1237570905 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :back < 1237570937 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :http://www.ctyme.com/intr/int.htm - Possibly the best interrupt reference in the world < 1237570985 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: I went and got hold of a DOS 3 user's manual from the uni library < 1237570996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or at least, I do whenever I want to do low-level DOS programming < 1237571001 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I put it back when I'm not using it < 1237571026 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :this is Poland < 1237571050 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and the closest manuals we had pre-1989 were translated German ones < 1237571059 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But I may find something < 1237571067 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1237571275 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, I will store the position as sector/cylinder/head < 1237571278 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :probably using 2 bytes < 1237571281 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :1 byte will be < 1237571291 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :bit 7: head < 1237571301 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :bits 6-0: cylinders, of whom there are 80 < 1237571314 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :second byte: sectors (1...18) < 1237571357 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The sectors only take 5 bytes < 1237571361 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Therefore I have 3 left < 1237571383 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And hopefully, the file data will take exactly 512 bytes < 1237571385 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so exactly one sector < 1237571403 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : That was my friend -.- < 1237571407 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so they all claim. < 1237571479 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and each file has a magic of 0xA51E < 1237571499 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If I will need any other magic, I may use 0x0523 < 1237571653 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: LOLIWC < 1237571716 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :using more than 2 bytes magic tends to help < 1237571717 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, I read it hours ago.... < 1237571732 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :at least, if you want to distinguish from other files < 1237571733 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, the header format is magic, size in sectors, 1 byte for data information (bit 7 = Secret (not inputtable via shell)?, bit 6 = Read-only?, bits 5-4 = Resered and bits 0-3 = Type < 1237571745 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I can distinguish from other files < 1237571750 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I have a list of all the positions < 1237571760 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And the magic is just to check if the sector is correct < 1237571764 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, aha < 1237571766 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Cuz every file will be at least 2 sectors < 1237571770 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237571778 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So i use 4 out of 512 bytes < 1237571778 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, 2 bytes could still happen by coincidence < 1237571781 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: good i didn't bother spoiling it, then < 1237571813 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The magic is now 0xA51E + file number (00-FF) < 1237571816 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1237571822 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So positioning on the wrong file is out too < 1237571856 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION hands FireFly a free non-swat coupon < 1237571862 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :would you like to cash it now? < 1237571885 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I'll keep it for now < 1237571890 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i see < 1237571897 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION swats FireFly -----### < 1237571899 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Inbef < 1237571901 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :>>_> < 1237571904 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1237571917 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1237571934 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Filled 37 bytes < 1237571935 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I was going to write "Inbefore: :(" < 1237571942 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :by adding 32 chars reserved for name < 1237571949 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Stop being fast < 1237571959 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :if the size is 0, then it shows the number, but the reserved place is still there < 1237571974 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i was fast? i even had an intermediate comment. < 1237571994 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I started writing after "I see" < 1237571996 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :AND < 1237572003 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and I added another 2-byte magic at the end < 1237572004 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I'm new to Dvorak < 1237572007 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0x0523 - File number < 1237572027 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well obviously your next comment was splattered across the screen, the reason should be obvious < 1237572058 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The current filesystem allows for 256 files, 32K each < 1237572060 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237572064 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: You're here! I have issues with DOBELA. < 1237572068 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :... < 1237572070 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Are you serious? < 1237572074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, very. < 1237572083 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Get it on! < 1237572090 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, as serious as can be when esolangs are concerned. :-P < 1237572103 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: So, basically, the spec sucks. < 1237572111 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Why? < 1237572114 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :What's wrong with it? < 1237572116 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Try to be more specific < 1237572131 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm trying to implement and I have about 20 questions here, so here we go. < 1237572143 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: For starters: what happens with non-command chars? < 1237572144 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Ok < 1237572145 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1237572160 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :...non-command chars? I think they would be ignored, as in, wiped when running < 1237572161 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: I.e. if a dot hits one, does anything happen? Can they be considered blank spaces when loading the file, or what? < 1237572166 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Blank spaces. < 1237572169 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay. < 1237572182 0 :MigoMipo!n=MigoMipo@84-217-14-145.tn.glocalnet.net JOIN :#esoteric < 1237572184 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :EOF is the Linux one if anything < 1237572192 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :now go on with other questions < 1237572202 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: BTW, are you going to write this stuff down or should/can I add stuff to the wiki page < 1237572207 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Yes you can < 1237572216 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, I probably will. < 1237572220 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Just increment the spec number by 1 and add (modified by asiekierka and Deewiant) < 1237572229 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and then you're free tog o < 1237572230 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :to go* < 1237572245 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Next: what happens when a dot hits =? Does it bounce off like from a #, reflect, go through, what? < 1237572274 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :lemme look at my wiki page... < 1237572274 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. if on cycle 1 it collides with =, where is it on cycle 2 < 1237572283 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :goes through on the other side < 1237572285 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but the = is still there < 1237572285 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Does it start moving from on top of the = < 1237572290 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or does it start from behind the = < 1237572297 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i already said < 1237572301 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237572302 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cycle 1: < 1237572303 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but there's a timing issue her < 1237572304 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :+e < 1237572306 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :.= < 1237572307 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cycle 2: < 1237572308 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : =. < 1237572315 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay, so it sort of jumps over it. < 1237572316 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1237572323 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :That's correct < 1237572337 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then: what happens to a dot that hits _? < 1237572345 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Jumps over it again? < 1237572356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or destroyed with no effect? < 1237572364 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Destroyed with no effect. < 1237572383 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... would it be possible to write a DOBELA interp in ALPACA + a preprocessor, I wonder? < 1237572391 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think possibly < 1237572403 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Maybe there will need to be slight spec changes < 1237572407 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but it should be (mostly) possible < 1237572421 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :4. Is $ supposed to buffer until either the program ends or a ^ gets hit south? < 1237572442 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :When ^ gets hit south < 1237572451 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it outputs all and clears itself < 1237572471 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so yep < 1237572473 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :until ^ gets hit south < 1237572476 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but then it just clears itself < 1237572477 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So nothing is output until then < 1237572480 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Yeppers < 1237572495 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :5. What's the default state of |? < 1237572518 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It destroys dots. < 1237572521 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. when a dot hits it east/west do they go up or down by default < 1237572523 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :O_o < 1237572529 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :...Or no < 1237572529 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237572533 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :they treat it like a wall < 1237572539 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in, bounce off based on the dot's whims < 1237572549 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ookay < 1237572556 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Setting it makes both dots bounce to the same direction < 1237572558 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :which is useful < 1237572576 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to go to 10. and take a break from my PC < 1237572585 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :While you're gone, think about v < 1237572591 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237572594 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I basically don't get it at all < 1237572596 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :what do I mean by outputting? < 1237572598 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically < 1237572599 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1237572614 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The dot hops over, but it's changed into whatever comes from the FIFO < 1237572625 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Except if hit south, then the dot is destroyed < 1237572630 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hops over? It says dots are destroyed always < 1237572639 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :... < 1237572645 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, I think i just explained it wrongly < 1237572655 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And okay, but what if there are _ < 1237572665 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :This takes dots from stdin < 1237572668 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in, _ does < 1237572673 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :take dots from stdin < 1237572674 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay so what is the FIFO < 1237572681 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :DOBELA's stack < 1237572682 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just a queue in memory? < 1237572683 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1237572686 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :For stdout < 1237572707 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Right right, okay < 1237572725 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Cat wouldn't sadly work cuz it never clears and outputs the FIFO < 1237572730 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237572733 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1237572734 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :won't work < 1237572737 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I was going to ask that next < 1237572746 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Should the FIFO be flushed at end of program or not < 1237572755 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237572763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So cat does work after all? :-P < 1237572763 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But you can add a verbose switch < 1237572768 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237572769 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :flushed? < 1237572773 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :By flushed i thought cleared < 1237572774 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I meant, to stdout < 1237572779 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in, it clears the FIFO upon end < 1237572784 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :except if you add a -v switch < 1237572784 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, no point in clearing it if the program ends anyway :-P < 1237572786 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then it outputs it < 1237572790 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :in binary < 1237572803 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Useful for debuggingeth < 1237572813 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then, : and _ < 1237572819 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Do they output on the first or second cycle? < 1237572820 0 :BeholdMyGlory!n=BeholdMy@d83-183-183-70.cust.tele2.se JOIN :#esoteric < 1237572827 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Every second, yes, but when is the first < 1237572843 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :_ outputs every cycle it gets a keystroke < 1237572849 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and : starts on the second cycle < 1237572870 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, _ has a buffer (sort of) < 1237572870 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :With buffered input _ has no choice in the matter < 1237572878 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and outputs 1 bit from the buffer if it has one < 1237572880 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, stdin is buffered on the OS's side < 1237572880 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :every cycle < 1237572886 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1237572898 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, if it has a bit from stdin, it outputs it < 1237572904 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If it doesn't have any, it does nothing < 1237572906 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah but if you have say just a _ < 1237572916 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then does it ask for input from the OS on the first or second cycle < 1237572927 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think the first < 1237572933 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :: on second, _ on first? < 1237572937 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237572940 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :is that a wrong idea? < 1237572940 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay < 1237572946 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :seems not < 1237572948 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, I don't think it matters < 1237572948 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but go on < 1237572955 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's just something that has to be known :-P < 1237572966 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :also, DOBELA operates on bits < 1237572969 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :called "dots" < 1237572971 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but go on < 1237572971 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, I think this is number 7 or 8: what do multiple _ do? < 1237572980 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Hmm... didn't think of that < 1237572990 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think a fair one will be for them to do it sequentially, top-left < 1237573003 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Like, if there's "_ _ _" in the first row and " _ _ " in the second < 1237573005 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Number 10 would have been "what exactly is topleft" < 1237573010 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the top-left _ outputs first < 1237573014 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the one next to it < 1237573018 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :until all did output something < 1237573019 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright < 1237573021 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then it scans the next row < 1237573034 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I mean, only one _ outputs per cycle < 1237573049 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, that's interesting. < 1237573050 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And if there's more than one _, they go sequentially every cycle < 1237573056 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ignoring the "every other cycle" thing < 1237573060 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So if there are two _'s < 1237573065 0 :Mony!n=Harmony@AToulouse-258-1-14-206.w81-250.abo.wanadoo.fr JOIN :#esoteric < 1237573066 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the first one outputs on cycle 1 < 1237573070 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the second on cycle 2 < 1237573074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So the 'every other cycle' rule only applies if there's one _? < 1237573075 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the first on cycle 3, etc... < 1237573076 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Yep < 1237573088 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Weird design but I wanted it to be like that < 1237573093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Heh < 1237573095 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So now Number 8 or 9 or 10 or whatever < 1237573103 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :what about Number Banana < 1237573104 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, whatever: north-south collision isn't specced < 1237573110 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :East-west you have < 1237573118 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If there are two dots only < 1237573123 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it works exactly like east-west < 1237573129 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but 0/0 and 1/1 are different < 1237573130 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :only rotated 90 degrees < 1237573133 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In which direction? :-) < 1237573138 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Clockwise or counterclockwise < 1237573140 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Clockwise < 1237573143 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright < 1237573146 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237573151 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the stuff created is < 1237573156 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :0/0 leads to: < 1237573157 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :# < 1237573158 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : < 1237573160 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237573162 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and 1/1 leads to < 1237573165 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :# < 1237573171 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1237573171 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You failed < 1237573173 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : < 1237573173 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i know < 1237573174 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :# < 1237573175 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237573179 0 :Mony!unknown@unknown.invalid PRIVMSG #esoteric :plop < 1237573179 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so let it go on the next Q < 1237573183 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :plop < 1237573190 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :continue, D-wiant < 1237573193 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1237573194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant < 1237573195 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Multi-dot collision, I basically don't get how it should work < 1237573203 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Just like the _'s are scanned < 1237573213 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Or wait < 1237573216 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So the topleftmost one moves first, then collides with whatever < 1237573218 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :First the east-west collisions < 1237573222 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then the north-south collisions < 1237573229 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For instance your example < 1237573234 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the east-west ones are scanned top-down < 1237573236 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : V < 1237573237 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Darn < 1237573241 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : V < 1237573243 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :->.. < 1237573248 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : .<- < 1237573249 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and north-south are scanned left-right < 1237573258 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If we have that, to me it seems like there's no collision < 1237573262 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :first east-west, so the 2 .. dots would collide < 1237573265 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :then only 1 . dot is left < 1237573269 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so no collisions left < 1237573274 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and the . dot does NOT move < 1237573279 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :because it was blocked earlier < 1237573289 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237573289 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So, uh, what? < 1237573291 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So uh < 1237573292 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The topleft . moves < 1237573294 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :with my example < 1237573297 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It hits the topright one < 1237573302 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :No, it's different < 1237573306 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If it detects a collision < 1237573308 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :anywhere < 1237573314 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Then it scans the board for east-west collisions < 1237573317 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :top to bottom < 1237573320 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :O_o < 1237573322 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And it removes them < 1237573326 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Inefficient much? :-P < 1237573329 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Then it scans the board for north-south collisions < 1237573331 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :left to right < 1237573333 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and removes them too < 1237573338 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So what about that one < 1237573343 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There are no east/west or north/south collisions < 1237573349 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but? < 1237573360 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, I care about my idea < 1237573363 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :To me it seems like, if they all move at the same time, we just have the next state be: < 1237573369 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :that some combos create walls < 1237573371 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237573372 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and some don't < 1237573372 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : .. < 1237573375 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Darn < 1237573379 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I meant < 1237573380 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237573380 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1237573387 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :well < 1237573393 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1237573395 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The topleft one moved east, the topright one moved south, the lower right one moved west < 1237573398 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So it's all OK < 1237573401 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237573407 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :At the end of it, no two are on top of each other < 1237573432 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :What about "if more than 2 dots collide (as in, collide, not what I did there), all are bounced" < 1237573433 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so for example < 1237573438 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : V < 1237573439 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I guess this cuts back to a bigger issue < 1237573441 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :->.. < 1237573447 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237573449 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : " < 1237573453 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which is: how exactly are moves timed < 1237573455 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :er, ^ < 1237573467 0 :neldoreth!unknown@unknown.invalid QUIT :"leaving" < 1237573471 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237573471 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1237573476 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think they should be handled top-left < 1237573495 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If a dot detects a collision < 1237573501 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it handles it with the exceptions < 1237573505 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :no multiple collision :P < 1237573514 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it's handled all at once :) < 1237573518 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and no prob < 1237573530 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so my example: < 1237573530 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but that still doesn't say how they move (I don't think) < 1237573532 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : V < 1237573535 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :->.. < 1237573539 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : .<- < 1237573543 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :will be on the next cycle < 1237573553 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : .<- < 1237573561 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i know i failed < 1237573565 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But, uh < 1237573572 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aren't 1/1 supposed to create a wall? < 1237573578 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So < 1237573581 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :well, yes they are < 1237573585 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : # < 1237573588 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : .<- < 1237573591 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1237573591 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237573596 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :that's how it will work < 1237573603 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :get it or not < 1237573616 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :"Program ends when there is no more dots moving." <-- So shorter cat example would die in gen 2, since inputs are only spitted out every other generation? < 1237573619 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's still not 100% clear with regard to what you said about detecting all collisions at once < 1237573623 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: Shush, that's question 13 < 1237573627 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237573640 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm changing the spec < 1237573658 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Firefly: Uh, no more dots moving AND no _'s < 1237573662 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :change it to that < 1237573671 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: So if a dot has participated in a collision, it won't collide with anything else any more < 1237573678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I think that disambiguates it completely < 1237573691 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, if it patricipated in a collision, the exception is carried out < 1237573696 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so it changes either into a wall or nothing < 1237573699 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :therefore the dot ceases to exist < 1237573700 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Hm, what about multiple _'s then? < 1237573705 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I explained that! < 1237573706 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: I asked that already < 1237573710 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Ah < 1237573719 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The rules are a mess of a mess of King the Mess < 1237573727 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but go on, Deewiant < 1237573729 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: So basically the dots are instantaneously destroyed/walled half-way through an iteration < 1237573731 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I want to finish this < 1237573736 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Yeppers < 1237573737 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :i mean < 1237573739 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1237573740 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yeppers < 1237573772 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :More Q's? < 1237573778 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Simplish question: what does 'ASCII files' actually mean? Is non-ASCII an error? (You probably just meant that #,.= etc are ASCII and not EBCDIC) < 1237573781 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, a few < 1237573792 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ASCII files as in not Unicode < 1237573797 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but if you want < 1237573800 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :you can add Unicode support < 1237573803 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but you don't need to < 1237573817 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :This is not a rule but more of a "Unicode not needed" < 1237573818 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, but since the only commands are all ASCII anyway < 1237573822 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237573830 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but some Japanese nerd might want Unicode for comments < 1237573831 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't really make a difference whether you say "not Unicode" or not :-P < 1237573839 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so ok < 1237573840 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :go go on < 1237573851 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah, okay, so you're just saying that impls don't need to support anything beyond ASCII < 1237573861 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237573866 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :they don't even need to support extended ascii < 1237573868 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, few longer questions now < 1237573868 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :just chars 0-127 < 1237573878 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :IO is basically binary < 1237573879 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and I/O is still handled as ASCII < 1237573881 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Yep < 1237573903 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So what happens if the OS provides IO which can't be done at bit granularity < 1237573911 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in, it sends bytes? < 1237573915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1237573922 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Then the bit separation must be carried out by the interpreter < 1237573926 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1237573939 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So then, what if the FIFO contains a single 1 < 1237573943 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And is flushed to stdout < 1237573952 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Is that 0b10000000 or 0b00000001 < 1237573957 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Is that system-dependent? < 1237573960 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0b00000001 < 1237573971 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What about on big-endian machines? < 1237573983 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, it should be 0x01, whatever the binary result is < 1237574004 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237574006 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :a single 1 < 1237574009 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :should be output as 0x01 < 1237574010 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So basically a DOBELA program always sees a little-endian world < 1237574015 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Probably < 1237574026 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(I think. Or big-endian. Whatever.) < 1237574028 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237574039 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think it just inputs data converted to little-endian < 1237574047 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and outputs data converted from little-endian to whatever the OS needs < 1237574069 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, that's basically what I meant < 1237574074 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237574076 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :how much more < 1237574077 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Alright, then what FireFly said earlier < 1237574081 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Just three < 1237574083 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Including this one < 1237574083 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237574084 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :go on < 1237574094 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :quote what firefly said earlier < 1237574099 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Although I guess you responded to that already < 1237574104 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :About program ending when there are no more dots < 1237574110 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : Firefly: Uh, no more dots moving AND no _'s < 1237574124 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And to clarify, I guess you mean that the program runs as long as _ has not hit EOF < 1237574125 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So if the program has no _'s, the program end when there are no more dots moving < 1237574133 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I guess you'd have to include :'s too? < 1237574146 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No, you don't have to < 1237574149 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Also < 1237574151 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You can, though :-P < 1237574154 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: ? < 1237574165 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :if the program has _'s, program ends when 0x00 is send via the FIFO < 1237574182 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :sent* < 1237574183 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So, what? < 1237574186 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in < 1237574190 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :you clear the FIFO < 1237574196 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so it contains nothing < 1237574200 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Outputting it, it appends the zeros < 1237574202 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so it's 0x00 < 1237574213 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And if 0x00 is detected by the outputting mechanism < 1237574215 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the program ends < 1237574222 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That seems awfully limiting < 1237574224 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :no matter if there's no _'s or there are _'s < 1237574228 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :well, ok < 1237574232 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since now a DOBELA program can't output 0x00 < 1237574241 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Why should any program output 0x00 anyway < 1237574247 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Binary files? They do exist < 1237574267 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :It could be nice for compilers < 1237574269 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :E.g. you make a JPG encoder in DOBELA < 1237574270 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or whatever < 1237574273 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237574279 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So, any proposals? < 1237574285 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: I think it just makes sense that the conditions are: no dots, and _ has not hit EOF < 1237574291 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237574296 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh < 1237574299 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it can work < 1237574307 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :So now < 1237574309 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :another question < 1237574315 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I think 1 or 2 left < 1237574318 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Do dots conceptually carry on moving forever? < 1237574323 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Meaning < 1237574329 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you have a dot go off the edge of the original file < 1237574336 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Is it an infinite loop since that dot lives forever < 1237574339 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or is it destroyed < 1237574345 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, this is interpreter-dependent < 1237574353 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But the board size must be a minimum of 256x256 < 1237574353 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :How so < 1237574359 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but < 1237574365 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Interpreter supported size or not < 1237574370 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in, if the TXT file is <256x256, the board is 256x256 < 1237574372 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If a dot goes off the edge of the original file < 1237574379 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't matter what the board size is < 1237574388 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since dots only matter if they collide with something < 1237574396 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It is destroyed < 1237574405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: If a dot goes off a 32x32 TXT file, it is gone for all practical purposes < 1237574412 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The only difference is the concept < 1237574418 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Does it live forever in the void or not :-) < 1237574435 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So if it's destroyed, that means it dies, okay < 1237574439 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Last question < 1237574440 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :well, no interpreter supported size then :P < 1237574450 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Yeah, since it doesn't really matter, only as far as can it load the orig file < 1237574455 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Last q < 1237574456 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :_ < 1237574457 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :# < 1237574459 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What happens < 1237574469 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Equally well .=# or whatever) < 1237574487 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Hm < 1237574489 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: Can the dot be superimposed over the _ or = there, or what? < 1237574500 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237574505 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the dot needs an empty space to be output < 1237574508 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so if this happens < 1237574510 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :nothing is output ever < 1237574513 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :from that _ < 1237574514 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it's ignored < 1237574517 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237574518 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So what about .=# < 1237574521 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :The spec never says that the original (hardcoded) dots should move east? < 1237574525 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: yes < 1237574540 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: .=# ? < 1237574541 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The dot is destroyed too < 1237574546 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :or no < 1237574547 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :no no noo < 1237574552 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It bounces off < 1237574553 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::-D < 1237574554 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :changed < 1237574557 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237574558 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cycle 1: < 1237574562 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :.=# < 1237574563 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cycle 2 < 1237574565 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :,=# < 1237574566 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cycle 3 < 1237574574 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric : =# (the dot moved west, offscreen) < 1237574576 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ookay < 1237574582 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So for =# it bounces < 1237574584 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237574587 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :For _# it just dies < 1237574593 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Crazy :D < 1237574595 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What about v# < 1237574595 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237574598 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :v# < 1237574598 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And :# < 1237574600 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237574601 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :waaaiiit < 1237574611 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: I think making this consistent would be a good idea :-P < 1237574615 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asiekierka: I.e. one rule covers all < 1237574623 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(Destruction would be fine IMO) < 1237574641 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, = is an exception since it's pretty much one of the most important parts of a DOBELA program < 1237574643 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I have to go now myself, this isn't important so you can answer later -> < 1237574643 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :in all other cases < 1237574645 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :destroyed < 1237574649 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so, done < 1237574653 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why exception? < 1237574658 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Whatever, but seems silly < 1237574664 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anyhoo, gone now < 1237574665 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237574666 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Ah, now I found the default direction < 1237574666 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :bye < 1237574688 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237574691 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :they move east by default < 1237574698 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so if the TXT file already contains a dot < 1237574700 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it moves east < 1237574706 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Yeah < 1237574708 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Um < 1237574709 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :until it bounces off something or whatever < 1237574742 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Wait, wouldn't ".." turn into " #" first gen? < 1237574755 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237574760 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :it is still turned into that < 1237574767 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :,.,,.,,,,..,,.,.,..,..,,,..,..,,,..,....,,.,,,,.,,,,.,., $ < 1237574770 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric := Hello! < 1237574778 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well, in the FIFO < 1237574785 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :cuz it doesn't yet have a generator to output stuff < 1237574790 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and even then, it can't delay dots < 1237574798 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But I can! < 1237574801 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :manually < 1237574805 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Hm < 1237574823 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Oh well < 1237574824 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :gotta go < 1237574826 0 :asiekierka!unknown@unknown.invalid NICK :asie[away] < 1237574835 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I'll enjoy playing around with this some day < 1237574839 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Okay < 1237574844 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Me too, -> < 1237575774 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :<- < 1237575823 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :what do these arrows mean? < 1237575924 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :-> = away < 1237575944 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and <- means back < 1237575944 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Or, away from nick = from computer < 1237576135 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: I realized that about 3 minutes after I left; that 'Hello!' program can't possibly work with the collision semantics he described < 1237576149 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Me too < 1237576159 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hey, you're supposed to be [away] < 1237576160 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :It would need spaces after each dot < 1237576164 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237576167 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I'm only here for a short period of time < 1237576172 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :too short to change the ncik < 1237576173 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asie[away]: So you think that that behaviour is still preferable? < 1237576176 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :nick* < 1237576178 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :[i=dontbanm < 1237576192 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Well, this was for another channel < 1237576196 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :with a bunch of jerks < 1237576203 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :that do insane stuff for insane reasons < 1237576206 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :banned me for nothing < 1237576214 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. that ' ..' is ' #' if they're moving east but it's '.. ' if they're moving west < 1237576220 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Sounds evil < 1237576223 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It seems awfully inconsistent to me < 1237576229 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Well, no < 1237576241 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :The "collision" works only if they both move in opposite directions < 1237576248 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :If they move in the same direction, they just move < 1237576255 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :By opposite do you mean different < 1237576258 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or opposite < 1237576260 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237576264 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :one dot left and the other right < 1237576267 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :And if >v < 1237576269 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :one dot north and the other south < 1237576278 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asie[away]: You're contradicting what you said earlier < 1237576286 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :I need to change the specs < 1237576298 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2009-03-20 19:25:31 ( asiekierka) V < 1237576299 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2009-03-20 19:25:35 ( asiekierka) ->.. < 1237576299 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2009-03-20 19:25:38 ( asiekierka) .<- < 1237576299 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2009-03-20 19:25:42 ( asiekierka) will be on the next cycle < 1237576299 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :2009-03-20 19:25:53 ( asiekierka) .<- < 1237576301 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Eg. one to the right, one downwards < 1237576304 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :asie[away]: That's what you said earlier < 1237576307 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Well, i'm changing the specs < 1237576308 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :I said < 1237576310 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Now it'll be < 1237576317 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Now it'll be what I said? :-) < 1237576317 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :All right < 1237576317 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :the left-moving dot moves on cycle 1 < 1237576322 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :then the south-moving dot on cycle 2 < 1237576327 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :and the right-moving dot on cycle 3 < 1237576328 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, so no collision < 1237576331 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And it ends up as: < 1237576331 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237576333 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576334 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1237576338 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Okay, good < 1237576338 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :except if something happens like this: < 1237576342 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :"->..<-" < 1237576344 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :then a collision happens < 1237576348 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yay < 1237576353 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That's what I've already implemented < 1237576358 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So I won't have to change it ;-) < 1237576361 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1237576385 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So then there's an additional question though < 1237576393 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :->. .<- < 1237576396 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576397 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Darn < 1237576399 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Anyway < 1237576405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Lower dot is also moving to the same point, north < 1237576408 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What happens? < 1237576441 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Well, then the collision "->. .<-" is first carried out < 1237576447 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237576457 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :This makes no sense :-P < 1237576465 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :priority: < 1237576467 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :1) collisions < 1237576468 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You have totally arbitrary different rules for different situations >_< < 1237576469 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :2) being blocked) < 1237576475 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :3) moving < 1237576482 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :So if there is a collision, it's carried out < 1237576488 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :if not and a dot is blocked, it doesn't move < 1237576506 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :and if the dot is not colliding nor blocked, it just moves in whatever direction it should. < 1237576507 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Previous example was a collision of 3 dots < 1237576517 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :I changed the rules < 1237576520 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :They all move simultaneously < 1237576530 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :A "collision" is when two dots hit that are moving in opposite directions < 1237576541 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Aha < 1237576541 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :and -> and ^ is not opposite < 1237576544 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So what happens < 1237576546 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :So first collisions < 1237576547 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :->. < 1237576549 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576550 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : ^ < 1237576554 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :[19:14:31] You have totally arbitrary different rules for different situations >_< < 1237576555 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Er crap < 1237576559 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :uh < 1237576560 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :->. < 1237576560 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237576562 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576563 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : ^ < 1237576564 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That one < 1237576567 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What happens < 1237576579 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Requires an asie~ platform for the intp < 1237576581 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :You know how i said scanning is topleft? < 1237576584 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : ->. < 1237576587 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576589 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : ^ < 1237576591 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :is cycle 2 < 1237576591 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, and you've contradicted that twice now < 1237576593 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :cycle 3 is < 1237576597 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : ->. < 1237576600 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576602 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : ^ < 1237576604 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :then cycle 4 < 1237576605 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Er what? < 1237576612 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :The lower . never moves? < 1237576616 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :it does < 1237576617 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :in cycle 4 < 1237576627 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why the hell in cycle 4 < 1237576633 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1237576634 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :it can in cycle 3 < 1237576635 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why not in cycle 2 < 1237576635 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1237576638 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean < 1237576644 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :Because it is blocked in cycle 2 < 1237576644 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or wat < 1237576649 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Are you saying that < 1237576649 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :isn't it? < 1237576658 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :cycle 1 is < 1237576658 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :. < 1237576659 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576661 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :cycle 2 is < 1237576663 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576664 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : . < 1237576666 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :cycle 3 is < 1237576668 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric : .. < 1237576678 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah okay < 1237576682 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So in other words... < 1237576685 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What you've been trying to say is < 1237576719 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If two dots would go in the same spot but they're not moving in opposite directions, the later dot simply doesn't move < 1237576732 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1237576739 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :remember the board is scanned left-right, top-down < 1237576747 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :that's the trick that makes it work < 1237576747 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I remember that :-P < 1237576753 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237576755 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :any other questions? < 1237576761 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not right now < 1237576765 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Maybe in 5 mins ;-P < 1237576782 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :sadly < 1237576784 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :i'm going now < 1237576786 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :again < 1237576933 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D, tricky rules indeed < 1237576950 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :You know < 1237576958 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :I think I must send DOBELA to Hell < 1237576966 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :They will find an use for it < 1237576976 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :"Code MS-DOS in DOBELA" < 1237577468 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :In the end the rules weren't so tricky, a few exceptions I couldn't predict (.=# and the non-opposite collisions) but other than that it went the way I guessed < 1237577532 0 :Hiato!n=1@dsl-245-1-23.telkomadsl.co.za JOIN :#esoteric < 1237577644 0 :javahorn!n=shriani_@122.167.62.39 JOIN :#esoteric < 1237579397 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :back < 1237579405 0 :asie[away]!unknown@unknown.invalid PRIVMSG #esoteric :well, sort of < 1237579407 0 :asie[away]!unknown@unknown.invalid NICK :asiekierka < 1237579447 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I need to start working on Esoppy < 1237579457 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :As in, a floppy disk with a very simple FS < 1237579463 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :running esolang programs and ASM programs < 1237579469 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :from esolang programs, BF will be there < 1237579475 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :for sure < 1237579478 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Some other langs too < 1237579481 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but remember < 1237579485 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the apps must be in ASM < 1237579598 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :sounds great < 1237579622 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The bootsector only needs to read the file 00 and execute it < 1237579641 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :as in < 1237579648 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :read sector just after the bootsector < 1237579656 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :read the first 2 bytes < 1237579662 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :decode them to be the head, cylinder and sector < 1237579666 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :read from there < 1237579671 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :get the data (sector size) < 1237579676 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :load all the sectors < 1237579685 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and execute the OS from there < 1237579706 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Sounds interesting < 1237579727 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :But, this comp has no floppy drive :( < 1237579730 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1237579732 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :you can use an emulator < 1237579736 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but it also should work on HDDs < 1237579763 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It can be used with HDDs anyway < 1237579769 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It just needs some switches < 1237579775 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Or USB < 1237579777 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I must test it though < 1237579795 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But I need some data on the limits of HDD geometry < 1237579803 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so I can know how much bits to allocate for what < 1237579812 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :why? Because I want this to work on USB too < 1237579925 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Basically, I need to allocate 6 bits for the sector, 8-10 for the cylinder and 1 for the head AFAIK < 1237580078 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And I don't know how will I realize the detection of the medium I booted from < 1237580084 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Cuz booting from floppy disk is easy < 1237580085 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :very easy < 1237580097 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :But modifying it to work from HDD is hard < 1237580114 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :16-bit? 32-bit? 64-bit? < 1237580122 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Probably 16-bit < 1237580132 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :because I want to use interrupts < 1237580137 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and don't want to make it too hard < 1237580145 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :I could use Unreal Mode though < 1237580145 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1237580151 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :which allows to execute 32-bit commands in 16-bit mode < 1237580193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1237580211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone here know if you can add in a rpath entry in a ELF binary *after* linking < 1237580212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I don < 1237580220 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't* want to recompile this huge program < 1237580242 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't see why not < 1237580259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm what about tools to do it? < 1237580262 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You might have to mess with some other offsets though < 1237580269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I guess so < 1237580276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Don't know about tools < 1237580302 0 :FireFly!unknown@unknown.invalid QUIT :"Brb..." < 1237580311 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1237580695 0 :asiekierka!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1237580737 0 :asiekierka!i=dontbanm@078088180066.elblag.vectranet.pl JOIN :#esoteric < 1237580738 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :oops < 1237580743 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :accidentally closed my IRC window < 1237580794 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :at least you didn't lose any verbs in the process < 1237580910 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, you forgot to swat me < 1237580916 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1237580927 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that was just a hitch < 1237580960 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION swats FireFly twice as compensation -----### -----### < 1237580968 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237580980 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Hm < 1237581093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm It seems the rpath is in the .dynamic section < 1237581147 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There seem to have been some plans in Solaris to add some free space in all ELF files so that they can be more easily tweaked: http://blogs.sun.com/ali/entry/changing_elf_runpaths < 1237581217 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That suggests it's not completely trivial to do without it. (Although I don't see why it wouldn't work if you actually bother fixing all those other offsets that change.) < 1237581265 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1237581266 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Swatmania! < 1237581321 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1237581322 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i do recall some online game where you swatted mosquitoes... < 1237581339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway the issue is I needed to install a newer gcc in a prefix to be able to build llvm correctly, and I wish to add a rpath to llvm-gcc since it now depends on libstdc++ from this newer gcc. < 1237581356 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :many years ago < 1237581358 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :system gcc is 4.1.2, prefixed gcc is 4.3.3, llvm gcc is 4.2.1 < 1237581366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is rather a mess < 1237581383 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I don't want to have to recompile one or more gcc's just to make this work... < 1237581613 0 :psygnisfive!unknown@unknown.invalid QUIT :Remote closed the connection < 1237581651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm I suspect recompiling will be easier in fact < 1237581660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if the dynamic section had been last... < 1237581726 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also I thought bootstrapping gcc would work around it.. < 1237581934 0 :tombom!i=tombom@wikipedia/Tombomp JOIN :#esoteric < 1237582129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah I see.. < 1237582658 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1237583509 0 :StelK!n=babbolo@host120-238-dynamic.23-79-r.retail.telecomitalia.it JOIN :#esoteric < 1237583539 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :Hi < 1237583550 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1237583553 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what brings you here? < 1237583571 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I think it's the orgies on speed < 1237583581 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err... on IRC, is that even possible? < 1237583602 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I'm looking for some idea to code a new esolang < 1237583665 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as in, you have the esolang idea, and need it coded? < 1237583669 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or want to code something and don't know what? < 1237583674 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I didn't expect to find so many people in a esolang-related channel < 1237583678 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :the second one < 1237583690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :this is the main esolang discussion place anywhere, as far as I know < 1237583702 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although it would be great if there was an even bigger secret one I didn't know about < 1237583708 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I've got plenty of ideas that I need a chump^H^H^H^H^H experienced programmer to write an interpreter < 1237583723 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :nic < 1237583725 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :*nice < 1237583738 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :http://esolangs.org/wiki/Category:Unimplemented may give you some ideas < 1237583757 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Hm < 1237583760 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although note that some of those are awful, and some are theoretically impossible to implement < 1237583763 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Forgot to put Limp in here. < 1237583770 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I've already read that < 1237583777 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I think Primordial < 1237583805 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Owait, it is < 1237583810 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Under ??µp < 1237583813 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :is quite nice... but there not enough specification to create an interpreter < 1237583818 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wtf, why is Easy in the unimplemented section? < 1237583825 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :has really nobody bothered to implement it all this time? < 1237583829 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :'cause easy is hard :( < 1237583841 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Also I'm an English interpreter < 1237583841 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no it isn't, it's basically BF with the program and input streams mixed up < 1237583875 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Hi^Hello < 1237583898 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :if you don't mind implementing something that's been implemented before, implementing functional esolangs can be instructive < 1237583906 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like Underload (relatively easy), or Unlambda (Much harder) < 1237583944 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :Well.. I've created two simple esolangs until now, SPL and P in the Wiki... so I'd like to create something new < 1237584008 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Try to do something like DOBELA < 1237584012 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :esolangs.org/wiki/DOBELA < 1237584018 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :Or limp < 1237584022 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :something with relatively tricky specs and totally weird syntax < 1237584027 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :I hear limp is an awesome functional esoland < 1237584027 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :g < 1237584046 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :The spec is currently v11b and needs to be fixed < 1237584115 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Also, don't alter BF. < 1237584122 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It has been done waaaay too much times < 1237584145 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :yeah I know < 1237584156 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Also, $ = ,^ in SPL doesn't it? < 1237584160 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :already done it one time < 1237584209 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :If you're very bored, implement DOBEL---oh wait, Deewiant is already doing THAT. < 1237584241 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I'll try to come up with something new :D < 1237584250 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And the spec wasn't updated so you'd do it wrong anyway :-P < 1237584253 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Interpret Sir. Cut < 1237584258 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1237584273 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :I like some of the ideas in that lang < 1237584296 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Also, I'm making (with little idea help from ais523) the MiniShell < 1237584310 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the most important purpose of it is to run esolangs from a floppy disk without dependence from any OS < 1237584315 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but it can also run mini ASM programs < 1237584335 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :show 80x25 color ASCII art < 1237584345 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :And uses a simple FS which uses 256 numbered files without names < 1237584346 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :00-FF < 1237584353 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :the number (in hex) is the name < 1237584355 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, gotta go < 1237584357 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :in a sec < 1237584360 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but whaddya think < 1237584542 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :It is planned for it to run programs in MiniMAX, MinIScule and Barely for v0.01 < 1237584550 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Why? Because they have ASM interpreters < 1237584558 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :nice < 1237584562 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Especially MiniMAX cuz it is independent < 1237584579 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and with about 6-10 lines of ASM code, it's very small < 1237584581 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :but needs I/O < 1237584587 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :are you running asm, or machine code? < 1237584616 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :compiled ASM = machine code < 1237584619 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so yep, machine code < 1237584629 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :a PC runs machine code, which is compiled ASM < 1237584662 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Running "compiled X" doesn't really say anything at all about what you're actually running :-P < 1237584735 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so i'm running machine code < 1237584740 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and i'm writing in Assembler < 1237584752 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I take issue with that usage of the word "assembler" < 1237584765 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Assembly" is the language, "assembler" is the compiler, dammit! < 1237584768 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ohh < 1237584770 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1237584774 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :s/Assembler/Assembly < 1237584790 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :Also, seems MinIScule uses DOS interrupts < 1237584798 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and that'll need a bit of rewriting < 1237584975 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :nor the links work < 1237584977 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :so :/ < 1237585194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0000 - plain/undeclared < 1237585194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0001 - Machine Code < 1237585194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0010 - BF < 1237585194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0011 - MiniMax < 1237585194 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0100 - 4Kbyte Screen art < 1237585201 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :this is the types of files I plan for 0.1 < 1237585209 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :at least 0000, 0001 and 0100 < 1237585314 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :well, I don't exactly need to implement 0000 < 1237585319 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :and 0001 is very easy < 1237585334 0 :asiekierka!unknown@unknown.invalid PRIVMSG #esoteric :0100 is easier < 1237585567 0 :StelK!unknown@unknown.invalid PRIVMSG #esoteric :I gotta go see you < 1237585590 0 :StelK!unknown@unknown.invalid QUIT :"good bye" < 1237585631 0 :psygnisfive!n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1237585770 0 :asiekierka!unknown@unknown.invalid QUIT : < 1237586883 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1237586893 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1237587629 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :What's asiekierka's language? < 1237588497 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Remote closed the connection < 1237588534 0 :rideauli!n=rideau@78.225.89.48 JOIN :#esoteric < 1237588543 0 :rideauli!unknown@unknown.invalid PART #esoteric :? < 1237590309 0 :zzo38!n=zzo38@h24-207-48-53.dlt.dccnet.com JOIN :#esoteric < 1237590352 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I wrote a program in CLCLC-INTERCAL to output 1 to 2000 in Roman numbers but I can't test it. Can you look and tell me if you found a mistake, or another comment about this program < 1237590369 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: would it run in CLC-INTERCAL? < 1237590373 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I can run it in that < 1237590380 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or does it rely on CLCLC-INTERCAL specific features? < 1237590419 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It uses CLCLC-INTERCAL specific features < 1237590429 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :assign to constants is legal in C-INTERCAL, by the way < 1237590434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :with a compiler switch < 1237590485 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, how does the addition work in your program/ < 1237590546 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :My program has no addition. The way [I think] it works is based on the && operator and also how CLCLC-INTERCAL assigns to expressions (which may not be always the same as other INTERCALs) < 1237590637 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Is there still something else you do not understand about it < 1237590677 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :so addition works using the && operator? < 1237590731 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :No, the && operator doesn't do addition. The && operator allows you to learn a lecture inside of a expression. < 1237590739 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I just don't see why assigning to the result of a learnt lecture would add 1 to a number < 1237590791 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't. The interpreter would try each value of .1 (the left side of the lecture) in order, and stop when the value of .1 causes .1&� to have the value #2000 < 1237590819 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It starts at zero but it won't output zero because it is abstained the first time < 1237590848 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1237590854 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can't rely on that behaviour, surely < 1237590884 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe not in CLC-INTERCAL but in CLCLC-INTERCAL it is specified that this kind of behaviour is standard < 1237590907 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's incredibly inefficient < 1237590923 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :assigning to expressions should be done by using the inverse of the expression, obviously < 1237590979 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :For expressions that have inverses that will work (as long as they are not overloaded to other expressions) but the && operator doesn't have a inverse so it has to try each one until one of them works < 1237591002 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... < 1237591012 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder what happens if you try to reverse-assign to a created expression in C-INTERCAL? < 1237591017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's pretty similar to what you're doing < 1237591017 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Also note that in CLCLC-INTERCAL, when assigning to a expression only the far left side of the expression is the register which will be changed (even if it is a constant!) < 1237591031 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :err < 1237591039 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about DO .1 $ .2 <- #10 < 1237591063 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :What does the "LC" in CLC-INTERCAL stand for? < 1237591066 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bad example... < 1237591070 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DO .1 $ .2 <- #11 < 1237591078 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: CLC is Claudio Calvelli's initials < 1237591080 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :In CLCLC-INTERCAL .2 has to have the correct value already if it doesn't then it is a fatal error < 1237591085 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Ah < 1237591089 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's incompatible with other INTERCAL implementations < 1237591092 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :very incompatible, in fact < 1237591114 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It's INTERCAL, so who cares about compatibility with other INTERCAL implementations? < 1237591134 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Claudio and I care a lot about compatibility < 1237591139 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after all, no other language seems to < 1237591163 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Then just use compatibility mode if you want to be compatible < 1237591261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ICL277I YOU CAN ONLY DISTORT THE LAWS OF MATHEMATICS SO FAR < 1237591265 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... I'm not surprised < 1237591279 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : PLEASE DO CREATE (4) t < 1237591280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : DO .1 t .2 <- #3 < 1237591282 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : DO GIVE UP < 1237591283 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(4) DO .1603 <- .1601 $ .1602 < 1237591284 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric : DO RESUME #1 < 1237591305 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :an error is more or less the best you can hope for with code as insane as that < 1237591470 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :please explain that codence < 1237591484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: ok, the first line defines a new operator t < 1237591488 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :whose code is found starting at (4) < 1237591496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the second line assigns .3 to .1 t .2 < 1237591507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that's known as a reverse assignment, and is one of the less sane operators in INTERCAL < 1237591510 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it has a lot of limitations atm < 1237591527 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then the third line exits, and the last two lines are the definition of t, which doesn't really matter to make the point < 1237591573 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :err < 1237591586 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :what's so insane about that < 1237591620 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh the fact it needs to find the reverse of an arbitrary operation < 1237591638 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :that's used to make a loop? how? < 1237591650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't make a loop in C-INTERCAL < 1237591664 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :The output 1 to 2000 program was wrong but now I fixed it. The third line now says DO .1&&.1 <- #2000 it used to say DO .1&� <- #2000 but that was wrong < 1237591669 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :apparently zzo38's mandating that in CLC-INTERCAL, the way it reverses an operation is to try all possibilities until one works < 1237591712 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :ais523: s/CLC-INTERCAL/CLCLC-INTERCAL/ < 1237591722 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :correction accepted < 1237591845 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :but wouldn't it be kinda weird for it to actually produce incorrect output and only then realize it failed to reverse it < 1237591849 0 :MigoMipo!unknown@unknown.invalid QUIT :"QuitIRCServerException: MigoMipo disconnected from IRC Server" < 1237591984 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :also is #2000 simply the constant 2000_10? < 1237592008 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes, # introduces a decimal number < 1237592033 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :for a moment i thought numbers were given in some weird format, but it was probably just the prefix bluffing my brain or something < 1237592059 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :because i remember seeing things like #65536 (or 65535, or different prefix, but anyway) < 1237592081 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't backtrack any side-effects of the expression (such as attending a lecture or overloading) so you can do anything inside the lecture and it won't care. A fatal error is still a fatal error (or maybe it can be defined a different way instead, that a fatal error in this case backtracks?) < 1237592095 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: what if there's a choicepoint inside the lecture? < 1237592104 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and someone backtracks into it? < 1237592108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what happens in a multithreaded program? < 1237592123 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :then if it's specified clclc tries the values in order, that is a very elegant way to write the program imo < 1237592144 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :in fact something i'd like to see a language based on < 1237592202 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :If someone backtracks into a choicepoint inside the lecture then it will backtrack the implicit loop also and continue trying different values for .1 where it left off. And in a multithreaded program it will only deal with the current thread, values in other threads are unaffected and there is no guarantee what order it will output in < 1237592215 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :am i misunderstanding something here, why are you asking zzo38 how things work, isn't there a spec? < 1237592216 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, I agree, reading this a bit makes it sound really interesting < 1237592298 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1237592309 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :prolog is based on that isn't it kinda < 1237592334 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :assuming you define naturals, and it tries them in order < 1237592370 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :no wait < 1237592392 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :of course it won't continue if the expression gives the wrong answer, it just tries out all the right answers < 1237592394 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :nm < 1237592453 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :was zzo38's idea that the function to be reversed had the side-effect of always writing out the current number being tried? < 1237592482 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: yes, that's how it worked < 1237592496 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: I was referring to timing issues between the threads < 1237592502 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and can't that be done in prolog, basically you say X is an integer, then you say X satisfies P, and P's definition prints X's value < 1237592509 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :then you say X needs to be 2000 < 1237592509 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :certainly, you wouldn't expect an expression to take several thousand ticks < 1237592512 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :O, I forgot one thing about what it should do if the student is an array. And I'm not sure what it should do in that case. < 1237592574 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you can in prolog but I don't know much about prolog < 1237592583 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yes but ais523 does < 1237592604 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :and i think i do, although i haven't really used it < 1237592629 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :zzo38: in Prolog, integers are special-cased for sanity < 1237592641 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although that sort of thing works "fine" (although inefficiently) if you define integers yourself < 1237592647 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :rather than relyingon the stdlib definition < 1237592653 0 :zzo38!unknown@unknown.invalid PRIVMSG #esoteric :I have a question that you can help me define the spec of CLCLC-INTERCAL: What should it do if you assign to a && expression where the student is an array < 1237592661 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ais523: was that an answer to me as well? < 1237592671 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: possibly, I'm tired and confused < 1237592686 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :ais523: what does it mean they are special-cased? < 1237592700 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oklofok: look up the is operator < 1237592711 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :err why < 1237592715 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I mean, they don't work anything like the rest of the language < 1237592723 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they're syntactic-sugared loads < 1237592731 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and none of the arithmetic operators are interchangeable < 1237592733 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :wait what are loads < 1237592746 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :wait what do you mean interchanceable < 1237592757 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :anyways is is just something that tests two numbers for equality < 1237592758 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :interchangeable means you can swap around what's the result and what's the arguments to a predicate < 1237592765 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and no, is doesn't test for equality < 1237592772 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh it doesn't? < 1237592774 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :X is 2+2 binds X to 4 < 1237592778 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :2+2 isn't an expression in Prolog < 1237592782 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1237592786 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yes yes < 1237592786 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's just an inert term, '+'(2,2) < 1237592804 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is basically recursively evaluates terms which look like arithmetic expressions < 1237592835 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :yes anyway i know they're not interchangeable, and that prolog doesn't understand math < 1237593055 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, going home < 1237593060 0 :ais523!unknown@unknown.invalid QUIT :Remote closed the connection < 1237593214 0 :zzo38!unknown@unknown.invalid QUIT :"because ais523 quit"