< 1236902460 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Colemak is supposedly more optimal < 1236902492 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :don't be polemic, just use colemak < 1236902530 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is there a colemak for Swedish? < 1236902540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I type a lot in Swedish so I need åäö < 1236902541 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There is just one colemak < 1236902543 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :äåö < 1236902547 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, there is svorak < 1236902553 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :äåãøúüöáñéíóæœ < 1236902564 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, altgr isn't valid :P < 1236902565 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, I know. < 1236902578 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i use qwerty < 1236902581 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*crickets chirp* < 1236902582 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'm fine with altgr; you can always configure it yourself if you want < 1236902672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://colemak.com/FAQ#What.27s_wrong_with_the_Dvorak_layout.3F "# Even though the design principles are sound, the implementation isn't optimal because it was designed without the aid of computers. " <-- uh what? < 1236902682 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :qwerty, the favorite layout of crickets < 1236902692 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :"Because" doesn't make much sense there :-P < 1236902695 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I basically have a muscle memory of qwerty :( < 1236902702 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, same here < 1236902716 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Unlearning and learning something else would take up to a year, probably < 1236902718 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can switch to qwerty within minutes < 1236902718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I grew up with qwerty after all. Hard to unlearn it now < 1236902723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, probably < 1236902724 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and I give up after a day or two because I type so much < 1236902727 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that makes sense < 1236902730 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or rather, within seconds, but I'm back in comfort within minutes < 1236902731 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh yes I type lots too < 1236902736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lament, which line? < 1236902744 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Took me about a month or two to get fully comfortable with colemak < 1236902749 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: if you want to design an optimal layout, you would need statistical analysis of the text you type < 1236902760 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :hard to do that without a computer < 1236902762 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lament, ok, they could have said that. < 1236902765 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :(and without knowing what kind of text you type) < 1236902768 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lament: Hard but that doesn't imply that it's suboptimal < 1236902792 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I maintain that "suboptimal because no computers were used" doesn't hold < 1236902804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lament, because any random designer could do a nifty layout in photoshop, using a computer(!), and it probably wouldn't be any good < 1236902833 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i didn't write that FAQ, don't complain to me < 1236902841 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so saying something about computer aided statistical analysis would have been better < 1236902843 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :dvorak is good enough for me but it's clearly not optimal < 1236902878 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :eg "ls" is clearly bad, "i" and "u" should probably be switched... < 1236902894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1236902913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :qwerty is great because it's _always_ suboptimal < 1236902916 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :lament, you could do that in some file in /usr/share/keymaps/ iirc < 1236902922 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What's amusing is that http://en.wikipedia.org/wiki/Blickensderfer_typewriter had the same letters as Colemak on the home row, back in 1893 < 1236902925 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :maybe somewhere else for X < 1236902927 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1236902932 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Different order though < 1236902934 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :I'm fine with Dvorak. < 1236902954 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But I think that also goes a bit against Colemak's point about computer-aided statistical analysis < 1236902977 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: huh? < 1236902977 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, English has been the same for a long time, you don't need a computer to tell you that 'e' is the most common vowel and so on < 1236902983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, how emacs compatible is colmak? < 1236902990 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Don't know, don't care. < 1236902994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you use vi? < 1236902997 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: the relative frequency of letters is known. < 1236903003 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then how vi(m) compatible is it? < 1236903004 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lament: Yep. < 1236903011 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: that's not enough to design an optimal layout. < 1236903014 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hjkl are moved for example < 1236903022 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Not very, I remap the basic movement keys < 1236903034 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, mhm < 1236903035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wish there was something like vi that unsucked < 1236903047 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it's called µeamcs < 1236903050 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lament: True, but I just think they're stating it a bit too strongly < 1236903052 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :µemacs* < 1236903054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is not like vi AnMaster < 1236903062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well depends on what you define "like" as < 1236903065 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is an editor < 1236903066 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't remap much though, I like the mnemonics < 1236903071 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and not a potato < 1236903078 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :There's a "colemak.vim" which changes a crapload of stuff < 1236903083 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I argue vim is more like emacs than vim is like a potato~ < 1236903091 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But it's more a customization of the whole of vim than just a remapping of the keys < 1236903094 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So I don't use ti < 1236903095 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :s/ti/it/ < 1236903096 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: please complain to them, not to me. < 1236903112 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :lament: I wasn't complaining to you or to anybody, I just made a statement < 1236903148 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what the heck _is_ this ~ thing < 1236903160 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I can't remember whose idea it was < 1236903171 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :A sarcasm indicator, basically < 1236903182 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, is there a standard threading api lower level than pthreads? < 1236903186 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what a wonderful idea~ < 1236903223 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, it was ehird's idea < 1236903224 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :iirc < 1236903235 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you're so smart~ < 1236903236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :was t? < 1236903237 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*it < 1236903253 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, either that or you read it somewhere and mentioned it in this channel < 1236903256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure < 1236903269 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I could be wrong, it was some time ago after all < 1236903281 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: you wrong? never~ < 1236903292 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, memory isn't as good as when you were young < 1236903297 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :you should know how it is ;P < 1236903319 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :sorry, i don't remember how good my memory was when i was young~ < 1236903330 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah~~ < 1236903395 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: clone(2) < 1236903405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no manual entry for clone < 1236903405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236903422 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well yeah, if you want to be portable, no :-P < 1236903427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Beats me about OSX < 1236903446 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I just looked at the source of glibc and that's what it uses < 1236903464 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OS X would be whatever BSD uses < 1236903465 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well you could just copy some other manpage to it < 1236903471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :groan < 1236903494 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oerjan, :D < 1236903511 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :and here i thought that one was too subtle... < 1236903516 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway no standard one lower than pthreads no < 1236903525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is "implementation defined" < 1236903527 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: __clone? < 1236903535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pthreads is awful though < 1236903538 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, iirc clone() is linux specific < 1236903544 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it is a linux system call... < 1236903562 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, fork() shm_* < 1236903573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fork isn't threas < 1236903573 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ds < 1236903590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well depends. On linux fork() is clone() and phtreads is clone() < 1236903594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just different parameters < 1236903621 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It specifically needs to be a thread because i'm doing it for a gc < 1236903628 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so the gc has to fuck with the heap < 1236903631 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well linux also has a system call fork(), for compatibility with older code < 1236903639 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but nowdays clone() is used < 1236903648 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and the syscall fork() maps to the same code < 1236903701 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GregorR: egobfc2m doesn't work on non-linux :< < 1236903743 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Just look at your sys/syscall.h and see what's there :-P < 1236903753 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I need portable :P < 1236903763 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Then why ask for lowest level? :-P < 1236903769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I didn't say lowest < 1236903771 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I said lower than pthreads < 1236903783 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Why go lower instead of higher, in general < 1236903788 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If you're aiming for portability < 1236903788 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pthreads sucks :D < 1236903791 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :>_< < 1236903792 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, pthreads is the lowest portable < 1236903793 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :pthreads is about as low as you portably get, is my guess. < 1236903796 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :darn < 1236903798 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Then use a higher level library? < 1236903801 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which doesn't suck < 1236903804 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bah. < 1236903810 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wait < 1236903832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, nick confusion? You going low level and me and others suggesting higher level? < 1236903834 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :HUH! < 1236903851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :something isn't right here < 1236903868 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Greenity. < 1236903881 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :purplity < 1236903884 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Have to admit I've rarely seen people complain pthreads isn't low-level enough. < 1236903918 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, indeed. I have seen people saying it is too low level though < 1236903922 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I agree < 1236903925 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I prefer higher level < 1236904020 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Nighty-night, anyway. < 1236904143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SCHRODINGER'S SCHRODINGER < 1236904279 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what? < 1236904292 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yo schrodinger? < 1236904359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1236904366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I herd u liek quantum physicists < 1236904408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Say how do you tell vim not to give you the splash on startup < 1236904408 0 :Slereah!unknown@unknown.invalid PRIVMSG #esoteric :If you do, I am single < 1236904429 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because you know what < 1236904431 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FUCK UGANDA < 1236904434 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, can write(2) to stdout/stderr be buffered, so that you need to fsync it? < 1236904443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: for >file, maybe? < 1236904448 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i think you need a secret code that you only get if you actually donate~ < 1236904468 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: What about console? < 1236904475 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: dunno < 1236904481 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Yo dog, I heard you like Schrodinger's boxes, so I may have put a Schrodinger's box inside a Schrodinger's box so you can be uncertain of whether you're uncertain or not. < 1236904485 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I guess it could be, in theory < 1236904491 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :I'm not the kind of guy who says "dawg", you see. < 1236904519 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I also see that you don't say "Schrödinger" < 1236904531 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :What did umlauts ever do to you? < 1236904552 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :an umlaut killed my granduncle! < 1236904560 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Oh, dear! < 1236904630 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :orelo: orely? < 1236904657 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ö®ëll¥¿ < 1236904683 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Schrödinger. < 1236904794 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION watches irssi's status line scroll up into backscroll. < 1236904897 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :that sounds borken < 1236904920 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :It is relatively borken, yes. < 1236904977 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :I'll take a screenshot in a while. < 1236905247 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :http://i39.tinypic.com/20r2ob8.png < 1236905293 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1236905304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Vim cannot address the space one after a lines last character (before the newline). < 1236905307 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Why is this? Deewiant? < 1236905350 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Because you're not in insert mode? < 1236905385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Correct. < 1236905386 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And? < 1236905391 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Why can I not address that position? < 1236905409 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Because you don't want to. < 1236905444 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Having my thin-line-style cursor end at the seemingly-arbitrary second-last character is jarring. < 1236905475 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :orelo: what happens if you press ^L ? < 1236905492 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm i guess it's a bit late now < 1236905625 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: hm i have a thick cursor when not in insert mode, i suppose that fits vim better < 1236905639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, can you do a multiline string in a vimrc? < 1236905707 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries < 1236905740 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Hey, it fixes it. < 1236905770 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so just a display bug < 1236905778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::\ < 1236905798 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :It's kind of a Unicode bug. < 1236905814 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :I think my terminal settings are lying when they say UTF-8. < 1236905839 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :Ä < 1236905882 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :That character is supposed to be a capital A with an umlaut or diaeresis; instead, when I type it, it appears to produce a line break and move right. < 1236905888 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :i note there were _two_ unicode lines before that bug in the screenshot < 1236905900 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :In the chat window, it displays as inverse D. < 1236905905 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :yeah it's an A with umlaut here < 1236905957 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh only one of the lines were yours < 1236905969 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :so it's when you are typing < 1236906036 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ehird: how do you get a thin-line cursor in vim? < 1236906043 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :more importantly, why would you want one < 1236906060 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :I conclude that irssi is not sending UTF-8 to my terminal. < 1236906064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :set guicursor=n-v-c:block-Cursor/lCursor,ve:ver1-Cursor,o:hor25-Cursor,i-ci:ver1-Cursor/lCursor,r-cr:hor1-Cursor/lCursor,sm:ver1-Cursor < 1236906076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that will give you block cursor on normal mode, thin cursor on everything else but r and c < 1236906091 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'd like to make the cursor gray < 1236906093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so it stands out less < 1236906107 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :lol, gui < 1236906140 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you use gvim last I checked < 1236906154 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :no, I don't < 1236906163 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You certainly tried it. < 1236906180 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :that's correct, I opened gvim once to try it. :D < 1236906190 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :and I just opened it again to see what you're talking about. < 1236906223 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :you have a line ending with a space? < 1236906226 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :and you can't address it? < 1236906242 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :To be precise, irssi is not sending UTF-8 to screen or screen is not sending UTF-8 to sshd or sshd is not sending UTF-8 to ssh or ssh is not sending UTF-8 to my terminal. < 1236906282 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :oh, you just want to put the block after the last character < 1236906291 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :why < 1236906350 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because it was a vertical line < 1236906355 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so it looked stupid otherwise < 1236906358 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but notw it's not < 1236906367 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :mm < 1236906392 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :I'm still deciding whether or not I like vim putting you at a character instead of between characters < 1236906419 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :for ^ and $, it's just a waste of time to remember whether to use i or a < 1236906425 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :but for searches, it makes sense... < 1236906458 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :^i = I, $a = A < 1236906470 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :btw, the ironman colour scheme is nice < 1236906509 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :oerjan: nice, I'll remember that < 1236906510 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION maps Ctrl-A to I and Ctrl-E to A < 1236906514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :emacs addiction. < 1236906528 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ctrl-a > ^ < 1236906530 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :that requires a big reach < 1236906535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not for me < 1236906537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236906537 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236906539 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1236906545 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this one works in insert mode though too < 1236906546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236906574 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :also, what < 1236906595 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION concludes that irssi is sending UTF-8 to screen < 1236906600 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :naah, because in normal mode you get a beep < 1236906620 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :solution: nnoremap < 1236906622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :comex: < 1236906623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nmap ^ < 1236906624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :imap I < 1236906626 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nmap $ < 1236906627 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :or that < 1236906628 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :imap A < 1236906638 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :works exactly how you expect in both modes < 1236906647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not in visual mode, though < 1236906651 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who gives a shit about visual mode < 1236906666 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ACTION vmap < 1236906682 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :night < 1236906686 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ACTION likes visual mode < 1236906688 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :except < 1236906689 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can't do < 1236906694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :foo < 1236906697 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :because that trashes your selection < 1236906702 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ehird: vmap ^ < 1236906706 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236906813 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders how to remember 'vaB' < 1236906821 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmmmmmm < 1236906826 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my hi Cursor things are being ignored :( < 1236906873 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1236906921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :colorscheme ironman < 1236906921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi Cursor guifg=#000000 guibg=#CCCCCC < 1236906923 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi lCursor guifg=#000000 guibg=#CCCCCC < 1236906925 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi CursorIM guifg=#000000 guibg=#CCCCCC < 1236906927 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lovely < 1236906974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1236906978 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I restart, and it forgets < 1236907015 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :too bad there isn't a way to select the {}-delimited block _and whatever comes before it_ < 1236907024 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ehird: shit gets reset when you do shit < 1236907026 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric ::p < 1236907031 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :though it would require knowledge of C < 1236907031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes but < 1236907033 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ais523: can emacs do that? < 1236907035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::soucre ~/.vimrc < 1236907036 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ohwaityouaren'there < 1236907037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FIXES IT < 1236907038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*source < 1236907044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :comex: umm, no, it wouldn't require that < 1236907046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :create a function < 1236907049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then map a key to call it < 1236907050 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :voila < 1236907058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :full vimscript at your fingertips (NOTE: vimscript is shit) < 1236907072 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :I meant it would require knowing that the file is C < 1236907082 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :which, according to ais523, is bad < 1236907089 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric : /emacsy < 1236907091 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :I don't see why < 1236907094 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric ::u < 1236907095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236907102 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :I'm gonig to have to learn vim scripting though < 1236907105 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :now comex < 1236907110 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how come source .vimrc fixes this < 1236907111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::| < 1236907112 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :so far I've just been copying from the tips wiki < 1236907120 0 :orelo!unknown@unknown.invalid PRIVMSG #esoteric :echo -e \\0347\\0214\\0253 does precisely what it ought to. < 1236907128 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ehird: do it after syntax on < 1236907131 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :if you're not already < 1236907136 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :wait, < 1236907138 0 :kerlo!n=ihope@normish.org JOIN :#esoteric < 1236907139 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :cursor isn't syntax < 1236907141 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ACTION shuts up < 1236907144 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that is default, for one :p < 1236907153 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :ehird: < 1236907156 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :move it to the end of vimrc < 1236907162 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1236907166 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it works after syntax on < 1236907167 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :figure, go < 1236907255 0 :kerlo!unknown@unknown.invalid QUIT :Client Quit < 1236907320 0 :orelo!unknown@unknown.invalid NICK :kerlo < 1236907346 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :I've deduced, I suppose, that screen is messing everything up. < 1236907447 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hey comex, whats the thing for :e-but-in-a-new-tab < 1236907819 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :ehird: :split < 1236907966 0 :olsner!unknown@unknown.invalid QUIT :"Leaving" < 1236908166 0 :Robdgreat!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1236908170 0 :Robdgreat!i=rob@unaffiliated/robdgreat JOIN :#esoteric < 1236908245 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1236908266 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1236909273 0 :Sgeo!unknown@unknown.invalid NICK :Sgeo[Worms] < 1236909786 0 :Slereah_!n=butt@ANantes-259-1-1-125.w92-135.abo.wanadoo.fr JOIN :#esoteric < 1236910761 0 :Slereah!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236912583 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :trees of bloom filters! < 1236912640 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :forests in bloom! < 1236912759 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :what's the most efficient way of representing 3 bit strings, A, (A|B), and B? < 1236912821 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :surely you can do better than 3n < 1236912948 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :um one is the or of the others? < 1236912964 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1236912976 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :erm what is (A|B) < 1236913000 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :bsmntbombdood: ^ < 1236913009 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :bitwise or < 1236913014 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236913026 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well just leave it out, duh < 1236913028 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :2n < 1236913043 0 :kwertii!n=kwertii@c-71-202-121-102.hsd1.ca.comcast.net JOIN :#esoteric < 1236913068 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :...except you're not allowed to do that < 1236913088 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well then it's a question of what you mean by "representation" < 1236913107 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :since that is the precise shortest way, i think < 1236913195 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :what about sending A,B, and one of the flag pairs 10, 11 or 01? < 1236913231 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :2n+2, and each of them can be sent "separately" < 1236913252 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :of course that is long for everything _other_ than (A|B) < 1236913255 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :let's say this: you need to be able to compute A|B by looking at no more than n bits < 1236913264 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236913266 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236913341 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :well then, if the same is true for A and B, and those are independent, then you must have n bits that represent A and n disjoint bits that represent B < 1236913396 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :obviously you need to add _something_ to be able to compute (A|B) from n bits < 1236913414 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236913462 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :although theoretically the representations of A and B could be recodings, no need to store the actual same bits < 1236913485 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :A and B are independent < 1236913525 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :it just seems like it should be possible to do better than 3n because A|B is biased towards 1 < 1236913676 0 :oerjan!unknown@unknown.invalid PRIVMSG #esoteric :hm no idea < 1236913812 0 :kwertii!unknown@unknown.invalid QUIT :"bye" < 1236913825 0 :kwertii!n=kwertii@c-71-202-121-102.hsd1.ca.comcast.net JOIN :#esoteric < 1236915937 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :what's a good rolling checksum/? < 1236916043 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :0 < 1236916046 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :It's round and smooth. < 1236916051 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Should roll quite nicely. < 1236916071 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :It's also the 1-bit checksum (i.e. parity) for anything that has an even number of 1s. < 1236916110 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :ah, that's helpful < 1236916128 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :Damn, then I've failed. < 1236916240 0 :Sgeo[Worms]!unknown@unknown.invalid NICK :Sgeo < 1236916324 0 :bsmntbombdood!unknown@unknown.invalid PRIVMSG #esoteric :i would use adler32, but that's no good for short strings < 1236916536 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1236916668 0 :neldoreth!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1236917804 0 :kwertii!unknown@unknown.invalid QUIT :"bye" < 1236919001 0 :GreaseMonkey!n=gm@unaffiliated/greasemonkey JOIN :#esoteric < 1236922847 0 :oerjan!unknown@unknown.invalid QUIT :"Good night" < 1236922938 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :ALL TAUTOLOGIES ARE TAUTOLOGIES < 1236922946 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :i just felt i should let you guys know this. < 1236922968 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :x!=x is true for some x < 1236924000 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :nan != nan < 1236925342 0 :psygnisfive!unknown@unknown.invalid PRIVMSG #esoteric :which is weird. < 1236926944 0 :oklofok!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1236928058 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236928229 0 :Sgeo!unknown@unknown.invalid QUIT :"Leaving" < 1236931199 0 :clog!unknown@unknown.invalid QUIT :ended < 1236931200 0 :clog!unknown@unknown.invalid JOIN :#esoteric < 1236934257 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1236934761 0 :jix!n=jix@dyndsl-095-033-112-229.ewe-ip-backbone.de JOIN :#esoteric < 1236936714 0 :GreaseMonkey!unknown@unknown.invalid QUIT :"Client Excited" < 1236938632 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: re. vim addressing the nonexistent last char on a line, look at :help 'virtualedit < 1236940681 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :This was a rather vague statement: "For students – written confirmation of student status signed by scientific advisor is needed." We just faxed a free-form statement printed on some TKK logo-paper, since I don't think any of the more or less official "student status" proofs have any "scientific advisors" on them. < 1236942372 0 :tombom!i=tombom@wikipedia/Tombomp JOIN :#esoteric < 1236942388 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Gahh that IE-only Travel system is horrible. < 1236943041 0 :mvmn!n=sauron_i@194.44.247.140 JOIN :#esoteric < 1236943131 0 :mvmn!unknown@unknown.invalid PRIVMSG #esoteric :Hails < 1236943170 0 :mvmn!unknown@unknown.invalid PRIVMSG #esoteric :I've implemented Thue interpreter in Java. You may get it freey from here - http://mvmn.wordpress.com/2009/03/12/thue-in-java/ < 1236943234 0 :mvmn!unknown@unknown.invalid PRIVMSG #esoteric :I don't know what I did it for (it's esoteric, hehe), so decided to spread it to the world - maybe someone will find a good use for it (-: < 1236943609 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236944466 0 :mvmn!unknown@unknown.invalid PART #esoteric :? < 1236944599 0 :Oklopol!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1236944614 0 :Oklopol!unknown@unknown.invalid PRIVMSG #esoteric :my computer is borken `___´ < 1236944619 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :BORK < 1236944623 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :BORK BORK BORK BORK < 1236944639 0 :Oklopol!unknown@unknown.invalid NICK :oklopoll < 1236944640 0 :oklopoll!unknown@unknown.invalid NICK :oklopol < 1236945587 0 :oklofok!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236950426 0 :Hiato!n=1@dsl-245-1-23.telkomadsl.co.za JOIN :#esoteric < 1236951269 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1236955388 0 :Judofyr!unknown@unknown.invalid QUIT :Remote closed the connection < 1236955751 0 :Judofyr!n=Judofyr@c349BBF51.dhcp.bluecom.no JOIN :#esoteric < 1236956470 0 :oklopol!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236957595 0 :Judofyr!unknown@unknown.invalid QUIT :Remote closed the connection < 1236959394 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236960173 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1236960508 0 :neldoret1!n=user@81-223-127-237.stpeter.xdsl-line.inode.at JOIN :#esoteric < 1236961061 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oerjan is wrong < 1236961066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::split is for framey-things < 1236961066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but tabs < 1236961068 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not < 1236961103 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric ::tabe % < 1236961111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236961113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :tabe < 1236961127 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://img24.imageshack.us/img24/1448/picture5okr.png <- those buttons, looks like snow leopard < 1236961261 0 :neldoreth!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1236961438 0 :FireyFly!n=FireFly@1-1-3-36a.tul.sth.bostream.se JOIN :#esoteric < 1236961816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236961821 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :now to figure out how to "tabe filename at point" < 1236962224 0 :BeholdMyGlory!n=BeholdMy@d83-183-181-73.cust.tele2.se JOIN :#esoteric < 1236963147 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236963314 0 :Sgeo!n=Sgeo@ool-18bf68ca.dyn.optonline.net JOIN :#esoteric < 1236963331 0 :Corun!unknown@unknown.invalid QUIT :Client Quit < 1236963387 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We thought if we were to find the smallest universal machine then we could learn a great deal about computability -- of course that wouldn't be so! < 1236963390 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— John McCarthy < 1236963395 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The reader is welcome to enter the competition [to design the smallest universal Turing machine ...] although the reader should understand clearly that the question is an intensely tricky puzzle and has essentially no serious mathematical interest. < 1236963397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— Marvin Minsky < 1236963402 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NOW WE UNDERSTAND COMPUTATION! < 1236963405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :— Stephen Wolfram < 1236963509 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Wolfram solved the halting problem < 1236963523 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes he asked wolfram|alpha < 1236963527 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"how to solve halting problem" < 1236963529 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1236963541 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and it gave him that stackoverflow article we linked earlier < 1236963544 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(about the BF halting checker) < 1236963549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and then he enlighteninged < 1236963647 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :BF halting checker? < 1236963671 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :That shouldn't be too hard, considering that most BF is 30k cells or so < 1236963673 0 :MigoMipo!n=MigoMipo@84-217-3-248.tn.glocalnet.net JOIN :#esoteric < 1236963730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10AB -> B < 1236963730 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :11ABC -> 11AC1BC < 1236963739 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :^ simpler than Binary Combinatory Logic? < 1236963742 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm wait < 1236963746 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that has 11 wrong < 1236963747 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :damn < 1236963748 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nm < 1236963951 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1236963956 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi < 1236964539 0 :bsmntbombdood!unknown@unknown.invalid QUIT :Read error: 113 (No route to host) < 1236964581 0 :bsmntbombdood!n=gavin@97-118-133-63.hlrn.qwest.net JOIN :#esoteric < 1236964624 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://nitens.org/taraborelli/latex ← Typography porn. < 1236964791 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ligatures are hot < 1236964838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if there's someone who's actually sexually attracted to good typography. < 1236965009 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.josbuivenga.demon.nl/tallys.html <- awesome font < 1236965028 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Er, typeface. < 1236965031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Please forgive me. < 1236965081 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :ehird : We have someone on a conlanging forum < 1236965086 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :She has this expression < 1236965089 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :SCRIPTGASM < 1236965092 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A person? On a forum? That's amazing. < 1236965098 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Because she enjoys "pretty scripties" < 1236965110 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, sure, but is she actually physically aroused by them? < 1236965117 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You'll have to do some tests. < 1236965153 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Well, she's a minor, so it would probably be illegal < 1236965166 0 :oklofok!n=nnscript@a91-153-121-248.elisa-laajakaista.fi JOIN :#esoteric < 1236965327 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wow, why have I never used Hoefler Text before? < 1236965329 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That's one awesome typeface. < 1236965717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :kay, if I ever publish a book it'll be in hoefler tex < 1236965718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :t < 1236966673 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, fizzie: There? < 1236966700 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :What exactly is the correct way to interpret a form feed in the program file when in befunge 98 mode? < 1236966714 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :byte #12 < 1236966724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so it should just be loaded as it is? < 1236966732 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes < 1236966769 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Subsequent lines in Unefunge are simply appended to the first, and the end of the source file indicates the end of the (single) line. End-of-line markers are never copied into Funge-Space. < 1236966774 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that is for unefunge < 1236966786 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Ah, crap < 1236966787 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Then do that < 1236966794 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so loading form feed raw into funge space would be inconsistent < 1236966795 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I.e. ignore it < 1236966804 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what about when you load with i? < 1236966814 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"source file" < 1236966818 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so < 1236966824 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if it's a source file < 1236966828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then newlines are ignored < 1236966830 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :otherwise, it's not < 1236966832 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i includes a file, right? < 1236966833 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or sth < 1236966836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i'd class that as a source file < 1236966836 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :loading with i is equivalent to loading the source < 1236966842 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, you can load a source file with i, or a data file < 1236966859 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'd say any file-based representation of fungespace where one char = one place is a source file < 1236966862 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you know wha I mean < 1236966863 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1236966871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, i has two loading modes. < 1236966872 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Also, if the least significant bit of the flags cell is high, i treats the file as a binary file; that is, EOL and FF sequences are stored in Funge-space instead of causing the dimension counters to be reset and incremented. < 1236966880 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, and they are both very well specced. < 1236966886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: i can has two loading modes? < 1236966894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, XD < 1236966897 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, that answers your question directly... I don't get why you're asking me < 1236966977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :okay I am way too obsessed with fonts atm; halp < 1236966993 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Use Comic Sans and forget the rest < 1236966997 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://bohemiancoding.com/?Fontcase <-- think I will download this to feed my crack^Wfont habit < 1236967000 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, So to get it straight: 1) Initial load: ignore FF in befunge. 2) i binary: put everything in 3) i non-binary: EOL as usual (y++) FF ignored? < 1236967004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I should make Comic Helvetica < 1236967011 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 1) and 3) are equivalent < 1236967015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and cause the apocalypse < 1236967020 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 1) just hardcodes the position as (0,0) < 1236967026 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(,0,0,0...) < 1236967041 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, yes indeed. I just wanted to be sure I got it right < 1236967047 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: If you want to be useful add glyphs to DejaVu Sans Mono < 1236967057 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't like dejavu sans mono :-( < 1236967068 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It looks ugly. < 1236967076 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Start with GLAGOLITIC CAPITAL LETTER SPIDERY HA < 1236967083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... On the other hand! < 1236967087 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, currently I'm doing coverage analysis of cfunge and writing test cases for things missing mycology. < 1236967100 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :New project: Add the GLAGOLITIC CAPITAL LETTER SPIDERY HA to every font in the universe. < 1236967117 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, sounds cool. How do you make/edit a font btw? < 1236967123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: using expensive software < 1236967127 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :U+2C22 if you want to look at a reference pic < 1236967136 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm sure there is some free software *searches* < 1236967147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: yes, but ... not very good. < 1236967152 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :media-gfx/fontforge http://fontforge.sourceforge.net/ ? < 1236967156 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :never tried it < 1236967166 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :typefaces are ... ever so slightly complex. < 1236967173 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also very niche < 1236967178 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Which would explain the lack of good free tools < 1236967182 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately < 1236967183 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well truetype is certainly complex < 1236967191 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fontographer seems popular < 1236967192 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I remember reading about the file format some time ago. < 1236967194 0 :kar8nga!n=kar8nga@a-144.vc-graz.ac.at JOIN :#esoteric < 1236967210 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :http://dejavu-fonts.org/wiki/index.php?title=Developer%27s_Corner suggests fontforge < 1236967215 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: truetype is out of date, actually < 1236967220 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, sorta < 1236967226 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :opentype is more widely used in new stuff IME < 1236967232 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1236967236 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: yes, but they're a free project; they wouldn't recommend a commercial tool < 1236967241 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I never seen opentype on anything but apple < 1236967251 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: opentype is a microsoft format < 1236967256 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh hm < 1236967257 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Yes, of course, I was only considering free ones anyway < 1236967265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Well, there's only fontforge. < 1236967274 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I'm pretty sure I have seen opentype on OS X though... I may be wrong < 1236967277 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1236967281 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :all default fonts on OS X are opentype < 1236967283 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236967297 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :holy crap I love fontcase < 1236967300 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, is opentype free and patent-unencumbered? < 1236967306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :um < 1236967312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :iii don't know < 1236967320 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://partners.adobe.com/public/developer/opentype/index_spec.html < 1236967321 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I mean, just because it says "open" doesn't mean it actually is < 1236967328 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there's the spec < 1236967339 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1236967339 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1236967342 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1236967343 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hi ais523 < 1236967357 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, argh! you were a second faster < 1236967366 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so I ended up second < 1236967370 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ooh, Charcoal CY is a pretty typeface < 1236967381 0 :Judofyr!n=Judofyr@c0796BF51.dhcp.bluecom.no JOIN :#esoteric < 1236967567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I think your = has a bug < 1236967586 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi ehird, AnMaster < 1236967590 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, "After execution, a failure value is pushed onto the stack. If this value is zero, everything went as expected. If the value is non-zero, it may be the return-code of the program that was executed; at any rate it means that the attempt to execute the program, or the program itself, did not succeed." < 1236967601 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, try = on empty stack, it pushes 0 < 1236967612 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :it might be UNDEF < 1236967616 0 :Mony!n=Harmony@AToulouse-258-1-93-123.w90-60.abo.wanadoo.fr JOIN :#esoteric < 1236967636 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :but to me it sounds like everything didn't go as planned < 1236967639 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I'd say everything went as expected < 1236967647 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :You asked me to execute nothing and I did, successfully < 1236967652 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so what is the meaning of empty string = ? < 1236967658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does = do? < 1236967663 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Like /bin/true < 1236967669 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ais523: system() < 1236967679 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hmm... empty string = is impl-defined, I'm almost certain < 1236967684 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, execute a string in an implementation defined way. This means system() usually < 1236967686 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i just want to buy every typeface in the world. < 1236967690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and use them all. < 1236967700 0 :Mony!unknown@unknown.invalid PRIVMSG #esoteric :plop < 1236967713 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :cfunge pushes -2 on empty string to = < 1236967714 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :hi Mony < 1236967726 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what does system("") do? < 1236967728 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: FBBI would also push 0 < 1236967728 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that should be what = does. < 1236967737 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, implementation defined I *think* < 1236967741 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: try it on your system. < 1236967743 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is C implementation < 1236967744 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : If the value of command is NULL, system() returns non-zero if the shell < 1236967744 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric : is available, and zero if not. < 1236967744 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :if it does something sane, copy that < 1236967749 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :system(NULL) is defined by the C standard, it tells you whether system() can do anything or not < 1236967751 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: do that, then < 1236967753 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :system("") is different, and isn't defined < 1236967757 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236967757 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236967766 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, what does system("") do on linux/bsd? < 1236967769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just do that. < 1236967804 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: You do realize that my code is just push(system(popstring)) or something equally simple < 1236967811 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Then your code is right./ < 1236967816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1236967823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm going to make my own Befunge interp. Again < 1236967831 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :how's your INTERCAL impl doing? < 1236967832 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it returns 0 < 1236967838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Do that. < 1236967847 0 :jix_!n=jix@dyndsl-095-033-074-217.ewe-ip-backbone.de JOIN :#esoteric < 1236967848 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: When I said April, I meant next April < 1236967874 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-INTERCAL 0.01 was famously written in a weekend < 1236967878 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :admittedly, it didn't actually work < 1236967878 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But anyway; only three compliant implementations? This will not do. < 1236967884 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Four, no? < 1236967890 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Umm.. < 1236967892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, stinkhorn? < 1236967895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Isn't that really incomplete? < 1236967900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :on *POSIX* system() is defined like: < 1236967900 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That makes five if it does < 1236967901 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : The environment of the executed command shall be as if a child process were created using fork(), and the child process invoked the sh utility using < 1236967902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : execl() as follows: < 1236967902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : execl(, "sh", "-c", command, (char *)0); < 1236967905 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what is stinkhorn? < 1236967905 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: list them? < 1236967908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Asztal's < 1236967912 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CCBI, cfunge, RC/funge98 < 1236967914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : where is an unspecified pathname for the sh utility. < 1236967915 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: CCBI, cfunge, RC/Funge-98, Language::Befunge were the ones I was thinking of < 1236967917 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What else is compliant? < 1236967918 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236967922 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Language::Befunge is compliant? < 1236967924 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And complete? < 1236967932 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Last I checked, IIRC, yes < 1236967940 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well, very slow, I presume :P < 1236967953 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :He's working on speeding it up, haven't tried it in a while < 1236967965 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, and yes your code is very similiar to push(system(popstring)). I looked a few minutes ago. Think there was a cast too < 1236967980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :void execute() { < 1236967980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : ip.stack.push(cast(cell)system(popStringz())); < 1236967980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :} < 1236967983 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that is Deewiant's code < 1236968004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, my interpreter's goal: < 1236968020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Be completely complian. Support as many fingerprints as possible. As a very distant last goal, be fast enough. < 1236968021 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Make a DS9K < 1236968024 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*compliant < 1236968038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: I will be sure to have a flyDemonsOutOfUsersNose function. < 1236968040 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sounds like CCBI to me, 'fast' just a bit more distant then usual < 1236968042 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, hm = may *ONLY* reflect if = is unimplemented right? < 1236968043 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Argh < 1236968044 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :s/then/than/ < 1236968048 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is efunge complaint yet < 1236968054 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think so, yep < 1236968062 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :indeed < 1236968064 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I doubt it's a complaint < 1236968077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: CCBI is 1) not written by me 2) doesn't support all of MKRY's shitprints 3) is not written in Haskell < 1236968093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well 99.99%. I just found a bug if a file uses CR line endings. Haven't had time to investigate yet. < 1236968101 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, MKRY is MikeRiley's new name; spread the word. < 1236968113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I found it doing coverage analysis, and I plan to complete that first, collecting a todo list. < 1236968121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :brb phone < 1236968121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, I'd love to make a befunge-98 DS9K < 1236968134 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :a befunge-93 DS9K would unfortunately probably not function on any programs at all < 1236968143 0 :Slereah_!unknown@unknown.invalid PRIVMSG #esoteric :Deep Space 9000? < 1236968152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: make a (feral) DS9K fingerprint < 1236968155 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Right, some of 2) is actually by choice and not just due to that DMD bug < 1236968156 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that has no instructions < 1236968159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but when you load it < 1236968165 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it puts the interpreter into DeathStation 9000 mode < 1236968168 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: For 3) we have hsfunge (or we don't, but funktio does) < 1236968172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for hardcore programmers < 1236968176 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: so it complies with the standard, but nothing else? < 1236968184 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: right! Not even the laws of physics. < 1236968186 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :unfortunately, it has at least one fingerprint loaded, and thus can legally do anything < 1236968186 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :That'd be a bit crap actually < 1236968206 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Because the spec is so messed up that it probably wouldn't run many programs that well < 1236968212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: 2) See? Inferior. 3) It is incomplete, and doesn't reach the other goals, and funktio is dead < 1236968221 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, that would be the point < 1236968233 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :funktio isn't dead, he said something on #haskell a few days ago < 1236968249 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And for 2), well, we have RC/Funge-98 for that < 1236968251 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :his site is down, he hasn't been in here for ages, and I don't even know how I could get hsfunge < 1236968253 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :he's pretty dead < 1236968259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and 2) RC/Funge doesn't meet the other goals :P < 1236968264 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :His site is dead < 1236968348 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: And given your original goals, I think it does meet < 1236968364 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It fails 1) and 3) of my new goals < 1236968365 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :17:14 ehird: Deewiant: CCBI is 1) not written by me 2) doesn't support all of MKRY's shitprints 3) is not written in Haskell < 1236968423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Slereah_: DS9K = DeathStation 9000 < 1236968447 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is basically something that complies to the letter of a standard, but not its spirit < 1236968463 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :like Windows for POSIX, for instance, they got everything that legally could return ENOTIMPLEMENTED IIRC < 1236968466 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: You didn't explicitly specify those as goals < 1236968474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: oh stfu :P < 1236968558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway the most important thing in a funge interp is a name; all else follows < 1236968571 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe i should call it FG98 :-D < 1236968578 0 :jix!unknown@unknown.invalid QUIT :Connection timed out < 1236968590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/pipermail/haskell-cafe/2009-March/057590.html <-- <3 < 1236968594 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: what will its handprint be? < 1236968606 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: FG98 < 1236968606 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236968609 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :makes sense < 1236968616 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what will the handprint for the next version be? < 1236968623 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :next version? < 1236968640 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster/Deewiant: do you have to change the handprint if you upgrade a Funge interp to a new version? < 1236968651 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :No < 1236968676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, it's variants that have to have different handprints < 1236968694 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :such as CFUN for cfunge, but CFFI for cfunge + IFFI + C-INTERCAL < 1236968777 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1236968799 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I NEED A BASIC REPL < 1236968830 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: BASIC isn't really suited to REPLs < 1236968836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sure it is < 1236968839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whyever not? < 1236968844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As long as it automatically numbers lines < 1236968850 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because nearly all nontrivial BASIC programs span multiple lines < 1236968854 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yes, and? < 1236968860 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :you mean liek c64 < 1236968924 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hee I wrote a BASIC program oh that was fun < 1236968927 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :what is so fun about BASIC? < 1236968929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's so shitty/ < 1236968938 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :REPLs? < 1236968948 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :BASIC was one of the first languages to really catch on amongst the general computer-using public < 1236968949 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: o_o < 1236968951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!SYNTAX ERROR IN LINE 40, COLUMN 29 < 1236968951 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : UNEXPECTED 1 < 1236968953 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : EXPECTING : OR END OF LINE < 1236968954 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :it means "replica" < 1236968959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it just puts the parsec error in uppercase < 1236968959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :xD < 1236968960 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: Read, Evaluate, Print, Loop < 1236968974 0 :oklofok!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: either me or ais523 is lying, i think < 1236968979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's a small program that prints the results of expressions in a given language < 1236968989 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :such as ghci for Haskell, or intercalc for CLC-INTERCAL < 1236969004 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sgeo: it's like < 1236969007 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$ python < 1236969008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :for python. < 1236969013 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wikis < 1236969014 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(There, in words you understand. :P) < 1236969014 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ty < 1236969018 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :lol < 1236969020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the interactive prompt < 1236969051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :interestingly, with Perl you need to use perl -de 0 to get a repl < 1236969053 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not just perl < 1236969059 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236969060 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :question < 1236969064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in BASIC how come < 1236969066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF X THEN NUMBER < 1236969070 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :gotos NUMBER < 1236969072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but, e.g. < 1236969075 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT "FOO":10 < 1236969076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :doesn't work < 1236969077 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you need < 1236969080 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT "FOO":GOTO 10 < 1236969088 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :IF X THEN 10 is an abbreviation < 1236969091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :syntax antisugar, if you like < 1236969101 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no that's definitely syntactic sugar < 1236969104 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it was actually the only form of IF that used to be accepted < 1236969120 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it used to be that IF only ever did a goto, you couldn't get it to do anything else < 1236969127 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"For example, FORK=1TON appears to set the value of a variable FORK to a weight of 1 ton. In reality it begins a FOR loop with control variable K, ranging in value from 1 to N." < 1236969155 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, that was important on early computers, removing all the whitespace from a program helped it to fit in memory < 1236969200 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 PRINT "LOOK AROUND YOU"; < 1236969201 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 GOTO 10 < 1236969208 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969210 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969213 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969213 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NO < 1236969214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it has ; < 1236969215 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it all goes on one line < 1236969218 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOULOOK AROUND YOU < 1236969224 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :; is an anti-newline in BASIC print statements < 1236969232 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :OHHHHHHHHHHHHHHHHHHHHH < 1236969236 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even better, < 1236969241 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :<3 Look Around You < 1236969244 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :PRINT "LOOK AROUND YOU"' < 1236969245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although; in the original one, it had no ; < 1236969249 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :prints LOOK AROUND YOU and then two newlines < 1236969251 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :different implementations < 1236969262 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :my implementation is non-standard! < 1236969269 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Look, around you. Look around, you. Just, look around you. < 1236969270 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU < 1236969273 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :INFINITE LOOP DETECTED < 1236969280 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :single-quote, in many BASIC impls, prints a newline, and otherwise acts like a comma except it doesn't need anything before or after it < 1236969286 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :LOOK AROUND YOU SORRY IT IS LOOP < 1236969301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1236969304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.youtube.com/watch?v=mdI_MmN-Lp4 < 1236969306 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it has a space and a ; < 1236969310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 PRINT "LOOK AROUND YOU "; < 1236969310 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 GOTO 10 < 1236969312 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :back < 1236969312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :amended code < 1236969338 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster/Deewiant: do you have to change the handprint if you upgrade a Funge interp to a new version? <-- no, you change version < 1236969365 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GregorR: < 1236969366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.youtube.com/watch?v=mdI_MmN-Lp4 < 1236969369 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Cheskers in Look Around You < 1236969429 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, what would be the easiest way to insert a literal form feed in emacs? < 1236969437 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ctrl-V Ctrl-M < 1236969438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No? < 1236969441 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: ^Q^L < 1236969446 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, ^L < 1236969447 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, maybe. I forgot the key combo < 1236969447 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, C-q C-l as this is emacs < 1236969450 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :thanks < 1236969460 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: C-v is "scroll down" in emacs < 1236969465 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah fuck emacs < 1236969465 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236969471 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :C-q is "insert next character literally unless it's a digit" < 1236969480 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, so which key is form feed then < 1236969484 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: C-l < 1236969492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You know the problem with VINTAGE BASIC? < 1236969495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No "DRAW" instruction. < 1236969497 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah right < 1236969501 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I fucking need DRAW. BASIC is useless without it. < 1236969514 0 :GregorR!unknown@unknown.invalid PRIVMSG #esoteric :ehird: That's where I got the idea :P < 1236969519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :GregorR: Hahaha < 1236969647 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"The behavior is different depending on the value passed. If the value is positive, the result will be a new random value between 0 and 1 (including 0 but not 1). If the value is zero, the result will be a repeat of the last random number generated." < 1236969655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Wow, is that to avoid an extra variable? < 1236969671 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty sure that after a while, they generalised it to add negative arguments < 1236969676 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I forget what they do < 1236969687 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and yes, variables used to be in short supply < 1236969697 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but not just that, to avoid having to write out the code to save the random number in a variable < 1236969713 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :original BASIC was highly golfed, by necessity, the programs wouldn't fit in memory otherwise < 1236969883 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yay, i wrote a guessing game. That was so pointless, but I enjoyed it anyway. < 1236969886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 A=INT(RND(1)*100) < 1236969886 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 INPUT"GUESS THE NUMBER";B < 1236969887 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :30 IF B=A THEN 60 < 1236969889 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :40 IF BA THEN 80 < 1236969892 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :60 PRINT"YOU WIN!":END < 1236969895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :70 PRINT"TOO SMALL":GOTO 20 < 1236969896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :80 PRINT"TOO BIG":GOTO 20 < 1236969916 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: line 30 is redundant < 1236969921 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aha, so it is. < 1236969922 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could delete it and the program would still work < 1236969948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How did kids guess the target line number before they wrote it...? < 1236969959 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can write the lines in any order < 1236969962 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and revise them < 1236969967 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so you just write GOTO 0 the first time round < 1236969972 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and then edit the line later to fix the number < 1236969974 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, how boring. < 1236969978 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION used to have a BBC BASIC computer < 1236970007 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, I'm sure it can be less than 7 lines < 1236970013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although...nah < 1236970019 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well < 1236970034 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :30 C=1+SGN(A-B) < 1236970039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10 INPUT"GUESS THE NUMBER";B < 1236970039 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20 IF BINT(RND(1)*100) THEN 60 < 1236970043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :40 PRINT"YOU WIN!":END < 1236970045 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :50 PRINT"TOO SMALL":GOTO 20 < 1236970045 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :40 CASECON70,60,80 < 1236970047 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :60 PRINT"TOO BIG":GOTO 20 < 1236970049 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that works, but it pointless < 1236970051 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: whaddafu < 1236970057 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: same length, unfortunately < 1236970061 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236970064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, you need RND(0) not RND(1) < 1236970067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, right < 1236970086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION rewrites program in haskell to see how far programming has advanced < 1236970091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also remember you're allowed lowercase in string literals < 1236970094 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that'll make the output look nicer < 1236970101 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SSH < 1236970102 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :this is the 70s < 1236970107 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :there is no such thing as lowercase < 1236970120 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lowercase hasn't been INVENTED yet < 1236970132 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the appendix to the ALGOL-68 standard stated an optional program file format for computers that allowed lowercas < 1236970133 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*lowercase < 1236970137 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :so yes, it had been < 1236970150 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although apparently it wasn't in common enough use to assume all computers had it < 1236970205 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :And then came unicode. < 1236970211 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and RUINED EVERYTHING. < 1236970218 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway, I want my DRAW. < 1236970226 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am ITCHY without DRAW. < 1236970259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :READ var1, var2, ... < 1236970259 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Reads data from DATA statements into variables. A pointer is maintained into the DATA values, which could be anywhere within the program. Values are read in order into the variables, and the pointer is advanced. A runtime error occurs if there are not enough DATA values to fill the variables. The DATA pointer can be reset using a RESTORE statement. Example: READ A$, B. < 1236970264 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wat < 1236970275 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you don't know of READ? < 1236970285 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't know what the heck it is on about < 1236970295 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :here's an example < 1236970296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DATA literal1, literal2, ... < 1236970296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Has no effect when executed, but supplies data for the READ statement. Each value can be a string or floating-point literal (not an expression). Whitespace is ignored around values. Double quotes can be placed around a string to escape whitespace and commas between the quotes. DATA statements can occur on the same line as other statements, but, due to its special parsing rules, it must be the last statement on the line. The line on which the DATA stateme < 1236970299 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :10 READ A < 1236970300 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nt occurs can be used as the target of a RESTORE statement. Example: DATA January, 31, "Martian History Month". < 1236970303 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :whyyyy < 1236970305 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :20 PRINT A < 1236970307 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :30 GOTO 10 < 1236970313 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :40 DATA 1,2,3,4,5,6,7,8,9 < 1236970314 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :martian history month!!! < 1236970320 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: good lord, why? < 1236970320 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that prints all the numbers from 1 to 9, then errors < 1236970331 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :beautiful... but... WHY < 1236970341 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: well, you're hardly going to waste your precious 52 variables by using them to store data, are you? < 1236970349 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :<33 < 1236970362 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DATA effectively creates ROM < 1236970367 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that you can access via READ and RESTORE < 1236970378 0 :Corun!unknown@unknown.invalid QUIT :"This computer has gone to sleep" < 1236970410 0 :MizardX!unknown@unknown.invalid PRIVMSG #esoteric :10 RESTORE -10: READ A: PRINT A: GOTO 10 < 1236970422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://drivey.com/DONKEYQB.BAS.html < 1236970428 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DONKEY.BAS is the prettiest program ever written. < 1236970433 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :MizardX: RESTORE takes arguments? Wow, I never knew that < 1236970441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Good luck writing DONKEY.BAS that concisely in modern languages < 1236970451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that QB implies QBasic < 1236970452 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :is it? < 1236970455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it's a port < 1236970461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but that presumably doesn't change all that much < 1236970487 0 :Corun!n=Corun@93-97-219-19.zone5.bethere.co.uk JOIN :#esoteric < 1236970507 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: that first line, translated to C, would be *(char*)106 = 0 < 1236970515 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I hate to think what that was designed to do... < 1236970526 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eh, you know POKEs < 1236970531 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: it'd be putting it into graphical mode < 1236970532 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :probably < 1236970535 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, yes < 1236970543 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the only thing I ever used POKEs from was to turn caps lock on and off < 1236970555 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :after a while I wised up and converted the input to uppercase/lowercase in my program instead < 1236970561 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :with POKE, your days of 52 variables are long gone! < 1236970567 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er, and PEEK :P < 1236970572 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :ACTION POKES ehird  < 1236970588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::o < 1236970593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"Donkey .NET is a three-dimensional driving simulator game that demonstrates the new features available to Microsoft® Visual Basic® developers." < 1236970595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.microsoft.com/downloads/details.aspx?FamilyID=990d0ec1-23ea-4408-898d-1fd5727a8890&displaylang=en < 1236970601 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Donkey .NET is a three-dimensional driving simulator game that demonstrates the new features available to Microsoft® Visual Basic® developers. Written in Visual Basic .NET RTM, this sample uses XML Web services, multithreading, structured exception handling, shaped Windows Forms, and custom-drawn controls. The sample includes the setups for both the game application and an optional XML Web service used with the game. The setups will also install the so < 1236970604 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :urce code. < 1236970606 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :NO! Not Visual BASIC! < 1236970619 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, .NET? < 1236970621 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes. < 1236970625 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Blasphemy of the highest degree. < 1236970627 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Visual BASIC was invented ages before .NET was < 1236970636 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :visual basic is now VB.NET < 1236970649 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :well, yes, the non-.NET versions aren't maintained < 1236970673 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION thinks it's interesting that .NET is the bytecode format with the most widely-used languages targeting it < 1236970684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :most byte-compiled langs have their own bytecode < 1236970690 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but all the microsoft ones compile to .NET < 1236970712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the microsoft folks endorse Mono semi-officially < 1236970713 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :which is nice < 1236970720 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e.g. silverlight download page on linux, directs you to mono's Moonlight pag < 1236970721 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1236970743 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Microsoft are currently at the stage of trying to get Silverlight generally accepted < 1236970752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :% vintbas /dev/stdin < 1236970752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :POKE 0,0 < 1236970754 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :!LINE NUMBERING ERROR IN RAW LINE 1, COLUMN 1 < 1236970756 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : UNEXPECTED "P" < 1236970758 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : EXPECTING LINE NUMBER OR END OF FILE < 1236970758 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :making people think it has good Linux support is one way to do that < 1236970760 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Useless. < 1236970768 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although interestingly, there doesn't seem to be a Mac version, or wasn't last I looked < 1236970779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mono runs on os x < 1236970785 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dunno about plugins tho < 1236970785 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, I didn't know that < 1236970805 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236970805 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :anyway, there are quite a few people who suspect that Mono has Microsoft patents in, and so to legally use it you have to download it from Novell < 1236970816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if there's a portable QBasic interpreter < 1236970817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no idea whether that one's true or not < 1236970828 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: QBasic runs under DOSbox, I suspect < 1236970828 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(using a virtual heap, OFC, with traps on things like that 103) < 1236970837 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: meh, I guess so < 1236970839 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it'd be nicer to have it to hand < 1236970864 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and there are so many peeks/pokes to literal addresses in typical programs you'd want a full DOS emulator < 1236970870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tru < 1236970870 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1236970960 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://boxerapp.com/ <-- Wow, someone made DOSBox all mac-like. < 1236970971 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Isn't that a bit pointless when the actual DOS inside will be very very DOS? :P < 1236970997 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :people are allowed to delude themselves < 1236971028 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :form over function, ALWAYS < 1236971060 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :the DOS inside DOSBox isn't all that DOS-like, I find < 1236971064 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is strange < 1236971066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Robdgreat: Y'know, it's possible to have both. < 1236971073 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :some of my old DOS programs don't run in it < 1236971089 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's for games, not for your old dos programs < 1236971094 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's for dune and xcom < 1236971095 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lament: Yeah, true. < 1236971108 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :lament: but my programs were games < 1236971113 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :admittedly, I wrote them < 1236971118 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it doesn't prevent them being games < 1236971145 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :ehird: true, but I won't throw a hammer out just because it's not pretty enough < 1236971148 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i'm guessing that dosbox is a fairly imperfect emulation < 1236971153 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Robdgreat: indeed < 1236971164 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and when they want to improve it, they take some popular game they know doesn't run properly, and fix dosbox until the game runs < 1236971174 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what about running FreeDOS in a VM? < 1236971181 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that ought to work if the VM works properly < 1236971187 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :and their list of popular games might not actually include any games by ais523 < 1236971205 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aww, Boxer comes with ton sof DOS tols but not qbasic. < 1236971207 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :never mind, I ported that game to Windows ages ago and it runs in WINE < 1236971223 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I'll probably port it to Allegro or SDL sometime < 1236971234 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :then it'll run in Linux too, and probably on a Mac < 1236971241 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huh, it comes with a bunch of games. Aren't they copyrighted...? < 1236971252 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not all DOS games are copyright < 1236971260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :one of them is Commander Keen 4 < 1236971261 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and nearly all are abandonware, technically that's illegal but nobody but me seems to care < 1236971273 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :it's good you care < 1236971274 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, abandonware is legal, it's just that most things aren't abandonware < 1236971296 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :no, I thought the definition of abandonware was copyrighted stuff which was so old and worthless nobody could be bothered to enforce the copyright < 1236971342 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe it's the shareware version of Keen 4? < 1236971372 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it looks full < 1236971372 0 :Corun!unknown@unknown.invalid QUIT :"Leaving" < 1236971381 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: The sites claim it's games with expired copyright < 1236971389 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :of which there are none in the US, as far as I know < 1236971396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :or, probably, the UK < 1236971414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :copyright is stupid anyway, it should expire way earlier < 1236971429 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :none of this 2 to the power of the age of the author at death + 7 million years < 1236971434 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it is possible, I think, for there to be DOS games nowadays where the author died over 25 years ago < 1236971441 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, true < 1236971443 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how many, though? < 1236971451 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :not a lot, I suspect, most programmers are quite young < 1236971458 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but I suppose they might have died in an accident or something < 1236971474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I suppose < 1236971479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/QBasic#Simple_game < 1236971479 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow < 1236971481 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that sucks < 1236971486 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's waaay longer than my version < 1236971496 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :all theirs does is decease the range and put a cap on the guesses < 1236971497 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236971502 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think it was rather complete; you just got episodes 5 and 6 when you boughteded it. Although I might remember wrongly. < 1236971512 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :boughteded < 1236971535 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, who has QBASIC.EXE? < 1236971565 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I used to have it, but I think it's bit-rotted to death by now < 1236971570 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Google has it. < 1236971588 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, well, I'm trying to google it, fizzie < 1236971592 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I have dos 6.22 installation floppy images I dd'd once, I assume it would be there too. < 1236971598 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :http://www.winsite.com/bin/Info?4385 has a download link. < 1236971599 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.velocityreviews.com/forums/t43803-does-xp-have-coding.html DOES XP HAVE CODING < 1236971609 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :I have it somewhere < 1236971611 0 :Robdgreat!unknown@unknown.invalid PRIVMSG #esoteric :ACTION digs < 1236971618 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I believe at least one program has been written on Windows XP < 1236971633 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :i was enlightened when i managed to understand that the quick basic game with gorillas throwing bananas did not have bits of code for drawing a banada for every single position on the screen < 1236971635 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I certainly ported programs from Windows 95 to Windows XP < 1236971635 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wut, why does "copy con con" say con not found < 1236971639 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :*banana < 1236971641 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :it's con: < 1236971643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :lament: haha < 1236971643 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is pretty worrying < 1236971644 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: o < 1236971650 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that doesn't work either on DOSbox, IIRC < 1236971656 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: no u lie < 1236971658 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DOSbox is not a very good implementation of DOS < 1236971658 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ILLEGAL PATH < 1236971669 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hey. < 1236971671 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it doesn't even say illegal command or file name or murder < 1236971672 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it was originally CON: on the precursor to DOS < 1236971676 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it says Illegal command: blah. < 1236971681 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :zem.fi/~fis/qbasic.exe < 1236971682 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DOS changed it to CON.* < 1236971684 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :including with no extension < 1236971692 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because back then, most programs had implied extensions < 1236971697 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :For some strange reason, qbasic.exe was uncompressed on the first install floppy of dos 6.21. < 1236971712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://www.winsite.com/bin/Info?4385 <-- this lacks .hlp < 1236971716 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I didn't even realise you could get dos 6 except bundled with Windows < 1236971733 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Just about all other files are compressed with that funky scheme which makes .foo files into .fo_ files. Only attrib.exe, debug.exe, expand.exe and qbasic.exe are uncompressed. < 1236971736 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: concerning raw FF, would "ignore it" mean "don't write anything, but go to next cell" or "don't even increment x" < 1236971776 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if you can buy QBASIC from microsofft < 1236971784 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :or download it for free? < 1236971786 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://zem.fi/~fis/qbasic.hl_ has the hlp file, but you need expand.exe to uncompress it. :p < 1236971787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*microsoft < 1236971794 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I doubt they would give anything away for free < 1236971808 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they gave away limited versions of VC++ for free < 1236971812 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, yesy es < 1236971815 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and that's a lot more advanced than QBaisc < 1236971817 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*QBasic < 1236971818 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Although you can download expand.exe too from http://zem.fi/~fis/expand.exe < 1236971827 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There, that should be all to get qbasic.exe and qbasic.hlp out. < 1236971831 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ACTION ends up on microsoft.com far too often < 1236971832 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yay < 1236971844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION attempts to configure Boxer to stretch the display WITHOUT antialiasing it badly < 1236971872 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :"If you need to run QBasic in Windows 2000, you can copy it from a Microsoft Windows NT 4.0-based computer, or you can expand the files from a Windows NT 4.0 CD-ROM." < 1236971880 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :wow, are microsoft advising people to violate their own licence? < 1236971896 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1236971979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: try http://download.microsoft.com/download/win95upg/tool_s/1.0/w95/en-us/olddos.exe < 1236971996 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I haven't looked myself, but allegedly qbasic is in there < 1236972016 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# "opengl" will use bilinear filtering when scaling (smoother but < 1236972018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# fuzzier), while "openglnb" will preserve the original appearance < 1236972020 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :# (which may result in odd stretching at certain resolutions.) < 1236972022 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1236972035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Din't work :( < 1236972059 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I'd say don't even increment, since that's how Unefunge works < 1236972104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, right < 1236972131 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, CCBI fails to handle it correctly < 1236972142 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep, probably < 1236972302 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm, boxer is actually quite nice < 1236972399 0 :ais523_sandbox!n=ais523_n@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1236972405 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1236972411 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :sorry about that < 1236972412 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Where do executables go in DOS, generally? < 1236972414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :C:\, right? < 1236972422 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :ehird: a directory inside c:| < 1236972424 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :*c:\ < 1236972427 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Wherever you want < 1236972428 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :named after the executable < 1236972433 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, btw, CCBI never writes at a higher x coordinate than the edge of the initial loaded program < 1236972434 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236972444 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, while it does write at a higher y coordinate < 1236972449 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: write? < 1236972458 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, p or other way to update < 1236972467 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :O_o < 1236972468 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, that would cause bounds to change in y < 1236972489 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :incidentally, I'm inside the sandbox at the moment to see what olddos.exe does < 1236972496 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :it seems to have qbasic.exe in < 1236972500 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :and no licence agreement < 1236972513 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :So are you saying that '5f0pf0g.@' doesn't work? < 1236972519 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or what? < 1236972525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, so if the bounds are defined as {topleft{x,y},bottomright{x,y}} then you never write at x higher than x of bottomright < 1236972527 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :yay, it works < 1236972539 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :I now have what is AFAICT a legal copy of QBasic, direct from Microsoft < 1236972554 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :run olddos.exe in dosbox, rather than wine < 1236972557 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: So what exactly doesn't work? < 1236972566 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Does the above work? < 1236972566 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523_sandbox: if they're offering it, my downloaded version is legal too < 1236972571 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :I suppose so < 1236972580 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well it works. Just you didn't test that < 1236972581 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :unless it's a different bit pattern in the version they're offering, or something < 1236972588 0 :ais523_sandbox!unknown@unknown.invalid PRIVMSG #esoteric :anyway, going back out of the sandbox < 1236972593 0 :ais523_sandbox!unknown@unknown.invalid QUIT :Client Quit < 1236972601 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: So you meant to say 'Mycology' and not 'CCBI' < 1236972609 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, ah yes < 1236972610 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :typo < 1236972613 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :(mental one) < 1236972616 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Phew, you had me worried there :-P < 1236972622 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"The letters are like right next to each other." < 1236972624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I mean, you test the value from y is correct before/after writing at -1,-1. But not writing outside in the other corner < 1236972637 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://imgur.com/6AYNY.png <- The unparalleled elegance of the Mac OS X user interface. < 1236972640 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yes, that can happen < 1236972668 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I've said it before, many times, and I'll say it once more now: combinatorial explosion of testcases means that I don't do everything that could be done < 1236972708 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :There needs to be a way of copying text from DOS to outsid < 1236972709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1236972711 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236972738 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, internally cfunge doesn't store it as x,y,w,h, but x1,y1,x2,y2. It translates it for sysinfo. I mean it is an easy typo to write: if (x < minx) minx = x; else if (x > maxx) minx = x; < 1236972740 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or such < 1236972744 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Works right in DOSemu on Linux. ;) < 1236972749 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Apologies for the crudeness, but I just misread Deewiant's comment as "combinatorial explosion of testicles". That sounded painful. < 1236972754 0 :ais523!unknown@unknown.invalid QUIT :Remote closed the connection < 1236972761 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: You can copy and paste text from QBasic to elsewhere? < 1236972768 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Impressive; howd oes it work? < 1236972786 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :How anything in X11 works: select and middle-click. < 1236972802 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but DOS isn't that simple. < 1236972803 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, so I should test all 32 cases for p as well as i as well as for the various p-like instructions in fingerprints, right? < 1236972814 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I mean how does it work internally. < 1236972814 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :32 cases for p? < 1236972817 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :In a text video-mode, you can just read the screen buffer. < 1236972830 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Ah. Yeah, it just reads the screen buffer... < 1236972835 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's interleaved [character, attributes, character, attributes, ...] list of bytes. < 1236972838 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Does QBasic run in text video mode? I'm not sure. < 1236972843 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, what do you mean 32 cases of p? < 1236972844 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yes, it does. < 1236972845 0 :ais523!n=ais523@92-236-187-64.cable.ubr08.king.blueyonder.co.uk JOIN :#esoteric < 1236972847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :OK. < 1236972850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wb ais523 < 1236972852 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :aargh < 1236972855 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :eh? < 1236972859 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it seems there's something wrong with the user switcher atm < 1236972861 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I had to restart X < 1236972878 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Exaggeration; there are 9 cases < 1236972912 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Just a matter of reading from (short *)0xB8000... < 1236972914 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, you mean, in bounds, and various out of bounds ways? < 1236972919 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or what? < 1236972922 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yep. < 1236972969 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well -1,-1 is much easier to get wrong indeed < 1236972985 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :All that tests is that negative funge-space works < 1236972995 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I assume that people can get /positive/ funge-space to work... < 1236973004 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ITYM "reading from b800:0000"; this is, after all, about DOS, so a segmented form of addressing is more appropriately crazy. < 1236973030 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, I wonder if you can get QBasic to "print" out its manual. To a PDF. < 1236973056 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DOS addresses are so weird < 1236973065 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, just doing code coverage analysis is interesting. With mycology + custom test cases I aim to manage 100% coverage* in the core of cfunge. Fingerprints too in the long run, but core first. < 1236973067 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, can you actuallty type b800:0000 in a DOS C file? < 1236973079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it's 0xb8000000 < 1236973085 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Right, right; definitely b800. < 1236973091 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :although you generally have to cast it to a long pointer < 1236973095 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ehird: No, that's the assembly notation. < 1236973103 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :(char far*)0xb8000000 < 1236973105 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1236973111 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :* 100% as defined by gcov and excluding any "fputs("The impossible happened. Internal error.\n", stderr); abort();" < 1236973117 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :far isn't part of standard C, but is defined in any good DOS header file < 1236973121 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :it works much the same way as const < 1236973122 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(char huge*)0xb800000 < 1236973132 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: More useful to be (short far*)0xb8000000, I'm pretty sure. < 1236973141 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: short's only 16 bits < 1236973155 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1236973165 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Hm. What was the point of special "far pointers"? < 1236973171 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :(void huge*) is somewhat amusing IMO < 1236973174 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's also funny that in a that sort of system, 0xb8000010 and 0xb8010000 point to the same place but aren't the same pointer. < 1236973177 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :And why are they not used any longer in modern code. < 1236973192 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://en.wikipedia.org/wiki/Far_pointer < 1236973199 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: A far pointer was a pointer outside of your current segment. < 1236973212 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah right. Flat address space :) < 1236973214 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because having two lengths of pointers was common in DOS < 1236973214 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :They're not used because nobody, and I mean *nobody* uses segmented addresses. < 1236973229 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :even with segmented addresses, they wouldn't be used nowadays because computers have lots of memory < 1236973235 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and so making all pointers far would work fine < 1236973282 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what about speed? I guess you could fit more non-far pointers in cache than far pointers? < 1236973294 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :It'd be very slightly inefficient making all pointers far. < 1236973310 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You'd end up writing to cs every time you did a jump. ;) < 1236973315 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :how large are far/non-far pointers on x86? < 1236973331 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: far is 32 bits, near is 16 bits < 1236973334 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Depends on your current execution mode. < 1236973340 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :in real mode, at least < 1236973355 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which used to be the only one available, but nothing but bootloaders use it nowadays < 1236973379 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm. < 1236973382 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Erm, how do you terminate a QBASIC program? < 1236973391 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :For protected 32-bit mode, double that... < 1236973404 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Ctrl+Break < 1236973407 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And for long mode, near is 64 bits and far doesn't exist. < 1236973416 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Where is break on the keyboard again? So I know what it's mapped to :P < 1236973417 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: run off the end of the program < 1236973421 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: no, while it's running < 1236973422 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :Pause < 1236973423 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, break's normally control-pause < 1236973431 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... and pause is where? :P < 1236973436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I pressed F16 and that paused the program < 1236973438 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :right of scroll lock :) < 1236973443 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :near scroll-lock and sysrq, normally < 1236973446 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... F16?!? < 1236973446 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You guys hate me. :) < 1236973453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Apple keyboard. < 1236973454 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, well amd64 has several addressing modes in fact. < 1236973460 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :though not near/far < 1236973466 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Segmented is not one of them. < 1236973470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: there was huge as well as near and far < 1236973473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: See http://www.purelygadgets.co.uk/images/user/products/Apple-keyboard.jpg < 1236973473 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Wouldn't protected-mode far pointers (not that I've seen any) be 48-bit instead of 64-bit? I mean, there's the 16-bit selector and 32-bit address. < 1236973476 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :huge is like far, but wraps properly < 1236973485 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: 32-bit selector. < 1236973492 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :e.g. with huge pointers, 0x3000ffff + 1 is 0x40000000 < 1236973510 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: No Num Lock? < 1236973511 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Are you sure the selector has 32 bits? I mean, physically speaking. I'm sure it could have in a pointer. < 1236973518 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: None. The numpad always numbers. < 1236973526 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Number is a verb, naturally. < 1236973527 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The selector is a pointer to the start of the segment. < 1236973532 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, true. But then there are other things: RIP relative addressing, code model (small, medium, large and kernel) < 1236973540 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and various other things < 1236973557 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which IMO are about as strange. < 1236973574 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yeah, long mode is a bit strange. < 1236973580 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Erm, halp. < 1236973584 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: looking at that keyboard, I'd say F16 is the pause/break key < 1236973589 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Right, f16 pauses < 1236973592 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as it's three keys to the right of f12 < 1236973594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, RIP relative *does* make sense though. Makes PIC code more efficient IIRC. < 1236973595 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But what is F13? < 1236973596 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does control-f16 do? < 1236973596 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :aha < 1236973598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cmd-f16 pauses < 1236973602 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :*f13 < 1236973605 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: It beeps. In my experience. < 1236973607 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and control not cmd < 1236973611 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: How useful. < 1236973613 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/File:Sgapage.jpg < 1236973615 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :F13 does nothing in boxr < 1236973617 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :*boxer < 1236973630 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what is more interesting is that AMD64 actually has a 48 bit address space. Sign extended. < 1236973641 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Okay, I froze it. < 1236973646 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now the program thing says "QBASIC PAUSE". < 1236973648 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :with kernel living in the upper half, and user space in the lower. < 1236973657 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pressing any key other than pause normally restarts it < 1236973657 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so 48 bits, sign extended to 64 bits < 1236973664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bbl < 1236973667 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Not this time, ais523, I think DOSBox is paused < 1236973673 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ah, ok < 1236973674 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: That's on current implementations. < 1236973705 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION reboots < 1236973778 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Strings can't be longer than 32767 chars. < 1236973796 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Arrays cannot be longer than 64KB < 1236973806 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, only 60 dimensions < 1236973814 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :I think even VB6 kept some of those restrictions < 1236973814 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, and you can't address 64KB< only 32767 < 1236973840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Max path size 127 chars < 1236973940 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Those aren't such terrible limits. In C99 you can only count on having 65535 bytes in an object, for example. Or 4095 characters in a string literal. < 1236973941 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :So, arrays can only be one segment, strings have a signed size_t, and the max path size is, as in DOS, 8-bit signed. < 1236973962 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And 15 nesting levels of #include files, that's reasonably low too. < 1236973979 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not to mention the "127 arguments in a function call", that's a limit I hit all the time! < 1236973999 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Thus, almost all of the limits of Qbasic are because it's a freaking 16-bit language. < 1236974026 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :(though why the size_t equivalent is *signed* is beyond me) < 1236974038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :For cyclexa < 1236974052 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Ah, right. < 1236974065 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Real mode = screwy. < 1236974079 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: why did you just mention cyclexa? < 1236974083 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :Dim x(-10 to 10) as Integer < 1236974086 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: < 1236974087 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :18:53 pikhq: (though why the size_t equivalent is *signed* is beyond me) < 1236974088 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :that seems quite a non-sequitur < 1236974093 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :neg strings < 1236974100 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Besides, if I'm reading this right, C99 might only allow 12-dimensional arrays; "12 pointer, array, and function declarators (in any combinations) modifying an arithmetic -- type in a declaration". < 1236974112 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :holy shit, accessing the variable INKEY$ actually gives a prompt < 1236974113 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's fucked < 1236974138 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :seriously, yes < 1236974152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, not a prompt < 1236974157 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but it puts it into hello i am listening to you mode < 1236974158 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The C99 limits list has a nice introduction: "The implementation shall be able to translate at least one program that contains at least one instance of every one of the following limits:" < 1236974163 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's one ugly program. < 1236974196 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I'm pretty sure those C99 limits are the minimums an implementation must support. < 1236974222 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :I suspect that most C implementations are limited by what the architecture they're on will allow. < 1236974245 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Sure, but it's still an ugly program that contains one instance of all the limits. < 1236974265 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It will have 63 levels of conditional inclusion, blocks nested 127 levels deep, 1023 members in a structure and so on. 4095-character lines. 127 arguments in one macro invocation. < 1236974274 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if someone's written one for compliance testing. < 1236974275 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's fugly. < 1236974311 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. Does it specify anything for Unicode literals? < 1236974320 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: someone must have done, surely < 1236974330 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :there's probably a 127-argument macro in boost somewhere, come to think of it < 1236974375 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : AnMaster: That's on current implementations. <-- yes < 1236974385 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :10PRINTINKEY$:GOTO10 < 1236974397 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Aw, you need a space. < 1236974398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT INKEY$ < 1236974415 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, mine even says: "address sizes : 40 bits physical, 48 bits virtual". Not sure what that means. < 1236974419 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh well, 10 PRINT INKEY$: GOTO 10 < 1236974422 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :from /proc/cpuinfo < 1236974426 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hm, that hangs. < 1236974433 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh of course. < 1236974435 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Make that INKEY$; < 1236974440 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now how do I terminate... < 1236974450 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nowadays pointers used in applications nearly never correspond to the actual memory address in the RAM < 1236974451 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :pikhq, a server I sshed to has: "address sizes : 48 bits physical, 48 bits virtual" though < 1236974453 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Allows for up to 40 bits worth of physical RAM, and 48 bits worth of stuff mmapped. < 1236974459 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, of course. < 1236974467 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I know what paged memory is... < 1236974468 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: That's because of paging, of course. < 1236974479 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: so the pointer width of the RAM and the pointer width in executables need not be the same < 1236974492 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Agh. < 1236974495 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Must figure out how to terminate. < 1236974496 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Except that the architecture itself demands it. ;) < 1236974514 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: well, the architecture demands 64 bits < 1236974524 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but the RAM is incapable of paying attention to all 64 bits < 1236974528 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, well duh. And then there is 32-bit mode under 64-bit too. < 1236974532 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oo, this Xeon box says: address sizes : 36 bits physical, 48 bits virtual -- tiny tiny 36-bit thing. < 1236974534 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :generally speaking, it'll pay attention to the top 1 bit, and the bottom n < 1236974535 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is yet another thing < 1236974588 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Early Intel Xeons are the only ones restricted like that. < 1236974595 0 :oklofok!unknown@unknown.invalid QUIT :Read error: 110 (Connection timed out) < 1236974659 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm My mobo only supports 8 GB RAM though according to the manual. So I guess the "40 bits" is in the CPU, since the mobo limit is even lower. < 1236974665 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Greh, I can't get this to terminate. < 1236974677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Btw, 8 GB ram on this would require 2 x 4 GB RAM sticks < 1236974682 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since there are only two slots < 1236974682 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Agh, DOSBox paused. < 1236974685 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How do I undo that.. < 1236974686 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's a function of the system bus, I'm pretty sure. < 1236974702 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And/or the memory bus. < 1236974806 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Geee. < 1236974807 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er. < 1236974808 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Grrrrr. < 1236975095 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :You know, the news has become hard to tell apart from satire... < 1236975108 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :" 'This example requires a color graphics adapter. " < 1236975111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Duuuude, I can't afford that. < 1236975112 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::( < 1236975133 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Recently, a court ruled that the statement in a libel case being *true* is not a defense. < 1236975141 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hahahaa < 1236975150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :USA, I assum < 1236975150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :e < 1236975154 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :Yeah. < 1236975162 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :What other country would be *that* insane? < 1236975163 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: lol? < 1236975170 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :what's a valid defense then? < 1236975181 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :The statement not being malicious. < 1236975184 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :That's *it*. < 1236975191 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: it's hard to find a CGA graphics card nowadays... < 1236975197 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I wonder if modern cards can emulate it? < 1236975214 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Whoa. I just drew a fuckin' CGA triangle. < 1236975216 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hardcore shit. < 1236975242 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :drawing filled triangles was actually hardware-accelerated on the BBC Basic < 1236975249 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SCREEN 1 < 1236975255 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :ais523: VGA is a superset of CGA. < 1236975257 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DRAW "C2F60L120E60BD30P1,2C3" < 1236975260 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FUCK YEAH < 1236975264 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: How many million triangles it could fill in a second? < 1236975274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: probably about 0.00001 < 1236975285 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just because it was accelerated didn't mean it was fast < 1236975288 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236975293 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could see the triangle fill if you watched really closely < 1236975296 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, if you made most of your graphics as compositions of triangles < 1236975301 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :your game would be faster? :D < 1236975303 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but it was a lot faster than doing it any other way < 1236975315 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yep, traditionally quadrilaterals were filled by filling two triangles < 1236975341 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's surprisingly modern, given that triangles is what they draw nowadays too. < 1236975375 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Today on synchronicity, a friend just told me he's watching look around you because apparently it's good. < 1236975398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now more QBasic. < 1236975422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Omg. < 1236975425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Look up the command "WAIT". < 1236975426 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's select()! < 1236975470 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :what does QBasic get its multiple input sources from? < 1236975474 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ports < 1236975568 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If you don't use the HGA monochrome modes, you can use the 0xb0000-0xb7fff address range (in-between VGA's 0xa0000-0xaffff and the cga-compatible/color text mode 0xb8000-0xbffff) to other uses; for example with emm386.exe specifier like I=B000-B7FF. < 1236975598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PLAY "L64ABCDEFGFEDCBA" ;BLEEPYEAOW < 1236975602 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1236975604 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PLAY "L64ABCDEFGFEDCBA" 'BLEEPYEAOW < 1236975698 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huh, ? expands to PRINT> < 1236975907 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I do have the quickbasic 4.5 compiler somewhere too, but that's not a legal thing to share. I'm pretty sure I don't even have it legalley. < 1236975945 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :a song: < 1236975948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :N = 64 < 1236975962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DO: PLAY "L"+STR$(N)+"ABCDEFGFEDCBA": N=N-1: LOOP WHILE INKEY$="" < 1236976133 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What the fuck < 1236976137 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you can get qbasic to CHECK TYPES < 1236976263 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I am playing DONKEY.BAS. < 1236976267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I like the sfx. < 1236976349 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I just received an email. There's a single part made out of ascii text, but it was sent with Content-Type "application/x-" so my mail client was a bit confused about it. < 1236976368 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Huh, ais523? < 1236976378 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It works if you comment out the DEF SEG : POKE 106,0 line < 1236976403 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that's a great content-type < 1236976508 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION cheats DONKEY.BAS < 1236976514 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :by making the donkey always go in the second lane < 1236976520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, I think this actually checked collisions by if the pixels hit < 1236976523 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instead of keeping track... < 1236976569 0 :comex!unknown@unknown.invalid NICK :judicaster < 1236976590 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's funny how the qbasic help file has code examples with inline asm: http://zem.fi/~fis/code.txt < 1236976607 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hey, you have a text copy? Gimme, I can't stand this interactive one :P < 1236976609 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, that's awesome < 1236976613 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so, so awesome < 1236976625 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: I thought it was inline machine code < 1236976635 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Okay, the inline asm is just a comment. < 1236976735 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION invents DONKEY.BAS variant: < 1236976738 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Invisible Donkey.BAS < 1236976740 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The donkeys are invisible. < 1236976752 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And, well, I decoded the hlp file with HELPMAKE, but the end result still has quite a lot of markup left: http://zem.fi/~fis/qh3.txt < 1236976771 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That one was converted through iconv -f cp437 -t utf-8, so the line-drawing characters are partially correct. < 1236976782 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: It's not the F1 so it works for me! < 1236976860 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How to have INVISIBLE DONKEY.BAS: < 1236976864 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Comment out line 81 < 1236976868 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :All links seem to be formatted with ^Qfoo^P, and then there are .commands and :commands on a few lines, but other than that it's quite plaintext. The non-plaintext decoding output was all: \i^Q\a\pContents\v@L8002\v\i^P\p \i^Q\a\pIndex\v@L80b6\v\i^P\p \i^Q\a\pBack\v!B\v\i^P\p < 1236976926 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :On the other hand, in that format you could then search for "context @L80b6" to find the linked-to thing. It's a tradeoff. < 1236976954 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I should write a Perl script to convert that to HTML. < 1236976964 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That would be fairly easy < 1236976969 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :If you don't do it i will :P < 1236976970 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't seem to be an especially difficult format after that helpmake. < 1236977008 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Maybe I'll do it. < 1236977081 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But you might have to wait some hours; I'm the slow. < 1236977201 0 :kar8nga!n=kar8nga@e-67.vc-graz.ac.at JOIN :#esoteric < 1236977396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, you can't SLEEP for less than a second without PLAY, I think. < 1236977396 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :brb-> < 1236977408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, TIMER < 1236977575 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: you can do it by polling timer in a loop, I always used to < 1236977577 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but that's a busywait < 1236977585 0 :jix_!unknown@unknown.invalid QUIT :"..." < 1236977590 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :also, note that a SLEEP ends if someone presses any key, including shift or control < 1236977972 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :any smart guys here knows anything about A* and UCS? < 1236977987 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: A* as in the search algorithm? < 1236977991 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :yep < 1236978010 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I've used it before, sort of < 1236978013 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but am not an expert on it < 1236978018 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I've even coded it < 1236978019 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :and I don't know of UCS < 1236978021 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Though poorly < 1236978032 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :UCS is the Universal Character Set < 1236978059 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh, as in UCS-2 < 1236978065 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :Uniform-cost search :-) < 1236978069 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :D'oh < 1236978078 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :I guess it's a stupid question, but will A* and UCS always return the same shortest path? < 1236978098 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :(when you trace the route back again) < 1236978100 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Probably not < 1236978132 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :If there's more than one shortest path, the chosen one depends on the heuristic you use < 1236978163 0 :ais523!unknown@unknown.invalid NICK :CallForJudgement < 1236978172 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :but if there's only one, both of them will find it? < 1236978179 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :but A* will probably find it faster? < 1236978181 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Sure < 1236978186 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, depends on your heuristic again :-P < 1236978191 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :yeah < 1236978197 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :I've just followed a crappy assignment one of my friend got < 1236978236 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :so I'm not very steady on this :P < 1236978253 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :but it's quite fun < 1236978258 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :doing it in Scheme :O < 1236979300 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I did at least most of the conversion: http://zem.fi/~fis/qb.html < 1236979323 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hm, there's an unterminated somewhere, I think. < 1236979329 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Don't look at it yet. :p < 1236979447 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :http://www.haskell.org/pipermail/haskell-cafe/2009-March/057590.html < 1236979459 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :This is my first public release of open source software. I have been working on this project since 2003. < 1236979465 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :" < 1236979476 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes. It's because the source file interleaves things. A pure translation would look like foobarbaz. It's horrid. < 1236979499 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :% wc -l `find` 2>&1 | grep total < 1236979501 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric : 4496 total < 1236979505 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :since 2003? really? < 1236979670 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION imagines it might have been on and off, like PSOX but worse < 1236979696 0 :Sgeo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION likes randomly mentioning PSOX.  < 1236979928 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hi Judofyr < 1236979929 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err < 1236979931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :judicaster: < 1236979933 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you new? :) < 1236979942 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :hi ehird :-) < 1236979946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::) < 1236979953 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :how's it going? < 1236979966 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :ehird: are you new here? < 1236979983 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :20:04 Judofyr: doing it in Scheme :O <-- nice < 1236979987 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement: erm, no :P < 1236979997 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement: are you new here? < 1236980015 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that thing doesn't link function names etc :( < 1236980018 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: I'm older than judicaster, anyway < 1236980018 0 :judicaster!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: are you new here? < 1236980029 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh, judicaster is comex. < 1236980032 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :I've actually bough SICP and The Little Schemer :D < 1236980037 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :also, I haven't seen estoppel around here recently < 1236980038 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the little schemer is great < 1236980059 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :judicaster: just idling for some months... < 1236980170 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: I told you not to look, didn't I. < 1236980177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: sry :< < 1236980181 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :so anyway, Hoefler Text is awesome, did I mention that? < 1236980219 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also < 1236980223 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf on a pogo stick < 1236980225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mactex < 1236980226 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is < 1236980227 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :1.2GB < 1236980231 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and that's ZIPPED < 1236980235 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :the zipped installer < 1236980248 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I DON'T KNOW IF YOU NOTICED BUT I DO NOT THINK THAT REQUIRES 1.2GB < 1236980280 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :What the fuck? < 1236980296 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Okay, now the "unterminated " problem is fixed in that qb.html. < 1236980303 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: Yeah, totally < 1236980322 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What else did you want? Does the original thing hyperlink function names, or was there just "look up function name under cursor" thing? < 1236980329 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :For some inexplicable reason, MacTeX includes a number of GUI applications in addition to TeX Live. < 1236980334 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :And Ghostscript... < 1236980347 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: It was just the latter, but grepping for functions/commands and linking each occurance can't be hard < 1236980348 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, there? < 1236980359 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pikhq: But 1.2GB? < 1236980361 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If I can find a sensible table of the names in there. < 1236980366 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :My grandmother isn't 1.2GB. < 1236980367 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Er. < 1236980383 0 :pikhq!unknown@unknown.invalid PRIVMSG #esoteric :... Didn't OS X include Ghostscript as part of its CUPS implementation, anyways? < 1236980388 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: aye < 1236980388 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie:

FOO Statement/Function

< 1236980389 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, one thing you actually may want to test is UDP (SOCK_DGRAM) in SOCK. It seems like something that would actually be fairly important. < 1236980403 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also FOO, BAR Statements/Functions < 1236980403 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Not really IMO. < 1236980414 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then just link all UPPER CASE OCCURENCES < 1236980418 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, unless you're writing your own stack, there's not much to deal with. < 1236980425 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Since it's all just frontends to other functions basically < 1236980443 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well it works differently than TCP. For example accept() doesn't make sense. And so on. < 1236980445 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I'll do something like that. Except that I have to do two passes then, now it's output-as-it-comes-in. < 1236980467 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Just make two scripts < 1236980467 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236980470 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: But is there any code overhead in dealing with UDP specially? < 1236980488 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, there might be, I don't know jack about network programming < 1236980552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, a bit iirc, but since SOCK is defined to support it... I see I treat it specially in S but don't see any other special casing for it. < 1236980597 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My point is that unless it requires special code paths in the implementation it's probably not worth testing, especially since SOCK has a billion options to look for < 1236980608 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Hell, I even say at the beginning of SOCK that I'm only testing one thing... < 1236980642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, heh < 1236980649 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's not so completely trivial, there's things like "RANDOMIZE Statement, RND Function". On the other hand, the function index has better-looking links. < 1236980687 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm not going to distinguish between "KEY (Assignment) Statement" and "KEY (Event Trapping) Statement", though. < 1236980692 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Guys, do you want to be in: < 1236980707 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anivers, Diavlo, Fertigo Pro, Fontin, Fontin Sans, Tallys, or Hoefler Text < 1236980710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(In my IRC client.) < 1236980718 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, I just looked at my STRN. Wonder why G checks the funge space bounds rect.... < 1236980718 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Pick one and only one. :P < 1236980777 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because otherwise it can infinite loop < 1236980787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hi, you're all in Fontin Sans 14pt. < 1236980798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Azstal, I don't see any wrapping code there though... *looks again* < 1236980835 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh wait right. if the entire line is all spaces < 1236980859 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :http://imgur.com/6CED2.png < 1236980895 0 :Azstal!unknown@unknown.invalid PRIVMSG #esoteric :I think it's actually valid behaviour to infinitely loop in that case, but mycology kind of depends on it not doing that. < 1236980902 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Azstal, it could still happen. just write something to xmax,ymax, and to xmin,ymin. So bounds are entire funge space. < 1236980920 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Azstal, well report it as a mycology bug to Deewiant < 1236980943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Via email! < 1236980946 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I know, I know, it's on my todo list to remove it < 1236980950 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Deewiant: DON'T LISTEN) < 1236980959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(WE ARE DISCUSSING PRIVATE MATTERS) < 1236980959 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It's one of those mycology_opinionated.b98 things < 1236980980 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, why do you have a bar code in the scrollbar... < 1236980992 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Times when I have been highlighted. < 1236980998 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236981005 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice feature < 1236981027 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :ehird: nice. could you send me the theme? < 1236981035 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: http://julianstahnke.com/read/a_theme_for_limechat_colloquial/ < 1236981037 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Tada :-) < 1236981056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, :-) doesn't look too hot in Fontin Sans. < 1236981082 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: (BTW, I removed the bottom log by resizing it small ;)) < 1236981093 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Why to not use variable width on IRC: /msg nickserv help < 1236981103 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yeah, but you are just in #esoteric :P < 1236981104 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :see the nice aligned table? < 1236981111 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: tru :P < 1236981113 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :if yes: congrats on using monospace < 1236981115 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, ^ < 1236981123 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Yes, because I bring up that help screen daily and its nice alignment is vital—above everything else. < 1236981133 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :brb < 1236981134 0 :Judofyr!unknown@unknown.invalid QUIT :"raise Hand, 'wave'" < 1236981136 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Despite being readable even when not aligned. < 1236981148 0 :Judofyr!n=Judofyr@c0796BF51.dhcp.bluecom.no JOIN :#esoteric < 1236981168 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: http://imgur.com/6CGOE.png < 1236981170 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Looks fine to me. < 1236981212 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wow, OS X has wikipedia built in < 1236981221 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, it looks way better aligned: http://paste.lisp.org/display/76982 < 1236981222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm not exaggerating in any way at all < 1236981229 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't really care... < 1236981235 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :k < 1236981245 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(Open Dictionary, click "Wikipedia", enter search term. Voila.) < 1236981248 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It even handles the infoboxes < 1236981258 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :... and user pages < 1236981391 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Now it generates hyperlinks. It's still not perfect (FOR...NEXT and things like that is not handled) but it's closer, anyway. < 1236981398 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Woo! < 1236981420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :erm < 1236981420 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: < 1236981422 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it's repeated < 1236981424 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :first without monospace < 1236981425 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :then with < 1236981439 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't see that. < 1236981449 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236981449 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :

Type more than 65535 bytes

< 1236981451 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :

< 1236981453 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A user-defined data type cannot exceed 64K. < 1236981455 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :

< 1236981457 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236981459 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236981461 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :qbasic help < 1236981463 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : < 1236981473 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I do. < 1236981493 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1236981494 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh. < 1236981497 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Right, whoops. < 1236981519 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There, now it's better. < 1236981536 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I had my extra-linkifying loop print it out instead of modifying the @array, so there were two copies. < 1236981541 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : Programming task Keywords included in this list < 1236981541 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ═════════════════════════════════ ═══════════════════════════════════════ < 1236981545 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :is that space a bug? < 1236981553 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : BASICA Statement QBasic Equivalent < 1236981553 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ══════════════════ ═══════════════════════════════ < 1236981556 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236981558 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :just misaligned < 1236981562 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :maybe you should replace ═ with = < 1236981566 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and ─ with - < 1236981580 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, possible mycology bug in TIME: It doesn't seem to check day of year with anything but local time. That could differ between local and utc output. < 1236981584 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :BTW, GET and PUT aren't linked fizzie < 1236981597 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Also I may be reading the branch profiling info wrong. But this *does* seem to be the case. < 1236981616 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Er, it aligns just fine, otherwise that QBasic Equivalent "underline" wouldn't start at the right spot. < 1236981624 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Not really a bug. < 1236981631 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, it doesn't check it in any case. < 1236981633 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: It does not for me. < 1236981634 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It just outputs it. < 1236981649 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh. Well, then your "monospace" font isn't very monospace. < 1236981657 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :No unicode monospace font is. < 1236981658 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It aligns just fine in your IRC-paste too. :p < 1236981662 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I know this because I wanted one once. < 1236981672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well right. But the output will be wrong when UTC and local time are on different dates < 1236981676 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :TBH, < 1236981698 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, GET and PUT aren't linked because they're in the index twice, "GET (File I/O) Statement" and "GET (Graphics) Statement" and I can't know which one to link. < 1236981699 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: true true < 1236981717 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: you could output a disambig < 1236981723 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :i.e., you click it and get to a "DID YOU MEAN..." < 1236981729 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, right, sure. < 1236981731 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can do that. :p < 1236981740 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Sure, gimme the source code & source file :P < 1236981743 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :ehird: meh, I prefer the "Spring Night" theme... < 1236981769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Judofyr: but black windows are ugly in OS X (due to window borders) :P < 1236981780 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: http://zem.fi/~fis/convert.pl and source.txt. Going away for a while, have fun with it. < 1236981784 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yay. < 1236981790 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Bye < 1236981839 0 :Judofyr!unknown@unknown.invalid PRIVMSG #esoteric :my Adium is black too... < 1236981913 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, is there any particular reason why ELF files have read-only data sections? Why not have constants where the executable code is? < 1236981962 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or, I guess executable formats in general < 1236981994 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not every architecture can really comfortably address that place, that might be one reason. The possibility for making data non-executable might be other. < 1236982005 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :grr < 1236982008 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how do you tell perl a file is in utf-8? < 1236982011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :source file < 1236982023 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :It just seems like it'd be a filesize optimization to leave out the extra headers < 1236982024 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"use utf8;" or something like that. < 1236982051 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I wouldn't use it if I could figure out the codepoint of these chars :P < 1236982059 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :I mean, I guess the compiler should be reasonably sure that the code it generated won't accidentally jump into the data parts :-P < 1236982089 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: You could just instruct your compiler to put all the constants in the .text section. < 1236982119 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I mean, you don't actually have to have more than one section in an ELF file, I guess. < 1236982124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : # transform links... we shunt commands outside links for maximum sillitude... < 1236982126 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :an impressive comment < 1236982140 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Which is why I'm wondering why compilers make multiple sections at all < 1236982171 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: Because architectures have more than one kind of memory, and/or they want to set access flags separately for different stuff. < 1236982220 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: And my point is, the compiler knows the architecture, so it should know in the case of x86 that it doesn't matter, and it knows the code it generated so it can ignore access flags < 1236982221 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I mean, take some Harvard architecture machine, it has completely separate code and data memories. < 1236982234 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, *that* might be just historical inertia. < 1236982242 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But if you're compiling an x86 binary it won't run on a Harvard architecture machine. :-P < 1236982272 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :One thing that came to mind is that due to linkers and no full-program analysis, I guess it actually doesn't know for sure what code is in the final program < 1236982283 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If you're compiling C, you can't really be sure you won't jump into your read-only data at some point, and it might therefore be prudent to keep it non-executable. < 1236982284 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/NOHI] [[/RUN] sou < 1236982285 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Which is why it sets the sections to non-executable for safety < 1236982286 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ACTION tries to fix < 1236982323 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :it's certainly possible to compile C into Harvard architecture machines < 1236982332 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :gcc-bf's Harvard architecture, for instance < 1236982344 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I don't think anyone was questioning that. < 1236982406 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236982410 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how do you say not in perl regexps? < 1236982412 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(?!foo)? < 1236982438 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's a negative look-ahead thing, yes. < 1236982456 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :ehird: let me find an example, you can do it Prolog-style < 1236982458 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Doesn't seem to work, unfortunately < 1236982466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : $line =~ s/\b(?!\/)([A-Z\$]+)/extralink($1)/ge < 1236982466 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : unless $line =~ / I mean, you don't actually have to have more than one section in an ELF file, I guess. <-- Hm I think you will need more than one in fact.. < 1236982478 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :(*COMMIT)(*F)| at the end of the regex works < 1236982488 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1236982489 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :it's like the prolog definition of not, almost exactly < 1236982491 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm basically trying to say "that, but not with a / in front" < 1236982492 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, at least 2 < 1236982503 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :since first section must be a NULL one < 1236982503 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :ehird: oh, that's negative look/behind/ you need < 1236982510 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :according to spec < 1236982511 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :well, it's "not" to me :P < 1236982513 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :"not a /" < 1236982519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I guess NULL and .text might work < 1236982526 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :ehird: there's more than one sort of not in a regex < 1236982532 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :[^/]foo almost works < 1236982542 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :that's "foo preceded by a character that is not a /" < 1236982555 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :but that doesn't allow for a foo at the beginning of the string < 1236982576 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure though < 1236982583 0 :FireyFly!unknown@unknown.invalid PRIVMSG #esoteric :^[^/]?foo < 1236982586 0 :FireyFly!unknown@unknown.invalid PRIVMSG #esoteric :Should work alright? < 1236982598 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm, yes < 1236982602 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wait, no < 1236982604 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that allows for / < 1236982607 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I think < 1236982608 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hm, nope < 1236982617 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well. < 1236982619 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :That breaks things. < 1236982620 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Are you sure? The canonical http://www.muppetlabs.com/~breadbox/software/tiny/teensy.html has 1 in the shnum field. < 1236982622 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So I guess no, < 1236982639 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: that isn't a valid ELF file < 1236982642 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it relies on linux's handling < 1236982643 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :as they said < 1236982664 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, I'm pretty sure. I remember reading some mail about it on the gnu binutils mailing list. < 1236982744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, anyway without separate data section you need to allocate any read-write vars on stack or heap < 1236982762 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, I think Deewiant was just complaining about .rodata. < 1236982772 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :So what's that null section about, then? I mean, it's not anything objdump shows, no? < 1236982830 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Apparently not, but readelf lists it. Anyway, why is it there? < 1236982900 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyway .rodata is useful for NX < 1236982923 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I question how that is 'useful' < 1236982923 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, as for why: all I remember was that specs required it < 1236982943 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, um? You suggest NX is useless? < 1236982947 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Oh, and (fixed-width-only) negative lookbehind is (?. < 1236984515 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: In any case you don't need mprotect since you can make a different RWE section and just jump to that at the start of execution in the RE < 1236984532 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, Yep you can. Both with and without NX. < 1236984535 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Your point? < 1236984552 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :My point is you don't need mprotect, which you said one does. < 1236984604 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm. < 1236984616 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :How do you switch DOS into the highest video mode? < 1236984620 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Presumably writing to some address. < 1236984625 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :vga or svga? < 1236984627 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, well you need either mprotect() or change the section flags in the executable. Right < 1236984634 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :SCREEN 12 is the traditional method in QBasic < 1236984648 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: SVGA, since it's higher resolution. < 1236984654 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Hm I wonder. Does WXSVGA exist? < 1236984654 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236984661 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, hi mad. haven't seen you before. < 1236984667 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Mode 13h! < 1236984670 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :ehird: then the easiest method is a library < 1236984674 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, duh. He joined half a screen back. < 1236984678 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: o :P < 1236984683 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :yeah I'm new :D < 1236984694 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: ah, to hell with that, QBasic and libraries is like... like... like QBasic and libraries. < 1236984709 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :mad: what brings you here? < 1236984712 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :in qbasic? heh < 1236984725 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: Yeah, I'm playing with dosbox < 1236984727 0 :Mony!unknown@unknown.invalid QUIT :Nick collision from services. < 1236984730 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :Sb < 1236984732 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mad, we usually don't do DOS stuff. We do things in Brainf*ck, Befunge, INTERCAL and such usually. < 1236984742 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just so you don't get the wrong impression. < 1236984744 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :yeah I know < 1236984749 0 :M0ny!n=Harmony@AToulouse-258-1-93-123.w90-60.abo.wanadoo.fr JOIN :#esoteric < 1236984762 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I think that's blatantly obvious. < 1236984763 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I did a couple attempts at esoteric languages < 1236984769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also, we're more offtopic than on... < 1236984773 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well not from topic, Not from the convo right no < 1236984776 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :now* < 1236984783 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but, the name is #esoteric, see. :P < 1236984785 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :but yeah with qbasic your best luck is probably 640x480 < 1236984789 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Mm < 1236984799 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :actually, we spend most of our time offtopic < 1236984800 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well, what about those persons wondering about new age stuff or whatever it is < 1236984803 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :but ontopic is better IMO < 1236984805 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :Maybe you can hack it a bit to get it to 720x512 but probably not much more :D < 1236984809 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :because they misunderstood what type of esoteric < 1236984813 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :There's a .bas file for doing svga graphics, though. < 1236984815 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement: that's what I said < 1236984817 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :more offtopic than on < 1236984821 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: he said programming, so. :P < 1236984826 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well right < 1236984831 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :actually, most of the time is taken up with ehird and AnMaster arguing < 1236984835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Heh. < 1236984838 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hah < 1236984846 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ■ activepage% The screen page that text or graphics output writes to. < 1236984846 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ■ visualpage% The screen page that is currently displayed on your < 1236984847 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : screen. < 1236984851 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Fun fun. < 1236984860 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :you can have great fun double-buffering with those < 1236984865 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :but most of the good video modes don't support it < 1236984867 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, didn't your stats show ehird was the most active one? < 1236984871 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and was I number two or? < 1236984883 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :if you remove arguments between you too, though, you're about #102 and #105 < 1236984888 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :*you two < 1236984890 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Right. < 1236984894 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mhm < 1236984902 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe the SVGA library was for quickbasic 4.5 only. Hmm. < 1236984904 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement: Actually, it's mostly my pastes and multiline stuff that make me high < 1236984906 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :yeah a lot of those modes are kinda blah < 1236984908 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Err, higher. Not, you know, high. < 1236984913 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Because, drugs are bad, mmkay. < 1236984940 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :cga? more like suck g a :D < 1236984972 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Here's a SVGA tutorial for you, treating QBasic in addition to QuickBasic: http://www.petesqbsite.com/sections/tutorials/zines/qbtm/1-svga.html < 1236984986 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm going for vga for simplicity < 1236984991 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I would, too. < 1236984994 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh WQUXGA < 1236984999 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that exists it seems < 1236985010 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :"Wide Quad Ultra Extended Graphics Array" < 1236985013 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WQXGA is often found in 30" displays like the Dell 3008WFP and the Apple Cinema Display. < 1236985014 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But I distinctly remember seeing a rather featureful svga library for either qbasic or quickbasic. < 1236985016 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://en.wikipedia.org/wiki/QXGA#WQUXGA < 1236985018 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's just 2560x1600 < 1236985021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :not insanely large < 1236985027 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, WQXGA != WQUXGA < 1236985031 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :o < 1236985032 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ha < 1236985044 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :svga is doable in djgpp < 1236985055 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :WQUXGA: 3840 x 2400 < 1236985055 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yikes, colour attributes are scary < 1236985058 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :and doable as in practical < 1236985063 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and is 16:10 < 1236985070 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :color attributes? < 1236985072 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also it's really irritating that QBASIC reformats your code to be less ugly. < 1236985075 0 :Hiato!unknown@unknown.invalid QUIT :Connection timed out < 1236985076 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: http://zem.fi/~fis/qb.html#QEw4MDUw < 1236985100 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :there's a trick for that < 1236985114 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :you can just overwrite the palette < 1236985135 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :cute < 1236985157 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hmm < 1236985160 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mode 13 seems the best < 1236985161 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :What's the fun is that in addition to NOT, AND, OR, XOR QBasic also has the EQV and IMP (equivalence, implication) bitwise ops. < 1236985164 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :since you get 256 colours < 1236985173 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :yeah mode 13 is the best for games < 1236985175 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :although the res is tiny on this screen ofc < 1236985190 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Admittedly "a EQV b" is just "NOT (a XOR b)" and so on, but it's there. < 1236985215 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :though with some palette editing you can make 16 color modes look good, which is nice < 1236985225 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: you still only get 16 cols :-) < 1236985240 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :well, yeah :D < 1236985254 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :but some games do well with that < 1236985271 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :duke nukem 2, metal gear 2, hmm < 1236985271 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :On Real Computers, you could just do palette reprogramming during the hblank period and get 16 different colors for each line. < 1236985291 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: except the ibm PC isn't a real computer :D < 1236985302 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Right, it's a business machine. < 1236985325 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :PCs aren't for doing hdma tricks < 1236985331 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :that's what amigas are for < 1236985408 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PLAY "T255P64" <-- shortest pause you can get without silly timer hax < 1236985418 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hdma? < 1236985428 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what does the extra h on DMA mean there? < 1236985445 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :horizontal blank dma < 1236985464 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see. And what does that actually mean? < 1236985467 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I still need to figure out how to terminate this program < 1236985471 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no break key :( < 1236985472 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I think it's specific to snes technically but in general it refers to effects where you alter registers between lines < 1236985486 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, where did you find qbasic btw? < 1236985490 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: logs. < 1236985500 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :greh < 1236985501 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I mean, download url? < 1236985503 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :It's common on 16 bit platforms except PC and mac < 1236985507 0 :jc!unknown@unknown.invalid PRIVMSG #esoteric :lolqbasic < 1236985512 0 :tombom!unknown@unknown.invalid QUIT :"Peace and Protection 4.22.2" < 1236985514 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: It's possibly from my dos 6.21 installation floppy. < 1236985519 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1236985519 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :no < 1236985527 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, just the help file was? < 1236985530 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ya < 1236985615 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: Since you usually care about legalities (I guess?), ais523 linked to http://download.microsoft.com/download/win95upg/tool_s/1.0/w95/en-us/olddos.exe which you can run in dosbox. < 1236985632 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Although I'm quite sure my qbasic.exe has pretty much the same bits. < 1236985642 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :fizzie, mhm < 1236985655 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and yeah I tend to be careful. < 1236985663 0 :M0ny!unknown@unknown.invalid QUIT :Read error: 60 (Operation timed out) < 1236985666 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I think that should expand to various "old DOS utilities". < 1236985686 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :anyone here good at perl? Need to test something for the PERL fingerprint in cfunge... < 1236985692 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :I'm pretty good at Perl < 1236985696 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :what in particular do you need? < 1236985719 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement, I don't know perl at all. Something like a for loop. To output 5932 bytes < 1236985719 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I'm reasonably good at writing messy Perl. < 1236985724 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :just use x or whatever < 1236985751 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :The expression "x" x 5932 evalutes to a 5932-byte string. < 1236985761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :the perl equivalent of: for (i=0;i<5932;i++) putchar('x'); < 1236985764 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :is what I need basically < 1236985767 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1236985773 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Well, that's print "x" x 5932; < 1236985788 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236985789 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :x = 5932; print "x" x x; < 1236985800 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :D'oh, sigils < 1236985809 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :It's also print "x" foreach (0 .. 5931); if you want to be more form-conformant. < 1236985811 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :well that would be less confusing with something else than x I guess < 1236985817 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$x=5932;$X="x";print $X x $x < 1236985824 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :in python it's print "x" * 5932 < 1236985827 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :$x=5932;$X=x;print $X x $x < 1236985828 0 :lament!unknown@unknown.invalid PRIVMSG #esoteric :but that's just because python is sane < 1236985836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : ■ STATIC Specifies that the values of the SUB procedure's < 1236985836 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : local variables are saved between function calls. < 1236985840 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's a modifier ON THE FUNCTION < 1236985841 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CallForJudgement: WTF. < 1236985851 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1236985854 0 :CallForJudgement!unknown@unknown.invalid PRIVMSG #esoteric :ehird: heh < 1236985862 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Hey, just be happy it actually has functions, and local variables. < 1236985864 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: Use ẋ or something instead of X < 1236985870 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's quite a fancy-schmanzy schnitzel. < 1236985873 0 :CallForJudgement!unknown@unknown.invalid NICK :ais523 < 1236985877 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and in an eval() context. So eval returns that many x. < 1236985881 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what would it be then? < 1236985887 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :"x" x 5932 < 1236985888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :'x' x 5932 < 1236985890 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236985895 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :SUB count STATIC < 1236985897 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :count = 0 < 1236985899 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :count = count + 1 < 1236985900 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RETURN count < 1236985900 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't think GW-BASIC did local variables. It might've done GOSUB, though. < 1236985901 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :END SUB < 1236985926 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :um < 1236985931 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :err, wait < 1236985935 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :RETURN isn't a valuey thingy < 1236985936 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so why doesn't this work: perl -e 'print eval("x" x 5932)' < 1236985937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I need a function < 1236985937 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It's not restricted as a function attribute, though: "STATIC makes a variable local to a function or procedure and preserves its value between calls." < 1236985942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: because that evaluates < 1236985943 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :xxxxxxxxxxxxxxxxxxxxxx < 1236985946 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :instead of returning xxxxxxxxxxxxxx < 1236985948 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :you should do < 1236985952 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :eval('"x" x 5932') < 1236985953 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I think the stone age basics had gosub yeah < 1236985954 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, right < 1236985955 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and now I doubt your coding ability... < 1236985959 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :/flamebait < 1236985971 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I don't know perl indeed. < 1236986005 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :why do you need eval in order to print lots of xs? < 1236986005 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that I admit. I just try to conform to the rather weird PERL fingerprint spec. And found a bug in handling long results... < 1236986060 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, look at PERL spec < 1236986065 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :oh dear < 1236986068 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :http://catseye.tc/projects/funge98/library/PERL.html < 1236986070 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :But seriously, why can't qbasic do a simple "GOTO $var"? (Alternatively: how can it do that?) < 1236986072 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :E ('Eval') pops a 0gnirts string and performs a Perl eval() on it, possibly (or not) shelling Perl as indicated by S above. The result of the call is pushed as a 0gnirts string back onto the stack. < 1236986081 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: you can use SELECT CASE < 1236986083 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: GOTO var? < 1236986086 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which is basically switch() from C < 1236986102 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, you can GOTO label < 1236986104 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, I mean GOTO var$. Or is it var%? I don't remember them sigils either. < 1236986109 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, that means I ended up (with the help of Deewiant and someone else in here, forgot who) with: execv() on "perl" "-e" "open(CFUNGE_REALERR, \">&STDERR\"); open(STDERR, \">&STDOUT\"); print CFUNGE_REALERR eval($ARGV[0])" < 1236986111 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but I want a computed goto. < 1236986115 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: QBasic sigils are weird < 1236986117 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, use a switch < 1236986118 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: fizzie < 1236986123 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :was it him? ok < 1236986126 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :also, $ = string, % = integer < 1236986130 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :nothing = same as % < 1236986136 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: that looks about right < 1236986140 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :does it have some float too? < 1236986152 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :think so < 1236986158 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, anyway I found a bug in my handling of reading back really long results. < 1236986159 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :data-type suffix (%, &, !, #, or $). < 1236986169 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : +-------------------------Data-Type Suffixes--------------------------+ < 1236986169 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : │ ! Single-precision % Integer │ < 1236986170 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : │ # Double-precision & Long-integer │ < 1236986172 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : │ $ String │ < 1236986174 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric : +---------------------------------------------------------------------+ < 1236986177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :So, #. < 1236986190 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :& is a whopping THIRTY TWO BITS < 1236986215 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :what's the point of ! :D < 1236986223 0 :M0ny!n=Harmony@AToulouse-258-1-93-123.w90-60.abo.wanadoo.fr JOIN :#esoteric < 1236986256 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: Do you mean "use SELECT CASE" as in "write your whole program as "SELECT CASE a% CASE 1 ..." and use "a% = 42; " for control flow"? < 1236986265 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: stores 7 digits after the decimal point < 1236986267 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: well, why are you doing control flow like that, anyway? < 1236986274 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I was assuming you'd only be jumping to one of a set few lines anyway < 1236986283 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :ehird: yeah but you can use # instead :D < 1236986290 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I was just thinking of ehird's "Objective QBasic" thing. < 1236986292 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: Think of the RAM! < 1236986304 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :wait, i know < 1236986304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :We have like 1MB. < 1236986304 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236986304 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ais523: I'm not actually doing anything. < 1236986304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1236986304 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: eek :D < 1236986304 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :well, conventional ram :D < 1236986709 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :And more like 64k often :D < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :hee < 1236986709 0 :M0ny!unknown@unknown.invalid QUIT :Client Quit < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :who needs C when you have qbasic < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::P < 1236986709 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant, do you remember off the top of your head which value to y returns stack size? < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :(int*)1234=5; < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :POKE1234,5 < 1236986709 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :ehird: but you can have TURBO C :D < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :WINNER: QBASIC < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: I HAD A TURBO BUTTON ON MY PC! It didn't do a thing. < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: nope < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :ehird: What a crap PC < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Deewiant: :< < 1236986709 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :from like some 386s on it did like nothing :D < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Turbo buttons should always do something < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :y u insult my pc < 1236986709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :ehird: course it did, it slowed down the PC when you turned it off < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Yeah, exactly < 1236986709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :they were designed so you could play old games which used loops for delays < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yeah < 1236986709 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :because even if you ran stuff at 7mhz it's still going to be ridiculously fast on a 486 no matter what < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :And they worked well < 1236986709 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :but why have a slow down button when you can have a speed up button? < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I always thought it was a go faster button < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As in < 1236986709 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Well, it is < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can only use half your CPU and RAM < 1236986709 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :until you press TURBO < 1236986709 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :My router box used to be in a case that had a spare TURBO BUTTON, but I couldn't figure out any nifty thing to connect it to. < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm, I'ma write a sierpinski drawer. Should be trivial. < 1236986710 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :not to mention a pentium which is probably going to be able to stuff the whole program in its CACHE < 1236986710 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :then pair instructions to do 2 instructions per cycle :D < 1236986710 0 :MigoMipo!unknown@unknown.invalid QUIT :"QuitIRCServerException: MigoMipo disconnected from IRC Server" < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmm < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :QBasic has no bitwise operators? :-S < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh wait < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :they're its boolean operators < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :XD < 1236986710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :what happened if you pressed turbo while the computer was running? < 1236986710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: it crashed < 1236986710 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes. And there's even EQV and IMP there. < 1236986710 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236986710 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :I know, I've done that once < 1236986710 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: You became a COOL DUDE. < 1236986711 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Huh? My turbo button worked when the machine was on < 1236986728 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :Or alternatively it did nothing, it's been a long time < 1236986732 0 :Deewiant!unknown@unknown.invalid PRIVMSG #esoteric :But it certainly didn't crash anything < 1236986745 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I used to have a 386 that had a manufacturer-specific "TURBO COMMAND"; a DOS command that could be used to switch between 8 MHz and 16 MHz mode. < 1236986752 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :On-the-fly, even. < 1236986761 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1236986803 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Also http://zem.fi/~fis/qbu.html has the qbasic manual with those utf-8 line-drawing characters, for people who prefer that and happen to have a font and system where things align correctly with it. < 1236986818 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :PICs can be switched from their default 4 MHz (= 1 MIPS) down to about 75 kHz < 1236986821 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :as a sort of power-saving mode < 1236986846 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :Modern CPUs can change freq too < 1236986850 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :for power saving < 1236986864 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :like my sempron, 1 GHz, 1.5 GHz or 2 GHz < 1236986872 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :C128 can be switched from the default 1 MHz mode into a faster 2 MHz mode, but then the VIC-II chip drops offline, and you have to use the 80-column screen which has a different display controller. < 1236986878 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :s/,/:/ < 1236986879 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :DIM A(640,480) gives me subscript out of bounds < 1236986888 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :why? ais523? < 1236986895 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :because qbasic can't allocate a lot of memory < 1236986902 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's not a lot ... < 1236986903 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: heh, that's... not nice < 1236986932 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :640*480!? That's over nine thous.. I mean, 307200. That amount of integers wouldn't fit in any sort of memory. < 1236986937 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::D < 1236986942 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But it fits in video memory! < 1236986963 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Not really, you only have four bits per pixel there. < 1236986968 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ah. True da.t < 1236986973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :actually, 307200 is almost half of memory < 1236986977 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It's just, using LINE on the fly was really slow. < 1236986979 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DOS only supports 640K, remember < 1236986980 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :As in one pixel per second. < 1236986993 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can POKE in the video memory, though. < 1236987003 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, allocate it in hi memory? extended memory? or whatever < 1236987011 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in BASIC? < 1236987017 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you can POKE anywhere in BASIC < 1236987020 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well can't you POKE to do that? < 1236987021 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Yeah, 'cept I don't know the format of the values < 1236987023 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ais523: that was @AnMaster < 1236987024 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :yeah but qbasic probably can't handle >16bit pointers < 1236987037 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :hm < 1236987039 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :ehird: It's just "two nybbles in each byte give two adjacent pixels". < 1236987045 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :that's why people usually switch to djgpp :D < 1236987049 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :mad: it can < 1236987050 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: and what is a pixel in that case? < 1236987051 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :DEF SEG < 1236987056 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :use one of those "memory optimizer" to move stuff out of the memory you can use then < 1236987067 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :stuff = malloc(20000000); < 1236987071 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :What's the address of video memory, anyhoo? < 1236987073 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :Actually WORKS in djgpp :D < 1236987075 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You do need to DEF SEG = &HA000. < 1236987075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I remember some tool that messed with config.sys and autoexec.bad < 1236987077 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :0xa0000 < 1236987079 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :bat* < 1236987081 0 :psygnisfive!n=psygnisf@c-71-57-164-119.hsd1.fl.comcast.net JOIN :#esoteric < 1236987089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :to free low low memory < 1236987118 0 :kar8nga!unknown@unknown.invalid QUIT :Remote closed the connection < 1236987118 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Then you can just POKE in there, and the address given in POKE is directly an offset to the screen buffer. < 1236987123 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :video mem address depends on video mode < 1236987124 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: Still slow; as in it's taking many many seconds. I wonder if I have a bug. < 1236987132 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or maybe it crashed. < 1236987138 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :but in 256 color mode it's 0xa0000 < 1236987148 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Ah. < 1236987150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I was using SCREEN 1. < 1236987162 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :12 always used to be my favourite < 1236987169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, how many FPS? < 1236987171 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Yes, but I'm just doing a b/w sierpinski :P < 1236987175 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I don't know < 1236987206 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :heh < 1236987214 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, tell me when/if you find out < 1236987222 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Oh, it terminated. < 1236987229 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, I'm just looping over the 320,200 display. < 1236987233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I don't see how I can get any faster. < 1236987264 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I remember doing some comprehensive qbasic putpixel benchmarking, and there were at least five methods. < 1236987267 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess sierpinski is just way beyond DOS's ability. < 1236987305 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :ehird: unless it's 3d bit dos < 1236987312 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :3 DIMENSIONAL BIT DOS?! < 1236987317 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :haha < 1236987321 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yay, voxel bits < 1236987328 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :voxbits < 1236987330 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :you could almost call it voxel-perfect < 1236987330 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :You can write your sierpinski to file and the BLOAD it directly on top of the display memory. That gives you a fast blit. Unfortunately you need to precalc the file. < 1236987369 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :use putpixel + recursive function? < 1236987371 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Text mode sierpinski works :P < 1236987386 0 :neldoreth!n=user@unixboard/users/neldoreth JOIN :#esoteric < 1236987415 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Still, I think POKE 320*y+x was a lot faster than any LINE (x, y)-(x, y) style thing. < 1236987422 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or PSET. < 1236987433 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Although PSET at least wasn't many magnitudes slower. < 1236987436 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : you could almost call it voxel-perfect <-- that does sound strangely familiar..... But I can't identify it < 1236987449 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :;_; AnMasterrrrrrrrrrr < 1236987456 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: esolangs.org = esoteric.voxelperfect.net < 1236987460 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right < 1236987462 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :duh < 1236987470 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ais523, I use the first url to access < 1236987478 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hm. There seems to be some algorithmic problem. < 1236987486 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :just explaining where the reference came from < 1236987509 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, also you could do sierpinski in dos. Ever seen some of those DOS demos? < 1236987520 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: And what are they written in? < 1236987521 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Assembly. < 1236987523 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And what am I using? < 1236987525 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :QBasic. < 1236987528 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :And what is QBasic? < 1236987531 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right true < 1236987532 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :bloated < 1236987532 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Oh, there are QBasic demos. < 1236987533 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :An interpreter, probably written in C. < 1236987536 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Totally unoptimized, to boot. < 1236987541 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, can't you compile qbasic? < 1236987549 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :using QuickBASIC. < 1236987551 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I heard there was a compiler < 1236987551 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Which I don't have. < 1236987552 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236987558 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :QuickBasic is commercial, non-free. < 1236987566 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :then you can switch to the next bigger thing < 1236987567 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :I see < 1236987567 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And it doesn't really generate very fast code. < 1236987571 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :TURBO PASCAL :D < 1236987582 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :mad, I think I have a copy of that < 1236987583 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in fact < 1236987594 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not sure where < 1236987608 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and I think it was TURBO PASCAL for windows or something even. < 1236987625 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :or maybe not < 1236987637 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Or you can switch to the next smaller thing, debug.com. < 1236987638 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :don't remember. Too long ago < 1236987652 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I've written a short game for dos < 1236987655 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Hmmm. < 1236987660 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :but it was with libraries < 1236987667 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, anyway, when you find out frame rate: tell me < 1236987669 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Question. < 1236987672 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :A bunch of PRINT "x"; < 1236987674 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :in succession < 1236987677 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :will output nothing but xs < 1236987678 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :right? < 1236987684 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :who knows < 1236987703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :an unfair comparsion: glxgears on my GPU gives me: 38952 frames in 5.0 seconds = 7790.366 FPS. And that is with 2xAA... < 1236987705 0 :mad!unknown@unknown.invalid PRIVMSG #esoteric :I think basic probably tacks on a line end and you have to supress it or something < 1236987710 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, as long as you don't forget the ; there. < 1236987715 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :mad: thus the ; < 1236987716 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :That's the line-suppression thing. < 1236987721 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: frame rate of what < 1236987739 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, just drawing a single colour over the screen in a loop? < 1236987739 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :A , would start at the "next print zone", and "print zones are 14 characters wide". That's very out-of-nowhere. < 1236987752 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: 10FPS < 1236987753 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Or so < 1236987756 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, heh < 1236987760 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Well < 1236987769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It takes about 7 seconds to display 256 colour bands < 1236987779 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I dunno < 1236987780 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :wow that is slow < 1236987787 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :anyway < 1236987798 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, for dosbox it should be possible to tune the speed iirc < 1236987812 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Look, it's a lot faster than the TI-BASIC in my calculator, so just stop complaining about the speed. < 1236987816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CLS < 1236987816 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR Y = 0 TO 15 < 1236987817 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR X = 0 TO 15 < 1236987819 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Y1 = 15 - Y < 1236987821 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF (X AND Y1) = 0 THEN PRINT "*"; ELSE PRINT " "; < 1236987823 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT X < 1236987825 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT < 1236987827 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT Y < 1236987835 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Renders a sierpinski triangle of 16x16 in about 0.7 seconds. < 1236987844 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :You can watch it draw. < 1236987861 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now to try and center it. < 1236987944 0 :jc!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: this < 1236987950 0 :jc!unknown@unknown.invalid PRIVMSG #esoteric :TI-Basic is so ridiculously slow < 1236987951 0 :jc!unknown@unknown.invalid NICK :comex < 1236987962 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :yeah well your butt is ridiculously slow if you know what i mean. < 1236987973 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :someone show http://www.newscientist.com/blogs/shortsharpscience/2009/03/how-moores-law-saved-the-web.html to zzo38 < 1236987974 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric : Look, it's a lot faster than the TI-BASIC in my calculator, so just stop complaining about the speed. <-- Remember that FOR loops after faster than WHILE in TI-BASIC < 1236988008 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :all good TI-Basic programs start with AsmPrgm < 1236988028 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :comex, how does that work. I don't remember? < 1236988040 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :you have to type in z80 opcodes as hex < 1236988043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :CLS < 1236988043 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR Y = 0 TO 15 < 1236988044 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Y1 = 15 - Y < 1236988046 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR I = 1 TO Y1 < 1236988047 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :(thus 'asm' is somwhat misleading...) < 1236988048 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT " "; < 1236988050 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT I < 1236988052 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :comex, oh I see < 1236988052 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :FOR X = 0 TO 15 < 1236988054 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF (X AND Y1) = 0 THEN PRINT "**"; ELSE PRINT " "; < 1236988056 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT X < 1236988058 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :PRINT < 1236988059 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so you could hand type it on the calculator? < 1236988060 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NEXT Y < 1236988062 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :centered. < 1236988064 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Also optimmized. < 1236988066 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Now it takes 0.3s < 1236988073 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :I have a packet with a list of z80 opcodes < 1236988075 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, I think there was a faster way than = 0 < 1236988088 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :sometimes when I'm feeling masochistic I make programs < 1236988089 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :in IF that is < 1236988121 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :not() should be faster. At least on TI-83+ < 1236988124 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :which is what I have < 1236988143 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :This is on DOS :P < 1236988146 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :this < 1236988146 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236988147 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :But, I need to check 0 < 1236988150 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :NOT() checks for -1 or something < 1236988154 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :It doesn't output right in any case < 1236988163 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, well I meant on TI-83+ < 1236988169 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :right < 1236988177 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Anyway, now to make it do it SEXTUALLY < 1236988181 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :By which I mean graphically < 1236988184 0 :comex!unknown@unknown.invalid PRIVMSG #esoteric :.. < 1236988209 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: what was your POKE gfx magick? < 1236988219 0 :KingOfKarlsruhe!n=nice@HSI-KBW-091-089-027-168.hsi2.kabelbw.de JOIN :#esoteric < 1236988229 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, scrollback? < 1236988233 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :ah POKE 320*y+x < 1236988268 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: what mode was that for? < 1236988269 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :which DEF SEG is that in? < 1236988313 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'll just use pset < 1236988314 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :probably < 1236988377 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :wtf < 1236988380 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :illegal function call on an if < 1236988383 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I guess it is complaining ab- < 1236988384 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :oh < 1236988393 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :pset without screen < 1236988410 0 :BeholdMyGlory!unknown@unknown.invalid QUIT :Read error: 104 (Connection reset by peer) < 1236988413 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Erm, or not. < 1236988432 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ACTION wonders < 1236988436 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :IF (X AND Y1) = 0 THEN PSET (X, Y) < 1236988438 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :that's invalid? < 1236988466 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :6145 output chars vs 5932 < 1236988471 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :that doesn't match at all < 1236988525 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh right indeed. < 1236988528 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :a bug < 1236988531 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Yes, as I said you need a DEF SEG = &HA000 in order for the poke to work. < 1236988541 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :And it's for mode 13h, the 320x200 VGA 256-color mode. < 1236988543 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :I'm using PSET. < 1236988546 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Not DEF SEG> < 1236988569 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :If you like. It might even be faster with PSET if you need to do the y*320+x operation. < 1236988590 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :agh < 1236988593 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :my program is running in step mode < 1236988595 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :Since concievably it might be written in C or whatever then, not done with QBasic code. < 1236988595 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :how do I undo that : < 1236988597 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric ::\ < 1236988608 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :I don't remember anything about the UI. < 1236988624 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, read docs? < 1236988629 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :AnMaster: I did. < 1236988633 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Woo, my sierpinskigfx work < 1236988645 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :nice < 1236988654 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :Albeit sloooowly. < 1236988660 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ehird, screenshot? < 1236988672 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :also for dosbox you can increase simulation speed < 1236988677 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :some option somewhere < 1236988690 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :The slowness is AUTHENTIC. < 1236988695 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :btw, what is the difference between dosbox and doxemu? < 1236988696 0 :ais523!unknown@unknown.invalid PRIVMSG #esoteric :yes < 1236988702 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dosbox emulates DOS, not a cpu < 1236988703 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :dosemu* < 1236988707 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :ah < 1236988712 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :ACTION memorizes all of pi in binary < 1236988712 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :er oh < 1236988714 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :thought you said qemu < 1236988720 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :Pretty easy. < 1236988723 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :so why is the second called dosemu? < 1236988726 0 :kerlo!unknown@unknown.invalid PRIVMSG #esoteric :1100111110000000 < 1236988729 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :it emulates dos < 1236988744 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :then what is the difference? Which is best? < 1236988749 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :dosbox or dosemu? < 1236988749 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :fizzie: so, what IS it that makes BASIC so damn slow? < 1236988753 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :dosemu only runs on linux < 1236988759 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :but iirc its emulation is more "authentic" < 1236988765 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :oh? < 1236988767 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :and dosemu lets you copy/paste from-to dos < 1236988769 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :apparently < 1236988775 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :sounds useful < 1236988781 0 :fizzie!unknown@unknown.invalid PRIVMSG #esoteric :dosemu uses the vm86 syscall to run DOS "natively" on linux. < 1236988783 0 :AnMaster!unknown@unknown.invalid PRIVMSG #esoteric :and the linux requirement is hardly an issue < 1236988795 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :unless you use something else. < 1236988797 0 :ehird!unknown@unknown.invalid PRIVMSG #esoteric :like me