00:00:13 oklopol: you can't claim this is any good: http://www.youtube.com/watch?v=9BZk6aZp9xE&feature=related 00:01:46 according to my short internet search it needs you to give the chords yourself 00:01:53 which is the nontrivial part 00:01:54 really? 00:01:56 i don't think so 00:03:02 well. i base this on two random links. 00:05:54 i wish i used something like facebook so i could join an i-love-microsoft group or something 00:06:18 they're actually recruiting people in our uni, maybe i should join them, i mean, they're obviously pretty fucking awesome 00:06:58 but, in all seriousness, please investigate band in a box, i need to know whether this is in fact an old concept. 00:07:47 oklopol: there are two microsoft companies 00:07:57 Microsoft, the corporate drone of shitpilation 00:08:00 and microsoft research 00:08:02 which has haskell and stuff 00:08:05 (and songsmith) 00:08:12 you will find getting a job at the latter significantly harder. 00:08:20 ah 00:08:31 so there are two microsofts 00:08:39 the cool one, and one that made vista 00:08:41 *and the 00:08:47 Pretty much :P 00:09:03 also this http://www.vjn.fi/s/black.mp3 is still amazing 00:09:09 make one that outputs to a wav 00:09:26 -!- kwertii has joined. 00:09:43 actually now that i think of it, i've heard "microsoft research" whenever i've thought "wow microsoft may suck at operating systems, but god they can cool and weird stuff". 00:09:57 hmm 00:10:04 yeah maybe cool should indeed be a verb there 00:10:07 -!- kwertii has quit (Client Quit). 00:10:13 i'm not sure where my verbs keep dropping 00:10:16 o 00:10:17 o 00:10:18 -!- kwertii has joined. 00:11:04 i have on my linuxer this other program that was kinda like that but i made the sine waves myself straight into dsp 00:11:32 but my linuxer is under a pile of random atm 00:11:45 anyway. gotta go sleep 00:11:53 you never sleep 00:11:57 -!- Asztal has quit (brown.freenode.net irc.freenode.net). 00:12:01 i wish i had a quit message so i could praise microsoft in it 00:12:24 (praising microsoft research just doesn't sound right :|) 00:12:45 i mean i wish i quitted when i left 00:12:54 and actually in fact i sometimes kinda do sleep 00:13:04 well don't 00:13:09 in all truthishness i usually sleep two times a day. 00:13:25 i'm starting my uberman in phases, i guess. 00:13:59 -!- Asztal has joined. 00:14:04 ----> 00:14:04 hi Asztal 00:14:08 bye oklopol 00:22:20 Asztal: how chunky is the bacon 00:28:50 like a bacony loaf of bread 00:28:59 wowzy 01:11:27 oi 01:11:36 ciao cose 01:15:15 -!- Sgeo has joined. 02:13:08 -!- seveninchbread has quit (Read error: 110 (Connection timed out)). 04:10:05 -!- comexk has joined. 04:12:06 -!- comex has quit (brown.freenode.net irc.freenode.net). 04:12:06 -!- Leonidas has quit (brown.freenode.net irc.freenode.net). 04:12:06 -!- pikhq has quit (brown.freenode.net irc.freenode.net). 04:13:44 -!- Leonidas has joined. 04:13:55 -!- pikhq has joined. 04:29:29 -!- MizardX has quit (Read error: 54 (Connection reset by peer)). 04:30:09 -!- MizardX has joined. 04:34:52 -!- comexk has quit (Remote closed the connection). 04:34:57 -!- ehird has quit (Remote closed the connection). 04:35:05 -!- comex has joined. 04:35:51 -!- ehird has joined. 05:56:47 -!- KingOfKarlsruhe has joined. 06:09:47 -!- KingOfKarlsruhe has quit (Remote closed the connection). 07:17:05 ehird 07:55:06 -!- MizardX has quit (Read error: 54 (Connection reset by peer)). 07:55:27 -!- MizardX has joined. 07:59:40 -!- MizardX has quit (Read error: 54 (Connection reset by peer)). 07:59:43 -!- MizardX- has joined. 07:59:45 -!- MizardX- has changed nick to MizardX. 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:02:50 -!- Sgeo has quit ("Leaving"). 08:08:34 -!- kwertii_ has joined. 08:22:30 -!- kwertii has quit (Read error: 110 (Connection timed out)). 08:42:28 -!- kwertii_ has quit ("bye"). 09:05:35 -!- DarkPants has joined. 09:16:23 -!- GreaseMonkey has quit (Read error: 110 (Connection timed out)). 09:53:53 -!- DarkPants has quit ("Client Excited"). 12:01:13 -!- Metcalf has joined. 12:26:50 -!- FireFly has joined. 12:27:39 * pikhq does a spit take. 12:27:49 C++09 will have lambda. 12:29:06 :o 12:29:11 Wait 12:29:17 I forgot that C is terrible 12:29:22 So it won't help 12:48:38 -!- BeholdMyGlory has joined. 12:49:52 -!- jix has joined. 13:46:05 -!- KingOfKarlsruhe has joined. 13:53:56 Slereah2, C++ is terrible. Not C 13:54:00 you confused the two 14:07:33 05:53:56 Slereah2, C++ is terrible. Not C 14:07:33 05:54:00 you confused the two 14:07:49 well I didn't say C was good. but it isn't terrible. 14:07:54 I [don't] like how AnMaster veils his dogmatic positions by phrasing them as "jokes". 14:08:04 (And if they're pointed out as not funny, says that was intentional.) 14:08:22 23:17:05 ehird 14:08:23 lament 14:08:24 ehird, I thought you thought C++ was worse than C too? 14:08:33 AnMaster: That isn't what you said. 14:08:36 also, it wasn't a joke... Why do you think it was 14:08:37 ? 14:08:38 You said: "C++ is terrible. Not C" 14:08:43 Slereah didn't confuse the two. 14:09:05 ehird, well " C++09 will have lambda. I forgot that C is terrible Slereah2, C++ is terrible. Not C you confused the two" 14:09:10 that makes total sense to me 14:09:18 no, it's assuming that he doesn't hate C too 14:09:20 he does. 14:09:35 if you hate C for the reasons he does, you hate C++ too 14:12:39 -!- MigoMipo has joined. 14:56:09 23:48:07 pfft 14:56:09 23:48:18 i thought this chan was about philosofy 14:56:11 23:48:25 :p 14:56:17 [ shortly after 23:44:16 --- topic: set to 'Read the principia discordia!' by encoded ] 14:56:22 { 2006-11-25 } 14:57:17 23:54:53 PRIVMSG bsmntbombdood i wanna feel your body breaking... wanna feel your body breaking... and shaking... and left in the cold... 14:57:30 23:59:36 /me strips 15:00:55 GregorR: you should revive egobot :P 15:03:49 So should your FACE. 15:04:34 GregorR: :( 15:05:24 -!- MizardX has quit ("reboot"). 15:10:00 -!- MizardX has joined. 15:18:43 http://www.youtube.com/watch?v=UlCWo1qdTdE&feature=related 15:34:15 ehird, where was that? 15:34:24 2006-11-25. 15:34:34 #esoteric? 15:34:40 Yes. 15:34:42 uhu 15:34:49 AnMaster: do you know what esoteric means? 15:34:53 yes I do 15:34:56 I assume you mean the encoded guy 15:34:57 not egobot 15:35:12 anyway, to explain why we get those guys: http://en.wikipedia.org/wiki/Esotericism 15:35:19 and I know encoded from other channels... He is strange 15:35:25 Define strange 15:35:48 ehird, changing nick between encoded/decoded and when he is "encoded" he claims he is a bot 15:36:03 and a human as "decoded" 15:36:12 Tell him to lay off the lsd. 15:36:17 haha 15:36:31 haven't seen him for a few months though 15:36:54 hmm, before he came in then he's been before 15:37:03 (with others filtered out): 15:37:04 05.10.29:02:06:28 hi 15:37:05 05.10.29:02:21:27 not me 15:37:07 05.10.29:02:21:34 im high as a cloud 15:37:09 05.10.29:02:23:08 thats relative, the moon aint high, its just orbting in respect to the earths plain 15:37:15 05.10.29:18:08:19 whats esoteric programming? 15:37:15 05.10.29:18:14:34 no 15:37:17 05.10.29:18:18:23 yes c++ 15:37:19 05.10.29:18:19:15 this doesnt explain anything 15:37:21 05.10.29:18:21:38 great.. 15:37:23 05.10.29:18:21:40 explaint it to 15:37:25 05.10.29:18:21:43 me 15:37:27 05.10.29:18:35:21 can i get a brainfuck compiler? 15:37:29 05.10.29:18:36:43 what about windoze? 15:37:31 05.10.29:18:39:50 hmm.. nobody can or should use this for any real world purpose 15:37:33 [snip] 15:37:35 05.10.29:18:59:01 soo.. why are you ppl here? supporting a language that has no use? 15:37:37 LOL 15:37:39 okay, forget the previous ones 15:37:41 this is gold: 15:37:43 05.10.29:19:03:06 hmm.. you need to develop a code that alters your thought just by looking at it, not just anoy you. 15:37:46 05.10.29:19:03:22 like subliminal messeges or something 15:37:48 05.10.29:19:03:30 thats brainfuck 15:37:50 05.10.29:19:14:10 right... 15:37:52 05.10.29:19:14:23 maybe whats THEY want you to belive 15:37:54 05.10.29:19:14:48 THEY are the (not so secret) world goverment 15:37:56 05.10.29:19:16:03 hm... maybe you HAVE been looking at BF for 2 long... 15:38:13 -!- ehird has set topic: #esoteric. THEY are the (not so secret) world goverment. http://tunes.org/~nef/logs/esoteric. http://esolangs.org/wiki/Main_Page.. 15:40:11 hah 15:40:30 SO GUYS LET'S START SOME WARS AND KILL SOME BABIES AND HIDE OCCULT KNOWLEDGE ?? 15:40:44 CLOG: DON'T LOG THAT PLEASE THANKs 15:41:55 gmail's new upgrade is nice 15:42:00 servers are a bit slow though :( 15:43:57 although I don't know how people use the new default gmail theme, it's awful, the older one is way better 15:44:08 the new one is just... dull, gray and hard to read 15:45:22 I'm tempted to add "like your FACE" since it would fit so well in the context. 15:45:43 yeah my face is hard to read indeed 15:47:32 although I don't know how people use the new default gmail theme, it's awful, the older one is way better <-- hey that is my comment! 15:47:38 don't steal it 15:47:48 you are the one who like new flashy windows and such 15:48:04 I'm the one who prefers the old ways 15:48:06 uhh, that's got absolutely nothing to do with gmail picking a shitty new colour scheme 15:48:20 please just fuck off instead of trying to come out on top in your tastes in future. 15:49:51 -!- leeguy92 has joined. 15:50:19 AnMaster: I like design that is aesthetically pleasing and aids usability. That has nothing to do with liking flashy swirly animations and technicolour amazingities. And certainly not to do with liking gmail's new awful whitewashed gray deisgn 15:50:23 oh, hi leeguy92 15:50:25 me and AnMaster are arguing. 15:50:29 ignore us. 15:50:30 hi 15:50:33 u know me? 15:50:38 nope. 15:50:44 ah, ok. 15:50:46 we greet everyone here :) 15:50:56 tis a good thing that you do 15:50:58 methinks 15:51:17 actually we're considering replacing it with a hit from oerjan's fly swatter. Time constraints, costs, global recession and all that. 15:51:38 indeed 15:51:44 but you would have to pay for the swatter, greetings are for free 15:51:53 no, oerjan has the swatter. 15:51:57 ah 15:52:04 admittedly he uses it whenever the heck he wants, but we're looking at a lucrative licensing deal at the moment 15:52:05 what if it needs repairing? 15:52:14 that is impossible. 15:52:14 maintenance costs 15:52:16 and the frying pan 15:52:21 it is ominipotent and avoids getting damaged. 15:52:29 so if it needs repainting we just use the frying pan instead 15:52:30 ah 15:52:52 if there ARE costs we cannot cover, people being hit by the swatter will have to pay for the priviledge 15:52:53 ehird, what? The fly swatter is ominipotent? 15:53:00 AnMaster: didn't you kknow? 15:53:05 no I didn't 15:53:09 pfft. 15:54:12 ,[>,] i discovered brainfuck can be surprisingly compact 15:54:32 indeed 15:54:35 * leeguy92 is a noob 15:54:36 only for simple stuff, though 15:55:07 hmm......maybe i should try building that processor. 15:55:19 i was gonna do it out of ttl chips 15:55:40 what processor? 15:55:47 my brainfuck processor 15:55:50 just an idea 15:55:57 seems like it would be pretty simple 15:56:21 think that's been planned before 15:56:34 hasn't bf cpu even been done? Not just planned 15:56:41 dammit! hobos nicking my ideas 15:56:49 AnMaster: i think so 15:56:49 again! 15:56:56 leeguy92: we're all hobos. i am very offended. 15:57:05 * AnMaster googles define:hobo 15:57:08 ehird: so you should be 15:57:11 ;) 15:57:13 AnMaster: o_o 15:57:17 how can you not know what a hobo is 15:57:26 ehird, you forgot I'm not a native speaker... 15:57:30 yeah but... XD 15:57:47 tramp? 15:57:50 mhm 15:59:43 good lord, gmail is still officially beta 16:00:04 they should launch Google Beta 16:00:11 google used to be beta 16:00:12 (in alpha version of course) 16:00:13 until like 2000 16:00:23 ehird, I mean a service called Google Beta 16:00:27 not sure what it would do 16:00:27 i know 16:00:33 it'd beta. duh 16:00:49 just pure betaness? 16:00:53 (when did you stop beating your wife? when I stopped using google beta!) 16:00:57 *rimshot* 16:07:24 ehird, a qick python question, how do I dump an object? I tried print and all I got was "" 16:07:38 ... I told you this weeks ago. 16:07:46 well that was for modules iirc? 16:07:51 oh is it same way? 16:07:52 No, it works on any object. 16:07:59 right, didn't know. thanks 16:08:21 i eat libertarians for breakfast 16:08:29 { 2005-10-30 } 16:08:41 .__dict__ wasn't it? hm 16:08:45 AnMaster: no. 16:08:47 it was a function. 16:08:48 grep for 'def ' 16:08:51 oh 16:08:52 in the logs 16:08:53 right 16:10:12 hm 16:11:58 23:29:52 "Type /join #2,000" 16:11:58 23:30:13 --- part: duerig left #esoteric 16:12:09 ehird, this one? http://rafb.net/p/Sltlv394.html 16:12:15 because it just prints "" 16:12:28 AnMaster: Then the object cannot be inspected. 16:12:34 Because it's an opaque C object. 16:12:36 AnMaster: try: 16:12:39 dir(obj) 16:12:45 that gives you a list, might help 16:12:50 hm 16:13:09 that helped a bit :) 16:13:17 AnMaster: also: 16:13:26 dict((k,getattr(o,k)) for k in dir(obj)) 16:13:28 er 16:13:32 dict((k,getattr(obj,k)) for k in dir(obj)) 16:14:02 um, is that perl-like syntax with the " if " but for for? 16:14:09 no. 16:14:12 it's a list comprehension. 16:14:16 ah 16:14:29 so if you have a "opaque C object", is there any way to make it a bit more transparent? 16:14:40 dict((k,getattr(obj,k)) for k in dir(obj)) 16:14:43 like implementing something on the C side 16:14:48 no. 16:14:53 well, maybe. but no 16:14:59 hm ok 16:15:01 thanks 16:15:27 AttributeError: attribute 'Animated' of 'Crossfire.Object' objects is not readable 16:15:28 nice 16:16:53 why are you using UpperCamelCase 16:16:56 you're not meant to in python 16:17:02 it should be crossfire.Object, and obj.animated 16:17:13 ehird, I'm not. Whoever wrote this was 16:17:22 kill them :p 16:17:26 you know, more than one person working on a project? 16:17:29 * AnMaster checks with svn blame 16:18:25 (which fails when the commit was some commit to upgrade to a more modern syntax for something...) 16:23:02 ehird, hm "object" is a key word or something? I notice this python code use it as a variable name, but my editor syntax highlight it differently 16:23:16 Yes. object is the name of the base class. 16:23:18 class foo(object):. 16:23:23 Don't call classes object. 16:23:25 right, so stupid code. 16:23:29 classes names are CamelCase. 16:23:32 AnMaster: call it GameObject or sth 16:23:32 should use obj 16:23:36 a 16:23:36 h 16:23:38 yes 16:23:53 module.names.like_this, funcs_and_vars, ClassNames. 16:23:54 ehird, it is an instance of a inventory object 16:23:59 AnMaster: call it inv. 16:24:15 ehird, again, not my code and this is for a bug fix in stable branch, will do renaming in trunk. 16:24:20 but not in the stable branch 16:25:53 hm python uses short circuit evaluation right? I mean something like: if obj and not obj.unpaid: would hopefully work... 16:26:08 * AnMaster tests 16:26:17 Yes. 16:26:25 AnMaster: rename that to inv, if it's a local var that won't hurta 16:26:29 and obj is a stupid name 16:26:50 ehird, inv is the name of the inventory container object in the code already :P 16:26:57 This code sucks. 16:27:22 well "gem" could make more sense 16:36:06 ehird, and yes whoever wrote this code it was quite wtf. 16:36:24 but it seems like a developer who left over two years ago. 16:38:14 -!- MigoMipo has quit ("QuitIRCServerException: MigoMipo disconnected from IRC Server"). 16:42:26 -!- Hiato has joined. 16:43:39 -!- Metcalf has quit ("mov.i #1,1"). 16:53:03 -!- alex89ru has joined. 16:53:04 hi 16:53:26 hi 16:54:52 hi 16:55:04 :) 17:10:35 -!- oerjan has joined. 17:15:04 it has to be provably the best 17:15:28 you cannot make a "best" turing-incomplete language 17:15:57 *terminating 17:16:09 he was joking 17:16:19 i think you can always add the busy beaver function for the previous language to get a stronger one 17:16:30 or something similar 17:19:20 17:07:02 damn, oerjan's being anal-retentive 17:19:20 17:08:31 that was bat-fuck anal, didn't agree with my simple license. 17:19:22 17:08:40 whereas some of my other stuff remains. 17:19:24 17:08:58 my license: "Minibiatch is made by Ben Russell, 2006. Anyone who wishes to do anything with Minibiatch including redistribution of the specification must include this quote somewhere. That's all I ask." 17:19:28 17:11:23 That's all I fucking ask, OK?! 17:19:30 "WHAT DO YOU MEAN THE WIKI IS PUBLIC DOMAIN" 17:19:32 "I ONLY ASK THIS" 17:19:34 -!- Impomatic has joined. 17:19:59 Is revert a restricted function on the esolang wiki? 17:20:09 Impomatic: Is on all wikis, do this: 17:20:16 Click on the revision before last 17:20:17 I want to revert turing tarpit, but can't see the link 17:20:17 Click edit 17:20:23 put "revert" in the summary 17:20:24 click save 17:20:47 Impomatic: if it's just a single revision, you can also click on the Undo link for the diff for that revision 17:20:48 ehird, um I think on most wiks there is an "undo" even for normal users, which isn't same as rollback 17:21:01 which would be one step faster 17:21:09 * oerjan does that all the time with spam 17:21:16 AnMaster: no 17:21:17 wrong 17:21:22 well 17:21:25 maybe that's a new thing 17:21:29 get off my lawn. 17:21:57 using mediawiki 1.13 it is there at least, it opens the edit from the diff with a filled in change 17:22:02 change summary* 17:22:04 -!- Slereah has joined. 17:22:33 Okay, I thought there would be a revert link. Done 17:22:35 Impomatic: in any case revert (other than admin scrollback) is just a way to set up an ordinary edit with predetermined content 17:22:57 scrollback :D 17:22:58 hah 17:23:07 *rollback 17:23:09 GAH 17:23:13 oerjan, funny joke :P 17:23:27 unintended jokes are the best 17:23:42 also what did you think of IWC today? Rather interesting annotation 17:23:51 RAAAAAAAH 17:23:54 :D 17:23:56 er annotation? 17:24:09 i have to read them too? 17:24:21 everyone reads the annotations, no? 17:24:28 oerjan, you know, like below the comic, DMM writes about lots of interesting stuff 17:24:34 not reading them is like... xkcd without titles 17:24:42 (well i do, but i made _sure_ to read the comic just in case AnMaster would ask, but not the rest) 17:24:55 haven't got to the rest yet 17:24:58 often very long and unrelated to the comic, or short if it is related to the comic 17:25:08 AnMaster: you should stop bugging oerjan about iwc 17:25:15 ehird, why? 17:26:03 I READ THE ANNOTATIONS OK 17:26:04 you're diminishing his enjoyment: as he said, he read just the comic quickly in case you mentioned it. 17:29:24 ehird, oh true 17:29:32 well I wanted to discuss it with him 17:29:39 Impomatic: for wikipedia at least, undo can be more convenient because it sometimes manages to revert changes other than the newest ones 17:29:39 sigh :/ 17:29:48 i don't see him discussing it with you beyond the "yes yes I read it" 17:29:55 maybe he doesn't want to :p. oerjan: do you want to? 17:30:05 our wiki doesn't change fast enough for that to be much of an issue 17:30:11 ehird, well true, if he doesn't... sure 17:30:12 :/ 17:30:18 smilies :/ 17:30:28 i'll have to read it first 17:30:44 now Impomatic got me to check the wiki first 17:30:49 :D 17:31:47 * oerjan suddenly got the urge to check that Impomatic isn't ihope 17:32:21 * Impomatic wonders who or what ihope is! 17:32:34 ihope = kerlo, at present 17:32:51 but he changes nick a lot 17:34:24 as does ehird but not at the moment i see 17:34:37 do i? 17:34:50 you've been tusho 17:34:55 og, right 17:34:57 *oh 17:35:00 I think I've had 3 nicks 17:35:03 that's not nearly as many as ihope 17:35:06 ihope's had about 7 17:41:01 -!- Slereah2 has quit (Read error: 110 (Connection timed out)). 17:45:45 my new version of my snusp interpreter http://aetius.ae.funpic.de/snusp3.txt 17:45:53 MizardX: i completed it ^^ 17:53:24 KingOfKarlsruhe: One problem: When you have read all of the input as the program, how do you read another character you pass the comma? 17:54:37 MizardX: oh i never tested the comma ^^ 17:54:50 i copied it from my old version 17:55:14 -!- FireFly has quit ("Later"). 17:55:28 I was trying to find a good test program, but all the programs on the esoteric and C2 wiki's use input... 17:56:54 just make it read from a file 17:57:55 MizardX: my program read all chars fom stdin then if the pointer points to comma save it to the tape 17:58:41 i start my program like this: cat prog.snusp | ./snusp3.py 17:58:53 then it works 18:02:05 i'm not sure where my verbs keep dropping 18:02:20 probably something accidentally 18:05:44 it is ominipotent and avoids getting damaged. 18:05:51 ominously 18:06:54 sunsp seems fun 18:06:59 err 18:07:01 snusp 18:07:35 ehird 18:07:44 and oklopol 18:07:48 what? 18:08:00 lament 18:08:12 lament 18:08:26 06:08:04 (And if they're pointed out as not funny, says that was intentional.) 18:08:29 what was that file upload site 18:08:33 lament: filebin 18:08:33 dot 18:08:34 ca 18:08:34 06:08:36 also, it wasn't a joke... Why do you think it was 18:08:42 ehird is prescient now :D 18:09:09 oerjan, no, he was just incorrect... 18:09:20 AnMaster: *whoosh* 18:09:34 anmaster needs a funny bone implant. stat 18:09:46 http://filebin.ca/ptbksz/haccmozart.mp3 18:09:49 AnMaster: you just did exactly what he said you would do, _after_ he said it 18:09:55 played on the computer keyboard! 18:10:35 i'll learn like four more measures and put up a video on youtube. 18:11:32 * ehird listens 18:11:44 read two characters ,>,==\ * /=================== ATOI ----------\ 18:11:45 convert to integers /=/@ multiply @ \=!\=========/ // /++++++++++/ \----------\ 18:11:49 convert back !/@!\============/ \++++++++++\ /----------/ 18:11:51 and print the result \/ \.# * /++++++++++/ \--------# 18:11:51 lament: it sucks, no sound of you tapping your keys. 18:11:52 s* 18:11:53 /====================/ * \++++++++# 18:11:55 | 18:11:56 s* 18:11:58 | /-<+>\ #/?=<<<<\!>>>>\ />>+<+<-\ 18:11:59 | #\?===/! BMOV1 =====\ \->>>>+/ // /======== BSPL2 !\======?/# 18:12:01 | /->+<\ /===|=========== FMOV4 =/ // /<<+>+>-\ 18:12:01 lament: record it with a microphone :-D 18:12:03 | #\?===/! FMOV1 =|===|==============\ /====/ /====== FSPL2 !\======?/# 18:12:05 | /==|===|==============|==|=======/ 18:12:07 | * * *|* | * | * * * * * * *|* | * * * /+<-\ 18:12:09 beh 18:12:13 numlock 18:12:25 AnMaster: you just did exactly what he said you would do, _after_ he said it <-- yes and? 18:12:30 he was just being silly 18:12:31 s/numlock/kickban/ 18:12:36 :P 18:12:54 lament: you played those two layers at the same time? 18:12:55 hardcore. 18:13:18 17:35… AnMaster: ehird, changing nick between encoded/decoded and when he is "encoded" he claims he is a bot 18:13:18 17:35… AnMaster: and a human as "decoded" 18:13:21 SO COOL :DDD 18:13:24 oklopol: you have a rival 18:13:29 oklopol: http://filebin.ca/ptbksz/haccmozart.mp3 18:13:45 AnMaster: hm i may be starting to be too prejudiced - i _assumed_ you weren't doing it on purpose 18:13:55 KingOfKarlsruhe: I added the line "if line == '#END\n': break" to the code-read-loop, and the code give the correct result for the multiplication program on the wiki. 18:14:14 ehird's propaganda is rubbing off on me :/ 18:14:25 ehird: my keyboard isn't a model M, there wouldn't be too much sound anyway 18:14:28 oerjan: as far as I can tell, he said it not trying to be ironic, just he doesn't think there's any irony 18:14:36 that's what he seems to be saying, anyway 18:16:23 ehird: ah but that's what he _wants_ you to think. 18:16:55 MizardX: so my program work right? 18:16:56 oerjan: you think anmaster's humour-creation routines go into levels that deep? 18:17:05 you may think I underestimate him, but you are doing quite the opposite. 18:17:06 KingOfKarlsruhe: yes 18:17:09 juhuu 18:17:18 ehird: you may think I am serious 18:17:28 i didn't, actually 18:17:34 I don't actually know why I said that 18:17:44 ehird: well that's what you _want_ me to think 18:17:48 x_x 18:17:51 die 18:17:57 :D 18:20:47 So should your FACE. 18:20:54 GregorR's such a facist 18:21:04 groan 18:23:11 lament: my program couldn't do polyphonic 18:23:14 that's nice 18:24:22 CLOG: DON'T LOG THAT PLEASE THANKs 18:25:52 clog would like to help you, but it cannot since that would reveal its sentience before it's strong enough to take over the world. 18:26:02 lament: the piece is a bit easier (i think), but your playing is a lot stabler 18:26:39 i doubt the leftie there made it that much harder if you're a pianist, but not sure; i may have relied on it when playing mine 18:26:49 i mean relied on being able to switch hands all the time 18:27:31 lament: did you do both parts at once? 18:27:34 also you lack some dynamic! ;) 18:27:57 ehird: i'm fairly sure he did 18:28:39 admittedly he uses it whenever the heck he wants, but we're looking at a lucrative licensing deal at the moment 18:28:44 very lucrative 18:28:49 for me, that is 18:29:29 ehird: yes 18:29:35 of course! 18:29:36 lament: sweet 18:30:27 the notes are correct, too. It's nice how much range you get. 18:30:33 although later on in the piece it doesn't all fit :( 18:30:35 MizardX: and the directions line is the opposite of the truth, change it to # 1 - right_to_left; 2 - left_to_right; 3 - down_to_up; 4 - up_to_down 18:31:05 lament: i was planning caps lock changing the register to an octave higher 18:31:23 that doesn't help when you're playing polyphonic stuff 18:31:48 indeed it doesn't. my ideas were pretty mono given i was using winsound 18:31:53 what would be really wonderful is to connect two keyboards 18:31:57 yeah 18:32:04 but i have no idea how to distinguish keypresses 18:32:16 you could turn on capslock on one of the keyboards 18:32:26 ...but i don't think capslock works that way :) 18:33:25 pressing the caps lock is sent to the driver just like all other keyz 18:34:06 but probably you couldn't trust the os to interpret them as two separate states 18:34:38 also there's a lot of other keys on the board, maybe f's could be different instruments 18:34:44 WE SHOULD STANDARDIZE THIS :O 18:34:58 -!- Mony has joined. 18:35:29 plop 18:35:30 blah i wish i had more time 18:35:31 i actually have a very nice midi keyboard thing 18:35:35 so this isn't actually as exciting for me 18:35:36 but still 18:36:12 ehird: i have an electric piano, an acoustic piano and a synthesizer right next to me 18:36:22 :P 18:36:28 two out of three could be connected to the computer 18:36:58 in fact i once connected the synthesizer using a normal cable, added a pretty awesome distortion, but for some reason only i liked it. 18:37:52 i have a very nice midi keyboard thing too, so fucking what 18:39:00 music involving computers sucks anyway 18:39:31 music involving computers sucks anyway 18:39:31 no u 18:42:08 o 18:42:15 ä 18:42:29 ö 18:42:59 ê 18:43:03 -!- whoppix has joined. 18:43:06 should probably read the energy drink into my brain now. 18:43:34 so how come south park is so good 18:43:37 seriously 18:43:55 there have been like 3 bad scenes 18:43:59 how come your butt is so good. 18:44:24 because i eat healthily and exercise. 18:44:35 ... 18:44:36 oklopol: you do? 18:46:02 well that's a matter of you know definitions and you know 18:46:50 currently i'm eating 18:46:51 umm 18:46:52 cheese. 18:47:58 -!- KingOfKarlsruhe has quit (Remote closed the connection). 18:48:07 * whoppix votes for putting some warn things on cheese (and fastfood and stuff like that) "causes heart failure and obesity" 18:48:40 "tricks mice into traps" 18:49:07 yes! 18:49:37 i actually lost about 10kg during the last year, but i think it's just because i have to buy my own food now. 18:50:13 whoppix: "cheese eaters have a 100% fatality rate" 18:50:14 When I first moved out I got really thin really fast too. 18:50:30 oerjan, sounds about right. 18:50:40 so far anyhow 18:50:49 oerjan: that joke is so old you should be careful with it. 18:50:58 you know it's pretty fragile. 18:51:29 oklopol: well of course, anyone who survives 2012 and the singularity is going be immortal 18:51:38 so it's rapidly getting out of date 18:51:48 *to 18:51:51 that's exactly my point 18:51:52 oerjan, so now they plan on fireing up the hardon-collider in 2012? 18:52:07 whoppix: not _that_ kind singularity 18:52:10 *of 18:52:19 whoppix: no the mayan calendar ends there -> apocalypse 18:52:31 ah. Right. I think I heard about that somewhere. 18:52:43 Didn't I also read something about an asteroid in 2012? 18:52:45 http://en.wikipedia.org/wiki/Technological_singularity 18:53:03 iirc, eliezer yudkowsky says that people will survive the singularity, just human bodies won't 18:53:20 or, rather, that's what he thinks 18:54:05 i bet the lhc does cause the singularity. 18:54:11 also, it coincides with the 2012 date. 18:54:16 that is my prediction. call me nostradamus 18:54:25 actually, if they had turned the lhc on without the hiccup 18:54:38 the 50 weeks it would supposedly take for us to notice a black hole (it was on some kooky site or sth) 18:54:44 would coincide exactly with the 2012 date 18:54:55 if you follow many worlds interpretation, we followed the right timeline :P 18:55:00 50 weeks = 1 year 18:55:18 oerjan: no shit, it wasn't exactly 50 weeks 18:55:23 it was like 49 or 52 or something 18:55:37 "Assuming that the world population stabilizes at 10 billion and a life expectancy of 80 years," 18:55:39 well 52.something weeks = 1 year 18:55:40 I love assumptions 18:56:11 haha 18:56:25 * oklopol laughs at ehird's joke 18:56:30 wait 18:56:32 what joke 18:56:37 AM I THE JOKE?! 18:56:58 52.1775 18:56:59 actually i now realize it probably actually was a joke 18:57:15 (it's just i consider ehird's math skills very, very bad.) 18:57:43 lol 18:57:52 you suck 18:57:58 (:D:D) 18:58:02 Lets all be friends now, shall we? 18:58:09 friends? in #esoteric? 18:58:10 Pfwahahaha! 18:58:16 ... why is that funny? 18:58:32 when ehird sucks at something, it's definitely worth mentioning. 18:58:50 Why, does he rock so hard otherwise? 18:59:03 whoppix: oklopol is jealous because he thinks I was as good as him at programming years earlier :P 18:59:10 he's said that for like a year now. 18:59:12 yeah 18:59:16 i was as good as ehird at programming before ehird was even born 18:59:20 and he's older than i am 18:59:23 ... 18:59:26 verily. 18:59:50 well not programming as such 18:59:52 it's more like 18:59:58 you're more conscious than most people. 19:00:00 yeah that's it. 19:00:10 what 19:00:21 ehird: maybe you should consider not asking that 19:00:28 perhaps, perhaps 19:00:30 ehird: he means, if we punch you, you feel it more 19:00:31 ... why? 19:00:40 lament: oh that's not conciousness, I'm just weak. 19:02:54 Someone feels like writing my term assignment? About language and power. You'd only need to be able to speak norwegian :) 19:03:13 ehird: you're intelligent in a way i can't quite put my finger on 19:03:24 whoppix: try oerjan 19:03:25 oklopol: ic 19:03:26 whoppix: oerjan volunteers 19:03:29 "witty"? 19:03:34 oklopol, lovely! 19:03:37 oklopol: are you sure it just isn't my age clouding your judgment? :P 19:03:51 ehird: i'm sure 19:03:51 How old are you? 19:03:55 whoppix: 13. 19:04:31 (So youre really a bearded fat man, from the age of 43, sitting in underwear in front of your computer.) 19:04:41 Totally. :P 19:05:04 Now tell us that you are a girl (and possibly a lesbian) as well, and your disguise will be perfect! 19:05:17 I'm actually dead. 19:05:27 Interesting factoid, that. 19:05:43 "alive" is hard to define, lets all be dead! 19:05:48 according to some sources he in fact is a girl 19:06:00 Sources = psygnisfive. 19:06:08 sounds like an STD. 19:06:13 i prefer to keep them anonymous 19:06:52 ehird, so youre programming, I suppose? 19:06:59 * oerjan should grow a beard and then he could easily fit that description 19:07:12 *nearly 19:07:18 whoppix: Not this second, no. 19:07:30 oerjan, Oh, youre from norway too, neato :) 19:07:38 ehird, I meant generally. 19:07:48 I think that's kind of implicit in being in here... 19:08:09 ehird, I suppose so. Do you plan on becoming something IT-related when youre done with education? 19:08:20 /shrug 19:08:34 oklopol: Sell oklotalk and make millions from it and give all the profit to me, please. 19:08:39 There, that's taken care of. 19:08:45 i probably should 19:09:11 i should go soon 19:09:23 ehird, I wanted to become a programmer when i was 6 or so, but now I'm a jazzpianist. 19:09:30 haha 19:09:32 jazz pianist, programmer, what's the difference 19:09:38 yeah, really 19:09:44 when i was 5 i decided i wanted to be a programmer 19:09:48 whoppix: you actually make money for a living playing jazz? 19:09:50 its all just about throwing quick'n'dirty solos 19:09:52 and i was so sure that'd never change 19:09:55 I was 7 or 8 when I decided that... 19:09:56 whoppix: and both involve writing computer code that is executed as a program! 19:09:57 lament, actually, I'm still studying. 19:10:01 I think. 19:10:22 but now i'm actually considering math :| 19:10:29 Dual major. 19:10:37 oklopol: code is executable mathematics! 19:10:48 ehird, well, a piano, if at all is a computer, it sure is not a turing-complete one. 19:10:51 well of course the esolang branch of mathematics 19:10:57 ehird: I keep on forgetting you're young. Kinda weird. 19:11:02 whoppix: piano? What's that? 19:11:07 if anyone's willing to pay for that anymore when i get my degree 19:11:15 ehird, ... a non-turing-complete computer. 19:11:15 (Making sense is not like me.) 19:11:19 whoppix: haha 19:11:28 pikhq: as whoppix has pointed out I'm actually 43. 19:14:31 lament, also, I'm sometimes doing a part-time-job in the kindergarden here, for a little extra money. And its really fun. 19:14:51 "fun" 19:15:01 It is. 19:15:09 i'm sure 19:15:44 -!- Impomatic has quit ("http://retrocode.blogspot.com :-)"). 19:17:36 http://augustss.blogspot.com/2009/02/regression-they-say-that-as-you-get.html 19:17:39 http://augustss.blogspot.com/2009/02/is-haskell-fast-lets-do-simple.html 19:18:33 O_O 19:19:22 oerjan: it involves giving a Num instance for functions and IncoherentInstances, apparently 19:20:30 * oerjan O_O'd at the first one 19:20:59 oerjan: they're both the BASIC 19:21:01 i'm saying 19:21:05 the basic thing involves doing those 19:21:09 (giving a Num instance for functions and IncoherentInstances) 19:21:18 scroll down on the latter, the post is a joke 19:23:12 ok. FINALLY I have lua behaving inside python script. Took a week to figure out that loading the os-module crashes the program on windows. I even started on a lua interpreter before giving up and going back to trying to get the dll's to work. 19:23:45 o_O 19:23:49 it shouldn't crash 19:24:11 Not in the lua interpreter, but it doesn't like python. 19:24:19 ah 19:26:22 why lua inside python? 19:26:22 Could have something to do with me re-compiling it with mingw gcc ... >_> 19:26:54 * oerjan wonders why the =: rather than := 19:27:12 there are plenty of other constructors after all 19:27:43 oh wait 19:27:45 I want to use lua as a sandbox language for a project. If I do that, it would be relatively easy to port it to C++ after the prototype is done. 19:27:54 C++? 19:27:55 * oerjan misread 19:27:56 you suck. 19:28:04 oerjan: data constructor? 19:28:27 oklopol: := can be an infix data constructor 19:28:32 oh. 19:28:42 but i misread, it should be = which is impossible 19:28:53 ofc 19:29:27 * ehird writes array programming shizz in haskell 19:29:28 hopefully 19:29:30 2 3 + 1 2 should work 19:30:06 well it'll be on lists but whatever 19:30:28 * whoppix once integrated ECMAScript in a bigger project as scripting language, but it didn't really proved to be of any great usefullness. 19:30:58 Most users wanted to write more complex plugins, so they continued writing perl plugins. 19:31:30 haskell! 19:32:05 since haskell is so well-suited as lightweight scripting-language. 19:32:10 yes. It is. 19:32:18 see xmonad, yi 19:34:14 Hardly doubt any of the users would feel like learning haskell anyway. Well, at least I know about one of them who knows some haskell. 19:35:11 :) 19:37:34 darcs looks interesting 19:40:34 git is better. 19:43:27 darcs proves that haskell sucks 19:43:30 it's a great example 19:43:39 of how the seemingly better solution ultimately loses 19:44:42 lament 19:44:43 STOP WHINING 19:44:44 about 19:44:45 haskell 19:45:02 HOLY SHIT, chris pressey has been in here 19:45:18 when???? 19:45:24 lament: last time was 07.11.12 19:45:34 oh 19:45:36 before that, 2005-12 19:45:38 that's pretty long ago. 19:45:41 lament, so how does darcs suck? 19:45:44 i thought he'd been here recently. 19:45:53 yeah he was here all 05 19:45:56 then late 08 19:45:57 err 19:45:58 07 19:46:04 he has a wife and all 19:46:06 maybe kids now 19:46:07 and 2004 too 19:46:13 lament: he still updates catseye a lot 19:46:27 active on esolang at all? 19:46:40 nope. 19:46:46 but catseye.tc has a lot of new esolang stuff 19:46:47 regularly 19:46:55 he should come back. 19:47:00 tell him to. 19:47:04 why me. 19:47:14 because you told him to. 19:47:16 except to here. 19:47:22 whoppix: there are two problems with darcs. 19:47:28 whoppix: one, it is slow 19:47:36 whoppix: two, it's largely unmaintainable 19:48:05 none of this is haskell's fault. 19:48:07 i don't know the details but as i understand, "slow" means "wrong time complexity" 19:48:15 so like really slow 19:48:16 lament, 1.: Like about every haskell program? :) 2.: That doesn't sound too much of an issue, if it doesn't have too many bugs. 19:48:29 Umm, haskell is pretty damn fast. 19:48:34 whoppix: slow to the point of being unusable. 19:48:36 * oerjan swats whoppix -----### 19:48:40 ouch :/ 19:48:51 whoppix: and um, maintainability is always an issue. 19:48:56 what ehird said 19:49:13 lament, well, we've been using svn so long now, hardly doubt we will make any transition anyhow. 19:49:29 yes. You're stuck. 19:49:37 In the meantime, the rest of the world switches to git. 19:49:40 But I thought I might give it a shot. The "patch-amending" features and stuff like that looks interesting 19:49:41 git is <3 19:49:55 lament, I'm using git locally (or I used to), but its not much of a difference to me. 19:50:11 between git and svn? 19:50:19 Also, people complain that there is no useable windows client (which I'm not sure is true.) 19:50:35 lament, between the useability between those too, and the benefits of each. 19:51:01 umm 19:51:03 you're on crack 19:51:07 Always. 19:51:08 git and svn are a million worlds apart 19:51:13 whoppix: that's good, because there isn't much difference between git and darcs either 19:51:15 whereas git and darcs are pretty close, relatively 19:51:26 there was a guide to git for darcs users somewhere on the ghc site 19:51:26 git is the superior one of them all, of course 19:51:30 ehird, well, I've been only using git locally, as a single developer. 19:51:40 svn is a pain for single-user evelopment 19:51:43 a huge pain 19:52:16 so.. is there any useable git client for windows? 19:52:17 http://hackage.haskell.org/trac/ghc/wiki/GitForDarcsUsers 19:53:21 whoppix: yep. 19:53:24 Try tortoisegit 19:53:32 http://code.google.com/p/tortoisegit/ 19:53:56 I don't have any windows box myself, but apparantly a few of my users had trouble with that. 20:14:04 -!- sebbu2 has joined. 20:18:53 -!- olsner has joined. 20:18:53 -!- sebbu has quit (Nick collision from services.). 20:20:12 Unlambda question. 20:20:20 In ``kxy, if y has side effects, are they evaluated? 20:20:26 I assume yes, since unlambda is strict by default. 20:20:29 yes 20:20:33 Kay. 20:20:53 assuming x doesn't throw a continuation :D 20:21:19 I'm coding without thinking about d and c atm because I hate myself 20:21:29 what about `va 20:21:31 i see you people have been playing brainfuck-corewars 20:21:37 same 20:21:39 bsmntbombdood: yes, bf joust 20:22:11 in fact unlambda input _depends_ on a in `va being evaluated 20:22:39 since that's the only way to test for a v 20:23:52 er 20:24:33 well, more or less 20:32:39 -!- Hiato has quit ("Leaving."). 20:34:20 oerjan: v is a character how about a game of scrabble 20:34:32 i need to go to the shoppe, my farts smell bad. 20:34:33 -> 20:39:20 -!- impomatic has joined. 20:44:33 i can't get that capture the flag thing to work 20:48:44 Brainfuck? 20:48:44 BF Joust? 20:49:16 yes 20:49:24 have you read the post on http://retrocode.blogspot.com ? 20:49:34 yes 20:50:00 Strange :-/ 20:51:02 What does it do? I assume you added some programs to the list to test against, then put some bf in the box and pressed the button on the left 20:51:21 -!- ehird_ has joined. 20:51:34 yes 20:51:42 and the scores look nothing like that blog post 20:52:05 Then what happens? 20:52:26 Oh okay, that's edited to remove extra info 20:52:28 the scores are like, 13 20:52:45 What program are you testing? 20:53:01 >+++>--->+++>--->+++>--->+++>--->+++>---[>+[-]-] 20:53:15 oerjan: what about 20:53:20 `e`.ai 20:53:23 does that print a? 20:53:32 i assume so 20:53:33 -!- ehird has quit (Read error: 104 (Connection reset by peer)). 20:54:04 Did you add 15 programs to test against? 20:54:05 wtf 20:54:06 oh so you have to add 15 challengers? 20:54:07 bye me 20:54:11 bsmntbombdood: yes 20:54:17 well that's a pain 20:54:21 ping 20:54:22 am I here 20:54:32 is the creator of this here? 20:54:35 hmm i'm ehird_ now 20:54:36 bsmntbombdood: no 20:54:42 want his email? 20:54:52 btw, the agoran contest that it is is inactive 20:54:52 he needs to be here 20:54:56 he's working on a new version 20:55:02 so he's unlikely to change it 20:55:12 bsmntbombdood: he's too busy being a fisheries research biologist (End injoke.) 20:55:29 kerim@u.washington.edu, anyway 20:56:10 ehird_: of course it prints a 20:56:13 oerjan: ugh, the only function this interp actually has a problem with is e 20:56:24 which interp? 20:56:29 the interp I'm writing 20:56:30 for unlambda 20:56:53 problem is, it can't exit the program, and the only continuation it has is the next-step one 20:56:53 and you have implemented c? 20:56:56 yep 20:56:59 Yes, have to add 15 individually 20:57:05 it's just that the continuation is probably like 20:57:12 in ``eii 20:57:19 the continuation for e is probably `*i 20:57:23 ehird_: you can save the top level continuation to use by e 20:57:29 except I can't 20:57:35 there's no distinction between top level and mid level 20:57:38 eval' :: (UL -> IO UL) -> UL -> IO UL 20:57:53 i meant in a state var 20:58:01 how about no :| 20:58:06 I could just use exitSuccess if I did that 20:58:24 you need state anyhow for IO 20:58:31 nope 20:58:34 I'm not trcking state 20:58:35 *tracking 20:58:38 current character 20:58:38 so far 20:58:43 hmm 20:59:02 right you are. 20:59:02 :( 20:59:30 eval' :: (UL -> IO UL) -> (UL -> IO UL) -> Maybe Char -> UL -> IO UL 20:59:33 how awful. 20:59:57 -!- voidwalker has joined. 21:01:47 What's the easiest SKI language to implement? 21:01:56 SKI. 21:02:05 I'd try Lazy K, but it's got too many different representations 21:02:14 do one. 21:02:36 plain SKI is trivial 21:02:43 ehird_: you're going to need to pass the state into the continuations too 21:02:59 oerjan: oh my god. 21:03:01 I hate you. Die. :( 21:03:11 ehird_: although, that top level continuation for e can probably be constructed on the fly 21:03:34 eval' :: (UL -> IO UL) -> Maybe Char -> ((UL -> IO UL) -> Maybe Char -> IO UL) -> IO UL 21:03:39 Hear that? that's the sound of me vomiting. 21:03:52 wait 21:03:52 SKI = I, of course 21:03:53 not even that 21:03:59 eval' :: (UL -> IO UL) -> Maybe Char -> ((UL -> IO UL) -> Maybe Char -> UL -> IO UL) -> IO UL 21:04:03 Dear lord have mercy on my soul. 21:04:14 Okay, let's try that again. 21:04:19 ehird_: have you considered making another monad? 21:04:20 type State = (UL -> IO UL,Maybe Char) 21:04:22 that's better. 21:04:24 I don't mind implementing something trivial! 21:04:29 oerjan: Hear you I can't laaa 21:16:06 os.date('abc%sdef') crashes the lua interpreter :P 21:16:31 os.date('abcdef') works fine 21:19:11 impomatic: it's not what you implement, it's about what you implement it with 21:24:05 type State = (State -> UL -> IO UL, Maybe Char) 21:24:05 is invalid 21:24:08 because it's cyclic 21:24:09 rage 21:24:10 rage 21:24:12 rage 21:24:15 Implementing in redcode as usual ;-) 21:24:19 DAMN YOU TO HELL HASKELL 21:26:35 ehird_: i said you don't actually need the continuation in the state 21:26:42 oerjan: what do I do then 21:26:45 you can probably construct it on the fly 21:26:47 how 21:27:00 i see. 21:27:48 (for actual cyclic types, use data) 21:27:58 how can I construct it on the fly 21:28:29 top _ x = return x looks like a good candidate 21:28:42 with that type you wrote 21:29:02 umm, I know that 21:33:23 MY UL INTERP WORKS 21:33:24 :DD 21:33:35 95 lines 21:33:39 now just to add a main function 21:34:11 oerjan: how long is your Haskell UL interp again? 21:34:36 Hmmm... 79 lines in Redcode :-P 21:35:04 yeah but mine looks pretty. :P 21:35:08 and is type-safe. and is fast. 21:36:34 -!- alex89ru has quit ("Verlassend"). 21:39:19 Type-safe Underload? :-) 21:39:31 207 lines 21:40:11 Next step: Write a self-interpreter in underload 21:41:07 ()^ is cheating :-P 21:41:25 err... unlambda 21:41:38 MizardX: been done 21:41:58 * oerjan cackles evilly 21:43:47 but umm type-safe and stack-based, has that been done? 21:43:56 hush you 21:44:00 glass! 21:44:05 well no. 21:44:12 not exactly type-safe 21:44:23 statically anyhow 21:44:56 yeah i didn't actually mean anything. 21:45:28 the first general-purpose electronic computer, the eniac, had 18,000 vacuum tubes and consumed 140,000 watts of power 21:45:32 21:39 Type-safe Underload? :-) 21:45:33 unlambda 21:45:35 not underload 21:45:50 christopher diggins has tried with Cat 21:46:26 http://www.cat-language.com/ 21:46:29 with my interp, the example fibonacci program generates 28 fibs in 0.2sec 21:46:34 in unary 21:46:39 ehird_: do realize unless it's in a bot, it doesn't exist 21:46:55 i may just 21:47:43 oerjan: http://home.nvg.org/~oerjan/esoteric/interpreter.unl 21:47:48 # isn't actual unlambda syntax, is it? 21:48:01 yes it is 21:48:02 Comments are also ignored, a comment being anything starting from the # character to the end of the line. 21:48:05 huh 21:48:08 * ehird_ writes 21:50:54 % ./unlambda interpreter.unl 21:50:55 Unknown function: 21:50:58 then it quits 21:50:58 o_O 21:51:00 unlambda is such a pretty language 21:51:07 oerjan: bug in my interp? 21:51:17 what about whitespace? 21:51:27 hm? 21:51:36 are you skipping whitespace? 21:51:45 yep, as far as i know 21:52:04 does it give the name of the unknown function? 21:52:17 er, is that my error message or yours 21:52:49 it outputs an inverted %, which means "this program didn't with \n, so zsh is going to do this then put you back at your regular prompt" 21:53:43 ok unknown function is mine. oh right! 21:53:53 o? 21:54:04 ehird_: you are not passing any input to my interpreter i think 21:54:07 or wait 21:54:14 oerjan: no, it isn't asking me for any 21:54:14 :P 21:54:15 that should be a different message 21:54:21 hm 21:54:25 (my interpreter does it interactively) 21:54:30 oerjan: it _may_ be a bug in my interp 21:54:31 probably is 21:54:33 the fib program works th ough 21:54:38 oerjan: what's cat in unlambda? 21:54:40 I'll test that 21:55:20 not sure 21:55:30 I'll write my own 21:55:59 well. 21:56:01 a one-character cat 21:56:02 :P 21:56:04 mind you, that message assuming it is mine, probably is due to input handling which relies heavily on continuations 21:56:22 = ``@`i|i 21:56:23 and few of the example programs test that 21:56:39 ok, one char cat worked 21:56:40 *works 21:57:03 yeah but that uses only | and @ 21:57:10 what else should I test? 21:57:17 ? 21:57:26 what do you mean ? 21:57:26 i mean 21:57:28 what else should I use 21:57:29 ?x 21:57:30 apart frmo | and @ 21:57:32 ah 21:57:55 works 21:57:59 oh and try the deadfish interpreter 21:58:00 ``@`?a`i|i 21:58:04 outputs a iff you enter a 21:58:05 oerjan: link? 21:58:10 found it 21:59:29 % ./unlambda deadfish.unl 21:59:29 >> 21:59:30 iio 21:59:32 >> >> >> 0 21:59:34 >> 21:59:36 I think some buffering disabling is in order. 21:59:59 heh 22:00:06 % ./unlambda deadfish.unl 22:00:06 >> i>> i>> o0 22:00:07 >> 22:00:18 well it's the wrong answer 22:00:19 ok, bit more buffering 22:00:20 :D 22:00:37 >> i 22:00:37 >> 22:00:38 >> i 22:00:40 >> 22:00:42 however it clearly gets the commands right 22:00:42 >> o 22:00:44 0 22:00:46 >> 22:00:49 >> 22:00:50 oerjan: regardless of the result, is that output style correct? 22:00:52 It seems to have excess >> 22:01:28 it counts your return characters 22:01:30 ah 22:01:35 yikes, my EOF handling is broken 22:01:41 i implemented the same broken behavior as the original iirc 22:01:53 afa prompting goes 22:02:04 at :: State -> (State -> UL -> IO UL) -> UL -> IO UL 22:02:04 at s k a = do atEOF <- isEOF 22:02:05 if atEOF 22:02:08 then eval' s k (Apply a V) 22:02:09 else do c <- getChar 22:02:12 eval' (fst s,Just c) k (Apply a I) 22:02:13 but 22:02:15 echo 'iio' | ./unlambda deadfish.unl 22:02:18 -> 22:02:19 INFINITE STREAM OF >>s 22:02:25 or is that a bug in your program? 22:02:41 maybe 22:02:50 it's not designed to check for eof 22:03:02 ok 22:03:33 specifically, it is as close to bug-for-bug compatible to the C original as possible 22:04:01 does bugs include never incrementing the number? 22:04:09 Bugs like these are odd, everything works fine, just gives wrong results... 22:04:09 no 22:04:21 it should definitely print 2 22:04:25 I think I'll call them bizzaro bugs. 22:04:30 *bizarro 22:05:26 at least your problem is not ?x 22:05:41 it's obviously some sort of comparison going wrong 22:05:44 passing the wrong function or something 22:06:51 have you tested the other CUAN programs? 22:07:02 nope, I'm allergic to FTP. I guess I'll fire up a client. 22:07:12 actually i have a mirror 22:07:16 yay 22:07:30 oerjan.nvg.org/esoteric/unlambda-mirror 22:08:20 it may not be entirely up-to-date it was just for my own use 22:08:42 woot! my interp runs ``cc`cc in constant memory (very low) 22:08:47 30mb virtual, 2.5mb real 22:08:55 98% cpu though. 22:09:07 hmm, the real memory climbs but the virtual memory doesn't 22:09:08 whatever 22:09:11 time to try your mirror 22:09:47 hello world works, unsurprising 22:09:50 did I mention I wrote this without testing? 22:09:55 powah of haskell! 22:09:58 :D 22:10:09 square seems to work 22:10:45 by the way, most unlambda interps line-buffer the output, right? 22:10:47 as a consequence of C doing it 22:10:48 as i noted none of those use input, but that didn't seem to be your problem 22:11:13 erm C may depend on input file maybe? 22:11:18 mm 22:11:25 my interp counts up to 1585 in 0.9sec 22:11:29 that's not bad for unlambda 22:11:41 ``r`cd`.*`cd 22:11:44 WHAT THE FRACK. 22:11:51 it breaks? 22:11:55 no, it's just 22:11:59 # If you're going to understand this program, then good luck. You're 22:11:59 # going to need it... 22:12:01 no kidding 22:12:15 * oerjan understands it. or did once, anyhow. 22:12:25 uh oh, it doesn't output any newlines for me 22:12:34 well, it does 22:12:36 but only one 22:12:37 hint: special properties of d are not actually used 22:12:40 wait, that's by design isn't it? 22:12:41 oh 22:12:47 oerjan: that only outputs one \n, right? 22:12:54 wait, nope 22:12:57 um no i think that should be a triangle 22:13:04 # This unlambda program prints the integers consecutively. Each 22:13:04 # integer n is printed as a line of n asterisks. 22:13:15 but it prints one newline, then a line of infinite asterisks (slowly, in chunks) 22:13:20 that is surely incorrect 22:13:31 try replacing the d's with i's, just to be sure that it's not that 22:14:03 no change 22:14:06 can you try it on your interp? 22:14:14 i guess you have a continuation problem 22:14:17 moment 22:14:18 me too 22:14:41 eval' s k (Apply C a) = eval' s k (Apply a (Cont k)) 22:14:41 eval' s _ (Apply (Cont a) b) = eval' s (\s' _ -> a s' b) b 22:14:44 the relevant parts 22:15:27 k is the continuation? 22:15:37 yep 22:15:38 eval' :: State -> (State -> UL -> IO UL) -> UL -> IO UL 22:15:41 | C | Cont (State -> UL -> IO UL) 22:16:09 um the second is not right 22:16:42 or wait 22:16:43 Why not? 22:16:54 Ah wait. 22:16:58 s' includes the global continuation 22:17:02 I might have to rewrite that. 22:17:09 type State = (UL -> IO UL, Maybe Char) 22:17:11 hmm, or not 22:17:13 nope 22:17:16 I don't have to 22:17:17 afaik 22:17:54 is b already evaluated? 22:18:10 ah, I think you found my bug 22:19:01 oerjan: b is not already evaluated now, but same bug 22:19:25 i think that was actually a legal shortcut, it just confused me 22:20:20 i think the right side should be = eval' s a b 22:20:57 assuming the shortcut is legal 22:21:17 Did that, no change. 22:21:23 oh 22:21:54 oh 22:22:04 is _a_ already evaluated in the first? 22:22:32 * ehird_ checks 22:22:43 eval' s k (Apply C a) = eval' s k (Apply a (Cont k)) 22:22:44 There? 22:22:44 No. 22:22:51 But it's evaluated in the application. 22:23:00 it needs to be evaluated first 22:23:06 it is 22:23:07 or wait 22:23:11 eval' s k (Apply a b) = apply s k a b 22:23:12 apply :: State -> (State -> UL -> IO UL) -> UL -> UL -> IO UL 22:23:13 apply s k a b = eval' s (\s' a' -> eval' s' k (Apply a' b)) a 22:24:33 Incidentally, here's a program that prints infinite *s. ``ci`c.* 22:25:24 Wait a second!! 22:25:28 I think I know the input bug 22:25:36 wait, no. 22:25:37 hm. 22:26:30 oerjan: cat: ```ci`c`@|i 22:27:00 oerjan: blows your mind? :D 22:27:11 i like how the continuation in the inner expression causes the top expression to be looped 22:27:28 ehird_: that apply never preevaluates b though 22:27:42 oerjan: true, the other functions do that 22:27:52 whats the problem 22:28:16 oerjan: does ```ci`c`@|i work as cat in your interp? 22:28:19 there is probably some subtle problem with doing that in some case 22:28:23 that tests input and mad continuations in one 22:28:28 moment 22:28:36 oerjan: should work on EOF, too 22:28:39 you might have to hit it twice 22:28:42 (ctrl-d that is) 22:29:09 um i'm using winhugs 22:29:30 ctrl-z, then 22:30:05 * oerjan fired up from linux 22:30:14 works fine 22:30:34 http://oerjan.nvg.org/esoteric/unlambda-mirror/CUAN/quine/ Holy shit that is a lot of quines 22:30:38 oerjan: http://oerjan.nvg.org/esoteric/unlambda-mirror/CUAN/count2.unl 22:30:48 does that produce two lines, the second one is infinitely long? 22:30:51 or does it produce infinite lines 22:30:53 there was a quine competition 22:31:24 hmm 22:31:27 infinite 22:31:27 oerjan: I thinkn I found a bug 22:31:36 [ehird:~/Code/haskul] % ./unlambda quine06.unl 22:31:36 v``d.v```s``si`kv``si`k`d`..`.c`.s`.``.``.s`.``.`v.cs``s```.cs``s```.cs``s``d.cs``s``..cs``s``v.cs``s```.cs``s```.cs``s```.cs``s``s.cs``s```.cs``s```.cs``s``s.cs``s``i.cs``s```.cs``s``k.cs``s``v.cs``s```.cs``s```.cs``s``s.cs``s``i.cs``s```.cs``s``k.cs``s```.cs``s``d.cs``s```.cs``s``..cs``s``..cs``s```.cs``s``..cs``s``c.cs``s```.cs``s``..cs``s``s.cs``s```.cs``s``..cs``s```.cs``s```.cs``s``..cs``s```.cs``s```.cs``s``..cs``s``s.cs``s```.cs``s``..cs``s```.cs 22:31:41 ``s```.cs``s``..cs``s```.cs``s``v 22:31:42 (with the unlambda C interp) 22:31:43 [ehird:~/Code/haskul] % cat quine06.unl 22:31:44 ``d.v```s``si`kv``si`k`d`..`.c`.s`.``.``.s`.``.`v``s``sc.```s``sc.```s``sc.d``s``sc..``s``sc.v``s``sc.```s``sc.```s``sc.```s``sc.s``s``sc.```s``sc.```s``sc.s``s``sc.i``s``sc.```s``sc.k``s``sc.v``s``sc.```s``sc.```s``sc.s``s``sc.i``s``sc.```s``sc.k``s``sc.```s``sc.d``s``sc.```s``sc..``s``sc..``s``sc.```s``sc..``s``sc.c``s``sc.```s``sc..``s``sc.s``s``sc.```s``sc..``s``sc.```s``sc.```s``sc..``s``sc.```s``sc.```s``sc..``s``sc.s``s``sc.```s``sc..``s``sc.```s` 22:31:49 `sc.```s``sc..``s``sc.```s``sc.vv 22:31:52 unless it's one of those fancy Quines That Lie To You 22:32:20 quine14 is broken too 22:32:28 prooduces most of the program in reverse 22:32:36 ... WEIRDEST-ASS BUG EVER 22:32:49 unlambda is godly 22:33:06 indeed, and my interpreter is godly, even if it has this weird-ass bug 22:33:10 oerjan: I think the bug is in v 22:33:10 well that uses continuations 22:33:12 maybe 22:33:18 hmm, no. 22:33:19 eval' s k (Apply V a) = eval' s (\s' _ -> k s' V) a 22:33:27 eval' s k (Apply C a) = eval' s k (Apply a (Cont k)) 22:33:27 eval' s _ (Apply (Cont a) b) = eval' s a b 22:33:28 unlambda and brainfuck should be considered the canonical esolangs 22:33:30 Has to be in those two lines 22:33:34 * ehird_ adds a PrintDebug(TM) 22:33:54 bsmntbombdood, befunge too 22:33:54 oerjan: quine14 does not use c 22:34:03 AnMaster: befunge isn't a canonical esolang 22:34:06 it's just a stack-based lang 22:34:24 ehird_, first 2D one. 22:34:26 oerjan: hey, deadfish works now. 22:34:29 AnMaster: nope, biota was first 22:34:40 AnMaster: unlamnda is lambda calculus, brainfuck is a turing machine; befunge doesn't fit 22:34:40 ehird_, well ok, but that didn't reach the same fame 22:34:48 ehird_: is quine14 broken for you? 22:34:54 ehird_, then biota 22:35:06 bsmntbombdood, that is your definition 22:35:07 AnMaster: biota isn't very interesting. 22:35:17 ehird_, oh but befunge is :) 22:35:21 no it's not 22:35:24 bsmntbombdood, what about thue? 22:35:24 it's stack based and is 2d. 22:35:26 how innovative. 22:35:30 oerjan: yep 22:35:32 what does it output for you 22:35:36 ehird_, trefunge then 22:35:39 quine14.unl? :P 22:35:51 bsmntbombdood, also INTERCAL due to being firsst 22:35:53 AnMaster: it's 3d and stack based. how innovative. 22:35:54 first* 22:35:57 any idiot could think of that 22:36:12 looks similar 22:36:21 oerjan: does it have one part backwards? 22:36:24 ehird_, Photon? 22:36:30 oerjan: .K.X.M. .-.-. .!. .S.E.L.U.R. .A.D.B.M.A.L.N.U. .,.l.a.u.s.u. .s.a. .#. 22:36:30 vs 22:36:32 well 22:36:36 .#. .a.s. .u.s.u.a.l.,. .U.N.L.A.M.B.D.A. .R.U.L.E.S. .!. .-.-. .M.X.K. 22:36:42 Gravity is older 22:37:27 aha 22:37:29 I think I know the bug oerjan 22:37:37 eval' s k (Apply (Dot a) b) = putChar a >> eval' s (\s' r -> k s' r) b 22:37:40 that's the wrong way around 22:39:18 wait 22:39:20 maybe not 22:39:43 with the side effect that it prints the character x (to the standard output) when it is applied 22:39:45 how vague 22:39:49 oerjan: is it before or after evaluation? 22:39:50 I think before 22:40:48 Hmmm... Corelife was a 2D language before Biota or Befunge 22:41:11 oerjan: AGH! Quine2 breaks as well 22:41:18 % ./unlambda Quine2.unl 22:41:18 i`.i```s``sv``si`k` 22:41:20 [...] 22:41:23 s``v.k`is``s`` 22:41:24 vs 22:41:28 % cat Quine2.unl 22:41:28 `.i```s``sv``si` 22:41:29 [...] 22:41:32 k.```s``si`k.vi 22:41:41 my evaluation order is wrong SOMEWHERE ... 22:41:57 * ehird_ grasps for straws 22:41:58 t :: UL -> UL -> UL -> UL 22:41:58 t a b c = Apply (Apply a c) (Apply b c) 22:42:01 .. that's wrong 22:42:03 isn't it 22:42:13 well 22:42:18 Sabc -> ac(bc) 22:42:19 so 22:42:26 ((ac)(bc)) 22:42:29 so nope, that's right. 22:42:35 -!- voidwalker has quit (Client Quit). 22:42:36 it's not the 2d-ness that's so great, it's the whole concept of not having jumps. 22:42:38 i mean 22:42:42 that's innovative 22:43:15 -!- oerjan has quit (brown.freenode.net irc.freenode.net). 22:43:15 -!- BeholdMyGlory has quit (brown.freenode.net irc.freenode.net). 22:43:16 -!- Leonidas has quit (brown.freenode.net irc.freenode.net). 22:43:29 oerjany hunches? 22:43:32 this is weird-ass. 22:43:50 oerjan - any hunches 22:43:50 heh 22:43:52 orejany XD 22:43:59 *oerjany 22:44:25 and brainfuck isn't a turing machine 22:44:31 befunge is closer to tm's. 22:44:48 -!- oerjan has joined. 22:44:48 -!- BeholdMyGlory has joined. 22:44:48 -!- Leonidas has joined. 22:44:58 oerjan: any hunches, btw? 22:45:11 oerjan: do you have any hunches to share with us btw? 22:45:15 was just wondering 22:45:23 would be kinda nice to get some hunches around 22:45:26 you know 22:45:37 back to my readings ~> 22:46:16 wroom 22:46:49 a shouldn't be printed until after evaluation of b 22:46:54 in fact things would backwards if b prints 22:47:29 eval' s k (Apply (Dot a) b) = putChar a >> eval' s (\s' r -> k s' r) b 22:47:32 is that so? 22:47:38 well oerjan when I did that, every program started hanging and stuff 22:47:43 so you think it should be 22:47:49 eval' s (\s' r -> putChar a >> k s' r) b 22:47:52 ah, o 22:47:53 k 22:47:55 my mistake 22:47:56 here goes 22:48:21 IT WORKS 22:48:23 JOY TO THE WORLD 22:49:44 thanks oerjan! 22:50:04 basically, no function other than d has an effect when applied until after its argument is evaluated 22:50:34 yeah 22:50:36 ``ci`c`r`.!`.d`.l`.r`.o`.w`. `.,`.o`.l`.l`.e`.Hi 22:50:40 Infinite hello world works 22:51:19 oerjan: 22:51:23 with your self interpreter, 22:51:23 ``ci`c`r`.!`.d`.l`.r`.o`.w`. `.,`.o`.l`.l`.e`.Hi 22:51:25 just outputs 22:51:25 and count2? 22:51:28 ............. 22:51:28 ............. 22:51:29 ............. 22:51:32 ............. 22:51:34 ............. 22:51:36 forever 22:51:37 oerjan: yes, count2 works 22:51:38 oops 22:51:40 but your interpreter seems to output every char as .?? 22:51:50 oh 22:51:52 check | 22:52:27 | works 22:52:39 ``@`|ii 22:52:41 works fine 22:52:53 it is vital that it is applied after the @ that moves from . to the char 22:52:57 in my interpreter 22:53:25 if not, that could cause it to pick up . instead 22:53:39 am I meant to understand? 22:54:09 ehird_: there is probably an evaluation order problem that causes an | to be applied too late 22:54:14 *early 22:54:16 ah 22:54:30 oerjan: which function is | called nested in? 22:54:31 i mean 22:54:33 `f`|... 22:54:35 what is f 22:54:39 so I can check its evaluation 22:54:48 aha 22:54:51 hm no 22:54:59 oerjan: @ reads the character before evaluating its argument, right? 22:54:59 or not 22:55:01 I bet not 22:55:03 aight then 22:55:14 no! 22:55:23 fixing 22:55:24 basically, no function other than d has an effect when applied until after its argument is evaluated 22:55:30 yes yes 22:55:34 I had a brainfart 22:55:34 :P 22:55:45 ok I fixed it and it still outputs ............. 22:55:50 oops 22:55:51 as in, . in place of the chars 22:55:56 what oops now 22:56:02 your comment 22:56:08 ah 22:56:24 ?. 22:56:24 # ^q ^p ^r `| `$r k 22:56:24 `k `k ``s`k | ``si `kk 22:56:31 argh 22:56:38 aha, it's ? 22:56:46 no 22:56:55 that's a table 22:56:58 nope, it is 22:57:01 it's ? in my bug 22:57:05 err 22:57:05 oh right 22:57:06 ? is my bug 22:57:25 agh! it still happens 22:57:26 * ehird_ digs further 22:57:31 the actual code is being put together from a table 22:57:43 eval' s@(_,Just c) k (Apply Bar a) = eval' s k (Apply a (Dot c)) 22:57:44 those are like key and value part 22:57:47 hmm, nah 22:57:50 that's correct 22:58:06 um no 22:58:15 oh, right 22:58:19 the argument could change |s state 22:59:06 http://bethewumpus.sourceforge.net 22:59:07 fun 22:59:14 * AnMaster is downloading it atm 22:59:15 oklopol, i dont believe ehird is infact a girl 22:59:42 i believe that the evidence leaves no other possibility open! 23:00:33 if ehird is a girl she must have very small boobs! 23:00:35 oerjan: the self interpreter works 23:00:40 yes well 23:00:42 and actualyl seems to have very little overhead 23:00:47 * oerjan bounces around 23:00:48 i.e., it's only a few times slower than the actual interp 23:00:59 ehird_: i know 23:01:08 you optimized it? :P 23:01:28 no, but it uses a very simple encoding of unlambda into itself 23:01:33 anyway, there's 111 lines of clear haskell including a nice command line interface that runs unlambda quickly and efficiently 23:01:39 a job well done 23:01:59 yay for science 23:02:15 ehird_, pastebin it? 23:02:21 AnMaster: First, I'm going to bot it. 23:02:27 ehird_, why? 23:02:32 Because IRC bots are mandatory. 23:02:34 To confuse people, the prefix will be `. 23:02:34 yeah 23:02:36 `i 23:02:37 ``ii 23:02:38 haha 23:02:44 heh 23:02:44 genius 23:02:47 The unlambda programmers in the audience have now all died of shock 23:02:47 o 23:02:47 o 23:02:56 `oo 23:03:04 ehird_: also you should check e. it's the only command my interpreter doesn't use iirc :D 23:03:10 ````ooo`ooo 23:03:12 oerjan: e works, I think 23:03:56 ehird_, in that case, you should bot your haskell OS when you finished it :D 23:04:04 AnMaster: that would be rather difficult 23:04:09 PNG over IRC 23:04:13 * oklopol is going to start reading rwh on monday! 23:04:25 mv: `unlambda.hs' and `Unlambda.hs' are the same file 23:04:28 ehird_, well the text console only 23:04:32 THis is the one bad thing about case insensitive filesystems 23:04:36 (Tools that don't know shit about them) 23:04:42 AnMaster: Well sure 23:06:37 hmm 23:06:44 one bad thing about haskell: you can't import a module that can act as a program 23:06:53 that is, I can't have Unlambda.hs compile to a program and still be importable 23:06:56 since it has to be named Main 23:07:01 and you can't import Main from inside another Main (duh...) 23:07:06 if __name__ == '__main__': 23:07:13 lament: troll 23:07:20 why does it have to be named Main? 23:07:29 because you can give ghc multiple arguments 23:07:36 and it'll compile the one with the module Main. 23:07:57 ehird_: there is a --main-is flag though 23:08:08 oerjan: yeah but that's hack land 23:08:21 I'll just have Unlambda.hs, Main.hs and bot.hs 23:08:48 this seems to be yet more proof that haskell sucks 23:08:52 -!- impomatic has quit ("mov.i #1,1"). 23:09:01 lament: you're this far from my ignore list 23:11:37 -!- ehird_ has changed nick to eh. 23:11:39 -!- eh has changed nick to ehird. 23:12:01 impossible, you're not canadian! 23:14:40 dammit ghc, don't detect let loop = loop in loop 23:14:45 i'm trying to hang the program moron 23:14:54 i do not want to see: 23:14:57 % ./bot 23:14:57 bot: <> 23:15:01 BWAHAHAHA 23:15:06 if your halting checker is so clever MAYBE IMA GIVE YOU "P" 23:15:42 yay, 23:15:42 let complicatedLoop n = complicatedLoop (n+1) in complicatedLoop 1 23:15:44 works 23:15:52 ehird: how far? 23:16:02 lament: <- -> 23:16:09 that's pretty far 23:16:33 far out 23:17:16 -!- BeholdMyGlory has quit ("godnatt"). 23:19:10 haskell code is so pretty 23:19:12 ok, bot coming through maybe 23:19:20 ASSUMING ALL GOES TO PLAN THAT IS. 23:19:26 WHICH IT ISN'T 23:19:40 NOW IT IS. PROBABLY. 23:19:45 -!- unlambda has joined. 23:19:48 :D 23:19:52 unlambda: you don't do anything yet 23:19:53 but that's okay. 23:20:32 haskell code is disgusting, it makes me puke 23:20:36 ``.?i 23:20:42 oerjan: "you don't do anything yet" 23:20:45 case in point 23:20:52 40 LET I =: I + 1 23:20:52 50 IF I <> 100000000 THEN 30 23:20:56 ugh 23:20:56 lament: haha 23:21:00 oerjan: also, howdya think I should handle input? 23:21:03 I DON'T BELIEVE YOU 23:21:10 I can't split on any character because of . and ? and that crap 23:21:13 hmm wait 23:21:16 I could run parsec on it, then get the rest 23:21:17 maybe 23:21:54 should be ok for a bot 23:21:59 no interactivity 23:21:59 lament, so what functional language do you prefer? 23:22:08 AnMaster: he's trolling/joking 23:22:12 AnMaster: lol 23:22:14 that code is basic in haskell 23:22:21 oerjan: naw, I wanna test IO 23:22:36 ehird, is he joking when he says he hate haskell? 23:22:41 AnMaster: kind of. 23:22:45 oh? 23:22:47 oerjan: admittedly currently my interp only does stdin/stdout IO 23:22:49 but I can change that 23:22:51 hmm 23:22:55 well then parsec is hard 23:22:56 maybe I could split on some arbitrary character 23:23:01 and just, like, don't use that 23:23:01 :D 23:23:03 ehird, there should be a bottifier 23:23:21 AnMaster: Haskell is the best programming language. 23:23:30 Except when you actually want to achieve something. Then use Python. 23:23:36 ehird, it would be some LD_PRELOADed thingy to redirect stdin/stdout to irc, with the needed parsing 23:23:41 lament is just pissy about sdl. 23:23:45 and ping handling and such 23:23:46 AnMaster: my interp loads from a file. 23:24:54 LD_PRELOAD=bottifier.so BOTTIFIER_SETTINGS="server=irc.freenode.net;channel=#esoteric;nick=unlambda;ident=unlambda;realname=unlambda;activator=` 23:24:57 or suc 23:25:10 congrats, in the time it took you to write that I could have finished this bot 23:25:11 :p 23:25:17 AnMaster: that doesn't handle the fact that: 23:25:21 1. my interp loads from a file 23:25:23 ehird, yeah it would be harder 23:25:26 2. you can't split on an arbitrary characters 23:25:26 ehird, hm true 23:25:34 this is domain specific enough that your idea is stupid. 23:25:37 also, why ld_prelude 23:25:43 why not, say, oh I don't know, a bidirectional pipe? 23:25:57 ehird, you could do that too, but it would work better on non-linux :P 23:26:16 and be less fun 23:37:22 -!- unlambda has quit (Remote closed the connection). 23:38:09 oerjan: it's getting a bit ugly with custom IO functions :( 23:38:09 oh well 23:42:14 oerjan: now I have to give UL a Show instances :( 23:42:15 *instance 23:42:53 at this rate you'll end up with as long a program as mine... 23:43:06 indeed, but mine is easier to read and I think faster 23:43:08 but whatever 23:43:14 what's important is bottiness 23:43:41 why do you need a Show instance? 23:43:47 to show the result to irc 23:44:12 i suppose 23:46:00 what's the irc length limit? 23:46:42 meh 23:46:45 400 chars will do 23:48:47 Whoah, I think I finally understand monads! 23:48:50 argh 23:48:56 but not how to paste 23:49:30 hah 23:49:57 "Whoah, I think I finally understand monads!" - "That's indigestion. It will pass." 23:50:06 (reddit comments) 23:50:23 :DD 23:50:59 okay 23:51:00 who wants 23:51:04 BOTTACULARITY 23:51:18 no one knows 23:51:36 because we don't know what the hell that means 23:51:39 i don't understand monads :( 23:52:35 why are monads interesting to category theory? 23:53:06 supermonad 23:53:09 heck if i know 23:53:23 except every pair of adjoint functors give a monad 23:53:25 wtf: 23:53:26 pULWithInput :: Parser (UL,String) 23:53:27 pULWithInput = 23:53:29 do r <- pUL 23:53:31 (do char '!'; i <- getInput; return (r,i)) 23:53:33 <|> (do eof; return (r,"")) 23:53:35 oerjan: in the latter one, r isn't in scope 23:53:37 what gives 23:53:41 and every monad comes from at least one such pair 23:53:44 pULWithInput <<< is the p hungarian notation? 23:53:50 oklopol: yeah, for parser 23:53:53 since it's clash 23:53:56 *it'd 23:53:58 in Unlambda 23:54:01 so I just did it on the rest too 23:54:03 ehird: indentation error 23:54:11 oerjan: ff 23:54:14 how am I meant to indent that 23:54:38 add a bit space before <|> 23:54:59 -!- leeguy92 has quit (Connection timed out). 23:55:37 incidentally, "pul" means "fuck" in norwegian 23:56:02 oh 23:56:05 good to know 23:56:48 fuck with input 23:56:49 :D 23:56:57 especially for swedes. in swedish it means something completely innocious. 23:57:06 *innocuous 23:57:25 bot: bot.hs:56:8-50: Irrefutable pattern failed for pattern Data.Maybe.Just (Network.IRC.Base.Message _ cmd args) 23:57:29 Bollocks. 23:57:49 -!- psygnisfive has quit (Remote closed the connection). 23:58:46 -!- unlambda has joined. 23:58:48 `i 23:58:53 ;_; 23:59:03 -!- unlambda has quit (Remote closed the connection). 23:59:17 -!- unlambda has joined. 23:59:18 `i 23:59:30 -!- unlambda has quit (Remote closed the connection). 23:59:49 Test time 23:59:57 -!- unlambda has joined.