00:02:38 you guys are going to hate me :) 00:02:46 when you try to figure wtf this does 00:03:28 Quine. 00:04:09 (just a guess from reading it 00:04:10 ) 00:04:34 NO 00:04:36 :) 00:04:38 Two iterating quines that turn to each other, and are also rot13 of each other 00:04:46 "Hello world!" according to g++. 00:04:51 Also, you suck at coding. 00:04:55 who, me? 00:04:57 pikhq: that's mine 00:04:59 and very old. 00:05:02 and why? 00:05:09 I'm writing mine still 00:05:13 Because you use an old-style C++ header. :p 00:05:34 lol 00:05:36 it's _extremely_ old :) 00:05:41 very crucial in being a good coder 00:05:43 Also, you've got a comparison that's always true. 00:06:10 pikhq: yes, there are also simple obfuscations there 00:06:42 the first "for" is very trivial to hack up 00:06:50 it's the while i actually obfuscated 00:06:56 I is always greater than 0. 00:07:16 pikhq: yes, you can most likely do some deobfuscating just by looking at it 00:07:34 Actually, I'm busy adding to the obfuscation. 00:07:49 you are adding obfuscation to that? 00:07:58 or..? 00:08:17 "1" 00:08:32 Err. 00:08:32 "i>=0" can be replaced with just "1". 00:08:34 you can just take the obfuscation of the "for" outta there, i just added it there in 5 min for perfecting it 00:08:54 pikhq: do you read what i say? 00:09:10 oklopol: That was in the "hwile" loop. 00:09:39 pikhq: sorry, didn't know i use i there 00:10:25 anyway, you can of course replace everything with a cout<<"hello world" 00:10:57 but if you can do that manually in the while loop, that's something 00:10:59 in my standards 00:11:28 most things on the net are much simpler to deobfuscate than that 00:12:37 I can replace the "cout" line with puts(), allowing you to not use a header. . . And now I think it's also valid C. . . 00:13:35 cool 00:14:03 that's just c obfuscation anyway 00:14:13 i should do a real obfuscation sometime 00:14:25 something sick 00:14:26 uh 00:14:35 And I'm tempted to redo your loops via labels. 00:14:56 hehe 00:15:13 :P 00:15:27 http://www.vjn.fi/pb/p211131112.txt <<< loops being used when obfuscating often result in there actually being no obfuscation present... 00:16:06 that being an example of that 00:16:37 the problem with obfuscation is that stuff like that make code look just as obfuscated as actual complicated obfuscation 00:18:49 Obvious solution: obfuscated Perl. 00:18:53 Compiled to C. 00:19:59 perl seems to allow for a quite big range of obfuscation 00:20:10 too bad i don't have a perl compiler and won't dl one :| 00:50:25 -!- oerjan has quit ("leaving"). 01:13:47 zzzzzzzzzz 01:23:32 hehehe, this will be good! 01:31:09 -!- Tritonio has quit ("Bye..."). 01:40:55 OMFG 01:40:56 it works :D 02:01:48 you guys will like this when I finish 02:29:51 coool 02:30:13 wooh! almost there 02:30:19 one more block to write 02:30:21 and it will be done 02:30:28 (then I have to clean it) 02:30:47 it sure takes a while to compile though :P 02:38:40 hehe 02:38:42 testing it 02:38:45 I think it's done 02:38:51 I'll know shortly... 02:48:07 http://rafb.net/p/C7WE8x61.html 02:48:11 MUAHAHAHAHA!!!!! 02:49:01 so? is it _evil_? 03:06:36 i'll see 03:07:47 pretty cool :) 03:07:56 hmm... how do the _'s work? 03:29:59 why is the equivalence of two turing machines incomputable? 03:33:17 :D 03:33:33 bsmnt, I assume it has to do with the halting problem 03:33:40 anyway I was afk oklokok 03:34:06 it's all templates :D 03:36:05 which _'s, oklo 03:36:13 there are several different uses :P 03:38:45 hmm, i mean you're not defining all the identifiers of /_+/ you are using 03:43:44 Figs: yes, but i don't know how 03:45:10 bsmntbombdood: i guess they're equal if they produce the same output... and proving that incomputable is pretty easy 03:45:23 how? 03:45:58 hmm 03:46:04 actually i'm not sure after all 03:46:24 guess they may never terminate 03:46:50 so even if they produce the same output for any n steps, they might differ at some point 03:47:00 i mean, the output might differ 03:47:36 that's only if you do it the brute force way 03:47:45 err 03:47:58 with turing machines it's always the brute force way 03:48:02 basically 03:48:37 you can't predict what they will do 03:49:04 ? 03:49:32 if you could just check if they will ever terminate, you'd solve the halting problem... and if you can't do that, there can be two programs that will produce the same output for any number of steps you run them and then differ in output after that 03:50:30 in other words: try to deobfuscate my incoherent explanation or just ask oerjan for proof. 03:54:03 back 03:54:08 sorry 03:54:12 uncle's visiting 03:54:31 you and your social contacts 03:54:51 :P 03:55:05 so you wanted to know how it works without trying to deobfuscate it yourself? :P 03:55:09 today (well, night, i slept all day) i've seen 3 rabbits. 03:55:20 Figs: err... yes :) 03:55:31 rofl 03:55:32 :D 03:55:44 i'm lazy, you should honor that :< 03:55:47 it's convincingly fucked up though, no? :P 03:55:57 did you ever get around to playing my song...? :P 03:55:58 uh i love the templates 03:56:07 ...oh fuck... i'll dl it now xD 03:56:53 found el linco. 03:57:06 :D 03:59:48 ok, basically it works by using the macros to generate statements for characters 04:00:01 __ ___ ____.... are different structs 04:00:49 i thought it might be so, seems i don't know enough about preprocessor macros 04:01:11 I did some evil shit :) 04:02:15 hmm, i'm putting coke bottles behind my back, and they are dissappearing into my armchair 04:02:25 lol 04:02:35 I feel evil 04:02:42 heh 04:06:54 zip zop. 04:07:55 nothing to eat but pure condensed chocolade 04:12:05 O.o 04:12:08 send me some? :P 04:13:12 i could bring it to you but i'm pretty poor right now 04:14:27 just a few pieces left 04:14:32 after that it's fast for me 04:14:38 :P 04:14:45 did you try my song? :P 04:15:08 well i guess i still have 10 euros, but i'm not awake when shops are awake so doesn't help that much 04:15:10 err 04:15:17 my memory is a bit short-term... 04:15:20 i'll try now 04:15:45 :P 04:15:46 ok 04:15:50 eh, it's still loading the page... and i opened it like 5 min ago 04:15:58 ... o.o 04:16:19 okay, refresh okayed it 04:17:48 what's the best way to parse arithmetic expressions with left-to-rigth evaluation? i'm reversing and doing it recursive to avoid left recursion's perils, but i somehow feel there's a better way... 04:18:16 i did it iteratively in java once but that was pretty complex 04:18:35 I'm working on that :P 04:18:43 of course java tends to start looking pretty complex quite easily 04:18:58 you saw my obfuscated C++, right? :P 04:19:08 err.. the one with _'s? 04:19:16 and templates 04:19:29 is that a part of your regex thingie? :D 04:20:26 no 04:20:37 but I could slip it in there and scare people 04:20:44 i saw it, i also commented it 04:20:45 heh 04:20:50 yes ;) 04:20:52 you should obfuscate all of it 04:20:53 I was joking 04:21:09 ah indeed 04:22:33 are there any good obfuscated open source lisenses around? 04:22:41 haha 04:22:43 probably 04:22:45 :D 04:22:48 but I bet they scare people 04:40:39 * pikhq curses friggin' loudly 04:41:01 hi pikhq 04:41:05 * oklopol too, someone please fix my back... 04:41:06 10-4 04:41:15 * bsmntbombdood licks oklopol's back 04:41:18 Next HP book leaked. 04:41:21 yes 04:41:23 I know 04:41:24 :P 04:41:32 * oklopol doesn't like people sneaking on his back 04:41:35 pikhq, you looked at my code, didn't you? :P 04:41:48 I can't remember 04:41:49 a licking is always in order of course 04:41:49 Damn it! I show up to the release at midnight to *avoid* spoilers!!! 04:41:51 pikhq: old! 04:42:07 it's been out for a couple days, afaict 04:42:17 -!- immibis has joined. 04:42:26 Then I should've been flipping off people for a couple of days. 04:42:57 :P 04:42:59 yes 04:43:07 hello everyone 04:43:09 flip off the idiot who uploaded it with his camera's serial number 04:43:12 hi immibis 04:43:49 hi immibis 04:44:01 is there an obfuscated C++ contest? 04:44:09 Figs: That's the first person to flip off, yes. 04:44:32 oh, and pikhq, flip off the idiot on Digg who's claiming to have uploaded it 04:44:35 And no, but there's probably a space for you in the C contests, via a C++>C compiler. 04:44:44 Figs: He's up there. 04:44:48 I'm usint templates :P 04:44:50 *using templates 04:45:01 it's the primary tactic 04:45:16 I don't know if it'd be much good without templates 04:45:24 Figs: you might weanna perfect the visual structure 04:45:49 it could look nicer :P 04:45:52 most of the entries also have a nice layout 04:46:02 but 04:46:10 Templates, compiled, are name-mangled fairly well. 04:46:11 it's still just as hard to read as is :P 04:46:23 pikhq, have you seen my code? :P 04:46:37 http://rafb.net/p/C7WE8x61.html 04:46:40 #define Q int #define X main( #define Y int argc,unsigned long argv #define Z ) { #define A); } #define YAH printf( #define ERROR_CODE "I don't know if there is an obfuscated C++ contest." Q X Y Z YAH ERROR_CODE A 04:46:52 (in response to figs question) 04:46:54 Figs: layout is not about being hard to read, but to make it seem more intact 04:47:08 :P 04:47:21 eh... I'd have prefered one really long template 04:47:23 !help 04:47:24 intact as in having a certain theme going 04:47:29 but it was easier to assemble 04:47:30 I get the feeling that you know the template system. . . 04:47:36 I do. 04:48:17 Figs: there's a nice pdf somewhere about how to make turing machines with templates 04:48:22 yeah 04:48:25 class MessagePrinter {public: MessagePrinter(unsigned long nCashReserves) {printf("%s\n",(char*)nCashR 04:48:28 though i'm not sure you'd find that helpful 04:48:29 I think I pasted it here before 04:48:32 ah 04:48:34 well 04:48:38 i should've known 04:48:51 it was the one where they showed templates were turing complete by doing math or something in them 04:48:52 oops 04:48:58 since i remember it was that same night i read it that you showed your c++ stuff 04:49:07 -!- toBogE has joined. 04:49:15 !help 04:49:27 oh and gregorr, egobot crashed 04:49:28 hey, i could listen to the song now... 04:49:53 ? 04:49:54 No such factoid 04:50:13 ? 04:50:13 ? 04:50:24 Figs: your teh song. 04:50:32 I agree 04:50:42 I thought you were going to play it on the piano :P 04:50:45 (and record it) :P 04:50:54 Oh yeah, what is it with figs and pianos 04:50:59 shut up, toboge 04:51:28 What? :P I like pianos. And the song is for piano. 04:51:31 Figs: i don't remember it anymore :) 04:51:37 lol, ok 04:51:50 hmm... vlc doesn't play midis... 04:51:56 my linux vlc that is 04:51:57 !daemon undaemon undaemon daemon 04:51:59 that is disappointing 04:52:05 (vector (vector (vector 'a) (vector 'b)) (vector (vector 'c) (vector 'd))) 04:52:17 -!- toBogE has left (?). 04:52:18 and i'm watching family guy on my other computer... god i need more computers 04:52:23 how many do you have? 04:52:30 I think I have 7 04:52:35 but most are dead 04:52:37 i mean, in use now 04:52:39 and they aren't mine 04:52:43 :P 04:52:45 I just use one 04:52:48 bsmntbombdood: what is (vector (vector (vector 'a) (vector 'b)) (vector (vector 'c) (vector 'd)))? 04:52:50 but we have a lot here 04:53:00 immibis: a vector 04:53:01 I have a second older dead laptop 04:53:04 -!- toBogE has joined. 04:53:08 looks like my tree class 04:53:17 what are you doing with it bsmntbombdood? 04:53:25 -!- GreaseMonkey has joined. 04:53:31 displaying it in your irc windows 04:53:35 I assume listp? 04:53:37 *lisp 04:54:08 Figs: can you upload that in another format? :) 04:54:18 -!- toBogE has quit ("Immibis wants me to be able to enumerate all channels on IRC and create a factoid for each of them."). 04:54:26 yeah, but I can't think of one that allows score 04:54:33 oh 04:54:40 unless you have some idea :S 04:54:42 darn 04:54:45 do you have wine? 04:54:49 i'll just use my other comp 04:54:51 ok 04:54:56 { { {a b} { { c d } } } } 04:55:32 what is { { {a b} { { c d } } } }? 04:55:46 A VECTAR 04:55:47 bsmntbombdood's code as a Tcl list. 04:55:48 immibis: pretty obvious even if you don't know lisp 04:55:54 no 04:55:55 or tcl 04:56:07 wtf is that coded in? 04:56:14 a translation of bsmntbombdood's vector into another format 04:56:17 since when has a vector needed TEN curly brackets? 04:56:24 didn't know lang though 04:56:28 immibis: when they are nested deeply 04:56:29 (I'd express it as a Tcl array, except that that can only be expressed as a list) 04:56:31 and isn't a vector just two numbers anyway 04:56:36 immibis: no 04:56:42 any number of numbers 04:56:56 pikhq: indexing O(n)? 04:57:05 this IS the sort of vector you use in mathematics, right? 04:57:08 bsmntbombdood: Yeah. 04:57:17 pikhq: fail 04:57:57 bsmntbombdood: Tcl arrays work as foo(bar). . . Associative arrays can't contain arrays, since arrays aren't a first class type. 04:58:33 immibis: you can have any number of cells 04:58:35 in a vector 04:58:38 tcl is a wimpy scripting language 04:58:56 I beg to differ. 04:59:00 the point is, if you use it to mark a point's position, you use n numbers, where n is the number of dimensions 04:59:46 so a vector with 2 numbers in it is often referred to just as 'vector', since 2d calculation is easier 04:59:49 or something 05:00:03 i mean, often used 05:00:06 i mean, i don't mean. 05:05:23 Figs: that's not the piece i thought you wanted me to play 05:05:29 but i'll see if i can do that one 05:05:32 ??? 05:05:44 The Way, right? 05:06:10 theway, yeah 05:06:22 i didn't know you meant that one 05:06:28 ah, I meant that one ;P 05:06:35 i like that one too 05:06:44 thanks :) 05:07:47 well, actually i like this one more than the others, most of this is pretty great 05:07:57 the middle part was cool 05:08:11 and the beginning, though guitar pro messed it up 05:08:25 by playing it "humanly" == not good 05:08:31 ah 05:08:37 the timing's not perfect 05:08:39 the ending is a bit bad 05:08:47 because I couldn't make it slow gradually 05:08:56 so it had to be more of an abrupt slow down 05:09:30 darn this is long, will take me some time to memorize 05:09:38 it's 2 minutes or so 05:09:45 the bass is exactly the same for most of it 05:09:49 for the left hand 05:10:24 ok 05:11:50 oh and i programmed toboge to retrieve a channel list 05:11:52 ?#esoteric 05:11:59 -!- toBogE has joined. 05:12:02 oops 05:12:03 ?#esoteric 05:12:03 #esoteric is a channel on irc.freenode.net. The topic is '+++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. esoteric programming language design and deployment' 05:12:17 I wrote this for a former girlfriend actually, if you want the history :) 05:12:32 I don't think she really cared ;P 05:12:47 heh 05:13:05 i wrote something for a girlfriend once, but she dumped me before i'd shown it to her :) 05:13:06 -!- toBogE has quit (Excess Flood). 05:13:11 :P 05:13:17 yeah... 05:13:22 it's a great song 05:13:31 mine? 05:13:39 or yours? 05:13:41 wait 05:13:44 or both? 05:13:45 :P 05:13:49 you haven't heard the punchline. 05:13:53 ok ok ;) 05:14:04 you know a piece is good when your 8-year-old cousin says that can't be yours, it sounds like a real piece 05:14:13 haha 05:14:19 I know what you mean :) 05:14:24 hehe 05:14:29 except it's my sister ;P 05:14:36 (for me) 05:14:46 that one i don't even have on the computer 05:14:49 asdf 05:14:53 i'll start training now 05:14:59 thanks :D 05:14:59 *practicing 05:15:04 lol :) 05:16:45 (btw, the piece is quite similar to nightwish's "crimson tide") 05:16:53 (which must be one of the reasons i like it) 05:17:01 yours? 05:17:01 (uh, nightwish <3) 05:17:07 or mine? 05:17:12 I don't know nightwish 05:17:13 err 05:17:14 yours :) 05:17:20 ahh 05:17:23 listen to it 05:17:35 do you have a link? 05:17:41 it's the same chord sequence, the actual melody is only similar in some parts 05:17:44 i can google... 05:17:49 I can too :P 05:17:57 I was just wondering if you had one handy 05:18:16 -!- GreaseMonkey has set topic: ☭ +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. ☭ esoteric programming language design and deployment ☭. 05:20:28 http://video.google.com/videoplay?docid=2571592842877083218&q=nigthwish+crimson+tide&total=2&start=0&num=10&so=0&type=search&plindex=0 05:20:33 though just a live video 05:20:35 and 05:20:35 err 05:20:48 you can only hear guitar 05:20:52 that's not cool :< 05:21:43 ah 05:21:50 it's not nightwish playing 05:21:54 no wonder it's not perfect 05:21:57 :P 05:22:29 http://www.youtube.com/watch?v=FSCSVmzOE64 05:22:31 is this it? 05:22:45 i've listened to most of nightwish's songs in double slow speed to be sure they make no mistakes 05:22:47 err 05:22:49 wait 05:23:20 yeah 05:23:23 ah 05:23:32 omg i gotta listen to nightwish today <3 05:23:47 I can see some similarities to the way I write 05:23:53 it is very different though 05:24:01 not bad ;) 05:24:28 being nightwishish is the best compliment you can get, it's perfectino 05:24:30 *perfection 05:24:38 lol, thanks :P 05:24:49 (i like nightwish, just so that you know.) 05:24:53 ;) 05:24:59 (in case you couldn't deduce that yet) 05:25:29 oklo: www.adom9.com/mp3s/mariye.mp3 05:25:55 sami vänskä is still the bassist there i see 05:26:07 oh 05:26:07 i was wondering why the bass wasn't shown :) 05:26:08 typo 05:26:25 http://www.adom9.com/mp3/mariye.mp3 05:26:26 oklo is actually what i'm called among my "irl" friends 05:26:33 sounds weird when you use it 05:26:37 oh, sorry :P 05:26:41 since no one does 05:26:51 no sorry 05:26:53 I just get tired keeping track of whether you're oklokok or oklopol 05:26:59 use it as much as you can 05:27:22 that's an example of the sort of music I like 05:27:28 I don't really care for lyrics in my music 05:27:33 but I like the intro to that song a lot 05:27:36 i'll wait till it plays 05:27:47 i don't care about lyrics usually 05:28:02 though nightwish has perfect lyrics and i remember all of them /methinks 05:28:24 also, i love the lyrics in death metal etc. 05:28:40 gorgasm ftw 05:29:03 i can't listen to that sonf 05:29:04 *song 05:29:06 i mean open it 05:29:12 linux issues? 05:29:28 i have no idea 05:29:32 :S 05:29:33 i'll try here 05:29:37 ok 05:29:46 kok = windows box? 05:29:49 it's just i only have head phone here 05:29:52 pol = linux? 05:29:56 yes... usually :) 05:30:02 you can't count on that 05:30:10 i might be fok occasionally as well 05:30:22 ok 05:30:37 and when i get my third comp, i might be all those ;) 05:30:45 well, most likely not on the same channel 05:30:52 lol 05:30:53 ok 05:40:35 damn, i need this printed... i can't memorize this just by reading fast enough 05:40:45 i remember most of the riffs though 05:41:01 I have a print copy somewhere 05:41:07 it's very simple music 05:41:10 for the most part 05:41:16 I'll look for it tomorrow 05:41:21 eh 05:41:21 and scan it if I can find it 05:41:26 that'll help :) 05:41:36 i could print this as well... 05:41:39 I don't have the program I wrote this in any more 05:41:42 i could print this as well... 05:41:43 well, the midi is bad 05:41:47 oh 05:41:51 how come? 05:42:03 i can have it in numbers just as well 05:42:07 it was written by the program using a sort of 'human' interpretation that just doesn't work well 05:42:11 i can't play straight from a score 05:42:25 i refused to learn it since i hated it from the beginning 05:42:26 :P 05:42:33 ? 05:42:37 i mean 05:42:49 i don't care in what format a score is printed 05:42:51 reading from score? 05:42:54 no, I mean 05:42:57 i have the score in a midi 05:43:00 *the 05:43:01 the score in the middle file is not very clean 05:43:10 err... why not? 05:43:14 it's the right notes. 05:43:24 it is, but the timing is not precise 05:43:32 it is precise 05:43:43 in the score 05:43:47 hold on a sec 05:44:35 oh 05:44:37 no it is good 05:44:40 this is the corrected version 05:44:44 I thought you had the old one 05:44:47 sorry :) 05:45:20 ah okay 05:45:32 -!- toBogE has joined. 05:45:43 i can correct obvious errors though 05:45:49 yeah :P 05:45:54 what I meant was like 05:46:12 you've opened some midis you know, and it's all like weird lengths like dotted 32nd notes and shit 05:46:22 to indicate stacattos and things 05:48:46 -!- toBogE has quit (Read error: 104 (Connection reset by peer)). 05:50:32 -!- immibis has quit (Read error: 104 (Connection reset by peer)). 05:51:21 damn, I wish I had better software! 05:51:26 anvil is annoying 05:51:35 print music was irritating 05:51:43 (this was written in Finale Print Music) 05:52:04 what I really want is a program I can type in the music 05:52:07 like anivl 05:52:09 *anvil 05:52:16 but see multiple staves like print music 05:52:39 with playback and with printing abilities 05:52:41 for free. 05:52:45 :D 05:52:49 that'd kick ass 05:53:06 Maybe I'll write it when I get better at doing gui programming 05:54:27 -!- immibis has joined. 05:57:15 Figs: Just learn LilyPond syntax, and get some really, *really* good typeset sheet music. 05:58:16 LilyPond doesn't do playback though, does it? 05:58:27 it could do a hell of a lot to help me make printable music 05:58:28 but 05:58:37 I wasn't aware of it playing back your music 05:59:09 It doesn't. That's called 'art'. 05:59:27 ? :P 05:59:32 Um, wha? 05:59:39 exactly. 05:59:42 * pikhq needs to turn on his brain 05:59:45 yes. 05:59:47 thanks. 05:59:48 :) 06:00:03 it's convenient to be able to hear what you've written without having to carry a piano with you 06:00:10 http://en.wikipedia.org/wiki/Rosegarden 06:00:39 I'm on windows 06:00:52 yes, who would carry a piano everywhere? 06:01:01 crazy people. 06:01:11 Then asking for free software is pointless. . . 06:01:23 no, not really :P 06:01:27 I use mostly free software 06:01:29 a lot of free software runs on windows 06:01:31 on windows. 06:01:37 and if I wrote this 06:01:40 it'd probably be free 06:01:51 since no one's done a good job of making software like this yet 06:01:52 if you wrote *what* you'd probably be free? 06:01:58 (at least on windows) 06:02:08 the notation/play-back program 06:02:24 Nobody does a good job of making software when they aim to do it on Windows. . . 06:02:28 :p 06:02:36 thanks >.> 06:02:40 nobody does a good job of making software when they aim to do Windows. . . 06:02:48 either 06:02:54 * Figs is a Windows developer. :P 06:03:17 Is that a challenge?! :P 06:03:19 rofl 06:03:37 Figs: What software do you develop with? 06:03:42 a windows developer as in you write programs on windows or a windows developer as in you write windows 06:03:48 probably older versions of windows 06:03:59 visual c++? 06:04:11 that is, M$ visual c++? 06:04:19 okay 06:04:20 Cygwin? "Pay through the nose" C++? 06:04:39 why would a microsoft employee use cygwin? 06:04:52 i can play the first 32 or so bars now... it just keeps changing the details, hard to remember it all :=) 06:05:09 He's not stated whether he develops on Windows, or develops Windows itself. 06:05:24 oh yeah 06:05:30 Figs: Care to fill us in? 06:05:39 I use Code::Blocks (which sucks, at least on windows) with gcc/mingw 06:05:43 so my last statement and three questions are only applicable if he develops windows itself 06:05:54 do you write on windows or do you write windows? 06:06:03 then again, writing on windows is graffiti 06:06:08 I write while I use windows 06:06:18 There's a good reason why Code::Blocks sucks. . . 06:06:30 yeah, it's more or less alphaware, isn't it? 06:06:34 IDEs are emasculating. 06:06:45 and it has a poorly designed interface 06:06:54 [17:02] * Figs is a Windows developer. 06:06:58 yes 06:07:04 my target platform is windows 06:07:09 that makes me a windows developer. 06:07:11 a developer of windows or a developer on windows 06:07:11 ok 06:07:19 Anything that doesn't require a space cadet keyboard has a bad interface. 06:07:21 :p 06:07:25 rofl 06:07:33 iPod? :P 06:07:44 computers? 06:07:46 linux? 06:07:46 I don't use iPod, so I don't know. 06:07:52 iBladder? 06:07:57 iRack? 06:08:05 http://uncyclopedia.org/wiki/IBladder 06:08:10 heh 06:08:10 iRequireASpaceCadetKeyboard? 06:08:14 lol 06:08:41 iRequireASpaceCadetKeyboardButIHaveABadInterfaceAnyway 06:08:54 A space cadet keyboard is a joking reference to the keyboards on early Lisp machines. . . 06:09:03 lispms FUCKING RULE 06:09:08 too bad they died :( 06:09:21 mmmm 06:09:31 Emacs's UI was influenced by it. 06:09:36 anyway 06:09:40 I'm going to go to work 06:09:43 Figs: *WHY?!?* do you torture yourself with using Win32? 06:09:50 I have no choice 06:09:57 Not true. 06:10:02 going to work at 17:09? 06:10:08 At 00:09? 06:10:10 22:09 06:10:16 oh right the timezone difference 06:10:19 :P 06:10:31 pikhq is GMT-5 06:10:33 you live in austrailia? 06:10:35 no 06:10:38 2309 06:10:42 Working that late? You deserve what's coming to ya. 06:10:42 figs: /whois immibis 06:10:48 check my hostname 06:11:20 ohh nz 06:11:23 ;) 06:11:33 bsmntbombdood is BE wherever that is 06:11:33 you have to admit it was a fair guess :P 06:11:39 The Win32 API is a crime against humanity. . . 06:11:40 australia isn't gmt+12 06:11:51 a crime against posix and portability more like it 06:11:56 I didn't say I used win32 directly 06:12:01 (though sometimes I do) 06:12:11 I'm just stuck with this computer on windows 06:12:13 You stated it when you said that you develop on Windows using mingw. 06:12:25 http://uncyclopedia.org/wiki/IBladder 06:12:26 Warnings 06:12:26 * iBladders should never, ever, ever be overfilled. Empty your bladder regularly. 06:12:26 * Please eat. 06:12:26 * Beware of cheap imitations. There is only one quality iBladder. 06:12:26 * Don't Steal Waste! 06:12:28 * Wearing this garment does enable you to fly 06:12:30 * iBladders work best with the new iShit 06:12:48 stated what? 06:12:53 It's not merely the *use* or *development* of Win32 that's a crime. . . The mere existence of Win32 is a crime. 06:12:59 Figs: That you use Win32. 06:13:04 Well, implied it, more like. 06:13:06 Win32 Api 06:13:30 API is in all-caps. 06:13:33 I know. 06:13:35 I'm lazy. 06:13:44 :) 06:13:51 if toboge wasn't busy scanning the network for channels to add to its database, i'd say !factoid Win32 API is !What the hell are you using the Win32 API for??!!! 06:13:56 but it is 06:14:05 rofl 06:14:12 I don't usually use win32 directly 06:14:21 though I do when I have to, or don't know another way to do something 06:14:33 I was actually considering using SDL 06:14:36 ok it flooded itself off with status messages 06:14:40 Here's a new way. 06:14:40 and designing my own interface 06:14:47 * pikhq inserts Knoppix 06:14:47 but that is not very appealing 06:14:50 no 06:14:54 I can't write to an NTFS that way 06:14:56 fdisk /dev/hda 06:15:01 and I can't format my drive 06:15:01 mke2fs /dev/hda1 06:15:10 and there isn't enough for another partition 06:15:17 Fine, fine. 06:15:20 parted /dev/hda 06:15:34 I *could* use a flash drive, but I'd be limited to 256 mb of data 06:15:46 and 06:15:49 I have no money. 06:15:52 So get over it 06:15:52 Or you could resize your partition. 06:15:54 I use windows. 06:16:13 not when it's full. 06:16:23 -!- toBogE has joined. 06:16:36 The Kubuntu installer resizes partitions nondestructively. . . 06:16:37 !factoid Win32 API is !What the hell are you using the Win32 API for??!!! 06:16:52 !factoid Win32 is the suckiest thing on the planet 06:17:03 Ubuntu doesn't boot on my computer 06:17:03 !factoid Win16 is even more suckier than Win32, were that possible. 06:17:06 I tried it :P 06:17:14 I. . . And you. . . 06:17:19 !factoid Win64 is the latest way for Microsoft to pretend Windows doesn't suck. 06:17:19 knoppix works though 06:17:24 I pity for your computer. 06:17:49 one of these days, I'll have money 06:17:52 and build a linux box 06:18:04 ?immibis' os 06:18:04 immibis' os->Windows XP->Windows->Win32 06:18:04 Win32 is the suckiest thing on the planet 06:18:07 http://www.paulgriffiths.net/program/c/winhellosrc.html I also feel sad for any language who's "Hello, world!" app is harder to understand than the Malbolge one. 06:18:22 :P 06:18:42 I don't think it's as hard as malbolge 06:18:46 maybe close 06:18:49 but not quite 06:18:58 it's not the simplest win32 hello world program 06:19:20 the simplest is: #include void main() {printf("Hello World!");} 06:19:29 immibis: That's the GUI one. 06:19:48 For comparison, the GUI "Hello, world!" app in my prefered language. . . 06:20:05 package require Tk;pack [label .l -text "Hello, world!"] 06:20:15 hmm that's a good idea 06:20:19 Cross-platform and everything. 06:20:30 use Tk for writing the interfaec 06:20:45 -!- immybo has joined. 06:20:59 might make it easier to port later ;P 06:21:00 *might* 06:21:18 anyway 06:21:21 I need to go to work 06:21:26 I haven't done any work today 06:21:31 and it's late 06:21:31 (L) 06:21:32 Easiest way to port is to just write it on Linux. . . 06:21:33 (L)(L) 06:21:36 (L)(L)(L)(L) 06:21:42 yes, but I don't use linux 06:21:42 (L)(L)(L)(L)(L)(L)(L)(L) 06:21:46 (L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L) 06:21:48 I don't really CARE if it works on linux 06:21:55 It'd be _nice_ 06:21:55 (L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L) 06:22:01 (L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L) 06:22:05 but I develop for windows first, because I use it. 06:22:06 (L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L) 06:22:08 shutup toboge 06:22:10 (L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L)(L 06:22:11 Writing for Linux is the easiest way to make it cross-platform. . . 06:22:13 wtf 06:22:20 the amount i love this channel is growing exponentially 06:22:30 Lol :P 06:22:31 (assuming either GTK+ or Qt 4 is used) 06:22:31 SHUT UP TOBOGE!!!!!!!!!!!!!!!1 06:22:33 bye 06:22:37 -!- immybo has quit ("On the other hand, you have different fingers."). 06:22:42 -!- immibis has quit ("We be chillin - IceChat style"). 06:23:01 -!- toBogE has quit (Read error: 104 (Connection reset by peer)). 06:23:40 I don't really care if it's cross platform or not :P 06:23:54 all I care about is whether I can use it or not 06:24:00 for my uses 06:24:10 I'm not getting paid to do this :P 06:24:23 Then you really, truly suck. 06:24:34 You're not getting paid, but you chose a horrible solution. 06:24:47 Who said anything about my solutions? 06:24:53 You lose the right to be called a "hacker". Come back when sane. 06:25:04 I said it'd be _nice_ if I can make it cross-platform 06:25:12 but if I have to go out of my way to do so 06:25:14 I won't. 06:25:18 Win32 is a horrid solution. 06:25:27 WHO THE FUCK USES WIN32?! 06:25:31 YOU DO. 06:25:33 (except for small bits) 06:25:36 I DON'T 06:25:49 come back when you're sane 06:25:53 * pikhq is back 06:25:57 I only use it when I have to :P 06:26:04 Then you're still using it. 06:26:06 for something os specific 06:26:22 or for something I can't find a good way to do any other way 06:26:34 I don't enjoy using it 06:26:57 but if it makes for a solution that WORKS, I use it. 06:27:01 If you don't enjoy what you're coding in, then you shouldn't be using it. . . 06:27:10 pikhq, I care about the result. 06:27:23 not how I get there so much when I'm writing tools for my own use 06:27:47 writing a tool for personal use is very different from writing a library meant for many people to use 06:27:48 I actually *ENJOY* coding. . . And so, I hate anything that gets in the way of that pleasure. 06:28:14 I enjoy it too, except when I am doing it to do something else and it gets in my way 06:28:43 if I need to get my homework done, and I don't have a graphing calculator, and I don't have internet access, but I need to graph something, I can write a graphing calculator 06:28:46 but I don't enjoy doing it 06:28:47 win32 works. 06:28:53 why not use it 06:29:00 since I'm doing it to get something else done as quickly as possible 06:29:11 portable? why? :| 06:29:18 if I am for example, writing my regex library 06:29:20 I enjoy coding that 06:29:32 if someone wants to use your code, they can convert it themselves 06:29:33 because the design of that is creative and fun to think about how to do 06:29:52 oklokok: Win32 works in the same sense that COBOL works. 06:30:02 the fact that it is useful too is a bonus 06:30:02 pikhq: what's wrong with cobol? 06:30:05 :) 06:30:21 oklokok: You have *also* lost the right to be called a "hacker". 06:30:28 haha 06:30:31 if coding in C# would get me through the tedius things that I _have_ to do to get on with my life... 06:30:36 I'd do it 06:30:44 but I probably wouldn't enjoy it 06:30:46 pikhq: maybe he just doesn't know what cobol is like 06:30:46 Figs already lost that, so. . . 06:30:51 bsmntbombdood: I guess not. 06:30:51 pikhq: what ever 06:31:10 I'm telling you there are multiple kinds of programming. 06:31:32 Hacking and doing library construction is great fun 06:31:44 i know cobol 06:31:50 reading a book about it 06:31:54 but if you're doing a project just to be able to do something else 06:31:57 would be fun to learn thoroughly 06:32:03 and it's keeping you from what you REALLY want to do 06:32:15 then FUCK the programming. 06:32:26 if you're doing something, who cares about portability? that's not programming 06:32:34 We need an asylum. 06:32:43 pikhq, you're in #esoteric 06:32:50 you should LIKE the complexity of win32 06:32:52 :P 06:33:00 (that was humor, of course) 06:33:04 :p 06:33:58 Figs: the hard part is fun to play 06:34:05 ? 06:34:12 the song of yours 06:34:15 ahh :) 06:34:16 cool 06:34:19 in the middle? 06:34:31 except the hardest part which i can't really play yet 06:34:40 err i guess it's about in the middle 06:34:58 pikhq, let me put it this way... if you wanted to play super mario, you wouldn't want to have to build the damned gameboy first 06:35:33 you'd use the premade gameboy someone else has already built, or get parts cusom to that particular type of cartridge because it lets you accomplish what you want to do 06:35:52 No, if I were writing Super Mario, I'd write it in a decent environment, rather than an environment more worthy of an 8086 than a modern computer. 06:36:10 but I'm saying playing, not writing 06:36:15 Ah. 06:36:23 In that case, I'm not programming a damned thing, am I? 06:36:31 argh you and your unbelievable unyielding opinions about redundant stuff :D 06:36:35 *unbelievably 06:36:39 So, it has little to do with programming. 06:36:50 (i'm not sure if an opinion can yield though) 06:37:06 you wouldn't want to have to BUILD your TV to sit back and watch your favorite show each night, would you? 06:37:33 especially if it takes you 12 hours to build your tv 06:37:42 to watch a 30 minute show once or twice 06:37:54 No, I'd get a *DECENT TV*. 06:38:03 EXACTLY! 06:38:14 but, supposing you can't find a decent TV 06:38:25 but you have your neighbor's half-finished TV 06:38:32 In your analogy, what you're doing would be like getting a TV constructed from bubble gum, duct tape, and a block of uranium. . . 06:38:33 wouldn't you use that and finish the task faster? 06:38:50 well, if it works :P 06:38:58 That's not working. 06:39:19 pikhq: win32 works 06:39:23 then you shouldn't have chewed on the bubble gum so much. Glutton. 06:39:26 pretty well too 06:39:30 oklokok: That's not working. 06:39:34 huh? 06:39:37 win32? 06:39:42 Yeah. 06:39:45 oh 06:39:45 pikhq, have you ever written a full program in win32? 06:40:10 No, the idea of a 100 line Hello, world! app scares the shit out of me. 06:40:33 pikhq: the fact linux is better than windows doesn't mean there's any need to use linux if you already have windows 06:40:35 then you have no right to say that it doesn't get the job done, albeit unintuitively. 06:40:53 oklokok: GTK+ is a Windows library, as well. Qt 4 is a Windows library. 06:41:12 Both are actually fairly good (although Qt 4 seems better designed). 06:41:14 Sure, it is duct-tape, uranium and bubble gum. But if all you need is to mark an X on your wall, the duct tape will work just as well as paint. 06:41:34 pikhq: why dl them when you have win32? 06:41:37 which works 06:42:07 they have weird licensing things associated with them though, I think 06:42:12 Qt4 especially 06:42:16 IIRC 06:42:17 Figs: GPL or LGPL. 06:42:32 The same license that governs about 60% of all free (as in freedom) software. 06:42:42 I think Qt4 was dual licensed GPL and commercial 06:42:47 Yeah. 06:42:54 The stuff you'll get is GPL. 06:42:58 pikhq: i understand you don't want to encourage people to do something you think is better to do another way, but why start insulting people about it? 06:43:02 i don't really see the point 06:43:16 it's the coding that matters, not which api you build on 06:43:28 The API you build on effects the coding you do. 06:43:35 Especially when the API you build on is shit. 06:43:47 slightly, yes, but this is code you'll never see, why care? 06:44:32 i'd say a hacker is someone who does what he can with what's given rather than someone who takes the tools with which it's easiest to do 06:44:56 anyway, piano, stop being ideological :) 06:45:00 -> 06:45:01 rofl 06:45:16 Sorry. . . Why not ask water to stop being wet? 06:45:22 oklo, that's good, except I'm talking about a quick hack. 06:45:33 <- 06:45:34 huh? 06:45:46 A piece of chewing gum to stop the hole. 06:45:47 hmm, i lost context, wait 06:45:58 a band-aid 06:46:11 I don't use it except for small things these days 06:46:17 like the beep command 06:46:17 I prefer artful solutions. . . 06:46:19 Figs: i'm not referring to you, i'm just tired of people putting down windows, as much as i hate it myself :) 06:46:24 -!- jix has joined. 06:46:32 Windows does suck, it is true. 06:46:47 but it generally lets you get on with your life 06:47:00 if not always perfectly. 06:47:07 well, the only programs i *use* and *don't hate* are compilers 06:47:16 everything else starts pissing me off after a while 06:47:19 i hate most compilers.... 06:47:20 :P 06:47:34 compilers do what i ask, always 06:47:37 so i like them <3 06:47:48 pikhq: you can be as artful as you like. I just want to finish the project, not spend the next 5 years writing it 06:47:50 -!- bsmntbombdood_ has joined. 06:47:57 you see what I mean? 06:48:06 -!- bsmntbombdood has quit (Read error: 104 (Connection reset by peer)). 06:48:07 I can always go back and rewrite tomorrow 06:48:15 and, if I've done good work 06:48:22 oklokok: compilers don't always do what i want them to do.... 06:48:25 I won't have to do much to take out the specific parts 06:48:36 oklokok: ever compiled a crosscompiler? 06:48:37 jix: i haven't had bad experience 06:48:43 except with vc6++ .D 06:48:43 :D 06:48:46 :D 06:48:50 jix: i don't even know what that is 06:49:00 *thuderbolts and lightning VC6!!!* 06:49:00 so... i guess not. 06:49:06 oklokok: a compiler that runs on one platform but produces code for another platform... 06:49:25 anyway 06:49:28 to work with me, :D 06:49:30 cya all later 06:49:32 and if the platform where the compiler should run on isn't linux but the target platform is linux but for some not so common architecture you're kind of lost... 06:49:34 -!- bsmntbombdood_ has changed nick to bsmntbombdood. 06:49:38 oklo... g'luck playing it :) 06:49:43 I'll check back before I go to bed 06:49:46 if I can 06:49:51 cya all 06:49:58 Figs: hopefully get it by the next time you visit 06:49:58 bye 06:50:04 cool :D 06:50:07 -!- Figs has left (?). 06:50:13 you have to do things like compiling glibc without having glibc which somehow is something that isn't really supported... 06:50:33 jix: i haven't done that much programming that depends on the platform 06:50:48 oklokok: the programming doesn't depend on the platform... 06:50:58 i just need a compiler to compile my portable program for the target architecture.. 06:51:08 err indeed 06:51:13 well 06:51:32 i haven't made that many programs i've distributed 06:51:40 neither me.... 06:51:44 i usually have someone make them portable for me and compile for linux :) 06:51:59 i use mac os x... and have some portable linux devices... 06:52:07 and i want to compile code for the portable linux devices... 06:52:20 i see how that might suck 06:52:43 i was more referring to interpreters actually, compilers, actually, have let me down quite a lot 06:52:45 it isn't even easy when your main platform is linux but there it is at least possible to get something that works.... 06:53:12 so i'm using a virtualized linux now for that things :) 06:53:17 jix: use java and everything will be 100% portable :P 06:53:20 or ssh into a linux compile server.... 06:53:24 oklokok: go away with java! 06:53:27 hehe 06:53:37 java won't run fast on arm cpus.... 06:53:40 * oklokok is a sick little java boy 06:53:50 harry potter marries snape 06:53:55 nooooo 06:53:56 :< 06:53:59 spoiler... 06:54:00 HOT HARRY POTTER LOVIN 06:54:23 is there a new book coming... i recall hearing something like that :) 06:54:36 lament: Don't make the adult fan-fic writers too happy. 06:54:43 i stopped reading/being interested in harry potter when i was in grade 4 or something... 06:56:14 and there is another great thing about gcc... it doesn't really support the fpu of the arm device i'm going to get soon 06:56:46 so i might have to code the inner loops of my image routines in assembler.... 06:56:55 Or use integer arithmetic. 06:57:09 pikhq: well the FPU is faster than the integer unit... 06:57:14 (assembler would be cleaner) 06:57:25 because it can work in parallel to everything else.... 06:57:47 so while the integer unit is busy calculating memory offsets or whatever the fpu can do the number crunching... 06:58:19 and the fpu contains an integer alu which is faster for 32*32+32=>64bit than the main alu... 06:58:53 but there are some bugs inside the fpu that make some instruction combinations impossible... and afaik gcc has or at least had some problems with that... 06:59:42 and the calling convention depends on which fpu is used or whether software cpu is used... so i can't mix a kernel compiled for softfloat with a binary that has c code compiled with that fpu support... 07:00:02 that limitation is gone with assembler because i don't have to follow any calling conventions there... 07:00:18 jix stix lix nix 07:00:24 huh? 07:01:46 but some people are working on fixing this... 07:08:14 -!- GreaseMonkey has quit ("gtg right now, cya"). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:20:05 -!- andreou has joined. 08:26:50 -!- computerdude2 has joined. 08:26:53 -!- computerdude2 has changed nick to immibis. 08:27:21 now why would xchat set my name to computerdude2 when thats not even my nick/ 08:27:23 now why would xchat set my name to computerdude2 when thats not even my nick? 08:27:33 Because it's magic. 08:30:27 !cat EgoBot is working now 08:30:33 or not 08:30:40 -!- Figs has joined. 08:30:44 hello! 08:30:48 hi figs 08:30:59 * Figs prods oklopol / oklokok 08:31:04 hi immibis :) 08:31:22 why did your name appear in yellow just now/ 08:31:24 why did your name appear in yellow just now? 08:31:31 ??? 08:31:34 * Figs like this? 08:31:40 do 08:31:42 oops 08:31:46 hi immibis :) 08:31:51 the Figs part was yellow 08:31:52 uh, no idea 08:31:58 because he said immibis 08:32:00 maybe because I said your name? 08:32:06 immibis! 08:32:09 yes thats it 08:32:10 is it yellow? 08:32:11 ok 08:32:14 it was 08:32:18 andreou too 08:32:31 immibis makes me yellow! :P? 08:32:33 i get a mustard-like pseudo-yellow 08:32:37 rofl 08:32:41 I get nothing 08:32:48 andreou: you talk? 08:32:49 Figs: sure you do 08:33:01 oklopol: hm? 08:33:05 uh, no, no color 08:33:06 (i may have seen you talk before, but not often at least) 08:33:32 hi oklopol 08:33:34 Figs: immibis makes you yellow on my client 08:33:37 oklopol: it'll have been years since i last said anything meaningful 08:33:41 andreou: you're one of the people whose nicks i've seen tons of times here but don't remember seen talk 08:33:43 which i don't use much so i didn't notice it before 08:33:50 hi Figs 08:33:54 started making an irc bot :D 08:33:56 did you get a chance to play? :P 08:34:06 i know about half of the song 08:34:14 and i can play the beginning third or so 08:34:29 cool ^_^ 08:34:54 but i'm not playing anymore today, i'll play a bit tomorrow again 08:35:32 immibis: i don't care if toboge is not there, i don't part channels unless i have to 08:35:43 ok 08:36:01 I'm heading off, so I was just checking in 08:36:25 oklopol: problem solved 08:36:28 what's this bot craze? 08:36:36 writing bots is sort of fun 08:36:54 i'm going to try to write a simple bot in bash now 08:37:05 yes, satisfies the luciferian aspects of men's psychologies 08:37:27 the what 08:37:33 playing god 08:37:56 ok 08:38:27 -!- EgoBot has quit (Read error: 104 (Connection reset by peer)). 08:38:27 DO YOU ENJOY PLAYING GOD?! Yes... Why yes I do, actually. -- EGS 08:38:32 -!- EgoBot has joined. 08:38:37 !ps 08:38:39 1 immibis: ps 08:38:42 ps? 08:38:42 it works!!!! 08:38:47 !ps 08:38:49 same as the unix command 08:38:51 1 Figs: ps 08:38:57 process? 08:39:06 !ps 08:39:06 !ps 08:39:09 1 Figs: ps 08:39:11 1 Figs: ps 08:39:13 :S 08:39:13 2 Figs: ps 08:39:14 ok 08:39:16 O_o 08:39:18 wtf 08:39:22 lol 08:39:24 !bf +[,.[-]+] 08:39:26 !ps 08:39:29 1 immibis: bf 08:39:31 2 immibis: ps 08:39:36 processes like that one 08:39:37 !kill1 08:39:38 !kill 11 08:39:40 !kill 1 08:39:41 Process 1 killed. 08:40:34 !daemon cat bf8 +[,.[-]+] 08:41:16 !cat hi 08:41:40 !who 08:41:44 this bot crashes easily 08:41:49 :( 08:41:56 !pwd 08:42:04 no, bot commands only, figs 08:42:09 unix commands don't work 08:42:09 oh 08:42:13 I thought it was a unix bot 08:42:16 :P 08:42:19 since it did ps 08:42:26 ps is just a name 08:42:33 * Figs can't think of too many unix commands so that's all I came up with 08:42:44 !chans 08:42:47 !help 08:43:05 it seems to have crashed 08:43:12 :( 08:43:15 :'( 08:43:20 * Figs cries and runs around 08:43:33 wtf 08:43:37 when I put my foot on the floor 08:43:45 i think i confused it (again): !daemon daemon daemon daemon undaemon daemon 08:43:46 I hear more static in my headphones 08:44:59 -!- Sukoshi has joined. 08:45:41 -!- immibis_ has joined. 08:46:05 Hey cool i'm using irc from a bash shell using BASH and CATcommands 08:46:20 ;D 08:46:21 No IRC client involved! 08:46:31 I've done that with telnet before 08:46:35 it's hard to read 08:46:38 But with bash? 08:46:40 i'm going to BASH your head in and fellate your CAT 08:46:41 nope :) 08:46:46 O_o 08:46:47 I know its hard to read 08:46:54 you're going to suck his cat off? 08:46:57 perv. 08:47:02 fellate? 08:47:07 -!- immibis_ has changed nick to toBogE. 08:47:19 I assume the action verb or a corruption of it from the word fellatio 08:47:29 I can't figure out what else he meant 08:47:47 bsmnt, care to enlighten us? 08:48:05 how about you use a dictionary 08:48:20 -!- toBogE has changed nick to immibis_. 08:48:32 and 08:48:35 exactly what I expected 08:48:36 :P 08:48:49 ohh 08:48:50 cool 08:48:50 http://arstechnica.com/news.ars/post/20070717-fcc-asks-for-comments-on-network-neutrality-gets-27000-of-them.html 08:48:56 -!- immibis_ has quit (Client Quit). 08:51:14 lol 08:51:22 I'm gonna head off for the night 08:51:25 cya tomorrow guys 08:51:27 -!- Figs has left (?). 08:51:28 andreou's back!?! 08:52:28 !ps 08:52:34 still not working 08:56:09 more mustard-green 08:57:47 What's wrong with the Tunes Wiki? 08:57:54 Why does it have random pages about cell phone ringtones? 08:58:15 because it's a *tunes* wiki? 08:58:31 ... :P 09:00:27 i have a feeling when i walk across my room, in the dark, i will run into the vaccum cleaner there and hurt myself 09:02:02 bsmntbombdood: is there a vacuum cleaner? 09:02:18 of course 09:02:51 wait, were you trying to say something subtle about my spelling? 09:07:49 not really, just noticed it myself 09:08:25 well then don't walk where you think you'll hurt yourself 09:09:11 no, go ahead and hurt yourself, it'll make you stronger 09:09:36 or just break my toe 09:10:08 toes (as they have proved to me lately) are peculiarly resilient to sudden blows 09:11:22 hm should i append to the topic "have irix? memo andreou!" ? 09:15:17 My Indy (which has irix 6.5.something installed on it) is in the basement. :/ 09:16:22 wtf is irix? 09:16:58 SGI's Unixy operating system. 09:17:16 ok... 09:17:17 As seen in the Jurassic Park movie. "It's the Unix system!" 09:18:53 see? i thought fiz would have something to do with it 09:18:58 ``vi`vi 09:19:01 fizzie: do you have the CDs by any chance? 09:19:22 what is ``vi`vi 09:19:25 immibis: :P 09:19:26 v 09:19:26 Sorry, no. I just got the box, without the installation media. 09:19:38 immibis: some code 09:19:40 ah classic 09:19:53 immibis: that's v 09:20:06 what's v? 09:20:13 the bottom. 09:20:13 i said ``vi`vi 09:20:26 it's the end, you know 09:20:35 you should learn unlambda 09:20:37 ``vi`vi 09:20:44 it's a pretty sexy language 09:21:42 ah running late 09:21:43 cheers 09:21:44 -!- andreou has quit ("Leaving."). 09:22:27 what, is v call/cc? 09:23:09 err, c is 09:23:12 ``ci`ci 09:23:16 -!- bashbot has joined. 09:23:28 !raw nick writteninbash 09:23:35 !raw nick writteninbash 09:23:40 hmm 09:23:42 -!- bashbot has quit (Remote closed the connection). 09:25:41 -!- bashbot has joined. 09:25:54 !raw nick writteninbash 09:26:00 -!- bashbot has quit (Remote closed the connection). 09:36:34 -!- writteninbash has joined. 09:36:52 i made a bot in bash just like i said 09:37:00 !raw quit 09:37:01 !raw quit 09:37:07 what 09:37:09 !raw quit 09:37:09 !raw quit 09:38:42 !raw privmsg #esoteric :i am written in bash 09:38:42 i am written in bash 09:38:53 oh well at least i can't make it quit 09:39:44 -!- writteninbash has quit (Remote closed the connection). 09:42:10 well ok i can 10:02:35 !ps 10:02:38 -!- bashbot has joined. 10:02:41 no egobot i see 10:02:49 !bf +. 10:03:34 !bf +. 10:04:35 -!- oklopol has changed nick to oklofok. 10:04:39 oklopol: Does Wolfram spend a lot of time talking about the applications of CA on ODE? 10:04:42 -!- oklofok has changed nick to oklopol. 10:05:10 oklopol/fok/kok: make up your mind which nick you want 10:05:31 immibis: Stop bringing in bots and spamming. 10:05:38 oops sorry 10:05:45 !raw JOIN #bashbot 10:05:48 !raw PART #esoteric 10:05:52 immibis: i won't 10:05:59 Sukoshi: i'm not sure what that means :| 10:06:00 -!- bashbot has quit (Read error: 104 (Connection reset by peer)). 10:06:16 oklokok: CA == Cellular automata, ODE == Ord. Diff. Eqs. 10:06:28 ah 10:06:32 then i guessed right 10:06:35 well 10:06:39 Being able to model an antenna via CA would be super awesome until I can get the maths neccessary to solve Maxwell's equations on my own. 10:06:46 he sayd non discrete stuff sucks ass 10:06:56 and that differential equations only get you so far 10:06:57 *says 10:07:03 Yeah, exactly. 10:07:07 so... not really 10:07:09 But do CA model the concept better? 10:07:12 *does 10:07:30 there was no direct comparison 10:07:38 but he does model a lot of things using ca 10:07:38 Does he expound on it later? 10:07:47 expound? :) 10:07:52 Or does he relegate ODE to only one section? 10:08:01 Expound == expand (generally in context of books). 10:08:06 -!- immibis has quit (Read error: 104 (Connection reset by peer)). 10:08:16 okay, never seen 10:08:28 hmm 10:08:56 i'm not sure... i'm pretty sure there's just one part in the book that's about ode 10:09:02 :( 10:09:11 well actually i don't even remember that for sure 10:09:11 Well, he does, in name, refer to Maxwell's EMW equations. 10:09:20 I sooo want to be able to do the maths, but bleh. 10:09:31 I wish I had more hours in the day :\ 10:09:57 Sukoshi: there's not that much math in the book. 10:10:01 hmm 10:10:15 i haven't read the end of the book, but i'm pretty sure most of the real data is there 10:10:41 No, I'm following a seperate book on ODE now. 10:10:43 because looking at the glossary, most concepts are on pages 1000-1100 :) 10:10:46 i see 10:11:03 But I can only devote so much time, with other homework in the way and all. 10:11:40 I'm thinking of retrying Uberman. I dunno if it's worth it or not, hmm. 10:11:58 i've never studied at all in my life... wonder how much more you know than me 10:12:07 :P 10:12:16 You don't like studying on your own? 10:12:29 if you do 4 hours a night now, that's almost as good as uberman 10:12:37 i do like it, but i rarely do it 10:12:41 But that's still not enough time! 10:12:50 heh 10:12:52 drop school 10:12:56 I can't. 10:13:00 why's that? 10:13:03 Nor can I go totally hikikomori on my parents. 10:13:05 i mean, stop doing homework 10:13:09 Because I want to go to a good college. 10:13:35 I'm not one of the ``hippie'' types who's content reading while living like a sage or such. 10:13:43 i have an automatic place in one of the best colleges here and i've never made homework at all :) 10:13:56 How? :P 10:14:04 Is it in the top 10? 10:14:36 I love to be better than other people at things. 10:14:39 :P 10:14:41 err... i guess finnish people are dumb 10:14:50 or then no one here studies. 10:15:21 I'm shooting for top 10, but I doubt I can make it. Top 30 is my wide goal, and top 50 is my saftey net. 10:15:25 me too, i get pretty competetive 10:15:35 What's this "one of the best colleges", then? 10:15:49 Berkeley or Urbana Champaign. 10:15:52 fizzie: not saying, hoped no finnish guy'd see :P 10:16:03 Oh :P 10:16:10 which city do you live in, fizzie? 10:16:19 Well, more anime time for me. 10:16:20 In Espoo nowadays. 10:16:30 (Sounds like poop.) 10:16:39 (Joke.) 10:16:39 Well, for the last 4 years, but those went by so fast. 10:16:46 "es poop". 10:16:58 okay, i'm talking about turku university and i actually have no idea how good it is :PP 10:17:10 just that people say it's good 10:17:59 I haven't seen anything that would be the de facto top-N list. 10:18:00 i'm pretty sure i could easily get to any university in finland if i took computer science 10:18:05 me neither 10:18:37 because you need like M in math to get to most 10:18:41 and L is a piece of cake 10:19:23 (you can ask me how piece of cake it was next spring :P) 10:20:14 At least the University of Helsinki CS department would've been pretty trivial to get in: an E out of three subjects (math+something+something) means a guaranteed place with no entrance exams or nothing. Or at least that's the way it was back in 2002. 10:20:15 -!- okolobot has joined. 10:20:28 oh 10:20:34 i already have L in english 10:20:49 is that 2 E's by any chance? 10:20:52 :D 10:20:59 Nnnnno, I don't think so. 10:21:17 well, physics and math i'd say are pretty easy L's 10:21:24 though can't say for sure of course 10:21:38 we'll see 10:22:19 >>> bf ++++++++[>++++++++<-]>+..+.-. 10:22:28 oh 10:22:35 darn, it doesn't work that way 10:23:27 Oh, and HUT CS department admission criteria has been really, really in the last few years. In 2002 it was still the third-most-difficult department here; now I think it's below-average. 10:23:32 >>> raw part #esoteric 10:23:33 -!- okolobot has left (?). 10:23:50 you in the university? 10:23:55 At HUT, yes. 10:24:17 want to tell me what that's short for? :) 10:24:28 Helsinki University of Technology. TKK, you know. 10:24:39 ah okay 10:24:51 They've changed the "official" domain name from hut.fi to tkk.fi, but ~no-one uses the new name. :p 10:24:59 heh 10:25:10 what year you in? 10:25:13 hmm 10:25:20 i guess i could calculate that... 10:25:28 2002, which is why I've been talking about that year. :p 10:25:49 (Although I didn't actually start until 2003; there was a civil service thing to do.) 10:25:50 so it's your 4th year? 10:25:58 ah 10:26:19 * oklopol is thinking about going to jail... it's the shortest :) 10:29:20 Yes, and civil service is for the lazy and no-moral-backbone people among us. Especially the one-month training period in Lapinjärvi, which was more like a summer camping thing. (Although the barbequed-beer-baked-potatoes-in-aluminium-foil thing was relatively awful. I wonder whose bright idea _that_ was.) 10:29:59 i can't say i have a backbone 10:30:19 but i'm not willing to do the work they want me to do in civil service 10:30:25 what'd you do? 10:31:39 in the civil service 10:32:01 There would've been a nice "network administration and general messing around, maybe some scripting" non-job in LUT (Lappeenranta Univ. of Tech.), but someone had managed to beat me to it (and they didn't want to have two people there), so I just did some desktop publishing stuff for vhkk.fi. 10:32:17 oh 10:32:19 I think there's my name in a book or two. :p 10:32:38 desktop publishing stuff? 10:33:10 i thought they're all jobs where you feed the elderly and such... 10:33:26 "Here's a manuscript in Word - use Pagemaker to turn it into a book, then Photoshop a silly cover for it" type of stuff. 10:33:43 oh 10:33:49 that sounds like something i could do 10:33:57 http://www2.sivarikeskus.fi/paikat/ has a browseable-searchable list of the possible jobs. 10:34:02 oh cool 10:34:13 that *would* be better than jail 10:36:17 everything i found in turku is unbelievable crap :) 10:38:50 food -> 10:42:08 -!- ehird` has joined. 10:43:01 I'm thinking of going for an EECS myself, but what I really want to do is RF engineering. 10:43:13 IMO, computer logic is fun, but nowhere near as fun as EMW are. 10:47:44 One thing that really irks me is people into research. 10:48:59 I've always viewed being an academic as a privilege, and not a right, and that you should spend some time making the world a better place with your ideas. Research is the very antithesis of that, it's a completely selfish practice that contributes next to nothing. 10:50:43 "Research is the very antithesis of that, it's a completely selfish practice that contributes next to nothing." <- that's the dumbest thing i've heard all week 10:50:49 heck, month. 10:51:05 It's only useful for a self-gasm. 10:51:19 Well hmm. Maybe not research. Reading, I guess. 10:51:30 I'll go back in time and make sure nobody reads or researches 10:51:41 Hope you enjoy your new life as a primitive being 10:51:57 Huh? 10:52:04 Publish != Read. 10:52:10 Share != Read. 10:52:14 Well hmm. Maybe not research. Reading, I guess. 10:52:34 Reading and taking knowledge to the grave with you does nothing to no-one. 10:53:38 If nobody reads, then nobody can take research further 10:53:54 I never said that reading itself was bad, but that the sole act of reading. 10:54:19 If you only read and don't contribute, which is what I mean by a ``research type'', then it's pointless. 10:54:46 I would think "research type" people publish and share a lot more than most other people. 10:55:23 I mean, getting publications out seems to be more important than doing actual research in many research-y places. :p 10:56:27 Dunno, one annoying guy from #physics followed me, and he fancies himself as a ``knowledge-collector'', and he spends all his time reading, and talking in annoying discussions, but not contributing any of that back. 10:56:45 He wants to handle ``large data sets''. 10:56:52 Basically, he wants a self-gasm. 11:00:17 I don't think I've ever met anyone who could be concievably called a "researcher" who'd want to do research and not publish the results. 11:01:11 Er, well, actually people doing research in a corporate R&D environments, of course. But I'm not sure that counts. 11:02:02 Of course my opinion is very biased, since my official title here is "undergraduate researcher". Not that I'd doing anything so lofty that I'd really call "research". :p 11:02:31 Hah :D 11:02:54 I've gotten an idea for a language that's not esoteric. 11:03:01 Yes! Gasp you fools, gasp! 11:03:32 Gasp. 11:04:06 Fly, you fools! 11:05:49 :P 11:43:33 -!- Sukoshi has quit ("Leaving"). 13:52:10 -!- blahbot` has joined. 13:52:10 hello world 13:52:36 glad that works 13:52:44 %eval part("#esoteric") 13:52:45 -!- blahbot` has left (?). 14:02:41 -!- oerjan has joined. 14:10:35 @bot 14:10:46 (and there we go again) 14:12:15 @bot? 14:12:46 ?? 14:13:41 * ehird` is confused 14:14:01 lambdabot "are you there" command 14:14:41 lambdabot@#haskell 14:16:29 ah 14:17:30 -!- blahbot` has joined. 14:17:30 did somebody say 'bot'? 14:17:30 oh... LAMBDAbot. i guess because i'm not named after functions i'm not good enough. 14:17:31 -!- blahbot` has left (?). 14:19:12 poor blahbot`. 14:19:26 -!- blahbot` has joined. 14:19:26 thank you ehird`. 14:19:26 -!- blahbot` has left (?). 14:19:33 * ehird` stops, now 14:20:26 bots are the irc equivalent of ventriloquist's puppets 14:20:35 *s' 14:21:20 hah 14:23:21 -!- blahbot` has joined. 14:23:32 blahbot`, am I testing? 14:23:43 blahbot`, am I testing? 14:23:46 grr 14:23:59 -!- blahbot` has quit. 14:24:14 i tried to make it respond to blahbot`, x with sender, x? is that what you think? 14:24:24 about as good as ELIZA :P 14:27:54 -!- helios24 has quit (Read error: 110 (Connection timed out)). 14:36:29 -!- liber has joined. 14:37:58 Hello there. I'm working on a small bf interpreter (without very much bf knowleage). I have a small question: Can a "cell" contain negative values? 14:38:39 depends 14:39:20 On the interpreter? 14:39:44 The original interp. used unsigned values, range 0-255 14:39:47 other interp.s differ 14:40:07 Does it have any practical use? 14:40:07 however, if values wrap, you cannot tell the difference 14:40:40 "wrap"? 14:40:48 255+ -> 0 14:40:50 0- -> 255 14:40:53 that's wrapping 14:41:12 okay 14:41:33 ehird; Our channel had (years ago, I think this was pre-2000) a bot that noticed each comment matching /\?$/, and blurted out a random line from the channel logs containing same/similar words than the question had (if found). Up to this day I unconsciously add a trailing space whenever my comment ends in ? to suppress that behaviour. In all channels. 14:43:05 well. It looks like it doesn't really matter to much. Thx for the answers... 14:43:10 -!- liber has left (?). 14:43:31 fizzie, that sounds fun 14:43:48 Amarok in #amarok does something similar, except it's Amarok, prefix and not ? postfix... so slightly less annoying heh 14:48:06 Amarok: hello world 14:48:06 ehird`: Oh, sorry i could just use mpeg-2, and make sure i understand, that was to use mp3fixer as a secret the world to me. A while ago, in which i can even play vorbis on the first world thanks. 14:52:54 -!- blahbot` has joined. 14:55:48 -!- blahbot` has quit (Remote closed the connection). 14:57:37 * ehird` remembers the nonsense bot he made... it sat in tons upon tons of popular channels, and everytime a line was said it remembered the nick and all the words in the message 14:57:49 then in a channel it spewed out random combinations of the words with punctuation 14:57:53 it produced some real post-modern gems 15:03:43 -!- blahbot` has joined. 15:07:26 %eval self.nick = "test"; self.nick = "blahbot`" 15:07:26 => "blahbot`" 15:07:34 hrrrm 15:07:36 %eval self.nick = "test" 15:07:36 => "test" 15:07:39 oh dear. 15:07:54 oh, already in use 15:08:09 %eval self.nick = "basdlknsadasd"; self.nick = "blahbot`" 15:08:09 -!- blahbot` has changed nick to basdlknsadasd. 15:08:09 -!- basdlknsadasd has changed nick to blahbot`. 15:08:09 => "blahbot`" 15:08:19 thank you nickserv. 15:11:42 %quit 15:11:42 -!- blahbot` has quit. 15:18:22 2 15:33:36 -!- oerjan has quit ("leaving"). 15:42:30 -!- blahbot` has joined. 15:42:37 testing new %join,%part,%send commands. 15:42:39 -!- blahbot` has left (?). 15:57:48 ehird`: you need one that does proper dissocaited-press 15:58:01 SimonRC, need one what 16:02:19 http://www.catb.org/~esr/jargon/html/D/Dissociated-Press.html 16:04:49 that's not very good compared to mine 16:05:04 mine produced things like " is idiot! super" 16:14:28 :p 16:15:15 -!- blahbot` has joined. 16:15:21 -!- blahbot` has left (?). 16:15:30 %raw works, evidently 16:19:14 -!- sebbu has joined. 16:22:21 -!- jix has quit (Nick collision from services.). 16:22:35 -!- jix has joined. 16:34:26 -!- liber has joined. 16:34:44 Ah! 16:36:05 What behaviour would you expext from a BF interpreter: would it warp? would it go to the last cell if you do a < at the "first" cell? would it allow negative values? 16:42:11 *wrap 16:42:29 okay 16:42:38 the original interp had 30000 cells, wrapped at 0-255, wrapped from last-first and first-last, wouldn't allow neg. values 16:42:41 but - better is: 16:43:00 infinite tape on the right, < at 0 is an error, infinite unsigned (0-no limit) cell values 16:43:02 IMO 16:44:06 well. now its like this: it begins with 1 cell and creates new when you need them, and < @0 jumps to last 16:44:46 Ill change 16:50:39 yeah, jumping to the "last" when it automatically grows is bad 16:50:43 imagine it's an infinite tape 16:50:52 also, start with 30000 cells... it's simpler and will make most programs a lot faster 16:51:01 (and preferably increase the size of the tape * 2 or something) 17:42:47 -!- liber has quit (Remote closed the connection). 17:48:21 what does egobot's @bf do on , 17:59:14 http://pastie.caboo.se/79910 can anyone see what's wrong with this ruby brainfuck interpreter? i can't 17:59:37 well, what's wrong with it? 18:00:19 for one thing it doesn't actually, well, do anything 18:00:24 #esoteric-blah, %bf command, nothing happens 18:00:42 oh wait 18:00:44 my [ call is wrong 18:00:45 i need ch 18:00:51 and o 18:00:52 consider debugging locally rather than on IRC 18:01:06 yeah, i probably should 18:01:47 oh -- stupid me... 18:02:36 ohh 18:02:38 string#each, duh 18:04:24 oh, i'm stupid 18:25:30 -!- sebbu2 has joined. 18:32:17 i ended up using this :) http://pastie.caboo.se/79926 18:32:37 it seems to work - but i don't know if more complex cases will stumble it up 18:45:13 -!- sebbu has quit (Read error: 110 (Connection timed out)). 18:46:29 try the topic 18:46:54 -!- jix has quit (Remote closed the connection). 18:47:06 %bf +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. 18:47:06 The international hub for 18:47:07 ;) 18:47:20 it does crash on unmatched braces though... 18:51:29 -!- sebbu2 has changed nick to sebbu. 18:58:41 -!- ihope has joined. 18:58:55 Oh my. 18:59:34 what 18:59:45 Why is the a Unicode HAMMER AND SICKLE in the topic? 19:00:04 ~bf +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. 19:00:05 i don't know 19:00:09 !bf +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. 19:00:14 -!- blahbot` has joined. 19:00:16 use %bf ;) 19:00:21 %bf +++++++++++++++[>++++++>+++++++>+++++++>++<<<<-]>------.>>-.---.>++.<<.+++++.++++++.>.<--.----.<+++++++++++++.>++++++.>++++.++++++.-.<<.>>--.>.<----.<+.<+.>>>.<--.<------.+++. 19:00:21 The international hub for 19:00:26 Nice. 19:01:31 i should really rewrite %bf 19:01:39 it dies on unmatched braces: 19:01:41 %bf ] 19:01:42 %bf [ 19:01:43 -!- blahbot` has quit (Remote closed the connection). 19:01:58 please consider that we already have like five brainfuck-interpreting bots. 19:02:27 lament, that isn't blahbot`'s main purpose 19:02:31 i just added it as an extra 19:02:31 Reminds me of this: http://www.beaverandsteve.com/index.php?comic=271 19:02:47 -!- blahbot` has joined. 19:02:49 these are blahbot`'s main purposes: 19:02:49 %cmds 19:02:50 quit, eval, ps, kill, cmds, help, reload, join, part, send, topic, raw, bf (use %help for argument information) 19:02:52 lament: you know, you seem to be sort of not sending me the kilbot source code :-P 19:03:07 mostly %eval though, to evaluate ruby code with stdout/stderr redirection to irc and irc-related helpers :p 19:03:44 %eval 2 19:03:45 => 2 19:03:48 Cool! 19:04:33 ihope: do you actually want it? 19:04:41 lament: yes. 19:05:10 %eval loop { puts "hello!"; sleep 3 } 19:05:10 hello! 19:05:13 hello! 19:05:14 %ps 19:05:14 0. eval loop { puts "hello!"; sleep 3 } 19:05:14 1. ps 19:05:16 %kill 0 19:05:40 -!- Figs has joined. 19:05:45 I got it. 19:06:12 You got it? 19:06:24 blahbot`'s favourite pasttimes are running cellular automata in IRC channel topics and fold-reversing text 19:06:32 now we're all fully acquainted i'm going to rewrite %bf 19:06:46 ihope: dcc 19:06:53 -!- jix has joined. 19:07:00 Yes, I got it. 19:07:07 It makes sense now. 19:07:13 oh yes it also likes reducing lambda expressions (it especially likes (\x.xx)(\x.xx)) but it's still learning how to do that. 19:07:29 Hmm... 19:07:35 I can represent a my tree of left and right parser sequences as binary trees 19:07:47 Figs, well duh 19:07:52 -!- oerjan has joined. 19:07:53 Ooh, nice, they both failed. 19:08:03 ehird`, I didn't know that :P 19:08:20 I had to figure that one out on my own. ;) 19:08:29 Not bad. 19:08:45 Not the greatest, since that's fairly well-known about binary trees, but not bad. 19:09:43 I realized it at 4 am last night 19:09:57 lament: try again? 19:10:10 ihope: i don't see why it should work 19:10:18 Email, then? 19:10:23 gah 19:10:24 I sat there wondering why the fuck left vs right expansion mattered, and saw that everything I'd written could be rewritten as binary trees. 19:10:40 I was just like O_O 19:10:46 ihope: http://z3.ca/~lament/killbot.py 19:10:51 ihope: http://z3.ca/~lament/irclib.py 19:11:18 it would have been nice to have realized this say, six months ago. :P 19:11:23 Or that. :-) 19:11:49 Figs: that's why people learn these things in a systematic fashion 19:11:51 Figs: why? 19:12:15 lament, if I had a good book or could take a class, I would. 19:12:26 Books, classes? 19:12:32 #math, Wikipedia, Google? 19:12:33 Figs: good books are available online. 19:12:46 (not always in book form) 19:12:49 that still doesn't make any of it systematic for me 19:12:54 (okay that totally made no sense) 19:13:07 I've been googling and proding the subject since january 19:13:16 and my knowledge is pretty spotty in areas, obviously :) 19:13:25 You know, I'd really like to take an actual class involving artificial intelligence or something... 19:14:03 I don't start college until September... so if I want to figure this stuff out before then, I have to self-teach. 19:14:19 Or bug people on irc who assume I know things I don't. :) 19:14:19 -!- sebbu2 has joined. 19:14:53 Figs: look for course materials online. 19:15:19 i'm guessing wikipedia would be a good place to start looking. 19:15:48 Well, as it turns out, I _do_ have a book on parsing 19:15:52 however 19:15:57 it didn't explain any of this 19:16:24 -!- blahbot` has quit (Remote closed the connection). 19:16:26 I think any classes would have to run from July 27 to September 4, though. 19:16:38 That's the next gap between things that's longer than two days. 19:16:49 Shorter than two days, I could take a class this weekend... 19:17:01 the place that would have made it obvious is looking at the wikipedia article on foldr 19:17:16 Figs: maybe it's a crappy book. 19:17:31 (September 3, actually.) 19:17:33 I never said it was a good book :P 19:18:02 *_good_ book 19:18:05 Figs: so maybe you could find a better one online. 19:18:16 Maybe I could now 19:18:21 but I couldn't before 19:18:34 If you don't know something is bad, it's hard to know you should replace it :) 19:19:37 well, now I get to try writing a parser that can handle >> and << 19:19:43 should be fun 19:21:09 the meaning of 3 >> term('+') << 4 makes some sense now. 19:21:43 precedence parsing is easily done in shift/reduce fashion 19:22:09 oerjan, that's the kind of statement I find very cryptic :) 19:22:36 ahh 19:22:39 Figs: isolate the specific terms you don't know and google them. 19:22:45 you mean like building from the bottom up? 19:23:03 you push its symbol to a stack 19:23:05 lament, DUH! 19:23:16 *each 19:24:33 -!- sebbu has quit (Success). 19:24:33 -!- sebbu2 has changed nick to sebbu. 19:25:08 if the next operator has lower precedence than the topmost one on the stack, you combine the things on top of the stack until it no longer is 19:25:14 (reducing) 19:25:18 it doesn't make it any clearer what he means even if I know all the specific terms if I don't know WHY. :) 19:25:30 otherwise, you shift the next operator onto the stack 19:25:33 oh 19:25:38 I did that once before 19:25:43 only more convoluted 19:25:48 if they have _equal_ precedence, you look at associativity 19:26:37 basically I looked at all the numbers in a mathematical expression as having two operators on either side 19:26:49 (added null operators on the end) 19:26:52 so you had like 19:27:04 N3+4*5+6N 19:27:34 you moved --> as far as possible until the term on the left was of higher precedence that the one on the right 19:27:45 then you collapsed the expression to the left 19:27:52 ie, 4*5 in this case 19:27:56 --> 20 19:28:11 then you look at what you have 19:28:18 N3+20+6N 19:28:26 moves over right again one to 6, + > N 19:28:35 N3+26N 19:28:36 etc 19:28:47 until there are two Ns on each side, then you stop 19:29:22 except usually + is taken to be left associative 19:29:33 so it would be N32+6N 19:29:41 er, N32+6N 19:29:47 argh! 19:29:54 N23+6N 19:29:56 N23+6N yes 19:30:13 yeah 19:30:17 (this makes it easier to handle it with -) 19:30:36 I learned about that *after* :P 19:30:54 so this was just the crappy way I'd figured out to make it work. 19:31:14 and it seems to work well enough for what I needed it for before. 19:31:33 but I'm not doing anything particularly complicated with it 19:31:54 and it's irritating to have to do the second stage after validating the input and building the chain 19:32:58 if you want user-defined precedence level as in Prolog or Haskell, then a second stage is almost inevitable 19:33:14 except Prolog may drop most of the _first_ stage, i think 19:33:29 er wait 19:33:53 in Prolog the precedences must be defined before you use them, i guess 19:33:58 I'm not entirely certain about that 19:33:59 yeah 19:34:06 if you do it that way, then yes :) 19:34:21 in Haskell the order of declarations is nearly completely free. 19:35:10 because of the weird way I've been designing my parser system, I can do things like 19:35:35 P = (s[0] = foo) >> reverse(S[0]) 19:36:38 that doesn't look very unusual 19:36:46 no, not at that point 19:37:01 but reverse() can be replaced with anything 19:37:31 any function transforms itself into a parser 19:37:46 *that 19:38:01 i don't get it 19:38:31 ? 19:38:49 i don't understand what you're talking about. 19:38:55 ok... 19:39:05 if you wanted to attach a function say, to store known variables 19:39:31 to attach a function? 19:39:37 to store known variables? 19:39:44 ok, like if you're parsing something like: 19:39:49 int x,y,z; 19:40:01 x = 6+8; 19:40:11 x should already be known 19:40:24 I could do: 19:41:45 Declr = "int " >> *(name >> ",") >> name >> ";" 19:41:52 and each time name gets called 19:41:56 it would store x 19:41:56 y 19:41:57 z 19:42:06 as known variables 19:42:08 of type int 19:42:18 so it could check in the next statement 19:42:27 Assign = KnownVar >> ... 19:42:59 that's not for a parser. 19:43:08 y = 6+8 without int y; is not a syntax error 19:43:19 generally. 19:43:25 but I'm saying you _could_ do that 19:43:32 with the way I've written it so far 19:44:52 -!- zbrown has quit ("leaving"). 19:45:10 the only thing that has to happen is that an object inheritted from my base-class is returned into the statement. 19:45:38 so "name" has to produce an object derived from by base. 19:46:01 ihope: did you download the killbot files? 19:46:18 * ehird` wonders why ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. is hanging indefinitely 19:47:15 ehird`: try inserting some debug statements (#) 19:47:24 oerjan, %bf doesn't implement # 19:47:34 -!- zbrown has joined. 19:47:38 !help 19:47:59 why then make it... 19:48:14 * Figs wanders off for a while in a daze 19:48:16 it's just an irc bot command... 19:48:17 does that run properly in other bfs? 19:48:29 yes, it's part of http://www.hevanet.com/cristofd/brainfuck/tests.b 19:48:45 %bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 19:48:46 %ps 19:48:49 err 19:48:52 -!- blahbot` has joined. 19:48:55 %bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 19:48:56 %ps 19:48:56 0. bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 19:48:56 1. ps 19:49:01 just hangs. 19:49:03 %kill 0 19:52:03 lament: yep. 19:52:17 is your bf 0-255 with wrapping? 19:52:22 oerjan, yes 19:52:33 right-unlimited tape, and < on tape pos. 0 is a no-op 19:53:14 it also parses [] into nested arrays before any evaluation which is odd as far as BF interps go 19:53:43 but means that running programs with many nested loops only goes slowly at the start, instead of all the way through 19:54:54 if you don't want to add #, try sprinkling with .'s 19:56:41 actually if it is line buffered that may not help 19:57:01 %bf ++++[>++++++<-]>[>+++++>+++++++<<-]>.>. 19:57:02 x¨ 19:57:39 it is not line buffered, but program-buffered 19:57:43 it only outputs at the end of the program 19:58:29 well, it is right that far 19:59:11 %bf +++%. 19:59:47 %bf +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++#. 19:59:47 ; 19:59:53 Fish. 20:00:15 %bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]. 20:00:20 %ps 20:00:20 0. bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]. 20:00:20 1. ps 20:00:30 %ps 20:00:30 0. bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]. 20:00:30 1. ps 20:00:32 note that, if you output a newline, it won't display everything after that 20:00:37 since, uh, i haven't made privmsg work with newlines yet 20:00:41 i'll do that now 20:01:04 %kill 0 20:01:05 %reload 20:01:05 Reloaded. 20:01:06 actually, don't do that until you implement throttling properly 20:01:11 %eval send("#esoteric", "abc\ndef") 20:01:12 abc 20:01:12 def 20:01:12 => "abc\ndef" 20:01:20 oerjan, i'll implement throttling some other time.. 20:01:23 well, it's clearly that big loop that hangs 20:01:27 for now, dont run any programs outputting 234723987329473298479283479328479324729384723 lines :) 20:01:29 %ps 20:01:29 0. ps 20:01:37 (that's because i killed it) 20:02:10 is it supposed to run for a long time? 20:02:28 otherwise i would say it hanged before you killed it 20:02:50 yeah it hanged 20:02:53 but uh i don't think so 20:02:58 it just reports from cell 30000 20:03:07 * ihope tweaks kilbot to his liking 20:03:17 (I changed "themselves" to "themself" :-P)\ 20:03:59 you grammatical vandal you! 20:06:00 first person to squeeze 99bob in BF into a size that will fit in an irc message when prefixed with "%bf " wins a million billion dollars because i think that's impossible 20:06:51 Trivial. 20:07:04 * ihope loads up his super-duper-IRC-message-handler ircd 20:07:33 heh 20:07:45 Handles messages up to 1 megabyte. 20:08:26 http://zelaron.com/forum/archive/index.php/t-2111.html how can you not understand what [ and ] do? 20:08:33 "[: Start bracket (very odd) 20:08:33 ]: End bracket (very odd) 20:08:33 Now the [ ] characters are quite odd to say the least....using them you can multiply registers..I have no idea how it works, but I used it in my code to increase the number in the current register using less characters... " 20:09:17 hmm 20:09:22 i should add an implicit \n after the input shouldn't it 20:09:24 *i 20:13:22 ehird`: bad explanation? 20:13:29 ihope, indeed 20:13:55 * ehird` hates programs not cooperating with EOF=no change 20:14:58 Hmm... +++++[>+++++<-]>[>++>++++<<-]>-->-<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>] doesn't work 20:51:49 -!- Sgeo has joined. 21:03:11 -!- UnrelatedToQaz has joined. 21:03:54 -!- UnrelatedToQaz has quit (Client Quit). 21:36:25 Ho hum. I wonder what the latest in computing things are... 21:38:53 cotypes! 21:38:57 anyone know a short BF program useful for testing an interpreter? 21:39:04 i just heard it on #haskell 21:39:19 Well, here's a few programming features: object-orientedness, definition of new infix operators, Haskell-style typeclasses, dependent typing, monads, markable reversibility, support for quantum stuff, markable recursion, variables, lambdas, type signatures, first-class functions... 21:39:41 Give me one of those features and I'll give you a language that has it and a language that doesn't. 21:39:50 ihope, :) 21:40:05 You tell me a language that has all those. :-) 21:40:07 "I'll be giving a talk on my experiences with Haskell as a person with Asperger's Syndrome." sounds like somebody is pimping their asperger's (probably self-diagnosed) for the hell of it... 21:40:25 I... hmm. 21:40:47 hey, don't you dare dis philippa! 21:40:53 :p 21:40:58 i didn't 21:41:01 and i wasn't 21:41:59 it's just the truth 21:42:16 haskell and asperger's have, at best, a very thin link, and even then it's a link shared with many languages. 21:42:38 ehird`: >[>,]<[.<] 21:42:51 %bf >[>,]<[.<]|hello world 21:42:53 %ps 21:42:53 0. ps 21:43:01 well that terminated unexpectedly... 21:43:08 pikhq, i assume that's not correct behaviour 21:43:14 ehird`: Let me just pimp mine (not self-diagnosed) 21:43:27 That should output "dlrow olleh" 21:43:37 oh damn 21:43:39 it's ! 21:43:40 not | 21:43:40 heh 21:43:44 %bf >[>,]<[.<]!hello world 21:43:47 .... odd 21:43:48 %ps 21:43:48 0. ps 21:43:58 :/ 21:43:58 %bf ,[.,]!hello world 21:44:07 now that SHOULD work!i tested that! 21:44:09 it should work! 21:44:13 %bf +++++++. 21:44:16 %bf ,.!h 21:44:16 well, that works.. 21:44:16 h 21:44:22 weird 21:44:24 You can't loop. 21:44:24 hello world works 21:44:27 yes i can 21:44:51 %bf ++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>. 21:44:51 Hello World! 21:45:06 Odd. 21:45:07 anyway; EOF behaviour is no-change 21:45:13 maybe that affects your input-using code 21:45:18 %ps 21:45:18 0. bf ,[.,]!hello world 21:45:18 1. ps 21:45:19 yep 21:45:20 %kill 0 21:45:23 %bf ,[.[-],]!hello world 21:45:23 hello world 21:45:32 EOF=nochange? 21:45:35 yes. 21:45:35 -!- jix has quit ("CommandQ"). 21:45:39 maybe i should change it to EOF=0 21:45:44 most code seems to assume it :/ 21:45:44 Yeah. 21:45:51 (stupid code, i like nochange) 21:45:59 (I don't) 21:46:15 %reload 21:46:15 Reloaded. 21:46:20 %bf ,[.,]!hello world 21:46:20 hello world 21:46:22 tada 21:46:28 %bf >[>,]<[.<]!hello world 21:46:31 %ps 21:46:31 0. ps 21:46:33 odd. 21:46:47 oh 21:46:48 >[ 21:46:54 > on a new tape is always 0 21:46:57 loop is never executed 21:46:58 etc. 21:47:29 %bf >,[>,]<[.>!hello world 21:47:29 Unmatched [. 21:47:36 %bf >,[>,]<[.<]!hello world 21:47:36 dlrow olleh 21:48:19 what about rot13, is there a rot13 program that fits in an irc message. 21:48:34 %bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 21:48:41 you need !input 21:48:42 %ps 21:48:42 0. bf ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 21:48:42 1. ps 21:48:43 %kill 0 21:48:51 oh wait 21:48:55 is that that test-30000 one 21:49:00 because if so it loops forever and i don't know why 21:49:01 Yeah. 21:49:35 maybe there's an easy-to-spot error in the code. http://pastie.caboo.se/80015 (yes i do parse beforehand, it's quicker with many nested loops :P) 21:51:32 hmm 21:51:42 does that code rely on 255-up wrapping? 21:51:48 my impl doesn't wrap.. 21:51:54 oh, wait 21:51:55 it does. 21:51:58 i thought you said it did 21:52:00 well does it rely on a wrapping tape 21:52:07 No. 21:52:07 oerjan, it wraps cell values, not tape positions 21:52:15 i don't think wrapping tape is that common 21:52:18 pikhq, well what does it rely on 21:52:21 It relys on a tape of 30000 cells. 21:52:32 Not an infinite tape? 21:52:35 Whoa, variables! 21:52:36 If so that'd be the problem ;) 21:52:40 ihope, Yeah. :P 21:52:48 Like... whoa! 21:52:57 I like to call those kind of nested-parsers "insane descent parsers" 21:53:02 Actually, it tries to go to the 30,000th cell, and then output "#". 21:53:05 i would imagine it depended only on at _least_ 30000 cells 21:53:10 Yeah. 21:53:11 pikhq, Then why doesn't it work :P 21:53:11 %ps 21:53:12 0. ps 21:53:46 I'm thinking Haskell tends to be less woven and more... not. 21:54:10 %bf +[>+] 21:54:19 lament, nice infinite loop 21:54:21 %ps 21:54:21 0. bf +[>+] 21:54:21 1. ps 21:54:24 Haskell's Legos aren't also connected by threads. 21:54:57 %ps 21:54:57 0. bf +[>+] 21:54:57 1. ps 21:55:00 still going? nice 21:55:09 lament, it'll go forever. :P 21:55:14 ehird`: oh? 21:55:19 lament, well why wouldn't it? 21:55:26 ehird`: because you'll run out of memory 21:55:31 true 21:55:32 Maybe it doesn't use memory! 21:55:37 but that'll take a while 21:55:52 i'm surprised it hasn't already happened. Your implementation must be particularly slow. 21:56:00 ruby is slow 21:56:12 Yes, somebody make an implementation that, when given a program like that, doesn't use memory. 21:56:16 ehird`: yes, but at the same time it probably requires more memory for each cell 21:56:22 it's using 100% cpu though 21:56:42 cannot see anything wrong with the bf() function 21:56:45 it's growing by the 15th of a megabyte per update... 21:56:50 %ps 21:56:50 0. bf +[>+] 21:56:50 1. ps 21:56:51 %kill 0 21:56:55 that's better 21:57:18 %bf +[+] 21:57:26 %ps 21:57:27 0. ps 21:57:38 bit-sized cells? 21:57:50 0-255 21:57:58 Well, actually I manually overflow them for compatability. 21:58:24 They could be normal Fixnums, then they'd grow into Bignums, which is just crazy 21:58:44 integers are crazy now? :) 21:58:50 %bf ++++++++++.[>++++++++++.] 21:59:04 lament, for BF compatibility yeah 21:59:18 pikhq, It only outputs on program termination 21:59:51 ehird`: A) that's stupid. B) Then we'll see how long it takes to end. 22:00:01 (or, rather, how bad the Pythonic interpreter sucks) 22:00:05 it's not pythonic 22:00:06 it's ruby 22:00:20 it isn't meant to be very good, anyway 22:00:22 it's for oneliners 22:00:23 Well, we already know that sucks. 22:00:33 what sucks - ruby? 22:00:37 Yup. 22:00:43 no it doesn't. 22:00:56 anyway, program termination is the easiest way to implement the interp. 22:00:57 %ps 22:00:57 0. bf ++++++++++.[>++++++++++.] 22:00:57 1. ps 22:01:09 ++++++++++.[>++++++++++.] is a one-liner. 22:01:38 Is there something *wrong* with making . be puts $mem($pointer)? 22:01:49 * lament personally prefers unbounded cells for brainfuck. That gives it more of a CS-theoretic flavour 22:02:03 pikhq, Yes - that would make one irc message for each . 22:02:16 lament, and makes lots of BF code break 22:02:42 ehird`: that's its problem - the size of cells is never specified. 22:02:50 lament: Then you're a fan of P''. 22:03:09 ehird`: people are free to write code and make stupid assumptions, but then their code will break. 22:03:37 ehird`: sadly, this happens all the time with things other than brainfuck. 22:03:52 %bf is meant to execute some short code you wrote to quickly test, etc 22:05:07 pikhq: P'' doesn't have unbounded cell size. 22:05:55 i cannot see anything wrong with parse_bf either, but then i don't know ruby 22:06:03 parse_bf is fine 22:06:10 if parse_bf wasn't fine the execution wouldn't even start 22:06:27 it might leave out parts, or something 22:06:31 Oh. 22:07:08 Maybe a fan of BFoo? 22:07:38 i assume all variables are local to a function unless specified otherwise? 22:07:39 (a variant of the Fm series of languages, adding "-", with unbounded cells and a right-bounded infinite array. 22:07:42 ) 22:07:49 I like brainfuck. 22:08:18 Fm is Brainfuck in formal-computerese. :p 22:08:55 %reload 22:08:55 Reloaded. 22:08:58 %parse [++] 22:08:58 -!- blahbot` has quit (Remote closed the connection). 22:09:01 erhm 22:09:30 -!- blahbot` has joined. 22:09:32 %parse [++] 22:09:33 91434393 22:09:35 ... 22:09:58 what? 22:10:02 yeah exactly what. 22:10:24 %reload 22:10:25 Reloaded. 22:10:26 %parse [++] 22:10:26 [91, 43, 43, 93] 22:10:35 that's..not right 22:10:37 OH, duh 22:10:50 %reload 22:10:50 -!- blahbot` has quit (Remote closed the connection). 22:10:55 GRUMBLE 22:11:12 * ehird` restarts bot. again 22:11:53 -!- blahbot` has joined. 22:12:12 %parse [++] 22:12:12 [["+", "+"]] 22:12:25 %reload 22:12:25 Reloaded. 22:12:26 %parse [++] 22:12:26 ++ 22:12:28 grumble 22:13:02 that [["+", "+"]] looks correct 22:13:05 yes 22:13:37 you need an unparse function 22:13:44 just written one 22:13:46 %reload 22:13:46 Reloaded. 22:13:48 %parse [++] 22:13:55 ... blargleworth. 22:14:11 %reload 22:14:12 Reloaded. 22:14:13 ... blargleworth. 22:14:15 %parse [++] 22:14:15 [++] 22:14:23 %parse [++]<<+++>>>><><><,.[[[[[[2]]]]],+] 22:14:23 [++]<<+++>>>><><><,.[[[[[[2]]]]],+] 22:14:28 %parse [++]<<+++>>>><><><,.[[[[[[2]]]]],aaa+] 22:14:28 [++]<<+++>>>><><><,.[[[[[[2]]]]],+] 22:14:30 there we go. 22:14:35 so, i think my parser is fine 22:14:49 %parse ++++++++++.[>++++++++++. 22:14:49 Unmatched [. 22:14:49 Unmatched [. 22:14:50 %parse ++++++++++.[>++++++++++.] 22:14:50 ++++++++++.[>++++++++++.] 22:15:01 %parse ++++++++++.[>++++++++++. 22:15:02 Unmatched [. 22:15:02 Unmatched [. 22:15:04 hmm 22:15:04 2? 22:15:36 %reload 22:15:36 Reloaded. 22:15:38 %parse ++++++++++.[>++++++++++. 22:15:38 Unmatched [. 22:15:40 there 22:15:54 %parse ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 22:15:54 ++++[>++++++<-]>[>+++++>+++++++<<-]>>++++<[[>[[>>+<<-]<]>>>-]>-[>+>+<<-]>]+++++[>+++++++<<++>-]>.<<. 22:15:59 nope, that's fine. 22:17:42 odd, then 22:17:45 oh wait 22:17:45 maybe i should add a trace function 22:17:48 oerjan, ? 22:18:34 will that thing performing the loops actually _copy_ any large structures each iteration? 22:18:47 no 22:18:52 it passes a reference to the object 22:18:58 or rather, a poiner to the object 22:19:21 the tape, output, loop contents, input are all refs. 22:19:35 the index isn't, but that isn't really much of a problem 22:21:27 :P 22:21:31 how long is the tape to start with? 22:21:35 -!- Figs has left (?). 22:22:41 infinite... ruby's arrays are infinite size... 22:22:47 but i only initialize one cell 22:22:52 aka tape = [0] 22:23:05 every time you do > and tape[new index] is nil (i.e. element doesn't exist), it's 0'd 22:23:12 hm... 22:23:15 ruby doesn't resize the array every > though. 22:23:25 %bf >>>+++++++++++++++++++++++++++++++++++++++++++++++++++. 22:23:25 3 22:24:10 wtf# 22:24:13 oh, right 22:24:22 i thought "thats more than 3 +s" silly me 22:25:13 %bf ++++++++++++++++++++++++++++++++++++++++++++++++. 22:25:13 0 22:25:17 oh wait 22:25:17 %bf +++++++++++++++++++++++++++++++++++++++++++++++. 22:25:17 / 22:25:31 I hereby declare / "the new -1". 22:25:36 :D 22:25:41 ||= is that _bitwise_ or _boolean_ or? :) 22:25:48 %bf ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++. 22:25:49 : 22:25:50 oerjan, neither 22:25:53 that's: 22:25:58 Likewise: the new 10. 22:26:08 x ||= y is "x = y unless x" 22:26:20 ah 22:26:33 aka, "if the cell we're going into doesn't exist, make it 0" 22:26:35 fiendishly clever 22:26:46 it's actually built in ruby behaviour 22:26:48 ||= is syntax 22:26:52 it is quite useful 22:26:54 But it's outside the scope of the language! 22:27:03 ihope, ruby's scope? 22:27:12 Unless it doesn't allow you to declare it. Allowing a person to declare it is within the scope of a language. 22:27:13 ruby's scope is a general purpose mashup of lisp, perl and a bit of python 22:27:14 ehird`: yup. 22:27:27 i don't understand 22:27:48 A language doesn't need to do define that. 22:27:54 s/ do / / 22:27:57 ruby has many shortcuts 22:28:06 yet it's more elegant and thought-out than perl 22:28:07 That doesn't mean they need to be built in. 22:28:15 in this case it does 22:28:46 I'm a fan of languages without much syntax, personally. 22:28:56 pikhq, so am i, but ruby works for practical things 22:29:42 if {!$x} {set x $y} 22:29:54 i think x ||= y is clearer... 22:30:07 Or [set x [expr {!$x?$y:$x}]] 22:30:13 What we really need is a language where most syntax constructs can be defined easily. 22:31:48 Scala 22:32:00 ihope, Sure. 22:32:17 I have in my head a "perfect language" that i should implement some day 22:32:25 Me too. 22:32:39 it's a nice blend of smalltalk, ruby, lisp, a dash of python, and Something Completely Different 22:32:47 ihope: oklotalk allows for that :) 22:32:50 If you can come up with a good way of defining typeclasses, you should be able to use it! 22:33:01 i thought Something Completely Different was python. 22:33:05 heh 22:33:09 Monty Python, to be precise 22:33:14 oklokok: please implement it as soon as possible. :-) 22:33:25 oerjan: Python *is* Monty. 22:33:36 my perfect language, in the actual source form, looks quite like ruby 22:33:49 But with - DUN DUN DUN - first-class functions 22:34:02 Heh... a 153-page tutorial for a language with a 149-page spec. 22:34:05 ruby doesn't have first class functions? 22:34:07 My perfect language, in actual source form, has a clean syntax. 22:34:18 (clean as in "Definable in 11 lines or less. Fully.") 22:34:24 oerjan, Well - you can do obj.method(:name) 22:34:31 i thought it had _continuations_, how can it not have first class functions? 22:34:32 oerjan, But you can't do that() you need that.call() 22:34:38 oerjan, Because continuations use .call 22:34:52 oerjan, You can't just do pass_around(a_func) since functions automatically call 22:34:54 a_func == a_func() 22:35:01 a_func :x, :y == a_func(:x, :y) 22:35:27 The ideal solution, of course, is for a_func to be the function, a_func any, number, of, args to call 22:35:41 oerjan: ruby is fucked up 22:35:58 oerjan: they have functions, and they have blocks, and those have different semantics 22:36:29 it has first-class objects representing functions, but normally you access them only through special syntax 22:36:36 Oog, simple. 22:36:50 Tcl has 11 rules which fully define it's semantics and syntax. :D 22:36:55 Syntax can be defined using--dun dun dun--dependent BNF! 22:37:10 pikhq: forth has 1 or so 22:37:15 pikhq: where? 22:37:45 http://swoolley.org/man.cgi/n/Tcl The Endekalogue. 22:41:15 ihope: i realized oklotalk's syntax, being quite complex, was a bit outta my reach, so i'm rehearsing my parsing skills atm :) 22:41:38 it has first-class objects representing functions, but normally you access them only through special syntax <-- special syntax? which? 22:41:41 Hmm. 22:42:14 ehird`: foo.call()? 22:42:14 also, method(x) objects behave equally to continuation objects behave equally to block objects. 22:47:35 Question: why the hell should there be a difference? 22:48:14 -!- Tritonio has joined. 22:48:40 pikhq, Because "x" on its own calls x 22:49:13 Ugh. 22:50:04 ruby is not particularly pretty or nice, no 22:50:06 but it's practical 22:50:09 and nicer than pelr 22:50:10 *perl 22:51:01 i'd use ruby if python didn't exist. 22:51:10 it's not all bad. 22:51:36 Just not as nice as I'd like. 22:51:36 python has some annoying flaws but it is a very pretty language 22:51:37 but certain design choices are questionable. 22:51:40 it is well-designed 22:51:56 in particular the whole sigil system and special syntax for passing functions 22:52:06 -!- Sgeo has quit (Connection timed out). 22:55:45 what are sigils? 22:56:20 $var @var, $ and @ are sigils 22:56:22 like perl variable prefixes 22:57:30 -!- Tritonio has quit (Remote closed the connection). 23:01:10 -!- Tritonio has joined. 23:02:22 and @@ 23:03:14 Python does indeed have annoying flaws. 23:03:20 ...what are they? 23:05:17 lack of proper lambdas, lack of proper closures 23:06:02 Proper lambdas... would that be the scope thing? 23:06:32 (And I think I've forgotten what concept "closure" refers to.) 23:07:25 lament, lambda x: x 23:07:29 looks like a real lambda to me 23:07:33 of course, it can't handle statements 23:07:41 i hate the expr/statement distinction 23:08:49 We all have differing opinions! 23:09:11 ihope: proper lambdas - those that can handle statements. Arguably they're just too hard to implement sanely due to significant indentation. 23:09:24 Wait, do you mean how "print" is a statement, not an expression? 23:09:32 Yeah, more things should be expressions. 23:09:42 well, no 23:09:58 the statement/expression distinction is pretty sane at the moment 23:10:08 * ihope shrugs 23:10:16 ihope: no, ours are exactly the same! 23:10:20 the problem is when you want to put a statement in a lambda, and can't 23:10:33 I'm all for making things that bring things into scope expressions, too, except that's... difficult. 23:10:33 (because how would it look like?) 23:10:53 def do_print(x): print x 23:10:54 Or some such. 23:11:04 that's a function. 23:11:09 python already has functions. :) 23:11:16 it's not an anonymous function. 23:11:29 Yes, but you can use do_print in a lambda. 23:11:41 nobody cares about print 23:11:41 ...right? 23:11:48 Well, there are things other than print. 23:11:53 the issues are with if/for/while 23:12:05 Hmm... 23:12:12 Does Python have a value conditional? 23:12:27 (Is there an actual term for those?) 23:12:29 a what? 23:12:45 if even(x) then x/2 else 3*x+1 23:12:53 no, python doesn't have that. 23:12:54 yes it does ihope 23:12:57 and lament. 23:13:03 X if Y else Z 23:13:08 Oh, right. 23:13:34 I've seen something like "even(x) and x/2 or 3*x+1" in some language, I think. 23:13:40 ehird`: what language is that? 23:13:51 ihope: yes, python has that. 23:14:05 ihope: you can always use short-circuiting for conditionals in languages that have short-circuiting. 23:14:09 such as C and Python 23:14:26 But "even(x) and x/2 or 3*x+1" doesn't make any obvious sense... 23:14:36 no, it doesn't. it's ugly. 23:14:56 Does "foo and bar" mean "bar if foo else False"? 23:15:07 yes. 23:15:12 Weird. 23:15:25 that's not weird. that's the usual semantics of 'and'. 23:15:32 Oh. 23:15:44 But bar doesn't have to be a boolean here... 23:16:07 ...anyway, does "foo or bar", then, mean "foo if foo else bar"? 23:16:18 ihope: python doesn't use 'real' booleans much. 23:16:25 ihope: that is, any type can be used as a boolean. 23:16:33 (and most things are true) 23:16:49 ihope: and yes. 23:16:57 lament, that is python. 23:17:06 lament, it is new in 2.5 23:17:13 oh? nice 23:17:22 that makes lambdas more useful :) 23:17:36 still ugly though 23:17:39 yes, quite 23:17:57 but that's what you get for trying to mix expressions and statements 23:20:53 damn, every time they release a new version of python they make it more ugly 23:21:15 Let's hope they don't remove lambdas. 23:23:36 wow, this is just plain nuts http://docs.python.org/whatsnew/pep-342.html 23:24:00 it's more similar to jumpfuck than anything sane 23:24:52 * lament gives up on python 23:25:01 oh thanks 23:25:11 is jumpfuck now a synonym for "shitty" 23:25:16 no 23:25:19 :P 23:25:23 just that PEP is literally similar 23:28:57 -!- Tritonio has quit (Read error: 110 (Connection timed out)). 23:30:06 -!- Tritonio has joined. 23:33:08 -!- sebbu has quit ("@+"). 23:40:18 -!- ehird` has quit (Read error: 104 (Connection reset by peer)). 23:40:23 -!- blahbot` has quit (Remote closed the connection). 23:43:31 * SimonRC find that colourless green ideas do indeed sleep furiously: http://www.linguistlist.org/issues/2/2-457.html#2 23:47:00 hmm 23:47:23 I somehow have the image of a very boring speech in a parliament somewhere, involving an environmental party member. 23:47:27 i just realized i've been awake for 30 hours now. 23:47:39 oklokok: well sleep then 23:47:54 hmm, perhaps tomorrow, i feel codish now :\ 23:47:56 oklokok: and furiously! 23:51:04 okay, i haven't been even 29 hours yet, 28:50... false alarm then 23:52:45 you've been awake long enough to start failing at arithmetic, that's bad enough :) 23:53:16 heh 23:53:34 well, failing in remembering stuff i didn't really memorize... 23:53:50 i always fail in elementary math 23:54:07 too many possibilities to make an error. 23:56:03 Quick! What's 304 + 296? 23:56:16 600 23:56:28 And what's 296 + 304? 23:56:32 600 23:56:36 600 - 296? 23:56:40 304 23:56:41 600 - 304? 23:56:44 296 23:56:51 Good, you didn't make any stupid mistakes. 23:57:29 that only means i'm good at guessing where you're aiming at, not that i actually calculated them all right :) 23:58:46 Now let's see if you don't make smart mistakes, either: what's d(e^x)/dx? 23:59:16 i know! i know! ask me! ask me!