< 1231804812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oi, revel in its awesomosity < 1231804827 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :It reminds me of... < 1231804830 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, forth is a fun language < 1231804834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but why upper case? < 1231804842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is it to show it is a SERIOUS LANGUAGE? < 1231804845 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;D < 1231804847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ANS Forth only guarantees that the standard routines are available in uppercase form < 1231804855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, generally, you just TURN ON THE CAPSLOCK AND TYPE < 1231804881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: of... < 1231804886 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well. ok. but I mean upper case only languages reminds me of COBOL and SQL. Not a nice combination < 1231804898 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even though SQL is okish < 1231804902 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :: CAT [ , . ] ; < 1231804904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Forth is mainly used for embedded work. It's not pretty. It's a pretty closed-world system. < 1231804912 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true < 1231804912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: That's essentially it :P < 1231804923 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean, key returns as soon as one keyboard key is pressed. < 1231804926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it also reminds me of INTERCAL < 1231804938 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and if you press , it just does a carriage return and goes to the start of the line < 1231804943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no new line, no clearing of the current one < 1231804957 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1231804961 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s/carriage return/line feed/ < 1231804963 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Are you trying to tell me that KEY gets a keystroke? < 1231804966 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it wants CRLF? < 1231804966 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or w/e < 1231804968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: yes < 1231804970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no < 1231804975 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err what? < 1231804990 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :A line feed goes to the start of the line and does not give you a new line? < 1231804998 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :In other words, it returns the carriage and does not feed a line? < 1231805005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, okay, it's a carriage return < 1231805013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but in forth, the word CR prints a carriage return/line feed so :P < 1231805014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :confusing < 1231805030 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed confusing < 1231805044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gah, my nc is not BIG_GAPING_SECURITY_HOLE'd < 1231805049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to make it so < 1231805099 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :make it .so < 1231805213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kfdfhgf < 1231805280 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :someone give me a working netcat < 1231805358 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Didn't I have a befunge interpreter in forth somewhere? Maybe I should try enhancing it to do funge-98 some day... < 1231805368 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: INIT-USER ." USER forthbot forthbot forthbot forthbot" CR ; < 1231805368 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: INIT-NICK ." NICK forthbot" CR ; < 1231805370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: INIT-JOIN ." JOIN #esoteric" CR ; < 1231805372 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: INIT INIT-USER INIT-NICK INIT-JOIN ; < 1231805374 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: MAIN-LOOP ; < 1231805376 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: RUN INIT MAIN-LOOP ; < 1231805378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is that good style? :P < 1231805408 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION takes a look at su < 1231805469 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Here's my Forth style, but I have no idea whether it's good or not; probably not: http://zem.fi/~fis/be.fs.html < 1231805518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BE-GETC is vey long < 1231805525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you have stack diagrams up the wazoo < 1231805590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wazoo? < 1231805612 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :They are aligned in vim; I think the syntax/2html.vim gets confused by them tabs somehow. < 1231805628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, wazoo - Zoo in, Washington, US < 1231805628 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1231805635 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/in,/in/ < 1231805647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: yes but you're not meant to have them outside of word definitions < 1231805649 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: fail < 1231805660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, was just guessing < 1231805667 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : A damn useful little "backend" utility begun 950915 or thereabouts, < 1231805667 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : as *Hobbit*'s first real stab at some sockets programming. Something that < 1231805669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : should have and indeed may have existed ten years ago, but never became a < 1231805671 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : standard Unix utility. IMHO, "nc" could take its place right next to cat, < 1231805673 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : cp, rm, mv, dd, ls, and all those other cryptic and Unix-like things. < 1231805675 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lol, nc was the guy's first sockets prorgam < 1231805693 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :great program, wonder why he fell of the face of the earth < 1231805711 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nc rocks < 1231805719 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Well, they were useful when debugging the thing. < 1231805722 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: not gnu nc < 1231805724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :however I usually use socat instead < 1231805726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gnu netcat sucks < 1231805729 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is way more powerful < 1231805736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why does gnu netcat suck? < 1231805748 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :apart from bloated size < 1231805752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :bloated, shitty, like all gnu programs, and not a real improvement over hobbit's original code < 1231805764 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :yea, gnu sucks in general < 1231805767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, gnu emacs isn't shitty! < 1231805770 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes it si < 1231805772 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but apart from that, sure < 1231805774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :si < 1231805775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1231805776 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :all bloated, un-unix-ish < 1231805779 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Spanish? < 1231805781 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :original netcat is only 1668 lines long and does everything gnu netcat does < 1231805787 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :trying to do vender-lockin all the time < 1231805791 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well yes, I prefer socat < 1231805793 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :as I said < 1231805804 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :and they code c like it was lisp < 1231805807 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is pretty awesome < 1231805818 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :the gnu coding standard is horrible < 1231805826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, agreed < 1231805836 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but gnu emacs rocks < 1231805838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gnu cat is a good laugh < 1231805842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is the single exception < 1231805847 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i like netbsd < 1231805853 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gnu emacs is exactly like the rest of the gnu tools < 1231805853 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I like freebsd < 1231805864 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The original netcat doesn't do ipv6. Although I have to admit I use here openbsd's netcat, which is the original with IPv6 support patched in. < 1231805867 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :yea, well, i've got taste < 1231805892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, I also use openbsd < 1231805896 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :that's the reason i don't like emacs either < 1231805902 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Still, I think the GNU compiler collection doesn't suck that much. < 1231805907 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :agreed < 1231805914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh it does < 1231805917 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :the gnu coding style is used there too though < 1231805925 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes and it sucks too < 1231805928 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :gcc is about the only gnu program which doesn't totally suck < 1231805935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, it sucks more than gnu emacs < 1231805940 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :nope. < 1231805947 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, that is your opinion < 1231805951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gcc is alright < 1231805952 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :yea, and i'm right < 1231805962 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, except it is subjective clearly < 1231805970 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :actually.. nope < 1231805986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gcc is only nice because it works, though < 1231805987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :code-wise, more of the same < 1231805990 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, well, I'm sure vim has nicer coding style, EXCEPT it doesn't do what I need < 1231805990 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i disagree < 1231805994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so that is irrelevant < 1231806004 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :yea, vim isn't so nice < 1231806010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :flexo don't bother arguing with AnMaster, he doesn't have mutable state < 1231806012 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :it's rather bloated < 1231806020 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, same for vi, it doesn't do what I need < 1231806024 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :ehird: look again, do you see me arguing? < 1231806027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes :D < 1231806033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION agrees with ehird  < 1231806036 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :"yea, and i'm right" is not really an argument < 1231806052 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Anyways, g'netcat. I mean, g'night. < 1231806053 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: well, you need the wrong stuff < 1231806055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I have a mutable state except when I don't < 1231806062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, now that is subjective < 1231806067 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1231806085 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :things can be subjective but there only be one right answer. < 1231806088 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'s called taste. < 1231806091 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :exactly < 1231806093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but then AnMaster is a hypocrite < 1231806098 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :see: "rock music" < 1231806101 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how so? < 1231806107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm wonder why forthbot isn't joining < 1231806108 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also I dislike rock music, and what about it? < 1231806114 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how is that hypocritical? < 1231806117 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :emacs is like rock music < 1231806120 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :don't you see the connection? < 1231806121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nop < 1231806124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you force that on anyone who mentions rock music < 1231806125 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :ask ehird about it < 1231806126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, it isn't < 1231806146 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no it is my personal view point, which I indeed promote < 1231806160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's it < 1231806161 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you promote it < 1231806163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't go < 1231806165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey AnMaster classical sucks < 1231806169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I learned how by your way of promoting OS X < 1231806169 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :whenever you mention classical music < 1231806170 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1231806175 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you are a hypocrite too < 1231806179 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i only do that when people are having an OS pissing match < 1231806185 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or i'm blabbing to myself < 1231806196 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :os x sucks, actually < 1231806204 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1231806213 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, not really < 1231806217 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1231806227 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :this is how i got into esoteric programming < 1231806230 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, I mean, not compared to windows < 1231806231 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i got so fucking frustrated < 1231806236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i like os x. some people with poor taste dislike it. < 1231806237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's ok. < 1231806240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're just misguided. < 1231806240 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :because all programming languages suck at some point < 1231806242 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :all apis suck < 1231806245 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :are inconsistent < 1231806247 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :everything sucks, flexo < 1231806251 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :the operating systems are buggy < 1231806251 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :etc. < 1231806253 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the thing to do is to optimize for least suckage < 1231806253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, YES! < 1231806256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I agree < 1231806259 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :everything sucks < 1231806271 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. it's just a matter of paying the right amount. < 1231806274 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :but in brainfuck it's not possible to do inconsistent APIs < 1231806275 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION *groan* < 1231806278 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :to break naming schemes < 1231806282 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :or use sillyOnes < 1231806305 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, err yes it is, see gcc-bf < 1231806307 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :compiles C to bf < 1231806315 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :so? < 1231806317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% ./forthbot.sh < 1231806317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :USER forthbot forthbot forthbot forthbot < 1231806319 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NICK forthbot < 1231806321 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :JOIN #esoteric < 1231806323 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRIVMSG #esoteric :I am an awesome cake < 1231806325 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[hangs] < 1231806327 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :isn't that sufficient? < 1231806328 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :brainfuck is by definition always beautiful < 1231806332 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i like that < 1231806343 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, obviously it must be related, so you can trace it back to the original code < 1231806348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :even though names have been lost < 1231806362 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :it's related - so? < 1231806366 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :all the uglyness has been compiled out < 1231806374 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :no functions < 1231806389 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :no "real" abstraction mechanisms < 1231806393 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, forth phails at unix pipes < 1231806394 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tee hee < 1231806396 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but you could do inconsistent parameter order, like stack_pop(stack, count) stack_push(count, stack, outvariable) < 1231806397 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and so on < 1231806402 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and it would be there in the result < 1231806410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :flexo: another non-sucky piece of gnu software: gforth < 1231806411 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :yea well. but you don't see it. < 1231806412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, funny < 1231806421 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, yes the calling convention you see < 1231806426 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :in brainfuck? < 1231806432 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :you don't see anything in brainfuck code < 1231806434 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, certainly, check gcc-bf out < 1231806441 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if ais found somewhere to host it < 1231806449 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ask ehird about details where it is hosted < 1231806465 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i'm not going to check anything out to have you destroy my worldview < 1231806484 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah, ok < 1231806495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% ./forthbot.sh |cat < 1231806496 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :at least I accept that I'm wrong, when I *am* wrong < 1231806497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[hang] < 1231806509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, funny, so gforth sucks? < 1231806513 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1231806516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1231806516 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: so do i < 1231806517 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :trying to get forth to integrate with unix sucks < 1231806521 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah < 1231806522 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i just happen to never .. am? < 1231806528 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :eh. be! < 1231806542 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :flexo, hah < 1231806545 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :... < 1231806546 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1231806559 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :If you pipe into Gforth, your program should read with read-file or read-line from stdin (see General files). < 1231806560 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I'm sometimes wrong, but well saying subjective is objective is a bad one < 1231806561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :o.k. < 1231806574 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you know, i might have been kidding < 1231806576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, the other way around then? < 1231806577 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Now, time to try to figure out how to use Hugs. < 1231806586 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: type instead of ." < 1231806587 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it seems < 1231806588 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :i'm fully aware that it's not possible to argue with insane people < 1231806588 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kerlo, use ghc? < 1231806588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: don't < 1231806590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ghci < 1231806592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1231806597 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :someone prefering emacs over vi is obviously insane < 1231806606 0 :flexo!unknown@unknown.invalid PRIVMSG #esoteric :so i must have been kidding in my tries to argue < 1231806609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: type instead of ." <--? < 1231806616 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :." a" < 1231806616 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :should be < 1231806619 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :S" a" type < 1231806620 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1231806622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it should be < 1231806623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :char a emit < 1231806624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, is that forth code? < 1231806625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but :P < 1231806627 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231806630 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: GHC doesn't work under Xen, I believe. < 1231806630 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm that doesn't work < 1231806634 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: wat < 1231806636 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :of course it does < 1231806639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i use ghc on rutian occasionally < 1231806642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kerlo, err there is no reason it shouldn't < 1231806661 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Well, when I run GHCi, it gives me a fancy error. < 1231806675 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kerlo, well whatever causes that it isn't xen < 1231806682 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :did you check if it was something else? < 1231806690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also why not look around for that error < 1231806756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha, just need to flush stdout < 1231806766 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :: say stdout write-line stdout flush-file ; < 1231806770 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :I looked around for that error. The bug page says it seems to be caused by Xen. < 1231806775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it doesn't flush at exit? < 1231806779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i want line-flush < 1231806787 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kerlo, what is this error? < 1231806805 0 :forthbot!n=forthbot@91.105.91.149 JOIN :#esoteric < 1231806805 0 :forthbot!unknown@unknown.invalid PRIVMSG #esoteric :I am an awesome cake < 1231806805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what is wrong with flush-file? < 1231806809 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :woop woop < 1231806810 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it works < 1231806814 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: flush-file flushes it < 1231806816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :stop being stupid < 1231806820 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :." didn't work < 1231806822 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :neither did write-line < 1231806823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i needed to flush < 1231806824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so i did < 1231806826 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as i said above < 1231806826 0 :forthbot!unknown@unknown.invalid QUIT :Remote closed the connection < 1231806831 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well " i want line-flush" <-- why? < 1231806843 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, i'm not talking to you until you can comprehend basic english < 1231806850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you made no sense < 1231806855 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i see. < 1231806862 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and if flush-file works, why did you want flush-line? < 1231806868 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what would the difference be? < 1231806870 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Okay, maybe it's not quite so Xen-related. < 1231806871 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :http://hackage.haskell.org/trac/ghc/ticket/2063 < 1231806925 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Though it doesn't actually look like that bug; it looks like this one: http://hackage.haskell.org/trac/ghc/ticket/2013 < 1231807053 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why do they need 32-bit < 1231807060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :can't they use full 64-bit pointers? < 1231807291 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1231807424 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :kerlo, idea, if you have multilib, just build an -m32 haskell < 1231807431 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ghc/ghci that is < 1231807434 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he didn't build haskell. < 1231807436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :almost certainly. < 1231807440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :building ghc is nigh-on impossible < 1231807451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e., it takes 4-5 hours even on this fast machine < 1231807455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with parallel make < 1231807460 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, true, even gentoo offers a binary package for it < 1231807486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ghc, openoffice, firefox and thunderbird all have binary packages < 1231807493 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what about x11/kde < 1231807503 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :compiling those is stupid, wasteful and slow < 1231807506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no, but they are much faster here < 1231807513 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm. k < 1231807516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :X11 takes about 2 hour at most < 1231807526 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kde takes like 8 hours < 1231807526 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a complete KDE would take a bit less than 5 hours < 1231807545 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, depends, I only use kdebase and kdesdk + a few random other apps < 1231807551 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :gentoo uses split ebuilds for them < 1231807558 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can just merge the programs you want < 1231807572 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no need to compile each whole kde package < 1231807592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Here's an example of an invocation of Gforth that is usable in a pipe: < 1231807592 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : gforth -e ": foo begin pad dup 10 stdin read-file throw dup while \ < 1231807594 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : type repeat ; foo bye" < 1231807599 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kill it < 1231807610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i don't think that can handle lines of more than 10 chars < 1231807634 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ouch < 1231807643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This example just copies the input verbatim to the output. A very simple pipe containing this example looks like this: < 1231807644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : cat startup.fs | < 1231807646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : gforth -e ": foo begin pad dup 80 stdin read-file throw dup while \ < 1231807648 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : type repeat ; foo bye"| < 1231807650 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : head < 1231807652 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it magically changes to 80 < 1231807652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1231807654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :confirming my suspicions < 1231807658 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231807665 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, can't you copy n chars? < 1231807670 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :where n is unknown < 1231807672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :probably. < 1231807679 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but I don't want to figure it out until tomorrow. < 1231807682 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :on that note... ciao < 1231807686 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, night! < 1231807690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sleep well < 1231807695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or whatever you say in English < 1231807705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that works < 1231807724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1231809182 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1231810915 0 :seveninchbread!n=seveninc@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1231811634 0 :seveninchbread_!n=seveninc@h226.36.18.98.dynamic.ip.windstream.net JOIN :#esoteric < 1231812121 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231812788 0 :seveninchbread!unknown@unknown.invalid QUIT :Connection timed out < 1231812974 0 :Corun!n=Corun@cpc1-rdng19-0-0-cust700.winn.cable.ntl.com JOIN :#esoteric < 1231814824 0 :seveninchbread_!unknown@unknown.invalid NICK :CakeProphet < 1231819889 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Okay. Can anyone name *any* IRC bot that allows IRC users to more or less execute arbitrary code, other than lambdabot and bsmnt_bot? < 1231819901 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :why? < 1231819911 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :it's a pretty stupid thing to do < 1231819930 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :The guys who run lambdabot and bsmnt_bot do it. < 1231820037 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :and we are pretty stupid < 1231820059 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1231820093 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Okay, let me see if I can hack GHC into working on normish.org. < 1231820211 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, let's try a newer version. < 1231820813 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :kerlo: geordi < 1231820832 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :(in ##c++) < 1231820873 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Oh, please. That is *so* last ten-minute period. < 1231821409 0 :kerlo!unknown@unknown.invalid QUIT :Remote closed the connection < 1231821957 0 :kerlo!n=ihope@normish.org JOIN :#esoteric < 1231823228 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1231824132 0 :psygnisfive!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231825292 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :<3 job karma < 1231825332 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ooooooooooooooooooo < 1231825933 0 :psygnisfive!n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1231833599 0 :clog!unknown@unknown.invalid QUIT :ended < 1231833600 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1231834258 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231834368 0 :CakeProphet!n=seveninc@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1231835150 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1231842139 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231843908 0 :Hiato!n=1@dsl-245-26-251.telkomadsl.co.za JOIN :#esoteric < 1231849469 0 :oerjan!unknown@unknown.invalid QUIT :"leaving" < 1231850552 0 :Hiato!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231851798 0 :jix!n=jix@dyndsl-095-033-090-248.ewe-ip-backbone.de JOIN :#esoteric < 1231854690 0 :Corun!n=Corun@cpc1-rdng19-0-0-cust700.winn.cable.ntl.com JOIN :#esoteric < 1231857774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :04:14 Okay, let me see if I can hack GHC into working on normish.org. < 1231857774 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :04:16 Oh, let's try a newer version. < 1231857780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :itt: kerlo has never heard of apt-get < 1231857857 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :ehird < 1231857862 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :I want to eat your bones. < 1231857868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay < 1231857869 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :do so < 1231857914 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Could you send your bones through the mail? < 1231857918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :done < 1231857936 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :I hope they arrive soon. < 1231858448 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1231860219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory.html?rel=html < 1231860714 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :we need a higher-order factory calculus < 1231860875 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :Abstractions run amok < 1231861141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :[[Please, use more civilized language; remember, you're on the Internet.]] -- reddit < 1231862703 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-252-201.hsi2.kabel-badenwuerttemberg.de JOIN :#esoteric < 1231863500 0 :oerjan!n=oerjan@hagbart.nvg.ntnu.no JOIN :#esoteric < 1231863660 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : http://ws.apache.org/xmlrpc/apidocs/org/apache/xmlrpc/server/RequestProcessorFactoryFactory.html?rel=html < 1231863667 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :clearly this is a monad < 1231863674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :moar liek gonad < 1231863698 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :requestProcessorFactoryFactory :: IO (IO Processor) < 1231863702 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1231863717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: does yi work < 1231863725 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :never tried it < 1231863733 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i am downloading it :D < 1231863760 0 :FireFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1231863801 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :actually there should probably be another IO on that, since the initial request is really a factory too < 1231863856 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(IO replaced with another monad as appropriate, of course) < 1231863885 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric : [[Please, use more civilized language; remember, you're on the Internet.]] -- reddit < 1231863900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : [[Please, use more civilized language; remember, you're on the Internet.]] -- reddit < 1231863900 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that would be sensible. < 1231863910 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately, the internet rarely is. < 1231863962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CWD="`(cd \"\`dirname \\\"$0\\\"\`\"; echo $PWD)`" < 1231863964 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :impressive < 1231863983 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :O_O < 1231864057 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :rube goldberg programming? < 1231865010 0 :MigoMipo!n=MigoMipo@84-217-2-61.tn.glocalnet.net JOIN :#esoteric < 1231865853 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1231868744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, http://rcfunge98.com/rcsfingers.html#UNIX <-- crazy idea. And format of mask isn't specced < 1231868758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's not crazy. < 1231868761 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's reasonable. < 1231868767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, you know what a umask is, presumably. < 1231868780 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That spec is fine, and looks useful. < 1231868796 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Change file access <- the only really vague part < 1231868817 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :true, guess: permissions < 1231868828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, probably chmod < 1231868840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :almost certainly, in fact. < 1231868862 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also his list of fingerprints is now crazily long < 1231868872 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he's an odd guy. < 1231868881 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but that spec is one of the better ones, it's just terse < 1231868881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehehehe,,,, yes... < 1231868896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: want vagueness? < 1231868896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://rcfunge98.com/rcsfingers.html#TRGR < 1231868934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, indeed, my policy nowdays is to avoid implementing any RCS fingerprints that mycology doesn't test. < 1231868941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's no fun < 1231868949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you should implement TRGR without looking at rc/funge < 1231868949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes he wrote his own test suites sometimes, but often they are buggy < 1231868962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just implement what it says there, make up the unspecified parts (like wtf a trigger is) youreslf < 1231868970 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and claim it to be spec-compliant, which it would be < 1231868991 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I have done similar before and it ended up with flames < 1231868999 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when, which? < 1231869016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm, interpreting REXP as using a global buffer for example < 1231869022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah. < 1231869025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"flames"? < 1231869031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i don't think i've ever seen mikeriley show emotion :D < 1231869038 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, eheheheheheh,,,,,,,,,,,,! < 1231869047 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, that got old when I specced mkry < 1231869072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, true < 1231869177 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I love the way that spec is called "UNIX" when it provides 15 instructions related mostly to unix permissions < 1231869211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it seems reasonable to me < 1231869213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're unix syscalls < 1231869223 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"UNIX", to me, implies all of unix < 1231869227 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what about other unix stuff < 1231869236 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean UPRM might have been a better name < 1231869241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i guess < 1231869274 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Either provide all of unix in one fingerprint or split it into multiple fingerprints each of has a cohesive purpose < 1231869285 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, agreed < 1231869285 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not "some unix permission stuff and oh, domain names too" < 1231869294 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it does domain names? < 1231869295 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok, thats stupid < 1231869296 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :D and N < 1231869300 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :what the hell's the difference anyway < 1231869311 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :why not use SCKE? < 1231869319 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :doesn't it perform those? < 1231869334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1231869336 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that makes sens < 1231869337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1231869341 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :why < 1231869344 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one is a reverse dns lookup of the current host < 1231869348 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one is the /etc/hostname < 1231869356 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1231869356 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :which is which < 1231869358 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'd only provide the latter, admittedly < 1231869362 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: N is hostname < 1231869364 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :D is domainname < 1231869369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :figure it out :P < 1231869390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :H ( -- id) Get host id < 1231869391 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1231869393 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is that < 1231869405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ummmmmmm. < 1231869405 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: domainname comes from uname according to man 2 getdomainname < 1231869408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i don't know < 1231869423 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :in which case that may make sense but it still doesn't fit in the same fingerprint IMO < 1231869428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231869430 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but teh separation isn't bad < 1231869448 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :right, I just got what you meant by "one is a reverse dns lookup" < 1231869451 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :you meant SCKE, not D < 1231869469 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: hostid < 1231869497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1231869521 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :`hostid' prints the numeric identifier of the current host in < 1231869522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hexadecimal. This command accepts no arguments. The only options are < 1231869522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :`--help' and `--version'. *Note Common options::. < 1231869523 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :interesting < 1231869527 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so those aren't arguments? < 1231869536 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :no, they're options < 1231869542 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1231869547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :whatever < 1231869609 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hostid supposedly comes from the MAC address of eth0 but I don't see the resemblance < 1231869616 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nor do I < 1231869644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% hostid < 1231869644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :00000000 < 1231869663 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ahaha < 1231869670 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :007f0100 < 1231869674 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I just realised what that is < 1231869676 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :besides my hostid < 1231869677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what < 1231869682 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it's 0.127.1.00 < 1231869683 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :?? < 1231869688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lol wat < 1231869690 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah yes, and it is same as mine < 1231869691 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :which is the byte transposition of 127.0.0.1 < 1231869695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XDD < 1231869700 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :which is unsurprisingly what's under localhost in /etc/hosts < 1231869701 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah, 0.0.0.0 also works < 1231869704 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and that's my unique host id < 1231869705 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well it seems like a rather silly command < 1231869712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :::1 localhost < 1231869715 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, it tries to read /etc/hostid btw < 1231869716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I suppose that's what's causing it < 1231869720 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :doesn't seem documented < 1231869726 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, if you've got one < 1231869728 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the file doesn't exist though < 1231869743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, can't find what the file is supposed to do < 1231869751 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yeah, it probably does a scanf("%3d.%3d.%3d.%3d") :-P < 1231869766 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, 0.0.0.0 resolves to this machine < 1231869767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :here < 1231869773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1231869777 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's usual < 1231869778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :try it < 1231869780 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :err < 1231869782 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: echo "foo" > /etc/hostid < 1231869782 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hostid < 1231869785 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, resolves in what way? < 1231869786 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :0a6f6f66 < 1231869789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: doesn't work for me < 1231869794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, DNS? < 1231869794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: as an ip. < 1231869797 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1231869805 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what doesn't < 1231869805 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, because it doesn't resolve in DNS < 1231869809 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :running a server on 127.0.0.1 doesn't let anyone else access it < 1231869813 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does with 0.0.0.0 < 1231869813 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but if you mean it is possible to bind to... < 1231869817 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, slightly different semantics on listening < 1231869821 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, yes of course, but that isn't same as "resolve" < 1231869823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but for connection < 1231869825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's the same < 1231869826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it means "listen to all" < 1231869827 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: oh stfu < 1231869835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can connect to 0.0.0.0 < 1231869837 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and get localhost < 1231869839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's what i'm saying < 1231869840 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, resolve means "reverse DNS resolve" < 1231869847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :shut upppppppp < 1231869861 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just because you're a freaking pedant doesn't mean you have to complain even if you understand me < 1231869882 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes it does! < 1231869890 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: let resolve = "reverse DNS " ++ resolve in resolve ===> "reverse DNS reverse DNS reverse DNS reverse DNS " ... < 1231869909 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :wait, i'm late for that argument thread... < 1231869928 0 :Hiato!n=1@dsl-245-26-251.telkomadsl.co.za JOIN :#esoteric < 1231869930 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, checking if the result from reverse lookup resolves to same ip is a common check < 1231869932 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^ul ((reverse DNS )S:^):^ < 1231869932 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS reverse DNS ...too much output! < 1231869939 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for example ircds use it before showing host < 1231869949 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if it doesn't exist someone is trying to fake reverse dns < 1231869956 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a lot of other software also use it < 1231869969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow, AnMaster excells further in the field of "totally irrelevant misunderstandings leading to ranting about minor points" < 1231869977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :someone give him a reward < 1231869986 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, nice! < 1231869987 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ACTION gives reward to AnMaster < 1231870007 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: now you need to give a speech < 1231870014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh god, you'll set him off again < 1231870033 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, oh? what sort of speech? < 1231870035 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :^ul ((acceptance speech )S:^):^ < 1231870035 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech acceptance speech ...too much output! < 1231870089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Well I think this rewardm which seems to be oerjan's frying pan with the word "reward" painted on it, is very nice < 1231870097 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but isn't stealing it a bit mean Deewiant? < 1231870160 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Whence do you infer that I stole it < 1231870183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, because I don't think oerjan would give it away voluntarily < 1231870197 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You thought wrong < 1231870213 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :you said it was for short selling! < 1231870227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :deewiant if I write a befunge-98 implementation in 5 characters will you rewrite mycology to give it all GOODs < 1231870276 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: no < 1231870282 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :deewiant why not < 1231870293 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: mu < 1231870343 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :deewiant why not < 1231870387 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: why would I rewrite something only to recreate the original: if your implementation is a befunge-98 implementation it will get all GOODs < 1231870400 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well it would be a fuzzy implementation. < 1231870406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :specifically, it would execute random parts of memory. < 1231870410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sometimes, that will run befunge-98 code. < 1231870415 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :you can do that in 5 chars? < 1231870435 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :then sometimes it will pass mycology. what's the problem? < 1231870446 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: yes. < 1231870458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ignoring the main() { } boilerplate. < 1231870461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well. < 1231870464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'll be more like 10 chars. < 1231870474 0 :oklopol!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1231870491 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i thought it was gonna be J or something... < 1231870514 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :jjjjjjjjjjjjjjjjjjjjjj! < 1231870534 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but J is probably memory safe < 1231870540 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: < 1231870544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1231870547 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :main(){return((int(*)(int))rand())();} < 1231870581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, that doesn't bode for command args < 1231870582 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1231870583 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :try this < 1231870598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1231870599 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :main(a,v){return((int(*)(int))rand())(a,v);} < 1231870680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm wait < 1231870682 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that needs to be < 1231870690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :#include < 1231870692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :main(a,v){return((int(*)(int,char**))rand())(a,v);} < 1231870692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yw < 1231870712 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :RAND_MAX is too small, it'd only work on a small part of my memory < 1231870728 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: patches welcome, but that isn't an issue < 1231870742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean, the chances of the befunge-98 interp in ram being at a piece of ram < RAND_MAX is like 100% < 1231870754 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, is it? < 1231870758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. < 1231870758 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1231870763 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why? < 1231870765 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :can one see from somewhere where stuff is in memory < 1231870769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because of magic < 1231870773 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: wut < 1231870781 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and possibly set a minimum memory location where they must live ;-) < 1231870801 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :O0oOOOooo0ooo0oOoooo0oO0oOOoo0oo0000oo....... < 1231870802 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, stuff tends to have mappings to virtual memory < 1231870818 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'd guess there's something in /proc that'd tell me < 1231870822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you can see where things are mapped in the current process cat /proc/self/maps < 1231870823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1231870827 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on linux < 1231870838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mostly useful for debugging < 1231870858 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :so I see < 1231870866 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1231870885 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :any chance of seeing where the program counter is? :-P < 1231870892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, gdb < 1231870897 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :attach gdb to it < 1231870913 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1231870916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then it is show registers or something like that < 1231870934 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :cat I had installed, gdb I don't :-P < 1231870966 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well obviously replace the "self" part in the path with the pid you are interested in < 1231870997 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :doesn't solve the problem of lacking gdb < 1231871025 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well I guess you could write your own debugger to do it < 1231871025 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I should write this interp in haskell. Wait, Asztal's done that < 1231871041 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :OoOOoO < 1231871057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :waiiiiiiit < 1231871059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: that's in C++!!! < 1231871063 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who did it in haskell? < 1231871084 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I forget his nick, the finnish guy < 1231871113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1231871114 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie? < 1231871121 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oooh < 1231871122 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ilari? < 1231871125 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :nope < 1231871130 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :did what? < 1231871130 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :has to be < 1231871132 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :not here now, I don't think < 1231871132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's the rubiks cube guy < 1231871134 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1231871155 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I know a lot of finnish rubik's cube guys :-P < 1231871162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1231871175 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: looking at some programs on my machine it seems they all have their IP at locations beyond RAND_MAX < 1231871176 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm something on f? < 1231871183 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: that's their problem < 1231871195 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: the idea isn't to hit into a program < 1231871197 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: your interpreter likely has a 0% chance of success < 1231871202 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the idea is to hit into some memory that happens to be valid machine code < 1231871205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that runs befunge-98 programs < 1231871228 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :funktio < 1231871230 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :that was his nick < 1231871230 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, err no, it is likely you will hit an unmapped area. then segfault due to that < 1231871236 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://funktio.awardspace.com/misc/hsfunge/ < 1231871237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: wait, why are you using an OS? < 1231871240 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :and it's no longer up < 1231871240 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't support operating systems < 1231871262 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :... < 1231871268 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: good luck getting such memory without an OS < 1231871275 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :without stuff going on, the memory doesn't change much :-P < 1231871278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: sure, it's meant to fit into your own OS < 1231871279 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in kernelspace < 1231871297 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :does that not mean supporting operating systems < 1231871306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no, i don't support oses i.e. i don't support it in userspace < 1231871312 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :right < 1231871389 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :so I guess hardware drivers don't support much of anything then :-P < 1231871395 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how goes work on ccbi2? < 1231871444 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: stalled since september due to DMD bug #2339 < 1231871454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, still not fixed. huh < 1231871468 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: my oldest open bug is from 2006 june < 1231871479 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how many have patches? < 1231871485 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ~none < 1231871487 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :a few might < 1231871489 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ok < 1231871500 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :not by me, though < 1231871514 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it /is/ a frontend problem so I /could/ fix it... if I could < 1231871516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also poll: should I make up a fingerprint for interfacing SQL databases? If yes which of these DBs: SQLite, MySQL, PostgreSQL < 1231871522 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :note I may not implement it < 1231871529 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :DB-independent < 1231871536 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :interpreter-defined < 1231871550 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you still need DB-dependent connection of some sort hm < 1231871567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, or it would be quite useless < 1231871584 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :interpreter-defined < 1231871598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'll do better < 1231871603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'll write OBJDB < 1231871608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well. < 1231871613 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :GRDB? < 1231871613 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OBDB < 1231871618 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :funge object database. < 1231871623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :basically, persistent fungespace. >:D < 1231871625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what about graph DB? < 1231871632 0 :Hiato!unknown@unknown.invalid QUIT :"Leaving." < 1231871634 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: basically o and i? < 1231871635 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no, that's too ... practical < 1231871645 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: yes but, can you use fingerprints with that? < 1231871651 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, FILE? < 1231871654 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: meaning what? < 1231871655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :basically < 1231871664 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: e.g. say you have an OOP fingerprint that stores objects in fungespace < 1231871669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you could make it use the persistent fungespace < 1231871679 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instead of regular fungespace < 1231871683 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: sure, you could use o and i to store that < 1231871688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: o rly? < 1231871690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i mean like < 1231871691 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :new object < 1231871694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just gives you fungespace coords < 1231871699 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the actual fungespace is in the fingerprint code < 1231871701 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :sure < 1231871705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but the persistent fungespacer < 1231871708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :makes the fingerprint use it < 1231871712 0 :Hiato!n=1@dsl-245-26-251.telkomadsl.co.za JOIN :#esoteric < 1231871715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can't do that with o/i < 1231871726 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :no clue what you mean. < 1231871727 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: VMEM? < 1231871738 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: sounds like virtual memory, anyway :-P < 1231871741 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that exists? < 1231871746 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :RCS I assume? < 1231871749 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nope < 1231871755 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1231871758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: it's basically mmap < 1231871770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait hm, paging segments in funge space < 1231871770 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :? < 1231871770 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can swap out some fungespace usage with a version that writes to a fil < 1231871771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1231871778 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :VMEM indeed then < 1231871788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :combine with an OOP fingerprint < 1231871790 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also a crazy nice idea < 1231871791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and you have a funge object database. < 1231871793 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1231871796 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you can write fungespace to a file using threads which do o every tick < 1231871809 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but the code would need to handle paging itself < 1231871811 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :of course < 1231871820 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fingerprints can't do it behind the scens < 1231871821 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: so the only new thing here is something like virtual memory unless I misunderstood < 1231871822 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :scenes* < 1231871834 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: that's 1) inefficient, 2) it's a separate fungespace: you can have multiple of them, and only do some things in them, etc < 1231871857 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: 1) that's probably how I'd implement it on windows anyway < 1231871861 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: 2) MVRS < 1231871878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :VMEM should have memory protection too < 1231871882 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: can MVRS cause certain fingerprints to write to one of the fungespaces, < 1231871885 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but have the rest of the program outside of it? < 1231871891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and still be able to access the fungespaces the fingerprints are using? < 1231871897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :without these fingerprints knowing about mvrs, that is < 1231871906 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm. some nice ideas for this vmem < 1231871914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION writes them down < 1231871916 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yes, just run the code in a different mvrs? < 1231871921 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :basically a DMA-hole to disk! < 1231871921 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :er, universe < 1231871924 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :by mmap() < 1231871941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1231871944 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also DMA has nothing to do with it < 1231871950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how far did hsfunge get? < 1231871951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but it sounds cool ;P < 1231871953 0 :olsner!n=salparot@h-60-96.A163.priv.bahnhof.se JOIN :#esoteric < 1231871966 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it found a bug in mycology, can't remember if he did any fingerprints though < 1231872002 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so should i do this in haskell or C :P < 1231872011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i should do it in haskell and be faster than cfunge for the lulz < 1231872074 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :good luck with that < 1231872091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1231872126 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1231872138 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I have some hidden ideas for funge-space algos which should be comparatively about as fast as cfunge without being as lame as 'static array the size of the biggest program I know of' < 1231872161 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :but only 'about' because that's obviously cheating and can't really be beat :-P < 1231872198 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, the static array thing is a good idea, but the biggest program i know of is kind of stupid < 1231872244 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :it's the size of mycology rounded up to powers of two < 1231872258 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(256*1024) < 1231872265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1231872281 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :still, the static array is still a good idea, right? < 1231872282 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :mycology is 180*800 or so and uses a bit of space on the negative side making it around 190*810 < 1231872295 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I don't like static arrays :-P < 1231872314 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why not :P < 1231872354 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :if you have dynamic data it's just extra complexity < 1231872361 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :or a source of bugs :-P < 1231872665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :poll time < 1231872675 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"BEFUNGE-98EHIRD": C or Haskell or Other < 1231872828 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Other. Specifically, Malbolge. < 1231872858 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :invalid option < 1231872860 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Factor < 1231872877 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't run on OS X Tiger because slava pestov is a kid with ADHD and can't stop using shiny APIs. < 1231872885 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Joy < 1231872893 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Does Joy even have file IO? < 1231872930 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't it? < 1231872941 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm, "Grief programming language" < 1231872945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, okay, does it have any other OS interfaces Deewiant? < 1231872975 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Probably not, I don't know < 1231872998 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Cat, then. < 1231873013 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : "BEFUNGE-98EHIRD": C or Haskell or Other <- other, weird < 1231873024 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or is it wired? can't remember < 1231873027 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: The author of Cat is a retard. he claimed that a lazy map function was O(1). < 1231873031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: wierd < 1231873036 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ah yes < 1231873037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1231873042 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well I suggest using it < 1231873045 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :of course it's O(1) < 1231873049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: no < 1231873051 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :all lazy functions are O(1) < 1231873056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, exactly < 1231873061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but you don't talk about them like that < 1231873064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because that's _idiotic_ < 1231873064 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Haskell—the constant-time programming language < 1231873070 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also i and o are optional < 1231873076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :your mom is optional < 1231873079 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you can manage without file io < 1231873090 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also I admit jitfunge is faster < 1231873093 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: he has to read the befunge file somehow < 1231873099 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: whence the source without I/O? < 1231873106 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm true < 1231873129 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, anyway fast mmaped IO in funge space sounds fun < 1231873139 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hhmm. < 1231873143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :can't you load fungespace with mmap? < 1231873144 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I'm not sure how much it will impact stuff when I need to check if some area should be mmaped < 1231873148 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for every read/write < 1231873152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and copy-on-write < 1231873167 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I open with mmap() to avoid issues like fread() ends with \r and next start with \n < 1231873183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, one issue is the source file line length will vary < 1231873189 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean < 1231873191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :without parsing < 1231873193 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you need to build a line index or something < 1231873193 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just mmap() and go < 1231873211 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well don't think so due to varying line length, you need to locate newlines somehow < 1231873218 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I did consider that a lot you know < 1231873221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for extra speed < 1231873237 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and at least I couldn't figure out a way to do it < 1231873262 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, so basically you need to parse for \r, \r\n and \n < 1231873268 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all are valid line ending < 1231873281 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mycology uses \r\n for example < 1231873297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'm gonna go for haskell because i don't wanna fuck with memory management more than i have to < 1231873320 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm copy on write in C, I know kernel does it by page faults and such < 1231873322 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :now convince me not to call it butts < 1231873336 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, call what butts? < 1231873342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the interp. < 1231873356 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, interp-and-possible-future-compiler-to-llvm because haskell has libraries for that and i am fucking nuts < 1231873357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well why should I convince you about that? < 1231873360 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(nutphillia) < 1231873368 0 :MigoMipo!unknown@unknown.invalid PART #esoteric :? < 1231873383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because if you try it out you'll have to phrase things awkwardly to avoid mentioning its name < 1231873387 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and I only claimed cfunge was the current fastest _interpreter_ < 1231873398 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I admit that jit compilers like jitfunge are faster < 1231873426 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: butts has nothing to do with fungi, and therefore cannot be the name of a funge implementation. that's just the way it is. < 1231873435 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, good point < 1231873455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ok then, i'll call it neocallimastigomycota < 1231873475 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, what about FBBI? Flaming Bovine Befunge Interpreter < 1231873479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :funge < 1231873480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :written by C. Pressy < 1231873482 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is in befunge < 1231873484 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is in FBBI < 1231873484 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, true < 1231873491 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :good point < 1231873535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: link to that page with funge-related names? < 1231873537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you linked to it a while ago iirc < 1231873543 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, and don't claim I can't admit when I was wrong in the future, now that it actually happened you saw me admit that right above < 1231873555 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :~ < 1231873581 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://rcfunge98.com/rcsfingers.html#IMTH <-- why... < 1231873607 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :quite a few of those exist in FIXP < 1231873623 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the rest are trivial without IMTH I think < 1231873641 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: this time i might suggest http://en.wikipedia.org/wiki/Category:Lists_of_fungal_species < 1231873669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :meh < 1231873672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I preferred the flat list < 1231873676 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :darn latin < 1231873684 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah those were in english < 1231873776 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :here's a big one: http://www.britmycolsoc.org.uk/files/ENGLISH_NAMES.pdf < 1231873783 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it wasn't a pdf either :P < 1231873812 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :_and_ i didn't save the link < 1231873813 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, that isn't an issue when they open inline in the browser and without silly plugins < 1231873823 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it just works here with konqueror < 1231873831 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :umm, that's a plugin. < 1231873835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, pdfs suck anyway. < 1231873854 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, hm? kpdf is a kpart, which is used both by kpdf itself and by konqueror < 1231873871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: kpart - you mean, a plugin < 1231873878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, no a module < 1231873889 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow. it's not a module, it's a plugin. < 1231873891 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how profound. < 1231873892 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or kingerprint < 1231873894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :;P < 1231873894 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a rose by any other name. < 1231873915 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I said "silly plugins", implying third party acrobat one < 1231873923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so sure it may be a plugin < 1231873935 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if that makes you happier < 1231874121 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :another one: http://www.english-country-garden.com/fungus.htm < 1231874121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, looks like Mike did his own variant of SNGL... SGNE < 1231874313 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ponders a 3 letter fingerprint: SQL < 1231874316 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well < 1231874330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I got some ideas for the "db independent" < 1231874386 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :all I will need is basic common SQL support. I mean, the concept of a database with one or more schemas, with views and tables (and possibly stored procedures and so on) < 1231874390 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw I just got an idea < 1231874394 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for PostgreSQL < 1231874412 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is PL/pgSQL < 1231874417 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and PL/Tcl < 1231874419 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and several more < 1231874422 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about < 1231874426 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :PL/Befunge < 1231874427 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1231874438 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, what do you thing? < 1231874443 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :think* < 1231874443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :? < 1231874453 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, about a PL/Befunge for Postgres < 1231874457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's a crappy idea, like most of yours. < 1231874457 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just a wild idea < 1231874464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :did you want that, or the lie? < 1231874468 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why is it crappy? < 1231874480 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's thoroughly uninteresting < 1231874482 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :there is a PL/sh even < 1231874485 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is worse IMO < 1231874506 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(third party) < 1231874736 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :possible name: milkcap < 1231874788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, for your interpreter? < 1231874794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231874851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also if you decide to jit I'm not going to care, I don't have the time to add jitting to cfunge currently, no idea about later < 1231874906 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :it's the jitterbug < 1231874934 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sigh < 1231874956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm. mutability violating the liskov subtitution principle. interesting. < 1231874967 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, that was too bad even for a groan < 1231875184 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night all < 1231875257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Joel Spolsky reaches the minimum in substantive content: http://www.joelonsoftware.com/items/2009/01/13.html < 1231875271 0 :olsner_!n=salparot@h-60-96.A163.priv.bahnhof.se JOIN :#esoteric < 1231875285 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :what, he has even less content now? < 1231875296 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :you should have said reaches a new mininum < 1231875299 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-) < 1231875334 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lament: he's still got a bit to lose, though... he wrote a full title summarizing the article which he found & linked to, he picked a quote to excerpt, and found a relevant picture and resized & embedded it into the post < 1231875337 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :pianos are so nice, they have black keys and white keys < 1231875339 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :still way too much work < 1231875351 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :while on a fretboard all notes look the same :( < 1231875375 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ebony and iiiivory... < 1231875415 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i seriously conteplate labeling a fretboard. < 1231875664 0 :MigoMipo!n=kvirc@84-217-2-61.tn.glocalnet.net JOIN :#esoteric < 1231875667 0 :olsner!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231876004 0 :CakeProphet!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231876127 0 :CakeProphet!n=seveninc@wikipedia/The-Prophet-Wizard-of-the-Crayon-Cake JOIN :#esoteric < 1231876920 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.riffraff.info/2009/1/12/writing-a-shakespeare-interpreter-with-parrot < 1231877477 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^style < 1231877477 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Available: agora alice darwin discworld europarl ff7 fisher ic irc* lovecraft pa speeches ss wp < 1231877494 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^style ss < 1231877494 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Selected style: ss (Shakespeare's writings) < 1231877516 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :fungot: don't you think these parrots are getting uppity? < 1231877517 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: lucil. seruilius? you are they that hear their detractions, and can digest as much: make no compare between that love a woman can bear me and that i am < 1231877712 0 :kar8nga!n=kar8nga@e-181.vc-graz.ac.at JOIN :#esoteric < 1231878086 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-252-201.hsi2.kabel-badenwuerttemberg.de JOIN :#esoteric < 1231878090 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :^style irc* < 1231878090 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Not found. < 1231878095 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :^style ff7 < 1231878095 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Selected style: ff7 (Full script of the game Final Fantasy VII) < 1231878108 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :* means selected < 1231878110 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fungot: poop. < 1231878111 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: aooooooh!! get in the attack on weapon. we can't use it in time! don't let your guard down! or ain't my hospitality good enough for you to the ancients, only aerith can save our lives. < 1231878115 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fungot: poop out some text. < 1231878115 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :ehird: we've finally found you. < 1231878132 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh dear oh dear < 1231878301 0 :Corun!n=Corun@94-193-40-216.zone7.bethere.co.uk JOIN :#esoteric < 1231878647 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :two yesses and i'll watch an ep, otherwise not. < 1231878649 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :^bool < 1231878649 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1231878650 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :^bool < 1231878650 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1231878655 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ACTION watches < 1231879078 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :fungot: you enabler you < 1231879078 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: got it going to let them get any customers so. your orders? where are you talking about this? simply destroy a group like that you a copy once i push this button, they'll hear you. < 1231879315 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1231879613 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-252-201.hsi2.kabel-badenwuerttemberg.de JOIN :#esoteric < 1231880938 0 :Hiato!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231881689 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1231881817 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1231881824 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :Is the answer to this question "No."? < 1231881824 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :^bool < 1231881825 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :No. < 1231881837 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Great Success! < 1231881887 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is the answer to this question maybe? < 1231881888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^bool < 1231881888 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1231881910 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :erm... < 1231881915 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :According to fungot, the answer to MizardXs question isn't "No." < 1231881916 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :FireFly: i thought you were alive somewhere... before. goin' on!? da-chao statue and leviathan are ashamed!! you all right < 1231881925 0 :FireFly!unknown@unknown.invalid PRIVMSG #esoteric :'kay. < 1231881939 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Is the answer to this question yes? < 1231881941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^bool < 1231881942 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1231882244 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :What is the answer to this question? < 1231882251 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^ul (A cheat.)S < 1231882251 0 :fungot!unknown@unknown.invalid PRIVMSG #esoteric :A cheat. < 1231882627 0 :MigoMipo!unknown@unknown.invalid QUIT : < 1231882654 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :How did Vundo manage to protect itself even in Safe Mode? < 1231882797 0 :BeholdMyGlory!n=arvid@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1231882828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :idea: < 1231882839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a virtual machine running unpatched windows xp, with a mail account < 1231882846 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a daemon runs on the machine containing it < 1231882854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :whenever it gets an email with an attachment, it puts the attachment into the vm < 1231882857 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and executes it < 1231882863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :any next buttons are automatically clicked or sth < 1231882871 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and, regularly, screenshots are automatically taken < 1231882874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and posted to a website < 1231882876 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-> chaos < 1231883005 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://xkcd.com/350/ < 1231883059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1231883917 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure a file I have on my computer is part of Vundo, even though almost nothing detects it < 1231883923 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Is there any place I can submit it? < 1231883946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. email a security company. < 1231883992 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Like who? < 1231883996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :try google < 1231884062 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Found a place < 1231884080 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :where < 1231884115 0 :comexk!unknown@unknown.invalid NICK :comex < 1231884152 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :"Because Vundo has random file names, it is not possible for VundoFix to have a 100% detection rate. Often, the infected files must be removed using VundoFix's "Add more files" option (they cannot be removed manually in any way)." < 1231884158 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :maybe that is relevant? < 1231884190 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :VundoFix has an "Add more files" option? < 1231884204 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION goes to use < 1231884207 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(from wikipedia:VundoFix) < 1231884218 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Although, if I knew of that earlier, I would not have found this second file < 1231884257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :sgeo, how did you get infected? < 1231884266 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Don't know < 1231884267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :stoopid :| < 1231884278 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so why are you using windows again < 1231884288 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Various windows-only games < 1231884318 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut is wine/vmware < 1231884328 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oooooooooooooooooooooo < 1231884335 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :VMware doesn't work with 3d < 1231884373 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :and WINE doesn't work with one of the programs I want < 1231884398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so use wine with all but the one which it doesn't work with, use vmware for that one < 1231884401 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :better not have fun than to use windows. < 1231884416 0 :olsner_!unknown@unknown.invalid NICK :olsner < 1231884417 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :The one it doesn't work with is a 3d program < 1231884431 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :just stop playing and quit wineing. < 1231884445 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: so boot into windows for that one < 1231884467 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Or have a separate Windows laptop maybe.. OH WAIT < 1231885224 0 :Corun!n=Corun@94-193-40-216.zone7.bethere.co.uk JOIN :#esoteric < 1231885467 0 :Corun!unknown@unknown.invalid QUIT :Client Quit < 1231885518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :funge 98 in haskell project < 1231885519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i < 1231885520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s < 1231885522 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GO < 1231885554 0 :pikhq!unknown@unknown.invalid QUIT :"leaving" < 1231885560 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wonder what i should implement first < 1231885572 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :> < 1231885578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut? < 1231885595 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :or maybe v ? < 1231885598 0 :kar8nga!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1231885603 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: nowhere near that stage first < 1231885610 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that has to come after a complete fungespace impl... < 1231885667 0 :flexo!unknown@unknown.invalid QUIT :Remote closed the connection < 1231885673 0 :flexo!n=flexo@flexotec.eu JOIN :#esoteric < 1231885737 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1231885968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so. who's alive of {fizzie,Deewiant,AnMaster,Asztal}? < 1231885972 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{,Azstal} < 1231885998 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm? < 1231886010 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :trying to get the funge implementors :^) < 1231886031 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh that sz/zs thing < 1231886071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::-P < 1231886202 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :MEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE < 1231886237 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i detect a distinct lack of membership in the presented set < 1231886245 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1231886251 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::< < 1231886254 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1231886256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :have you implemented funge-98 oklopol < 1231886268 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :nope, nuvvah < 1231886273 0 :KingOfKarlsruhe!unknown@unknown.invalid QUIT :Remote closed the connection < 1231886285 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :93 a few times, does that count as one 98? :P < 1231886321 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no :P < 1231886331 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oh :( < 1231886385 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i guess the first problem is to choose the datastructure for an infinite, reasonably efficient mutable array, 93 experience won't help there < 1231886406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: also, N-dimensional < 1231886427 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1231886447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, lahey space < 1231886454 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1231886464 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so need to detect line ends < 1231886482 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :scratch my Data.Map suggestion for simplicity then < 1231886494 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Data.Map wouldn't be nearly fast enough anyway. < 1231886500 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Note, oerjan, that it does need to be sparse. < 1231886512 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Data.Map is sparse < 1231886515 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231886517 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: {} < 1231886525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I need an infinite efficient mutable sparse array in N dimensions, that I can use as a lahey space < 1231886530 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: hm? < 1231886533 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to tell #haskell that < 1231886534 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::DD < 1231886536 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: py < 1231886544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1231886547 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: < 1231886548 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The requirements for a line in Lahey-space are the following: Starting from the origin, no matter what direction you head, you eventually reach the origin. If you go the other way you reach the origin from the other direction. < 1231886557 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't that break down for infinite arrays? < 1231886577 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :er < 1231886601 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :as i said, you need to detect the end < 1231886629 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well just store max coords in all directions. < 1231886632 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :(of inhabited space) < 1231886674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: then... that's not fungespace < 1231886679 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fungespace is finite, isn't it? < 1231886680 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster? < 1231886681 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant? < 1231886689 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :http://www.gopromusic.com/get.php?id=1235 < 1231886692 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what are you talkin about? < 1231886713 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :lahey-space was invented for funges afaik < 1231886723 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and they are infinite < 1231886791 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :meh, okay < 1231886797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but < 1231886797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: < 1231886800 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Starting from the origin, no matter what direction you head, you eventually reach the origin. < 1231886803 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that implies finiteness < 1231886824 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :only in an abstract sense < 1231886831 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what really goes on iirc: < 1231886865 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :when you reach the end of the inhabited part of a line, you turn around and go to the other end, then turn again < 1231886870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1231886874 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so you jsut keep track of current bounds < 1231886877 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: i just mean that's a way to know when there's only uninhabited shit left. < 1231886878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and expand when you put stuff further? < 1231886881 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1231886883 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :max coords of el habitation. < 1231886931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: but e.g. "g" still works on uninhabited space < 1231886931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :like < 1231886936 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if we just have 0,0 inhabited < 1231886940 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :also, the "going to the other end" is of course without executing anything < 1231886941 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :does 1,1 == 0,0 < 1231886942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :when you g it? < 1231886945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e., does g wrap < 1231886947 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or only the ip < 1231886961 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :only the ip < 1231886981 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :heck otherwise there would be no easy way to expand the space... < 1231886992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1231886993 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that'd be using p < 1231886996 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :im talking about g < 1231887004 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well yeah < 1231887018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://search.cpan.org/~jquelin/Language-Befunge-4.07/ latest release november, i wonder if it works under mycology < 1231887019 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :but they are opposites so it would be insane < 1231887024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tru < 1231887040 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i don't _think_ funge-98 is insane in that particular way < 1231887098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not exactly obvious how it's wrap if it wrapped. < 1231887105 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :*it'd < 1231887146 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :lucky i have fuzzy parsing on :D < 1231887236 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :keeping only global bounds could be inefficient though < 1231887256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what do you do then < 1231887269 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :keeping bounds for each line < 1231887289 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1231887290 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so < 1231887297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :> < 1231887297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aaaaaaaaa < 1231887302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the first > meets itself instantly? < 1231887308 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :right < 1231887309 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ofc < 1231887317 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :befunge-98 is fucking crazy < 1231887330 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :the wrapping is instantaneous < 1231887337 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :holy fack. < 1231887338 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the other option is to loop infinitely anyway < 1231887345 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1231887350 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :which is important for synchronized threading iirc < 1231887374 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :well not that important, you don't actually need to wrap, ever. < 1231887387 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :what is more important is that whitespace is instaneous < 1231887413 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i vaguely recall someone mentioning it was ambiguous if it wrapped in a string < 1231887478 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :huh? < 1231887491 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :like if you have string mode and start moving into the infinite? < 1231887496 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231887504 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :err < 1231887512 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :in string mode, was whitespace space or not? < 1231887531 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well obviously it's space if it's inside < 1231887543 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :if it's space, then moving out of bounds should, imo, simply start making an infinite string and exhaust all memory. < 1231887556 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :the whitespace is collapsed XML-style in a string :) < 1231887567 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :O_O < 1231887573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1231887574 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :the idea is just whitespace is a special optimized nop < 1231887576 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'tis < 1231887577 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ok that part _may_ be insane :D < 1231887578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi Asztal < 1231887584 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :hello < 1231887587 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :it's not in string mode < 1231887595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Asztal: i assume you're willing to answer my endless qs :D < 1231887615 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :I can try :) < 1231887668 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i wonder if I should ask Haskell "So. I need an infinite efficient mutable sparse array in N dimensions (settable at runtime), that I can use as a lahey space" again < 1231888157 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :again? < 1231888234 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1231888279 0 :Corun!n=Corun@94-193-40-216.zone7.bethere.co.uk JOIN :#esoteric < 1231888717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :23:18 from that page: "Lahey-Space is a mathematical model of the space used in Funge-98" <-- that is a lie < 1231888718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :23:18 rwbarton: is it now < 1231888741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :23:18 Yes < 1231888742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :23:18 There is no math in the subsequent section < 1231888743 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fail < 1231888887 0 :Corun!unknown@unknown.invalid NICK :SomeGuy < 1231888905 0 :SomeGuy!unknown@unknown.invalid NICK :KEITH-EMULATOR < 1231888924 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1231888926 0 :KEITH-EMULATOR!unknown@unknown.invalid NICK :Corun < 1231888952 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :Corun: so there's a shortage of real keiths now? < 1231888955 0 :Corun!unknown@unknown.invalid PRIVMSG #esoteric :<_< < 1231888956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Syntax < 1231888956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The syntax for identifiers draws from the best parts of the esteemed languages BASIC and Perl. Like Perl, all identifiers must be preceded by a $ symbol, and like BASIC, identifiers must be followed by a symbol indicating their type. Except we don't care about their type really, so we say they must be followed by $. (Studies also show that this syntax can help serious TeX addicts from "bugging out".) < 1231888961 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-- http://catseye.tc/projects/quylthulg/doc/quylthulg.html < 1231889057 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :ehird: sure it was fail and not a joke? < 1231889062 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oklopol: nope < 1231889066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it was fail < 1231889067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1231889077 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :i mean it was a pretty classic joke. < 1231889098 0 :oklopol!unknown@unknown.invalid PRIVMSG #esoteric :was a pretty lucky fail < 1231889145 0 :Asztal!unknown@unknown.invalid PRIVMSG #esoteric :I'm glad I didn't bother with the N dimensions thing < 1231889150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As an example, < 1231889150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :-foreach $x$ = [2, 3, 4] with $a$ = 1 be *$a$*$x$* else be null-1- < 1231889151 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :will evaluate to 23. On the other hand, < 1231889153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :foreach $x$ = null with $a$ = 1 be $a$ else be 23 < 1231889155 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :will also evaluate to 23. < 1231889184 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think there's still some serious tex bugging there < 1231889223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now you see why we don't need arguments to these macros: you can simply use macros as arguments. For example, < 1231889223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :{*[SQR][*{X}*{X}*]}{*[X][5]}{SQR} < 1231889255 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The first school (Chilton County High School in Clanton, Alabama) says that most comments that programmers write are next to useless anyway (which is absolutely true) so there's no point in writing them at all. < 1231889256 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The second school (Gonzaga College S.J. in Dublin, Ireland — not to be confused with Gonzaga University in Spokane, Washington) considers comments to be valuable as comments, but not as source code. They advocates their use in Quylthulg by the definition of macros that are unlikely to be expanded for obscure syntactical reasons. For example, {*[}][This is my comment!]}. Note that that macro can be expanded in Quylthulg using {}}; it's just that the Gon < 1231889261 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :zaga school hopes that you won't do that, and hopes you get a syntax error if you try. < 1231889263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The third school (a school of fish) believes that comments are valuable, not just as comments, but also as integral (or at least distracting) part of the computation, and champions their use in Quylthulg as string literals involved in expressions that are ultimately discarded. For example, <"Addition is fun!"<+1+2+<. < 1231889465 0 :BeholdMyGlory!unknown@unknown.invalid PART #esoteric :? < 1231889930 0 :FireFly!unknown@unknown.invalid QUIT :"Later" < 1231889962 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :Is Quylthulg turing complete? < 1231889975 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes. < 1231890002 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :beyond all doubt, apparently < 1231890003 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :with addition of the turing-completeness instruction? < 1231890054 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION sprays Sgeo and lament with Doubt-B-Gone < 1231890139 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :PHHSHHHHHHHHHHHHHHTt. < 1231890171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a language with no iteration would be fun < 1231890174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the code is a list < 1231890184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so loops are making lists that cycle a few times < 1231890326 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :a cyclopean language < 1231890368 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it cycles, just like the bass guitar fretboard < 1231891033 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :AAAAAAHHHHHHHRRRRRRRGGGGGGGHHHHHHHH! < 1231891054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what < 1231891058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why did you say that in both channel < 1231891059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :s