00:00:19 Because if you do it's just equivalent to whatever the fancy name for boolean circuits is. 00:00:33 wow 00:00:35 i can nand 00:00:39 that Yourself guy is a douche 00:00:47 quintopia: ? 00:00:53 oerjan: BrAiNfucK, doubling as a subtle dig against the financial industry. 00:00:54 oh on the forum thing 00:01:01 "Then you're not doing it because you want to use it, you're just doing it to waste time. Not that there's anything wrong with doing that for the sake of doing it, it's just often a very bad decision in terms of productivity." 00:01:07 ‫kcufniarb 00:01:11 fizzie: hey i didn't notice that 00:01:15 -!- elliott has set topic: Being in this channel is a very bad decision in terms of productivity. | http://tunes.org/~nef/logs/esoteric/?C=M;O=D. 00:01:19 "Reinventing the wheel is rarely a productive use of anyone's time." 00:01:20 (SYNCHRONICITY) 00:01:23 [[I don't know what makes you think having no keywords will make it easier to parse. It'd make it much, much harder, at least from my experience :/]] — Madk 00:01:58 PUNCTUATION: FUNDAMENTALLY HARDER TO PARSE 00:02:45 it depends on the language. sometimes keywords decrease ambiguity by making the language regular or at least context-free 00:03:16 elliott, hey, being in this channel *is* a bad decision in terms of productivity. 00:03:19 Just ask cpressey. 00:03:45 ALSO: Underload in dc. 00:03:56 Interesting? 00:04:06 THAT MEANS IT'S TC 00:04:14 * oerjan slithers back into the corner 00:04:25 dc isn't TC :P 00:04:28 Well. 00:04:31 If you use the register stacks. 00:04:33 Then maybe 00:04:42 elliott: IF IT CAN DO UNDERLOAD THEN IT IS 00:04:56 oerjan: NOT IF IT'S RESTRICTED UNDERLOAD 00:05:09 elliott, LET'S SUPPOSE THAT SEGFAULTS DO NOT EXIST 00:05:10 hoover, i think you're correct, this set of gates makes up a boolean circuit 00:05:16 RESTRICTED? YEAH LEAVE OUT a*! OH WAIT 00:05:18 *J. Edgar Hoover, 00:05:24 If you're going to abbreviate at least get it right! 00:05:28 elliott, *Herbert Hoover 00:05:33 oerjan: LAWLS 00:05:34 -!- yorick has quit (K-Lined). 00:05:40 `addquote * yorick has quit (K-Lined) 00:05:51 Think #freenode will know why he was K-lined? :P 00:06:31 Phantom_Hoover: *W. H. "Boss" Hoover 00:06:36 317) * yorick has quit (K-Lined) 00:08:52 Well, fool that I am, I did enquire in #freenode as to whether they disclosed reasons for K-lines. 00:08:57 They said no. 00:09:34 alas, poor yorick 00:09:55 I knew him, Horatio! 00:09:59 -!- Zuu has quit (Read error: Connection reset by peer). 00:10:35 there's some channel here where you could be kicked for making shakespearean references around him...which was that? 00:10:54 #boring 00:11:01 On a real IRC server "/stats K" would give you a list of K-lines, including the reason-message, but of course not on freenode. 00:11:05 quintopia, re that Yourself guy, I am actually inclined to agree with him. 00:11:20 Imperative esolangs are no longer fun. 00:11:39 he got more reasonable on the second page 00:12:00 fizzie: Is it just me, or are freenode convinced that they're the only IRC network that matters out there? 00:12:05 Thus their complete ignorance of all conventions. 00:12:34 Phantom_Hoover: i disagree 00:12:48 quintopia, hm? 00:12:48 there are fun imperative esolangs still being invented 00:13:17 quintopia, but every other esolang is one, and novelty is stretched thin. 00:13:20 usually it's because they involve some sort of unusual control flow that requires funky ways of thunking 00:14:21 i agree that the "here's some instructions! string them together in order!" is usually pretty boring 00:14:36 -!- Zuu has joined. 00:14:36 -!- elliott has quit (Read error: Connection reset by peer). 00:14:37 but that doesn't mean imperative esolangs are dead 00:14:58 -!- elliott has joined. 00:15:55 Why do email addresses allow comments? 00:16:27 so that they can allow nested comments 00:16:28 -!- elliott has quit (Read error: Connection reset by peer). 00:16:42 quintopia: hmm, would you consider Forte imperative? 00:16:51 it's definitely /disguised/ as imperative, but I'm not sure that that means it is 00:16:58 ais523, uh 00:17:09 Sgeo_: I may not have been being entirely serious 00:17:20 Ok, thoght so, wasn't sure 00:18:28 -!- elliott has joined. 00:18:55 ping 00:18:57 ping ping 00:19:32 ais523: Forte would be more fun if every command was a number. 00:19:39 ouch 00:19:42 ais523: i can't really see exactly how the control flow in it works. 00:19:43 With all the same redefinition applying. 00:19:46 it wouldn't make too much difference, actually 00:19:48 quintopia: by changing numbers 00:19:53 ais523: But it would be more fun! 00:19:54 because you just wouldn't change the numbers in question at all 00:19:56 DUH 00:19:59 ais523: you'd have to 00:19:59 somehow 00:20:19 making a large Forte program normally involves reserving a block of small integers and deciding in advance that you won't change them at all 00:21:15 ais523: bring thutubot back! 00:21:23 -!- augur has quit (Ping timeout: 250 seconds). 00:21:44 -!- coppro has quit (Quit: leaving). 00:22:00 it's definitely /disguised/ as imperative, but I'm not sure that that means it is <-- shades of Feather? 00:22:10 -!- thutubot has joined. 00:22:12 Feather isn't disguised as anything, as far as I know 00:22:23 also, I've completely forgotten the commands for this thing 00:22:25 let me look at the source 00:22:29 +haskell 2+2 00:22:31 ,haskell 2+2 00:22:32 -!- coppro has joined. 00:22:34 -haskell 2+2 00:22:37 .haskell 2+2 00:22:41 £haskell 2+2 00:22:42 + is the command character 00:22:46 +haskell 2+2 00:22:49 ais523: no i mean forte might have shades of feather 00:22:50 doesn't it talk to \bot for that? 00:22:59 oerjan: anything self-modifying has shades of feather 00:23:00 it does, but I fear it's broken 00:23:05 with its changing unchanging things 00:23:13 ais523: can you paste the code again? :-P 00:23:14 it did send the /msg to lambdabot, by the look of it 00:23:35 and with the right syntax 00:23:46 but lambdabot decided not to reply for whatever reason 00:24:13 ais523: didn't lambdabot sometimes fail with unregistered nicks 00:24:14 wow, thutu is whitespace-sensitive? 00:24:19 oerjan: might be 00:24:20 elliott: yep 00:24:25 +hello 00:24:25 Hello, ais523! 00:24:25 > 2+2 00:24:26 4 00:24:26 4 00:24:30 like, indentation-sensitive? 00:24:32 yep 00:24:36 +hello 00:24:36 Hello, elliott! 00:24:37 wtf 00:24:39 wow, fast 00:24:39 just because I hate it doesn't mean I won't do it 00:24:39 +hello 00:24:39 Hello, elliott! 00:24:42 +hello 00:24:42 Hello, elliott! 00:24:43 > 5 00:24:44 5 00:24:44 5 00:24:47 uh uh 00:24:49 oerjan: it relies on lambdabot to evaluate haskell 00:24:50 :P 00:24:50 +hello 00:24:51 Hello, Phantom_Hoover! 00:24:54 +haskell 7+9 00:25:07 the +haskell was a joke 00:25:12 elliott: yeah but it resends _every_ lambdabot message it sees, even those here in the channel 00:25:16 BEST. COP-OUT. EVER. 00:25:18 oerjan: it's written in thutu, give it a break 00:25:22 @echo Yo. 00:25:22 echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486", msgCommand = "PRIVMSG", msgParams = ["#esoteric", 00:25:22 ":@echo Yo."]} rest:"Yo." 00:25:22 echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "Phantom_Hoover!~phantomho@unaffiliated/phantom-hoover/x-3377486", msgCommand = "PRIVMSG", msgParams = ["#esoteric", 00:25:23 ":@echo Yo."]} rest:"Yo." 00:25:23 PRIVMSG lambdabot :@run 7+9 00:25:27 ... 00:25:29 X-D 00:25:39 @run 7+9 00:25:40 16 00:25:40 16 00:25:57 oerjan: hm you know my regexp language? 00:26:03 +ul (:aSS):aSS 00:26:03 (:aSS):aSS 00:26:07 elliott: not on the spot... 00:26:10 that one isn't cheating, btw 00:26:12 oerjan: where {a,b,c} -> replace b with c in a and repeat? 00:26:14 oerjan: where those are three lines 00:26:15 it's an actuall Underload-in-Thutu 00:26:17 *actual 00:26:17 ais523: so can it run my turing machine? >:) 00:26:23 and if you end up with anything other than three lines, print it 00:26:24 you implemented it 00:26:25 oerjan: likely very slowly 00:26:33 and I think there's a timeout which doesn't display a message 00:26:42 at least I hope there is, because otherwise you'll use up all my CPU and memory for no reason 00:26:54 elliott, incidentally, why don't you like phpBB? 00:26:56 +ul (:^):^ 00:26:57 ...out of time! 00:27:24 Phantom_Hoover: I don't like that style of forum in general 00:27:25 anyway: http://sprunge.us/KEEC?thutu 00:27:29 "?thutu" 00:27:30 classic 00:27:35 * ais523 feels confident in adding the query param in the knowledge it won't work 00:27:37 elliott, I agree, actually... 00:27:49 heh, it just added line numbers and nothing else 00:27:58 The noise:signal ratio is way too high, for a start. 00:28:25 Phantom_Hoover: oh, I'm only a member of two, and one of them is private (the other semi-private) so that isn't really an issue 00:28:30 but they're just really badly-designed in general 00:28:31 I doubt that'd matter in an esolangs forum 00:28:34 compared to email, for instance 00:28:41 the issue is that a forum just isn't the right place for that sort of thing 00:28:44 I like the IRC+wiki combination 00:28:49 elliott, no, I mean in terms of UI. 00:28:55 Phantom_Hoover: Exactly 00:29:04 They tend to have huge swathes of the screen devoted to ego :) 00:29:26 +quit 00:29:38 hmm, +quit seems to be broken 00:29:38 And a stupid box. And they don't have nice support for hierarchical comments. 00:29:50 oh, I know why 00:29:53 it's because we're on a different ircd 00:30:01 it's set to only allow +quit from an identified ais523 00:30:01 ais523: a different, shitty ircd 00:30:08 but the syntax for being identified is different 00:30:13 -!- thutubot has quit (Remote host closed the connection). 00:30:15 so far, it has been: less reliable; more annoying (throttling); ... 00:30:35 the reliability recently doesn't count, Freenode were being DDOSed 00:30:53 ais523: no, apart from that 00:30:56 ais523: yesterday, we had massive desync 00:31:03 I could talk to zzo38 but neither of us could see pikhq_'s messages, only clog could 00:31:07 upon reconnecting, i could talk to pikhq_ but not zzo38 00:31:12 wow, that's confusing 00:31:14 then everyone saw /my conversation with zzo38/ -- including me -- 00:31:16 repeated into the channel 00:31:18 including me quitting 00:31:18 like a semi netsplit 00:31:20 Dang that was a tedious proof. 00:31:26 insane crap like that kept happening for the next 20 minutes or so 00:31:30 it was ridiculous 00:31:34 "Prove that if ad-bc≠0, then the reduced row echelon form of [[a,b],[c,d]] is [[1,0],[0,1]]." 00:31:48 IRCNet is the one run by psychopaths, yes? 00:32:00 OK, maple cream soda syrup is made. 00:32:03 It is BLACK. 00:32:14 Gregor: Seriously I want to buy some of this from you 00:32:17 +ul (( )S)(^!!)(((~:^~(~)S(^!!)~(^)~:^^)(!~(:^!^)~^^^)(!!~(:^!!^)~^^!^))(!(~:^~(^!!)~:^^)(!~(:^!^)~^^!^)(!!~(:^!^)~^^^))(!!(~(:^!!^)~^^!!^)(!(:)S(^!)~:^^)(!!(~)S(^)~:^^))):^^!^!!^ 00:32:18 Phantom_Hoover: That's EFnet. 00:32:28 oerjan: shall I bring thutubot back so you can do that? 00:32:30 IRCnet ... might be, I guess, but EFnet is the one known for batshit insanity. 00:32:31 elliott: It costs me about the same as it would to buy normal soda :P 00:32:35 elliott: E_NOTSHIPPABLE 00:32:49 Gregor: ;_; 00:32:50 -!- thutubot has joined. 00:32:52 Gregor: But it sounds so delicious 00:32:54 oerjan: try again now 00:32:57 elliott: IT SO IS 00:32:57 And I want to give you millions of pounds for it 00:33:59 -!- lionod420 has joined. 00:33:59 -!- elliott has quit (Read error: Connection reset by peer). 00:34:27 -!- elliott has joined. 00:34:28 +ul (( )S)(^!!)(((~:^~(~)S(^!!)~(^)~:^^)(!~(:^!^)~^^^)(!!~(:^!!^)~^^!^))(!(~:^~(^!!)~:^^)(!~(:^!^)~^^!^)(!!~(:^!^)~^^^))(!!(~(:^!!^)~^^!!^)(!(:)S(^!)~:^^)(!!(~)S(^)~:^^))):^^!^!!^ 00:34:31 : ~ ~: ~~ ~:: ~:~ ~~: ~~~ ~::: ~::~ ~:~: ~:~~ ~~:: ~~:~ ~~~: ~~~~ ~:::: ~:::~ ~::~: ~::~~ ~:~:: ~:~:~ ~:~~: ~:~~~ ~~::: ~~::~ ~~:~: ~~:~~ ~~~: ...too much output! 00:34:44 ok then 00:34:45 is that correct? 00:34:50 5 fucking cases. 00:34:52 -!- lionod420 has left (?). 00:34:53 certainly looks so 00:34:54 5 fucking row reductions. 00:34:56 Bleck. 00:35:04 At least it wasn't *hard*. :P 00:35:05 lol @ too much output emulation 00:35:07 does it just talk to fungot? >:D 00:35:08 the expanded version doesn't fit on an irc line, of course 00:35:18 and is much slower 00:35:23 elliott: no, if you compare thutubot and fungot, you'll see the errors are slightly different and happen at different times 00:35:27 SUUUUURE 00:35:38 ^ul (( )S)(^!!)(((~:^~(~)S(^!!)~(^)~:^^)(!~(:^!^)~^^^)(!!~(:^!!^)~^^!^))(!(~:^~(^!!)~:^^)(!~(:^!^)~^^!^)(!!~(:^!^)~^^^))(!!(~(:^!!^)~^^!!^)(!(:)S(^!)~:^^)(!!(~)S(^)~:^^))):^^!^!!^ 00:35:51 also, thutubot only checks "too much output" after a full S instruction 00:35:53 meaning you can trick it 00:36:00 ais523: i did the expanded version in your js interpreter and it took several minutes to print enough that i could see it was working 00:36:01 oerjan: so wait, what was the minimal set again? 00:36:12 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc)S 00:36:12 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc 00:36:12 elliott: ~:()^ 00:36:17 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc)S 00:36:17 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc 00:36:20 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc)S 00:36:21 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc 00:36:23 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc)S 00:36:23 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc 00:36:28 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:28 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:36:30 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:30 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:36:33 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:33 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:36:36 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:36 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:36:40 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:40 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:36:43 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:43 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:36:46 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:46 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:36:48 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:48 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:36:51 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:51 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:36:55 mwahahaha 00:36:57 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:36:57 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:37:01 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:37:01 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:37:06 oh come on 00:37:08 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:37:08 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz ...too much output! 00:37:14 X_X 00:37:16 how long are irc messages these days! 00:37:19 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:37:19 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcx 00:37:24 excellent 00:37:26 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz)S 00:37:26 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyz 00:37:31 +ul (abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyzQUIT)S 00:37:31 abcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcxyzQ 00:37:38 darn :D 00:38:52 it won't overflow from one line to the next, I don't htink 00:39:55 fizzie: we have no fungot 00:40:33 elliott: wow you've been spamming up my backlog 00:40:40 ais523: sorry! 00:41:01 anyway, I'm pretty surprised it got that Underload turing machine so fast 00:41:06 elliott: you could at _least_ have used a binary search 00:41:09 given how fundamentally inefficient Thutu is 00:41:22 oerjan: PSHT 00:41:39 ais523: the turing machine with ! is pretty efficient i should think 00:41:47 Thutu's O(n) behind anything else 00:41:55 as it has to regex the whole of memory every time it runs a command 00:42:42 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 00:43:44 it won't overflow from one line to the next, I don't htink <-- i think that may be freenode servers cutting it off, i've noticed they started doing that, i think after the ircd switch 00:44:21 they always cut it off, even beforehand 00:44:30 wrapping's done by the client, I thought 00:44:34 indeed 00:44:38 i had the impression it changed to be more annoying 00:44:59 maybe by irssi no longer understanding how long lines it could send 00:46:09 that cutoff message is 421 chars not including the nick 00:46:52 poor irssi 00:47:05 ais523: now you've got me thinking about disguises... 00:47:31 for instance, a functional language where the only operation is destructive assignment 00:47:36 hm the server's initial messages includes TOPICLEN=390 but nothing for general messages 00:48:15 it's always 510 minus header 00:48:51 oh 00:49:02 but guessing the length of the header can be tricky 00:49:56 hmm 00:50:03 you know, the markov bots in this channel aren't nearly fun enough! 00:50:13 by fun i mean advanced 00:50:14 obviously 00:50:27 yeah talking behind fungot's back when it isn't here, how civilized 00:51:07 :D 00:51:11 hm 00:51:15 *hmm 00:51:18 I know megahal uses two markov chains 00:51:22 one going forwards from the topic, one backwards 00:51:25 to make a complete sentence 00:51:29 but how does it know what to start with 00:51:30 ? 00:51:34 obviously it doesn't take the complete input line 00:52:36 PSHT 00:52:36 * Phantom_Hoover → sleep 00:52:38 WHY AREN'T YOU ALL EXPERTS 00:52:38 -!- Phantom_Hoover has quit (Remote host closed the connection). 00:53:03 hm darn 00:53:09 i was about to say that we DEFINITELY need a bot written in haskell here 00:53:13 but lah de dah 00:53:14 mr. lambdabot 00:53:16 is fagging up the place 00:53:17 oerjan: ban it 00:53:30 I like lambdabot 00:53:34 we can have two haskellbots if needed 00:53:36 i know i just want a niche 00:53:47 ok fine i'll write a bot. 00:53:57 first things first, IRC parser. 00:54:20 -!- poiuy_qwert has joined. 00:54:32 Stan Jones should totally be campaigning against quackery 00:54:55 Nope 00:54:58 elliott: YOU FORGOT TO SIGN 00:55:01 "Jones continues to promote the use of colloidal silver as a home remedy. 00:55:01 " 00:55:02 oerjan: wat 00:55:10 YOUR MESSAGE 00:55:14 ON THE WIKI 00:55:23 ais523: BAN HIM 00:55:30 * Sgeo_ hits elliott with |x|/x 00:55:57 @hoogle Parser 00:55:57 module Language.Haskell.Parser 00:55:57 Text.Parsec.ByteString type Parser = Parsec ByteString () 00:55:57 Text.Parsec.String type Parser = Parsec String () 00:55:57 module Language.Haskell.Parser 00:55:57 Text.Parsec.ByteString type Parser = Parsec ByteString () 00:55:57 Text.Parsec.String type Parser = Parsec String () 00:56:02 @hoogle Parser Char a 00:56:02 Did you mean: :: Parser Char /count=20 00:56:02 Text.ParserCombinators.Parsec.Char type CharParser st = GenParser Char st 00:56:02 Did you mean: :: Parser Char /count=20 00:56:02 Text.ParserCombinators.Parsec.Char type CharParser st = GenParser Char st 00:56:02 Sgeo_: x/|x|, he might be complex 00:56:05 @hoogle Parser String 00:56:05 Did you mean: :: Parser String /count=20 00:56:05 No results found 00:56:06 Did you mean: :: Parser String /count=20 00:56:06 No results found 00:56:09 SHUT UP THUTUBOT 00:56:28 Ok, so Stan Jones is an idiot 00:56:41 prefix = User <$> many1 (noneOf "!") <*> (char '!' *> many1 (noneOf "@")) <*> (char '@' *> many1 (noneOf " ")) 00:56:46 oerjan: please make that less horrifying. thanks. 00:57:00 argh 00:57:02 @hoogle (m a, m b, m c) -> m (a,b,c) 00:57:03 No results found 00:57:03 No results found 00:57:05 worth a try :-P 00:57:16 @hoogle Char -> Parser String 00:57:17 No results found 00:57:17 No results found 00:57:20 @hoogle Char -> Parser Char 00:57:21 No results found 00:57:21 No results found 00:57:28 ok fuck this i'l lcheck the docs 00:57:30 *i'll check 00:57:40 elliott: liftM3 (,,) 00:57:55 oerjan: doesn't help, there's no uncurry3 :D 00:57:59 :t liftM3 00:57:59 ah 00:58:00 forall a1 a2 a3 r (m :: * -> *). (Monad m) => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r 00:58:00 forall a1 a2 a3 r (m :: * -> *). (Monad m) => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r 00:58:03 aha 00:58:04 liftM3 User 00:58:19 oerjan, what does x/|x| do to duals? 00:58:33 Sgeo_: what is a dual? 00:58:36 liftM3 User 00:58:37 (many1 (noneOf "!")) 00:58:37 (char '!' *> many1 (noneOf "@")) 00:58:37 (char '@' *> many1 (noneOf " ")) 00:58:37 good enough 00:58:39 -!- augur has joined. 00:58:58 oerjan, forget the symbol, but (dual)^2 = 0 00:59:05 http://en.wikipedia.org/wiki/Dual_numbers 00:59:23 elliott: heh i thought everyone wanted to use <*> _instead_ of the liftM* functions 00:59:37 oerjan: that would be more ugly in this case, no? :) 00:59:52 indeed it so seems 01:00:54 char ':' *> 01:00:54 try (liftA3 User 01:00:54 (many1 (noneOf "!")) 01:00:54 (char '!' *> many1 (noneOf "@")) 01:00:54 (char '@' *> many1 (noneOf " "))) 01:00:55 <|> Server <$> many1 (noneOf " ") 01:00:57 yay uglies! 01:01:06 augh, that doesn't even work, but it did a second ago 01:01:56 @hoogle [m a] -> m [a] 01:01:56 Prelude sequence :: Monad m => [m a] -> m [a] 01:01:56 Control.Monad sequence :: Monad m => [m a] -> m [a] 01:01:56 Language.Haskell.TH.Syntax sequenceQ :: [Q a] -> Q [a] 01:01:56 Prelude sequence :: Monad m => [m a] -> m [a] 01:01:56 Control.Monad sequence :: Monad m => [m a] -> m [a] 01:01:56 Language.Haskell.TH.Syntax sequenceQ :: [Q a] -> Q [a] 01:01:58 no wiat 01:01:59 *wait 01:02:00 @hoogle [m a] -> m a 01:02:00 Control.Monad msum :: MonadPlus m => [m a] -> m a 01:02:00 Test.QuickCheck oneof :: [Gen a] -> Gen a 01:02:01 Data.IntMap unions :: [IntMap a] -> IntMap a 01:02:01 Control.Monad msum :: MonadPlus m => [m a] -> m a 01:02:01 Test.QuickCheck oneof :: [Gen a] -> Gen a 01:02:01 Data.IntMap unions :: [IntMap a] -> IntMap a 01:02:06 gah what is it again 01:02:48 ah, asum 01:02:49 :t asum 01:02:50 Not in scope: `asum' 01:02:50 Not in scope: `asum' 01:02:58 from Data.Foldable 01:03:22 Hmmm 01:03:28 Maple cream soda: Not as good as I'd hoped. 01:03:33 Gregor: :< 01:04:23 It's not bad, but I'd rather just have normal cream soda :P 01:04:34 elliott: i think the traditional Parsec function is choice 01:04:36 I put maple syrup on EVERYTHING 01:04:37 oerjan: indeed 01:04:50 oerjan: it occurs to me that I should be using attoparsec, because irc messages might not be valid utf-8 01:04:56 oerjan: otoh, i'm probably justified in just dropping ones that aren't :) 01:05:12 but then i think the io system cannot recover from invalid utf-8. 01:05:16 so i'm going to have to use binary IO anyway. 01:05:48 well Parsec is capable of parsing more than Strings 01:06:15 oerjan: yeah. but i don't think there's built-in bytestring support? 01:06:30 i don't know what they've added recently 01:07:11 Attoparsec is FASHIONABLE, anyway! 01:07:26 elliott: also i vaguely recall the io system can be set to a different encoding 01:07:37 you can set it to be all binary about things 01:07:44 that too 01:07:44 but. 01:08:13 oerjan: which just sets the encoding to latin-1 btw :P 01:08:25 perhaps 01:08:30 that too. perhaps. 01:11:03 Odd that it wouldn't be able to recover from invalid UTF-8... 01:11:11 Given that it takes effort to make that happen. 01:11:14 pikhq_: well it causes an exception. 01:11:20 so i'm not sure getLine would do something sane after that 01:11:40 They literally did go to extra work to make it not recover from invalid UTF-8? 01:11:43 hm that would be even worse for getContents, i assume... 01:11:43 -!- BeholdMyGlory has quit (Remote host closed the connection). 01:11:50 pikhq_: not really, it's just that invalid utf-8 -> exception 01:11:59 and after an exception i wouldn't expect it to e.g. discard the rest of the line as you'd want 01:12:03 elliott: Yes, and you have to do extra work to cause that. 01:12:09 pikhq_: as opposed to what? 01:12:13 pikhq_: the whole point is that it interprets the unicode 01:12:21 and puts it into (utf-32) Chars 01:13:21 elliott: Half the point of UTF-8's design is to make it literally automatic to recover from invalid UTF-8. 01:13:29 i don't think you quite understand. 01:13:35 hGetLine cannot possibly succeed on a line with invalid utf-8. 01:13:41 because it returns a String 01:13:42 which is [Char] 01:13:47 and each Char is a unicode codepoint 01:13:51 so when it encounters invalid UTF-8 01:13:54 it /cannot/ return a String 01:13:57 because the result would not be valid 01:13:59 thus, it has to trigger an error 01:14:00 If you want to make it "correct", replace it with the replacement character. 01:14:02 * Sgeo_ hits elliott in the head with a UTF-8 BOM 01:14:03 Actually I think there's too much maple. 01:14:15 pikhq_: that would not be an accurate hGetLine function. 01:14:18 It's overpowering. 01:14:24 Gregor: NEVER 01:14:38 Not like he can hear me 01:14:59 Oh, sorry, I should shaddup. 01:15:08 pikhq_, wha? 01:15:13 "The Unicode Standard requires decoders to '...treat any ill-formed code unit sequence as an error condition. This guarantees that it will neither interpret nor emit an ill-formed code unit sequence.'" 01:15:13 -!- elliott has quit (Read error: Connection reset by peer). 01:15:18 Oh 01:15:39 -!- elliott has joined. 01:15:45 Oh, sorry, I should shaddup. 01:15:47 pikhq_: ? 01:15:49 * Disconnected (Connection reset by peer). 01:15:53 See log. 01:16:07 17:15:13 "The Unicode Standard requires decoders to '...treat any ill-formed code unit sequence as an error condition. This guarantees that it will neither interpret nor emit an ill-formed code unit sequence.'" 01:16:08 lawl 01:16:30 17:14:02 * Sgeo_ hits elliott in the head with a UTF-8 BOM 01:16:34 UTF-8 BOM. 01:16:40 congratulations, you're eligible for the special olympics 01:16:43 Sgeo_: UTF-8 BOM is entirely valid and semantically meaningless. 01:16:50 elliott: UTF-8 BOM is entirely valid and semantically meaningless. 01:16:56 pikhq_, oh, thought it was invalid 01:16:57 pikhq_: And Special Olympics-worthy. 01:17:04 elliott: Yes. And Microsoft does it. 01:17:07 elliott, my failed joke was that there's no such valid thing 01:17:10 precisely 01:17:15 And I wasa mistaken 01:17:23 *was 01:17:45 Literally the only reason to *ever* use it is if you want some in-channel signalling about whether or not a string is UTF-8. 01:17:53 And even then, it's pretty stupid. 01:18:19 -!- Mathnerd314 has joined. 01:19:31 Not to mention that it ruins programs that aren't designed around Unicode, but aren't UTF-8 incompatible. 01:20:20 Obvious example: it breaks shebang. 01:20:39 Shebangggggggggggggggggg 01:25:11 UTF-8 incompatible? 01:25:24 Oh, >127 stuff 01:28:51 -!- iconmaster has quit (Quit: Bersirc 2.2: Looks, feels and sounds (?!) different! [ http://www.bersirc.org/ - Open Source IRC ]). 01:31:40 Glaaah, this is the broken. 01:31:50 Perhaps oerjan is to blame. 01:32:09 latin-1 encoding should work fine for irc anyways? 01:32:18 -!- pikhq_ has changed nick to pikhq. 01:32:26 oerjan: erm we use utf-8 plenty :D 01:32:28 and latin-1 never 01:32:34 oerjan: 不本当! 01:32:43 pikhq: i see only blanks 01:32:55 oerjan: Not my fault your client is broken. 01:32:58 elliott: i mean ghc's latin-1 encoding, which doesn't delete anything 01:33:06 pikhq: only putty 01:33:07 oerjan: well right. but what if i want to, like, process things?! 01:33:15 oerjan: putty is fine, i strongly suspect your client 01:33:44 elliott: no, i can copy and paste the characters fine 01:33:53 oerjan: heh 01:33:57 elliott: It's irssi. 01:34:00 oerjan: try editing your connection settings, there may be an encoding property 01:34:02 pikhq: see what oerjan said 01:34:12 oerjan: Something is definitely borken. 01:34:18 What's your locale? 01:34:25 elliott: it is putty's not having suitable fonts 01:34:35 oerjan: does it not do fallback?hm 01:34:37 *fallback? hm 01:34:39 pikhq: dude he's on windows 01:34:39 pikhq: the error is not on irssi 01:34:51 or terminal 01:34:53 elliott: His client isn't. 01:35:06 stopbeing dense 01:35:17 pikhq: the problem is on the windows side 01:35:32 oerjan: Here's a nickle, kid. Get yourself a real OS. 01:35:32 putty refuses to use more than one font 01:36:04 and i have no font containing both european and oriental characters 01:36:36 Sure you do. MS Mincho, at a minimum. 01:36:41 (warning: MS Mincho SUCKS ASS) 01:36:52 and the fonts that i was suggested to download recently didn't help 01:37:02 pikhq: this is windows xp btw 01:37:06 If my browser were working, I'd google MS Mincho. It's not. What is it? 01:37:24 Yes. MS Mincho first shipped with Windows 3.1. 01:37:40 (though I think only for Japanese versions of the OS on not-NT) 01:38:01 Sgeo_: MS Mincho is a very, very old Japanese font. 01:38:14 pikhq: oh putty also refuses to use non-monospace fonts 01:38:16 As required by relevant JIS standards, it is also a Latin-1 font. 01:38:41 * Sgeo_ decides to learn Falcon 01:39:29 * Sgeo_ believes himself too out of it right now to incur permanent brain damage 01:39:33 pikhq: hm you were right, MS Mincho does work, though looking horribly 01:40:22 Actually, I just want to understand the monad debacle 01:40:58 oerjan: Told ya on both counts. 01:42:49 MS Gothic might be better 01:44:00 The Falcon homepage decided to show me an eyesore 01:44:22 MS Gothic also sucks. 01:44:30 Though less so for screen use. 01:46:37 Although maybe I just need to get used to the syntax 01:46:45 Many good languages may look like eyesores 01:47:34 argh it got even worse when i increased font size to something otherwise comfortable 01:47:35 And I just proved in #falcon that I'm too out of it to incur any braindamage 01:48:10 I conflated comprehensions with compatibility with for 01:49:31 -!- FireFly has quit (Quit: swatted to death). 01:49:48 oh wait somehow all the fonts were set to bold 01:49:48 Why am I secretly expecting to be amazed by Falcon? 01:51:53 d = [=>].comp( [0:6], 01:51:53 { n => [ 'a'/ n, n] } ) 01:52:09 Despite the hideousness of the above, they are not against syntactic sugar 01:52:25 Again, maybe my eyes need to adjust 01:53:18 jhj 01:54:23 oerjan: are you SURE putty doesn't do fallback? 01:54:32 I have MS Gothic font. 01:54:42 PuTTY only uses the font which is set. It will not switch to other fonts. 01:54:54 (I am using PuTTY now) 01:55:08 elliott: i am sure that i see blanks for japanese when i set the font to courier new 01:55:29 putty sucks then :P 01:55:50 I see the replacement boxes. But I can copy it to the clipboard and put in another program to make the Japanese text viewable. 01:56:32 zzo38: actually after i set putty to utf-8 i don't even see boxes, just a blank space, which is rather annoying 01:56:46 (sometimes no hint it's actually _there_) 01:57:12 well i didn't see boxes before either, but irssi showed question marks 01:57:22 Which is strange, since I can see the replacement boxes. It is set to UTF-8. 01:57:28 what font? 01:58:11 maybe it depends on font 01:58:43 Courier New 10 01:58:49 huh me too 01:59:37 However, I do not have antialiasing or cleartype turned on. 02:00:36 maybe my putty is too old, i don't think i've ever upgraded 02:01:14 oerjan: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe 02:01:15 yw 02:01:23 unless you used the installer: http://the.earth.li/~sgtatham/putty/latest/x86/putty-0.60-installer.exe 02:01:57 -!- Mathnerd314 has quit (Ping timeout: 276 seconds). 02:02:00 prefix :: Parser Prefix 02:02:00 prefix = do 02:02:00 char ':' 02:02:00 liftA3 User 02:02:00 (many1 (noneOf "!")) 02:02:00 (char '!' *> many1 (noneOf "@")) 02:02:02 (char '@' *> many1 (noneOf " ")) 02:02:04 <|> Server <$> many1 (noneOf " ") 02:02:06 *Main> parse prefix "" ":abc" 02:02:08 Left (line 1, column 5): 02:02:12 unexpected end of input 02:02:14 expecting "!" 02:02:16 oerjan: i've put try everywhere and it still ain't working :( 02:02:33 oh 02:02:34 now it works :D 02:02:49 -!- pikhq_ has joined. 02:03:22 hey pikhq 02:03:25 gimme a list of all irc commands in the spec 02:04:17 elliott: shouldn't that <|> be indented less than the do 02:04:26 oerjan: no. 02:04:30 oerjan: :foo is how server prefixes go 02:04:50 aha 02:04:51 um but do clients see those? 02:04:53 when I use *> it parses wron 02:04:54 g 02:04:55 instead of >> 02:05:02 oerjan: yes; ":server PING foo" for one 02:05:04 same for motd, etc. 02:05:06 NAMES lists 02:05:10 tons of shit 02:05:18 haskell needs a $ for operators 02:05:19 like 02:05:20 elliott: ah yes that annoyed me the other day, *> is fixity 4 while >> is 1 02:05:24 foo *>$ bar 02:05:25 :D 02:05:28 oerjan: indeed 02:05:36 oerjan: I just want to be agood anti-monadic citizen! 02:05:49 @hoogle f a -> f b -> f b 02:05:49 Control.Applicative (*>) :: Applicative f => f a -> f b -> f b 02:05:49 Prelude (>>) :: Monad m => m a -> m b -> m b 02:05:49 Control.Monad (>>) :: Monad m => m a -> m b -> m b 02:05:49 Control.Applicative (*>) :: Applicative f => f a -> f b -> f b 02:05:49 Prelude (>>) :: Monad m => m a -> m b -> m b 02:05:49 Control.Monad (>>) :: Monad m => m a -> m b -> m b 02:05:51 although my annoyment was trying to make a really awful haskell hack, so.. 02:05:59 oerjan: haha what were you trying to do? 02:06:09 -!- pikhq has quit (Ping timeout: 240 seconds). 02:06:47 elliott: i was trying to make an expression that gave different but valid results if replacing, hm what was it... 02:06:55 "This sentence is false" is like : x = x == false 02:07:02 STUNNING PHILOSOPHICAL THOUGHT FROM #HASKELL 02:07:21 elliott: ah replacing <- with < - 02:07:42 which is a paradox 02:07:42 paradox means our language and logic is broken 02:07:46 a paradox is an human infinite loop 02:07:55 WHY ARE YOU IN MY #HASKELL, GUEST NUMBER 24913 02:07:56 and i _almost_ had it if not for the fact <* was fixity 4 02:08:00 oerjan: hahaha 02:08:18 the fact that we interpret sentences that are broken means that language is broken 02:08:18 we should fix it, and math, and programming 02:08:30 (i considered redefining operators to be cheating) 02:08:42 it should not be possible to be able to fail to divide by 0 02:09:02 elliott: Alex? I'd consider Alex to actually be a legitimate instance of animal language. 02:09:09 yes, that one, Alex 02:09:41 would have been fun to talk to him 02:09:44 The most convincing bit being that Alex actually performed innovation with language. 02:10:08 pikhq_: yes. also it seems like he expressed his motions a lot more fluidly than the apes 02:10:09 foo *>$ bar <-- (foo *>)$ should work 02:10:09 (upon being shown an apple for the first time, Alex referred to it as a "banerry".) 02:10:16 it could just be that apes are really boring people :D 02:10:22 oerjan: indeed. 02:10:25 oerjan: but that's quite ugly 02:10:39 hmm is abc!@ a valid irc username? 02:10:45 i.e. can the username and hostname be empty? 02:11:01 "In Falcon, to store and handle efficiently strings, strings are built on a buffer in which each character occupies a fixed space. The size of each character is determined by the size in bytes needed by the widest character to be stored." 02:15:42 @hoogle liftA4 02:15:42 No results found 02:15:42 No results found 02:15:44 @hoogle liftM4 02:15:44 Control.Monad liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r 02:15:45 Control.Monad liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r 02:15:47 oerjan: GASP 02:15:56 so applicatives aren't as powerful as monads then ;D 02:16:36 perhaps. 02:16:43 oh wait 02:16:44 i only need 3 02:16:46 :t liftA2.liftA2 02:16:47 FUCK YEAH 02:16:47 forall (f :: * -> *) a b c (f1 :: * -> *). (Applicative f, Applicative f1) => (a -> b -> c) -> f (f1 a) -> f (f1 b) -> f (f1 c) 02:16:47 forall (f :: * -> *) a b c (f1 :: * -> *). (Applicative f, Applicative f1) => (a -> b -> c) -> f (f1 a) -> f (f1 b) -> f (f1 c) 02:16:52 oerjan: ha ha fail 02:16:58 (most useless function ever?) 02:17:11 :t ((.).(.)) liftA2 liftA2 02:17:11 oh wai 02:17:12 forall b (f :: * -> *) a b1 c. (Applicative f) => (a -> b1 -> c) -> (b -> a) -> f (b -> b1) -> f b -> f c 02:17:12 forall b (f :: * -> *) a b1 c. (Applicative f) => (a -> b1 -> c) -> (b -> a) -> f (b -> b1) -> f b -> f c 02:17:13 can breasts save us?! 02:17:15 t 02:17:40 :t \a b c d e -> liftA2 (liftA3 a b c) d 02:17:40 forall t a b c c1 b1 (f :: * -> *). (Applicative f) => (a -> b -> c -> c1) -> (b1 -> a) -> (b1 -> b) -> f (b1 -> c) -> t -> f b1 -> f c1 02:17:40 forall t a b c c1 b1 (f :: * -> *). (Applicative f) => (a -> b -> c -> c1) -> (b1 -> a) -> (b1 -> b) -> f (b1 -> c) -> t -> f b1 -> f c1 02:17:43 no, because the first argument of liftA* isn't monadic 02:17:47 oerjan: i gather then that it is impossible. 02:18:05 hm... 02:18:17 :t liftA3 id . liftA2 02:18:18 forall c a b c1. (a -> b -> c1) -> ((c -> a) -> c -> b) -> ((c -> a) -> c) -> (c -> a) -> c1 02:18:18 forall c a b c1. (a -> b -> c1) -> ((c -> a) -> c -> b) -> ((c -> a) -> c) -> (c -> a) -> c1 02:18:27 sheesh 02:19:04 What's the "correct" way to internally store Unicode strings? 02:19:11 oerjan: what's the parsec thing for "ANY STRING WHATSOEVER GOD DAMN" 02:19:19 I'm pretty sure Falcon's doing it wrongly, but what's a right way? 02:19:37 I suggested UTF-8, person guessed that that wasn't used because it breaks indexability 02:20:07 elliott: many anyChar 02:20:20 oerjan: that's so lame. 02:20:24 that's the lamest lame that ever was lame. 02:20:27 in fact it may be MAXIMUM LAME. 02:21:03 :t sepBy 02:21:04 Not in scope: `sepBy' 02:21:04 Not in scope: `sepBy' 02:21:06 :t Text.Parsec.sepBy 02:21:07 Couldn't find qualified module. 02:21:07 Couldn't find qualified module. 02:21:13 :t Text.ParserCombinators.Parsec.sepBy 02:21:13 forall tok st a sep. Text.ParserCombinators.Parsec.Prim.GenParser tok st a -> Text.ParserCombinators.Parsec.Prim.GenParser tok st sep -> Text.ParserCombinators.Parsec.Prim.GenParser tok st [a] 02:21:14 forall tok st a sep. Text.ParserCombinators.Parsec.Prim.GenParser tok st a -> Text.ParserCombinators.Parsec.Prim.GenParser tok st sep -> Text.ParserCombinators.Parsec.Prim.GenParser tok st [a] 02:21:17 O_O 02:21:42 Ah, in Falcon, 32-bit storage can be forced 02:22:02 @pl flip (<$>) 02:22:02 flip (<$>) 02:22:02 flip (<$>) 02:22:12 no wait it's actually >>= i want here 02:22:13 so oerjan 02:22:15 My aneurism is done 02:22:17 what's the equivalent of >>= for monads :-D 02:22:23 erm 02:22:26 what's the equivalent of >>= for applicatives :-D 02:22:27 totally 02:22:28 ruined my joke there 02:22:50 :t ((.).(.)) (liftA3 id) liftA2 02:22:51 forall b c d a b1. (a -> b1 -> c -> d) -> (b -> a) -> ((b -> b1) -> b) -> ((b -> b1) -> c) -> (b -> b1) -> d 02:22:51 forall b c d a b1. (a -> b1 -> c -> d) -> (b -> a) -> ((b -> b1) -> b) -> ((b -> b1) -> c) -> (b -> b1) -> d 02:23:28 args <- sepBy pArgument (char ' ') 02:23:29 args' <- (string " :" >> (:[]) <$> many anyChar) <|> return [] 02:23:29 return (args ++ args') 02:23:31 oerjan deuglify, thanks 02:23:40 hm wait 02:23:43 that's liftA2 isn't it 02:23:55 elliott: FUNNY GUY 02:24:13 hm that didn't work either 02:24:20 elliott: yeah 02:24:30 liftA2 (++) 02:24:30 (sepBy pArgument (char ' ')) 02:24:30 (((string " :" *>) $ (:[]) <$> many anyChar) <|> return []) 02:24:32 quite impressively ugly, that 02:24:43 :t ((.)(.)) (liftA3 id) liftA2 02:24:44 forall (f :: * -> *) a b c (f1 :: * -> *). (Functor f, Applicative f1) => f ((a -> b -> c) -> f1 a) -> f (((a -> b -> c) -> f1 b) -> (a -> b -> c) -> f1 c) 02:24:44 forall (f :: * -> *) a b c (f1 :: * -> *). (Functor f, Applicative f1) => f ((a -> b -> c) -> f1 a) -> f (((a -> b -> c) -> f1 b) -> (a -> b -> c) -> f1 c) 02:24:58 sheesh 02:25:01 oerjan: just write it out manually good god :D 02:25:56 :t \f w x y z -> liftA3 id (liftA2 w x y) z 02:25:57 forall t b c d a b1 (f :: * -> *). (Applicative f) => t -> (a -> b1 -> b -> c -> d) -> f a -> f b1 -> f b -> f c -> f d 02:25:57 forall t b c d a b1 (f :: * -> *). (Applicative f) => t -> (a -> b1 -> b -> c -> d) -> f a -> f b1 -> f b -> f c -> f d 02:26:45 oh 02:26:55 :t \f w x y z -> liftA2 id (liftA2 w x y) z 02:26:56 forall t b c a b1 (f :: * -> *). (Applicative f) => t -> (a -> b1 -> b -> c) -> f a -> f b1 -> f b -> f c 02:26:56 forall t b c a b1 (f :: * -> *). (Applicative f) => t -> (a -> b1 -> b -> c) -> f a -> f b1 -> f b -> f c 02:27:28 um wtf is with that t 02:27:34 your f 02:27:35 you don't use it 02:27:36 oh 02:27:37 Q.E.D. 02:27:49 gah, why can't ghci just stub out invalid functions with undefined when loading a module 02:27:51 :t \f w x y z -> liftA3 id (liftA2 f w x ) y z 02:27:52 forall b c d a b1 (f :: * -> *). (Applicative f) => (a -> b1 -> b -> c -> d) -> f a -> f b1 -> f b -> f c -> f d 02:27:52 forall b c d a b1 (f :: * -> *). (Applicative f) => (a -> b1 -> b -> c -> d) -> f a -> f b1 -> f b -> f c -> f d 02:27:52 would be so convenient 02:28:11 elliott: indeed 02:28:26 pikhq_: hm is "PRIVMSG#esoteric" OK in IRC? 02:28:28 or is it always one-space 02:28:31 i recall a reddit post about that a few weeks ago 02:29:04 oerjan: yes, cdsmith was complaining about ghci :) 02:30:32 -!- pikhq has joined. 02:30:43 -!- pikhq_ has quit (Ping timeout: 246 seconds). 02:32:49 pikhq: 02:32:51 pikhq_: hm is "PRIVMSG#esoteric" OK in IRC? 02:32:51 or is it always one-space 02:33:27 liftA2 (++) 02:33:27 (many ((char ' ' *>) $ try $ liftA2 (:) (noneOf ": ") (many1 (noneOf " ")))) 02:33:27 (((string " :" *>) $ (:[]) <$> many anyChar) <|> return []) 02:33:28 oerjan 02:33:32 i don't think my parser is going too well 02:34:16 O_o 02:34:21 yay it's nicer now 02:34:27 pArguments :: Parser [String] 02:34:27 pArguments = many (char ' ' *> pArgument) 02:34:27 where pArgument = liftA2 (:) (noneOf ": ") (many1 (noneOf " ")) 02:34:27 <|> char ':' *> many anyChar 02:36:17 @hoogle Either a b -> Maybe b 02:36:17 Data.Typeable typeOf2 :: Typeable2 t => t a b -> TypeRep 02:36:17 Prelude either :: (a -> c) -> (b -> c) -> Either a b -> c 02:36:17 Data.Either either :: (a -> c) -> (b -> c) -> Either a b -> c 02:36:18 Data.Typeable typeOf2 :: Typeable2 t => t a b -> TypeRep 02:36:18 Prelude either :: (a -> c) -> (b -> c) -> Either a b -> c 02:36:18 Data.Either either :: (a -> c) -> (b -> c) -> Either a b -> c 02:36:22 psht 02:36:24 how can that not exist 02:36:40 parseMessage :: ByteString -> Maybe Message 02:36:40 parseMessage = either (const Nothing) Just . parse pMessage "" . B.toString 02:36:41 yay 02:37:45 oh wait argh 02:37:48 (char ' ' *> try `id` liftA2 (:) (noneOf ": ") (many1 (noneOf " "))) >:) 02:37:52 oerjan: OH WONDERFUL 02:37:55 `id` 02:37:56 lol @ that 02:38:01 data Message = Message Prefix Command [String] deriving (Show, Eq) 02:38:04 oerjan: SPOT THE INCONVENIENT 02:38:12 i'd been waiting for a chance to try that one 02:38:24 like i said, we need @infixify 02:38:28 hmm 02:38:30 since it's FIXing it 02:38:34 we should call it @spoil 02:38:35 or @break 02:39:23 No output. 02:40:55 HackEgo is an ego, it has no id 02:44:10 Well, I just said something nice about Falcon. 02:44:15 Where are the flying pigs? 02:44:48 It is permitted with two spaces I tried sending the message to myself and it works 02:45:21 Sgeo_: Maybe the flying pigs are in the card game with flying cards and also flying pigs. 02:47:31 that doesn't mean it's permitted for servers to send it 02:47:58 elliott: Servers probably shouldn't send it. 02:49:05 hmm maybe I should split up Message and Line 02:54:09 bleh, but pattern-matching on that would suck 02:54:13 like 02:54:18 foo (Line prefix (Message cmd args)) 02:54:19 ugly 02:54:25 oerjan you know why haskell sucks 02:54:28 no structural subtyping ;D 02:55:06 -!- elliott has quit (Read error: Connection reset by peer). 02:55:22 -!- elliott has joined. 02:55:33 hmm maybe I should split up Message and Line 02:55:35 bleh, but pattern-matching on that would suck 02:55:39 like 02:55:41 foo (Line prefix (Message cmd args)) 02:55:43 ugly 02:55:45 oerjan you know why haskell sucks 02:55:47 no structural subtyping ; 02:55:49 *;D 02:57:46 What are you trying to make now? 02:58:19 botte 02:58:24 elliott: i saw all the messages already 02:58:37 oerjan: well my connection is really unreliable 02:58:42 and usually stuff doesn't get through before i ping out 03:01:33 elliott: maybe you could define some operator constructors 03:01:51 oerjan: :D 03:01:54 foo (prefix :+ cmd :- args) 03:01:54 always the solution 03:02:08 oerjan: clearly it should be :< for the prefix 03:02:13 and :- for the args 03:02:14 because of logic 03:02:18 O KAY 03:02:18 foo (prefix :< cmd :- args) 03:02:21 NOW IT'S TRULY UNREADABLE 03:05:07 oerjan: possibly just (prefix :< Message cmd args) would be saner :D 03:05:21 mhm 03:05:43 I really, really, really, like Falcon's fself 03:06:16 /home/elliott/Code/botte/IRC.hs:17:16: 03:06:16 Ambiguous occurrence `Line' 03:06:16 It could refer to either `Main.Line', defined at /home/elliott/Code/botte/IRC.hs:15:5 03:06:16 or `Text.Parsec.Line', imported from Text.Parsec at /home/elliott/Code/botte/IRC.hs:3:0-38 03:06:17 argh 03:07:13 hiding (Line) 03:07:28 oerjan: oh sure 03:07:29 you 03:07:30 always with your 03:07:32 "solutions" 03:07:33 sickening 03:08:26 *Huh*. Christianity in Sub-Saharan Africa actually predates European colonialism. 03:08:29 Are you trying to make IRC with Haskell? 03:08:37 zzo38: irc bot 03:08:38 pikhq: I didn't know that. 03:09:02 Ethiopia has had Orthodox Christianity since the 4th century. 03:09:32 Sorry, *probably earlier than that*. It became the state religion in the 4th century. 03:10:16 I didn't know that either. 03:10:35 Now are they going to put that on Jeopardy? 03:10:55 SORRY JEOPARDY IS DEAD 03:11:03 yeah a robot won it 03:11:03 THE MACHINES HAVE TAKEN OVER 03:11:07 now it's over 03:11:28 A computer did win Jeopardy. But that is only because of a very stupid mistake Ken made in wagering. 03:11:48 EXCUSES, EXCUSES 03:11:49 Some people think it is because of the speed of the computer, but that actually has nothing to do with it. 03:12:18 zzo38: so you think it had absolutely no chance of winning if Ken didn't make one stupid mistake :D 03:12:20 Ethiopia wasn't even effected by European colonialism. 03:12:26 that's a bit... overconfident 03:12:53 elliott: No. What I think is that in the specific circumstances, Ken could certainly have played better and won. 03:13:03 not if the machine killed him 03:13:21 Oh, wait, it was. It was occupied by Italy... 03:13:24 For 5 years. 03:13:45 All sorts of weird. 03:15:01 At the beginning of the game, the computer had a good chance of winning as much as anyone else (they are all very good Jeopardy players). However, at the end, it was Ken who was best and should have won if he had not made that mistake. 03:15:20 Falcon arrays are downright BIZZARE 03:15:40 calling = .[printl &value] 03:15:40 calling.value = "Hello world" 03:16:45 The other thing is where the daily doubles are on the board. 03:17:09 But in terms of how good they are, all three players are actually equally good as far as I can tell. 03:17:16 Which apparently isn't truly random. 03:17:24 Bravo to IBM for figuring that out. 03:17:54 (weighted towards the left side of the board and higher values.) 03:18:06 how long until that's fixed :D 03:18:10 I didn't know that either. 03:18:15 pikhq: more impressive if the computer found it out itself 03:18:22 elliott: The computer didn't. 03:18:27 THEN IT SUCKS 03:18:47 Falcon's oob stuff is interesting... but seems inflexible 03:18:51 IBM merely checked it out, discovered that, and then programmed Watson to try and get the Daily Double early. 03:20:10 elliott: I dunno if they'll actually fix it. 03:20:10 -!- elliott has quit (Read error: Connection reset by peer). 03:20:16 For all I know, it's intentional. 03:20:52 -!- elliott has joined. 03:21:04 sduhfgdfhiokgkdsfgjlns,dfgjlsdfn 03:21:06 it makes sense to prefer higher values, i should think 03:21:14 -!- Lymia_ has joined. 03:21:15 somewhat 03:22:04 -!- Lymia has quit (Disconnected by services). 03:22:05 -!- Lymia_ has changed nick to Lymia. 03:22:06 -!- Lymia has quit (Changing host). 03:22:06 -!- Lymia has joined. 03:22:52 Lymia: someone isn't using their cloak right 03:23:05 =p 03:25:56 THAT'S NOT HOW YOU WEAR QUOTES 03:25:59 ... 03:25:59 cloaks 03:27:45 "Quotes are not reliable wardrobe." -- Oscar Wilde 03:27:52 oerjan, ban everyone 03:28:02 you think? 03:28:43 yes 03:28:46 it is a good idea 03:28:49 do it 03:29:16 I'LL HAVE TO CONFER WITH FIZZIE 03:29:31 oerjan: helo 03:29:32 i am fizzie 03:29:38 talk through elliott's account because am fizzie 03:29:41 fuzzy, maybe 03:29:42 Remember that in this special Jeopardy game, the units of scoring are not worth any money. Money is played only according to placement, not by points. 03:29:47 oerjan: yes, i say this idea (the idea of banning everyone) is a good idea, it should be put into practice 03:29:52 i am sleep now because in finland it is 7 pm 03:29:53 which is bed time 03:30:00 i will hand computer back over to elliott now 03:30:01 make it so 03:30:34 elliott: you must be confusing fizzie with Ilari, he doesn't have that bad grammar 03:30:50 oerjan: Ilari has bad grammar? 03:31:01 he leaves out articles, i've noticed 03:31:10 WRETCHED SCU 03:31:11 *SCUM 03:31:12 ban him 03:31:14 also, everyone else 03:31:26 oerjan: look when finns get tired 03:31:28 their grammar is not so good. 03:31:31 stop being intolerant 03:32:16 hey i'm not intolerant, it's hard being native non-indoeuropean 03:32:39 You need not ban *everyone*, just stop reading it or set usermode +D or if it is taking too much energy on the servers, tell them to switch it off. And/or ask the people who set up the IRC logs for their opinion. 03:32:40 unable to understand the logical perfection that is english 03:32:43 oerjan: I AM FIZZIE AND I AM BACK AND GRAMMATICALLING PROPERLY NOW BECAUSE I WAS TOLD THAT EVEN THOUGH I AM TIRED I MUST BE UNLIKE A FINNISH 03:32:56 zzo38: do you _ever_ get jokes? 03:32:58 oerjan: I REQUEST THAT YOU BAN EVERYONE I AM ANGRY SO I AM USING A CAPITALS LOCK OKAY GOODBYE 03:33:02 ...who said it was a joke 03:33:05 i hate everyone 03:33:11 O KAY 03:33:18 oerjan: but no, no he doesn't 03:34:12 -!- augur has quit (Remote host closed the connection). 03:34:28 -!- elliott has quit (Read error: Connection reset by peer). 03:34:33 elliott: Including yourself? 03:34:50 -!- elliott has joined. 03:34:54 my hatred is what disconnected me oerjan. that, and peer pressure. 03:35:00 i see you have still not banned everyone 03:35:04 when will this be rectified? 03:35:08 aw c'mon 03:35:10 just for like 03:35:12 two minutes 03:35:14 i dare you 03:35:16 no wait 03:35:18 DOUBLE DOG 03:35:20 DARE 03:35:22 YOU 03:35:27 zzo38: rumors have it you cannot truly hate everyone without hating yourself first 03:35:41 that's true. so ban 03:35:48 oerjan: I'm pretty sure you're native Indo-European. 03:35:54 look at pikhq 03:35:57 with his fucking racism 03:35:57 ban him 03:35:58 and also 03:36:02 pikhq: yes. i was talking about Ilari. 03:36:02 ban all people who are not pikhq 03:36:04 Unless, secretely, you're from... FINLAND! 03:36:10 OMG 03:36:14 URALIC! 03:36:14 THAT EXPLAINS ... ABSOLUTE NOTHING! 03:36:16 *ABSOLUTELY 03:36:48 i cannot quite recall whether i have any finnish ancestry 03:37:03 (kvener, as they're called in norway) 03:37:03 hmm, kind of like you can't recall whether or not you COMMITED A CRIME yes which you did yes 03:37:05 ban yourself 03:37:07 and everyone who is not yourself 03:37:12 kvener? what a weird name for finns 03:37:53 only the immigrant ones from centuries past 03:38:17 ah. we usually call them GET YOUR OWN COUNTRY YOU FUCKERS 03:38:21 TAKE OOR JERBS 03:38:40 "From centuries past", eh? 03:38:47 Here we call those REAL AMERICANS. 03:39:04 The natives and the recent immigrants, though? DEY TAKE OOR JERBS. 03:39:25 ASPIKYTITISM 03:39:56 Especially the damned dirty Mexicans. How *dare* they take our shitty, underpaid jobs that we don't want! 03:41:08 hmm 03:41:09 oerjan 03:41:12 do we actually have a lambda calculus bot in here 03:41:16 i think not 03:41:19 this is a gross omission 03:41:31 pure untyped, i assume you mean 03:41:40 since otherwise lambdabot would qualify 03:42:02 indeed 03:42:04 Ok. I like what I know about Falcon. 03:42:17 Sue me. 03:42:57 Sgeo_: I do not think that is good reason to sue you? 03:43:30 oerjan: also an abstraction eliminator. we need one of them. 03:43:31 what else. 03:43:32 elliott: indeed, he doesn't. 03:43:40 oerjan: told you 03:44:01 the world would be so much better if people just believed everything i said qithout questioning it first 03:44:08 ... 19:42:04 Ok. I like what I know about Falcon. 03:44:11 ok no zzo38 is totally wrong 03:44:17 that is a legitimately good reason to sue Sgeo 03:44:25 memoserv has to hear about this 03:44:27 elliott: but then horrible things could happen whenever you made a spelling error, like that q 03:44:32 oerjan: wut 03:44:44 elliott: I don't think so! At least, it is not a good reason for *me* to sue Sgeo. 03:44:51 Sgeo_ Falcon does monads by having an extra bit associated with every single value. 03:44:54 Called the "out of bound" value. 03:44:58 "monads" 03:45:02 I don't even know what they are, but they call them monads. 03:45:14 elliott: i mean what if you wanted to say "kiss everyone" and accidentally wrote "kill everyone" instead? 03:45:14 how... can you even like it 03:45:16 jesus christ 03:45:24 oerjan: what was that q though 03:45:26 I like the out-of-bound value stuff. 03:45:27 also, killing everyone sounds good 03:45:32 (ok so the opposite currently seems more likely) 03:45:35 elliott: qithout 03:45:38 I don't... know if I want to know what you mean by them calling them monads 03:45:45 Sgeo_: ok so you're obviously just trolling 03:46:06 ..no? 03:46:10 Sgeo_: that's what THEY call it 03:46:29 Maybe they can implement monads by using the oob stuff, but... 03:46:55 ok it's no longer just a random hypothesis, Sgeo_ has been getting steadily more stupid over the period of months 03:47:06 I said maybe 03:47:10 I have a headache right now 03:47:11 i don't think the condition can progress any further though, liking Falcon is pretty low 03:47:42 elliott: clearly he needs to take more C-vitamins 03:47:57 Falcon has something called "Message-Oriented Programming". Worshipping it at the level they do, and calling it that, is pretty silly, but I like it better than C#'s stuff 03:48:01 maybe...maybe his father has been firing lasers at his brain 03:48:07 to make sure he never grows the capacity to think for himself 03:48:12 and is stuck in his tyrannical grasp of idiocy FOREVER 03:48:31 Let's try estrogen injections. 03:48:54 maybe his father is a mad scientist only keeping Sgeo_ around for spare parts. i recall that from narbonic. 03:48:56 Lymia: i don't even want to know the thought process leading up to that 03:49:19 Complete silliness! 03:49:47 wasn't that what they tried on turing 03:49:53 Sgeo_: go sleep until you have the ability to form coherent thoughts and lose the ability to form incoherent thoughts like liking falcon 03:50:07 oerjan: "tried", it was quite successful apart from the part where he killed himself 03:50:37 THE PATIENT REFUSED TO COMPLETE THE TREATMENT 03:50:45 AND HAS NO ONE BUT HIMSELF TO BLAME 03:50:56 :D 03:51:06 elliott, well. 03:51:13 A sterile Sgeo_ would be better for the world! 03:51:37 Lymia: that's true, but a Sgeo_ with breasts is possibly the most fearful thing i can imagine. 03:51:51 wait he'd never bother coming on IRC. hm. 03:52:09 SO WHO'S GOING TO GET THE OESTROGEN 03:52:20 I'm about to take a Tylenol 03:53:18 Sgeo_: IF YOU DON'T LIVE TO SEE ANOTHER DAY 03:53:20 WE WILL 03:53:20 * Lymia castrates Sgeo_. With a knife. 03:53:21 AVENGE 03:53:22 YOUR NAME 03:53:26 AGAINST THE EVIL 03:53:28 DANGEROUS 03:53:31 SATAN 03:53:32 KNOWN AS 03:53:35 "T Y L E N O L" 03:54:07 hmm this is reminding me of that time Sgeo_ didn't want to try vanilla essence because it has a tiny amount of alcohol in it 03:54:26 How did you get from point A to point B? 03:54:42 Lymia: wat 03:55:47 Other things about falcon I Like: forfirst/formiddle/forlast 03:56:05 a formiddable language 03:56:17 oerjan: ok seriously 03:56:23 you have to ban Sgeo_ before he goes completely insane 03:56:28 I mean. 03:56:38 oerjan: consider that 90% of the things cpressey said in here were elaborate yarns about insane language features that turned out to be actual falcon features. 03:56:43 How did Sgeo's thought process get there! 03:56:44 ok not really but the point is, that is something that could have happened. 03:56:51 Lymia: from where to where 03:56:55 oerjan: that is how bad Falcon is. 03:56:56 it is just the worst. 03:56:57 Never mind~ 03:57:01 he is insane. he needs containment. which is banning. 03:57:06 Lymia: YOUR SENTENCES MAKE NO SENSE 03:57:39 Lymia, I got to Tylenol by having a headache 03:57:39 ;-; 03:57:40 -!- azaq231 has joined. 03:59:52 Falcon looks like your standard maybe-overbloated language if you ask me-- based on the Wikipedia page that is. 04:00:35 Lymia: It's INCREDIBLY overbloated. 04:00:43 Also. 04:00:48 Basic-style syntax is NO. 04:00:49 Lymia: We have tried to troll their IRC channel by suggesting utterly ridiculous features that nobody would ever think are a good idea. 04:00:49 D= 04:00:55 Not ONCE did they go "ha ha no maybe not". 04:00:58 They were all "ooh INTERESTING". 04:01:07 And seriously. 04:01:14 Implementing monads by sticking an extra bit on to every value. 04:01:16 What is even that. 04:01:24 -!- azaq23 has quit (Ping timeout: 240 seconds). 04:01:24 wat 04:01:32 elliott, that extra bit isn't really for monads, I think 04:01:38 Nobody in the universe has figured out what that even means yet. 04:01:39 Nobody. 04:02:00 Huh. The UK keyboard layout... 04:02:04 Looks painful. 04:02:09 pikhq: What part of it exactly? 04:02:10 That being said. 04:02:10 I use it :-P 04:02:18 The most obvious thing that hits me when I read that page is this: Falcon is designed for embedding[20] into and extending other systems with a linkable runtime library, libfalcon. 04:02:20 # is a bit of a pain but I just swap £ with it because who talks about money 04:02:26 w. h. a. t. 04:02:27 Lymia: yeah afaict that's bullshit 04:02:29 There are a few things I like in Falcon: continuations, coroutines, meta compilation, macros, synchronization. Probably the standard libraries is too many though, some could belong to separate libraries instead? 04:02:29 nobody does that 04:02:32 i don't even know why it's there 04:02:33 who cares 04:02:36 it's a stupid vanitypage 04:02:44 it should be deleted because falcon is the worst 04:02:56 elliott: It's just got a lot of bizarro changes from the US one for no good reason that makes things harder to type. 04:03:03 pikhq: I dislike the US layout 04:03:05 Falxon has macros? 04:03:08 Falcon 04:03:12 elliott: What about it? 04:03:16 pikhq: It's just awkward to me. 04:03:19 \ for instance. 04:03:20 zzo38, just go use Lisp. 04:03:40 elliott: Funny, that's something I dislike about the UK layout. 04:03:45 That's fucking Shift right there! 04:03:52 pikhq: ...no, \ is above shift. 04:04:03 Lymia: Maybe Lisp works better, I have never used Falcon or Lisp, though. 04:04:07 elliott: Not on the UK layout. 04:04:07 I am upset over "Message-oriented" being a "paradigm" 04:04:15 http://upload.wikimedia.org/wikipedia/commons/d/da/KB_United_Kingdom.svg 04:04:25 And having nothing to do with OOP messaging 04:04:30 Teeny-tiny shift = WUT 04:04:43 NOTHING. It's an event system, basically 04:04:45 oh well our left shift keys are small. 04:04:48 but no that isn't the layout i have 04:04:52 i guess the apple versions are different 04:05:02 Sgeo_: Yes Falcon does have macros. That is what I like about it, that it has macros. Too many programming language they didn't put macros. 04:05:35 * Sgeo_ sees the macro stuff in wiki 04:05:41 That's pretty... icky 04:06:09 zzo38 and Sgeo_ -IN- #esoteric circus 04:06:40 well it's better than elliott and Vorpal. 04:07:07 elliott: What's *really* annoying is US International, though. 04:07:14 Fucking dead keys!' 04:07:28 oerjan: *and Vorpal-in-crazy-mode 04:07:38 elliott, are they related? 04:07:54 I get along with him fine nowadays until he goes into WHOOPS LET'S LATCH ON TO ANYTHING I CAN USE TO MAKE A POINT ABOUT HOW TERRIBLE ELLIOTT IS mode. 04:07:57 `, ~, ^, ', and " become dead keys. 04:07:58 Lymia: Hm? 04:08:02 pikhq: yeah that's just bullshit. 04:08:05 Do you have any *idea* how annoying that is to program with? 04:08:06 damn now elliott went into crazy mode 04:08:12 oerjan: I did? :P 04:08:21 Everybody's insane to somebody! 04:08:23 yes 04:08:29 oerjan: howso 04:08:54 No output. 04:08:58 So much better to just have a compose key. 04:09:03 -!- augur has joined. 04:09:13 elliott: you started blathering about Vorpal 04:09:26 yes it was my fault to remind you 04:09:35 oerjan: it was two lines... hardly blathering 04:09:38 i dunno what you're going on about 04:09:57 i'm not the only one to notice that he goes on tirades like that on a semi-regular basis, anyway 04:10:27 elliott: no, but only you respond to it like a chain reaction 04:10:27 Okay, actually, *this* just pains me: http://en.wikipedia.org/wiki/File:KB_Japanese.svg 04:10:42 And keep in mind that that keyboard is usually used as an ordinary QWERTY board. 04:10:43 oerjan: he only does it to me, so that's hardly surprising 04:11:37 LOOK AT THE SPACE BAR. IT IS TINY. SO TINY. 04:12:19 Yes it is small because they add so many keys 04:12:34 there was no space for it 04:12:50 AND IT DOES THE SAME THING AS THE 変換 KEY RIGHT NEXT TO IT. 04:12:52 REALLY. 04:13:02 Erm, well. 04:13:12 It does both 変換 and space, depending on input mode. 04:14:21 So. 04:14:32 And I'm not really sure why they felt that they needed a key for turning on half-width kana. 04:14:48 Why did they create that, instead of just using a phonetic->text system? 04:15:26 Lymia: The worst part is, *most people in Japan type using a phonetic->text system*. 04:15:33 Lymia: Like, 90% of people. 04:15:37 Heh. 04:15:49 Wouldn't you need to use something like that to type kanji anyways? 04:15:50 All the kana keys on there aren't used by most people. 04:15:50 >.> 04:15:54 Yes, you do. 04:16:04 Just one extra key should do instead of that many, and then have it pushed combination with the other key for other function, such as switch kana/ASCII mode, and also the switched whether space bar is kanji or not (and if you use other kanji mode). 04:16:11 It just goes from kana->kanji instead of romaji->kana&kanji. 04:16:43 zzo38: Don't even need that many. 04:16:53 Japanese input works *perfectly* on a US QWERTY keyboard. 04:17:22 serves them right for speaking moonspeak 04:17:30 THEY GET KEYBOARDIAL PAIN 04:17:32 Not even a compromise. Most of the keys added for controlling the IME are controlling little-used functions. 04:19:23 The 変換 key is entirely replaced by the space bar, 無変換 can be done by *just not pressing space*, I don't even think there is even a legitimate use for the 半角/全角 key, and カタカナ/ひらがな can be done by just selecting the katakana option in the IME menu. 04:19:32 -!- copumpkin has joined. 04:19:58 Oh, yeah, and the 英数 function on caps lock is just to make it less of a pain to do numeral entry in kana mode. 04:20:26 IME sounds like a huge pain in the arse 04:20:28 In short, the Japanese keyboard layout has no reason to exist. 04:20:37 elliott: Eh, not really. 04:21:02 pikhq, dosn't Japanese input mode have a Fsomething button to go hiragana->katakana anyways? 04:21:09 Lymia: Probably. 04:21:16 I invented a bit different system. Function keys are to the left. ALT keys are now like ALTGR (but still labeled ALT). When SCROLL LOCK (now labeled KANA LOCK) is pushed, it enters kana mode, and CAPS LOCK (now labeled CASE LOCK) in kana mode switches hiragana/katakana. There is no half-pitch/full-pitch. 04:21:24 oh goody, zzo38 redesigns computers part 3984598 04:21:25 It doesn't even come up all *that* often, anyways. 04:22:16 In ASCII mode, the ALT keys are used to select accented letters, suits, arrow symbols, and a few mathematical symbols. In kana mode, ALT is used for voice mark and SHIFT for semivoice. 04:22:23 there's an old and probably incorrect saying about the wise man adapting to the world, and the fool adapting the world to himself 04:22:27 I don't think it takes zzo38 into account at all 04:22:28 SHIFT is also used in kana mode for small letters. 04:22:37 ais523: there's a slightly less old saying 04:22:39 Falcon's out-of-band does remind me a bit of Either... 04:22:51 ais523: "The reasonable man adapts himself to the world; the unreasonable man persists in trying to adapt the world to himself. Therefore all progress depends on the unreasonable man." 04:22:54 and the zzo38 version 04:22:55 `quote reasonable 04:23:13 Oh, yeah, and Korean keyboards use much the same layout. Even though there's hardly even a need for an IME. 04:23:14 There is also conversion tables for converting between ASCII, CP437, Commodore 64, and some other systems, with its internal code. 04:23:17 ais523: eh: 04:23:18 ais523: Some people are reasonable, some people who are not reasonable insist on changing things so therefore progress depends on not reasonablepeple 04:23:20 zzo38 just invents an entire world that's consistent and internally makes sense, but nobody else has any idea about 04:23:20 160) Some people are reasonable, some people who are not reasonable insist on changing things so therefore progress depends on not reasonablepeple 04:23:24 there we go 04:23:38 Really, just a need to switch between hangul and QWERTY. 04:23:41 `run rm -rf zzo38 04:23:43 No output. 04:23:53 Lymia: I don't think zzo38 is a directory 04:24:00 Best to be sure. 04:24:01 -rf can remove files too 04:24:09 indeed, although the -r is redundant there 04:24:20 also, I'm one of those people who tries to avoid using -f as a rm parameter ever 04:24:28 although occasionally it's needed 04:24:49 tcsh annoys me with its incessant prompting, although even then I pipe yes into rm rather than having to settle for -f 04:24:53 Also, the ENTER key is now labeled "ENTER/NEW LINE". 04:25:03 And the space bar is labeled SPACE 04:25:05 ais523: tcsh automatically aliases rm? i doubt it 04:25:08 shells don't handle coreutils 04:25:22 elliott: it does something to rm, I'm not sure if it's aliasing it or using a builtin that prompts a lot 04:25:28 ais523: probably centos configuration 04:25:32 perhaps 04:25:39 although bash doesn't do that in centos 04:25:46 ais523: because configuration files are per-shell 04:25:49 and tcsh is what comes by default 04:25:51 so... 04:25:55 i seem to have no csh installed here; that's reassuring 04:25:59 hmm, isn't there a non-per-shell one? 04:26:06 ais523: well, not one that both csh and bash could read :) 04:26:08 `ls 04:26:10 babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test \ test.c \ tmpdir.19433 04:26:26 ais523: btw, you ARE still in England right? just that your sleep schedule is even more insane than usual 04:26:30 I'm pretty sure csh/bash polyglots are possible 04:26:32 `run rm -rf * 04:26:34 No output. 04:26:34 and indeed 04:26:36 `ls 04:26:37 babies \ bin \ paste \ tmpdir.19519 04:26:39 :< 04:26:42 argh 04:26:43 Lymia 04:26:45 `hlep 04:26:46 No output. 04:26:46 `help 04:26:48 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 04:26:58 Lymia: it's irritating having to revert everything when you do that 04:27:03 Sorry! 04:27:10 `revert 90 04:27:11 Done. 04:27:13 `quote yorick 04:27:14 317) * yorick has quit (K-Lined) 04:27:21 `ls 04:27:22 babies \ bin \ bluhbluh \ env \ foo \ paste \ ps \ quine \ quotes \ test \ test.c \ tmpdir.19734 04:27:23 =p 04:27:26 Lymia: observe your damage: http://codu.org/projects/hackbot/fshg/index.cgi/rev/0f00c1d46b43 04:27:51 :( 04:27:53 * Lymia cries 04:28:08 yes. you are bad. 04:28:15 ais523: so, er, in the england you're in, it's 4:56 am, isn't it? 04:28:21 I think there is revert function, though? 04:28:34 In case you messed up too many things. 04:28:39 zzo38: indeed, i reverted 04:28:41 elliott: I think I'm in the same timezone as you 04:28:49 ais523: I'M JUST CHECKING 04:28:50 unless you fled to Canada 04:28:56 wel lthere's an idea. 04:28:59 *well there's 04:29:03 I'm a little irritated at having to stay up all night, actually 04:29:13 heh, why? 04:29:28 err, personal matters, it wouldn't do to say it in a public channel 04:29:34 oh, I just meant, why irritated 04:29:36 but OK 04:29:45 Baaaah, privacy. 04:29:59 ("it wouldn't do" set my internal IRC vocaliser to English aristocracy mode, though you should know) 04:30:13 elliott: *Damn* you stay up late. 04:30:19 pikhq: >_> 04:30:25 An all-nighter is seeming quite necessary at this point. 04:30:39 I, er, have been failing to get any daylight into my waking periods. 04:30:39 elliott: It's not usually something I think about, but damn, you crazy. 04:30:45 oerjan too. 04:30:59 yeah i dunno how ais523 is so chill about it, this is a pain :D 04:31:22 zzo38, you crazy too, but that has nothing to do with sleeping habits or lack thereof. :P 04:31:24 elliott: I knew it would happen in advance and slept all day 04:31:40 pikhq, you crazy. for saying "you crazy" WAY too much 04:31:45 but it's annoying due to messing up my ability to actually do work 04:32:04 not because of the time - I do lots of work at 4/5 am - but because I'm best at doing it while in bed 04:32:06 elliott: Sorry for slang permeating my brain and coming out on occasion. 04:32:12 another advantage of a netbook... 04:32:35 don't need a netbook for that 04:32:40 i'm in bed right now with a 13" laptop 04:32:48 ok so it is a bit light as these things go. 04:32:52 oh, I've used larger ones before as well 04:33:14 but it's nice to be able to put your netbook down on a single A4 sheet of cardboard when you don't want to hold it for a while 04:33:18 `run sed s/EgoBot/\[DATA EXPUNGED\]/g < quotes | paste 04:33:20 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.28318 04:33:21 any larger wouldn't be very lap-friendly i think, this is quite nice, especially since it has a pretty high resolution for its size 04:33:45 Lymia: sed fail 04:33:48 you need some quoting 04:33:48 elliott: does DNA Maze run windowed for you? 04:33:51 :( 04:33:54 ais523: err, yes, why? 04:33:58 `run sed "s/EgoBot/\[DATA EXPUNGED\]/g" < quotes | paste 04:33:58 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14572 04:33:59 ah, just wondering 04:34:01 ais523: a rather big window, however 04:34:06 ais523: does it not for you? 04:34:12 the engine itself can only handle 1024 x 768 04:34:16 my screen's only 768 pixels high 04:34:19 ah 04:34:22 so it automatically fullscreens? 04:34:24 heh 04:34:31 `quote EgoBot 04:34:32 2) EgoBot just opened a chat session with me to say "bork bork bork" \ 295) !bfjoust test (-)*10000 Score for Vorpal_test: 12.9 yay \ 296) !bfjoust test (++-)*1000000 probably will suck Score for Vorpal_test: 30.4 what \ 304) [on egojoust] 04:34:35 so it used to draw a window if the screen was at least 800 high, or force the screen res to 1024x768 otherwise 04:34:40 ais523: well, my previous laptop was 1366x768 (again 13 inches) but this is 1440x900 04:34:40 but that looks weird on a widescreen 04:34:43 `run sed "s/[^<]EgoBot/that idiot/g" < quotes | paste 04:34:46 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1253 04:34:51 which is much nicer than the previous 04:34:53 although i still maximise my browser 04:35:06 Lymia: that removes the relevant character 04:35:14 :( 04:35:16 you really want a (?!) there but i doubt sed supports that 04:35:21 I changed it last night to center 1024x768 in an otherwise blank screen, if your natural screen res was less than (or less than or equal to?) 800 high, but larger than 1024x768 04:35:23 elliott: it doesn't 04:35:29 `run sed "s/\bEgoBot\b/that idiot/g" < quotes | paste 04:35:31 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.8889 04:35:35 ais523: wow, development :-D 04:35:47 also fixed the crash on left-click 04:35:53 ais523: it isn't a crash 04:35:56 it's just a screen-of-weirdness 04:35:58 although the bar at the top of the screen that says the controls is still lying 04:36:01 ais523: fixed the mouse behaviour in the menu yet? :P 04:36:11 `run sed "s/ EgoBot / that idiot /g" < quotes | paste 04:36:13 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.31546 04:36:14 oh, I thought I just hadn't implemented that at all 04:36:21 ais523: you did, it just works really badly 04:36:39 well, in that case I probably didn't finish implementing it 04:36:39 `run sed "s/EgoBot/that idiot/g" < quotes > quotes 04:36:41 No output. 04:36:41 :V 04:36:44 `run perl -e 's/\b(.*)+?\b/rand > .7 ? "bork" : $1/e' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.14592 04:36:48 `quote that idiot 04:36:48 what are the current semantics, and what would you suggest changing? 04:36:49 No output. 04:36:49 Lymia: firstly, that fails 04:36:53 redirection doesn't work like that 04:36:54 secondly 04:36:56 STOP MAKING ME REVERT 04:36:59 you can't redirect into and out of the same file 04:37:15 ais523: semantics: you click somewhere in the menu, it focuses somewhere almost, but not entirely, not where you clicked 04:37:20 desirable behaviour: it focuses what you click. 04:37:21 `help 04:37:23 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 04:37:36 `revert 92 04:37:38 Done. 04:37:42 elliott: ah, you click, and it gets the location of the click wrong and switches to an entirely different level? 04:37:46 `revert 97 04:37:46 I'll stop messing with HackEgo! 04:37:47 Done. 04:37:48 ais523: yes 04:37:50 `run perl -e 's/\b(.*)+?\b/rand > .7 ? "bork" : $1/e' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.18904 04:38:09 oops 04:38:14 `run perl -pe 's/\b(.*)+?\b/rand > .7 ? "bork" : $1/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5158 04:38:44 i should sleep soon 04:38:46 what's (.*)+? meant to mean? 04:38:58 ais523: err, good question 04:39:04 the +? seems entirely redundant there 04:39:05 `run perl -pe 's/\b(.+?)\b/rand > .7 ? "bork" : $1/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.2317 04:39:34 beautiful 04:39:35 just beautiful 04:39:46 hmm, does [^\b] work in perl? 04:39:47 I somehow doubt it 04:40:01 `run perl -pe 's/\b([^\b]+)\b/rand > .9 ? "bork" : $1/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27700 04:40:15 hmm, that is quite broken 04:40:15 elliott: you mean \w, don't you? 04:40:22 oh, is \w = [^\b]? 04:40:25 \b is the boundary between \w and \W 04:40:33 and thus zero-width 04:40:38 is there a name for (\s|^|$)? :P 04:40:56 `run perl -pe 's/\w+?/rand > .9 ? "bork" : $1/ge' I don't think so 04:40:57 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.13472 04:41:02 what the 04:41:04 also, you want + not +? there 04:41:05 `run perl -pe 's/\w+/rand > .9 ? "bork" : $1/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.7053 04:41:15 ais523: I dunno, http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.13472 is quite spectacular 04:41:19 elliott, now all you need to do is echo that back to quotes. 04:41:20 :V 04:41:29 `run perl -pe 's/\w+/rand > .9 ? "bork" : $0/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19716 04:41:32 `run perl -pe 's/\w+/rand > .9 ? "bork" : $&/ge' http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25593 04:41:52 i can get an bork bork of bork bork, you bork quote bork on that. 04:42:00 In an alternate universe, ehird has bork 04:42:14 [...] sometimes i cant get out of bed becasue the geometry of the sheet tangle is too fascinating from a topological bork 04:42:19 this is brilliant 04:42:26 If I ever made a game where you jabbed bears ... I'bork call it jabbear. 04:42:27 elliott. 04:42:30 I dare you to write it back to quotes. 04:42:30 I was hoping for "I'd call it bork." 04:42:38 GregorR: are you talking about ehird's virginity or your soda bork? 04:42:41 no bork No?! I've been living a lie yep. Excuse me while I jump out of the window -> 04:42:42 OH GOD, NO BORK 04:42:51 Maternal instincts? Don't you just leave the bork in a box until it starts crying, and then shake it until it stops? 04:42:58 Porn. bork, see? 04:43:04 this is too amazing. 04:43:07 possibly too amazing for the world. 04:43:25 * oerjan swats FireFly since he's easier to hit -----### bork * FireFly bork 04:44:23 I can do everything a Turing machine can bork, except love 04:44:29 For those who don't know: INTERCAL is basically the I Wanna Be The bork of programming languages. Not useful for anything serious, but pretty bork when viewed from the outside. 04:44:38 ais523: comment on INTERCAL's status as the I Wanna Be The bork of programming languages. 04:44:45 also, how bork it is when viewed from the outside. 04:44:53 and an AMICED literal would presumably /bork/ info to the source whatever info bork added, that's the value that the AMICED doesn'bork contain it's all falling into place 04:44:53 Well, that makes about as much sense as the original. 04:45:23 AMICED actually makes more sense than some of the other things in TURKEY BOMB 04:45:46 because the spec strongly implies that there's an inherent "list of everything that exists" that you can subtract things from 04:46:04 negative bit sizes work better than fractional 04:46:32 ais523: meh, it just subtracts fractional things from the list 04:46:35 or rather adds i suppose 04:46:54 well, there's a potentially infinite type you can take the complement of 04:46:58 but I forget what it's called 04:47:03 ais523: PUDDING? 04:47:08 that could be it 04:47:48 ...turkey bomb is the programming language of triangle and robert? makes sense. 04:52:40 *chirp* 04:53:01 Yes I think it is PUDDING type. I think TURKEY BOMB is not implementable? 04:53:03 I don't know what you're talking about 04:53:10 zzo38: I tried to implement it, but gave up after a while 04:53:18 I think there's at least one method of interpreting the spec such that it's TC, though 04:53:22 although I'm not entirely sure 04:58:00 -!- elliott has quit (Read error: Connection reset by peer). 04:58:21 -!- elliott has joined. 04:59:29 i am really going to bed 04:59:33 in like 3 seconds 04:59:40 * Lymia puts spiders in elliott's bed 05:00:00 elliott: you need to work on your arithmetic 05:00:24 oerjan: you need to work on NO BACKCHATTING 05:00:36 what's that 05:00:43 EXACTLY 05:00:57 ok 05:01:35 Lymia: I put big spider in my bed already. So if you have no more left you do not have to worry about it anymore. You can just take a cold shower or hot acid or whatever you want to, instead. 05:01:51 ... 05:01:52 o k 05:01:55 * Lymia puts a landmine into zzo38's mattress 05:02:01 `addquote Lymia: I put big spider in my bed already. So if you have no more left you do not have to worry about it anymore. You can just take a cold shower or hot acid or whatever you want to, instead. 05:02:02 Are you sure we arn't talking with a Markov bot? 05:02:02 318) Lymia: I put big spider in my bed already. So if you have no more left you do not have to worry about it anymore. You can just take a cold shower or hot acid or whatever you want to, instead. 05:02:07 we need two quote files, "funny" and "despair" 05:02:09 Lymia: already asked him that. 05:02:12 he CLAIMS no 05:02:21 Lymia: I don't think so 05:02:38 Lymia: zzo38's taking revenge in a way that's vaguely similar to sarcasm, but improved a lot and twisted into near-unrecognisability 05:02:49 I am not Markov bot. 05:02:54 Yes you are. 05:03:01 Actually I am not. 05:03:06 (As far as I know) 05:03:30 How many landmines do you have? 05:03:35 You act like it! 05:04:05 Lymia: Maybe to you it seems like it but actually it is not. 05:04:28 Physically press a WIN-WIN SCEs are that. (Highways here 05:04:29 ais523: are you sure any of your zzo38 theories are correct? 05:04:34 ais523: Revenge? Why do you think it is revenge? 05:04:37 What's Known fact. 05:04:40 X-D 05:04:47 I'm not sure it's possible to attach logic to zzo38 05:05:03 Ther and hit silver compounds out two days.net) joined happen fFSPG... atom, molecule money. :P 05:05:11 -!- Lymia_ has joined. 05:05:19 elliott> Sir, are you 05:05:21 -!- Lymia has quit (Disconnected by services). 05:05:22 -!- Lymia_ has changed nick to Lymia. 05:05:24 -!- Lymia has quit (Changing host). 05:05:24 -!- Lymia has joined. 05:06:08 OK, enough markovbotting for me 05:08:51 -!- elliott has quit (Ping timeout: 240 seconds). 05:37:45 -!- Lymia has quit (Ping timeout: 240 seconds). 05:46:02 -!- pikhq_ has joined. 05:46:14 -!- pikhq has quit (Ping timeout: 250 seconds). 05:59:20 -!- azaq231 has quit (Quit: Leaving.). 05:59:32 http://lonelydino.com/?id=355 06:10:26 That was definitely a good one. 06:10:44 * pikhq_ has T-Rex is Lonely in his feed reader. 06:26:06 ok water-based minecraft NAND takes 2 torches, 2 sand and 6 signs 06:28:07 Ahhhh, OK, maple soda with appreciably less syrup per liter = a delightful and refreshing experience. 06:28:48 -!- boysetsfrog has joined. 06:30:51 Also I think if I used my normal amount of syrup but less maple it'd be better. 06:31:06 Basically, maple extract is the most crazy-powerful extract I've ever used. 06:31:14 Gregor: It's fucking maple. 06:31:44 pikhq_: Yeah, so? Anise is fucking ANISE. 06:51:07 -!- fungot has joined. 06:54:58 -!- oerjan has quit (Quit: leaving). 06:55:35 -!- asiekierka has joined. 07:01:53 -!- orcus_nine has quit (Read error: Operation timed out). 07:31:08 -!- pikhq has joined. 07:31:34 -!- pikhq_ has quit (Ping timeout: 272 seconds). 07:44:59 -!- orcus_nine has joined. 07:50:10 -!- orcus_nine has quit (Ping timeout: 276 seconds). 07:59:59 -!- clog has quit (ended). 08:00:00 -!- clog has joined. 08:00:43 -!- orcus_nine has joined. 08:24:27 -!- orcus_nine has quit (Ping timeout: 260 seconds). 08:31:05 -!- wth has joined. 08:40:11 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 09:06:19 -!- asiekierka has quit (Ping timeout: 276 seconds). 09:23:31 redd.it/foxg0 09:25:20 -!- MigoMipo has joined. 09:40:00 -!- Phantom_Hoover has joined. 09:57:21 19:54:26 How did you get from point A to point B? ← ais523's crazy routing algorithm. 09:58:18 20:00:49 Lymia: We have tried to troll their IRC channel by suggesting utterly ridiculous features that nobody would ever think are a good idea. 09:59:07 Also, elliott attempted to wring a design philosophy out of the designer, although for the sake of my sanity I seem to have forgotten it. 09:59:40 20:03:05 Falxon has macros? 09:59:56 that sounds interesting, what are you suggesting features for? 10:00:10 That was IIRC one of my troll suggestions: Lisp-style macros on the AST. 10:00:19 olsner, Falcon. 10:00:24 #falcon on Freenode. 10:00:49 AKA Borglang. 10:00:49 programming language? 10:01:34 Yes. It's what you get when someone who thinks "FEEEAAATTTUUUURRREESSS" is a coherent design principle to make a language. 10:01:47 s/to make/makes/ 10:01:51 hmm, doesn't google well... I have now run out of attention to dedicate to this issue 10:02:39 20:04:52 i guess the apple versions are different 10:02:56 Apple keyboards are US with some minor changes IIRC. 10:16:22 20:22:39 Falcon's out-of-band does remind me a bit of Either... 10:16:24 HOW 10:26:12 -!- sebbu2 has joined. 10:29:13 -!- sebbu has quit (Ping timeout: 250 seconds). 10:29:57 * Phantom_Hoover wonders how much space a Befunge program needs if it's bounded in one dimension to stay TC. 10:36:28 do befunge programs store data (only) in the funge-space? 10:42:42 -!- zzo38 has quit (Remote host closed the connection). 10:43:08 olsner, ...no? 10:43:12 They have a stack. 10:55:52 -!- BeholdMyGlory has joined. 10:56:55 Also, fungespace is still infinite, just bounded in one direction. 10:57:14 So in a narrow enough tube, control structures become impossible. 10:58:14 but if you have external storage, why would it need to be infinite at all? 10:58:46 Because you need to be able to write arbitrarily long programs for TCness. 10:59:27 -!- FireFly has joined. 11:03:16 well, yes, but can't you just read the program from stdin? (befunge has IO?) 11:10:40 -!- wth has quit (Quit: Leaving.). 11:11:59 -!- cheater00 has quit (Ping timeout: 240 seconds). 11:14:20 -!- cheater00 has joined. 11:18:27 -!- asiekierka has joined. 11:19:35 -!- cheater00 has quit (Ping timeout: 240 seconds). 11:20:21 -!- cheater00 has joined. 11:51:00 I spilled peppermint extract on my hand. 11:51:02 BURNS SO MUCH. 11:56:24 -!- boysetsfrog has quit (Quit: ...). 12:03:28 That was IIRC one of my troll suggestions: Lisp-style macros on the AST. 12:03:32 ... they implemented it? 12:03:43 No idea. 12:03:56 Phantom_Hoover, but falcon isn't an AST-language iirc. You need something like lisp syntax to do it! 12:04:48 -!- MigoMipo has quit (Read error: Connection reset by peer). 13:12:20 -!- asiekierka has quit (Ping timeout: 250 seconds). 13:16:39 Vorpal, hence "AST". 13:30:15 Phantom_Hoover, yes but that's insane 13:38:17 Yes, that's the point. 13:55:32 -!- pikhq_ has joined. 13:55:56 -!- pikhq has quit (Ping timeout: 276 seconds). 14:11:02 -!- pikhq has joined. 14:11:18 -!- pikhq_ has quit (Ping timeout: 264 seconds). 14:13:50 extra/libsamplerate 0.1.7-1 [installed] 14:13:51 Secret Rabbit Code - aka Sample Rate Converter for audio 14:13:57 strange package description 14:16:06 -!- pikhq has quit (Read error: Operation timed out). 14:16:20 -!- pikhq has joined. 14:21:14 Description: Audio sample rate conversion library 14:21:14 libsamplerate (aka Secret Rabbit Code) is a library for audio rate conversion. 14:21:19 I guess it's their official code name. 14:21:32 ah 14:22:38 Actually based on http://www.mega-nerd.com/SRC/ it seems that Secret Rabbit Code is the official name, and libsamplerate is just their boring business name. :p 14:30:15 -!- sebbu has joined. 14:30:23 -!- sebbu has quit (Changing host). 14:30:23 -!- sebbu has joined. 14:33:27 -!- sebbu2 has quit (Ping timeout: 246 seconds). 14:35:34 -!- pikhq has quit (Ping timeout: 240 seconds). 14:35:50 -!- pikhq has joined. 14:36:11 -!- asiekierka has joined. 14:49:44 -!- iconmaster has joined. 14:55:01 -!- sebbu has quit (Read error: Connection reset by peer). 14:55:32 -!- sebbu has joined. 14:55:32 -!- sebbu has quit (Changing host). 14:55:32 -!- sebbu has joined. 15:22:33 -!- Mathnerd314 has joined. 15:23:20 -!- Behold has joined. 15:23:25 Behold, BeholdMyGlory, there? 15:23:38 -!- BeholdMyGlory has quit (Read error: Operation timed out). 15:23:58 Haha... "The current protocol for IP addresses is defined as IPv4 which is the fourth revision of the Internet protocol.". Except that it is the first verion of IP itself and the second version of low-level packet protocols. 15:24:06 Behold, just wondering about one thing I saw... Are you involved in mupen64 stuff, or is that someone else with the same nick? 15:24:22 Ugh. Mupen64. 15:24:31 Ilari, mupen64plus to be accurate 15:24:36 Ilari, what's wrong with it? 15:24:44 Ilari, there aren't really any choices if you are on linux 15:25:04 Vorpal: That's me, I started building a PyQt frontend for Mupen64Plus, though I gave up on in mainly because of lack of time etc 15:25:19 Ah, mupen64plus. 15:25:21 Behold, ah... I was searching for a frontend to use with the newish versions 15:25:36 You'll want to use wxMupen64Plus 15:25:47 Behold, got a link? I didn't see it listed anywhere 15:25:52 https://bitbucket.org/auria/wxmupen64plus 15:25:59 There's talk (but no action) about adding rerecording to Mupen64plus. 15:26:11 Behold, how feature-complete is it? compared to the old 1.5-series GUI 15:26:31 Ilari, personally that is not a feature I care about, so I don't really feel any problems with it lacking 15:26:34 Well, I haven't tested it yet myself, but Auria claims it's just about ready for a 0.1 release 15:26:35 I just want the games to play well 15:26:40 Config works, ROM browser works 15:26:48 Behold, cheats? ;P 15:26:53 No idea :P 15:27:05 Behold, I wanted to try out that making-link-fly-in-oot one 15:27:11 just to see what it was like 15:27:15 (I beat the game ages ago) 15:27:19 You can ask in #mupen64plus, Auria seems to be online at the moment 15:27:34 Behold, meh, can just as well download and try it out 15:27:35 rerecording has a bunch of advantages for even casual players 15:27:41 because everyone wants their savestates to work properly 15:28:08 ais523, isn't save states just about dumping the complete internal state at a given point? 15:28:09 Vorpal: Note though, that you have to symlink the plugins to PREFIX/lib/wxmupen64plus 15:28:19 For the time being 15:28:20 Behold, okay, that's strange 15:28:41 It's quite new and mainly developed on OS X, so that's why 15:28:54 Behold, hm no Makefile 15:28:57 Vorpal: if you can do that reliably and reproducably, rerecording's almost trivila 15:28:59 *trivial 15:29:03 but a lot of emulators can't 15:29:07 "waf"? 15:29:09 due to issues like threading 15:29:11 what the heck is that 15:29:12 Yup, waf 15:29:22 Behold, but what is it? 15:29:23 I think it's Python based 15:29:40 Behold, doesn't seem to be in arch linux repos 15:29:45 at least not under that name 15:29:48 Nope, in AUR as python-waf 15:29:57 Behold, meh, work :P 15:30:19 Also, you need wxgtk-2.9 from AUR 15:30:56 Behold, *way* too much work 15:31:01 Behold, I'll just use command line 15:31:17 But I don't WANNA take in nutrients 15:31:21 All right, though you could just use yaourt or something :P 15:31:27 Sgeo_, THEY'RE GOOD FOR YOU 15:31:28 For installing the packages 15:31:31 EAT YOUR GREENS 15:31:34 Behold, I would 15:31:34 ALSO VITAMIN C 15:31:41 Behold, yes but I have a Sempron 3300+ 15:31:44 Behold, this would take ages to build 15:31:48 wxgtk I mean 15:32:18 * Phantom_Hoover tries to think how long the IWC timestream has been exploding for. 15:32:27 Oh, okay 15:33:14 Waf is yet another build system; but installing anything shouldn't be necessary for building waffy stuff, they just bundle the waf script. (Though I guess if it's a development repo and not a release, it might not include that.) 15:39:38 Basically, if you have reliable savestating, save stream of inputs so far into savestate, have option to export inputs and have a way to play back inputs from given file. 15:44:25 I'm bored 15:44:38 Should I play with Windows Server 2003 or Windows Server 2008 15:46:42 You should average them to get Windows Server 2005.5, it has novelty value., 15:48:11 lol 15:48:41 * Sgeo_ wonders if there are Chrome skins for Firefox 15:48:43 * Sgeo_ googles 15:49:02 This will annoy elliott, who doesn't believe in making one browser look like another. 15:49:12 Fuck his beliefs. 15:49:41 Religious intolerance? On my #esoteric? Well, I never! 15:50:21 Chromifox doesn't do what I need 15:54:02 fizzie: bah, tolerance is boring 15:55:46 olsner: Not if it's ZERO TOLERANCE. 15:55:52 That sounds so sci-fi. 16:01:26 -!- pikhq_ has joined. 16:01:33 -!- pikhq has quit (Ping timeout: 260 seconds). 16:24:44 -!- MigoMipo has joined. 16:34:23 http://zem.fi/egostats/ -- first per-program plots: those "average tape contents at the end of a match for different tape lengths" plots for everyone. 16:34:51 I should probably try to find a job which involves mostly plotting different kinds of graphs. :p 16:35:16 fizzie: "person who makes managers' reports look snazzy" 16:35:33 there's probably a snappier name for that, but it's entirely in marketingspeak so nobody understands it 16:40:42 I don't know, aren't those graphs and plots mostly content-free? (Though I guess the egojoust plots I've been cranking -- pun inteded -- out are a bit on the silly side too. The "program size vs. score" scatterplot reminds me of that pirates/global warming graph.) 16:50:44 fizzie, what about the author similarity graph? 16:51:51 fizzie: what's left on the tape at the end of a match is not as useful as what "this program left in the cell the last time it moved away from it" 16:53:43 quintopia: Yes, but the former was easier to collect. I'll try the latter thing too. 16:54:53 fizzie: it's not hard to collect. just have a parallel array as you simulate it, and every time a > happens, it copies the value from that cell to the other array iff it has a greater magnitude value. 16:55:08 Yes, I didn't say "hard"; I said the other was easier. 16:55:34 mm 17:06:45 Now it collects that; but it needs to be swangled into a plot too. 17:10:36 All these statistics are bloating my poor results.txt; it's 11.5 megabytes already. 17:13:00 -!- asiekierka has quit (Read error: Operation timed out). 17:13:33 lol 17:13:43 you keep it all in a txt file? 17:13:58 It goes into a .txt file first, then it's parsed into a .npz and a .dat. 17:14:47 (The first is numpy's own storage format; the second is just a pickle'd Python data structure.) 17:20:13 The "take max at < and >" strategy ends up copying opponent-set tape structures if the program just >s over them, but I don't think I can be bothered to write some sort of "maximum value the program actually edited" thing; besides, even that will fail if the program jiggles the cell. 17:20:26 The plots are there now, anyway; they have some amount of correlation, but that's not surprising. 17:22:30 Well, the defend9.5 and defend9.75 -built structures are a lot more visible on the max-left graphs. 17:23:28 http://zem.fi/egostats/plot_p38_ptapemax.png haha 17:23:49 space_elevator *always loses* on tape length 10 :P 17:24:38 Not quite; according to http://zem.fi/egostats/plot_tlpoints.png the average points on tape 10 are quite close to 0. 17:24:46 There are more spectacular losers, like myndzi_3pass. 17:25:23 FFSPG used to pretty much always lose on tape length 10 too, until Gregor special-cased it. 17:26:29 well that plot indicates that it at least *almost* always loses there 17:26:36 i can special case it too 17:26:40 to use a faster clear 17:27:53 As an aside, your "chilling" is broken on these stats; I still haven't fixed the undocumented-hack "*-1" in cranklance to do anything sensible, so it parses as *0. 17:31:13 !bfjoust space_elevator http://sprunge.us/VTjO 17:31:19 let's see if that improves 17:35:48 Score for quintopia_space_elevator: 52.3 17:37:16 yep. it went up slightly. 17:38:12 -!- BeholdMyGlory has joined. 17:38:59 -!- Behold has quit (Ping timeout: 240 seconds). 17:41:18 -!- pikhq has joined. 17:42:01 -!- pikhq_ has quit (Ping timeout: 276 seconds). 17:46:15 * Sgeo_ is going to try Linux From Scratch at some point 17:47:43 -!- augur has quit (Remote host closed the connection). 17:48:39 elliott: WHERETF IS LANCE 17:48:49 fizzie: I'm tired of waiting, how's cranklance? 17:49:11 fizzie: (And can it generate the states table on-demand? :) ) 17:49:31 For your purposes, you might find gearlance more suitable. :p 17:50:09 (It's crank but with all the kludged-in tape/whatever statistics collection dropped out; it just outputs vaguely egojoust-like <<>> I don't necessarily need egojoust-style output *shrugs* 17:51:02 Well, cranklance outputs 169 lines of statistics for each match. 17:52:24 * Gregor hmms. 17:52:49 -!- poiuy_qwert has joined. 17:53:03 I think I'll manually compare crank/gear against egojsout for a few games. 17:53:36 you should probably throw in the whole s/*-1/100000/ thing 17:53:44 err 17:53:47 *100000 17:53:50 you know XD 17:54:02 -!- Mathnerd314 has quit (Ping timeout: 250 seconds). 17:54:40 At least allegro vs. FFSPG gives identical (score-wise; didn't compare traces) results. 17:55:15 fizzie: Sauce. 17:56:10 Decoybooster2 vs. quapping_turtle too. 17:56:28 How 'bout jix_wiggle3 v aiswhatever_defend14 17:56:47 Parse error vs. parse error. :p 17:56:55 HOORAY 17:57:37 * Sgeo_ wonders if Linux XP has stopped being downright evil yet 17:58:24 * Sgeo_ is going to try it 17:58:59 It's just one file, so you can find it at http://zem.fi/~fis/gearlance.c -- I think the summed score at the end of the <<>> characters is in fact opposite sign than egojoust (at least it's the opposite sign than egojsout); and it runs only 42 configs (straight/straight and straight/inverted) and doesn't return-from-main the score. 18:00:20 And there's the oft-mentioned -1 thing. 18:00:48 I wasn't really setting out to write a egojoust replacement here, since, you know, lance was 98% done or however much it was again, I forget. 18:02:08 fizzie: Can haz copyright and license header. 18:02:24 * Sgeo_ abruptly decides that he's not interested. 18:04:32 http://peppermintos.com/ 18:04:45 What the fuck does "fully integrates with " mean? 18:05:34 Gregor: Okay, I copypasted a BSD2 header from Wikipedia into the file. Let's hope it doesn't have any unfilled placeholders. 18:06:14 Sgeo_: That the is pre-bookmarked in the browser?-) 18:06:25 hehe 18:06:27 Hmm 18:06:41 Ah. They're pre-bookmarked in the menu 18:06:54 http://peppermintos.com/wp-content/uploads/2010/04/Office_menu-300x187.jpg 18:06:58 I guess they could have even Prism'd them or something fancy. 18:07:08 They say they use Prism 18:07:15 http://peppermintos.com/screenshots/ 18:07:19 Ah. Well, then. 18:08:03 ais523: and Phantom_Hoover and folks, 18:08:15 "On February 1, 2011, Mozilla announced that Prism would no longer be maintained, its ideas having been subsumed into a newer project called Chromeless" 18:09:16 http://www.minecraftforum.net/viewtopic.php?f=1020&t=185543 18:09:23 prism.mozillalabs.com is curiously silent about it being deprecated technology. 18:09:32 minecraft water nand gate nailed down 18:10:01 Let's burn the redstone stockpiles to the ground! 18:10:46 everyone bitches about "but you have to reset it yourself" 18:10:56 if i wanted easy i'd break out photoshop 18:11:10 doing it the hard way is sort of the point 18:15:02 jayCampbell: there's a separate channel, #esoteric-minecraft, for Minecraft discussion 18:15:14 because it got to such a point that it was drowning out everything else in the channel 18:15:27 (even though Minecrafy is obviously ontopic here, being an esolang) 18:16:19 that's actually how i got back on this server 18:16:30 but folks on that channel said it wasn't for esoteric minecraft programming 18:16:38 Yes, it's a badly named channel. 18:17:12 It's more about a particular server which has a number of #esoteric folks on it; I think for actual programming-related stuff #esoteric-"main" is more suitable. 18:19:05 jayCampbell: build an 8-bit adder and i will promote your youtube video 18:19:35 -!- sebbu has quit (Ping timeout: 250 seconds). 18:20:00 -!- sebbu has joined. 18:21:48 that's sort of the goal 18:21:50 Gregor: I updated the .c file with one that does finally do the -1 thing too. 18:22:37 i think there's not enough vertical room to do 8 bit multiplication 18:23:26 also can't stop thinking about the fire-based gates 18:25:03 Gregor: Also, are you sure you don't want to wait for a (..[..)-strict implementation any longer simply because eliminating the current incompatible contestants (defend14, spookygoth, wiggle3, careful, careless) will bump your FFSPG score up by a whole lot? 18:25:18 fizzie: law 18:25:19 *lawl 18:25:29 fizzie: Actually I was considering rewriting at least the ones that nobody's maintaining 18:25:40 fizzie: ais523 can rewrite defend14 himself :P 18:25:49 You could probably just expand them out if nothing else. 18:26:10 Okay, based on file sizes the others seem reasonably short. 18:26:28 -!- Mathnerd314 has joined. 18:29:14 I think crank/gear should do the ((a{b{c}d}e)*3)*2 → aaabaaabcdddeddde thing right, but I haven't really tested that one. 18:31:14 i think there's not enough vertical room to do 8 bit multiplication 18:31:24 Obvious solution: sand gates. 18:31:45 -!- Sgeo_ has quit (Ping timeout: 240 seconds). 18:36:25 hm? 18:36:47 -!- azaq23 has joined. 18:36:58 i mean these gates need a couple spaces of vertical drop each to function 18:37:14 -!- augur has joined. 18:37:34 oh, do you mean like, 18:38:05 when computation is approaching bedrock, 18:38:46 knock out torches under tall columns of sand which releases certain water streams at cloud layer 18:38:52 "Computation is approaching bedrock", eh? All in favor of creating a Minecraft computer at bedrock with I/O at surface level? 18:39:25 Even better, create a Youtube video and claim that somehow it's all being done in an obviously insufficient Redstone circuit. Just to fuck with people. :) 18:39:27 "Captain, the computation is approaching bedrock!" is something I could imagine hearing in some scifi-ish anime series. 18:39:44 fizzie: Seems like something Gainax would write. 18:40:08 Oh, and "Deploy sand gates!" is a very appropriate response, too. 18:40:19 :) 18:44:23 1 25 69.86 32.21 Gregor_furry_furry_strapon_pegging_girls.bfjoust 18:44:24 2 26 58.66 20.90 Gregor_ill_bet_you_have_four_decoys.bfjoust 18:44:24 3 14 52.80 22.05 Deewiant_allegro.bfjoust 18:44:24 4 43 52.28 21.33 quintopia_space_elevator.bfjoust 18:44:24 5 17 51.77 21.24 Deewiant_pendolino.bfjoust 18:44:24 6 24 51.24 20.90 Gregor_furry_furry_leather_discipline_girls.bfjoust 18:44:25 Bahahaahahah 18:44:28 fizzie: Bug? 18:44:49 Actually, maybe the four borken programs caused that. 18:44:52 searched "sand gate", had never seen this 16-bit adder in pure sand 18:45:12 fizzie: (I was actually referring to "ill_bet_you_have_four_decoys" being second as the potential bug) 18:45:30 Gregor: Weirdness; I don't see that here. 18:45:33 quintopia: http://www.minecraftforum.net/viewtopic.php?f=23&t=6471 18:45:50 Though it is #7 here, which is a bit suspicious. 18:46:00 fizzie: It's #7 in reality. 18:46:12 Ah. 18:46:17 Hmm. 18:47:29 fizzie: Hmm, wait, it's #7 when done with gearlance for you? 18:47:35 so, is four tripwires the new optimal number to avoid? 18:47:44 Gregor: Well, crank, but it's very identical code. 18:47:56 (My stats script parses the cranklance extended output.) 18:48:05 http://zem.fi/~fis/egostats/ are crank-given results. 18:48:07 ais523: It's not even tripwires, just any four decoys :P 18:48:49 fizzie: Why do you have 42 programs? 18:49:13 47 from in_egobot, minus those five which parse-error. 18:49:34 Five? I have only four with parse errors. 18:50:09 Maybe my hill is not quite the latest. 18:50:45 fizzie: Can you update it and see if ill_bet_you_have_four_decoys moves? I strongly suspect that it bumped up just because all of its real competition was killed for parse errors, but that might have been after some change you don't have ... 18:51:11 I should probably hg clone your hill instead of wget -r -l 1 -A bfjoust -nd -np all the time. :p 18:51:18 Yes :P 18:52:04 No, I still get five parse errors: 18:52:04 $ ls hill/*.bfjoust | while read f; do echo -n "$f "; ./gearlance $f $f; done | grep parse 18:52:04 hill/ais523_defend14.bfjoust parse error: [..] crossing out of a ({..}) level 18:52:04 hill/impomatic_spookygoth.bfjoust parse error: [..] crossing out of a ({..}) level 18:52:04 hill/jix_wiggle3.bfjoust parse error: [..] crossing out of a ({..}) level 18:52:04 hill/myndzi_careful.bfjoust parse error: [..] crossing out of a ({..}) level 18:52:06 hill/myndzi_careless.bfjoust parse error: [..] crossing out of a ({..}) level 18:53:00 Oh, hahahah, I ran it through report so it deleted defend14 :P 18:54:06 Anyway, still doesn't explain the score. 18:56:24 Right. I get 42.39 score, -0.10 points for Gregor_ill_bet_you_have_four_decoys here. Do you have some sort of a breakdown.txt for it? 18:58:15 fizzie: http://sprunge.us/jVYE 18:58:17 -!- sebbu2 has joined. 18:58:17 -!- sebbu2 has quit (Changing host). 18:58:17 -!- sebbu2 has joined. 18:59:34 Huh, the scores are still backwards, but in a weird way. 18:59:40 As they're not always backwards or something ... 19:00:03 Aha 19:00:12 I only reversed the scores in one place >_> 19:01:07 fizzie: http://sprunge.us/SQiS Bug? 19:01:35 -!- sebbu has quit (Ping timeout: 250 seconds). 19:01:45 fizzie: Or is that just to make it tie? 19:02:17 OK, yeah, that bugfix bugfixed it. 19:02:50 At least the intended logic there is that fallA doesn't insta-quit to check for ties, while fallB does insta-quit while independently checking for ties. (And the next-cycle code doesn't check for fall-off-a-tape at all.) 19:03:43 Got it. 19:04:06 I had neglected to change the score direction there, so it turned a loss into a SUPERLOSS. 19:04:12 Or maybe a superwin ... 19:04:14 Either way it was wrong. 19:04:44 Right; you might have wanted just to put -score instead of score in main(), you know. :p 19:05:02 -!- Sgeo has joined. 19:05:26 How not to make an impressive YouTube video: Show an OS booting for a minute 19:05:29 Seriously 19:05:37 http://www.youtube.com/watch?v=unb8P0xVgbI 19:06:15 (It used to be so that the score++/score-- in run() directly affected the running sum, but currently the value -- which is always -1, 0 or 1 -- is written into an array, and main() then prints out the <>s after everything's been done, and computes the sum.) 19:06:24 Sgeo, I'M ON THE EDGE OF MY SEAT 19:06:32 OMG PROGRESS BAR 19:06:35 IS IT GOING TO START 19:06:43 THE TENSION IS KILLING ME 19:07:13 !bfjoust watch_gearlance_faillol <3 19:07:13 THIS MAN IS HITCHCOCKIAN IN HIS MASTERY OF OMG IT'S MOVING 19:07:31 AND IT'S PAST HALFWAy 19:07:46 OMG IT WENT BLACK WHILE THE BAR WAS IN THE MIDDLE 19:07:57 MOUSE LOGINSCREENDESKTOPOMG 19:08:23 LOOK AT THAT STANDARD GNOME DESKTOP WITH 19:08:28 SLIGHTLY DIFFERENT FONTS 19:08:28 -!- sebbu2 has changed nick to sebbu. 19:09:13 Gregor: It would be hileeeerious if you double-flipped the scores again somehow and that got a 100.0. 19:09:55 if (!strncmp(argv[1], "Gregor_", 7)) score = -42; else if (!strncmp(argv[2], "Gregor_", 7)) score = 42; 19:10:41 * Gregor wonders what's going on ... 19:11:01 http://codu.org/eso/bfjoust/breakdown.txt seems to be getting quite long. 19:11:09 Oh for eff's sake >_< 19:11:23 It's also quite wrong :P 19:11:33 It was going to call everyone a tie with everyone. 19:11:46 (In spite of what breakdown said) 19:12:12 Heh, that's very... diplomatic. 19:12:23 !bfjoust watch_gearlance_faillol <3 19:12:46 Score for Gregor_watch_gearlance_faillol: 0.0 19:12:47 Score for Gregor_watch_gearlance_faillol: 0.0 19:13:10 THE REVOLUTION IS OVER 19:13:57 You realize I'm going to shift all the blame for lance-ursurpuration over to you when elliott asks? :p 19:14:15 It is entirely my fault. 19:14:17 But come on. 19:14:28 We gave him over a week to implement what is essentially an elaborate Brainfuck interpreter. 19:14:52 I'm going to be all "but all I wanted was beautiful butterfly pictures! it's not me! it's him!" 19:15:04 -!- oerjan has joined. 19:17:11 is it tunes.org that is slow, or just my connection... 19:17:30 it can be pretty slow 19:17:34 !bfjoust return_of_myndzi_careless >+++++>+++++>----->----->+>->>>((>[(-)*126(-.)*3{}])*22)*22 19:17:40 but to me, it doesn't seem to be consistent 19:17:49 starting a reload seemed to help 19:18:02 Whoops, did that wrong. 19:18:05 Score for Gregor_return_of_myndzi_careless: 30.1 19:18:14 !bfjoust return_of_myndzi_careless >+++++>+++++>----->----->+>->>>((>[(-)*126(-.)*3{}])%22)*22 19:18:17 Score for Gregor_return_of_myndzi_careless: 30.7 19:18:27 !bfjoust return_of_myndzi_careful >+++++++++++++++++++++++++>+++++++++++++++++++++++++>+++++++++++++++++++++++++>------------------------->------------------------->------------------------->>((>[-[++[(-.)*2((-)*28(.-)*4)*4{}]]])%21)*21 19:19:57 Score for Gregor_return_of_myndzi_careful: 32.5 19:20:23 !bfjoust return_of_jix_wiggle3 http://sprunge.us/MGOR 19:20:33 Gregor: is egobot still running egojoust? 19:20:34 Score for Gregor_return_of_jix_wiggle3: 36.0 19:20:50 Oh, incidentally, gear doesn't differentiate between the * and % delimiters at all; if there's a {} directly inside a () block, it gets turned into a (..{..}..) construct. 19:20:54 ais523: No. 19:21:08 ah, if I hadn't been up for over 24 hours I'd go fix my programs now 19:21:14 as it is, you'll have to wait until later 19:23:58 !bfjoust return_of_impomatic_spookygoth (>(+)*7)*2(>+++>+++)*3(>([+{[(-)*7([-{[(-)*122[-]]}])%5]}])%6>([+{[(-)*7([-{[(-)*122[-(])*14)*10>([-{[(+)*7([+{[(+)*122[+]]}])%5]}])%6]}])%5]}])%6[-] 19:24:03 Score for Gregor_return_of_impomatic_spookygoth: 0.0 19:24:04 (That might be wrong :P ) 19:24:09 Bleh 19:24:13 spookygoth is a mess X-D 19:24:46 ais523: defend14 is the only one that needs fixing. 19:25:23 it'll be fixed eventually 19:25:38 defend9.75 also needs fixing for a different reason, although it may be under a different name at this rate 19:26:55 When you hit defend9.9990234375 (which is just 10-(1/2)^10, i.e. not so many iterations) the name is starting to be a bit silly. 19:27:14 fizzie: Feel like fixing impomatic_spookygoth? :P 19:27:38 Gregor: hg clone http://codu.org/eso/bfjoust/in_egobot/ hill → "updating to branch default ... abort: 00manifest.i@4ce17470b7c9: no node!". That was strange. 19:27:51 fizzie: That ... is strange. 19:27:58 I could try, if only for the reason that I'd get my name on the list that way. 19:29:15 fizzie: I don't suppose you have an expander sittin' around somewhere. 19:30:47 !bfjoust return_of_impomatic_spookygoth http://p.zem.fi/spookyfix 19:31:00 Score for fizzie_return_of_impomatic_spookygoth: 30.8 19:31:08 Unfortunately not; I kept putting that off until later all the time. 19:31:24 (That was done by manual expansion.) 19:31:58 I was trying to replace ()...() with ({...}), but I suppose for spookygoth that doesn't work :P 19:32:13 !bfjoust furry_furry_strapon_pegging_girls http://sprunge.us/CCAN 19:32:18 Score for Gregor_furry_furry_strapon_pegging_girls: 68.0 19:32:47 Why did that go down, it should've been identical except using nested (... wait, I did that wrong. 19:33:03 Yeah, it does that ([+)*6 ... ([-)*5 ... some other [s ... (])*14 thing, which isn't so easily covertible. 19:33:07 !bfjoust furry_furry_strapon_pegging_girls http://sprunge.us/jMbE 19:33:10 Score for Gregor_furry_furry_strapon_pegging_girls: 69.8 19:33:25 fizzie: Do you support (({{}})) nesting, btw? 19:33:35 It *should* work, but it's not tested. 19:34:04 I've tested that the parser does parse those correctly -- well, up to two levels deep, anyway -- but I'm not entirely certain about the interpreting. By my logic it should work. 19:34:37 Interpreting it is no different from interpreting any other ({}) loop, so long as you have the inner {} associated with the outer () properly. 19:34:39 I didn't really have any real nested-{{}} programs to test against, I just tried one real trivial test case and compared traces. 19:40:09 OK, banana soda: Banana extract is not strong enough to overpower the citric acid, HOWEVER, banana-citrus soda is a TROPICAL DELIGHT 19:42:15 heh someone put minecraft in the AUR 19:43:10 Minecraft is in the Ubuntu Software Center, isn't it? 19:43:43 In the "canonical partners" repository, I think. 19:43:54 Or somewhere. 19:44:21 (I think it was shown in some Software Center screenshot.) 19:45:51 "In most American states it is perfectly legal to keep a monkey." — TV 20:04:24 I'm afraid I decoded the Maya thing. 20:04:27 They were off by one 20:05:18 What they were counting down to was IPv4 exhaustion. 20:12:25 -!- zzo38 has joined. 20:17:36 NEW WORLD ORDER!!! 20:19:07 now reverse lexicographical by the arabic alphabet 20:19:26 oh and the reverse is for the alphabet, not the letters 20:20:23 cheater00, they weren't counting with the lazy modern ISPs 20:20:24 er 20:20:41 *not the letters in words 20:21:02 Gregor: Please to be fetching http://zem.fi/~fis/gearlance.c again; there was a really stupid gaffe for the [ handling for the right player. (I *know* they're supposed to use the tape value at the start of the cycle, I had it just fine in chainlance, I could swear I had it right in some point in cranklance too, but now it was wrong.) 20:21:04 heh someone put minecraft in the AUR <-- err what 20:21:24 Gregor: Also if you have some good command for rerunning the hill with the new code, that might be a good idea. :p 20:21:32 Vorpal: yeah, that's what i thought too 20:21:38 after all why would someone put it there 20:21:58 Gregor: (Noticed this when I got asymmetric results for gearlancing "foo vs bar" and "bar vs foo".) 20:22:49 -!- augur has quit (Remote host closed the connection). 20:22:55 fizzie, how could it differ so much between the players? 20:23:51 Vorpal: Somehow I had managed to stupidly use the current tape value also in B player's [ and ] instructions, instead of the cached copy of tape-as-start-of-the-cycle. Mea maxima culpa. I have no excuse. 20:24:52 fizzie, wouldn't that be maximus? 20:25:05 minimus 20:25:07 Could be; I don't really speak latin. 20:25:11 !bfjoust rerun_the_hill <3 20:25:12 fizzie, nor do I 20:25:21 it's actually the way fizzie said it 20:25:23 To emphasize the message, the adjective "maxima" may be inserted, resulting in "mea maxima culpa," which would translate as "my most [grievous] fault." 20:25:27 Yeah, wp seems to agree. 20:25:31 Gregor, that won't rerun /all/ of it? 20:25:40 fizzie, ah 20:25:40 Vorpal: I trashed the cache. 20:25:46 Score for Gregor_rerun_the_hill: 0.0 20:25:48 Gregor, ah 20:25:52 !bfjoust 20:25:52 Use: !bfjoust . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/ 20:26:25 fizzie, how goes elliott's plain lance? 20:26:58 Vorpal: No news, elliott hasn't been here at all; so Gregor jumped the... is it gun? Well, jumped the something. 20:27:04 Shark. No, not that. 20:27:09 fizzie, jumped the lance 20:27:38 I jumped no gun. elliott has officially taken way too damned long. 20:27:41 fizzie, wouldn't that be maximus? <-- no. the -a ending shows that the words agree in gender. 20:27:48 Gregor: I like your "parse error is a tie" handling; <3 manages to die with the old careless. 20:28:01 s/die/tie/ 20:28:58 (also case and number, but that's the same for maximus) 20:29:10 fizzie, how does gear/crank/chain-lance differ? 20:29:29 fizzie: I dispute your orthographic choices! 20:29:40 fizzie: "MEA MAXIMA CVLPA", man. 20:29:52 And fuck the Catholics. 20:30:07 pikhq, correction: fuck the Christians. 20:30:22 (also not all words use -a for the feminine nominative singular ending, but i think it's the most common one.) 20:30:42 Vorpal: It's the Roman Catholics in particular that are responsible for the abuse of Latin. 20:30:52 Vorpal: chainlance is the "translate to handcrafted assembler with everything in registers" thing that was supposed to be fast but wasn't (think "chainsaw"); cranklance is the threaded-goto-style C interpreter reimplementation for my plotting purposes (think "hand-cranked chainsaw"); gearlance is cranklance but with the useless statistics code dropped off (think "oh uh huh weird, my names are all bicycle-themed already, let's go with that theme"). 20:31:07 The other pre-Luther churches used completely different liturgical languages. 20:31:36 fizzie, ah 20:31:36 You think they are abuse? 20:31:54 oerjan, shouldn't a male use a masculine form of that then? 20:31:54 zzo38: They certainly abused Latin. 20:31:55 There are a few different Latin used sometimes? 20:33:05 Vorpal: it's the noun culpa that determines that 20:33:29 ah 20:33:53 Vorpal: Ah, here's the screenshot I saw when they were advertising Ubuntu 10.10: http://pics.webchimp.me.uk/minecraft/ubuntu10.10_supported_games.png -- but Minecraft is not in the Software Center now, so... *shrug*. 20:34:13 (Perhaps they just wanted to cash in the hype.) 20:34:22 zzo38: Church Latin uses Italian phoneme values. 20:34:25 Which is WRONG. 20:35:50 Yes I think it is wrong. 20:36:09 But it is the kind of Latin the church decide to make and use. 20:37:20 Because it's in freaking Italy. 20:38:05 It is in Vatican City, which is its own country. But it is in Italy. Which is why they can speak Italian. 20:39:31 Freaking church gettings its own country. 20:40:08 Perhaps they require their own laws, which is why they need their own country? 20:41:21 zzo38: the pope was pretty pissed off about not being independent during the time the vatican was part of italy 20:41:27 -!- augur has joined. 20:41:40 oerjan: Why? Is it because they required their own laws? 20:43:39 zzo38: Historically, the Vatican was the government of much of what is modern-day Italy. 20:43:42 The Papal States. 20:43:57 zzo38: i would think it's because the catholic church considers itself more important than countries, and so consider it insulting for its headquarters to be bound by some other country's laws. also many people have tried to manipulate the pope/church during history (and vice versa, the popes were no saints (that's a joke, because officially by the church some _were_)) 20:44:02 *-) 20:44:32 incidentally part of the treaty with italy was that the vatican should _stop_ interfering in world politics 20:45:29 er, *-*-) 20:46:29 OK, banana-citrus soda was pretty darn good, but I'm now trying replacing half of the banana with an orange-lemon-anise blend. 20:46:37 This should be a TROPICAL EXPLOSION OF AWESOME 20:47:10 are you sure this doesn't count as Tastes Man Was Not Meant To Know? 20:47:23 Banana-orange-lemon is hardly a rare combo. 20:47:25 If you want it exploding then you should add bombs too! Now we have banana-orange-lemon-anise-cirtus-bombs-soda. 20:47:32 Anise should just add some depth and warmth to it. 20:50:53 I have read of a game which is cross between Chess and Ultima, called Stupid. There are three variants: Pure Stupid, Total Stupid, and Plane Stupid. 20:52:10 oerjan: Well, the Vatican was only not a government unto itself for a few decades... 20:52:20 Erm, unless you go back to the 600s. 20:52:40 pikhq: What kind of government is it? 20:52:50 zzo38: Monarchy. 20:53:03 Theocracy :P 20:53:18 Gregor: Well, yes. 20:53:26 it's an appointed, rather than hereditary, monarchy 20:53:31 is there a separate name for that? 20:53:33 in practice, absolutist monarchy 20:53:47 ais523: s/appointed/elected/ 20:54:02 Though the electors *themselves* are appointed. 20:55:10 pikhq: it isn't exactly an election 20:55:22 because the people whose choice it is are all locked in a room until they come to a unanimous decision 20:56:54 Let's lock everyone in the USA in a room until they unanimously decide on a president. 20:57:07 I guess they want to be *really sure* of it. But what if they cannot agree? Then it won't work very well because one guy might starve to death or be threatened as such. Or, will try to throw the other guy out the window? 20:57:18 Gregor: that would be hilarious 20:57:31 zzo38: I think the idea is that they'll agree to anyone rather than starve to death 20:57:56 IIRC food is brought in by dumbwaiter. 20:58:00 1870-1929 20:58:12 ais523: With the US, all the fit, healthy people would die first since they have no fat on them, leaving the moribund critically obese people to all vote for the republican. 20:59:05 Well, some person there will not like the dumbwaiter, and so will try to prevent receiving food in that way. 20:59:13 i'm not sure the decision is unanimous, actually 21:01:19 it seems like it starts as 2/3 and goes down after seven ballots 21:01:22 Ah, they just allow a limited number of servants in for things. 21:01:52 um wait, there's more than seven before that point 21:01:54 oerjan: how a) practical, b) boring 21:02:08 can it ever go below 50%+1? 21:02:09 http://en.wikipedia.org/wiki/Papal_conclave#Voting 21:02:26 ais523: the number of candidates is reduced to two as well, so that's probably not necessary 21:02:38 -!- elliott has joined. 21:02:46 A new predefined macro __COUNTER__ has been added. It expands to sequential integral values starting from 0. In conjunction with the ## operator, this provides a convenient means to generate unique identifiers. 21:02:52 -!- elliott has quit (Client Quit). 21:03:00 of course these are the current rules, the pope can and has changed them many times, i believe 21:03:24 elliott: In C? I guess that work 21:03:28 hmm, that predef could be really useful in C-INTERCAL 21:03:42 Why they just write one message and quit? 21:03:43 at the moment, it does more or less exactly that, but by running its own preprocessor over the preprocessed C source 21:04:04 however, it needs to generate each identifier exactly twice 21:04:21 and I'm not sure if there's an obvious way to do that with __COUNTER__, as you can't do arithmetic inside token pasting 21:04:37 Currently I can just write a interpreted code in Enhanced CWEB to do that. And also doing arithmetic with it, too. 21:05:10 (Since it allows you to add additional preprocessors before the C preprocessor) 21:05:13 -!- Wamanuz5 has quit (Read error: Connection reset by peer). 21:05:26 -!- Wamanuz5 has joined. 21:06:29 -!- elliott has joined. 21:06:33 ais523: easy 21:06:37 #define foo() foo_(__COUNTER__) 21:06:39 #define foo_(id) ... 21:06:53 err, does that work? 21:06:57 yes 21:07:06 the expansion goes foo_(__COUNTER__) -> foo_(34) -> 21:07:08 ... 21:07:12 ais523: just like you can do 21:07:21 #define stringify(x) stringify_(x) 21:07:21 oh, but the pairs might not be in logically related contexts in the source 21:07:23 You don't do arithmetic like that? Except in #if and stuff like that, you don't do arithmetic with preprocessor 21:07:24 otherwise it would be easy 21:07:24 #define stringify_(x) #x 21:07:39 ais523: hmm 21:07:44 preprocessor arithmetic only happens inside #if conditions 21:08:10 so you can't do the arithmetic in the preprocessor full stop as you can't return anything but a boolean, nor can you do it at compile time because then it's too late to do token pasting 21:08:12 ais523: Yes, that is my point. 21:08:22 ais523: untrue 21:08:28 chaos-pp has libraries for arithmetic in cpp 21:08:31 that can output as plain decimals 21:08:33 in the code 21:08:40 (note: chaos-pp is completely insane) 21:08:50 elliott: oh, via the emulate-an-ALU-using-#defines method? 21:08:59 I'm pretty sure someone submitted that to the IOCCC once 21:09:02 ais523: no 21:09:11 ais523: It's advanced enough to have multiple types of list and recursion, and it even supports _bignums_ 21:09:16 (there's a fibonacci written in chaos-pp) 21:09:37 elliott: Yes but I do not think you can take actual numbers as input with it? Since it cannot do preprocessor with actual numbers. WIth faking it, you can do it, for sure. So chaos-pp might be good for faking it. 21:09:54 zzo38: what? 21:09:56 no, you can do 21:09:58 They are not the same numbers used in normal C codes. 21:09:58 foo(42) -> 43 21:10:00 as a macro 21:10:01 yes, they are 21:10:15 I think with the "42" form it only supports up to 512 for _input_ 21:10:20 so you'd need (4 2) for more, I think 21:10:45 elliott: See? That is what I meant. It is limited and cannot use the same numbers as the C codes except in very limited way. 21:11:07 zzo38: you could easily make 2^32 preprocessor defines 21:11:09 and cover the whole 32-bit range 21:11:18 Still, if you need bignums, that is how you do it. 21:11:26 elliott: That is how you waste memory!!! 21:11:41 what? 21:11:46 well in the preprocessor sure. 21:12:11 Yes, there will not be enough memory in a 32-bit computer for the preprocessor!! 21:12:31 !!!!!!!!! 21:12:35 You only need one exclamation mark. 21:12:38 zzo38: Good thing I have a 64-bit computer. 21:12:39 :P 21:12:54 pikhq: Or an OS that can swap. 21:13:37 Then you will need a 64-bit computer to compile 32-bit program. 21:13:57 64-bit programs can use 32-bit integers. 21:13:58 zzo38: And: pikhq: Or an OS that can swap. 21:14:54 And making 2^32 preprocessor defines will make the preprocessor very slow, isn't it? 21:15:08 Define slow. 21:16:08 I mean it will take a long time to parse all of the definitions, since there is too many, and then the dictionary to search for the words will also be very large, even if it is very efficient. 21:16:18 -!- Wamanuz5 has quit (Ping timeout: 246 seconds). 21:16:26 -!- Wamanuz5 has joined. 21:16:35 zzo38: It's just four billion. 21:16:37 That's not much! 21:17:18 It may be four billion, but it still has to do a lot of things with each one. 21:17:18 -!- elliott has quit (Read error: Connection reset by peer). 21:17:39 -!- elliott has joined. 21:18:13 And even if you can swap, or have 64-bit computer, the preprocessor will still take up a very large amount of too much memory. 21:18:14 Who cares about efficiency, we're talking hypotheticals! 21:18:22 zzo38: It's just four billion. 21:18:23 That's not much! 21:18:41 you know who else liked efficiency 21:18:47 Hitler? 21:18:52 The Jews? 21:18:55 Jewish Hitler? 21:19:03 O, hypothetical. In that case, yes it works. 21:19:04 Jewish Robo-Hitler? 21:19:10 yeah that last one 21:19:11 Robo-Jewish Robo-Hitler? 21:20:02 Then you will need a 64-bit computer to compile 32-bit program. <-- reminds me of some forms of the halting problem :) 21:20:42 (or well, i think they're called hierarchy theorems) 21:24:21 hey oerjan, go prove some theorems about underload. 21:24:36 elliott: i've got one on the backburner 21:24:42 EXCELLENT. 21:24:59 ais523: you are BACKBURNED 21:25:26 basically trying to combine the ~ and ! (the simple one) eliminations to get rid of both simultaneously 21:25:58 oerjan: that's not a theorem! theorems are COMPLICATED things 21:26:11 erm 21:26:18 oerjan: try "underload with reverse-backtracking continuations forms a semigroup under equivalence of compressed results" 21:26:51 underload always forms a semigroup, that's sort of a given for concatenative languages 21:27:00 oerjan: fine, FIELD then 21:27:02 Theorems are not always complicated things, I think 21:27:12 "Underload forms a field under strong influence of bullshit." 21:27:21 THAT MIGHT BE 21:27:48 I've been vaguely trying to prove Burro to form a cartesian closed category with only one object 21:27:58 but in my head, which is a little hard as I can't remember all the axioms 21:28:08 ouch 21:29:11 Are you really sure that Burro programs form a group? Do Revaver2pi programs (without I/O) form a group? I do not know the answer to either question, although I can guess. 21:29:27 zzo38: original Burro didn't, and I pointed out the mistake, and cpressey fixed it 21:30:14 ais523: Well, good. It is what I thought too. What exactly was changed? 21:30:22 aaaaargh, ghc's line-handling sucks 21:30:43 :t init 21:30:43 forall a. [a] -> [a] 21:30:44 forall a. [a] -> [a] 21:31:08 zzo38: the \ command, IIRC; previously \ cancelled out / but not vice versa 21:31:16 ais523: you might want to fix that thutubot lambdabot parsing 21:31:18 it was fixed by making / self-inverse, instead 21:31:35 oerjan: why? it's not like I take thutubot here often anyway 21:31:36 -!- thutubot has quit (Remote host closed the connection). 21:31:38 Yes, that is exactly what I thought was wrong, too. 21:31:48 ais523: well no but lambdabot seems to be permanent now 21:32:05 and it _should_ just be a case of checking the recipient... 21:32:36 MAINTAIN THUTU CODE 21:32:58 elliott: well i mean it _ought_ to be just a single regexp 21:33:03 elliott: at least Thutu isn't massively unmaintainable 21:33:21 it's relatively readable as esolangs go, in the sense of "if you know the lang you can read someone else's program in it, sort of" 21:34:29 +help 21:34:39 apparently no such thing 21:34:43 +? 21:35:07 WE DEMAND DOCUMENTATION. AND HELPDESK. 21:35:24 oh wait 21:37:37 Main.hs: "" (line 1, column 32): 21:37:38 uKnexpected " " 21:37:38 O 21:37:39 *O K 21:37:45 lol "uKnexpected" 21:38:08 it clearly snapped up your K 21:38:09 -!- elliott has quit (Read error: Connection reset by peer). 21:38:19 oerjan: IIRC, +help does exist 21:38:26 but I parted the bot from the channel before you asked it 21:38:33 ais523: yeah yeah 21:38:34 hmm, does your client not show join/part? 21:38:40 -!- elliott has joined. 21:38:40 (actually, I quit it from the server) 21:38:48 ais523: what do you think the "uh wait" was about :D 21:38:54 *oh wait 21:39:09 ah 21:40:00 ais523: for your next trick, write featherbot 21:40:23 i made a NAND out of wool, torches and gravel 21:40:31 elliott: Feather is massively bad at I/O 21:40:47 ais523: meh, good enough 21:40:47 computing with FIRE 21:40:52 I suppose I'll have to implement it eventually just because langs without I/O tend to be hard to tell they're working 21:41:01 but I haven't put much consideration into how 21:41:09 CLEARLY NEEDS MONADS 21:45:38 I would like to know whether you think Revaver2pi programs without ! forms a group. 21:46:28 -!- pikhq has quit (Ping timeout: 240 seconds). 21:46:28 -!- pikhq_ has joined. 21:46:31 http://www.evitaminstore.com/index.php?target=categories&category_id=103 Which of these things needs to be soda? 21:47:06 Gregor: is that your day job? 21:47:08 disappointing lack of cannabis on that list :-P 21:47:11 ais523: haha 21:47:16 My day job is making random soda. 21:47:17 also, my mind inserted an l after the evi 21:47:20 But my night job is making random soda. 21:47:51 Gregor: Maybe mke with all of it mixed together, if you can do so, and then write report about it. 21:48:00 zzo38: Yeahno. 21:48:32 glah, parsec can be a real bitch 21:48:33 ais523: i have that trouble with SATA 21:48:45 heh 21:49:09 Wow. 21:49:23 pikhq_ is astonished 21:49:29 The US has a law on the books mandating that we *invade the Hague* if we are put on trial for war crimes by the International Court of Justice. 21:49:52 Passed in 2002, and signed into law by Bush. 21:50:36 Erm, International Criminal Court. 21:50:38 lawl 21:50:39 That's the actual name. 21:50:54 It also forbids us from giving military aid to any country party to the Court. 21:51:01 Ha 21:51:09 Except NATO members. 21:51:28 ais523: challenge: write a PRNG macro using __COUNTER__ 21:51:34 Note: there are 34 countries *not* party to it. 21:51:37 such that RAND evaluates to an integer expression 21:51:40 :-D 21:52:31 They are: Armenia, Monaco, Russia, Ukraine, Algeria, Angola, Cameroon, Cape Verde, Côte d'Ivoire, Egypt, Eritrea, Guinea-Bissau, Morocco, Mozambique, São Tomé and Príncipe, Sudan, Zimbabwe, Bahamas, Haiti, Jamaica, the United States, Bahrain, Iran, Israel, Kuwait, Kyrgyzstan, Oman, Philippines, Solomon Islands, Syria, Thailand, United Arab Emirates, Uzbekistan and Yemen. 21:52:43 -!- ais523 has quit (Remote host closed the connection). 21:52:58 Erm, sorry. Those are signatories that haven't signed. 21:53:10 Erm, that haven't ratified. 21:53:11 -!- elliott has quit (Read error: Connection reset by peer). 21:53:17 There are *3* states that haven't signed. 21:53:27 China, India, Pakistan. 21:53:39 -!- elliott has joined. 21:53:42 fuck. this. connection 21:54:52 does this mean neither australia nor new zealand receives us military aid? >:) 21:55:13 they just fight with kangaroos 21:56:16 And fuck sheep 21:56:17 oh not to mention japan and south korea... 21:56:24 oerjan: Loophole allowing for "major non-NATO allies" to get aid. 21:58:11 * oerjan notes sudan is on the list of non-ratifiers 21:58:23 despite their president being indicted 21:58:50 pikhq_, I love all those things which are signed by everyone but and the US. 21:58:52 pikhq_: How do I get GMP 4 on Debian? gcc 4.4 appears to require it. 21:59:04 Even though this ships with gcc 4.4.something, I can't find a package. 21:59:18 elliott: apt-get build-dep gcc 21:59:18 :P 21:59:24 Phantom_Hoover: third world countries like monaco 21:59:47 Gregor: Yah, tried that, no GMP-like things appeared. 21:59:50 Gregor: Which is bizarre. 21:59:59 oerjan: The ICC claims a limited form of world-wild jurisdiction. 22:00:01 That ... is bizarre. 22:00:16 Gregor: Now admittedly the version I'm trying to build is 0.0.1 versions ahead of the one this system ships with... but it doesn't mention upping any dependency in the changelog :P 22:00:26 oerjan: The US managed to talk everyone down from giving them universal jurisdiction in the general case. 22:00:26 GMP 3 is easily-available in the repos, but that's quite plainly not GMP 4. 22:00:34 World-WILD 22:00:38 Wide. 22:00:43 http://www.evitaminstore.com/index.php?target=categories&category_id=103 <-- does nobody have any suggestions for which of these need to be soda? :P 22:00:57 Gregor: All of them plus BOMBS (suggestion courtesy of zzo38) 22:01:15 Now, they have jurisdiction: where the person accused of committing a crime is a national of a state party (or where the person's state has accepted the jurisdiction of the court), where the alleged crime was committed on the territory of a state party (or where the state on whose territory the crime was committed has accepted the jurisdiction of the court), or where a situation is referred to the court by the UN Security Council. 22:01:20 Lamp oil, rope, bombs ... you want it? 22:02:30 In addition to jurisdiction over any case of: genocide, crimes against humanity, war crimes, and wars of agression. 22:02:58 If they had any balls, they'd attempt to exercise jurisdiction over Bush & co. 22:03:04 wait they do crimes _other_ than those? 22:03:11 but they'd get invaded!!! 22:03:16 oerjan: yes, they also do petty theft 22:03:28 oerjan: If it gets referred up to them. 22:03:29 * oerjan swats elliott -----### 22:03:45 oerjan: It's a court of last resort. 22:04:11 so wait 22:04:16 the us signed up for the ICC 22:04:17 i knew that, but i thought it was only a court of last resort for that kind of crimes 22:04:18 but hates it? :D 22:04:25 elliott: They signed and then didn't ratify. 22:04:29 elliott: precisely! 22:04:47 "On 17 March 2006, Lubanga became the first person ever arrested under a warrant issued by the International Criminal Court." 22:04:51 xD 22:04:55 i'm imagining a very orderly arrest now. 22:05:32 [[Some commentators have argued that the Rome Statute defines crimes too broadly or too vaguely. For example, China has argued that the definition of ‘war crimes’ goes beyond that accepted under customary international law.[31]]] 22:05:33 oh china 22:05:35 Gregor: All of them plus BOMBS (suggestion courtesy of zzo38) <-- TURKEY BOMBS SHOULD BE AN OBVIOUS ADDITION 22:05:35 you so funny 22:05:49 oerjan: Oh, they don't have jurisdiction over anything else. 22:06:04 oerjan: now i need to find that joke meat energy drink site 22:07:28 Oh, wait, yes they do. 22:07:45 If the UN Security Council refers something to the ICC, the ICC has jurisdiction. 22:07:49 pikhq_: there is /also/ an international court of jews, sorry, justice 22:07:49 Even if it is petty theft. 22:07:58 http://en.wikipedia.org/wiki/International_Court_of_Justice 22:08:00 as a separate thing inside the UN 22:08:12 lol "peace palace" 22:08:36 Note that the US has veto in the UN Security Council. 22:09:22 The US, in a show of dickishness, seems to have arranged it so they have no real reason to comply with any international law. 22:09:33 Or, indeed, anything but "rape everything". 22:09:50 WAR ON NOT RAPING EVERYTHING 22:10:07 NEWSFLASH: NOT RAPING EVERYTHING WINS WAR ON NOT RAPING EVERYTHING 22:15:53 -!- elliott has quit (Quit: Leaving). 22:15:59 -!- elliott has joined. 22:17:03 * Phantom_Hoover thinks he just saw a YouTube comment complaining about how people don't see the human tragedies behind zombie apocalypses. 22:17:30 what 22:17:50 Clearly they have never seen Shaun of the Dead, also known as: THE MOST EMPATHY-FILLED ZOMBIE FILM EVER. 22:18:02 * Phantom_Hoover must torrent that some time. 22:18:04 it's so british 22:18:16 It's so Simon Pegg X-P 22:18:19 I've watched all of the decent Red Dwarf episodes. 22:18:45 Haha, Wikipedia indirectly calls Shaun of the Dead a romantic comedy. 22:18:49 "Shaun of the Dead is a 2004 British romantic zombie comedy" 22:18:56 (Romantic zombie comedy: SOUNDS LIKE SOMETHING MUCH BETTER THAN IT MEANS) 22:19:07 First real multiflavor soda I've made: SO GOOD 22:19:48 Phantom_Hoover: btw, unefunge fits your definition 22:19:58 * Phantom_Hoover facepalms 22:20:05 ? 22:20:13 How did I miss that... 22:20:19 Phantom_Hoover: Miss what, Unefunge? 22:20:32 Yes. 22:23:24 oerjan: looks like j-invariant deleted their reddit account now 22:23:25 HISTORY REPEATS ITSELF 22:23:54 :( 22:29:37 hm !()^ and sorta S are easy to remove ~! from, then it starts getting tricky 22:30:43 hm wait a is easy too 22:30:43 -!- elliott has quit (Read error: Connection reset by peer). 22:31:08 -!- elliott has joined. 22:31:20 -!- pikhq_ has quit (Ping timeout: 240 seconds). 22:31:31 -!- pikhq has joined. 22:33:42 hm actually only ~ is difficult, which means it's just a matter of using the already know removal of that _first_ 22:33:44 -!- MigoMipo has quit (Read error: Connection reset by peer). 22:33:50 *known 22:34:16 All GCC ports for the following operating systems have been declared obsolete: 22:34:16 BeOS (*-*-beos*) 22:34:18 NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 22:34:21 Miscellaneous System V (*-*-sysv*) 22:34:24 NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 22:34:56 oerjan: so do you think that :()^ might be TC? 22:35:00 that seems highly unlikely to me 22:35:05 elliott: i doubt that too 22:35:06 -!- Zuu has quit (Ping timeout: 260 seconds). 22:35:16 oerjan: is that not what you are trying to prove? or do ou mean that :a()^ might be? 22:35:16 just have no actual proof yet 22:35:18 *do you 22:35:20 or whatever 22:35:58 elliott: currently i'm trying to prove that :*()a^ is 22:36:24 i spoke to soon above, i'd somehow missed listing * 22:36:26 *too 22:36:30 oerjan: does your ! removal involve ~? 22:36:38 because if not, you could just use your existing ~ expansion obviously 22:37:05 elliott: the new one _looked_ like it wouldn't, :!()a^ don't seem to require ~ 22:37:24 oerjan: then you're sorted, aren't you 22:37:27 replace ~ with your expansion 22:37:28 apply ! removal 22:37:33 the old one used ~ all over the place, in the form of ais523's ~a*^ 22:37:49 elliott: i'm still missing *, i'm telling you 22:38:04 oerjan: i'm talking about :*()a^ 22:38:50 -!- elliott has quit (Quit: Leaving). 22:38:55 -!- elliott has joined. 22:38:59 oerjan: i'm talking about :*()a^ 22:39:02 yes, i need to implement * in the same transformation. 22:39:24 note that the instructions are not implemented as _exact_ equivalents, only ~ can be done that way 22:39:41 -!- zzo38 has quit (Remote host closed the connection). 22:40:05 oerjan: ofc 22:40:06 instead my idea is to have a stack which looks like this: (junk)(a)(junk)(b)(junk) 22:40:34 and then implement each instruction in such a way that it ignores the junk 22:40:58 (S can only be approximately, naturally) 22:41:02 hey oerjan, can i rename [[BF instruction minimalization]] to [[BF instruction minimalisation]], mr. wiki admin 22:41:24 ... 22:41:27 :D 22:41:33 FFFFFFUUUUUUUUUUUUUUUUUUU 22:42:56 oerjan: DON'T DO IT 22:43:23 actually my recent FFFFFFUUUUUUUUUUUUUU is that FFFFFUUUUUUUUU is now on the reddit default top menu of reddits, and _all_ the slightly scientific subreddits have been shifted out. at this rate i might have to make an actual account ;( 22:43:35 it's 7/12 22:43:37 F7U12 22:43:42 GET IT RIGHT unlike me 22:43:53 oerjan: call your account oerjan, nobody will ever suspect 22:44:03 heh that's actually free 22:44:16 i know it's a specific number, i couldn't be bothered 22:44:22 yay 22:44:33 yes, yay, i can totally STALK YOU ON REDDIT now! 22:44:55 there should be a button to unsubscribe from all the default reddits :p 22:45:00 i'll make a different account for my wet furry porn subreddits, of course 22:45:09 darn 22:45:50 * elliott contemplates `addquote i'll make [...] wet furry porn[...], of course 22:47:01 hi 22:47:03 FEEL FREE 22:47:11 hmm I wonder if Joy was the first notable concatenative language after Forth? 22:48:05 "To facilitate the comparison between the two languages it is also possible to define a w == [dup] dip Then the square of 3 is also computed in Joy by 22:48:05 3 [*] w" 22:48:06 wait what... 22:48:09 surely w == [dup] dip i 22:48:29 it's actually obvious that no matter how i go about it, i can just drop the already known way to reduce ~ away in. unfortunately i may have to use it indirectly for * as well. 22:48:31 nice, found a br*infuck interpreter for TECO 22:48:34 heh i wonder if you can do currying in concatenative languages. 22:48:44 (as in, sanely) 22:49:02 elliott: certainly, ((a)(b)) is a tuple 22:49:12 oerjan: oh, i mean more Joy than Underload 22:49:17 oerjan: as in, instead of 22:49:18 3 3 * 22:49:24 3 * 3 swap call 22:49:25 or something 22:49:29 except that's gros 22:49:30 *gross 22:49:31 obviously 22:50:33 (x)(y)z = (y)a(z)*(x)~^ 22:50:42 oerjan: dammit i am aware okay :D 22:50:47 that you can, physically do it 22:50:58 i mean, could you base a language around it without it being as gross as above 22:51:19 well you can also do 22:51:19 -!- elliott has quit (Read error: Connection reset by peer). 22:51:26 ((y)z)(x)~^ 22:51:37 -!- elliott has joined. 22:51:50 well you can also do 22:51:54 ((y)z)(x)~^ 22:52:01 yes yes yes :P 22:52:30 (x)~^ is practically an idiom in underload, it's nice for lists 22:53:05 ((x1)~^(x2)~^...(xn)~^) gives you an iterable list, and you _don't_ need to know the length in advance 22:53:56 the disadvantage being you also cannot stop early (although you can of course ignore the later ones) 22:55:38 ^ul (junk)(a)(junk)a(*)**a((junk))(~aS:^):^ 22:55:38 ((junk))((a(junk)*))(junk) ...out of stack! 22:55:54 oh wait i hadn't finished righting it 22:56:19 that's supposed to become : 22:58:41 ^ul (junk)(b)(junk)a(*)**a((junk))*:*^(~aS:^):^ 22:58:41 (junk)(b(junk)*)(junk)(b(junk)*)(junk) ...out of stack! 22:58:56 that's better 23:00:05 ^ul (junk)(b)(junk)**(~aS:^):^ 23:00:05 (junkbjunk) ...out of stack! 23:00:08 that's ! 23:00:26 sup oerjan 23:00:47 cheater00: finding out how to eliminate ~ and ! from underload simultaneously 23:00:59 what be underload? 23:01:06 http://esolangs.org/wiki/Underload 23:01:55 ais523's elegant language - and _still_ some of its instructions are redundant for TC-ness 23:02:32 ^ul (junk1)(b)(junk2)a(*)**a(junk3)(~aS:^):^ 23:02:32 (junk3)((b(junk2)*))(junk1) ...out of stack! 23:03:05 hm that's wrong 23:03:50 oh 23:04:20 ^ul (junk1)(b)(junk2)a*a(junk3)(~aS:^):^ 23:04:20 (junk3)((b(junk2)))(junk1) ...out of stack! 23:04:23 ^ul ((x1)~^(x2)~^(x3)~^)(S)~^ 23:04:23 x1 ...out of stack! 23:04:44 ^ul ((x1)~^(x2)~^(x3)~^)((~S):^)~^ 23:04:45 x1 ...out of stack! 23:04:54 you need to apply to something self-replicating 23:04:57 i tried 23:04:58 see last attempt 23:06:02 ^ul ((x1)~^(x2)~^(x3)~^)(S:)~(S:)~ 23:06:09 ...apparently not 23:06:11 oerjan: http://www.ee.ryerson.ca/~elf/hack/academic.html 23:06:17 oh 23:06:20 ^ul ((x1)~^(x2)~^(x3)~^)(S:)~(S:)~^ 23:06:20 x1x2x3 23:07:19 oerjan: hmm can you rebuild the list that way? 23:07:28 sure 23:07:39 wtf, how did my server end up in runlevel "unknown"? 23:07:57 lol, init 23:08:30 they do still use init though, I hope? because I just told init to go to runlevel 3 :) 23:08:50 ^ul ((x1)~^(x2)~^(x3)~^)()~((a(~^)*)~a*^:^):^(~aS:^):^ 23:08:54 well i dunno how it works with this upstart crap. 23:08:55 ...out of time! 23:08:58 huh 23:09:03 oh duh 23:09:43 Peppermint One's bootloader or whatever looks suspiciously like Ubuntu's 23:10:12 oerjan 23:10:14 i have a question 23:10:30 i need you to help me decide upon a possibility in the near time 23:10:39 should i spider the whole of ftp://publications.ai.mit.edu/ or not 23:10:54 ^ul ((x1)~^(x2)~^(x3)~^)()~(((a(~^)*)~a*^a(:^)*):^)~^(~aS:^):^ 23:10:54 (((a(~^)*)~a*^a(:^)*):^)((x3)~^)((x2)~^)((x1)~^)() ...out of stack! 23:11:04 um 23:11:11 ^ul ((x1)~^(x2)~^(x3)~^)()~(((a(~^)~*)~a*^a(:^)*):^)~^(~aS:^):^ 23:11:12 (((a(~^)~*)~a*^a(:^)*):^)(~^(x3))(~^(x2))(~^(x1))() ...out of stack! 23:11:24 duh 23:11:31 argh, what's the "proper" way to make parsec ignore whitespace again... 23:11:31 ^ul ((x1)~^(x2)~^(x3)~^)()~(((a(~^)**)~a*^a(:^)*):^)~^(~aS:^):^ 23:11:31 (((a(~^)**)~a*^a(:^)*):^)((x1)~^(x2)~^(x3)~^) ...out of stack! 23:11:36 elliott: there you go 23:11:40 oerjan: yay 23:11:49 oerjan: now do fold :D 23:11:51 although 23:11:53 i guess that is a fold 23:11:57 just a specialised one :D 23:12:11 -!- iconmaster has quit (Quit: Get out of that boring IRC client! It's no good for you. Bersirc 2.2 is your answer! [ http://www.bersirc.org/ - Open Source IRC ]). 23:12:14 cheater00: you do _not_ need my help on that, no. 23:12:24 b-but 23:12:42 since i have absolutely no expertise in the matter 23:12:52 oerjan: is responding to cheater00's inanity really a productive use of time 23:12:54 elliott: indeed 23:12:56 * elliott says that as an expert timewaster 23:13:08 elliott: um that was to your fold comment 23:13:13 oerjan: i realised 23:13:16 you're not /that/ fast at typing 23:13:42 YOU DON'T SAY 23:13:47 * Phantom_Hoover → sleep 23:14:01 -!- Phantom_Hoover has quit (Remote host closed the connection). 23:14:02 elliott: he typed it in a flash of omnipotent understanding of the universe, which made his thought and action ten thousand times faster. 23:14:23 hm actually a(:^)* is no shorter than :a~* 23:14:35 ^ul ((x1)~^(x2)~^(x3)~^)()~(((a(~^)**)~a*^:a~*):^)~^(~aS:^):^ 23:14:35 (((a(~^)**)~a*^:a~*)(a(~^)**)~a*^:a~*)((x1)~^(x2)~^(x3)~^) ...out of stack! 23:15:15 oerjan: i'm not sure why you're still concerned with character-based languages. everyone knows that the graphics are the future: http://www.archive.org/details/AlanKeyD1987 23:16:28 elliott: also, spaces 23:16:34 i know _that_ 23:16:38 it's lexeme i'm thinking of i think 23:16:46 and lexeme 23:17:00 which appears to not be in parsec 3. 23:17:07 oh it's in .Token I think 23:17:20 Couldn't match expected type `GenTokenParser s u m' 23:17:20 against inferred type `Parser String' 23:17:21 s i g h 23:18:00 elliott: i have a slight amount of goodwill and patience, which is sometimes use. although i think his last comment crossed the line a bit. 23:18:06 *i sometimes 23:18:17 goodwill and pati... sorry, i understand neither of these word 23:18:18 *words 23:18:23 can i set things on fire now? 23:18:30 O KAY 23:18:45 like your house!! very pretty!! ... needs more fire! 23:18:47 (I'M SHOWING SOME GOODWILL HERE, TO DEMONSTRATE) 23:19:03 :t lex 23:19:04 String -> [(String, String)] 23:19:05 huh 23:19:12 > lex "AXIOMATA DECANT" 23:19:12 [("AXIOMATA"," DECANT")] 23:19:15 heh 23:20:07 FAIL 23:20:19 oh wait 23:20:25 it of course takes only one 23:20:38 it's for ReadS parsing 23:21:31 aren't Parser and GenTokenParser compatible? 23:21:42 * Sgeo decides he wants to try Zenwalk 23:22:12 -!- FireFly has quit (Quit: swatted to death). 23:22:13 oerjan: nah 23:22:15 it's for the "language" stuff 23:22:17 that nobody uses 23:22:29 in old parsec Parser is just a type synonym for GenParser Char () 23:22:47 @pl let f _ [] = id; f e (x:xs) = f e xs . g e x 23:22:47 (line 1, column 9): 23:22:47 unexpected "[" 23:22:47 expecting pattern or "=" 23:22:51 @pl let f _ [] = id; f e (x:xs) = f e xs . g e x in f 23:22:51 (line 1, column 9): 23:22:51 unexpected "[" 23:22:51 expecting pattern or "=" 23:22:52 oh come on 23:23:03 :t (>=>) 23:23:04 forall a (m :: * -> *) b c. (Monad m) => (a -> m b) -> (b -> m c) -> a -> m c 23:23:04 :t foldM 23:23:05 forall a b (m :: * -> *). (Monad m) => (a -> b -> m a) -> a -> [b] -> m a 23:23:10 -!- jayCampbell has quit (Ping timeout: 245 seconds). 23:23:18 elliott: SINCE WHEN DOES @pl DO MULTIPLE CASE PATTERNS 23:23:39 it barely does single ones 23:23:56 @hoogle foldM 23:23:56 Control.Monad foldM :: Monad m => (a -> b -> m a) -> a -> [b] -> m a 23:23:57 Control.Monad foldM_ :: Monad m => (a -> b -> m a) -> a -> [b] -> m () 23:23:57 Data.Foldable foldMap :: (Foldable t, Monoid m) => (a -> m) -> t a -> m 23:23:58 oerjan: BLAH BLAH BLAH 23:25:03 elliott: although that is obviously a fold over \x r -> r . g e x 23:25:12 oerjan: well yes. 23:25:29 if you want to be PEDANTIC about it. 23:26:00 elliott: also you use f e only for the g e part, so you can just as well combine it 23:26:56 "In her will [...] she has asked that her skin be turned into wallets, her feet into umbrella stands, and her flesh into 'Newkirk Nuggets,' then grilled on a barbecue." 23:27:01 Wikipedia on Ingrid Newkirk, founder of PETA. 23:27:06 The *fuck*? 23:27:27 pikhq, who cares? It's not like she'll need her body after she's dead. 23:28:21 indeed :D 23:28:23 :t \e -> foldr (flip (.) . g e) id 23:28:24 forall t a a1. (SimpleReflect.FromExpr (t -> a1 -> a -> a)) => t -> [a1] -> a -> a 23:28:28 erm 23:28:37 :t \ge -> foldr (flip (.) . ge) id 23:28:38 forall a a1. (a1 -> a -> a) -> [a1] -> a -> a 23:28:54 Sgeo: Still fucking weird coming from someone morally opposed to any use of animal-bits post-mortem. 23:29:13 oerjan: it should probably be a foldl' though 23:29:18 pikhq: it's consensual 23:29:26 pikhq: it's meant to be, like, satirical. 23:29:30 it's still fucking creepy tho 23:30:00 :t \(p::[a]) f -> foldl' f [] p 23:30:01 A pattern type signature cannot bind scoped type variables `a' 23:30:01 unless the pattern has a rigid type context 23:30:01 In the pattern: p :: [a] 23:30:04 FUCK YOU 23:30:10 :t \p f -> foldl' f [] (p :: [a]) 23:30:10 Inferred type is less polymorphic than expected 23:30:11 Quantified type variable `a' is mentioned in the environment: 23:30:11 p :: [a] (bound at :1:1) 23:30:14 :t \p f -> foldl' f [] p 23:30:15 forall b a. [b] -> ([a] -> b -> [a]) -> [a] 23:30:24 :t \f p -> foldl' f [] p 23:30:24 forall b a. ([a] -> b -> [a]) -> [b] -> [a] 23:30:39 Not that surprising that PETA would have weird, creepy shit like that going on, though. Considering that this is a schizo organisation that is both opposed to killing animals and kills animals. 23:32:36 elliott: i don't think it looks like a foldl' unless you provide the final argument as well 23:32:50 run :: Env -> [E] -> ([E] -> [E]) 23:32:51 oerjan: ^ 23:32:57 it's basically just repeated application of eval 23:33:02 where eval :: Env > E -> ([E] -> [E]) 23:33:04 repeated composition, rather 23:33:08 eval last . eval secondtolast . ... 23:33:37 let f _ [] y = y; f e (x:xs) y = f e xs (g e x y) in f 23:33:54 then it's an "obvious" foldl 23:34:20 yeah, it's just that i'm retarded 23:34:30 foldl' (flip (f e)) y 23:34:37 er, *g e 23:34:39 Couldn't match expected type `[E] -> [E]' 23:34:39 against inferred type `[E]' 23:34:39 In the expression: foldl' (flip (eval e)) [] p 23:34:39 In the definition of `run': run e p = foldl' (flip (eval e)) [] p 23:34:39 Failed, modules loaded: none. 23:34:39 beep 23:36:50 boop 23:38:05 run e p = foldl' (\f i -> eval e i . f) id p 23:38:06 here 23:38:14 @pl \f i -> eval e i . f 23:38:14 flip ((.) . eval e) 23:38:17 @pl \i f -> eval e i . f 23:38:18 (.) . eval e 23:38:31 run e = foldl' (flip ((.) . eval e)) id 23:38:47 now why does that not do anything... 23:38:52 oh 23:38:55 parser is broken 23:42:47 ^ul (junk1)(b)(junk2)a(*)**a((junk3))*(junk4)(~aS:^):^ 23:42:48 (junk4)((b(junk2)*)(junk3))(junk1) ...out of stack! 23:43:32 ok that's the right a i think 23:44:51 ^ul (junk1)((boo!)S(junk2))(junk3)a(*)**^(junk4)(~aS:^):^ 23:44:51 boo!(junk4)(junk2junk3)(junk1) ...out of stack! 23:44:59 oops 23:45:07 oh 23:45:16 ^ul (junk1)((boo!)S)(junk3)a(*)**^(junk4)(~aS:^):^ 23:45:16 boo!(junk4)(junk1junk3) ...out of stack! 23:45:51 hey oerjan 23:45:53 you know what sucks? 23:45:57 ^ul (junk1)((boo!)S)(junk3)a(*)**^(~aS:^):^ 23:45:57 boo!(junk1junk3) ...out of stack! 23:45:58 being unable to use point-free style with pattern-matching 23:46:02 conside 23:46:04 *consider 23:46:05 that's the one for ^ 23:46:13 foo (C x) = x+3 23:46:17 you should be able to write 23:46:21 foo . C = (+3) 23:46:22 :D 23:46:34 O_o 23:47:12 oerjan: what, that's genius. 23:48:13 O KAY 23:48:47 ever so slightly syntactically ambiguous, though. 23:49:33 hm actually if you know the kinds of constructors you _could_ disambiguate that. 23:49:53 oerjan: just wait until you get two argument constructors. then we have to bring out the titties. 23:50:25 "Sir, sir! Our constructors have TWO ARGUMENTS!!" "... BRING OUT THE TITTIES." "A...are you sure that's a good idea, sir?!" "THEY'RE OUR ONLY HOPE" 23:51:02 -!- pikhq_ has joined. 23:51:49 -!- pikhq has quit (Ping timeout: 276 seconds). 23:53:51 Okay, finally got specs for SHA-512/224 and SHA-512/256. 23:55:53 "The minimum adjustments to the existing environment of Venus to support human life would require three major changes to the planet: 23:55:54 Reducing Venus's 450°C (850°F) surface temperature. 23:55:54 Eliminating most of the planet's dense 9 MPa (~90 atm) carbon dioxide atmosphere, via removal or conversion to some other form. 23:55:54 Addition of breathable oxygen to the atmosphere." 23:55:59 To terraform Venus, first, make Venus nothing like Venus. 23:56:06 WTF 23:56:16 Who decided that a .torrent.zip made any sense? 23:58:23 * oerjan recalls some suggestion of settling the upper atmosphere of venus with giant airships first, solves two of the problems 23:58:47 oerjan: i would _not_ sign up for that :D 23:58:50 -!- poiuy_qwert has quit (Quit: This computer has gone to sleep). 23:58:59 elliott: IT WOULD BE SAFER THAN ON THE SURFACE 23:59:02 "What's the weather like outside?" "Oh, you know... Venusy..." 23:59:11 "WE HAVE A RIP!" "Aw feck."