00:04:08 <oerjan> it has been known to associate with certain ... identities. sometimes while commuting.
00:05:05 <oerjan> and it is also suspected of distribution, although we have no firm evidence
00:06:23 <oerjan> so we simply had to bust this ring.
00:06:33 <shachaf> oerjan: I'm sure you'll be abel to come up with something.
00:08:03 <shachaf> oerjan: If you manage to join their secret meet, you'll have a field day.
00:08:33 <oerjan> don't lattice get _all_ out of hand, now
00:24:04 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:35:37 <oerjan> darn wikipedia front page is knocking monads
00:37:27 <Lumpio-> Monads are impossible for humans to understand
00:38:04 <elliott> Lumpio-: is the joke that that's bullshit
00:38:49 <oerjan> itt: Lumpio- reveals himself to be soundnfury in disguise
00:39:08 <elliott> well it is ok because we have kmc here to argue with tedious morons who say bullshit about haskell
00:40:42 <Lumpio-> The joke is that it's the truth
00:40:58 <Lumpio-> Developers should stick to well-established and easily understandable industry-standard design patterns
00:41:26 <elliott> Lumpio-: are you really this stupid hahahahahahahahaha
00:41:50 <oerjan> no way that last sentence wasn't a joke
00:41:55 <Lumpio-> I take it you have never experienced working in the enterprise.
00:42:08 <elliott> ok yeah you are obviously just bullshitting at this point
00:42:52 <Lumpio-> We do not take kindly to propeller-cap wearing kids trying to replace our proven practice COBOL systems with their new fancy schmancy C or Haskell or whateveritis these days
00:43:06 <monqy> there is no way you're not joking
00:43:06 <lambdabot> monqy: You have 2 new messages. '/msg lambdabot @messages' to read them.
00:43:30 <oerjan> we clearly is missing a language called whateveritis
00:43:34 <Lumpio-> Would *you* have your stock transactions go through a "monad"?
00:43:56 <monqy> nobody likes your joke stop it you're hurting our joke feelings
00:44:09 <monqy> i know this because i conducted a joke meeting
00:44:15 <monqy> we all agreed your joke is bad
00:44:15 <Lumpio-> Punched tape has worked perfectly fine for the last eleven decades and it's not going anywhere.
00:44:28 <elliott> joke council handing down joke fines
00:44:35 <elliott> joke sentencing of joke jailtime
00:44:45 <elliott> people get joke arrested and go to joke prison
00:44:50 <Lumpio-> I'll be sure to file an advance application the next time I feel like making a joke
00:45:35 <elliott> joke council accepts only .rtf
00:50:20 <monqy> it's been years since I've last seen an rtf
00:50:26 <monqy> maybe not even a year since I've seen docx
00:51:19 <monqy> I guess this means rtf is better???
00:52:04 <elliott> monqy: it's because geocities died and took all the rtfs with it : (
01:03:30 <kmc> pumpkin jokes.pdf
01:13:56 -!- TeruFSX has joined.
01:32:12 -!- jiella has quit (Quit: Leaving.).
01:57:21 <itidus21> the nice thing about punched tape is it's human readable
01:57:45 -!- augur has quit (Read error: Connection reset by peer).
01:57:46 -!- augur_ has joined.
01:58:34 <itidus21> because, you just know that any year now the property of technology that doesn't need electricity will become important for some reason
02:00:57 <coppro> bec isn't supposed to lose his sword like that I think
02:03:08 <oerjan> itidus21: http://en.wikipedia.org/wiki/Dies_the_Fire hth
02:27:02 -!- oerjan has quit (Quit: Good night).
02:33:34 -!- hogeyui_ has quit (Ping timeout: 244 seconds).
02:34:25 <itidus21> "a mysterious worldwide event that suddenly alters physical laws so that electricity, gunpowder, and most other forms of high-energy-density technology no longer work." just because
02:37:12 <zzo38> Is that possible? I doubt it. Anyways, even if such things is possible, it may be a "universewide" event, not just the worldwide event.
02:42:19 -!- augur_ has quit (Read error: Connection reset by peer).
02:43:13 -!- augur has joined.
02:43:58 <elliott> it doesn't have to be possible to be a good sci-fi premise
02:45:28 <zzo38> OK, but even in sci-fi, maybe it should be apply for universe, possibly other thing in universe also goes wrong later they realized later on
02:52:51 -!- augur has quit (Remote host closed the connection).
02:57:08 -!- augur has joined.
03:03:47 <itidus21> a special goo was invented such that an animal's form interpolates with the last animal it was in contact with
03:04:40 <itidus21> when you think about it, thats quite an impressive backstory to spin to account for anthropomorphic turtles
03:11:17 <itidus21> google translation shuffle from "once upon a time he said riddle me this." to "Time, he said to me once when this mystery."
03:21:06 -!- TeruFSX_ has joined.
03:32:10 -!- augur has quit (Remote host closed the connection).
03:51:38 -!- Jafet has joined.
04:37:24 <zzo38> How do I convert double to HWND type in C?
04:39:16 -!- ais523 has quit.
04:39:26 <kmc> @hoogle Double -> HWND
04:39:27 <lambdabot> Unsafe.Coerce unsafeCoerce :: a -> b
04:39:27 <lambdabot> Control.OldException throwDyn :: Typeable exception => exception -> b
04:39:45 <kmc> "Warning: unknown type, but why not try unsafeCoerce anyway?"
04:40:20 <zzo38> I mean in C, not in Haskell.
04:41:19 <kmc> this is one of those cases where I say something which is not 100% a serious suggestion
04:42:08 -!- augur has joined.
04:42:21 <zzo38> How to make a DLL in MinGW?
04:43:02 -!- TeruFSX has quit (Ping timeout: 256 seconds).
04:43:49 <zzo38> Something like g_hWnd=(HWND)(int)hwnd; seems to compile at least, but I don't know if it is correct, and it won't link, maybe I need some switch to tell it to make DLL?
04:46:20 <zzo38> I tried -Wl,--export-all-symbols -Wl,--dll but it doesn't work.
04:47:13 -!- hogeyui has joined.
04:49:40 <zzo38> Maybe it works now....
04:50:50 <quintopia> zzo38: do you know a program that converts formatted text to .txt by wrapping italics in // and underlines in __ etc
04:52:10 <zzo38> quintopia: I don't know, but what file format is the input in?
04:53:08 <elliott> well presumably you care since you wanted a program for it :P
04:53:17 <elliott> there are html to markdown converters
04:53:25 <quintopia> well i'd like to know if it exists for any format
04:53:26 <elliott> cf. http://milianw.de/projects/markdownify/
04:54:03 <kmc> quintopia: pandoc can convert stuff to markdown
04:54:25 <kmc> html and latex in particular
04:54:34 <kmc> though it's not, like, a full implementation of the TeX macro engine
05:02:12 -!- FreeFull has quit (Quit: 6am).
05:32:24 -!- ais523 has joined.
06:38:52 -!- ais523 has quit (Read error: Connection reset by peer).
06:39:07 -!- ais523 has joined.
06:42:07 <zzo38> How good is ARCFOUR as just a random number generator?
07:15:38 -!- zzo38 has quit (Remote host closed the connection).
07:28:54 -!- ais523 has quit (Read error: Connection reset by peer).
07:41:13 -!- mtve has joined.
07:41:25 -!- AnotherTest has joined.
07:42:16 <Jafet> It's better than RANDU.
07:46:27 <kallisti> anyone go to the magic prerelease
07:46:59 -!- sivoais has quit (Ping timeout: 260 seconds).
07:49:39 -!- dajfsa has quit (Quit: leaving).
07:59:54 -!- sivoais has joined.
09:01:56 -!- Sgeo has quit (Read error: Connection reset by peer).
09:09:56 -!- Sgeo has joined.
09:27:28 -!- ais523 has joined.
10:07:33 -!- Arc_Koen has joined.
10:08:13 -!- Arc_Koen has quit (Read error: Connection reset by peer).
10:08:28 -!- Arc_Koen has joined.
10:21:48 -!- copumpkin has quit (Ping timeout: 245 seconds).
10:22:25 -!- copumpkin has joined.
10:26:59 -!- carado has joined.
10:40:41 -!- carado has quit (Quit: Leaving).
11:08:16 -!- barts has joined.
11:11:16 -!- barts_ has quit (Ping timeout: 248 seconds).
11:22:57 -!- jiella has joined.
11:30:56 -!- monqy has quit (Quit: hello).
11:39:44 -!- kinoSi has quit (Read error: Connection reset by peer).
11:40:11 -!- kinoSi has joined.
12:06:05 -!- heroux_ has quit (Read error: Operation timed out).
12:10:28 -!- heroux has joined.
12:20:01 -!- Phantom_Hoover has joined.
12:31:29 -!- boily has joined.
12:35:11 <Sgeo> I say I know why you're mentioning Ian Stewart to me, you are curious what my reaction is.
12:36:41 <Sgeo> I want to see if I can find the quote
12:36:42 <Arc_Koen> I would've said something irrelevant that fact is to me, but actually I'M VERY JEALOUS
12:37:38 <coppro> There's a guy at UW who did his PhD under Hawking
12:38:23 <Sgeo> "Page 435 is not part of this book preview"
12:38:36 <Sgeo> Now I'm annoyed, since it now seems very likely that that's the exact page I want
12:40:13 <Sgeo> The part where there's an advertisement screaming something like "Supersymmetric Sisters!" or something like that, very uncomfortably reminiscent of quantum mechanics quackery
12:41:02 <Arc_Koen> that sounds more like porn than physics to me :/
12:41:02 <Sgeo> Not at all convinced that the best approach to equality is "Hey! In some invisible dimensions, we actually have more sides than the men"
12:41:39 <Sgeo> Actually, that wasn't the exact concept, but something similar to it
12:41:46 <Sgeo> Number of symmatries I think
12:43:16 <Sgeo> I think maybe trying to push for equality based on the idea that number of symmetries is irrelevent is better than "technically, we're better"
12:44:58 <coppro> I was in the same room as hawking once is what say I
12:45:23 <quintopia> you dont have the same galactic scale as i coppro
12:45:24 <fizzie> Well, *I* see prof. (em.) Kohonen here every now and then! Uh... I guess that's not terribly impressive, he's maybe not exactly a household name.
12:45:51 <quintopia> for i can claim to have been on the same planet as hawking, and there are billions more planets than there are rooms!
12:46:20 <Sgeo> http://i.imgur.com/OkbGc.jpg
12:46:43 <quintopia> not only that, but i managed to be alive at the same time as hawking! out of the ~14b yrs the universe has existed and at least that much more it will go on
12:46:51 <Sgeo> I'm gonna puke
12:47:03 <Sgeo> (Not for reasons relevant to this conversation)
12:48:09 <fizzie> "at least that much more it will go on" not if I have something to say about that! ...er, nothing.
12:50:11 -!- ogrom has joined.
12:55:58 -!- ais523 has quit (Ping timeout: 245 seconds).
12:56:29 <elliott> fizzie: PROFESSOR KOHONEN?!??!?!?!
12:56:32 <elliott> fizzie: Tell him he's my hero.
12:56:40 -!- aloril_ has quit (Ping timeout: 244 seconds).
13:04:53 <Arc_Koen> fizzie: so I wanted to add a possibility for subroutines in Kipple, but I did not want to add new syntaxes
13:05:08 <Arc_Koen> I made it so that stacks are executable, but that doesn't sound like Kipple at all
13:06:40 <fizzie> I saw something about that. It's not all *that* far off, really.
13:07:46 <Arc_Koen> well I didn't write down what it meant to execute a stack exactly - for instance, should it be parsed already? or can it still contain whitespace and numbers expressed as multiple digits?
13:08:46 <Arc_Koen> maybe I should just include a way to define and call functions... but as I said I don't really like the idea of new syntax - I'd like everything to use stacks
13:09:13 <Arc_Koen> or maybe I should make functions, and include a special "call stack"
13:11:04 <Arc_Koen> (isn't there already a language that allows to access its call stack?)
13:13:47 -!- aloril_ has joined.
13:15:49 <fizzie> Forth, at least. If a bit unportably.
13:19:05 <fizzie> http://sprunge.us/XMOh -- nasty, eh?
13:34:00 <Arc_Koen> fizzie: http://sprunge.us/SDDP
13:34:10 <Arc_Koen> I'm thinking the call stack doesn't add anything useful, actually
13:39:45 <itidus21> i think the entire purpose of humans existing is to have a species which does things that do not make any sense whatsoever from a biological standpoint
13:40:08 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
13:40:35 <itidus21> thats the whole point.. thats why the earth is not free of humans
13:42:23 <itidus21> we are a species which spends most of it's time seeking states of intoxication and laughter
13:43:06 <itidus21> and when not doing that we try to travel along roads at 300miles an hour just because we can
13:44:10 <Arc_Koen> so you think other species don't do that?
13:44:33 <elliott> Arc_Koen: i am actually fairly confident other species do not drive on roads at 300 mph just because they can
13:44:52 <itidus21> i pulled 300mph mostly out of hte air
13:47:24 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:47:44 <itidus21> by analyzing bits and pieces of the universe it can seem to make sense, but taking everything as one thing, it can only be some kind of joke
13:48:20 <Arc_Koen> so you've read that egg thing?
13:49:45 <itidus21> if you ask an infinite number of "why?" questions, in the limit you find "for a joke"
13:50:34 <itidus21> i dont know what in the limit means...
13:50:52 -!- boily has quit (Quit: Poulet!).
13:50:54 -!- boily1 has joined.
13:53:59 <Arc_Koen> should make a bot that does that... "I love chocolate" "Why do you love chocolat?" "because it tastes good" "Why does it taste good?" "because there is cocoa in it "Why is there cocoa in it?" and so on
13:55:24 <itidus21> "why did the chicken cross the road?" "to get to the other side"
13:56:52 <itidus21> or at least i would like to think it's a joke
13:57:13 -!- Nisstyre-laptop has quit (Ping timeout: 245 seconds).
13:57:50 <Arc_Koen> why, has the universe been bullying you?
13:58:51 <itidus21> facebook is somewhat of a joke
14:07:35 -!- Phantom_Hoover has joined.
14:09:31 -!- copumpkin has joined.
14:10:25 <itidus21> by "we" i do basically mean "me"
14:12:49 <quintopia> "i am a species which spends most of its time seeking states of intoxication and laughter"
14:20:40 <itidus21> "For some time, Gell-Mann was undecided on an actual spelling for the term he intended to coin, until he found the word quark in James Joyce's book Finnegans Wake"
14:21:13 <quintopia> i see you've been reading the wiki article on quarks
14:22:46 <quintopia> it would be a better story if it went
14:23:23 <itidus21> my plan was to say: i am tempted to say i wonder what would happen if there were no electrons. but then it would mean there were no quarks, but then i pondered saying no particles, but quarks were particles
14:23:30 <quintopia> "Gell-Mann was undecided on an actual spelling for the term he intended to coin, until he saw an episode of Star Trek: Deep Space Nine featuring everyone's favorite Ferengi"
14:23:33 <itidus21> so i wonder what would happen with no particles
14:24:12 <Slereah> Also what if everything was made of asparagus
14:25:01 <quintopia> i wonder what would happen if time went backwards and reverse entropy was the norm
14:25:08 <quintopia> damn that one actually has an answer
14:25:58 <itidus21> sometimes i act like there are no particles
14:26:06 <quintopia> i wonder what would happen with the fourth fundamental force being antigravity
14:26:41 <Slereah> Also I'm not sure reversing time would reverse entropy
14:26:46 <itidus21> ah that reminds me to check whatif
14:36:23 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
14:37:00 <itidus21> i find most whatifs end in tragedy
14:50:13 -!- FreeFull has joined.
15:00:49 -!- augur has quit (Remote host closed the connection).
15:00:58 -!- sivoais has quit (Ping timeout: 245 seconds).
15:09:40 -!- sivoais has joined.
15:09:47 -!- jiella1 has joined.
15:11:00 -!- jiella has quit (Ping timeout: 244 seconds).
15:14:12 -!- aloril_ has quit (Read error: Operation timed out).
15:28:22 -!- aloril_ has joined.
15:36:41 -!- Sgeo has quit (Ping timeout: 245 seconds).
15:38:58 -!- Sgeo has joined.
15:44:55 -!- ogrom has quit (Quit: Left).
15:45:57 -!- Sgeo has quit (Read error: Connection reset by peer).
15:46:23 -!- Sgeo has joined.
15:48:20 -!- Phantom_Hoover has joined.
16:00:03 -!- augur has joined.
16:03:13 <Arc_Koen> itidus21: WE BLEW THE MOON UP!! that's not a tragedy that's AN ACCOMPLISHMENT
16:03:37 <ion> The introduction of emulators created to play illegally copied Nintendo software represents the greatest threat to date to the intellectual property rights of video game developers. […] the assumption that the games involved are vintage or nostalgia games is incorrect. Nintendo is famous for bringing back to life its popular characters for its newer systems http://www.nintendo.com/corp/legal.jsp
16:05:26 <Arc_Koen> well, emulators themselves are legal, aren't they?
16:06:07 -!- augur has quit (Read error: Connection reset by peer).
16:06:29 <fizzie> Arc_Koen: Possibly, but since they are the GREATEST THREAT maybe they shouldn't be!
16:06:35 -!- augur has joined.
16:07:48 <fizzie> "Such emulators have the potential to significantly damage a worldwide entertainment software industry which generates over $15 billion annually, and tens of thousands of jobs."
16:07:57 <fizzie> See, you are RUINING it.
16:08:43 <fizzie> In case you feel like saying something to the contrary, remember that it's not open to debate.
16:08:47 <fizzie> ("Emulators developed to play illegally copied Nintendo software promote piracy. That's like asking why doesn't Nintendo legitimize piracy. It doesn't make any business sense. It's that simple and not open to debate.")
16:09:58 <fizzie> They also have the "linking is infringing" argument, I note. That's always a fun one.
16:22:10 <Sgeo> How many ROMs exist that aren't copies of Nintendo games?
16:22:14 <Sgeo> As in, homebrew ROMs?
16:25:07 <fizzie> I don't know how you could count that kind of thing, since there's presumably quite a few that only exist on their creator's computer.
16:27:46 <Sgeo> Are there a significant enough number that there's at least some usage of emulators that are legitimate?
16:31:05 <Arc_Koen> (but I think it's a good approximation)
16:31:29 <fizzie> pouet's search finds 33 releases for NES; presumably watching those on an emulator should be legal. Depending, of course, whether those involve any burned-in-ROM code for which Nintendo claims copyright.
16:32:34 -!- Arc_Koen has quit (Read error: No route to host).
16:33:02 -!- Arc_Koen has joined.
16:33:31 -!- Arc_Koen has quit (Client Quit).
16:33:34 <fizzie> (As well as 98 SNES releases, and somewhere around 250 GBA things.)
16:34:01 <shachaf> Can't you legally make a copy of a ROM you have for your own use?
16:36:34 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
16:36:42 <fizzie> shachaf: Not according to Nintendo, because the copying devices are illegal.
16:36:46 <fizzie> Due to their "functions".
16:37:10 <fizzie> "Are Game Copying Devices Illegal? Yes. Game copiers enable users to illegally copy video game software onto floppy disks, writeable compact disks or the hard drive of a personal computer. They enable the user to make, play and distribute illegal copies of video game software which violates Nintendo's copyrights and trademarks. These devices also allow for the uploading and downloading of ...
16:37:16 <fizzie> ... ROMs to and from the Internet. Based upon the functions of these devices, they are illegal."
16:37:17 -!- elliott has quit (Read error: Connection reset by peer).
16:37:29 <fizzie> I'd argue, but I'm sure this too is "not open to debate".
16:38:46 <fizzie> Anyway, I don't think there's (at least currently) a DMCA exemption for archival copying, so they might be (US-)right for all I know.
16:47:07 <mroman> So... CD-Burners are illegal too?
16:47:31 <mroman> also: By that definition, any regular computer is illegal?
16:47:38 -!- Phantom_Hoover has joined.
16:47:56 <Sgeo> I need to talk out my emotions somewhere, and my gf isn't online
16:48:38 <Sgeo> I'm probably not actually going to talk them out
16:48:41 <Sgeo> At least, not here
16:49:25 <fizzie> mroman: Well, IANAL. It might have to do with a value judgement on whether the device is "intended" to circumvent technical rights-protection measures or not, and whether it has any other uses. At least the Finnish anti-circumvention law criminalizes "circumvention devices" that have "only limited commercial uses" in addition to the circumvention bit. For regular computers and CD burners, I ...
16:49:32 <fizzie> ... would think it's reasonably clear they have substantial noninfringing uses.
16:54:31 <fizzie> (At least the Finnish law has a general-purpose exemption that you are allowed to circumvent a protection if you need to in order to use the product; so it'd be legal to go through AACS to watch a legally bought Blu-ray disc. Er, assuming you were clever enough to figure out how to do that; importing, distributing, selling, etc. of devices, products, parts or services to do it is of course a ...
16:55:31 <Sgeo> fizzie, does your client do some sort of wrapping thing automatically
16:55:53 <Sgeo> There exists a person with the nick of fi
16:56:06 <Sgeo> Discovered while trying to VERSION fizzie
16:56:26 <fizzie> It does, and I've configured it with a somewhat pessimal auto-wrapping line length limit.
16:56:59 <fizzie> Because the one it calculates (from uhost prefix, channel/target name etc.) sometimes fails miserably and leaves a few characters clipped.
16:57:14 <fizzie> (It's the quasi-standard irssi splitlong.pl.)
16:59:11 <fizzie> The autoguessed length is 497 - length($server->{nick} . $server->{userhost} . $target) where 497 is 510 - length(":! PRIVMSG :") and I think I did puzzle out why it's not always right but forgot already.
17:00:14 <fizzie> I've just fixed it to 400 bytes of actual content.
17:02:37 <fizzie> Perhaps it was simply the mismatch between "fis@iris.zem.fi" and "fis@unaffiliated/fizzie".
17:03:03 <fizzie> The former presumably being what $server->{userhost} expects.
17:06:06 <Sgeo> And to not feel so nauseous
17:16:37 -!- augur has quit (Remote host closed the connection).
17:19:15 -!- carado has joined.
17:27:04 -!- ogrom has joined.
17:39:25 -!- kinoSi has quit (Read error: Connection reset by peer).
17:39:53 -!- kinoSi has joined.
17:46:58 -!- Arc_Koen has joined.
17:50:07 -!- carado has quit (Quit: Leaving).
17:52:26 <Sgeo> One of my typical channels for emotion stuff is also mostly inactive right now
17:55:07 <Phantom_Hoover> just ask that guy who was contemplating suicide a while back!
17:57:35 <Sgeo> I feel nauseous. Not sure if I'm physically sick, or if it's just emotions+lack of sleep
17:57:39 <Sgeo> I'm not running a fever.
17:58:54 <Sgeo> But I'm having some emotions, and unsure if they may be causing the symptoms
18:00:02 <fizzie> What, there was an #esoteric suicide and I missed it?
18:01:55 <itidus21> i think he means unknown character
18:02:22 <itidus21> <-- aware of the useless trivias
18:03:28 * Sgeo mentally replaces "useless" with "wicked". The wicked trivias
18:03:29 -!- sivoais has quit (Ping timeout: 255 seconds).
18:04:35 <Phantom_Hoover> fizzie, he didn't commit suicide, at least not in-channel.
18:04:59 <itidus21> for some reason i associate angst with fried chicken
18:07:28 -!- sivoais has joined.
18:07:38 <itidus21> i don't think it's synesthesia
18:10:46 <fizzie> Synæsthesia. (I just wanted a ligature.)
18:22:38 <itidus21> s/bringing back to life its popular characters/shamelessly porting very old games/
18:23:40 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
18:26:54 <Sgeo> Who was it that said that making a game made you immortal?
18:27:03 <Sgeo> Because people will find ways to keep the game working
18:27:23 <Sgeo> Sounds like something Sam Hugh would say, except he said it about math
18:29:09 <Sgeo> Hmm, I might be changing my mind about Ian
18:30:31 <Sgeo> It does make sense to say "Your arbitrary reason for discrimination doesn't even work", even if I would prefer "Arbitrary reasons for discrimination just suck, don't do that"
18:31:28 <Arc_Koen> problem is, if someone disagrees with your second statement, you're in a dead-end
18:31:42 <Arc_Koen> whereas it might be possible to reason him using the first
18:35:48 <Sgeo> Oh, PH isn't here
18:35:57 <Sgeo> @ask Phantom_Hoover Have you read Flatterland?
18:36:19 <Sgeo> @tell Phantom_Hoover Do read logs around when I @ask'd that.
18:50:39 -!- AnotherTest has left.
18:51:15 <tswett> Sgeo: would you like me to object to the intent to deregister you, on your behalf?
18:55:29 <Sgeo> o.O https://twitter.com/shit_hn_says
18:58:29 -!- oerjan has joined.
18:59:50 -!- zzo38 has joined.
19:01:36 <Sgeo> shachaf, why what?
19:03:20 <shachaf> "if you program and want any longevity to your work, make a game. all else recycles, but people rewrite architectures to keep games alive."
19:04:27 -!- atriq has joined.
19:06:10 <atriq> I completed Bastion this afternoon
19:06:10 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
19:06:12 <atriq> The ending was sad
19:06:39 <Sgeo> shachaf, oh, I feel like a derp now.
19:06:41 <Sgeo> And thank you.
19:08:38 <atriq> fizzie, in mcmap's colour scheme (in colors.txt and block.c)
19:10:46 <atriq> How does the alpha work?
19:10:53 <atriq> As in, which end's which?
19:12:29 <olsner> apparently, the alpha is bi-endian so that depends on which mode it's in
19:19:30 <oerjan> <itidus21> i find most whatifs end in tragedy <-- he does seem to make a point of that
19:23:21 <atriq> Maybe he's sad because his wife has cancer
19:25:03 <kmc> i think it's because bad things happening to other people is the basis of humor
19:25:13 <kmc> (not actually true)
19:25:21 <atriq> I thought bad puns were the basis of humour
19:33:55 <shachaf> Puns *are* bad things happening to people.
19:34:33 <atriq> This is like when I first got told that Monads *are* monoids in the category of endofunctors
19:35:37 <shachaf> I have the feeling that reading a page full of quotes from _Stranger in a Strange Land_ is a better experience than reading the actual book.
19:37:51 -!- ogrom has quit (Quit: Left).
19:45:59 <fizzie> atriq: It's actually opacity, so 255 is fully opaque, 0 is completely transparent.
19:48:19 <fizzie> atriq: (As far as I know, anyhow. And water is special.)
19:51:02 <oerjan> @tell Arc_Koen did you mean to remove an a from the kipple truth-machine program? i don't know kipple so...
19:58:49 -!- jiella1 has changed nick to jiella.
20:03:51 <zzo38> Is the random number generator I used in Famicom Hangman OK?
20:07:43 <kmc> http://www.daniellesucher.com/2011/11/jailbreak-the-patriarchy-my-first-chrome-extension/
20:11:35 <itidus21> "Damn it Jim, I'm a roleplayer not a whore."
20:16:50 <atriq> fizzie, what's the point of block traits? The only one with LAVA_TRAIT is lava and lave, similar for WATER_TRAIT
20:17:23 <Sgeo> "There is a known bug with the English language itself that Im dealing with imperfectly at the moment. See, sometimes her should translate to him, and sometimes it should translate to his. There are a lot of tricky edge cases here."
20:18:58 <oerjan> well translate may be the wrong word, but i understand what it's trying to say.
20:19:35 <oerjan> "her" is both oblique form and possessive, but "him" and "his" divide this.
20:20:57 <Sgeo> I'm just amused by calling English "buggy"
20:24:07 <fizzie> atriq: Future-proofing, I suppose. It used to be so that IS_WATER checked against block IDs directly, I think. It was felt cleaner if such block properties were more centrally collected.
20:24:30 <fizzie> atriq: There are, after all, apparently two waters. (0x08 and 0x09.)
20:24:49 -!- augur has joined.
20:27:20 <atriq> Yeah, water source and running water
20:30:21 <atriq> Which generation's "Generation Y"?
20:31:19 <fizzie> The one after X, I think? Maybe?
20:31:42 <atriq> Is it my generation? The one before me? The sort of half generation between my and my parents?
20:37:14 <olsner> if it wasn't obvious, these "generations" are arbitrary groupings that are very vaguely related to the time people are born, and anyone can invent a Generation Fnarf if they want to
20:37:55 <olsner> you could be in as many as a thousand generations simultaneously
20:38:03 <oerjan> Generation Fnarf is Gregor's, naturally.
20:38:28 <olsner> and his children will be Generation Fnarf'
20:38:58 <atriq> Apparently, Generation Y is the children of Generation X
20:39:02 <atriq> Who were the baby boomers
20:39:11 <atriq> So, I'm right at the end of Generation Y
20:43:29 <fizzie> I thought somehow that baby boomers were an older thing.
20:44:20 <atriq> Generation after WWII?
20:44:43 <fizzie> "There are no precise dates for when Generation Y starts and ends. Commentators use beginning birth dates ranging somewhere from the later 1970s[2] or the early 1980s to the early 2000s (decade).[3]"
20:44:52 <fizzie> Sounds kinda longish-timey.
20:45:11 <Gregor> Generation Y is like six generations.
20:45:42 <oerjan> i thought a generation was about 30 years.
20:47:30 <fizzie> oerjan: It's supposed to be a "demographic cohort (a group of subjects with a common defining characteristic)", not exactly a generation in the "mean time between current children becoming parents" sense.
20:48:50 <olsner> oerjan: with all the kids running around getting kids nowadays, it's probably more like 15 years now
20:49:17 -!- augur has quit (Remote host closed the connection).
20:50:40 <atriq> What have I been missing for the past 3!?
20:51:06 -!- atriq has quit (Quit: Leaving).
20:51:22 <zzo38> About LAVA_TRAIT for lava only, it is actually something similar I did in MegaZeux, I changed it to do like that due to the features I have added to make new kind of objects, so that they can be treated as lava by movement functions.
20:51:24 <olsner> I suppose he left to start a family now
20:55:39 -!- boily1 has quit (Quit: Poulet!).
20:57:06 <fizzie> olsner: Finnish statistics for children born in 2011: mean age of mother, 30.3 years; 28.4 considering only firstborn.
20:57:46 <fizzie> (Firstborn children, that is. There are no statistics on the firstbornedness status of the mothers.)
21:01:33 <olsner> hmm, that'd mean finland is about 1 generation behind per 15 years
21:01:39 <fizzie> 25.0 for the latter figure over all of US in 2006.
21:02:38 -!- Phantom_Hoover has joined.
21:09:06 <Gregor> So I “should” be having children.
21:09:55 <fizzie> I did not know you aspire to being a mother.
21:11:26 <olsner> Gregor: Generation Fnarf' is dying for you to get going
21:11:59 <Gregor> fizzie: I assume the age is about the same for mothers and fathers >_<
21:12:22 <fizzie> I would guesstimate that it's higher for fathers.
21:12:37 <fizzie> The statistics reports don't bother saying.
21:13:00 <fizzie> These particular ones, anyway; I'm sure such a statistic exists.
21:14:23 <fizzie> 29.65 for a first-time father in 2010.
21:15:14 <fizzie> So about four-and-half years oldr, assuming the mother ages didn't drastically change in one year.
21:16:19 <Arc_Koen> oerjan: yes, one specificity of Kipple is that operators can share operands, I thought it would be a good thing to show it in the truth-machine
21:16:19 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
21:16:21 <Gregor> OK, got a little bit of time!
21:17:06 <fizzie> Coincidentally, I seem to be approximately 29.46, and there's a kind of a 0.75 year obligatory delay in the process, or so I believe.
21:17:09 <Arc_Koen> for instance, 0>a? first pushes a zero on a (with >), then if a's top element is 0, clear the stack
21:17:22 <fizzie> So I suppose I'll just forget about it.
21:18:15 <Arc_Koen> or the cat program (i>o) uses i both as an operand for the test condition of the '(' loop, and as a value to push on the output stack
21:19:38 <Arc_Koen> I guess I should have made a comment about the modification but I thought it was minor
21:26:56 <Arc_Koen> hmm, question: is it possible to use non-printable characters in thue?
21:27:21 <Arc_Koen> I saw in the external resources a link to a brainfuck interpreter in thue, and thought it would be a cool thing to do
21:27:53 <Arc_Koen> and I'm thinking the easiest way to implement brainfuck cells is by stocking chars directly
21:28:51 <Arc_Koen> (well I guess writing them as 8-bit sequences would work as well, but because of . I'd need to have all the translations anyway)
21:28:53 <oerjan> afair the main problem with thue i/o is that input is line oriented in a way that makes it impossible to do input without possible "code injection"
21:30:15 <oerjan> iirc the brainfuck interpreter doesn't even try to use thue i/o for brainfuck i/o
21:30:38 <Arc_Koen> no I was using thue's input for brainfuck code
21:31:03 <oerjan> that should be possible as long as you have no comments
21:31:05 <Arc_Koen> this way I can place the brainfuck instruction next to the current cell
21:31:31 <Arc_Koen> yes, I decided to assume the input would be +-.,><[] only
21:31:43 -!- augur has joined.
21:35:49 <itidus21> (thinks) haiku 5 bytes 7 bytes 5 bytes (look at wiki found haifu) (thinks more) pi 3 1 4 1 5 9.. a program whence the number of tokens per line is the line number'th digit of pi
21:38:42 <oerjan> trivial in something like C that has free whitespace
21:40:43 <itidus21> could be an interesting text format though.
21:41:29 <lambdabot> Phantom_Hoover: You have 2 new messages. '/msg lambdabot @messages' to read them.
21:41:36 <itidus21> agh no no it wouldn't..........
21:43:41 <itidus21> oerjan: perhaps if each pi digit was a token length, including whitespace
21:44:05 <Arc_Koen> I think something that might help improve thue is an event-driven feature
21:44:29 <itidus21> uh i guess you wouldn't need whitespace actually
21:44:31 <Arc_Koen> like "if you just applied rule x, apply rule y"
21:44:56 <Phantom_Hoover> Sgeo, would you like me to find ian stewart and present your objections to him
21:45:22 <Arc_Koen> ok +->< were easy to implement... now to loops
21:45:41 <Sgeo> Phantom_Hoover, um
21:46:05 <Phantom_Hoover> don't worry i'm not nearly motivated enough to do that
21:48:07 <Arc_Koen> oerjan: what do you think of http://sprunge.us/EPIe
21:48:21 <oerjan> itidus21: ooh, now that's a bit more interesting
21:48:30 <zzo38> Can we make up a programming language that requires use of bus conflicts and race conditions?
21:48:31 <itidus21> yes, i finally struck something
21:49:36 <oerjan> zzo38: it will have to be named after Rosa Parks
21:49:47 <Arc_Koen> (well BEGIN!::=BEGIN00000000!; should be BEGIN!::=BEGIN;00000000!; instead but appart from that)
21:50:15 <zzo38> oerjan: OK, but why, and why is Rosa Parks?
21:50:46 <zzo38> I mean, who is Rosa Parks?
21:51:18 <Arc_Koen> but I really don't know how to implement loops
21:51:48 <olsner> the whole program is one big loop, really
21:52:21 <Arc_Koen> but I mean I don't know how to implement brainfuck's [ and ]
21:52:43 <Arc_Koen> they'd need to keep the brainfuck code somewhere, instead of taking it char after char from input
21:52:52 <oerjan> zzo38: "Rosa Louise McCauley Parks (February 4, 1913 – October 24, 2005) was an African-American civil rights activist, whom the U.S. Congress called "the first lady of civil rights", and "the mother of the freedom movement"."
21:52:53 <itidus21> if i didn't know better i'd say zzo38 did that on purpose
21:53:14 <Arc_Koen> but if I do so, then how can I have statements like "if the current instruction is so, do so to the tape"?
21:53:19 <zzo38> Did what on purpose?
21:53:51 <olsner> Arc_Koen: I think the usual way is to encode some kind of marker that points out the next thing for the interpreter to do
21:54:01 <oerjan> zzo38: no you made the setup to my rosa parks joke
21:54:04 <itidus21> <zzo38> Can we make up a programming language that requires use of bus conflicts and race conditions? <oerjan> zzo38: it will have to be named after Rosa Parks
21:54:26 <Arc_Koen> olsner: I'm not sure I understand
21:55:07 <Arc_Koen> problem is if I have brainfuck code someplace, and the tape in another place, I cannot apply the code to the tape
21:55:21 <itidus21> you see zzo38, rosa parks caused a conflict on a bus when she refused to let a white person take her seat because her race was black
21:55:35 <Arc_Koen> the !::=::: statement allowed me to inject the brainfuck instruction directly into the tape
21:55:53 <zzo38> itidus21: OK. Now I know who is Rosa Parks.
21:55:58 -!- heroux has quit (Ping timeout: 245 seconds).
21:56:09 <zzo38> But I didn't make a joke; oerjan did.
21:56:22 <oerjan> Arc_Koen: that _would_ seem to be a problem. i think you'll just have to move things about, that's usual with thue
21:56:34 <zzo38> But I am OK if you want to call it that.
21:57:20 <itidus21> i think they keep the bus in question in a museum or something
21:57:43 <itidus21> can't recall if i remember that or if i read something wrong
21:57:45 -!- heroux has joined.
21:57:53 -!- FreeFull has quit (Quit: Sleeeeeeep?).
21:57:58 <Arc_Koen> oerjan: move things about? like, moving a whole portion of brainfuck code inside the tape? problem is, thue doesn't allow for "variables" (as some kind of regexp or pattern-matching), so i'd need to write transformation laws for every possible code
21:58:38 <Arc_Koen> hhmmm, or I guess I could move the tape through the code instead of moving the code through the tape
21:58:46 <olsner> iirc, moving everything around is what the other bf in thue interpreter is doing ... I'm not too sure where the tape is, but there is stuff moving around in the state space that roughly corresponds to the instruction pointer
21:58:59 <itidus21> the irony is on the intra bus conflicts and inter bus conflicts
22:01:44 <Arc_Koen> well I'll think about it, at least it looks possible now
22:01:51 <Arc_Koen> thank you for your help and good night
22:02:26 <olsner> it is definitely possible
22:04:37 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:06:15 <itidus21> Arc_Koen: yeah i have also been thinking about events..
22:07:02 <Arc_Koen> someone dropped a comment on list of ideas saying "hey I have ideas for an object-oriented derivative for thue, but I don't know how to create a page"
22:07:26 <Arc_Koen> btw, I really like today's xkcd
22:08:54 <Arc_Koen> (I'm puzzled as to how thue could be object-oriented... this is probably the last paradigm I would've thought of for a derivative)
22:11:04 <Arc_Koen> oerjan: shall I answer to the thue derivative idea on the list of ideas page? since it's not a user I don't know of another way to talk to him
22:13:53 <oerjan> that page has always been a bit talky anyway
22:23:20 -!- copumpkin has joined.
22:28:40 <Arc_Koen> well, done, good night for good
22:28:52 -!- Arc_Koen has quit (Quit: Arc_Koen).
22:48:59 <olsner> hmm, how does ^/([^q].*)$ not match '/+++++.'?
22:50:38 <shachaf> olsner: Maybe / is being treated as a special character?
22:54:44 <fizzie> Maybe there's a newline at the end. (Don't laugh. Sometimes there is!)
22:57:34 <fizzie> !perl '/+++++.' =~ m{^/([^q].*)$} ? print "match" : print "no";
22:57:51 <jiella> itidus21: The Rosa Parks bus is in the Henry Ford museum.
22:58:19 <olsner> I think the problem was that RewriteCond applies to the next RewriteRule, didn't remember that part
23:00:30 <fizzie> olsner: Do you have brainfuck in your URIs?
23:00:48 <fizzie> Sounds like a situation.
23:01:24 <olsner> that's not the problem though, the problem is that it's not working
23:01:55 -!- TeruFSX has joined.
23:02:28 <olsner> it seems to be going "oh, qq000000000000000101^ioiooooooooooooooo looks like a valid uri, let's go to that file!" and then serves a 400 Bad Request error
23:03:23 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:07:37 <olsner> !perl 'qqr000000000000000101^ioiooooooooooooooo' =~ m{^(q.*q[^r].*)$} ? print "match" : print "no";
23:07:52 <olsner> oh, reading it backwards again
23:18:15 <olsner> argh, the problem was so damn silly :(
23:18:41 <olsner> you're supposed to add a colon followed by the input to the program followed by an underscore
23:18:50 <olsner> if you don't, then nothing happens
23:28:27 -!- monqy has joined.
23:36:23 -!- Nisstyre has quit (Ping timeout: 245 seconds).
23:38:05 -!- TeruFSX has quit (Ping timeout: 256 seconds).
23:40:22 <olsner> in other words, it was never broken in the first place, I was just using it wrong
23:49:49 <olsner> wtf, now I got the 10% bug but in the *other direction*
23:50:50 -!- Nisstyre has joined.
23:57:38 -!- Sgeo has quit (Ping timeout: 245 seconds).
23:58:23 <olsner> > (zipWith (/) `on` map (fromIntegral . ord)) "Oovvy#^y|vn$" "Hello World!"
23:58:25 <lambdabot> [1.0972222222222223,1.099009900990099,1.0925925925925926,1.0925925925925926...
00:02:21 -!- Sgeo has joined.
00:07:41 -!- TeruFSX has joined.
00:14:52 -!- jiella has quit (Quit: Leaving.).
00:18:07 -!- kwertii has joined.
00:18:21 <olsner> > (zipWith (/) `on` map (fromIntegral . ord)) "A[bbe\GSPehbZ\RS" "Hello World!" -- previous 10% bug, fwiw
00:18:23 <lambdabot> [0.9027777777777778,0.900990099009901,0.9074074074074074,0.9074074074074074...
00:45:07 <oerjan> olsner: what was this esolang again, i vaguely recall this 10% bug thing...
01:10:22 -!- monqy has quit (Quit: hello).
01:44:07 -!- trout has changed nick to const.
01:50:52 -!- madbr has joined.
01:52:50 -!- oerjan has quit (Quit: Ribbit).
01:55:52 -!- Jafet has quit (Quit: Leaving.).
02:19:40 -!- TeruFSX has quit (Ping timeout: 246 seconds).
02:33:20 -!- olsner has quit (Ping timeout: 246 seconds).
02:33:48 -!- olsner has joined.
02:37:52 <kmc> http://goatkcd.com/1115/sfw [nsfw]
03:06:35 -!- Jafet has joined.
03:14:55 -!- ogrom has joined.
03:16:14 -!- ogrom has quit (Client Quit).
03:38:22 <zzo38> What does 6502 do on each cycle of an instruction?
03:39:09 <madbr> usually a memory operation
03:39:50 <madbr> in some cases just an "internal operation" (all 2 cycle instructions that don't access memory are like this)
03:40:08 <madbr> such as nop (2 cycles)
03:40:33 <madbr> or lsr a (2 cycles)
03:40:55 <zzo38> But in instructions taking longer to execute, what memory access read/write done with each cycle? When does it read the next instruction and its operands?
03:41:09 <madbr> (a large majority of cycles do a memory op)
03:41:36 <madbr> I don't think it is pipelined
03:42:14 <madbr> so a cycle is something like
03:42:46 <madbr> [cycle 1] read instruction
03:43:17 <madbr> [cycle 2] no memory op but ALU is active
03:44:01 <zzo38> If there is no memory operations, what is on the address bus at that time?
03:44:44 -!- sivoais has quit (Ping timeout: 246 seconds).
03:44:46 <kmc> F L O A T I N G B U S
03:44:46 <madbr> probably the same address as last cycle, or 0
03:46:10 <madbr> fun fact: the original nmos 6502 was so slow that it actually only accessed memory half the cycles on the Apple II
03:46:24 <madbr> the other half was used by the video display :D
03:46:50 <kmc> i heard the original nmos 6502 would also do crazy shit if you gave it invalid instructions
03:47:23 <madbr> kmc: yeah that's what the docs say :D
03:47:24 <zzo38> I think there are unofficial instructions?
03:47:38 <kmc> i thought some of them were byproducts of the instruction decode logic
03:47:47 <madbr> zzo: the docs say that a lot are unstable
03:47:58 <madbr> plus they won't work on a 65816
03:48:06 <zzo38> Yes I know, I read that some are unstable, but they said some are stable.
03:48:38 <zzo38> But some are the same as other instructions and so are not so useful unless you are also using the instruction opcodes as data in the same program
03:48:44 -!- sivoais has joined.
03:49:18 <ion> Demo sceners have been using the “invalid” 6502 instructions a lot.
03:49:54 <madbr> supposedly they do weird shit like adding and anding stuff at the same time
03:50:13 <zzo38> Such things can occasionally be useful.
03:50:46 <ion> If you’re counting cycles, certainly.
03:51:31 <zzo38> I have added the stable unofficial instructions into Unofficial MagicKit (only available for targets which do not override those instructions with new ones)
03:53:04 <madbr> reading about the 6502 it does come off as totally underpowered
04:01:25 <zzo38> 6502 has decimal mode, but some 6502 based computers lack decimal mode
04:03:03 <madbr> who uses decimal mode?
04:03:13 <zzo38> Is the decimal mode useful for something other than decimal calculation?
04:03:42 <zzo38> I don't know who uses decimal mode.
04:03:52 <madbr> my guess is: banks
04:05:59 <zzo38> Some programs I wrote are for Famicom which lacks decimal mode, so I have never used it. If I program a computer which does have decimal mode I may sometimes used it.
04:06:25 <zzo38> x86 has some instructions for BCD arithmetic.
04:06:41 <zzo38> But I think they cannot be used in 64-bit mode.
04:07:04 <kmc> correct :/
04:07:34 <kmc> they are useful for things besides BCD
04:07:47 <kmc> AAM does AH <- AL / 10; AL <- AL % 10
04:07:56 <kmc> but you can actually change that 10 by changing the second byte of the instruction
04:07:58 <zzo38> Yes, AAM and AAD, you can change the base
04:09:47 <zzo38> So I suppose setting the base to 1 would be a way to move AL to AH and then set AL to zero, it might be slower but it might also be a smaller code
04:09:58 <zzo38> What happen if you set the base to zero?
04:11:00 <zzo38> Will GCC or LLVM make these instructions if it is not 64-bit mode?
04:12:24 <madbr> they probably don't run fast on modern processors
04:12:52 <zzo38> I know it may be slow, but might it sometimes result in a smaller code, if you select that option for some subroutines?
04:13:41 <madbr> like, you can't even express BCD operations in C/C++ afaik
04:13:54 <zzo38> In case you want to optimize some functions for size and some for speed
04:15:29 <madbr> how would you shrink a function by using BCD?
04:15:34 <zzo38> I know C has no commands for BCD operation, and LLVM also has no commands for BCD operation, but some things may sometime result in equivalent to such operation, or even other operation which the target computer may have
04:17:01 <zzo38> madbr: I don't know, but it might if the function is used for making BCD calculation. And anyways, the AAM and AAD instruction can be used for operations other than BCD arithmetic too.
04:18:05 <zzo38> They described above AAM does AH <- AL / 10; AL <- AL % 10 but it does not have to be 10 you can use a different number instead
04:18:33 -!- kwertii has quit (Quit: kwertii).
04:20:39 <zzo38> Such as if you just want to move AL to AH and then set AL to zero, or to move some of the bits of the numbers in certain way, it would probably be very slow to use division but may result in a smaller code, such as if used only for initialization, or if you want the code to fit in MBR
04:23:13 <madbr> still hare brained and no new instruction set should have those monstruosities :D
04:24:35 <madbr> like, wtf, 6 BCD instructions on x86
04:24:45 <madbr> which could have been something useful instead
04:25:55 <pikhq> Yeah, but in CISC design it almost makes sense
04:26:54 <zzo38> Well, I think AAM and AAD are useful instructions.
04:27:06 -!- Jafet has quit (Ping timeout: 245 seconds).
04:27:10 <madbr> they all have 1 byte opcodes too
04:28:09 <madbr> they take 10/18 cycles on the pentium
04:28:23 <kmc> bear in mind that x86 is evolved from a wee little calculator processor
04:28:51 <pikhq> Yeah. Its lineage goes back to a CPU with 4-bit address space for a desktop calculator.
04:28:53 -!- Jafet has joined.
04:29:06 <pikhq> Erm. Was it 4 bit address space?
04:29:12 <madbr> depressing but true
04:29:13 <pikhq> Might've just been 4 bit registers.
04:29:42 <pikhq> 12-bit address space.
04:29:48 <madbr> amazingly it's still better than the 6502
04:30:09 <madbr> which never got a 32bit version
04:30:39 <pikhq> It got a 16 bit version.
04:30:41 <zzo38> Yes they are too slow, but if they are not too slow it may sometimes be useful, and it can also be useful if you do not need it to be fast
04:30:50 <madbr> yeah, 65816, used on the snes
04:31:06 <pikhq> *Not* a 32 bit version.
04:31:33 <madbr> zzo: you could simply store a LUT somewhere
04:32:07 <madbr> and do the same operation in 1 cycle, pairable on the pentium
04:34:45 <kmc> it's all about the pentiums
04:36:18 <madbr> well, essentially on the pentium they decided which instructions would be fast, and which ones would be slow
04:36:29 <madbr> and the same selection applies to the later processors
04:37:58 <madbr> and essentially that's where they turned x86 into a bogo-risc
04:45:17 <shachaf> kmc: mosh works with the scroll wheel now?
04:45:59 <kmc> for what values of "works"?
04:46:15 <shachaf> I'm moshing to my irssi and scrolling the scroll wheel goes up and down in history.
04:47:04 <kmc> i am surprised
04:47:22 <shachaf> Hmm, this might be a fluke.
04:47:31 -!- Jafet has quit (Quit: Leaving.).
04:47:39 <kmc> i don't think we're setting alternate screen on the client
04:47:42 <kmc> https://github.com/keithw/mosh/issues/2 is still open
04:47:48 <kmc> you can ask in #mosh though
04:47:50 <shachaf> Yep, even if I detach from screen, scroll-wheel goes up and down in bash history.
04:48:08 <shachaf> Somehow I got into scroll-wheel-sends-up-and-down-arrows mode, or something.
04:49:12 <kmc> well that's useful
04:50:18 <kmc> in the neon sign, scrolling up and down, i am born again
04:50:20 <shachaf> kmc: Hah, irssi put me in this mode.
04:50:25 <kmc> irssi ate my balls
04:50:39 <shachaf> I previous sshed to irssi and exited with ~.
04:57:57 <madbr> the ARM has like 10 different multiply instructions
05:00:58 <zzo38> What kind of multiply instrucions?
05:01:10 <madbr> multiply, multiply accumulate, multiply subtract
05:01:20 <madbr> multiply to 64 bit
05:02:38 <madbr> weird "wide" multiply (32*16)
05:03:29 <madbr> multiply 16 bit into 64 bit accumulator (weird :o )
05:04:25 <madbr> double 16 bit multiply adding/subtracting the productions
05:05:06 <madbr> 32 bit mul keeping only the most significant 32 bits of the result
05:06:31 <madbr> dual 16bit multiply adding/subtracting the products then accumulating
05:07:29 <kmc> multiply with combining grass radical above
05:07:35 <madbr> same but accumulating 64bit
05:08:36 <madbr> multiply 32 bit into 64bit accumulator
05:09:00 <madbr> ...for the non SIMD multiplications :D
05:09:18 <madbr> the SIMD ones are even crazier :D
05:13:38 <madbr> good thing ARMs don't have bcd
05:17:15 <zzo38> Do you know any computers with a triple indirect jump with post increment instruction?
05:18:38 <kmc> well the RCA 1802 has weird indirect registers
05:18:40 <kmc> "Using the SEP instruction, you can select any of the 16 registers to be the program counter; using the SEX instruction, you can select any of the 16-bit registers to be the index register."
05:19:08 <kmc> but i don't know what the addressing modes are
05:19:16 <kmc> zzo38: do you want this address mode for any particular purpose?
05:20:05 <zzo38> I am just wondering if anything has something like that.
05:20:48 <zzo38> It allows you to change which register is the program counter? I have never seen anything like that before.
05:21:23 <kmc> as wikipedia describes, this was sometimes used for fast subroutine calls, even alternating coroutines
05:32:23 <madbr> can be translated as "this architecture will never be able to be pipelined"
05:35:27 <kmc> ARM lets you swap the contents of the instruction pointer and another register, right?
05:35:31 <kmc> that is similarly useful and less crazy
05:35:56 <madbr> yeah ARM has the PC as one of the GPRs
05:36:05 <madbr> which turned out to be a mistake
05:36:21 <madbr> now if you look at the ARM manual most instructions say
05:36:44 <madbr> "non of the operands of this instruction can be r15 (pc)"
05:37:02 <kmc> that's too bad
05:37:27 <madbr> it's ok when you're running at 10mhz and your pipeline is 2 cycles long
05:38:24 <madbr> once your cpu is doing 2 instructions at the same time then your PC is not your PC anymore
05:38:58 <madbr> not to mention crazy out of order CPUs (essentially all modern CPUs)
05:39:47 -!- sivoais has quit (Read error: Connection reset by peer).
05:40:25 <madbr> sgeo: it's possible!
05:40:34 -!- sivoais has joined.
05:40:39 <Sgeo> As in, I don't know what either of those mean.
05:41:00 <Sgeo> I know RISC is reduced ... something about few instructions
05:41:08 <Sgeo> Like a small number of opcodes or something
05:41:52 <kmc> a CPU has several stages to process an instruction
05:42:13 <kmc> fetch the instruction from memory, figure out what it means, fetch operand(s) from memory, do arithmetic or whatever, save result
05:42:18 <madbr> risc = lots of registers, high instruction set orthogonality
05:42:28 <kmc> each of these has a different piece of hardware
05:42:42 <kmc> it would suck if we only used one of those units at a time
05:42:50 <madbr> yeah but the number of stages varies a lot
05:42:59 <kmc> in a pipelined processor we are fetching one instruction while we decode the previous one, while we fetch for another, etc.
05:43:04 <kmc> yeah this is a simplistic explanation
05:43:06 <kmc> but that's the idea
05:43:52 <madbr> the ideal early RISC cpu runs 1 instruction per cycle
05:43:54 <kmc> another way to look at it is, if you tried to do all that stuff in one clock cycle, your max clock speed would be really low, because of the delay to propogate through all those logic gates
05:43:56 <Sgeo> What happens with jumps or conditionals?
05:44:10 <madbr> sgeo: depends on the length of the pipeline
05:44:13 <kmc> yeah, that's a trick
05:44:28 <kmc> this is why on MIPS processors, the instruction after a branch gets executed even if the branch is taken
05:44:35 <madbr> on longer pipelines and stuff like the x86 it tries to predict the result
05:44:46 <kmc> RISC processors tend to expose these implementation details, on the grounds that the compiler can deal with them
05:45:10 <Sgeo> Oh, hmm. I thought maybe the fetched thing that was after the jump just gets discarded
05:45:26 <madbr> sgeo: not on the MIPS
05:45:35 <kmc> yeah you can stall the pipeline like that
05:45:43 <madbr> it makes CPUs easier to design
05:45:54 <kmc> but then you're executing fewer than one instruction per clock
05:46:05 <kmc> if the compiler has nothing useful to put there, it can insert a NOP
05:46:08 <madbr> but there's not much point later on when your pipeline is 8 cycles and you have to do branch prediction anyways
05:46:09 <kmc> otherwise maybe it can do some useful work
05:46:33 <madbr> 1 cycle isn't much, you can pretty much always put something there
05:47:20 <kmc> Sgeo: another problem is data dependencies, what if a write and a read from the same register are in the ppipeline at the same time
05:47:48 <kmc> you can stall, or you can insert "bypass" paths which let it read the value that will be written, rather than the stale value that's in the register file
05:47:54 <kmc> which adds complexity
05:48:00 <kmc> MIT's 6.004 is a really nice intro to this stuff
05:48:03 <madbr> if your cpu is a well designed RISC you can do these all in 1 cycle
05:48:13 <kmc> you design a RISC processor in a logic gate level simulator
05:48:19 <kmc> and then you can optimize it for speed
05:48:32 <kmc> the labs and software are available online
05:48:33 <madbr> but once you're doing like 2 operations at the same time etc you have to introduce stalls
05:48:41 <madbr> or out of order execution
05:49:09 <kmc> i did the 2 stage pipeline with stalls on branches, which wasn't too bad
05:49:16 <kmc> but more than 2 stages gets hairy
05:50:32 <fizzie> TMS320C64x has two-instruction delay slots. Except it's one instruction if it's one of the instructions that are followed by an immediate word. Keeping track of that kind of thing manually is kind of a pain. (Though I suppose you're meant to mostly just write C and use the provided algo libs.)
05:50:45 <kmc> that's a DSP?
05:51:00 <kmc> VLIW is still popular for DSPs right?
05:51:02 * kmc does not know why
05:51:19 <madbr> kmc: they're probably easier to design
05:51:49 <madbr> of course that's a road to the intel itanium and we all know what happened to that one :D
05:51:54 <fizzie> I don't know how popular; the C64x used by the popular-in-phones OMAP platform (at least OMAP3 and I think 4 too) is a VLIW thing.
05:52:03 <kmc> it's amazing how far the inner workings of a CPU are from the virtual machine suggested by the instruction set
05:52:16 <kmc> when people talk about how C and assembly tell you "what the machine is really doing" i just laugh and laugh
05:52:39 <shachaf> They tell you what *a* machine is really doing.
05:52:44 <kmc> (of course with C people also forget that there's an optimizing compiler which can make liberal use of undefined behavior)
05:52:47 <shachaf> There's always another turtle somewhere.
05:53:02 <kmc> but they act like they've found the bottom turtle and it's special
05:53:37 <zzo38> We should make up the CPU where the instruction set corresponds closely to the inner working and work faster too.
05:53:38 <shachaf> The ISA is a pretty good turtle.
05:53:44 <madbr> well, it's the bottom turtle you can actually write for
05:53:52 <kmc> zzo38: that is the idea of RISC basically
05:53:54 <madbr> zzo: that's called a VLIW
05:54:19 <kmc> yeah i guess VLIW is that idea for superscalar
05:54:25 <madbr> zzo: the big problem with VLIW is that they bust the instruction cache
05:54:42 <madbr> you'd end up with an instruction word like
05:54:49 <pikhq> kmc: Doncha *love* it when people act like x86 asm is what the machine "really does"?
05:54:58 <kmc> shachaf: do you know about implementing a touch / proximity sensor with two digital I/O pins, a resistor, and a piece of wire?
05:55:18 <pikhq> Rather than just being the lowest abstraction Intel provides? *urgh*
05:55:22 -!- nortti has quit (Ping timeout: 268 seconds).
05:55:25 <kmc> well you set one pin as input and one as output
05:55:41 <kmc> connect the pins with a big resistor (≥ 1 MΩ)
05:55:48 <madbr> add r0, r1, r4 sub r3, r7, r8 add r9, r2, r14 shfnop mulnop ldr r5, r13
05:55:50 <zzo38> I have had ideas of CPU instruction sets based on what is hardware what I was thinking of.
05:56:01 <kmc> and also connect your wire or metal plate to the input pin
05:56:18 <madbr> essentially a bunch of ALUs, each one gets an operation on every cycle
05:56:28 <kmc> then you simply toggle the voltage at the output, and see how long it takes the input to match
05:56:43 <kmc> this is a measure of the capacitance on that pin, which will change if someone touches or gets near the wire / plate
05:56:54 <madbr> the other big problem with an architecture like that is that, what happens if you have a cache miss?
05:57:16 <madbr> you'd have to stall everything
05:58:05 <madbr> also you'd probably have to cover the chip in multiplexers
05:58:55 <kmc> the other other problem is that your compiler has to be crazy smart
05:59:08 <zzo38> Another idea I have, is first you need a open-specification FPGA (some people have partially reverse-engineered the AT40k FPGA, so we can use that), and have a compiler which takes LLVM codes with speed annotations (such as: this function runs in less than 1 million clock cycles if the third parameter is divisible by 5) and creates a hardware optimized for running this program.
05:59:13 <madbr> dunno how smart it would have to be but yeah
05:59:48 <madbr> would be workable if it could reorder operations over multiple loop iterations but afaik C pointers usually have some ways to defeat that
06:00:10 <zzo38> Does what I said would work at all?
06:00:35 <madbr> tho I've heard that GCC is even able to autovectorize loops so it might be workable after all
06:01:20 <zzo38> If the FPGA is capable of reprogramming itself at runtime, then you can have not only self-modifying software codes, but you can have self-modifying hardware codes as well.
06:01:34 <kmc> perhaps VLIW is popular for DSP because people are willing to hand-code these algorithms (and use them from libraries) rather than expecting to feed some 40 year old FORTRAN codes in and get good performance
06:01:54 <madbr> imho the problem is C/C++
06:02:10 <shachaf> kmc would surely agree that "C/C++" is a problem.
06:02:31 <kmc> using "code" as a non-uncountable noun is a sign that one has worked in academic computing
06:02:36 <zzo38> What problem is C/C++? It has some problems but I don't know what problem you mean.
06:02:38 <kmc> like "here is a code for fourier transform"
06:02:48 <kmc> "here is a collection of codes for manipulating splines"
06:03:21 <madbr> zzo: the general problem is that the user might throw weird pointers at your algo
06:03:26 <Sgeo> I thought "code" as a non-uncountable noun is a sign that you don't understand programming at all and want people to give you stuff to copy and paste
06:03:29 -!- nortti has joined.
06:03:33 <madbr> like multiple buffers that are really the same buffer
06:04:32 <zzo38> It is why you have to specify in your documentation, if it is allow to be the same buffer or not, and stuff like that
06:04:47 <kmc> the compiler doesn't know that
06:04:59 <kmc> well you can use the 'restrict' keyword in some cases
06:05:01 <madbr> zzo: that's why older C/C++ compilers have a "no aliasing" switch
06:05:10 <zzo38> I think they added the "restrict" keyword so that the compiler will know that?
06:05:21 <madbr> which means that you promise pretty promise that you're not going to do it
06:05:22 <zzo38> And I also think LLVM has corrected some things?
06:05:34 <zzo38> Does LLVM have all of these things better way?
06:05:42 <madbr> though recent compilers don't seem to have the switch so they might have found out some better way yeah
06:07:04 <madbr> if that is the case it reduces the VLIW's problems to "code size" and "how to prevent a stall when you have to fetch the data all the way from the RAM"
06:07:48 <nortti> stopping irssi with ^z accidentaly seems to result in nothing else than disconnection from everywhere
06:08:27 <Sgeo> My stomach hurts, don't know if it's hunger or nausea
06:09:24 <zzo38> My idea is to have multiple memory connected, one for program, one for data X, one for data Y, and any of them can be switched with each other, and then have the address bus for data X and Y to be their own registers, the data bus are also their own registers, use LFSR-based PC with one register affecting the LFSR taps, an instruction transfer register to register with condition....
06:09:43 <madbr> zzo: you don't need multiple memories when you have cache
06:10:52 <zzo38> Having the LFSR-based PC with a register affecting the LFSR taps is somewhat like having a multi-dimensional programming language, if done in the correct way needed to do this, I guess
06:11:18 <zzo38> O, and then also add multiplexer calculation like how the Muxcomp esolang does it
06:11:51 <zzo38> These are just some ideas I have to make a CPU; I don't know how it is really working.
06:12:31 <madbr> I'd try going for one that has the maximum number of ALUs
06:12:35 <zzo38> madbr: But when you have cache, don't you then also need to have stuff such as cache invalidation and checking if it is cache and so on, unless your instruction set is dealing directly with the cache
06:12:48 <madbr> and base everything else around keeping those ALUs full most of the time
06:13:41 <madbr> zzo: yeah but afaik that's not so bad
06:14:57 <zzo38> It also seems difficult to predict how many clock cycles a certain sequence of instructions will take if it automatically reorders them and put into cache and all that other stuff.
06:16:58 <madbr> considering how DRAM works it's a lot faster to have cache
06:17:30 <madbr> also it prevents the need of having multiple ram areas for program, data x etc...
06:17:47 <zzo38> OK, but I still want it that the cache only works with instructions that directly tells the cache what to do
06:18:33 <madbr> yeah but then the compiler has to guess what goes in cache
06:18:53 <madbr> and all the manual cache management will probably slow it down a lot
06:20:24 <madbr> the big benefit of cache is that essentially your inner CPU core doesn't have to deal with DRAM anymore
06:20:49 <madbr> it becomes just "load from cache, stall if I get a cache miss"
06:21:31 <kmc> right, for a long time the DRAM controller wasn't even on the processor
06:22:30 <zzo38> But you could require that instructions can only execute from cache, and these instructions modify other instructions in cache in order to affect the values you are dealing with, and have the external address/data bus to just be registers visible to the program stored in cache
06:23:46 <madbr> good luck writing a program for that
06:25:24 <zzo38> You could then also have multi-cores executing separate programs simultaneously, with some registers shared, and others which are not shared, and some which are partially shared.
06:26:01 <madbr> aka the Cell processor
06:30:56 <zzo38> Or have something like that checkboard design mentioned on esolang list of ideas, which has the checkerboard of processor and memory (so each processor accesses four memory cores and each memory is accessed by four processor cores)
06:31:17 <zzo38> I don't know how well it would work
06:31:43 <madbr> I'm not familiar with multicore operation
06:31:55 <zzo38> Neither am I, actually.
06:32:19 <madbr> except from the user point of view ("you have to mutex everything because nothing happens in the real order")
06:33:06 <zzo38> I wrote in esolang list of ideas, make a programming language which requires bus conflicts and race conditions in order to work.
06:33:29 <madbr> one nice idea I had is a dataflow processor
06:33:44 <madbr> like, instead of having "write x to register y"
06:33:57 <madbr> have each register take a new value each cycle
06:34:06 <madbr> and have one ALU per register
06:34:17 <zzo38> Yes, do like that.
06:35:29 <madbr> maybe with access to values produced 2 or 3 cycles ago
06:35:39 <madbr> or switching between two sets of registers
06:36:25 <zzo38> What would you think about my idea of making the program which includes the hardware description of the CPU optimized to execute this specific program?
06:36:42 <madbr> afaik that already exists
06:37:06 <zzo38> Is it possible to compile LLVM programs into such things?
06:39:25 <madbr> no, it's some crazy expensive design software
06:40:12 <madbr> afaik most people just get a fast ARM system on a chip and run the C++ on that instead :D
06:41:58 <madbr> it's probably not very different from writing a C++ program and optimising the few loops that run a lot in ASM
06:44:11 <nortti> http://jollatides.com/2012/10/01/jolla-handset-poll-give-jolla-your-feedback/
06:48:12 <madbr> the other weird thing is that the amount of gates and latency of components like adders can vary
06:49:23 <madbr> afaik modern processors use very low latency adders which means they're probably enormous
06:49:48 <zzo38> ARM has some complicated instructions, requires memory of differing data sizes, apparently you are not allowed to use some instructions unless you pay them, and OpenCores made a "Amber" processor based on ARM but they were sued and not allowed to make anything beyond ARMv2
06:50:51 <fizzie> Oooh: a CPU where you have to plug in a credit card to enable some parts of the instruction set. And a per-instruction charge. Careful with those loops, now!
06:51:20 <zzo38> I think this is stupid so I do not want to use ARM in a computer design.
06:51:23 <madbr> fizzie: that's ARM's revenue model
06:52:13 <madbr> from what I can tell they license the SIMD unit and stuff like that
06:52:52 <madbr> which is why some androids don't have them and you have to have a C++ version of like everything :D
06:53:40 <fizzie> Perhaps, but it doesn't quite go as far as getting money when the individual end users want to run something that takes advantage of tricky parts.
06:53:46 <madbr> multiple data sizes is ok, the really complicated one afaik is when you allow unaligned accesses
06:54:34 <madbr> supposedly there's a patent on that too
06:58:57 <madbr> how about a design that has 2 modes: RISC, and VLIW
06:59:16 <madbr> RISC is designed to run C++, have compact code (16bit opcodes)
06:59:40 <madbr> VLIW is for the few inner loops that run a lot and have to be optimised
07:01:03 <madbr> the vliw mode can probably even be specially simplified
07:01:47 <madbr> since it probably doesn't have to deal with, say, real branching
07:02:05 <madbr> it's going to mostly loop the same piece of code hundreads of time
07:02:18 -!- madbr has quit (Quit: Radiateur).
07:04:04 <fizzie> Blerp. They upgraded this workstation, and now XMonad keybindings for switching between monitors (mod-{w,e,r}) are in the wrong order, because screen 0 happens to be the right one, not the left one.
07:07:08 <fizzie> Man, these Intel model numbers, I've completely lost track of them. It used to be so simple.
07:07:20 <fizzie> Now this new workstation has an "E31230".
07:22:46 <zzo38> What hardware programming language would you program it by specifying what gates you use and what connection you use between them and what propagation delay?
07:31:09 -!- zzo38 has quit (Remote host closed the connection).
07:46:23 <Lumpio-> I wonder if he was trying to describe something like verilog
08:03:54 -!- atriq has joined.
08:10:22 <fizzie> I can't rotate this single screen when it's in a NVidia TwinView configuration?
08:15:40 <atriq> fizzie, my lack of knowledge of C is letting me down
08:15:53 <atriq> Does "typedef int8_t jbyte" name jbyte as a type synonym of int8_t?
08:16:27 <atriq> So, in Haskell, that'd be something like "type JByte = Int8"
08:17:33 <fizzie> If you take a regular declaration that makes 'foo', say, a pointer to a no-arg function returning int -- int (*foo)(void) -- then adding a typedef in front makes 'foo' a synonym for the type it would've normally made 'foo' an instance of.
08:18:28 <fizzie> "In a declaration whose storage-class specifier is typedef, each declarator defines an identifier to be a typedef name that denotes the type specified for the identifier in the way described in 6.7.6."
08:18:44 <fizzie> It's kind of a silly that 'typedef' is a "storage-class specifier".
08:19:37 <fizzie> ("The typedef specifier is called a ‘‘storage-class specifier’’ for syntactic convenience only.")
08:19:43 -!- Arc_Koen has joined.
08:23:02 <atriq> Well, my C textbook is new enough to tell me about typedef, and despite elliott's recommendations I have not burnt it yet.
08:23:05 <atriq> So, I'll read that
09:05:34 -!- pikhq_ has joined.
09:05:44 -!- pikhq has quit (Ping timeout: 255 seconds).
09:07:32 <Arc_Koen> so what's up? have you completed your fueue interpreter in haskell?
09:07:45 <kallisti> > (replicate 3 ) (replicate 2 [2, 2])
09:07:47 <lambdabot> [[[2,2],[2,2]],[[2,2],[2,2]],[[2,2],[2,2]]]
09:07:52 <atriq> Haven't been working on it
09:08:04 <atriq> I'm trying to port something fizzie and elliott made a while back to Haskell
09:13:48 <atriq> I'm having difficulties in that C is not Haskell
09:18:06 * kallisti has been working on a term rewriting grammar
09:18:10 <atriq> Mutable variables, for a start
09:18:43 <atriq> Actually, that's the only difference between C and Haskell I'm having trouble accounting ofr
09:18:53 <kallisti> pattern -> [replcaement | condition]
09:19:31 <atriq> Is there a way to search a github thing?
09:23:02 <fizzie> atriq: GitHub's own "advanced search" form at least at some point.
09:23:39 <fizzie> You need some kind of a "repo:foo/bar" specifier and then tell it to search from source code too.
09:24:32 <fizzie> https://github.com/search and the bits about "Code Search".
09:28:53 <kallisti> atriq: I actually have a private git server
09:28:58 <kallisti> I could set up a web interface
09:35:25 <Arc_Koen> but I forgot about nested loops
09:35:56 <Arc_Koen> how the hell can a brainfuck interpreter in thue account for nested loop?
09:36:21 -!- mig22 has joined.
09:36:28 <Arc_Koen> in order to "jump to the matching ]" I usually have a variable that count how deep in nested loops the ip is
09:37:28 <kallisti> Arc_Koen: I was thinking of a string rewriting grammar that uses a term rewriting system
09:37:33 <kallisti> but on a tree of weighted values
09:37:47 <kallisti> with conditions on the weights, and a pattern from the tree
09:38:17 <kallisti> and the resulting term and also an update of the current state of the weight.
09:39:22 <kallisti> condition | pattern -> replacement[state]
09:39:36 <kallisti> state can be ++, --, or a numeric expression of the input weights
09:40:13 <kallisti> replacement is a result of tokens from the input patterns capture symbols
09:40:31 <Arc_Koen> I'm not sure I know what you are talking about
09:40:37 <kallisti> condition is any numeric expression
09:41:21 <kallisti> a + b | "a -> b" -> ab [a + b]
09:41:48 <kallisti> transforms an -> into an addition of 2 weights
09:47:05 <Arc_Koen> what about http://esolangs.org/wiki/Definer
09:56:22 -!- ais523 has joined.
10:00:34 -!- Phantom_Hoover has joined.
10:00:37 -!- Phantom__Hoover has joined.
10:00:38 -!- Phantom__Hoover has quit (Client Quit).
10:04:16 -!- carado has joined.
10:04:43 -!- carado has quit (Client Quit).
10:04:57 -!- carado has joined.
10:08:44 -!- atriq has quit (Remote host closed the connection).
10:37:11 -!- jiella has joined.
10:47:05 <barts> has anyone here tried programming the Z80 or one of its derivatives?
10:59:02 <fizzie> And I am under the impression that others have, too.
10:59:27 <fizzie> http://zem.fi/rfk86/ <- mainly I just made that.
10:59:43 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6799
11:00:11 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19994
11:00:39 <fizzie> Well, I do know mooz did quite a lot for the calculator, but he's no longer here.
11:01:36 <barts> which one have you programmed?
11:08:18 -!- barts_ has joined.
11:08:33 -!- ais523_ has joined.
11:09:34 -!- ais523 has quit (Ping timeout: 240 seconds).
11:10:41 -!- ais523_ has changed nick to ais253.
11:10:43 -!- ais253 has changed nick to ais523.
11:11:36 -!- barts has quit (Ping timeout: 252 seconds).
11:11:50 <kallisti> http://en.wikipedia.org/wiki/Gumbo
11:16:04 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
11:34:40 -!- ais523 has quit (Remote host closed the connection).
11:35:23 -!- carado has quit (Quit: Leaving).
11:39:33 -!- ais523 has joined.
11:41:19 -!- carado has joined.
11:50:16 -!- Jafet has joined.
11:59:03 -!- TeruFSX has joined.
12:12:49 -!- ogrom has joined.
12:15:09 -!- Phantom_Hoover has joined.
12:15:48 -!- ais523 has quit (Remote host closed the connection).
12:17:04 -!- ais523 has joined.
12:19:55 <Arc_Koen> uh, the thue article doesn't say anything about comments
12:22:34 -!- ogrom has quit (Quit: begone).
12:26:01 <fizzie> I've seen #::=# as a kind of a line-comment indicator.
12:26:07 -!- TeruFSX has quit (Ping timeout: 240 seconds).
12:26:12 <fizzie> Presumably with the restriction that there won't be any #s ever.
12:26:19 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
12:26:27 <ais523> it's one of those comments-inside-the-language-semantics thing
12:26:38 <ais523> like DO NOT put comment here in INTERCAL
12:27:15 <Arc_Koen> there's definitely a problem with input though
12:28:36 <Arc_Koen> basically if the input contains anything else than +-><[]., my interpreter will either not know of it (so it will halt because no rule can be applied) or will recognize it as injected code and then it can do about anything
12:29:42 <fizzie> It's a language for well-behaving users.
12:31:07 -!- ais523 has quit (Ping timeout: 246 seconds).
12:31:13 <Arc_Koen> I guess I could have an ip go through the brainfuck program before execution starts, and remove anything that's not a brainfuck instruction - but still, willingly injected code can trigger any rule
12:34:14 <Arc_Koen> also, my thue interpreter selects the rules to apply at random amongst the not-yet-tester-this-turn rules, but I guess the brainfuck interpreter in thue would be way faster if the thue interpreter tried rules in the order they are sorted, and brought the chosen rule on top of the rules list
12:35:17 <Arc_Koen> (for instance if the brainfuck interpreter is currently interpreting a '+', only the '+'related rules will be applicable so trying all the other rules is a waste of time
12:45:05 -!- nortti- has quit (Ping timeout: 256 seconds).
12:56:28 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
13:03:51 -!- boily has joined.
13:03:54 -!- Phantom_Hoover has joined.
13:04:13 -!- nortti- has joined.
13:12:38 -!- aloril_ has quit (Ping timeout: 244 seconds).
13:13:37 <barts_> what is the most esoteric language?
13:13:58 <HackEgo> Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
13:14:11 <barts_> i've already been welcomed, but thanks Arc_Koen
13:14:18 <barts_> why do you hold such an opinion?
13:14:24 <Arc_Koen> I don't think there is a "most" esoteric language, they are all esoteric in their own way
13:14:28 <barts_> assuming you are the person of this personal opinion
13:14:42 <Arc_Koen> eodermdrome uses graphs as a way to program
13:15:01 <barts_> that is very interesting
13:15:05 <barts_> does it process graphs?
13:15:18 <Arc_Koen> hrm, I don't know enough about it, actually
13:15:31 <barts_> i heard lisp could be implemented with a machine that does graph reduction.
13:15:46 <fizzie> It's a graph-rewriting language.
13:15:59 <Arc_Koen> have a look at http://esolangs.org/wiki/Eodermdrome
13:16:11 <Arc_Koen> (or hear what fizzie has to say, he knows much more than me)
13:16:22 <fizzie> There's a state graph, and rules for rewriting parts of it.
13:16:34 <fizzie> Well, the article is fine too.
13:17:43 <fizzie> It's really kind of like Thue except with (unlabeled) graphs.
13:18:28 <Arc_Koen> talking about thue... http://sprunge.us/HhXO
13:19:31 <Arc_Koen> it's 180 lines long already, I still have to do instructions > < . , and it's probably full of bugs because IT'S NOT HUMANLY READABLE
13:21:24 -!- epicmonkey has joined.
13:22:13 <barts_> oh i just read up on it
13:22:43 -!- carado has quit (Quit: Leaving).
13:24:03 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:24:04 <fizzie> I could possibly second the Eodermdrome opinion on esotericness, as ill-defined as that is.
13:24:31 <Arc_Koen> (I do hope you're talking about eodermdrome when saying "it's nice")
13:27:28 <barts_> or i might be talking about sending digital signals in analog carriers via amplitude modulation
13:27:37 <fizzie> It possibly loses some appreciability points from the fact that it's still lacking an interpreter, and there aren't that many programs written in it.
13:28:00 <fizzie> Compare to something like Befunge which is being used daily in mission-critical applications all over the globe.
13:28:05 <barts_> but does it have eclipse support
13:28:27 <fizzie> Perhaps someone should write a plugin.
13:28:54 <fizzie> fungot: What's your opinion on the productivity and popularity and efficientness and such of Befunge?
13:28:55 <fungot> fizzie: you just want to say " you can't make if a function is
13:29:15 <fizzie> fungot: I don't think I want to say *that*.
13:29:16 <fungot> fizzie: that's underload code in there, then
13:29:31 <barts_> fizzie: what's your opinion on the productivity and popularity and efficientness and such of peptides?
13:29:59 <fizzie> I think we should get rid of them.
13:30:04 -!- aloril_ has joined.
13:30:19 <fizzie> What have the peptides ever done for us?
13:30:23 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
13:30:25 -!- nortti- has quit (Ping timeout: 256 seconds).
13:36:14 <barts_> has it just reproduced
13:39:24 -!- jiella has quit (Quit: Leaving.).
13:49:49 -!- copumpkin has joined.
13:52:37 -!- carado has joined.
13:56:41 -!- mig22 has quit (Quit: mig22).
14:14:10 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
14:16:28 -!- Phantom_Hoover has joined.
14:25:49 <ion> The Core http://edition.cnn.com/2012/10/01/tech/mantle-earth-drill-mission/index.html?hpt=butt
14:41:29 -!- nortti- has joined.
14:45:18 -!- Arc_Koen has quit (Quit: Arc_Koen).
14:51:07 -!- carado has quit (Remote host closed the connection).
15:10:50 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
15:15:38 -!- epicmonkey has quit (Ping timeout: 246 seconds).
15:31:42 -!- jiella has joined.
15:38:38 -!- atriq has joined.
15:41:24 -!- kinoSi has quit (Read error: Connection reset by peer).
15:41:51 -!- kinoSi has joined.
15:45:03 <Sgeo> @tell Sgeo honk
15:45:17 <Sgeo> @tell lambdabot HONK
15:54:09 <Sgeo> honk HONK honk HONK :o)
15:55:14 <itidus21> ion: i like the fact that they're doing a $1 billion mission to "answer questions about the origins and evolution of life"
16:09:16 <atriq> itidus21, Homestuck fans have raised $2000000 for a video game that comes out in 2014.
16:09:23 <atriq> What do you make of that?
16:09:30 <lambdabot> Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it.
16:09:53 -!- Phantom_Hoover has joined.
16:10:09 <barts_> You don't have any new massages.
16:17:35 * FireFly wonders if lambdabot checks if the edit distance is below some threshold or something
16:17:50 <FireFly> compared to the string 'messages', that is
16:18:16 <fizzie> FireFly: It allows up to two edits, but only if the parse is unambiguous.
16:18:39 <atriq> itidus21, I thought you liked Super Mario Bros?
16:19:05 <lambdabot> Local time for fizzie is Tue Oct 2 19:19:02 2012
16:19:11 <fizzie> Uh, that's not what I meant; what I meant was.
16:19:22 <lambdabot> Maybe you meant: dice ping time wiki
16:19:52 <itidus21> I think the game I came closest to liking was legend of zelda: link's awakening on gameboy
16:20:31 <fizzie> (The @pime result shows it's enough for there to be a unique command with the shortest edit distance, as long as that's <= 2.)
16:21:01 <atriq> Lost Levels or USA?
16:21:44 <fizzie> FireFly: Or I'm not entirely sure whether it's exactly edit distance or Hamming distance; and it's complicated by the fact that unique prefixes of commands are accepted too.
16:21:50 <itidus21> that was really something super mario usa
16:22:45 <fizzie> I suppose it's edit distance since it seems to allow deletions.
16:23:24 <lambdabot> Maybe you meant: messages messages?
16:23:39 <fizzie> Even though it has only one edit-distance-2 expansion (the one without ?).
16:23:46 <fizzie> Because of the no-typos-but-prefix handling.
16:23:58 <itidus21> i think it's not really the quality of the game itself, but the lies the game helps your mind momentarily tell itself
16:24:33 <itidus21> thats what i think i enjoy in fiction
16:24:53 <lambdabot> Maybe you meant: messages messages?
16:26:36 <itidus21> i guess that with your eyes, you can see yourself and you can see others
16:27:04 <itidus21> with your ears you can hear yourself and you can hear others.. etc etc.. but with your mind you can hear your thoughts but you can't hear any others
16:28:39 -!- FreeFull has joined.
16:28:51 <itidus21> so in a video game you see this sprite and you can say that sprite is me, everything else isn't
16:32:50 <itidus21> i guess you just have to be in the right mood, like with anything
16:33:17 -!- augur has quit (Remote host closed the connection).
16:34:09 <barts_> link's awakening was really fun
16:34:13 <barts_> i got stuck at some point
16:34:22 <barts_> and it took me years to figure out how to get past
16:34:33 <barts_> i h8 open plan games for this
16:34:58 <itidus21> like if you're sitting there thinking about video games as some philosophical metaphor like i am then you probably need a break from them
16:36:14 -!- atrapado has joined.
16:36:28 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
16:45:26 -!- barts has joined.
16:46:32 -!- Jafet1 has joined.
16:46:33 -!- aaaaaa has joined.
16:48:19 -!- atrapado has quit (Disconnected by services).
16:48:27 -!- aaaaaa has changed nick to atrapado.
16:48:47 -!- barts_ has quit (Ping timeout: 246 seconds).
16:48:49 -!- Jafet has quit (Ping timeout: 246 seconds).
16:51:15 <FreeFull> barts: What point dod you get stuck at?
17:02:09 <atriq> There was a Scottish-Norwegian war?
17:04:17 <atriq> I'm tumblring on IRC
17:04:31 <olsner> if nothing else, I think they would've been at war during WW2
17:04:43 <atriq> No, there was a war called the Scottish-Norwegian war
17:04:48 <atriq> In the 13th century
17:05:29 <olsner> oh, it was *called* that? so it wasn't actually Scotland and Norway at war?
17:18:37 -!- Arc_Koen has joined.
17:18:51 -!- augur has joined.
17:19:42 -!- augur has quit (Read error: Connection reset by peer).
17:20:07 -!- augur has joined.
17:23:24 -!- Phantom_Hoover has joined.
17:40:43 <olsner> fungot: say something funny
17:40:44 <fungot> olsner: sicp 1ed has the pattern matcher would close over the value of the current
17:41:50 <fungot> Phantom_Hoover: and you can use almost anything as an excuse
17:41:58 <atriq> Hey, I'm still brb'ing
17:42:04 <atriq> Guess I'll brb some more
17:42:08 <fungot> Phantom_Hoover: many hellos!!! fnord head on fnord.
17:42:41 <olsner> fungot: say something fnarfful
17:42:42 <fungot> olsner: wife thought it might be possible to use 8-bit values in colourmap. :)
17:45:12 <fizzie> Yes, the whole idea is beyond bizarre.
17:45:23 <fizzie> 8-bit values, in colourmap, with fungot's reputation?
17:45:24 <fungot> fizzie: that's what she said... i know where jesus the monster truck?
17:46:19 <olsner> or was it actually fungot that the monster truck there?
17:46:20 <fungot> olsner: eval ( eq? programmer riastradh))
17:46:23 <fungot> Phantom_Hoover: does anyone know a short bf program for 10 million steps?
17:47:29 <fungot> Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube
17:47:50 <olsner> "irc", was that from #perl?
17:48:54 -!- atriq has quit (Ping timeout: 240 seconds).
17:51:38 <fizzie> olsner: #esoteric, #scheme and a tiny bit from IRCnet's #douglasadams.
17:51:45 <fungot> Selected style: irc (IRC logs of freenode/#esoteric, freenode/#scheme and ircnet/#douglasadams)
17:52:01 <fizzie> Riastradh is/was a #scheme regular.
17:52:40 <fizzie> And eq? is/was (but most likely is) a Scheme predicate.
17:55:19 <olsner> not that I know anything about scheme, but yes
17:57:16 -!- atriq has joined.
17:58:30 <fizzie> !forth s" gforth" environment? [if] type [then]
17:58:38 <fizzie> (Just checking the version.)
17:59:47 <fizzie> gforth development isn't terribly breezy, 0.7.0 is the latest and it's from Nov 2008.
18:03:23 <nortti> it doesn't support 'char' thing but is otherwise nice
18:13:34 -!- nortti- has quit (Ping timeout: 240 seconds).
18:28:35 <itidus21> <fungot> Phantom_Hoover: does anyone know a short bf program for 10 million steps?
18:28:36 <fungot> itidus21: i think we have a shortage of paths but is much more interesting
18:30:36 -!- Taneb has joined.
18:30:45 -!- atriq has quit (Ping timeout: 256 seconds).
18:31:50 -!- Taneb has changed nick to atriq.
18:31:58 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
18:34:26 <Arc_Koen> I'm sorry, did you say "a short bf program"? that sounded wrong
18:37:50 <fizzie> Short, but isn't likely to run for exactly ten million steps.
18:38:15 <fizzie> And fungot can't output the \0 character since that doesn't go through IRC.
18:38:16 <fungot> fizzie: i'm annoyed by both. technically it's not necessary in russian in that context?). i believe the internet works on cr/ lf is the most basic tasks
18:38:54 <fizzie> I think there are some reasonably short but "useful" (well...) programs inside that bot.
18:38:58 <fungot> echo reverb rev rot13 rev2 fib wc ul cho choo pow2 source help hw srmlebac uenlsbcmra scramble unscramble asc ord prefixes tmp test celebrate wiki chr ha rainbow rainbow2 welcome me
18:39:12 <fizzie> The echo/rev kind of things are pretty simple to do.
18:39:29 <fizzie> ^echo Do you hear an echo?
18:39:30 <fungot> Do you hear an echo? Do you hear an echo?
18:47:12 <FreeFull> ^srmlebac Hello? What is this?
18:49:13 <fizzie> They're all kind of related.
18:49:26 <fizzie> It's mostly about bouncing between the two ends of the string.
18:49:30 <fungot> >>,[>,]<[<]>[.>>]<[>>]<2[.<2]
18:50:02 <fungot> >>,[>,]<[<]>[.>>]<[>>]<2[.<2]
18:50:13 <fizzie> Oh, they're even that close.
18:50:30 <fizzie> Also these must be old, because it hasn't combined the >>s.
18:50:34 -!- ais523 has joined.
18:51:05 <fizzie> ^def scramble bf >>,[>,]<[<]>[.>>]<[>>]<<[.<<]
18:51:09 <fungot> >2,[>,]<[<]>[.>2]<[>2]<2[.<2]
18:51:30 <fizzie> There, it's a bit shorter.
18:51:50 <FreeFull> >> is exactly the same length as >2
18:51:57 <fizzie> Yes, well, I meant in memory.
18:52:09 <fizzie> The ^show output is just a textual dump.
18:53:39 <fizzie> In memory it's in two-cell pairs where one cell gives the command (<> or +- or [ or ] or , or .) and the other the argument (count for <> or +-, the jump destination for [ or ]), so >2 is two cells whereas >> is four.
18:54:17 -!- Phantom_Hoover has joined.
18:54:41 <fizzie> ^def tmp bf ------------------------------------------------------------------------------------------------------------------------------------------------------
18:55:25 <fizzie> From what I recall, ^show selects +/- (or </>) based on which would give the smaller number; internally it's always as-if the command were + or >.
18:55:39 <fizzie> (It has a wrapping tape.)
19:09:05 -!- carado has joined.
19:09:18 -!- oerjan has joined.
19:16:43 <atriq> I'm really proud of Fueue
19:19:52 <oerjan> smashing language, old chap
19:20:45 <atriq> I'm scarily not old
19:21:01 <atriq> Fermat's Last Theorem has been a theorem for longer than I've been a person
19:21:58 <Slereah> Fermat, that young whippernsapper?
19:22:04 <atriq> Since September 1994, yes.
19:22:39 <shachaf> It was a theorem before it was proved.
19:22:46 <shachaf> It was even *called* a theorem before it was proved.
19:22:56 <atriq> Both of those are true!
19:23:04 <oerjan> atriq is just trying to disguise the fact he's http://tvtropes.org/pmwiki/pmwiki.php/Main/ReallySevenHundredYearsOld
19:23:16 <atriq> I'm a page on TVTropes
19:23:39 -!- Sanqui has changed nick to Sanky.
19:24:11 <olsner> oerjan: oh, that esolang with the 10% bug was brainfuck
19:24:35 <oerjan> a little known fact about brainfuck
19:24:59 <olsner> it was first a bug in the interpreter that chopped off the first + (hello world starts with 10 of those, and uses the number 10 as a base to generate the characters)
19:25:28 <olsner> so I worked around that by adding another + and left the modified program as a trap for my future self
19:25:48 <olsner> when run in the corrected interpreter, that program gives a 10% bug in the other direction
19:30:17 <Arc_Koen> oerjan: I have two solutions to fix thue's input issue
19:30:45 <Arc_Koen> 1) input one character instead of one line. this way the programmer can make sure to treat characters in a way that doesn't allow code injection
19:31:41 <Arc_Koen> 2) allow the programmer to define an alphabet to use in the program, and a subset of that alphabet as the input alphabet
19:32:08 <olsner> oerjan: all brought back because Arc_Koen started doing the bf in thue thing, and I decided to figure out how my last ubuntu upgrade broke my apache config
19:33:47 <Arc_Koen> for 2), the alphabet can be something else than the usual ascii - to make it usable on a regular computer you need to "transcribe" your alphabet as ascii (if it's too big, use several chars to code one symbol), and the user's input is in ascii but with a transcription function that transforms it into your input alphabet
19:36:26 <olsner> oerjan: incidentally, the only broken part was that I forgot how to use the thing
19:38:22 <olsner> Arc_Koen: hmm, I guess :)
19:39:43 <olsner> fwiw, I didn't write that bf interpreter, but it is written in thue and I have no real idea how it works... thought it would be interesting to try and figure it out while debugging its breakage
19:40:04 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
19:41:11 <oerjan> Arc_Koen: (1) is what Itflabtijtslwi does.
19:41:32 * oerjan realizes he did not have to think about how to spell that this time
19:44:54 <Arc_Koen> olsner: if you really want to debug a bf interpreter in thue I'd be glad to give you mine once it's over
19:45:04 <Arc_Koen> but it's kind of a boring thing to program
19:45:17 <Arc_Koen> the idea is *very* simple, but it takes a loooooot of substitution rules
19:47:10 <Arc_Koen> I think when I'm done I'll try to program in Definer, or another similar string-rewriting language that does allow for "variables"
19:48:17 <olsner> I think mod_rewrite uses PCRE
19:49:08 <oerjan> ais523: did thutubot have a bf implementation?
19:49:45 <Arc_Koen> for instance in the interpreter if I want to have some symbols travel through others, I say something like "if a symbol is enclosed in { } brackets, then it moves to the left", but I have to write the substition rules for all symbols {+}, {-}, {>}, etc., for all symbols they can meet 0{+}::={+}0, 1{+}::={+}1, 0{-}::={-}0, etc
19:49:59 <Arc_Koen> and to make things worse it's completely irreadable
19:50:15 <Arc_Koen> (espacially if one of the symbols is a : or a =)
19:51:38 <oerjan> it's like how i made the first loop in /// before i found the copying twice trick
19:51:46 <olsner> heh, avoid using : and = then :P
19:52:21 <Arc_Koen> olsner: well i'm kind of short in symbols and I don't want to use words too much
19:52:30 <oerjan> no wait, that was even more insane.
19:52:40 <olsner> an incredibly verbose interpreter would be a bit funny though
19:52:47 <Arc_Koen> I use = as the operator that checks if a cell is equal to 0
19:53:06 <olsner> (and debuggable, if it's constantly explaining exactly what it's doing)
19:53:26 <Arc_Koen> hmm, if you had said that sooner I might have made it completely full of words
19:54:01 <Arc_Koen> as in, even input would have had to be in the form increment decrement move left move right input output begin loop end loop
19:54:13 <Arc_Koen> but now I've written too much to want to restart anything
19:54:13 <oerjan> hm you could say the first /// loop was attempting to use a thue method in a language not suited for it.
19:54:31 <Arc_Koen> does /// use string-rewriting?
19:54:53 <oerjan> it's even simpler than thue.
19:54:56 <olsner> hmm, /// eats everything up until the third / after applying a rewrite rule?
20:02:23 <oerjan> basically /// is both string-rewriting and self-modifying code
20:03:54 <oerjan> with the latter the only way to do real flow control
20:04:57 <oerjan> and looping requires quine-like techniques
20:14:40 <Arc_Koen> erh, earlier today we told someone that was eodermdrome
20:14:50 <oerjan> THAT WAS EARLIER TODAY
20:15:19 -!- Phantom_Hoover has joined.
20:15:32 <oerjan> also, /// is already implemented.
20:16:07 <olsner> hmm, I might decide to implement /// soon
20:16:43 <oerjan> there might even be a more efficient implementation than the perl one. possibly by User:Nthern.
20:17:20 <olsner> more efficient than perl? wow!
20:17:47 <oerjan> the perl one keeps scanning the string from the beginning, whether or not there can be new matches there
20:18:00 -!- atriq has quit (Quit: Leaving).
20:18:38 <oerjan> for some substitutions that's gonna hurt.
20:19:29 <oerjan> it was just a quick hack to get a working implementations, after all.
20:20:02 <oerjan> it just _barely_ manages to run the BCT interpreter without hitting one of perl's internal limits.
20:20:40 <oerjan> (regexp recursion depth)
20:23:07 <oerjan> afaik Nthern is the only other person who has succeeded at programming in ///
20:23:14 <olsner> hmm, what is it that uses recursion in those regexps?
20:24:27 <oerjan> s!^/((?:[^/\\]|\\.)*)/((?:[^/\\]|\\.)*)/!!s is the one which tended to crash
20:25:38 <olsner> couldn't you make it [^/\\]+ to match longer chunks?
20:25:48 <oerjan> it is possible it doesn't use recursion in all perl versions, i think the ?: 's were an attempt to simplify it
20:26:15 <oerjan> olsner: except the BCT interpreter uses only / and \ characters :P
20:26:37 <olsner> aah, sounds appropriately evil
20:27:12 <oerjan> it seemed like the logical thing to aim for, after getting basic "readable" looping going
20:27:30 <itidus21> oerjan: so my brother drops a pair of shorts in the clothes washer and just leaves them there, i don't even know when... makes no reference to it... this is what i live with
20:27:39 <oerjan> that's after initial syntactic desugaring btw.
20:28:00 <olsner> after syntactic salting?
20:28:00 <oerjan> itidus21: HOW DESPICABLY EVIL
20:28:28 <fizzie> It's also possible to optimize some Perl regexps a whole lot with suitably placed (?>...)s. (It's a kind of a forced never-backtrack construct.)
20:28:35 * oerjan always checks the washing machine for forgotten clothes before using it.
20:29:12 <itidus21> oerjan: but they havent been washed... evidenced by their dryness
20:29:17 <oerjan> fizzie: i recall the perl version i used wasn't the newest one
20:29:33 <oerjan> itidus21: HOW DESPICABLY EVIL
20:30:24 <fizzie> It's possible (?>...) is reasonably new; it's quite far down in the manual, at least.
20:31:26 <fizzie> The *+ construct can be an easier way and I think it's earlier too.
20:31:41 <itidus21> oerjan: personally i don't even care.. i wash my stuff at laundromat lately.. but my mom comes along saying "can you turn on washing machine for me? running out of clean towels" because the knob is busted she can't actually turn on the machine herself
20:32:19 <itidus21> so i tell her about the shorts and she just carries them off into her room.. "ok ive emptied it"
20:32:33 <fizzie> oerjan: *+ and ++ and ?+ and {n}+ and so on are the "possessive" versions of the quantifiers.
20:32:55 <fizzie> oerjan: "Match as much as possible and never give anything back" is what they do.
20:32:57 <itidus21> so.. if i get depressed sometimes.. it's not baseless
20:33:07 <oerjan> oh. so it's not just * and + combined
20:33:45 <fizzie> /a++a/ e.g. can't ever match, because a++ gobbles all the a's.
20:34:54 <fizzie> Not that I know how well the regex engine can do without the hints in your original example, and whether the potential backtracking points matter. But it's a case where you know exactly what to match.
20:35:40 <oerjan> itidus21: hypocritically speaking, i'm pretty sure a healthy person wouldn't be depressed by such events.
20:36:37 <fizzie> "For instance, the typical "match a double-quoted string" problem can be most efficiently performed when written as: /"(?:[^"\\]++|\\.)*+"/ as we know that if the final quote does not match, backtracking will not help." (perlre example on them.)
20:36:40 <itidus21> oerjan: ain't noone healthy in this house
20:37:10 <oerjan> although perhaps it's a sign that we're at least a bit on the autistic spectrum
20:37:35 <oerjan> (disclaimer: DO NOT USE FOR MEDICAL ADVICE)
20:37:47 <olsner> regexps are awesome for writing gobbledygook like "(?:[^"\\]++|\\.)*+"
20:39:08 <oerjan> fizzie: that _does_ look eerily similar
20:41:10 <itidus21> oerjan: ironically for me facing my fears means doing someone elses laundry
20:43:09 -!- TeruFSX has joined.
20:48:09 <Arc_Koen> a fueue itnerpreter in thue would actually be shorter that a brainfuck one
20:48:31 <Arc_Koen> cause fueue has only one structure (that is, code and date are together)
20:50:06 <Arc_Koen> oerjan: your proof that fueue is turing complete, does it work if numbers are bounded?
20:51:18 <Arc_Koen> oh screw that I can do it with unbounded numbers *rolls his sleeves up*
20:53:23 <lambdabot> Ambiguous type variable `a' in the constraint:
20:53:44 <oerjan> fizzie: aww, changing * to *+ didn't help, at least with the perl version installed here (5.10.0)
20:55:45 <lambdabot> Ambiguous type variable `a' in the constraint:
20:56:17 <oerjan> Arc_Koen: my proof doesn't use number arithmetic at all, there's a lonely 1 used for a delaying trick
20:56:42 <Arc_Koen> you mean YOU DON'T NEED NUMBERS at ALL???
20:57:03 <oerjan> indeed, that 1 could probably be changed to something else :)
20:57:27 <ion> putStrLn "hello" `xor` putStrLn "world"
20:58:18 <oerjan> Arc_Koen: it's only using the functional parts of fueue in an essential way
20:58:26 <ion> arc_koen: class (Eq a, Num a) => Bits a
20:59:48 <oerjan> FreeFull: ghci uses the extended defaulting option, which defaults numeric types in more general circumstances
21:00:51 <oerjan> fizzie: btw http://oerjan.nvg.org/esoteric/slashes/longsubst.sss is a simple program triggering the bug
21:01:22 <oerjan> it _should_ print hello if working
21:01:48 <oerjan> oh and some newlines, i didn't bother removing them
21:01:52 <Arc_Koen> olsner: so i'm gonna make a verbose thue fueue interpreter
21:02:35 <oerjan> Arc_Koen: well you need numbers for output, but you can consider it TC even without if you consider final queue contents
21:02:36 <fizzie> oerjan: If I can manage to remember, I'll try some things out when I'm not typing via the phone.
21:03:46 <Arc_Koen> oerjan: would brainfuck be tc with cell contents being unbounded, but without the - instruction?
21:04:08 <Arc_Koen> I'm thinking it doesn't change anything
21:04:27 <Arc_Koen> like, you can have a cell you call "zero" which you increment instead of decrementing every other cell
21:05:07 <oerjan> Arc_Koen: as long as the tape still is unbounded, it might work
21:05:19 <Arc_Koen> hmm I don't think we need that
21:05:24 <Arc_Koen> for instance take 4-cell brainfuck
21:05:46 <Arc_Koen> don't use the fourth cell, except to emulate -
21:06:11 <Arc_Koen> (so if you're in the first cell, instead of - you write >+>+>+)
21:06:34 <oerjan> Arc_Koen: um you can never get information out of a cell if you cannot get it back to zero
21:06:45 <oerjan> other than that it is nonzero
21:07:27 <Arc_Koen> so how would it work if the tape was unbounded?
21:08:32 <oerjan> in that case there ought to be a way to move data further on the tape, to the still zero parts
21:09:43 <oerjan> so you would encode the cells of a brainfuck with - as sequences of 0's and nonzeros
21:10:21 -!- boily has quit (Quit: Poulet!).
21:10:51 <oerjan> well i'm reminded of Sceql
21:14:00 -!- monqy has joined.
21:14:01 <oerjan> anyway i'd imagine a memory layout like 0 ...arbitrary non-zero trash... 0 first bf cell 0 second bf cell 0 ... last bf cell 0 0 ...
21:14:33 <oerjan> hm make that 0 0 between the trash and first cell too
21:15:02 <oerjan> oh and a 0 0 somewhere around the current cell.
21:15:41 <olsner> hmm... I think apache does potentially evil things with leading slashes in uris
21:21:28 <olsner> "Use with extreme caution, as it may result in loop." :)
21:22:37 <olsner> (it could if there wasn't a limit on the number of matching rules and if the server didn't run out of memory so quickly)
21:23:53 <oerjan> ...arbitrary non-zero trash... 0 (0 (1 1*))* 0 (0 (1 1*))* 0 0 0...
21:25:21 <Arc_Koen> (the fueue interpreter might not be shorter than the brainfuck one because it has so much moving around)
21:26:02 <oerjan> wait i've not even finished browsing the logs yet...
21:26:26 <Arc_Koen> like, the 'fadd' function sends a 'check arithm' marker to see if it has correct arguments, then the marker comes back as 'ok arithm' or 'noop'
21:26:44 <Arc_Koen> if it's noop then fadd must move through the whole queue
21:27:26 <Arc_Koen> if it's ok arithm then it's a nightmare of adding two numbers, then the results still has to move through the whole queue
21:27:45 <Arc_Koen> if thue had WRAPPING that would be so easy
21:28:45 <Arc_Koen> oerjan: I'm not sure it's healthy browsing the logs... it's like every moment you're not on the chan you have to live twice (once out of the chan and once reading the log)
21:29:00 <Arc_Koen> you're gonna get old TWICE AS FAST
21:29:14 <Arc_Koen> of course an easy remedy would be to stay on the chan as often as possible :-)
21:30:04 -!- carado has quit (Quit: Leaving).
21:31:31 <fizzie> @tell Arc_Koen If you want things "easy", go Thutu or something. (Disclaimer: only lookes at Thutu briefly.)
21:31:34 <fizzie> I got tired of keeping that in the input buffer, waiting for the quit.
21:32:20 <Arc_Koen> AAA you just shifted the balance fo need sleep / got plenty things to do
21:32:20 <lambdabot> Arc_Koen: You have 2 new messages. '/msg lambdabot @messages' to read them.
21:34:23 <Arc_Koen> hum, you know what, thutu can wait
21:34:35 <lambdabot> oerjan said 1d 1h 43m 33s ago: did you mean to remove an a from the kipple truth-machine program? i don't know kipple so...
21:34:36 <lambdabot> fizzie said 3m 4s ago: If you want things "easy", go Thutu or something. (Disclaimer: only lookes at Thutu briefly.)
21:34:49 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
21:35:51 <Gregor> It's super-promising when you look up an obscure error on Google and the first result is “Pig Latin Reference Manual”
21:51:10 -!- TeruFSX_ has quit (Read error: Connection reset by peer).
21:51:55 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:53:00 <kmc> Keccak won the SHA-3 competition
21:54:15 <kmc> http://www.nist.gov/itl/csd/sha-100212.cfm
21:54:59 -!- kmc has set topic: I, for one, welcome our new hash function overlords | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
21:55:55 <fizzie> Keccak does sound like a proper name for an alien overlord.
21:56:40 <ion> Keccak sucks as a palindrome.
21:56:56 <kmc> it's pronounced "kashyyyk"
22:17:06 -!- TeruFSX has quit (Ping timeout: 245 seconds).
22:25:18 -!- atrapado has quit (Quit: Leaving).
22:25:23 <Gregor> It is astoundingly difficult to Keccak-hash something right now.
22:25:35 <Gregor> I'm looking for an implementation that I can just say “here's a file, what's its hash”
22:26:12 <Phantom_Hoover> i hope this is a homestuck joke and not something sincere
22:26:35 <kmc> http://guyism.com/wp-content/uploads/2012/07/best-resume-ever.jpeg
22:28:15 <ion> gregor: Add the future-snapshots repository and install sha3sum.
22:28:32 <ion> future-snapshots/20131001 should work nicely.
22:28:52 <Gregor> The implementation is publicly available, but it's all test suites, no tools.
22:33:20 <kmc> you should smoke a bowl of hash in honor of this occasion
22:42:19 -!- jiella has quit (Quit: Leaving.).
22:55:06 -!- TeruFSX has joined.
22:57:11 -!- Jafet1 has quit (Quit: Leaving.).
23:07:04 -!- FreeFull has quit (Quit: Zzzzzzzzzzzz).
23:09:19 <shachaf> Hmm, it's not a Merkle-Damgård hash.
23:18:35 -!- Jafet has joined.
23:20:20 <pikhq_> Gregor: http://keccak.noekeon.org/KeccakReferenceAndOptimized-3.2.zip
23:20:47 <Gregor> pikhq_: Try using that to get a hash of a file.
23:21:57 <pikhq_> Why would you make the test program something other than a read file and shove it into the hasher?
23:23:50 <pikhq_> Okay, I'm *sure* it's a perfectly reasonable hash algorithm, but the implementation was written by an incompetent.
23:24:21 <Gregor> They're Belgian *shrugs*
23:26:41 <pikhq_> http://keccak.noekeon.org/specs_summary.html Well, there's enough you could probably write it yourself.
23:29:17 <Gregor> All I was going to do was hash the topic.
23:29:23 <Gregor> The joke is long dead by now ;)
23:29:27 -!- TeruFSX has quit (Read error: Connection reset by peer).
23:35:27 -!- augur has quit (Remote host closed the connection).
23:37:55 <pikhq_> Actually, I'm impressed at how simple this hash algorithm can be.
23:46:32 <pikhq_> DCB6B8BD29813DA1A9B56667D751A6D444ECFC5B0F67D6EB85DEF9E
23:46:48 <pikhq_> That's SHA3-224 of the topic.
23:47:02 <Gregor> How 'bout just “I, for one, welcome our new hash function overlords”
23:47:28 <pikhq_> E581A6F9E364E179B336A2C6D6831D4B50CD7739C7E1565E3EBF2
23:47:47 -!- Gregor has set topic: I, for one, welcome our new hash function overlords | E581A6F9E364E179B336A2C6D6831D4B50CD7739C7E1565E3EBF2 | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
23:47:58 <shachaf> pikhq_: How are you computing it?
23:48:11 <shachaf> SHA3 looks much more complicated than SHA1 to me.
23:48:26 <pikhq_> shachaf: Grabbed "readable keccak" and shoved the string into it.
23:48:53 <pikhq_> http://www.mjos.fi/dist/readable_keccak.tgz
23:49:28 <pikhq_> A bit more if you want to make it useable as a general-purpose library, of course.
23:49:50 <pikhq_> But I doubt it'd go over 200 if you don't try optimizing it.
23:50:20 <shachaf> It still has a lookup table. :-(
23:53:24 <pikhq_> Ah. Part of why the other keccak implementations are complex is that they support all possible parameters of the algorithm...
23:53:38 <pikhq_> What I pasted their suffices for the SHA3 ones.
00:11:13 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:24:49 -!- ais523 has quit.
00:34:24 -!- copumpkin has joined.
00:36:21 -!- augur has joined.
00:45:12 -!- Jafet1 has joined.
00:47:35 -!- Jafet has quit (Ping timeout: 256 seconds).
00:55:47 -!- Jafet1 has quit (Ping timeout: 260 seconds).
01:11:14 <Sgeo> I need a good night's slep
01:12:58 <Sgeo> Keccak is not appropriate for password hashing, right?
01:13:07 <Sgeo> It's fast, and good password hashing is slow?
01:13:27 <kmc> you should run your passwords through something like PBKDF2
01:13:36 <shachaf> Presumably PBKDF2-SHA3 is fine.
01:13:40 <kmc> which is a fancy way of saying "iterate the hash many times"
01:13:56 <kmc> (and probably do other things, but I don't know if those are important for uses other than deriving crypto keys)
01:13:59 <shachaf> kmc: PBKDF2 also xors the iterations together, at least.
01:14:05 <kmc> Sgeo: yes, PBKDF2
01:14:40 <kmc> you can read about PBKDF2 in a multimedia hypertext encyclopedia using a global network of packet-switched communications
01:20:22 <Sgeo> o.O someone submitted a hash algorithm to the contest maliciously?
01:21:16 <shachaf> Otherwise how can you tell if the process is doing its job?
01:21:33 -!- Jafet has joined.
01:21:56 <Sgeo> Oh, someone just modified one of the entries to be malicious, as a proof of concept I guess
01:25:36 -!- Jafet1 has joined.
01:25:52 -!- Jafet has quit (Ping timeout: 246 seconds).
01:30:04 -!- Jafet1 has changed nick to Jafet.
01:30:27 <Jafet> > length "E581A6F9E364E179B336A2C6D6831D4B50CD7739C7E1565E3EBF2" `div` 2
01:41:20 <kmc> that's funny
01:47:38 <kmc> also funny: one of the SHA-3 competitors has already seen widespread real world use
01:47:48 <kmc> MD6 was used by the Conficker worm
01:47:58 <kmc> if you enter one of those competitions do you get mysterious advice from the NSA, a la DES?
01:48:02 <oerjan> oh john tromp also won the ioccc
01:49:34 <oerjan> that's weird i thought he was on the esolang wiki somewhere, but no
02:04:36 -!- oerjan has quit (Quit: Good night).
02:35:55 <pikhq_> Gah, screwed up my *printing* routine. XD
02:36:19 <pikhq_> E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2
02:37:13 -!- Lumpio- has quit (Ping timeout: 245 seconds).
02:37:52 -!- pikhq_ has set topic: I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
02:40:28 <Jafet> > length "E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2" `div` 2
02:43:51 <shachaf> > showIntAtBase 2 ("01"!!) (28*8) ""
02:48:10 -!- Nisstyre-laptop has joined.
03:03:42 -!- Lumpio- has joined.
03:04:32 -!- TeruFSX has joined.
03:29:15 -!- hagb4rd has joined.
03:31:51 -!- Jafet has quit (Ping timeout: 244 seconds).
03:39:30 -!- Jafet has joined.
04:13:37 <hagb4rd> this is such a pretty place to be, i've just stumbled upon it..lovely 8bit canvas demo -> http://www.effectgames.com/demos/canvascycle/
04:44:37 -!- carado has joined.
04:51:28 -!- carado has quit (Remote host closed the connection).
05:04:20 -!- Jafet has quit (Quit: Leaving.).
05:13:08 -!- Jafet has joined.
05:39:17 <kmc> http://www.youtube.com/watch?v=JWToUATLGzs
05:56:08 -!- carado has joined.
06:25:39 -!- const has quit (Ping timeout: 276 seconds).
07:03:35 -!- hagb4rd has quit (Quit: hagb4rd).
07:04:36 -!- epicmonkey has joined.
07:23:15 -!- carado has quit (Remote host closed the connection).
07:30:56 -!- mig22 has joined.
07:33:51 -!- atriq has joined.
07:40:10 <barts> i am working on a piece of hardware which can take any wave and output an analog sync clock
07:40:18 <barts> well, sine-like wave
07:40:24 <barts> that reminds me i wanted to try a metronome
07:42:25 -!- kinoSi has quit (Read error: Connection reset by peer).
07:42:52 -!- kinoSi has joined.
07:48:12 -!- monqy has quit (Quit: hello).
07:50:18 <barts> oh the video just loaded
07:50:33 <barts> the metronomes become synchronized because of a phenomenon called soft syncing
07:51:26 <barts> it happens because they are all coupled in angular momentum
07:52:23 <barts> in fact the whole swivel is a single energy pool which tries to maximize its use of that energy
08:10:37 -!- atriq has quit (Ping timeout: 246 seconds).
08:44:30 -!- coppro has quit (Ping timeout: 264 seconds).
09:01:22 -!- Phantom_Hoover has joined.
09:20:59 -!- Jafet has quit (Ping timeout: 246 seconds).
09:41:56 -!- Jafet has joined.
09:49:29 -!- Phantom__Hoover has joined.
09:49:31 -!- Phantom__Hoover has quit (Client Quit).
09:59:54 -!- Phantom__Hoover has joined.
10:10:08 -!- kinoSi has quit (Read error: Connection reset by peer).
10:10:34 -!- kinoSi has joined.
10:10:57 -!- Arc_Koen has joined.
10:18:54 -!- Phantom__Hoover has quit (Quit: Leaving).
10:38:03 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
10:49:48 -!- carado has joined.
11:11:04 -!- barts has quit (Ping timeout: 246 seconds).
11:13:03 -!- barts has joined.
11:26:31 -!- Phantom_Hoover has joined.
11:38:31 -!- yours_truly has joined.
11:40:32 -!- Nisstyre has quit (Ping timeout: 255 seconds).
11:40:49 -!- Nisstyre-laptop has quit (Ping timeout: 260 seconds).
11:46:02 -!- carado has quit (Quit: Leaving).
11:55:34 -!- Nisstyre has joined.
11:58:49 -!- copumpkin has quit (Ping timeout: 246 seconds).
11:59:24 -!- copumpkin has joined.
12:03:33 -!- mig22 has quit (Quit: mig22).
12:29:43 <ion> “House of Marley Positive Vibration Rasta”, “color: rasta” http://www.thomann.de/fi/house_of_marley_positive_vibration_rasta.htm
12:36:32 <fizzie> ion: According to fcolor, #a37f58 is the color of "rasta" after 10 images (190 to go).
12:37:34 <fizzie> (Some of these results are a bit nonrelevant-looking.)
12:38:32 <fizzie> http://users.ics.aalto.fi/htkallas/rasta.png and so it goes.
12:39:08 <fizzie> I conclude that it mostly means something vaguely brownish.
12:39:19 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
12:45:44 -!- Slereah has quit (Ping timeout: 252 seconds).
12:45:56 -!- Slereah has joined.
12:57:51 -!- MoALTz has joined.
13:00:56 -!- boily has joined.
13:20:18 <ion> http://www.ling.helsinki.fi/~fkarlsso/genkau2.html
13:22:00 <fizzie> "This page has been glanced at by [Counter datafile "/usr/local/etc/Counter/data/sample3.dat" must be created first!] visitors external to our department"
13:22:53 <fizzie> Page view counters, where have they all gone?
13:26:55 -!- Phantom_Hoover has joined.
13:31:37 -!- itidus20 has joined.
13:35:30 -!- itidus21 has quit (Ping timeout: 264 seconds).
13:35:36 -!- coppro has joined.
13:35:37 -!- itidus20 has changed nick to itidus21.
13:37:19 <Arc_Koen> oh hey quintopia maybe you can help me
13:38:13 <Arc_Koen> I'm trying to understnad the hello world program in http://esolangs.org/wiki/Platts
13:39:01 <Arc_Koen> 1) what are the two zeroes in the initial string for?
13:39:48 <Arc_Koen> 2) when B produces Hello World!, the output mode is off, so why is it printed?
13:40:24 <Arc_Koen> or are every ever produced strings printed everytime that a string is produce while the output mode is on?
13:41:28 <Arc_Koen> so if the production rules were A> B|Hello World! H>J J|K K! for instance, the Hello World would be printed twice?
13:42:50 -!- kinoSi has quit (Read error: Connection reset by peer).
13:43:17 -!- kinoSi has joined.
13:43:45 <fizzie> For 2), isn't output mode off at first, and toggled on by the "A>" production, leaving it on for "B|Hello World!"?
13:46:01 <fizzie> A0B0 -[toggle output mode on]-> 0B0 -[implicit empty string]> B0 -[output "Hello World!"]-> Hello World! -[toggle output mode off]-> Kello World! -[halt], I guess.
13:46:26 <fizzie> Whoops, without forgetting the latter 0.
13:46:43 <fizzie> Unless they mean something else, I'unno.
13:49:04 <fizzie> Or, hm, right; if it's a 2-tag system, those 0s get deleted too.
13:50:27 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
13:51:52 <fizzie> A0B0 -[toggle output mode on]-> B0 -[output "Hello World!"]-> Hello World! -[toggle output mode off]-> llo World!K -[implicit empty-string rules]-> K -[halt], in that case.
13:52:00 <fizzie> (I read it as just rewriting at first.)
14:04:18 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:05:27 <Arc_Koen> nah, I don't think it's string-rewriting
14:05:44 <Arc_Koen> I think A produces empty string and toggle output mode on
14:06:02 <Arc_Koen> B produces Hello World!, which is printed
14:06:20 <Arc_Koen> oh hum and then I don't know if it's 0's turn or H's turn
14:06:34 <fizzie> Arc_Koen: It's a 2-tag system, it says so right up there.
14:06:41 <Arc_Koen> Any symbols not explicitly assigned production rules in the program listing are implicitly assigned a production of the empty string.
14:07:08 <fizzie> See http://esolangs.org/wiki/Tag_system -- they always delete m (in this case, 2) symbols from the left, and append the production to the right.
14:08:13 <fizzie> I didn't notice at first, since I just went "oh, production rules".
14:13:38 -!- Phantom_Hoover has joined.
14:29:56 -!- copumpkin has joined.
14:40:22 -!- xiaoding has joined.
14:40:29 -!- xiaoding has left.
14:41:57 <quintopia> fizzie's second production sequence is correct
14:42:27 <Arc_Koen> yep apparently the issue was just that I didn't know what a tag was
14:42:43 -!- kmc has set topic: I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | http://codu.org/logs/_esoteric/ |.
14:42:47 -!- kmc has set topic: I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
14:47:52 -!- aloril_ has quit (Ping timeout: 250 seconds).
15:03:50 -!- aloril_ has joined.
15:05:14 -!- yours_truly has quit (Ping timeout: 240 seconds).
15:16:03 -!- xiaoding has joined.
15:16:58 -!- xiaoding has quit (Read error: Connection reset by peer).
15:17:29 -!- xiaoding has joined.
15:17:43 -!- xiaoding has left.
15:18:07 -!- augur has quit (Remote host closed the connection).
15:21:40 -!- aloril_ has quit (Ping timeout: 250 seconds).
15:29:56 -!- FreeFull has joined.
15:30:20 -!- xiaoding has joined.
15:30:35 -!- xiaoding has left.
15:31:32 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
15:36:30 -!- aloril_ has joined.
15:41:34 -!- aloril_ has quit (Read error: Operation timed out).
15:42:21 -!- Phantom_Hoover has joined.
15:55:04 -!- aloril_ has joined.
16:03:05 -!- aloril_ has quit (Ping timeout: 244 seconds).
16:11:24 -!- augur has joined.
16:19:16 -!- aloril_ has joined.
16:21:48 -!- aloril_ has quit (Read error: Operation timed out).
16:36:02 -!- aloril_ has joined.
16:43:08 -!- aloril_ has quit (Ping timeout: 250 seconds).
16:43:10 <ion> Rats (1984) - Trailer http://youtu.be/2zbl4_xkORc
16:47:08 -!- ogrom has joined.
16:57:16 -!- aloril_ has joined.
17:03:30 -!- aloril_ has quit (Ping timeout: 250 seconds).
17:05:25 -!- sivoais has quit (Quit: Lost terminal).
17:14:26 -!- coppro has quit (Ping timeout: 255 seconds).
17:14:33 -!- sivoais has joined.
17:15:14 -!- epicmonkey has quit (Ping timeout: 246 seconds).
17:20:23 -!- aloril_ has joined.
17:27:18 -!- carado has joined.
17:32:31 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
17:38:44 -!- atriq has joined.
17:43:15 -!- ais523 has joined.
17:51:31 <FreeFull> ghci thinks 25*0.036 is 0.8999999999999999
17:52:09 <ion> :: Rational
17:52:29 <fizzie> Floating-point numbers are the devil.
17:53:02 <ion> Nothing wrong with floating-point numbers (except for denormals and NaN) as long as you use them appropriately.
17:53:05 <shachaf> zomg irb thinks the same thing.
17:53:21 <shachaf> ion: *Ahem*. Floating point *values*.
17:53:49 <itidus21> on windows calculator, 0.8999999999999999 / 0.36 = 2.4999999999999997222222222222222
17:54:07 <FreeFull> I blame haskell for using an inexact default representation of fractional values
17:54:13 <ion> > (25*0.036 :: CReal, 25*0.036 :: Rational)
17:54:43 <fizzie> `runc int main(void) { printf("%.20f", 25*0.036); }
17:54:45 <ion> freefull: What should pi be in the exact representation of fractional values?
17:54:49 <shachaf> Rational is nicer than CReal if you're just talking about rationals.
17:55:01 <FreeFull> ion: An infinite value of course
17:55:53 <FreeFull> 0.9 is definitely representable accurately without too much data though =P
17:56:08 <ion> in base-10
17:56:30 <FreeFull> In any base, using the right representation
17:57:04 <FreeFull> In binary you can say 1001/1010
17:57:30 <FreeFull> There, accurate representation of 0.9
17:57:41 <ion> :: Rational
17:58:07 <shachaf> pi is representable using only two bytes of data.
17:58:08 <Gregor> Funny that you're discussing this in here.
17:58:21 <Gregor> My latest FB post: The worst part of floating point math is not the fact that 0.1 + 0.2 yields 0.30000000000000004, but trying to explain to people why their language is horribly broken if 0.1 + 0.2 does NOT yield 0.30000000000000004.
17:58:49 -!- Phantom_Hoover has joined.
17:58:55 <fizzie> > toRational (25*0.036 :: Double)
17:58:56 <lambdabot> 2026619832316723 % 2251799813685248
18:00:06 <FreeFull> If you "cast" the end result to Rational, and you don't put :: Double in anywhere or anything similar, will the entire computation be done using rationals?
18:01:52 <FreeFull> Rational is a member of Fractional, right?
18:02:17 <shachaf> Haskell doesn't work that way, FreeFull.
18:04:55 -!- augur has quit (Remote host closed the connection).
18:05:52 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
18:06:44 <fizzie> Rational is Ratio Integer, and there is an instance (Num (Ratio a), Integral a) => Fractional (Ratio a), which is maybe an answer, of sorts. But maybe a real Haskeller will explain it all.
18:06:50 -!- augur has joined.
18:07:12 <ion> > toRational (pi :: Double)
18:07:15 -!- augur has quit (Remote host closed the connection).
18:07:23 <ion> > toRational (exp 1 :: Double)
18:07:24 <lambdabot> 6121026514868073 % 2251799813685248
18:07:56 <fizzie> ion: That should show all those irrational-pi people.
18:09:30 <fizzie> > toRational (pi :: CReal)
18:12:33 -!- hagb4rd has joined.
18:12:41 -!- coppro has joined.
18:14:03 * Sgeo wonders if socket.io is/should be a sufficient motivation to use Node.js even if I don't want to use Javascript server-side
18:14:32 <Sgeo> Oh there exists socket.io for other languages
18:15:04 -!- jiella has joined.
18:15:14 <hagb4rd> one script to rule them all
18:18:09 <Gregor> Sgeo: Oh, but you DO want to use JavaScript server-side.
18:32:14 <kmc> http://blog.nelhage.com/2012/03/why-node-js-is-cool/ (it's not about performance)
18:32:52 <kmc> it's not about javascript either
18:33:38 <olsner> is it about doing cooperative multitasking by hand?
18:33:54 <kmc> kind of but not really
18:34:50 <fizzie> fungot: What's it all about, really, in the end?
18:34:51 -!- variable has joined.
18:34:51 <fungot> fizzie: i need this terminal for something else in mind
18:35:12 <fizzie> fungot: Okay, be that way. I didn't want an answer anyway.
18:35:13 <fungot> fizzie: what now? :) ( of course that ignores the fact that i have
18:35:36 <olsner> oh, "a sweet spot in terms of what developers are willing to put up with"
18:36:26 <kmc> it's a framework which more or less forces you to write network libraries in a composable way
18:36:27 <Gregor> olsner: That's the best description of anything I have ever heard.
18:36:32 <kmc> which is something people traditionally do poorly
18:36:54 <kmc> it is not the theoretically best way of doing so, but it's a thing that exists now that a lot of people use
18:37:18 <kmc> that is the tl;dr of that article
18:41:37 -!- hagb4rd has quit (Quit: hagb4rd).
18:51:34 <olsner> tl;dr: 99 bottles of beer
18:55:24 <Gregor> itidus21: Yes, it's called C++.
18:55:48 <kmc> ISO-9899 bottles of beer
18:56:43 <itidus21> steal_underpants(); [...] return profit;
18:57:11 -!- hagb4rd has joined.
18:58:02 <fizzie> An ISO 9001 bottle of beer is quality-managed.
18:58:30 <kmc> http://www.savingadvice.com/images/blog/generic-beer.jpg
18:59:19 <olsner> An ISO 8601 bottle of beer has a standardised date format.
18:59:36 <kmc> an ISO 3103 bottle of beer is actually tea
18:59:50 <fizzie> I like how the image accompanying ISO 9000#Contents of ISO 9001 is "ISO 9001 certification of a fish wholesaler in Tsukiji" http://upload.wikimedia.org/wikipedia/commons/thumb/d/d5/ISO_9001_in_Tsukiji.jpg/609px-ISO_9001_in_Tsukiji.jpg
19:00:07 <fizzie> ISO is also a demogroup.
19:00:37 <kmc> "ISO 8128-2:1993: Apple juice, apple juice concentrates and drinks containing apple juice -- Determination of patulin content -- Part 2: Method using thin-layer chromatography"
19:02:21 <kmc> http://www.iso.org/iso/home/store/catalogue_tc/catalogue_tc_browse.htm?commid=47918&published=on
19:03:30 <fizzie> (Or at least kind of a group.)
19:05:20 <fizzie> kmc: Did you purchase a copy of ISO 8128-2 already?
19:05:45 <fizzie> With that sort of a name, I'm sure it's flying off the shelves.
19:07:37 <kmc> i don't have any CHF :/
19:08:18 <FreeFull> Oh, it's a toxin produced by moulds
19:08:27 <kmc> the swiss see a pretty woman they say ein, zwei, drei and try to push her down some ice
19:10:15 <kmc> it's a quote from cool runnings
19:13:40 -!- Jafet has quit (Ping timeout: 252 seconds).
19:14:04 -!- atriq has quit (Ping timeout: 260 seconds).
19:47:38 -!- atriq has joined.
20:14:25 -!- oerjan has joined.
20:17:37 <oerjan> <fizzie> I conclude that it mostly means something vaguely brownish. <-- THAT'S RACIST!
20:17:49 <ion> My new tattoo http://i.imgur.com/HH89J.jpg
20:18:42 <atriq> "is there a joke I'm missing"
20:19:03 <fizzie> oerjan: It's not racist when it's determined by an impartial algorithm.
20:19:22 <oerjan> fizzie: that's what the segregationists said!
20:25:32 <ion> > ((25*0.001)*36, 25*(0.001*36))
20:25:59 <ion> > ((25*0.001)*36, 25*(0.001*36), 25*(36*0.001))
20:26:00 <lambdabot> (0.9,0.9000000000000001,0.9000000000000001)
20:26:08 <oerjan> `addquote <Gregor> My latest FB post: The worst part of floating point math is not the fact that 0.1 + 0.2 yields 0.30000000000000004, but trying to explain to people why their language is horribly broken if 0.1 + 0.2 does NOT yield 0.30000000000000004.
20:26:11 <HackEgo> 866) <Gregor> My latest FB post: The worst part of floating point math is not the fact that 0.1 + 0.2 yields 0.30000000000000004, but trying to explain to people why their language is horribly broken if 0.1 + 0.2 does NOT yield 0.30000000000000004.
20:26:21 <ion> > ((25*0.001)*36, 25*(0.001*36), 25*(36/1000))
20:26:22 <lambdabot> (0.9,0.9000000000000001,0.8999999999999999)
20:26:32 -!- ogrom has quit (Quit: Left).
20:26:33 <shachaf> Posted Using FB2IRC Technology®
20:26:53 <atriq> > 0.1 + 0.2 :: Float
20:27:01 <atriq> > 0.1 + 0.2 :: Rational
20:27:15 <atriq> > 0.1 + 0.2 :: Quadrupal
20:27:16 <lambdabot> Not in scope: type constructor or class `Quadrupal'
20:27:20 <atriq> > 0.1 + 0.2 :: Quadruple
20:27:21 <lambdabot> Not in scope: type constructor or class `Quadruple'
20:27:56 <atriq> http://en.wikipedia.org/wiki/Quadruple-precision_floating-point_format
20:28:21 <atriq> It's a thing which exists
20:29:18 <lambdabot> No instance for (GHC.Float.Floating GHC.Real.Rational)
20:29:28 <oerjan> i thought you might be misspelling Quaternion (not that i think lambdabot has that)
20:29:36 <lambdabot> Not in scope: type constructor or class `Quaternion'
20:29:37 -!- MoALTz has quit (Quit: Leaving).
20:29:42 <lambdabot> 3.1415926535897932384626433832795028841972
20:30:10 <lambdabot> "3.141592653589793238462643383279502884197169399375105820974944592307816406...
20:31:07 <oerjan> i was hoping for an unlimited option
20:31:28 <lambdabot> Not in scope: data constructor `CReal'
20:31:30 <oerjan> > showCReal 1000000000 pi
20:31:45 <oerjan> > showCReal 1000000000 pi
20:32:47 <atriq> For just $280000 I'll be able to read a webcomic offline when I'm 20!
20:33:54 <oerjan> these are zimbabwean dollars, right?
20:34:20 <atriq> I've organized a kickstarter to help me reach it
20:35:01 <oerjan> > toRational (25*0.036)
20:35:03 <lambdabot> 2026619832316723 % 2251799813685248
20:35:16 <atriq> http://www.kickstarter.com/projects/14293468/homestuck-adventure-game
20:35:29 <oerjan> i mean, before you linked it.
20:39:55 <oerjan> <FreeFull> If you "cast" the end result to Rational, and you don't put :: Double in anywhere or anything similar, will the entire computation be done using rationals? <-- that means no, btw
20:40:29 <oerjan> because toRational takes a Fractional as argument, which _still_ defaults to Double.
20:40:46 <FreeFull> oerjan: I wasn't using toRational
20:41:06 <oerjan> oh it was fizzie who did that.
20:42:06 <lambdabot> forall a. (Real a) => a -> Rational
20:42:14 <oerjan> make that Real, not Fractional
20:42:19 <lambdabot> forall a b. (Real a, Fractional b) => a -> b
20:42:20 <lambdabot> forall a. (Fractional a) => Rational -> a
20:43:45 <oerjan> realToFrac combines both toRational and fromRational
20:44:11 <lambdabot> forall a b. (Integral a, Num b) => a -> b
20:45:08 <oerjan> while fromIntegral combines toInteger and fromInteger. so those two are the only ones you need for usual numeric "casts".
20:46:13 <oerjan> > toRational (pi :: CReal) -- hm...
20:47:07 <oerjan> lambdabot's unbounded "real number" type
20:47:10 -!- ion has quit (Ping timeout: 252 seconds).
20:47:17 <oerjan> from some module on hackage
20:47:49 <oerjan> > toRational (0.2 :: CReal) -- hm...
20:48:04 -!- atriq has quit (Quit: Leaving).
20:52:23 <oerjan> > logBase 2 281474976710656
20:52:52 <oerjan> it's just converting the binary form of the Double to an exact Rational
20:53:13 <oerjan> > 1e1000000000000000 :: Double -- is this bug still there...
20:53:21 -!- ion has joined.
20:54:15 <oerjan> it crashes instead of producing an Infinity value because it follows the haskell standard precisely and converts to an out-of-memory Rational first :)
20:55:14 <lambdabot> 100000000000000000000000000000000000000000000000000000000000000000000000000...
20:57:05 <oerjan> someone recently made a ghc extension so 1e1000 can produce an Integral value
20:57:36 <oerjan> :t 1e100000000000000000000000 --hm...
20:58:06 <oerjan> heh the expansion happens even before type checking
21:01:37 <oerjan> :t 1e100000000000000000000000 --double checking that
21:03:55 <FreeFull> :t 1e(1e(1e(1e(1e(1e(1e(1e10)))))))
21:03:59 <lambdabot> forall t t1 t2 t3 t4 t5 t6 t7. (Num (t -> t1), Num (t2 -> t), Num (t3 -> t2), Num (t4 -> t3), Num (t5 -> t4), Num (t6 -> t5), Num (t7 -> t6), Fractional t7) => t1
21:04:11 <FreeFull> :t 1e(1e(1e(1e(1e(1e(1e(1e10))))))))
21:04:19 <FreeFull> > 1e(1e(1e(1e(1e(1e(1e(1e10)))))))
21:05:48 <oerjan> it's not actually parsed as one token
21:06:05 <olsner> but if there's a number after the e it gets parsed as a literal?
21:06:20 <lambdabot> forall t t1. (Num (t1 -> t), Num t1) => t
21:08:10 <oerjan> haskell has a general greedy lexing rule, although i think there are corner cases ghc gets "wrong" (that no sane person will use)
21:08:45 <oerjan> :t Just.if True then 1 else 2
21:09:15 <oerjan> i think that should technically notice that if is a keyword
21:09:30 <lambdabot> Couldn't match expected type `t1 -> t2 -> t'
21:09:31 -!- augur has joined.
21:10:01 <FreeFull> Lambdabot seems to do e differently
21:11:01 <oerjan> it has a primitive symbolic expression type which all letters are defined as
21:11:37 <lambdabot> Ambiguous type variable `a' in the constraints:
21:12:09 <oerjan> > (f+g+h) (i+j+k) :: Expr
21:12:11 <lambdabot> f (i + j + k) + g (i + j + k) + h (i + j + k)
21:12:17 -!- augur has quit (Remote host closed the connection).
21:12:50 <oerjan> and it also has its weird numeric instances for functions, which combines nicely with that
21:13:42 <oerjan> but there are so many additions it gets confusing.
21:14:29 <oerjan> > 1e(1e(1e(1e(1e(1e(1e(1e10)))))))
21:14:46 <oerjan> i really don't understand why that times out
21:16:05 <FreeFull> ghci fails on anything that doesn't follow the somethingesomething format
21:16:27 -!- carado has quit (Remote host closed the connection).
21:16:30 <FreeFull> That is, together, no spaces, and no brackets for the somethings
21:16:54 <olsner> oh, the somethingsomething format
21:16:59 <oerjan> FreeFull: yes. because it will parse 1e1 as 1 e1 and if you haven't defined e1...
21:17:20 <oerjan> i mean 1esomethingnot1
21:17:41 <FreeFull> 1e gets parsed as a 1 and then an e
21:17:41 <lambdabot> forall t t1. (Num (t1 -> t), Num t1) => t
21:18:58 <olsner> > fromIntegral (1 e 1) :: Integer
21:19:02 <lambdabot> forall t t1. (Num (t -> t1)) => t -> t1
21:19:38 <oerjan> i think lambdabot may simply be overworked
21:20:13 <olsner> > fromIntegral (1 e 1) :: Integer
21:20:20 <olsner> let's overwork it again!
21:20:23 <oerjan> > 1e(1e(1e(1e(1e(1e(1e(1e10))))))) :: Integer
21:20:35 <oerjan> > 1e(1e(1e(1e(1e(1e(1e(1e10)))))))
21:21:04 <olsner> hmm, is 1 e 1 supposed to be 10?
21:22:10 <olsner> 1e1 was what I was thinking about, I just overspaced it a bit
21:22:58 <oerjan> it's equivalent to fromRationl (10%1)
21:23:36 <olsner> hmm, because all floating point literals go through fromRational?
21:27:32 <oerjan> FreeFull: technically that should _never_ evaluate the part in parentheses. lambdabot is just generally overworked.
21:27:46 -!- Phantom_Hoover has joined.
21:28:20 <oerjan> for a function, lambdabot's instances make 1 = const 1
21:28:49 <oerjan> "pointwise arithmetic", is the term
21:29:36 <oerjan> > 1 (Just "floccinaucinihilipilification")
21:29:43 <oerjan> > 1 (Just "floccinaucinihilipilification")
21:31:35 <oerjan> someone swat whoever is giving lambdabot fatigue for me
21:32:10 <olsner> oerjan: you are responsible for the swattings in here
21:33:52 <oerjan> but they're probably not in this channel!
21:34:30 <oerjan> like everything else with lambdabot, there's a command which is impossible to remember the name of
21:35:59 <olsner> there is more than one... what's the name of the command that starts yhjul?
21:39:12 <lambdabot> "\"\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\"
21:39:28 <olsner> the real name is longer
21:39:28 <lambdabot> Maybe you meant: yarr yhjulwwiefzojcbxybbruweejw yow . ? @ v
21:39:46 <olsner> @yhjulwwiefzojcbxybbruweejw
21:39:46 <lambdabot> "\"\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\"
21:39:51 <olsner> aah, hello again old friend
21:39:58 <lambdabot> "\"\\\"\\\\\\\"\\\\\\\\\\\\\\\"\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"\\\\\\\\\\\\...
21:40:14 <lambdabot> Maybe you meant: check choice-add choose clear-messages compose . ? @ rc v
21:40:23 <lambdabot> Maybe you meant: web1913 what where where+ wiki wn world02 . ? @ v
21:40:35 <lambdabot> http://haskell.org/haskellwiki/Lambdabot
21:40:46 <lambdabot> Maybe you meant: shootout show slap smack source spell spell-all src . ? @ v
21:40:55 <lambdabot> http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all
21:41:01 <lambdabot> http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all
21:41:27 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> a
21:41:28 <oerjan> that sounds like something that should just have been in @where
21:41:48 <lambdabot> dummy provides: eval choose id read show dummy bug get-shapr faq paste learn map shootout botsnack thanks thx thank you ping wiki oldwiki docs source fptools hackage googleit
21:42:00 <lambdabot> system provides: echo list listchans listmodules listservers uptime
21:42:03 <lambdabot> ##freebsd ##logic ##math ##proggit ##villagegreen #agda #arch-haskell #codez #darcs #esoteric #fedora-haskell #friendly-coders #functionaljava #gentoo-haskell #gentoo-uy #ghc #happs #haskell #
21:42:04 <lambdabot> haskell-blah #haskell-books #haskell-br #haskell-fr #haskell-freebsd #haskell-in-depth #haskell-overflow #haskell-pl #haskell.au #haskell.cz #haskell.de #haskell.dut #haskell.es #haskell.se #haskell.
21:42:04 <lambdabot> tw #learnanycomputerlanguage #lesswrong #macosx #macosxdev #rosettacode #scala #scalaz #scannedinavian #snapframework #tanuki #teamunix #unicycling #uscs2010 #xmonad #yi weird#
21:42:57 <oerjan> shapr isn't even online
21:43:02 <olsner> I hope this command works something like the bat signal
21:43:12 -!- kinoSi has quit (Read error: Connection reset by peer).
21:43:39 -!- kinoSi has joined.
21:44:13 <lambdabot> 2.7182818284590452353602874713526624977572
21:45:12 <lambdabot> http://hackage.haskell.org/package/numbers
21:45:28 <copumpkin> which someone added to maximize confusion
21:49:02 <oerjan> hackage is case sensitive? :(
21:50:32 <FreeFull> numbers sure produces a lot of warnings when installed
21:59:42 <oerjan> i don't think so, it's another name for the element tungsten
21:59:51 <itidus21> (no.. and it will only be a unit for anything over my dead body)
22:01:05 <olsner> some say Wolfram is the unit of ego
22:01:31 <olsner> > During the dinner discussion leading up to this definition the foreword to one of the Mathematica books was mentioned, where Stephen Wolfram (in third person) wrote "Stephen Wolfram is the creator of Mathematica and is widely regarded as the most important innovator in scientific and technical computing today." In honour of this self-assessment I suggest we call the unit of ego the Wolfram.
22:01:32 <lambdabot> <no location info>: parse error on input `of'
22:02:15 <itidus21> in theory ego should be measurable right?
22:03:12 <itidus21> i guess it needs to be related to other things before it becomes useful
22:03:25 <olsner> that quote was from the first hit, the second hit was http://www.wolframalpha.com/input/?i=size+of+stephen+wolfram%27s+ego
22:03:38 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:05:42 <oerjan> IT DOESN'T ANSWER THE QUESTION. USELESS CRAP.
22:06:30 <olsner> it should say 1 Wolfram, but I suppose that kind of self-deprecating humor is incompatible with his ego
22:07:29 <oerjan> do they actually have these things in america http://www.sheldoncomics.com/archive/121002.html
22:07:58 <itidus21> lmao @ "http://www.wolframalpha.com/input/?i=size+of+stephen+wolfram%27s+ego"
22:09:05 <oerjan> ...i just realized what to call the unit of obviousness, here.
22:09:33 <oerjan> olsner: it starts with i and ends with s
22:10:01 <oerjan> no, obvious doesn't start with i.
22:11:31 <oerjan> i guess it was sort of obvious.
22:12:13 <oerjan> <olsner> but that starts with s!
22:12:20 <itidus21> i wonder if enough people used that query on wolfram whether it would show up in the wolfram offices
22:13:02 <olsner> it is conceivable that at least one of the quotes about units of ego have been forwarded
22:13:04 <oerjan> in the wolfram offices, wolfram's ego is the elephant in the room
22:15:09 <olsner> in the wolfram offices, it takes physical form and walks around in the shape of an elephant
22:15:58 <itidus21> stephen+ego Development of this topic is under investigation...
22:16:04 <itidus21> i'm.. not sure what that means
22:16:05 <barts> wolfram's ego is the office
22:16:23 <barts> if you're working for wolfram, you enter his ego every day from 9 til 5.
22:16:59 <olsner> it's like that star trek episode where they think there's an entity helping a starbase, but it turns out the entity *is* the starbase
22:17:08 <oerjan> olsner: i think you ruined the joke. :(
22:17:42 <barts> olsner: which episode was that
22:17:52 <barts> the first tng one?
22:17:52 <oerjan> a pun on "elephant in the room" and the size of wolfram's ego
22:18:10 <barts> no man, they thought the entity was killing the base
22:18:28 <barts> but it was helping other entities of its kind which were the base
22:18:34 <barts> or something like that
22:18:45 <olsner> there were two entities
22:21:12 <olsner> there are probably other episodes with similar plots as well
22:21:37 <oerjan> also, no one answered my question of whether they really have these crazy things in america http://www.sheldoncomics.com/archive/121002.html
22:22:25 -!- hagb4rd has quit (Ping timeout: 256 seconds).
22:22:25 <olsner> those 'muricans be crazy
22:26:41 -!- hagb4rd has joined.
22:27:37 <itidus21> oops.. i almost forgot the link i was reading wasn't posted in here
22:28:17 <itidus21> apparently wolfram's new kind of science recommends mathematica.. and someone is annoyed by it
22:29:53 <itidus21> i think.. maybe he should see a psychologist
22:30:36 <quintopia> oerjan: i'm not sure, but i dont think it's illegal to carry these around
22:30:39 <quintopia> http://www.bondorseals.com/more_info/cable_and_hose_bridges/cable_and_hose_bridges.htm
22:32:04 <itidus21> when i was young i had a remote control car with a kind of bridge it could lower under itself
22:33:00 <oerjan> quintopia: i don't quite see the relevance
22:33:26 <itidus21> oerjan: to place over those traffic bumps from the linked comic
22:33:50 <oerjan> itidus21: ok, but that doesn't in any way detract from the bumps' insanity
22:33:57 <fizzie> I had some of those flipping cars.
22:34:51 <fizzie> There's a spring-loaded lever kind of thing that activates after a bit of travel, and makes the car jump and flip over and sometimes even land the right way up.
22:35:12 <fizzie> Or possibly snap on your fingers when arming, or some other such thing.
22:35:38 <oerjan> i guess the point is americans are so crazy that you have to use these crazy things to prevent them from driving against one-way roads.
22:37:07 -!- copumpkin has joined.
22:37:49 <oerjan> unless the real point is americans are so crazy they _think_ other americans are that crazy.
22:38:22 <fizzie> oerjan: Aren't those things parking-lot-entrance related more than just generic one-way-street related? Not that I *know* anything.
22:41:36 <fizzie> oerjan: They installed one of those "giant metal pole rises up from the street" traffic control devices at the ends of a mostly-pedestrian street (vehicles that need access get a remote to lower it, and it auto-lowers if trying to exit the street); a day later it rose up when a taxi was right over it.
22:42:00 <fizzie> I think they said it was some kind of a set-up bug that they fixed.
22:42:08 -!- ion has quit (Ping timeout: 246 seconds).
22:43:51 -!- ion has joined.
22:47:20 <itidus21> i am more interested in the unsolicited humour than reality when i say there is no operation which satisfies x in the equation (> (x wolfram) (in mathematicians_wolfram_admires))
22:47:52 -!- boily has quit (Quit: Poulet!).
22:49:19 -!- jiella has quit (Quit: Leaving.).
22:52:02 <oerjan> itidus21: formulating mathematics in lisp syntax rarely works for humour, especially when it's utterly logically meaningless.
22:55:22 <itidus21> what i tried to say is really in bad taste
22:56:42 <Phantom_Hoover> you just put some brackets around it, we're not buzzing and giving off smoke
22:57:16 -!- augur has joined.
22:57:27 <itidus21> i know it couldn't be more hypocritical, since obviously i needed quite an overinflated ego to say it, and also that i am a god awful mathematician
22:57:43 <itidus21> incidentally i am also an awful integer
22:58:17 <itidus21> i try to self deprecate to keep it down
23:01:18 <itidus21> yea i probably make it seem uncool to make fun of wolfram
23:02:16 <itidus21> i layed down and thought about it, i guess its just a business thing..
23:04:47 <itidus21> government:president::employees:employer::animators:director etc
23:11:53 * oerjan is in _that_ mood today.
23:12:46 <kmc> itidus21:full of shit always
23:13:04 <kmc> i enjoy it tho
23:13:22 <kmc> i don't understand what *he* gets out of it, but i enjoy it
23:13:29 <Phantom_Hoover> as it stands he spends too much time dragging down the discussion
23:13:54 <Phantom_Hoover> it's fun for a while and all but he's still making the channel that much worse by being here and he's clearly never going to change
23:14:30 <oerjan> oh dear, i seem to have triggered Phantom_Hoover into _his_ mood.
23:15:47 -!- monqy has joined.
23:15:55 <kmc> the self deprecation doesn't help
23:16:06 <kmc> it's one thing to occasionally overstep your knowledge and admit that you are doing so
23:16:14 <Gregor> oerjan: Wouldja like some popcorn?
23:16:36 -!- Jafet has joined.
23:16:53 <kmc> it's another thing to say completely wrong worthless things all the time, with the stated knowledge that they are completely wrong
23:16:54 <FreeFull> I find that if I'm doing badly at a game, and say how much I suck, I start doing better
23:17:31 <kmc> that basically amounts to admitting "i like the sound of my own voice and i don't care what you get out of it"
23:18:35 <Arc_Koen> but that sound is so nice and pleasant!
23:25:58 <Arc_Koen> oerjan: if you had the restriction "for all loops, the current cell must be the same at the beginning of every iteration of that loop" to brainfuck, does it change tcness?
23:26:19 <Arc_Koen> you told me it didn't, for 3-cell brainfuck, but do the proofs for the other forms of brainfuck still hold?
23:28:22 <fizzie> Arc_Koen: For bounded-cell-size unbounded-tape brainfuck, it vaguely sounds like that'd limit the amount of accessible memory to something that depends on the amount of >s in the program.
23:30:22 <Arc_Koen> well that's a confirmation that I'm too tired right now
23:30:41 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:31:12 <Arc_Koen> I wanted to prove that pbrain was tc even without the [ ] loops
23:32:11 <Arc_Koen> and assuming the > didn't need to disobey that restriction I could've said it was obvious but I'll guess it'll need a little more work
23:32:28 <Arc_Koen> so have a good night and see you guys
23:36:58 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
23:44:25 -!- itidus21 has left ("Leaving").
23:45:46 -!- FreeFull has quit (Quit: Sleep).
00:26:31 -!- copumpkin has quit (Ping timeout: 260 seconds).
00:27:06 -!- copumpkin has joined.
00:50:26 <kmc> anyone have a link for watching the US Presidential debate, something i can pass to mplayer rather than using some Flash player?
00:54:55 -!- sivoais has quit (Quit: Lost terminal).
01:22:33 -!- oerjan has quit (Quit: Good night).
02:01:37 -!- DHeadshot has joined.
02:11:17 -!- Jafet has quit (Quit: Leaving.).
02:20:06 -!- Jafet has joined.
02:24:09 -!- sivoais has joined.
02:49:58 <kmc> that was a boring debate
03:11:04 <Jafet> Damned fat overlords
03:11:12 <Jafet> @let rc=let z n=replicate n(replicate 24 '0')in(fst.head.readHex)<$>transpose("008800880000088888088808":z 7++"000808800088800000088088":z 3++"088880880080808880808808":z 1++["088080808800888008008800","12a0b119a89abb9320aa1018"]);rot=[[0,36,3,41,18],[1,44,10,45,2],[62,6,43,15,61],[28,55,25,21,56],[27,20,39,8,14]]
03:11:58 <Jafet> @let kr::[[Word64]]->[[Word64]];kr a=foldl r a rc where r a rc=let c=foldr1 xor<$>a;d=zipWith xor(last c:c)$(`rotateL` 1)<$>tail c++[head c];a'=zipWith(map.xor)d a;b'=zipWith(zipWith rotateL)a' rot;b=[[b'!!(3*(y-3*x)`mod`5)!!x|y<-[0..4]]|x<-[0..4]];a''=zipWith3(zipWith3(\x y z->xor x(complement y.&.z)))b(tail b++b)(drop 2 b++b)in(xor(a''!!0!!0)rc:tail(a''!!0)):tail a''
03:12:20 <Jafet> > map(map(`showHex`"")) $ k $ replicate 5 (replicate 5 0)
03:12:21 <lambdabot> Couldn't match expected type `a -> b'
03:12:27 <Jafet> > map(map(`showHex`"")) $ kr $ replicate 5 (replicate 5 0)
03:12:29 <lambdabot> [["f1258f7940e1dde7","ff97a42d7f8e6fd4","eb5aa93f2317d635","5e5635a21d9ae61...
03:43:19 -!- Jafet has quit (Quit: Leaving.).
04:05:18 -!- mig22 has joined.
05:20:29 -!- Tod-Autojoined has joined.
05:20:43 -!- TodPunk has quit (Read error: Connection reset by peer).
05:25:00 -!- Jafet has joined.
07:26:23 -!- epicmonkey has joined.
07:40:45 -!- ais523 has quit.
08:37:26 -!- mig22 has quit (Quit: mig22).
09:01:49 -!- ais523 has joined.
09:07:00 -!- mig22 has joined.
09:19:34 <ion> http://bash.org/?953518
09:26:21 <ais523> hmm, based on what I saw on reddit, I think we have a new lesser-known programming language: http://www.floopsy.com/post/32660494624/programming-language-objective-corporatespeak
09:26:25 <ais523> or at least, something in the same mold
09:26:57 <ais523> ion: that's got to be fake, right?
09:27:00 <ais523> as in, someone lying on IRC
09:27:03 <ais523> (which happens all the time)
09:27:09 <fizzie> There's LYING on IRC?!
09:27:27 <ion> It was on the Internet, it must be true.
09:27:41 <ais523> ion: because if someone were wrong on the internet, they would have been corrected?
09:27:44 <fizzie> It reminds me of the "im gunan hack a street light" story.
09:28:02 <fizzie> ais523: http://www.nndb.com/people/523/000095238/
09:28:02 <oklopol> why does it have to be fake
09:28:47 <ais523> and it seems unlikely someone would keep armed landmines in their shed
09:28:54 <oklopol> where would you keep them?
09:29:35 <oklopol> oh i assumed they weren't armed and exploded for some other reason
09:30:57 <ais523> things tend to not really spontaneously explode
09:31:00 <oklopol> if they were actually in their explosionous state for fun then i guess i agree that it has to be fake
09:31:04 <ais523> admittedly, landmines might be an exception
09:31:38 <oklopol> well i don't know how hard it is to accidentally blow up a landmine
09:31:51 <oklopol> i suppose it's as hard as they could make it be minus 5
09:32:05 <ais523> if a landmine blows up accidentally, it's not really doing its job
09:32:22 <ais523> apparently in the world wars, people used to simply dismantle anti-tank landmines by hand
09:32:29 <ais523> because they were designed to blow up against tanks, not people
09:32:38 <oklopol> the minus five is because they do explode if you accidentally activate them.
09:33:50 <ais523> in general people like to avoid arming explosives until they're in a situation where you wouldn't mind them exploding
09:34:29 <oklopol> but you could still do it by accident
09:35:15 <oklopol> [12:34:56] <oklopol> bloop
09:35:47 <fizzie> ais523: Speaking of landmines, Finland signed the Ottawa Treaty pretty recently; it took effect in July this year. (There's long been debate about it; after all, "everyone else" signed it in like 1997.)
09:37:09 <fizzie> Well, except for some relatively unknown places like, let's see, USA or Russia.
09:37:49 <fizzie> http://en.wikipedia.org/wiki/List_of_parties_to_the_Ottawa_Treaty -- we're second-latest, apparently.
09:38:40 <oklopol> fizzie: sorry to embarrass you but those are in fact rather big and known places.
09:38:49 <oklopol> please read a newspaper and not an oldspaper.
09:39:19 <fizzie> oklopol: Well, uh, is this "China" thing one too, then?
09:41:43 -!- ais523 has quit (Read error: Connection reset by peer).
09:42:00 -!- ais523 has joined.
09:44:50 -!- hagb4rd has quit (Ping timeout: 244 seconds).
09:58:37 -!- monqy has quit (Quit: hello).
10:02:57 -!- Arc_Koen has joined.
10:04:07 -!- ais523_ has joined.
10:04:36 -!- ais523 has quit (Read error: Connection reset by peer).
10:28:50 -!- ais523_ has quit (Read error: Connection reset by peer).
10:29:01 -!- ais523_ has joined.
10:45:28 -!- ais523_ has quit (Read error: Connection reset by peer).
10:45:37 -!- ais523_ has joined.
11:08:47 -!- barts_ has joined.
11:11:38 -!- barts has quit (Ping timeout: 244 seconds).
11:24:32 -!- impomatic has joined.
11:29:29 -!- carado has joined.
11:31:47 -!- ogrom has joined.
11:36:34 <Arc_Koen> doesn't mediawiki have an easy way to display the intersection of two categories?
11:53:02 -!- impomatic has left.
11:53:02 -!- DHeadshot has quit (Read error: Connection reset by peer).
11:53:55 -!- ais523_ has quit (Ping timeout: 260 seconds).
11:57:41 -!- ogrom has quit (Quit: begone).
11:58:35 -!- copumpkin has quit (Ping timeout: 260 seconds).
11:59:10 -!- copumpkin has joined.
12:24:55 -!- augur has quit (Remote host closed the connection).
12:26:39 -!- MoALTz has joined.
12:28:15 -!- ais523_ has joined.
12:28:40 -!- ais523_ has changed nick to ais523.
12:31:36 -!- Phantom_Hoover has joined.
12:36:50 -!- DHeadshot has joined.
12:37:13 -!- ais523 has quit (Ping timeout: 246 seconds).
12:37:16 -!- ais523_ has joined.
12:37:27 -!- ais523_ has changed nick to ais523.
12:38:00 -!- boily has joined.
12:44:29 -!- ogrom has joined.
12:51:52 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
12:53:54 -!- augur has joined.
12:58:59 -!- Phantom_Hoover has joined.
13:03:02 <Sgeo> Hmm, on the one hand, Onion Radio has a funny headline for something, on the other hand, it's Onion Radio which consistently sucks
13:09:29 <Sgeo> I think the voice just grates on me
13:09:58 -!- Indecipherable has joined.
13:15:33 -!- Indecipherable has quit (Quit: used jmIrc).
13:21:49 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:27:48 -!- carado has quit (Remote host closed the connection).
13:29:54 <Arc_Koen> olsner: well Im think I'm done with the bf interpreter
13:30:42 <Arc_Koen> (actually I realized the way I was doing was probably not the best; I was storing the brainfuck code around the current cell, which made it quite boring to implement > and <
13:30:55 <Arc_Koen> so I started all over, storing the brainfuck code around the whole tape
13:31:07 <Arc_Koen> and I'm done! except for . and , which are currently no-ops
13:35:34 <Arc_Koen> If you're interested, the code is there: http://sprunge.us/gddK note that I haven't tested it yet, I'll write a thue interpreter in C with the optimization of keeping the substitution rules in a list, always putting the last used rule on top, and always trying rules in the order they are listed (that should make the brainfuck interpreter much faster as every operation uses only a few rules, for instance you don't need to try al
13:35:35 <Arc_Koen> "move to next cell" related rules when you're in the middle of incrementing the current cell)
13:36:51 <Arc_Koen> and I apologize about not writing comments in it; I guess once I have tested it I'll add a "readme" or something
13:41:24 -!- Frooxius has joined.
13:41:35 -!- copumpkin has joined.
13:43:54 -!- kinoSi has quit (Read error: Connection reset by peer).
13:44:21 -!- kinoSi has joined.
13:49:50 -!- Tod-Autojoined has quit (Read error: Connection reset by peer).
13:54:51 -!- mig22 has quit (Quit: mig22).
13:57:08 -!- TodPunk has joined.
14:36:07 -!- boily has quit (Ping timeout: 240 seconds).
14:40:00 -!- boily has joined.
15:00:51 -!- Arc_Koen has quit (Quit: Arc_Koen).
15:07:39 -!- atriq has joined.
15:08:52 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
15:09:07 -!- Phantom_Hoover has joined.
15:21:46 -!- ogrom has quit (Quit: Left).
15:44:07 <atriq> I need to quickly make Data.FamilyTree awesome
15:52:03 -!- ais523 has quit.
15:59:32 -!- atriq has quit (Remote host closed the connection).
15:59:36 -!- oerjan has joined.
16:00:05 <oerjan> R.I.P. my favorite café/restaurant :(
16:01:24 -!- atriq has joined.
16:06:40 <atriq> Time to learn GEDCOM 6!
16:07:38 <oerjan> @tell <Arc_Koen> doesn't mediawiki have an easy way to display the intersection of two categories?<-- hm i think i may have wanted that yesterday when failing to find out if a kind of brainfuck derivative existed. or maybe not, not sure what the other category should have been.
16:09:04 <oerjan> i think i'd really have wanted a list of summaries for everything in the category.
16:09:24 -!- Slereah has quit (Ping timeout: 260 seconds).
16:12:48 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
16:16:08 -!- atriq has quit (Remote host closed the connection).
16:22:43 -!- atriq has joined.
16:23:08 -!- Slereah has joined.
16:37:44 -!- ogrom has joined.
16:42:12 <oerjan> > 2 * 3 * 47 * 61 * 67 * 103
16:43:38 <oerjan> > nubBy (((>1).).gcd)[2..]
16:43:41 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
16:45:05 <oerjan> > drop 10 $ nubBy (((>1).).gcd)[2..]
16:45:08 <lambdabot> [31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,1...
16:47:33 -!- FreeFull has joined.
16:50:27 * oerjan leaves this to Arc_Koen.
16:54:56 -!- Vorpal has joined.
16:57:36 -!- elliott has joined.
16:57:42 <elliott> fizzie: You know that P.E.R.L. language, right?
17:04:51 <oerjan> what did fizzie do now
17:11:00 -!- Phantom_Hoover has joined.
17:11:25 <FreeFull> Python is so simple, someone who doesn't know the language can help someone who knows more about it than they do
17:13:26 <oerjan> FreeFull: i think i did that with ruby once
17:16:00 <oerjan> but aren't most modern imperative languages like that, anyhow.
17:21:24 <kmc> it depends on whether it was a Python question or a programming question where you happen to be using Python
17:21:45 <kmc> Python, Ruby, Lua, Javascript all have quirks which won't be obvious to outsiders
17:22:01 <oerjan> i find this disturbingly nonrecursive http://www.mezzacotta.net/garfield/?comic=1234
17:22:35 <kmc> "So there's an infinite number of parallel universes, eh?" "Nope, just the two!"
17:22:53 * oerjan recalls that's a futurama quote
17:23:59 <kmc> right you are
17:25:02 <olsner> obviously the other parallel universe has another parallel universe
17:25:41 <elliott> apparently the only person who has ever quoted that on the internet is kmc
17:25:53 <elliott> 20:20:47 <kmc> "so there's an infinite number of parallel universes, eh?"
17:25:53 <elliott> 20:20:50 <kmc> "nope, just the two"
17:26:51 <kmc> well maybe i misremember the quote
17:27:01 <oerjan> elliott: given that i have never seen the actual episode afaik, i find that unlikely.
17:27:17 <elliott> https://www.google.co.uk/search?q=%22So+there's+an+infinite+number+of+parallel+universes%2C+eh%3F%22+%22Nope%2C+just+the+two!%22
17:27:38 <elliott> oerjan: maybe you first saw it in that #haskell log
17:27:44 -!- carado has joined.
17:27:46 <elliott> maybe kmc is hallucinating an episode of futurama that never happened
17:27:57 <elliott> are the futurama episode???
17:28:03 <oerjan> well i _may_ have read the wikipedia plot outline :P
17:28:11 <kmc> "Woah, it's like that drug trip I saw in that movie I watched on that drug trip!"
17:28:12 <elliott> oerjan: http://esolangs.org/w/index.php?title=Befunge&curid=1005&diff=34105&oldid=32786
17:28:19 <elliott> oerjan: hey can you give me a reason not to revert this edit
17:28:23 <Phantom_Hoover> it's like when i was little and was afraid i lived in a film
17:28:34 <oerjan> elliott: that i already did so
17:29:11 <elliott> oerjan: i should just give the root password to you and resign
17:29:29 <oerjan> although if it had properly halted on EOF, i probably wouldn't have
17:30:31 <elliott> oh i guess it does literally repeat itself
17:33:14 -!- elliott has changed nick to Wensle.
17:33:20 -!- Wensle has changed nick to elliott.
17:33:51 <oerjan> your secret identity has been revealed!
17:34:00 <oerjan> so secret we've never heard of it
17:34:13 <elliott> yes, that is definitely why I changed my nick
17:35:02 <oerjan> i think they should breed a more silent dog.
17:35:19 <elliott> it's called a dead dog, oerjan
17:35:20 <oerjan> and then neuter the rest.
17:35:26 <elliott> they're really bad at learning new tricks
17:35:33 <oerjan> no no, it's called a good dog!
17:36:17 <oerjan> i have no mouth but i must bark
17:38:42 <atriq> The but, I'd presume
17:39:35 <oerjan> i wasn't going to touch that
18:17:43 <atriq> I made a hexaflexagon today
18:17:51 <atriq> And let someone play with it.
18:17:59 <atriq> She almost destroyed time and space.
18:18:35 <atriq> I just want to know how she made it a pentagon.
18:20:09 <elliott> nice, slicehost just gave me $10
18:20:14 <elliott> by slicehost I mean rackspace
18:26:30 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
18:27:00 <shachaf> Why are you using slicespace now?
18:28:00 <Gregor> For sweet, sweet vengeance?
18:32:08 -!- epicmonkey has quit (Ping timeout: 246 seconds).
18:45:52 -!- ogrom has quit (Quit: Left).
19:12:13 -!- Phantom_Hoover has joined.
19:14:18 <atriq> I have a vague memory, possibly of a dream, involving GHC's internal definition of IO
19:14:35 <lambdabot> Source not found. That's something I cannot allow to happen.
19:14:37 <atriq> It was something like # State # -> (Effect, # State
19:14:46 <oerjan> it used to be in lambdabot
19:15:29 <oerjan> newtype IO a = IO (State# RealWorld -> (# State# RealWorld, a #))
19:16:06 <atriq> Where did I see that?
19:16:27 <oerjan> http://www.haskell.org/ghc/docs/latest/html/libraries/ghc-prim-0.3.0.0/src/GHC-Types.html#IO
19:16:41 <olsner> why is it State# RealWorld instead of just RealWorld or RealWorld#?
19:17:12 <kmc> because ST s uses State# s
19:17:16 <atriq> To keep state threads, separately
19:17:29 <kmc> (ST s) and IO have identical runtime representations and this is useful in various ways
19:17:43 <kmc> the type parameter to State# is a phantom type; (State# x) and (State# y) have the same representation
19:18:09 <kmc> anway I guess you could push the phantom out to ST itself but you would get marginally less checking in the library internals
19:18:50 <shachaf> People were talking about using the fancy new DataKinds with ST to restrict the parameter to the State#
19:39:43 <atriq> I've got into an argument about which is better, IWC or xkcd
19:40:39 <atriq> (I'm firmly on the side of IWC)
19:41:30 <Phantom_Hoover> iwc then, the rot's been in xkcd for about half its run even by conservative estimates
19:42:40 <kmc> what's iwc
19:46:26 <olsner> i-something web comic?
19:46:35 <atriq> `learn iwc contains puns! Puns galore! Puns after puns after puns! Also science!
19:46:48 <Phantom_Hoover> a legacy name considering it ran like clockwork for a decade
19:47:00 <atriq> It was the first webcomic I ever read
19:47:13 <atriq> Without it, I probably wouldn't be in this channel
19:47:22 <atriq> I probably wouldn't be in this community!
19:47:39 <atriq> The Hexham Coincidence wouldn't exist!
19:49:17 <elliott> kmc: iwc is intermezzo war crime
19:49:17 <kmc> oh that thing
19:49:25 <kmc> that would be a good name for a band
19:49:42 <atriq> It'd be an alright name for an album
19:51:50 <elliott> i think kmc is right and atriq is wrong
19:51:54 <elliott> who wants to join intermezzo war crime
19:52:13 <elliott> it is like polka except you commit war crimes at the same time
19:53:06 <elliott> we could start out with an EP where we waterboard someone on every song and then go up from there to global thermonuclear war
19:54:26 <shachaf> elliott: I'd join if there were no drums or guitars.
19:54:31 <kmc> our war crime is that we misappropriate the logo of the international committee of the red cross
19:54:58 <elliott> shachaf: does polka have drums and guitars
19:55:10 <atriq> I think it's mostly accordion
19:55:27 <elliott> kmc: that is a bit far for me
19:55:32 <shachaf> OK, as long as it's a chromatic button accordion.
19:55:44 <elliott> kmc: that would be post-warcrimecore territory
19:56:01 <shachaf> It can be Russian or French.
19:57:50 <atriq> Okay, it's emerged that both me and the person I was talking to
19:57:57 <atriq> ENJOY BOTH WEBCOMICS IN QUESTION
20:02:09 <elliott> http://xkcd.com/1114/ this one is funny
20:02:40 <olsner> I thought you hated xkcd
20:03:25 <kmc> that one is pretty lame
20:04:10 <kmc> people don't generally agree on which ones are good
20:04:13 <elliott> kmc: OTOH you're pretty lame
20:07:53 <HackEgo> 173) [spam] Any flavored hell can pee on the pig pen, but it takes a real football team to throw a slyly optimal formless void at a hole puncher. \ 442) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once. \ 585) <Gregor> But whereas the Zune UI makes one think "I want to kill myself", the Windows CE UI makes one think "I want to kill myself, but first kill my parents
20:08:00 <lambdabot> monochrom says: Welcome to #haskell, where your questions are answered in contrapuntal fugues.
20:08:08 <lambdabot> kmc says: Right, for example Either (pun not intended)
20:08:16 <lambdabot> poetix says: < poetix_>: In ancient Athens, they used to punish adulterers by forcing radishes up their rectums < boegel>: poetix_: sounds like fun !
20:08:27 <lambdabot> monochrom says: Co dawg, we heard you like records so we put record puns so you can omit field names while you name fields.
20:08:34 <lambdabot> olsner says: <olsner> pun indented
20:08:38 <lambdabot> monochrom says: Co dawg, we heard you like records so we put record puns so you can omit field names while you name fields.
20:10:51 <HackEgo> 173) [spam] Any flavored hell can pee on the pig pen, but it takes a real football team to throw a slyly optimal formless void at a hole puncher. \ 442) <Taneb> Look, I often walk my dog through a field with cows in it. And I punched myself in the face once. \ 585) <Gregor> But whereas the Zune UI makes one think "I want to kill myself", the Windows CE UI makes one think "I want to kill myself, but first kill my parents
20:15:23 -!- glogbackup has joined.
20:31:16 -!- Vorpal has quit (Ping timeout: 246 seconds).
20:35:06 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
20:37:07 -!- Phantom_Hoover has joined.
20:40:37 <Phantom_Hoover> i started doing maths at uni does it start being interesting at some point
20:41:10 <oklopol> depends on your university i guess
20:41:31 <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:42:02 <oklopol> or what are you taking i guess you haven't finished anything
20:44:07 <Phantom_Hoover> i've had like 1 lecture in analysis, 2 in differential equations, 2 in geometry and 2 in 'foundations' which is like first principles
20:44:47 <Phantom_Hoover> the first geometry one was the closest to being interesting iirc
20:45:47 <fizzie> At least here I think it goes approximatly so that it starts being interesting when it stops being part of the basic math courses for all kinds of folks and starts being courses with actual names.
20:46:07 <fizzie> Possibly. I didn't do it (much).
20:46:47 <oklopol> differential equations are kinda bleh
20:46:49 <Phantom_Hoover> unfortunately i have to share all of those except probably foundations and analysis
20:47:28 <oerjan> `addquote <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:47:32 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t \ y on purpose, i just accidentally hit the keyboard with my head
20:47:55 <Phantom_Hoover> it was kind of interesting too but too much time was spent going over easy stuff like doing euclid's proof rigorously
20:48:09 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 5) <Warrigal> GKennethR: he should be told
20:48:34 <Phantom_Hoover> also one of you fuckers infected me with constructivism, now i have an inner voice screaming whenever contradiction is used
20:48:44 -!- augur has quit (Remote host closed the connection).
20:48:48 <HackEgo> *poof* <oklopol> t <oklopol> y <oklopol> also i didn't say t \ y on purpose, i just accidentally hit the keyboard with my head
20:48:56 <oerjan> `addquote <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:49:00 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t \ y on purpose, i just accidentally hit the keyboard with my head
20:49:35 <Phantom_Hoover> `addquote <oklopol> t <oklopol> y <oklopol> also i didn't say t\\ny on purpose, i just accidentally hit the keyboard with my head
20:49:38 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:49:43 <oerjan> it actually turned \n into a newline
20:49:51 <fizzie> We have a thing where there's this set of courses "Math X1" .. "Math Xn" where X is like C for CS people and L for physics/etc. people and so on (there's maybe six different letters?) and 'n' depends on the letter but is usually about 2-4, and those are mandatory parts, and nobody I know of has accused them of being especially interesting.
20:50:48 <oerjan> elliott: actually that has to be in `quote not `addquote...
20:50:56 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\\ny on purpose, i just accidentally hit the keyboard with my head
20:51:29 <oklopol> could you please redo that a couple more... oh
20:51:35 <oerjan> `addquote <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:51:38 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t \ y on purpose, i just accidentally hit the keyboard with my head
20:51:44 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:52:05 <oerjan> it gives the right `quote, but some other commands are buggy in printing it
20:52:07 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:52:15 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:52:36 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:52:36 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:52:54 <Phantom_Hoover> oh also at one point a guy felt it necessary to ask the lecturer why he'd switched from double-striking the middle stroke of N rather than the left one
20:53:08 <oklopol> when did i first come here?
20:54:04 <HackEgo> 170) <fungot> elliott: it's hard to debug havoc on your mirror if you accidentally hit r, then a character could be multiple words long, depending on the task. \ 295) <cpressey> BYE dbc WE'LL BE SURE TO ACCIDENTALLY MENTION YOUR NICK OFTEN \ 761) <elliott> oops I accidentally deleted the universe <olsner> looks weird when you put a verb after accidentally like that \ 867) <oklopol> t <oklopol> y <oklopol> also i didn't
20:54:06 <boily> who are Aftran, Slereah, Quas_NaAart, AnMaster and Warrigal?
20:54:13 <oerjan> `quote accidentally hit
20:54:16 <HackEgo> 170) <fungot> elliott: it's hard to debug havoc on your mirror if you accidentally hit r, then a character could be multiple words long, depending on the task. \ 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
20:54:34 <oerjan> Warrigal is now tswett
20:55:24 <fizzie> Phantom_Hoover: We had a lecturer whose blackboard variables initially had superscript indices, at the end had subscript indices, and in-between had kind of midscript indices. (I may have mentioned this before.)
20:55:58 <oklopol> you do have had to done that.
20:56:00 <fizzie> I don't think anyone really commented, though.
20:56:18 <oklopol> but that's like my version of whatever dude
20:56:22 <fizzie> Except maybe to clarify that the meaning didn't change.
20:56:45 <oklopol> i thought you meant like you have the right to say it again because we didn't laugh the first time
20:57:18 <oklopol> err or wait i have no idea what you're talking about
20:57:19 <fizzie> Oh, no; I mean, at that time, when it happened, for reals.
20:58:10 <fizzie> As opposed to Phantom_Hoover's friend who is interested in the details of the art of doublestriking.
20:58:15 -!- boily has quit (Quit: Poulet!).
20:58:51 <HackEgo> #!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ echo $(qc | cut -d' ' -f1)") $1"
21:00:27 <elliott> do you have questions about the quote system
21:00:50 <oerjan> yes, why do `addquote and `delquote print \n as newline
21:01:58 <elliott> does it happen on just addquote or on quote too
21:02:51 <elliott> oerjan: so if you do addquote foo\nbar
21:03:08 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
21:04:10 <HackEgo> #!/bin/sh \ allquotes | if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ sed "$1q;d" \ else \ grep -P -i -- "$1" \ fi \ else shuf -n 1; fi
21:04:27 <elliott> `run echo 'echo "$1"' >bin/fuck
21:04:34 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: fuck: not found
21:04:35 <oerjan> i am guessing echo is doing it wrong
21:04:43 <elliott> `run echo "#!/bin/sh" >bin/fuck
21:04:47 <elliott> `run echo 'echo "$1"' >>bin/fuck
21:05:01 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/fuck: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/fuck: cannot execute: Permission denied
21:05:16 <olsner> oerjan: when does \n get printed as a newline?
21:05:35 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/bin/fuck: Permission denied \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/bin/fuck: cannot execute: Permission denied
21:05:36 <oerjan> olsner: by the `addquote itself, and by `delquote
21:05:59 <elliott> oerjan: does it get showed as foo \ bar
21:06:35 <HackEgo> #!/bin/sh \ id=$1 \ expr "$1" + 0 >/dev/null 2>&1 || exit 1 \ head -n $((id-1)) quotes >quotes.new \ tail -n +$((id+1)) quotes >>quotes.new \ diff quotes quotes.new >/dev/null && exit 1 \ echo "*poof*$(quote $id | cut -d')' -f2-)" \ mv quotes.new quotes \
21:06:47 <elliott> oerjan: the problem is "$1". i don't know how to fix that.
21:06:58 <oerjan> elliott: but it works with the printf in `addquote
21:06:59 <elliott> change fuck to printf %s and you'll see
21:07:15 <elliott> `run echo '#!/bin/sh' >bin/fuck
21:07:23 <elliott> `run echo 'printf "%s" "$1"' >>bin/fuck
21:08:02 <fizzie> You really showed him there!
21:08:14 <elliott> oerjan: i will tell you how to fix add & delquote but you have to do it because i am not using sed any more
21:08:23 <elliott> echo $(qc | cut -d' ' -f1)") $1"
21:08:34 <elliott> printf "%d) %s" $(qc | cut -d' ' -f1) "$1"
21:08:35 <olsner> what, what did sed do to you?
21:08:45 <elliott> echo "*poof*$(quote $id | cut -d')' -f2-)"
21:08:54 <olsner> seems unfair to suddently just "not use sed any more"
21:08:56 <elliott> printf "*poof*%s" "$(quote $id | cut -d')' -f2-)"
21:10:57 <oerjan> as if i remember how to do literal substitutions in sed
21:12:06 <fizzie> `run sh -c "echo 'also\na'; /bin/echo 'silly\noption'"
21:14:20 -!- atriq has quit (Quit: Leaving).
21:15:47 <elliott> oerjan: just get the files from `url
21:15:52 <elliott> and then use `fetch/`run mv
21:16:15 <fizzie> I can break them with sed, I really can.
21:17:27 <HackEgo> #!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ echo $(qc | cut -d' ' -f1)") $1"
21:20:07 <elliott> fizzie: feel free to fix it also
21:20:37 <oerjan> `run sed -i '4s/.*/printf "%d) %s" $(qc | cut -d' ' -f1) "$1"/' /bin/addquote
21:20:41 <HackEgo> sed: -e expression #1, char 35: unterminated `s' command
21:20:49 <fizzie> `run cp bin/addquote bin/addquote_; sed -ie 's/echo/printf "%d) %s"/;s/") / "/' bin/addquote; cat bin/addquote
21:20:52 <HackEgo> #!/bin/sh \ [ "$1" ] || exit 1 \ printf "%s\n" "$1" >>quotes \ printf "%d) %s" $(qc | cut -d' ' -f1) "$1"
21:21:30 <fizzie> I think it at least looks as prescribed.
21:22:19 <fizzie> Backups are so like one of those circus guys walking on a wire except with a safety rope.
21:22:36 -!- monqy has joined.
21:22:39 <elliott> `addquote <fizzie> Backups are so like one of those circus guys walking on a wire except with a safety rope.
21:22:42 <HackEgo> 868) <fizzie> Backups are so like one of those circus guys walking on a wire except with a safety rope.
21:24:25 <shachaf> `addquote <elliott> `delquote 869
21:24:28 <HackEgo> 869) <elliott> `delquote 869
21:25:00 <shachaf> Quotes should get an identifier based on a cryptographic hash of their contents.
21:26:14 <olsner> at least one quote before 869 is about to be deleted, changing the number of that quote and ruining the joke
21:26:23 <fizzie> `run sed -ie 's/echo "\*poof\*/printf "*poof*%s" "/' bin/delquote
21:26:37 <fizzie> See, no hands, I mean backups.
21:26:58 <fizzie> oerjan: Quotes are serious business.
21:29:38 <olsner> sounds like that character in doctor who
21:33:01 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:44:14 -!- Frooxius has quit (Ping timeout: 260 seconds).
22:00:27 -!- copumpkin has joined.
22:10:39 <fizzie> desmond:/scratch/users/htkallas 14T 14T 0 100% /fs/scratch/users/htkallas
22:10:46 <fizzie> Well, that's not good.
22:11:13 <fizzie> Especially the parts of there being 0 bytes free and 100% of usage.
22:11:49 -!- carado has quit (Quit: Leaving).
22:12:03 <fizzie> It's the "work" directory, I'm sort of guessing someone had a runaway script.
22:14:50 <fizzie> (Perhaps I should check that someone != self.)
22:21:19 <fizzie> Huh, 51G in /work. Time to clean up, perhaps, but not a giant chunk of 14T.
22:25:16 -!- augur has joined.
22:26:39 <Phantom_Hoover> dammit, warwick's nick cage appreciation society are slippery customers
22:33:39 <oerjan> Phantom_Hoover: you have to get them while you think they're taking a break
22:34:11 <Phantom_Hoover> i'm not sure where they meet, what they do or indeed who any of them are
22:34:21 <Phantom_Hoover> the student union website is infuriatingly uninformative
22:34:31 <Phantom_Hoover> maybe i can find the president and grill him for information
22:34:41 -!- augur has quit (Read error: Connection reset by peer).
22:34:50 <oerjan> maybe they meet by _not_ meeting
22:35:42 -!- augur has joined.
23:09:28 <elliott> shachaf: http://www.reddit.com/r/haskell/comments/10ynff/regarding_top_and_bottom_in_haskells_type_system/
23:09:38 <elliott> shachaf: this was a great post when i just read it but then it got even better when i saw who wrote it
23:10:42 <elliott> oerjan: oh hey you are maybe the reason I saw http://www.msr-inria.inria.fr/events-news/feit-thompson-proved-in-coq
23:11:05 <oerjan> my only reddit post so far
23:11:38 <oerjan> although i heard of it in here
23:11:43 <elliott> the classification of simple groups is the coolest proof
23:13:14 <shachaf> elliott: You should post talking about (forall a. a) and (exists a. a)
23:13:18 <elliott> Phantom_Hoover: what is your definition of a "proof"?
23:13:32 <elliott> wikipedia agrees with me: "The proof of the theorem consists of tens of thousands of pages in several hundred journal articles written by about 100 authors, published mostly between 1955 and 2004."
23:14:27 <shachaf> elliott: Too late, cmccann posted.
23:14:46 <Phantom_Hoover> also that seems to be one tiny subsection of the entire classification?
23:15:10 <elliott> Phantom_Hoover: what would you call the proof of the theorem, then?
23:15:59 <Phantom_Hoover> can we stop this quibble, i should never have mentioned t
23:16:03 <elliott> oerjan: "Hm is it automatically true that whenever MT is a monad transformer, there exists a function of type (Monad m) => MT Identity a -> MT m a ?"
23:16:17 <elliott> oerjan: it "should" be true, but it's not in MonadTrans
23:16:21 <elliott> oerjan: edwardk has a package with it
23:16:24 <ion> Key & Peele: Dubstep http://youtu.be/5Kod1q39ddE
23:16:39 <elliott> oerjan: what you actually want is something like (Monad m) => (forall a. m a -> n a) -> MT m a -> MT n a IIRC
23:16:42 <elliott> but that's not Haskell 2010
23:17:22 <oerjan> yeah someone made a post about that shortly afterwards, i think
23:17:51 <elliott> oerjan: that was some dumb tailcalled or tekmo post that suggested something wrong iirc. but edwardk replied with the right thing
23:19:16 <fizzie> I cleared about 8 gigs of space, came back ten minutes later, and now it's all gone again.
23:19:50 <oerjan> Phantom_Hoover: it's a tiny subsection, but it was the proof that got mathematicians to realize they didn't need to make proofs short, which probably helped immensely with the rest :) (also some direct consequences for making the rest of the program possible, iirc)
23:20:30 <oerjan> if you are talking about feit-thompson
23:20:43 <fizzie> Quite often these "someone's rogue script fills all space" problems tend to "auto-resolve" in the sense that the script dies when the disk is full, and therefore won't fill any newly freed storage.
23:20:53 <fizzie> I suppose this time someone has produced a robust enough space-waster.
23:21:18 <FreeFull> How big is Haskell on the metaprogramming thing?
23:21:42 <elliott> depends what you mean by metaprogramming
23:21:48 <elliott> and also the rest of those words, but mainly metaprorgamming
23:21:51 * oerjan suddenly realizes elliott may be stalking him on reddit
23:22:29 <FreeFull> elliott: The kind where you often end up with domain-specific languages
23:23:25 <elliott> FreeFull: I would say it's incredibly big on that.
23:23:31 <oerjan> pretty big, in several different ways
23:23:33 <elliott> however I'd also not identify that with metaprogramming
23:23:51 <elliott> in that there are several ways to do EDSLs, and only some of them look like metaprogramming to me, and Haskell's methods don't really
23:24:02 <oerjan> template haskell doesn't?
23:24:06 <elliott> (I would also say Haskell's methods are a better way of doing it, though)
23:24:11 <FreeFull> I know Racket is really big on DSLs
23:24:20 <shachaf> Template Haskell? More like Terrible Haskell.
23:24:20 <elliott> oerjan: yes, template haskell looks like metaprogramming to me. however, i would not build a DSL in Haskell by using template haskell
23:24:25 <elliott> unless I was doing something weird
23:24:31 <elliott> but I don't like TH, so I'd probably do it another way instead
23:24:45 <oerjan> thus, several different ways.
23:25:04 <shachaf> elliott: It's the very foundation of Haskell DSLs!
23:25:31 <oerjan> FreeFull: the monad thing you keep hearing about is also a kind of DSL method.
23:25:44 <oerjan> well can be used that way
23:26:31 <elliott> Silly monad mysticism doesn't need to be promoted through vague statements that won't make any sense to start with.
23:26:45 <oerjan> and on the entirely other side are the template haskell based quasi-quotes which allows you to make any syntax you want. (as long as you don't need the string |] in it.)
23:29:30 -!- SimonRC has quit (Ping timeout: 264 seconds).
23:41:00 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:41:43 -!- SimonRC has joined.
23:44:55 -!- kinoSi has quit (Read error: Connection reset by peer).
23:45:23 -!- kinoSi has joined.
00:04:43 -!- Sgeo has quit (Ping timeout: 260 seconds).
00:07:11 -!- Jafet has quit (Quit: Leaving.).
00:51:12 -!- Jafet has joined.
00:51:46 -!- augur has quit (Remote host closed the connection).
01:10:18 -!- Sgeo has joined.
01:46:43 -!- augur has joined.
02:29:50 -!- Jafet has quit (Quit: Leaving.).
02:38:14 -!- Nisstyre has quit (Ping timeout: 240 seconds).
02:44:46 -!- oerjan has quit (Quit: Good night).
02:53:54 -!- Nisstyre has joined.
03:00:06 -!- fungot has quit (*.net *.split).
03:00:06 -!- nvt has quit (*.net *.split).
03:00:06 -!- shachaf has quit (*.net *.split).
03:00:23 -!- elliott has quit (Read error: Connection reset by peer).
03:01:06 -!- MoALTz_ has joined.
03:03:54 -!- MoALTz has quit (Ping timeout: 240 seconds).
03:05:32 -!- nvt has joined.
03:05:32 -!- shachaf has joined.
03:15:03 -!- augur has quit (Remote host closed the connection).
03:37:37 <Sgeo> I may have just convinced my group to use node.js
03:37:58 <Sgeo> Everyone in the group knows Javascript, and it's sort of the home of socket.io
03:39:48 <kmc> you could do much worse than node.js
03:41:44 * kmc wrote his first non-trivial program for Node last night
03:42:06 <kmc> (but it's a command-line batch tool and not a network service or anything like that)
03:52:40 -!- Jafet has joined.
03:53:20 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:54:05 -!- mig22 has joined.
04:01:33 <shachaf> kmc: Twist: A lot of non-trivial JavaScript code runs fine with Node.
04:10:48 -!- augur has joined.
04:24:03 <kmc> what am i twisting?
04:27:44 <kmc> i don't get it
04:28:31 <shachaf> I guess it's possible that you never wrote non-trivial JS node before.
04:29:09 <shachaf> Or only code that depended on the DOM, or something.
04:30:08 <shachaf> But "non-trivial Node program that doesn't use network libraries" sounds a lot like "generic JS code".
04:31:52 <kmc> it used Node-specific filesystem libraries
04:32:33 <shachaf> Do they have non-blocking chdir?
04:32:44 <kmc> they have notblocking lots of stuff
04:32:47 <kmc> i don't know about chdir
04:32:55 <shachaf> Non-blocking DNS is actually an issue.
05:02:51 <Sgeo> I don't tend to write much JS
05:10:01 -!- FreeFull has quit.
05:25:40 -!- evincar has joined.
05:45:30 -!- kinoSi has quit (Read error: Connection reset by peer).
05:45:57 -!- kinoSi has joined.
06:32:53 -!- evincar has left.
06:52:17 <kallisti> has anyone had a Devonshire tea before?
06:59:29 <oklopol> i found a mistake in the proof
07:11:43 <oklopol> one of the comments said "spurrious"
07:12:54 <fizzie> Oh no, the foundations of mathematics are crumbling as we speak.
07:17:42 <fizzie> I'm pretty sure. It's all due to that "spurrious". Oh, if only...
07:55:48 -!- ais523 has joined.
07:58:51 -!- ais523 has quit (Client Quit).
07:58:58 -!- ais523 has joined.
08:04:43 <ion> This Machine Creates ANYTHING http://youtu.be/OHyygU1cU0k
08:06:44 -!- DHeadshot has joined.
08:22:11 -!- epicmonkey has joined.
08:24:30 -!- ais523 has quit (Read error: Connection reset by peer).
08:24:42 -!- ais523 has joined.
08:26:40 -!- copumpkin has quit (Ping timeout: 246 seconds).
08:27:14 -!- copumpkin has joined.
08:35:32 -!- ais523_ has joined.
08:37:13 -!- ais523 has quit (Ping timeout: 245 seconds).
08:37:54 -!- ais523_ has changed nick to ais523.
08:53:26 <ion> <…> User request of the month: "I accidentally posted /usr/share/dict/words to a bug report and now it shows up for every search because it contains all the words. Can you clean that up?"
09:01:11 <fizzie> How do you accidentally do that?
09:12:15 -!- ais523 has quit.
09:15:43 -!- copumpkin has quit (Ping timeout: 246 seconds).
09:16:17 -!- copumpkin has joined.
09:34:57 <ion> http://mashable.com/2012/10/02/ew-has-smartphone-inside/
09:45:32 -!- kinoSi has quit (Read error: Connection reset by peer).
09:46:00 -!- kinoSi has joined.
09:46:43 <Jafet> (What kind of information system still uses naïve keyword search?)
09:52:13 -!- monqy has quit (Quit: hello).
10:21:41 <ion> DEFCON 17: More Tricks For Defeating SSL http://youtu.be/ibF36Yyeehw
10:34:28 -!- carado has joined.
11:08:50 -!- barts has joined.
11:12:02 -!- barts_ has quit (Ping timeout: 256 seconds).
11:37:11 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
11:44:43 -!- Frooxius has joined.
11:58:41 -!- copumpkin has joined.
12:13:15 -!- Phantom_Hoover has joined.
12:38:43 -!- sivoais has quit (Ping timeout: 246 seconds).
12:44:12 -!- Arc_Koen has joined.
12:49:07 -!- sivoais has joined.
12:52:32 -!- Jafet has quit (Read error: Connection reset by peer).
12:52:40 -!- Jafet1 has joined.
12:54:54 -!- Jafet has joined.
12:55:00 -!- Jafet1 has quit (Read error: Connection reset by peer).
12:57:39 <Arc_Koen> @tell oerjan I see in the logs you've tried to message me but lambdabot doesn't seem to agree
13:03:11 <Arc_Koen> @tell oerjan anyway yeah, it was also about the brainfuck derivatives; I'd never have made brainfunct if I had found pbrain or others like that before
13:04:19 -!- boily has joined.
13:07:12 <fizzie> Huh. The soft drink vending machine made a very long "whirr-clunk-whirr-clunk-whirr-clunk-kaplonk" solo, and then dumped out two bottles for the price of one.
13:07:24 <fizzie> I suppose I should theoretically return the other.
13:14:49 <Arc_Koen> I don't think "handing out a bottle" is a reversible operation
13:17:56 <fizzie> Because it would be STEALING.
13:18:02 <boily> vending a bottle is like an md5 hash. here you had a collision.
13:18:05 <fizzie> I think it has a "in case of trouble, call" sticker on it somewhere.
13:18:30 <fizzie> I mean, I'd certainly be complaining loudly if I had gotten 0 bottles.
13:19:06 <fizzie> Also maybe the bookkeeping will now become all confused and it's ALL MY FAULT.
13:19:37 <fizzie> Well, up to a degree. Maybe not quite all. Unless I pressed the button wrong somehow.
13:24:35 <Arc_Koen> fizzie: how about you keep the extra bottle in your refrigerator
13:24:47 <Arc_Koen> and if one day you get no bottle, you can use it instead
13:26:43 <fizzie> It has a "best before" date, I'm sure.
13:27:59 <Arc_Koen> that shouldn't be a problem if you make a regular use of that vending machine: everytime you buy a bottle, place it in your refrigerator and drink the old bottle instead
13:28:32 <Arc_Koen> this way, instead of having one really-out-of-date bottle, you'll have a lot of nearly-out-of-date bottles!
13:28:46 <fizzie> Maybe I'll just drink it early and resolve not to complain if I ever get no bottles.
13:28:55 <fizzie> Asymptotically, it's the same thing anyway.
13:29:11 <Arc_Koen> yes but IT PERTURBS YOUR CONSOMMATION
13:29:41 <Arc_Koen> I do that with tickets when taking the tube, though
13:29:46 -!- carado_ has joined.
13:30:07 -!- carado_ has quit (Client Quit).
13:30:10 -!- carado has quit (Remote host closed the connection).
13:30:23 -!- carado has joined.
13:30:38 <Arc_Koen> a lot of people here take it without paying, because they find the penalty when caught is less that what they gain by not paying the fare
13:31:35 <Arc_Koen> I had always been honest with it; I always pay my tickets, and it's happened once or twice that the vending machine at my station was out of order, so I traveled without a ticket, and bought one once arrived at destination
13:32:04 <Arc_Koen> except one time the machine was out of order and I got caught (even though I would have paid afterwards :( )
13:32:26 <fizzie> I believe a lot of people do that here too. I mean, the "go without paying" thing.
13:32:35 <fizzie> They've been steadily increasing the penalty amount, though.
13:32:49 <fizzie> I think it's now at 80 EUR; it used to be 56 EUR or something not too long ago.
13:33:00 <Arc_Koen> so I made a count of the money I lost because of the penalty, and started not paying my tickets, deducing the money I gained everytime from the money I had lost
13:33:15 <Arc_Koen> and now I'm back to paying my tickets again
13:33:17 <fizzie> And it was 250 FIM before EUR, I think.
13:33:35 <Arc_Koen> well when I had to pay it it was 40 EUR here
13:34:14 <Arc_Koen> well that depends where you take it; tickets inside paris are about 1.70 (or they were last time I checked, but prices keep getting higher every year)
13:34:36 <Arc_Koen> but I live in the suburbs, so tickets that cover all zones from my town to paris are about 4.00
13:34:50 <Arc_Koen> (or 3.something when buying then 10 at a times)
13:35:51 <Arc_Koen> I was amazed when I went to london, they had this "oyster card"; you put money on it and everytime you took the tube it was deduced
13:35:59 <Arc_Koen> on our last day we wanted to take a bus
13:36:10 <Arc_Koen> the driver told me there was no money left on my oyster card
13:36:18 <Arc_Koen> in france that would probably have meant that I couldn't take it
13:36:28 <Arc_Koen> but in London he gave me an "unpaid fare notice"
13:36:58 <Arc_Koen> on which it was written that I had taken the bus for free but was expected to go to any station and pay for it
13:37:53 <Arc_Koen> I made a copy of it, and when I paid I gave the copy so I could keep the original because that's just so wonderful, that system would *never* work in france
13:38:13 <fizzie> We don't have anything like that.
13:38:23 <fizzie> Though you can buy tickets from buses and such with cash.
13:38:33 <fizzie> The prices are a bit more than when paying with the card, though.
13:39:21 <Arc_Koen> well yes that's always possible, but that was our last day and we had given all our leftover cash as tip in a coffee shop
13:39:37 <fizzie> Oh, the gaps seem to be larger than I remembered.
13:40:00 <fizzie> It's 4.50 eur vs. 3.47 for the Helsinki/Espoo/Vantaa regional ticket, or 2.70 vs. 1.86 for the single-city one.
13:40:21 <Arc_Koen> (a *great* coffee shop; I'll probably go there once again next time I visit london)
13:42:08 <fizzie> I seem to recall that the Belgian railways had some kind of a differentness when it comes to the no-ticket fees.
13:43:27 <fizzie> Oh, right; if you didn't inform the train staff that you don't have a ticket, but agree to pay it, you don't get a penalty notice, just a 12.50 EUR surcharge to the regular ticket price.
13:43:47 <Arc_Koen> ah, we have that in france too
13:44:14 <Arc_Koen> the guy who must check tickets walks through the whole train twice
13:44:23 <fizzie> But if you don't agree to pay (or can't pay, I suppose) there's a penalty notice plus a penalty fare of 30/60 EUR (under/over 18 years), and then you have 14 days to go pay it yourself at any station.
13:44:26 <Arc_Koen> the first time he does nothing, just showing himself
13:44:36 <fizzie> And then if you still don't go and pay it, "your file will be sent to Central Customer Services and incur administrative charges of € 200".
13:44:42 <Arc_Koen> and if you have a problem with your ticket (or if you don't have one) you're supposed to talk to him at that moment
13:45:33 <fizzie> According to these Belgian rules you need to tell the train staff before actually boarding.
13:45:56 <fizzie> "If you don’t have a valid ticket and you can't pay on the train or provide evidence of your identity or address, the NMBS/SNCB obviously won't be able to allow you to remain on board. The staff may therefore invite you to leave the train at the next stop, or even call in the police."
13:46:02 <fizzie> I like the "invite you to leave the train".
13:46:13 <fizzie> "Sorry, I have to decline your kind invitation."
13:46:22 <fizzie> "This is not where I'm going."
13:48:34 <fizzie> "After being sentenced and ordered into custody, De'Avalon ["a marriage celebrant, self-styled witch and alternative therapies practitioner"] appeared to be sticking by her pagan-immunity theory even in the face of this pretty solid evidence that human laws do in fact apply to her. 'I decline your offer, your Honour,' she said as she was being led away."
13:48:41 <fizzie> http://www.loweringthebar.net/2011/06/witch-who-said-our-laws-do-not-apply.html
13:54:19 -!- carado has quit (Ping timeout: 246 seconds).
13:57:20 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
13:59:21 -!- AnotherTest has joined.
14:00:30 <fizzie> Hello. We were just talking about Belgian railways.
14:20:50 -!- AnotherTest has quit (Read error: Connection reset by peer).
14:21:03 -!- AnotherTest has joined.
14:32:06 -!- AnotherTest has quit (Quit: Leaving.).
14:32:29 -!- AnotherTest has joined.
14:33:53 <Arc_Koen> @tell atriq I probably already asked you that, but how does Nandypants/Noryshorts handle end of file?
15:03:23 <Sgeo> I feel like when I use PubNub, I'm cheating
15:03:54 <Sgeo> Writing code that seems like it should require a server-side component, and ... well, using someone else's very general server, I guess.
15:08:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
15:23:58 -!- Phantom_Hoover has joined.
15:41:56 -!- Vorpal has joined.
15:44:06 <Arc_Koen> @tell Oerjan remember when you modified cat in http://esolangs.org/wiki/Minifuck-2D ? I think you removed a space between ! and @ that might have been important
16:26:14 -!- augur has quit (Remote host closed the connection).
16:27:55 -!- FreeFull has joined.
16:28:17 -!- atriq has joined.
16:31:19 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
16:32:24 <atriq> But yeah, Nandypants handles EOF in the same way as brainfuck, ie. implementation defined
16:32:48 <Arc_Koen> so there should be something said about it
16:33:08 <Arc_Koen> also I was in the middle of writing an interpreter and I had to stop because I didn't know what to do about end of file
16:33:50 <atriq> Either input -1 or 0 seems to be the convention
16:35:56 <Arc_Koen> I still think you should write a note about it
16:39:04 <Arc_Koen> oh, I was hoping you would say "it assumes eof is coded by..."
16:50:06 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
17:07:01 -!- augur has joined.
17:16:12 -!- augur has quit (Read error: Connection reset by peer).
17:16:34 -!- augur has joined.
17:24:43 <shachaf> kmc: They're playing _The Big Lebowski_ at the theatre tomorrow night. Should I go see it?
17:27:56 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
17:31:30 <kmc> have you seen it before?
17:32:01 <shachaf> I've seen parts of it, I think.
17:35:22 <kmc> you should go see it
17:35:32 <kmc> i've never seen it in an actual theatre
17:39:09 <shachaf> «Wear your best "Dude" bathrobe and receive $1 off popcorn!»
17:41:25 <atriq> Well, in about two years, I'll be able to read Homestuck offline!
17:45:42 <fizzie> Do you happen to know tools that'd google-translate .srt subtitles files? I remember writing a script for this once, but can't seem to find it; apparently it doesn't have "sub" in the name.
17:46:55 <fizzie> Well, that makes sense.
17:48:02 -!- variable has quit (Ping timeout: 252 seconds).
17:49:31 -!- atriq has quit (Ping timeout: 246 seconds).
17:59:46 <kmc> i think the google translate API was taken down :/
18:00:23 -!- Phantom_Hoover has joined.
18:01:24 <Sgeo> Is there a Babelfish API?
18:09:03 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
18:10:59 <fizzie> kmc: The script just produces a empty-line-separated-paragraph output to translate manually, then takes a similar input, and adds the original subtitle timing infos back in.
18:11:12 <fizzie> So I translated via the website.
18:11:35 <fizzie> Calling it a translation script is a bit exaggerationary, I suppose.
18:12:45 <kmc> well at that rate you could probably also use the same interface the web page uses, and fully automate it
18:12:51 <kmc> without needing an API per se
18:13:14 -!- Phantom_Hoover has joined.
18:13:39 -!- atriq has joined.
18:16:18 -!- augur has quit (Remote host closed the connection).
18:22:50 -!- Taneb has joined.
18:23:40 -!- atriq has quit (Ping timeout: 246 seconds).
18:28:43 -!- Taneb has quit (Remote host closed the connection).
18:37:44 -!- augur has joined.
18:47:47 -!- AnotherTest has quit (Quit: Leaving.).
18:50:23 -!- AnotherTest has joined.
18:51:51 -!- AnotherTest has quit (Client Quit).
18:53:28 -!- AnotherTest has joined.
18:54:57 -!- AnotherTest has quit (Client Quit).
18:55:06 -!- AnotherTest has joined.
18:58:12 -!- AnotherTest has left.
19:02:44 -!- oerjan has joined.
19:03:53 <lambdabot> Arc_Koen said 6h 6m 14s ago: I see in the logs you've tried to message me but lambdabot doesn't seem to agree
19:03:53 <lambdabot> Arc_Koen said 6h 42s ago: anyway yeah, it was also about the brainfuck derivatives; I'd never have made brainfunct if I had found pbrain or others like that before
19:03:53 <lambdabot> Arc_Koen said 3h 19m 47s ago: remember when you modified cat in http://esolangs.org/wiki/Minifuck-2D ? I think you removed a space between ! and @ that might have been important
19:05:13 <oerjan> @tell Arc_Koen Stupid me, I left the <>'s around your nick when pasting into @tell...
19:35:41 -!- zzo38 has joined.
19:41:29 <Sgeo> Is it a terribad idea to use Javascript's Math.random() to get a unique key?
19:42:04 -!- Nisstyre has quit (Ping timeout: 252 seconds).
19:42:24 <zzo38> It depends where the Javascript code is being executed, and what the key is being used for.
19:42:36 <zzo38> As well as the implementation of Javascript used.
19:45:23 <oerjan> and possibly the phase of the moon.
19:47:37 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
19:55:08 -!- augur has quit (Remote host closed the connection).
20:11:49 -!- copumpkin has joined.
20:12:53 -!- elliott has joined.
20:14:47 <olsner> I think one person uses arch
20:15:16 <elliott> nixos is perfect, unfortunately it is also shit
20:15:20 <elliott> i considered using it for a while
20:15:52 * oerjan notes that searching for /// on esolang takes you directly to the main page.
20:16:14 <olsner> oerjan: aren't you the wiki admin?
20:16:22 <elliott> oerjan is the reason it is broken
20:16:31 <elliott> it is **very** unprofessional
20:16:46 <oerjan> olsner: elliott seems to be thinking so. probably from going mad trying to fix the /// bug.
20:16:58 <shachaf> elliott: Help me simplify this GHC bug!
20:17:11 <shachaf> Try :t fmap fmap fmap join join join
20:17:12 <elliott> i can't decide how to get my 7.6
20:17:30 <elliott> /opt/ghc.old/bin/ghci: line 2: /opt/ghc/bin/ghc-7.6.1: No such file or directory
20:17:37 <oerjan> :t fmap fmap fmap join join join -- OKAY
20:17:38 <lambdabot> Occurs check: cannot construct the infinite type:
20:17:38 <lambdabot> Probable cause: `join' is applied to too many arguments
20:18:04 <shachaf> oerjan: Should I flood the channel a bit?
20:18:11 <oerjan> shachaf: are you telling me it works in 7.6?
20:18:18 <elliott> Prelude Control.Monad> :t fmap fmap fmap join join join
20:18:18 <elliott> Occurs check: cannot construct the infinite type:
20:18:18 <elliott> m1 = (->) (m1 (m1 (m0 (m0 a0))))
20:18:18 <elliott> Expected type: (m0 (m0 a0) -> m0 a0)
20:18:18 <elliott> -> ((m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:20 <elliott> -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:22 <elliott> -> (m1 (m1 (m0 (m0 a0))) -> m1 (m0 (m0 a0)))
20:18:28 <elliott> Actual type: (m0 (m0 a0) -> m0 a0)
20:18:30 <elliott> -> ((m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:32 <elliott> -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:34 <elliott> -> (m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:40 <elliott> The function `fmap' is applied to five arguments,
20:18:42 <elliott> but its type `(((m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:44 <elliott> -> m1 (m1 (m0 (m0 a0))) -> m0 a0)
20:18:46 <elliott> -> ((m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:48 <elliott> -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:50 <elliott> -> (m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:18:58 <elliott> -> (m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:19:06 <elliott> -> ((m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:19:08 <elliott> -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:19:10 <elliott> -> (m1 (m1 (m0 (m0 a0))) -> m1 (m1 (m0 (m0 a0))) -> m0 (m0 a0))
20:19:18 <elliott> In the expression: fmap fmap fmap join join join
20:19:20 <elliott> "The function `fmap' is applied to five arguments, but its type has only six" is pretty great
20:19:28 <olsner> the wiki could have a rewrite rule that makes esolangs.org/// into a /// interpreter
20:20:04 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
20:20:06 <ion> Mahna Mahna Killer http://youtu.be/ELAFDkXog-s
20:21:10 <oerjan> olsner: it _used_ to link to the language article.
20:21:21 <oerjan> :t :t fmap fmap fmap join join
20:21:28 <oerjan> :t fmap fmap fmap join join
20:21:29 <lambdabot> forall (m :: * -> *) a (m1 :: * -> *). (Functor m1, Monad m, Monad m1) => m1 (m1 (m (m a))) -> m1 (m a)
20:22:15 <olsner> by esolangs.org///, obviously I meant esolangs.org////
20:23:32 <oerjan> :t fmap (fmap join) join
20:23:33 <lambdabot> forall (m :: * -> *) a (f :: * -> *). (Monad m, Functor f, Monad f) => f (f (m (m a))) -> f (m a)
20:24:08 <oerjan> :t fmap join (join join)
20:24:09 <lambdabot> Occurs check: cannot construct the infinite type:
20:24:09 <lambdabot> Probable cause: `join' is applied to too few arguments
20:24:28 <lambdabot> Occurs check: cannot construct the infinite type:
20:24:29 <lambdabot> Probable cause: `join' is applied to too few arguments
20:24:50 <shachaf> The function `g' is applied to four arguments,
20:24:53 <shachaf> but its type `(a0 -> ((r0 -> r0 -> a0) -> a0) -> c0)
20:25:13 <oerjan> oh that's the ghc bug?
20:25:28 <shachaf> 13:19 <elliott> "The function `fmap' is applied to five arguments, but its type has only six" is pretty great
20:27:17 <oerjan> shachaf: it doesn't work if you manually simplify it to :t fmap (fmap join) join join, :t fmap join (join join), or :t join . join join ?
20:28:03 <oerjan> by work, i mean still gives that bug
20:28:13 <shachaf> Nope, none of those do it.
20:28:38 <shachaf> You get the bug with let j f x = f x x, fmap fmap fmap j j j
20:28:49 <shachaf> Also with fmap (.) (.) undefined j j
20:29:39 <oerjan> :t let j f x = f x x in fmap (.) (.) undefined j j
20:29:40 <lambdabot> Occurs check: cannot construct the infinite type: t = t -> t -> t1
20:29:40 <lambdabot> Expected type: (t -> t -> t1) -> (t -> t -> t1) -> a
20:29:40 <lambdabot> Inferred type: (t -> t -> t1) -> t -> t1
20:31:21 <elliott> oerjan: Should I use the [testing] repo to get a 7.6.1 package, or use my self-compiled binary?
20:32:09 <oerjan> (i know you didn't actually expect a serious answer)
20:32:43 <oerjan> why, you should use the haskell platform!
20:32:54 <oerjan> it's what i do. i should probably upgrade, though.
20:33:38 <elliott> More like the Haskell Catsdom.
20:33:45 <elliott> Because fascist cats rule the universe.
20:34:22 <oerjan> i thought dogbert had settled that they were fascist squirrels. although maybe catbert paid him to say it.
20:34:31 <elliott> oerjan: Do you want to see a bad reddit post?
20:34:34 <elliott> oerjan: Here you go! http://www.reddit.com/r/coding/comments/11052z/its_amazing_how_microsoft_can_just_shit_on/
20:34:55 <oerjan> based solely on the title part of the url, i guess "no".
20:35:14 <oerjan> as in, it's precisely the kind of title i tend to skip.
20:35:23 <elliott> Don't forget \t for tabs, and that F2 renames files. When I stumble upon these things, I put them on http://efficientgeeks.com/[1] , although I won't renew that domain.
20:37:03 <elliott> oerjan: Is the wiki fixed yet?
20:37:31 <oerjan> shachaf: and it disappears if you replace the first fmap with (.) i take
20:37:50 <shachaf> 13:22 <shachaf> Hah, this is funny.
20:37:50 <shachaf> 13:22 <shachaf> g :: Functor f => f ~ (->) r => f (b -> c) -> f ((a -> b) -> a -> c)
20:37:53 <shachaf> 13:22 <shachaf> g :: (r -> b -> c) -> (r -> (a -> b) -> a -> c)
20:37:55 <shachaf> 13:22 <shachaf> You'd expect those to be the same, wouldn't you?
20:37:58 <shachaf> 13:22 <shachaf> ghci gives the same :t for them.
20:38:01 <shachaf> It happens with the first g but not with the second g
20:38:06 <shachaf> for g (.) undefined join join
20:38:26 <elliott> shachaf: Remember that time we got GHC to type two identical things differently or something?
20:38:36 <shachaf> elliott: With the parentheses?
20:38:41 <elliott> Where you got an (a => b) in the wrong place.
20:38:47 <elliott> Like, you god a -> b => c or something.
20:40:08 <oerjan> shachaf: hm so it might be something which happens when f ~ (->) r appears as a constraint during type checking?
20:41:05 <shachaf> oerjan: Also happens with g :: f (b -> c) -> f ((a -> b) -> a -> c); g = undefined; blah = g (.) undefined j j
20:42:07 <oerjan> shachaf: well that would also cause f ~ (->) something to appear during type checking, wouldn't it?
20:42:32 <shachaf> I guess it tries to unify them.
20:42:39 <shachaf> I dunno, man! Simplify it for me!
20:42:48 <zzo38> I thought perhaps the monad type for FamicomHDL should be: type Mapper = ContT [Command] ((->) Int);
20:42:54 <zzo38> What would you think?
20:43:32 <oerjan> the g's given type takes 1 argument at least. but it's used with 4.
20:45:14 * oerjan is wildly guessing, of course, and has no intention of installing 7.6.
20:45:39 <olsner> 4 is not 1, so that's obviously the numbers you're looking for
20:46:17 <shachaf> olsner: Can you /nick to something that doesn't start with o?
20:46:36 <zzo38> data Command = Case Word8 (Word8 -> [Command]) | Command ByteString | Wire Pin Pin Connection | Part x => Part Int x;
20:47:06 <zzo38> I think you shouldn't change it
20:47:30 -!- boily has quit (Quit: Poulet!).
20:48:22 <oerjan> shachaf: it's not like i have a clue what to do next, anyway.
20:49:15 <shachaf> oerjan: You should change your nick.
20:49:34 <zzo38> No, I don't think you should change it either.
20:49:40 <oerjan> Ørjan Erroneous Nickname
20:51:46 <FireFly> Probably because of some møøse or something
20:52:59 -!- copumpkin has joined.
20:53:08 <olsner> beware the erroneous moose
20:53:50 -!- oerjan has set topic: BEWARE THE ERRØNEØUS MØØSE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
20:57:48 -!- augur has joined.
21:08:42 <shachaf> Did you know I got banned from that channel?
21:09:17 <oerjan> elliott: UNREVEALED NEMESISES (NEMESES?)
21:09:34 <FireFly> I did not. What was the reason?
21:10:55 <olsner> hmm, I guess you are rude
21:18:34 -!- atriq has joined.
21:19:31 <oerjan> he looks like a regular, but i think it may be atriq
21:20:05 <olsner> oh, was atriq the rot13 of taneb?
21:20:47 <atriq> That is the best nick by far.
21:21:00 <shachaf> atriq: Better than rot13 shachaf?
21:21:29 <oerjan> olsner är en sådan byfare
21:22:50 <olsner> I wonder if oerjan and shachaf swapped nicks earlier, because the one currently calling itself "oerjan" fits better with funpuns
21:25:15 <oerjan> so he's secretly welsh, ok
21:26:23 <olsner> ubbire is probably how you say umpire with a cold
21:27:20 <shachaf> elliott: There's a #haskell person with the nick avpx
21:28:10 <olsner> effilry is like rivalry but for effils
21:28:53 <elliott> i thought it sounded familiar
21:29:20 <olsner> shachaf: didn't you quit #haskell?
21:29:42 <olsner> !ebg13 should be the inverse of rot13
21:31:03 <Gregor> I'm surprised by how often the result is pronounceable.
21:31:22 <oerjan> if you say so, Mr. Tertbe
21:31:50 <Gregor> I think “Tertbe” is perfectly pronounceable.
21:32:03 <Gregor> So is Evpuneqf, though less so because the “q” is terribad.
21:32:08 <oerjan> ...was i appearing to disagree?
21:32:48 <Gregor> Wow. Really got a loser with that one X-D
21:33:03 <Gregor> That first name is actually pronounced “Snips” though.
21:33:05 <olsner> -kf works fine, I'm a bit sad that no language I know uses that combination though
21:33:15 <oerjan> !rot13 Mitt Romney Barack Obama
21:33:16 <EgoBot> Zvgg Ebzarl Onenpx Bonzn
21:33:28 <oerjan> no obvious loser, alas
21:33:55 <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie
21:33:56 <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr
21:34:10 <Gregor> Nccyrwnpx will definitely eat your soul.
21:34:12 <olsner> oh, they're all named after rot13'd welsh words
21:34:18 <Gregor> So will Gjvyvtug Fcnexyr.
21:35:05 <FireFly> Syhggreful is sorta pronounceable
21:35:07 <oerjan> `addquote <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:35:07 <shachaf> Puzzle: What word's meaning is preserved under rot13?
21:35:16 <elliott> oerjan: FOLLOW THE GUIDELINES
21:35:18 <HackEgo> 870) <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:35:36 <oerjan> elliott: none of the double spaces were mine
21:35:43 <elliott> shachaf: The word is "shachaf".
21:35:50 <elliott> oerjan: No, but you forgot the double spaces between each message
21:35:53 <shachaf> elliott: The word is "elliott".
21:36:21 <oerjan> elliott: wait those are double? i checked just the other day and ARGH
21:36:36 <HackEgo> 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order.
21:36:37 <elliott> Wait, that one will be too early.
21:36:42 <HackEgo> 100) <fax> okay I see it now, quines do exist
21:36:55 <HackEgo> 101) <Warrigal> Darn, now I can't acknowledge the reference you were making.
21:36:59 <Gregor> olsner: The guideline is that if you do it wrong, elliott will have a screed and fix it.
21:37:03 <HackEgo> 200) <elliott> oerjan: What, can girls aim their penises better?
21:37:10 <HackEgo> 300) <lament> elliott: well what i would do if i were omniscient and omnipotent would be to create an immortal woman with perfect tits and bang her for the rest of eternity
21:37:18 <HackEgo> 350) <ZOMGMODULES> Felix's home page and Falcon's home page are actually the same page
21:37:20 <Gregor> All the multiples of 100 are one-liners.
21:37:25 <HackEgo> 380) <oklofok> what would you ever need petrol for <oklofok> newsflash: it doesn't actually taste that good
21:37:39 <oerjan> elliott: i did `quote [ ]< to check and the first example that showed up had one space :(
21:37:51 <HackEgo> 1) <Aftran> I used computational linguistics to kill her. \ 2) <Slereah> EgoBot just opened a chat session with me to say "bork bork bork" \ 3) <Quas_NaArt> Hmmm... My fingers and tongue seem to be as quick as ever, but my lips have definitely weakened... <Quas_NaArt> More practice is in order. \ 4) <AnMaster> that's where I got it <AnMaster> rocket launch facility gift shop \ 5) <Warrigal> GKennethR: he should be told
21:38:03 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:05 <elliott> oerjan: The old quotes fail to follow the platonically perfect formatting standards.
21:38:06 <HackEgo> 369) <oklopol> but touchscreens should feel like poking a boob
21:38:20 <shachaf> There should be a command for that.
21:38:22 <oerjan> hm that's not useful...
21:38:33 <HackEgo> 393) <Sgeo_> "system is fairly sane <Sgeo_> <elliott> imagine if the roomba was called the Robotic Magic Vacuum <Sgeo_> <elliott> would you object to that being trademarked <Sgeo_> <monqy> I mean <Sgeo_> <monqy> phrase trade" <Sgeo_> oops
21:38:35 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:37 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:37 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:38 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:38 <shachaf> `run quote $((RANDOM % 870 + 1))
21:38:47 <HackEgo> 105) <DoctorDog> I am an inherently pornographic being.
21:38:52 <HackEgo> 671) * oerjan concludes that unsafeCoerce has no effect on strictness
21:39:15 <lambdabot> Plugin `quote' failed with: getRandItem: empty list
21:39:17 <lambdabot> DukeDave says: what, if your kids start doing drugs? or worse, business school
21:39:19 <lambdabot> Plugin `quote' failed with: getRandItem: empty list
21:39:20 <lambdabot> co_dh says: I don't like it, but I don't know why.
21:39:21 <lambdabot> PhilWadler says: The essence of XML is this: the problem it solves is not hard, and it does not solve the problem well. (POPL2003)
21:39:21 <lambdabot> cypherx says: Oh god, C++ is like a lamprey in my urethra.
21:39:23 <lambdabot> c_wraith says: I either just got the most awesome piece of spam ever, or am being secretly recruited into the stargate program
21:39:26 <lambdabot> PatrickRobotham says: GHC has more flags than the united nations.
21:39:28 <olsner> hmm, `quote on its own outputs a random quote, doesn't it?
21:39:28 <lambdabot> dave_m says: < Bobstopper> Assuming the universe will eventually die of heat death, counting will cease when that happens. So if you start counting now, you'll probably find the largest number (so
21:39:29 <lambdabot> long as nobody else has found a larger one yet) < Cale> what about faster ways to produce larger numbers? < Bobstopper> not after the heat death you can't :P < dave_m> don't you tell me what I can't
21:39:29 <lambdabot> do after the heat death of the universe
21:39:31 <lambdabot> ryan[WIN] says: forth is like if assembly had sex with math
21:39:32 <HackEgo> 396) <olsner> as always in sweden everything goes to a fixed pattern: thursday is queueing at systembolaget to get beer and schnaps, friday is pickled herring, schnaps and dancing the frog dance around the phallos, saturday is dedicated to being hung over
21:39:32 <HackEgo> 868) <fizzie> Backups are so like one of those circus guys walking on a wire except with a safety rope.
21:39:32 <HackEgo> 564) <elliott> When the moon hits your eye like a big pizza pie, that's a monad.
21:39:33 <HackEgo> 834) <elliott> I couldn't survive an apocalypse. I don't even have any bitcoins.
21:39:33 <lambdabot> monochrom says: no, you're thinking imperatively. when thinking functionally, you just worry one element, and let recursion worry the rest
21:39:36 <lambdabot> PreauxPhoto says: catpants: you are lucky i like you, today at lunch i was going to come up behind you kiss you on the neck, pinch you nipple and say "cant wait till out date tonight" but i figured
21:39:36 <lambdabot> that one of those guys was your boss
21:40:30 <elliott> <HackEgo> 564) <elliott> When the moon hits your eye like a big pizza pie, that's a monad.
21:40:34 <elliott> IMO someone should @remember this so it gets in HWN.
21:41:19 <fizzie> `run echo quote $(($$ % 870 + 1)) # the qupidote
21:41:23 <olsner> shachaf: better than stereo quotes
21:41:36 <fizzie> Whoop, forgot the echo.
21:41:44 <lambdabot> baristaTam says: Well, I suppose I shouldn't surround myself in a place full of hate. I think bringing kindness into the world is a value, and this channel seems to spew the opposite.
21:41:46 <fizzie> `run quote $(($$ % 870 + 1)) # the qupidote, rehashed
21:41:50 <HackEgo> 277) <fungot> Phantom_Hoover: if the list is in random order, like poor ehird here
21:42:09 <elliott> olsner: have you considered writing a book about sweden
21:42:12 <elliott> <HackEgo> 396) <olsner> as always in sweden everything goes to a fixed pattern: thursday is queueing at systembolaget to get beer and schnaps, friday is pickled herring, schnaps and dancing the frog dance around the phallos, saturday is dedicated to being hung over
21:42:14 <elliott> this would be a good opening
21:42:23 <fizzie> shachaf: Especially on that system.
21:42:24 <olsner> dunno what to grep for, iirc many of the stereo quotes got purged anyway due to not being very good
21:42:34 <HackEgo> 869) <elliott> `delquote 869
21:42:44 <HackEgo> 870) <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:43:12 <olsner> elliott: I have considered writing a book, but not about sweden
21:43:13 <HackEgo> *poof* <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:43:23 <fizzie> What are the odds! Three times 276.
21:43:24 <elliott> olsner: What would it be about?
21:43:26 <oerjan> `addquote <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:43:40 <Gregor> shachaf: Still 100% (are the odds)
21:43:47 <HackEgo> 870) <Gregor> !rot13 Fluttershy Rainbow Dash Rarity Applejack Twilight Sparkle Pinkie Pie <EgoBot> Syhggreful Envaobj Qnfu Enevgl Nccyrwnpx Gjvyvtug Fcnexyr Cvaxvr Cvr <olsner> oh, they're all named after rot13'd welsh words
21:43:59 <shachaf> Gregor: 100 is one of the evens.
21:44:25 <HackEgo> 96) <AnMaster> fungot!*@* added to ignore list. <fungot> AnMaster: i'd find that a bit annoying to wait for an ack. \ 261) <fizzie> Phantom_Hoover: I have just one tvtropes page open in elinks, but my tvtropes.txt "queue" has 38 tvtropes.org URLs waiting for processing. \ 294) <Gregor> Ohheywait, I can make it a raytracer instead of a photon tracer so long as I run time backwards. \ 304) <Vorpal> elliott, it was an
21:46:06 -!- fungot has joined.
21:46:17 -!- kinoSi has quit (Read error: Connection reset by peer).
21:46:23 <olsner> fungot: mix up this botspam with other botspam please
21:46:23 <fungot> olsner: well indv change was easy for you
21:46:27 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
21:46:30 <elliott> fizzie: Why do things other than fungot exist?
21:46:31 <fungot> elliott: seabot's karma lowered to -1.
21:46:45 -!- kinoSi has joined.
21:46:50 <fungot> olsner: it's just one of those
21:47:07 <elliott> oerjan: Did you fix quote and delquote?
21:47:18 <oerjan> `run sed -i '867s/ <o/ <o/' quotes
21:47:18 <fizzie> fungot: Are you feeling well. You're making too much sense.
21:47:19 <fungot> fizzie: i'll just check the last step
21:47:25 <oerjan> elliott: fizzie did...
21:47:28 <fungot> shachaf: it's rather like the way uu did time. had a menu open and a file name. ( define my-ip ( lambda ( a b ( integer 0 fnord)
21:47:33 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
21:47:48 <oerjan> `run sed -i '867s/ <o/ <o/g' quotes
21:47:57 <HackEgo> 867) <oklopol> t <oklopol> y <oklopol> also i didn't say t\ny on purpose, i just accidentally hit the keyboard with my head
21:48:07 <shachaf> fizzie: You should make fungot join #cslounge!
21:48:07 <fungot> shachaf: thanks for the explanations, by the way, when running an infinite loop", and it has its own toplevel, doesn't it?)
21:48:40 <shachaf> A channel that had a bot which is presently offline.
21:48:59 <FireFly> fungot: who is your owner?
21:49:00 <fungot> FireFly: ( the *parser optimizer has a bug? for shame :( :())
21:49:06 <fizzie> It sounds something like a very serious place.
21:49:14 <elliott> fizzie: Do you remember Way Back, with fungot, and Minecraft?
21:49:16 <fungot> elliott: anyhow, i think there'll be some tag somewhere a long the line is ' back off, man: i'm a scientist.
21:49:27 <fizzie> fungot: TAKE ME TO YOUR LEADER HUMON
21:49:28 <fungot> fizzie: not questioning that. gambit-c is looking especially attractive now that 4.0 is basically here
21:49:29 <shachaf> fizzie: That's why I want theb ot in there.
21:49:53 <shachaf> fizzie: Can you add a feature to fungot where you can specify the first word of the sentence?
21:49:54 <fungot> shachaf: clearly a program without interpretation.
21:50:03 <fungot> shachaf: well, you could expedite the development of t until orbit, and racked in the dough. c and pythong have a clear cmd on your computer
21:51:09 <elliott> fizzie: I thoroughly oppose such a feature.
21:51:12 <fungot> elliott: help me correct some steps? my stack code used 2n cause it had to, and i don't
21:51:24 <shachaf> fizzie: You should add the feature!
21:51:31 <oerjan> elliott: fungot disagrees!
21:51:33 <shachaf> It makes bots over 14 times better.
21:51:43 <fungot> elliott: since most of us have day jobs...
21:51:47 <olsner> fungot: do you want to be 14 times better?
21:51:48 <fungot> olsner: and you probably understand it better. if it's short you can just lex level? is low high enough? o.o :d
21:51:48 <fizzie> shachaf: It's kind of been on the (tail end of the) potentially-todo list. It's just that currently it has no real way to turn words back to tokens, just the other way around. The Perl script version can specify the initial context already.
21:51:52 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32533
21:52:23 <olsner> write a perl to befunge compiler first then?
21:52:30 <elliott> fizzie: Have you even touched fungot in years?
21:52:31 <fungot> elliott: are you changing any of the others like event-monitor, though.
21:52:44 <elliott> 2008-08-14.txt:10:36:35: <fungot> PISS OUT MY ASS
21:52:45 <fungot> elliott: that file is malloc used
21:53:04 <fizzie> (The babbling internally works in terms of 28-bit integers, and only just before output that list of integers is turned to a string of words.)
21:53:14 <elliott> 2008-08-14.txt:15:09:48: <fizzie> optbot; What do you think of fungot?
21:53:15 <fungot> elliott: i could implement io monads and make it available via http? i hope not
21:53:18 <elliott> fizzie: Did you really use "nick;"?
21:53:21 <fizzie> Or maybe 21-bit integers, I forget exactly.
21:53:22 <elliott> ALSO REMEMBER OPTBOT? I loved optbot.
21:53:26 <elliott> #esoteric used to be great.
21:53:39 <shachaf> elliott: You know when it stopped being great, right?
21:53:57 <fizzie> elliott: I think I might have used it. And I also fixed that one bf interp bug, but I suppose that was at least a year ago.
21:54:26 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.20890
21:54:28 <fungot> ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot|lambdabot|oonbotti|cuttlefish)!
21:54:29 <fizzie> ^ remembers optbot too.
21:54:42 -!- oerjan has quit (Quit: Trackpad wacky).
21:54:51 <elliott> fizzie: IMO you should remove that in remembrance.
21:55:13 <olsner> <optbot> "bonobos are fucking ehird`"
21:55:14 <HackEgo> #!/bin/sh \ cd /var/irclogs/_esoteric \ \ pasterandom() { \ if [ "$1" -gt 150 ]; then \ echo "No." \ exit \ fi \ for i in $(seq "$1"); do \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ done | paste \ } \ \ if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ pasterandom "$1" \ else \ lines=$(grep -P -i -- "$1"
21:55:24 <elliott> Hm, I don't remember getting fungot to spam #ubuntu.
21:55:25 <fungot> elliott: can you put that in /usr/ share/ dict/ words, and it's not not a that have no side effects /me grins grits fnord waits wants wanes waves raves raven)
21:55:58 -!- oerjan has joined.
21:56:23 <HackEgo> OERJAN: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
21:56:28 <olsner> grins grits fnord waits wants wanes waves raves raven
21:56:42 <oerjan> MY TRACKPAD SEEMS TO WORK AGAIN
21:56:55 <elliott> oerjan: Remember how optbot stood for Oerjan's Terrible Puns Bot?
21:57:01 <elliott> But then it became optbot.
21:57:02 <oerjan> i assume it was a cosmic ray
21:57:13 <elliott> oerjan: The Golden Age of #esoteric, right?
21:57:18 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: Welcome: not found
21:57:31 <elliott> Phantom_Hoover: That was literally years later when a bunch of stupid people started being in the channel.
21:57:52 <elliott> oerjan: Kids don't appreciate history nowadays, right?
21:58:18 <elliott> oerjan: See? A kid wouldn't know who Socrates is!
21:58:26 <oerjan> (slightly translated from the greek)
21:58:44 <FreeFull> Why did you comment Socrates out
21:59:08 <olsner> Why did you decrement Socrates?
21:59:12 <oerjan> -- Freefull is so stupid he cannot read this
21:59:19 <elliott> 16:00:50: <fizzie> It refers to a PENIS, I think. Usually things on IRC do.
22:00:07 <elliott> That needs to be much higher.
22:00:57 <olsner> wow! I have karma, now I can do at least 14 evils before I turn officially evil
22:01:55 <elliott> "have", lambdabot. "have".
22:02:41 <elliott> oerjan: Wake up monqy, would you?
22:03:44 -!- zzo38 has left.
22:03:45 <olsner> maybe we could raise karma in private messages instead of in the channel?
22:04:02 <shachaf> elliott: What happens in #esoteric ought to stay in #esoteric
22:04:09 <elliott> You're officially unlucky now, olsner.
22:04:21 <elliott> shachaf: I was adjusting lambdabot's karma to be correct.
22:04:31 <elliott> shachaf: Also I once spammed lambdabot in /msg to take down lambdabot's karma from 40-50 or so to 0.
22:04:34 <elliott> So this is just giving back, see?
22:04:42 * lambdabot hits elliott with an assortment of kitchen utensils
22:04:42 <elliott> But I remember having a good reason.
22:05:51 <elliott> shachaf: If you don't take me off lambdabot ignore I'll... I'll reduce your karma!!!!!
22:06:30 <elliott> oerjan: Remember when HackEgo had a karma system?
22:06:49 <HackEgo> #!/bin/sh \ echo "$1 has $(lib/karma "$1") karma."
22:07:05 <olsner> oh, I expected it to just print "$1 has 0 karma"
22:07:11 <elliott> olsner: That's a good idea. It should.
22:07:16 <FreeFull> > a <- putStrLn "I am dissapoint"
22:07:17 <lambdabot> not an expression: `a <- putStrLn "I am dissapoint"'
22:07:25 <elliott> shachaf: It's like you don't even care about your karma.
22:07:30 <shachaf> elliott: Don't @admin - me :-(
22:07:46 <olsner> !rot13 I am disappoint
22:08:46 <elliott> FreeFull: What are you full of?
22:08:52 * oerjan swats FreeFull for speling -----###
22:09:09 <elliott> FreeFull: Are you American?
22:09:54 <oerjan> it's free for a small fee
22:10:43 <elliott> Jupiter isn't in Europe, FreeFull.
22:10:57 <oerjan> sausage lovers are the wurst
22:11:13 <FreeFull> Europa is around Jupiter though!
22:12:04 <Sgeo> https://gist.github.com/3036120
22:12:58 <elliott> shachaf: Well, uh, Europe is the national anthem of Kosovo.
22:13:39 <shachaf> kmc: Can you believe Raymond Smullyan was giving a talk in NYC today?
22:18:20 <oerjan> !rot13 Raymond Smullyan
22:27:21 <Sgeo> I'm starting to really appreciate the Reader monad, now that I see two different Clojure libraries do different things to essentially support it.
22:27:44 <elliott> implicit configurations thru reflection 4 lyfe
22:28:13 -!- hagb4rd has joined.
22:29:35 -!- monqy has joined.
22:29:39 <elliott> mmmm i forgot how great reflection's api is
22:30:47 <elliott> monqy: you still use arch right
22:30:57 <lambdabot> monqy: You have 12 new messages. '/msg lambdabot @messages' to read them.
22:31:08 <Lumpio-> Who doesn't run Arch these days!
22:31:13 <Lumpio-> Unless you want a stable system or something
22:31:32 <elliott> monqy: but it was actually a legit question
22:31:35 <elliott> monqy: do you use [testing]
22:31:46 <Sgeo> elliott, the usage of Reader monad I'm talking about isn't for configuration, it's more for building up a computation that will receive an argument in the future.
22:32:08 <elliott> reflection is still the coolest tho
22:32:16 <elliott> also you can still sort of do that with reflection but whatever
22:33:30 <elliott> monqy: remember reflection
22:34:13 <atriq> That was the thingy you did with edwardk, right?
22:34:21 <atriq> That was crazy and shouldn't work but did?
22:34:23 <monqy> reflection is a big word
22:34:34 <elliott> class Reifies s a | s -> a where reflect :: proxy s -> a
22:34:35 <elliott> reify :: a -> (forall s. Reifies s a => Proxy s -> r) -> r
22:34:38 <Phantom_Hoover> is this the kind of reflection they used for the 4-colour theorem
22:34:41 <monqy> someone's like operating the heavy lawnmowing machinery so im bad at remembering
22:35:08 <elliott> implicit configurations, oleg, that reflection
22:35:15 <monqy> yeah i vaugely remember it
22:35:25 <elliott> i have nothing to say about it, it is just cool
22:35:42 <elliott> if i made a language it'd support reflection without the zany implementation hacks!!
22:36:16 <elliott> monqy: (/etc/pacman.conf will have an uncommented [testing] block if you use it)
22:36:51 <Phantom_Hoover> elliott, is it the kind of reflection they used for the 4-colour theorem in coq
22:37:00 <elliott> monqy: but it's an all-or-nothing thing you have to take all the possible unstability with it!!!
22:37:04 <atriq> What's it used for?
22:37:07 <elliott> monqy: so im trying to decide between
22:37:14 <Sgeo> My brain needs a break from thinking
22:37:15 <elliott> using my /opt/ghc with the binary package of 7.6.1
22:37:17 <elliott> or just enabling [testing]
22:37:25 <monqy> elliott: im bad at decisions yw
22:37:29 <elliott> Phantom_Hoover: i doubt it is that kind of reflection
22:37:45 <elliott> monqy: i was hoping you'd go "oh yeah i totally use reflection"
22:37:56 <elliott> monqy: i was hoping you'd go "oh yeah i totally use testing"
22:38:01 <elliott> monqy: "life on the edge with monqy"
22:39:19 <atriq> elliott, I'm reading the pdf associated with reflection
22:39:26 <atriq> And it sounds vaguely familiar
22:39:30 <atriq> As though I've read it before
22:39:41 <elliott> atriq: the pdf's implementation is quite bad btw
22:39:46 <elliott> reflection has a simpler but less portable one
22:39:50 <elliott> and a simplified version of the paper's
22:39:55 <atriq> I'm trying to work out what it's meant to be implementing
22:39:57 <elliott> (though it depends on 8-byte pointers)
22:43:06 <atriq> It doesn't like :T
22:43:14 <atriq> By which I mean ":t"
22:43:46 <atriq> Prelude Data.Reflection> :t reify 12 (\p -> reflect p + reflect p)
22:43:46 <atriq> <interactive>:1:7:
22:43:46 <atriq> No instance for (Num a)
22:43:46 <atriq> arising from the literal `12'
22:43:46 <atriq> In the first argument of `reify', namely `12'
22:43:46 <atriq> In the expression: reify 12 (\ p -> reflect p + reflect p)
22:43:48 <atriq> Prelude Data.Reflection> reify 12 (\p -> reflect p + reflect p)
22:44:04 -!- zzo38 has joined.
22:44:20 <atriq> Oh, I think it's the monomorphism restriction or something attacking me again
22:44:46 <elliott> atriq: Try reify (12 :: Integer) (\p -> reflect p + reflect p).
22:45:02 <elliott> It's actually defaulting and fundeps and stuff.
22:45:21 <zzo38> NES/Famicom PPU has a restriction although tiles are 8x8 pixels, attributes are 16x16 pixels (2x2 tiles) so I thought of idea, making up a puzzle game based on this, if you push objects together in a 2x2 area with colors from different palettes, the objects will not move.....
22:46:22 <zzo38> Do you like that idea?
22:46:37 <atriq> It sounds interesting
22:49:27 <elliott> atriq: I think :t reify (12 :: Integer) should also work.
22:51:10 <zzo38> I thought of putting a border around each 2x2 area,but then you would also need four tiles in the pattern table for each possible piece in the game, unless something can be done with sprite 0 hit to switch pattern tables so you only need two tiles in each pattern table for each possible piece, but I don't know if you can modify the sprites during rendering
22:51:46 <atriq> I've never tried to make NES games, so I wouldn't know
22:51:47 <zzo38> Another idea would be to use the sprite overflow flag somehow
22:51:50 -!- atriq has quit (Quit: Leaving).
23:03:53 -!- Vorpal has quit (Ping timeout: 245 seconds).
23:13:57 <elliott> monqy: i'm scared of [testing]
23:14:07 <elliott> monqy: but i really want to recompile my xmonad :(
23:14:15 <elliott> monqy: right now im just relying on the one i compiled with old ghc..........
23:14:18 <elliott> i don't even have an xmonad(1)
23:14:33 <elliott> i just modified my xinitrc to run ~/.xmonad/xmonad-x86_64-linux
23:16:59 <elliott> if i press mod-q i get an error message saying it can't find xmonad in $PATH
23:19:29 <FreeFull> Why don't you symlink that to somewhere that is in $PATH
23:19:56 <elliott> it needs ghc for mod+q to work
23:37:08 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
23:39:23 <elliott> oerjan: Realtime Solitaire
23:40:30 <elliott> oerjan: Realtime Solitaire 2.0
23:40:43 <elliott> oerjan: Realtime Solitaire 3.0
23:40:57 <elliott> Sense the patterns to unlock New Real Realtime Solitaire 4.0
23:58:56 <kmc> area man constantly telling everyone he doesn't have an xmonad(1)
00:02:34 <kmc> is that an advice animal or something
00:02:59 <kmc> the dangerous new trend putting teens at risk
00:08:16 -!- FreeFull has quit (Ping timeout: 252 seconds).
00:15:51 <oerjan> elliott: i like solitaire kind of games precisely because they're _not_ realtime, thankyouverymuch
00:17:24 <fizzie> oerjan: There's sometimes a clock.
00:18:00 <elliott> oerjan: Faketime Solitaire
00:18:54 <elliott> oerjan: THE AXIOMS OF SOLITAIRE: 1. Solitaire
00:19:12 <elliott> 5. French-German Solitaire Spanish English Happening Manual
00:20:28 <elliott> Well you know oerjan Finnish Solitaire is banned for a reason
00:20:56 <fizzie> Facetime Solitaire. (Also called 'a mirror'.)
00:20:57 <oerjan> they're too solitary already
00:21:45 <elliott> FINNISH SOLITAIRE aka "The Hidden Death".
00:21:54 <elliott> Finnish Solitaire has killed millions since its founding in 1964.
00:39:21 -!- augur has quit (Ping timeout: 256 seconds).
00:40:24 -!- augur has joined.
00:41:36 -!- Nisstyre-laptop has joined.
00:44:40 -!- Phantom_Hoover has joined.
00:57:45 -!- mds2 has joined.
01:01:35 -!- mds2 has left ("ERC Version 5.3 (IRC client for Emacs)").
01:06:31 -!- copumpkin has quit (Ping timeout: 244 seconds).
01:07:07 -!- pumpkin has joined.
01:25:33 -!- Sgeo has quit (Ping timeout: 245 seconds).
01:28:29 -!- Sgeo has joined.
01:29:43 -!- Frooxius has quit (Ping timeout: 245 seconds).
01:41:51 <Sgeo> A lot of the OEM crapware on this computer broke
01:42:06 <Sgeo> But there's one that... well, I think the important part is actually in hardware, so it doesn't really matter
01:46:00 -!- variable has joined.
01:46:15 -!- invariable has joined.
01:46:22 -!- variable has quit (Remote host closed the connection).
01:46:38 -!- invariable has changed nick to Guest37703.
01:53:30 <zzo38> ARMv2 seems OK, not as complicated as newer versions, and there does exist the open-source Amber core which is ARMv2. How fast could it run? Does anyone sell ARMv2 at fast speeds?
01:55:52 <zzo38> Has Amber been tested for compatibility with a real ARMv2?
01:56:07 -!- aloril_ has quit (Ping timeout: 244 seconds).
01:58:54 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:06:06 <Sgeo> Minesweeper contests don't accept the official version of Minesweeper
02:06:28 <zzo38> Is there something wrong with the official version?
02:07:11 <Sgeo> http://www.minesweeper.info/wiki/Board_Cycles
02:08:40 -!- aloril_ has joined.
02:08:45 <Sgeo> Winmine (the name of the official version) uses a smaller than theoretically possible number of boards, iiuc
02:09:40 <zzo38> OK now I can see what is wrong, and why the official version should be unacceptable.
02:10:20 <elliott> http://www.minesweeper.info/wiki/Winmine_Congress
02:10:41 <elliott> The Winmine Congress was established in response to controversy over the Dreamboard and Board Cycles. Seven members were elected to resolve these problems. Founded 31 Oct 2002, it dissolved 8 Mar 2004. It has since been superceded by the International Minesweeper Committee.
02:14:53 <olsner> 6 years of research to figure out how minesweeper generates boards?
02:58:43 -!- oerjan has quit (Quit: Good night).
03:02:18 <zzo38> One thing I do know about the Windows Minesweeper (because I have tried it and figured it out) is, if the square you click first has a bomb, the bomb will be moved elsewhere.
03:03:57 <shachaf> Maybe you were just extremely lucky.
03:06:05 -!- Guest37703 has quit (Changing host).
03:06:06 -!- Guest37703 has joined.
03:06:10 -!- Guest37703 has changed nick to const.
03:09:29 -!- const has left.
03:21:54 -!- hagb4rd has quit (Ping timeout: 246 seconds).
03:32:27 <zzo38> shachaf: I tried it many times, and I used the cheat code, which sets the top-left pixel of the screen black if there is a bomb there, so I figured out
03:33:16 <Jafet> That's been documented
03:39:41 -!- Nisstyre-laptop has quit (Quit: Leaving).
03:42:41 -!- Nisstyre-laptop has joined.
03:44:59 -!- Nisstyre-laptop has quit (Remote host closed the connection).
04:23:40 -!- Nisstyre-laptop has joined.
04:34:06 -!- TodPunk has quit (Read error: Connection reset by peer).
04:34:18 -!- TodPunk has joined.
04:38:21 -!- elliott has quit (Remote host closed the connection).
05:13:01 -!- rodgort` has quit (Ping timeout: 246 seconds).
05:15:49 -!- rodgort has joined.
05:23:05 -!- Nisstyre-laptop has quit (Remote host closed the connection).
05:25:13 -!- Nisstyre-laptop has joined.
05:36:55 <kmc> xsetroot -solid pink -cursor_name gumby
05:39:56 <zzo38> I think the DotFami mapper codes actually form a idempotent commutative monoid, rather than just being a monoid.
06:04:07 <zzo38> Does the order of the commands matter in a hardware description language such as Verilog or VHDL? Does it matter if you repeat a command?
06:37:55 -!- ogrom has joined.
06:45:13 <zzo38> I sent some file to Famicompo Mini vol.9 see if it work
06:54:15 <oklopol> the minesweeper wiki is somewhat incredible given what a silly game it is. it's the best game ofc but pretty damn silly nevertheless.
06:54:59 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
07:17:09 -!- Vorpal has joined.
07:21:38 <zzo38> Do you know of any NES/Famicom emulator which includes net play but also has a mode to display only odd frames on one computer and only even frames on other?
07:26:23 <Jafet> It's NP complete. oklopol! It's almost as interesting as sudoku!
07:31:46 <zzo38> If you add a successor operator to Hofstadter's BlooP and/or FlooP programming languages, you can do without IF, QUIT BLOCK, addition/multiplication operators, and comparison operators.
07:49:55 <oklopol> In 2001, the Italian "International Campaign to Ban Winmine" voiced strong concern over the game, contending that it is an "offense against the victims of the mines" and those who risk their lives to clear them.
07:51:11 <oklopol> i love how some people are like so stupid that you wish they were less stupid because their stupidity is so overwhelming that it's be equally funny to watch if it was reduced but they wouldn't be as stupid.
07:52:20 <oklopol> on the other hand i suppose that may have just been a well-executed joke
07:53:59 <oklopol> Jafet: sudoku, like minesweeper, is fun only if your speed-solving simple games. the difference is minesweeper games are always easy but there are a lot of clicks to be made. a simple sudoku takes like 5 seconds so bleh.
07:54:38 <oklopol> hard sudoku puzzles are just annoying, there's too much data so a simpleton like me cannot really extract a meaningful mathematical problem, or at least expect it to have an interesting solution.
07:55:24 <oklopol> i have yet to see a meaningful minesweeper puzzle that isn't just an obvious encoding of another type of problem, and no problems arise naturally in random minefields.
07:57:13 <oklopol> you very quickly learn to check in about 10 seconds whether there are solvable cells on the "advanced" board, and this can easily be kept in memory so actually you never have to stop to think.
07:57:42 <oklopol> (i mean kept in memory and updated as you go)
08:00:30 <oklopol> "<zzo38> Do you know of any NES/Famicom emulator which includes net play but also has a mode to display only odd frames on one computer and only even frames on other?" ...what
08:01:50 <zzo38> oklopol: What about what?
08:02:33 <oklopol> why would there be such a mode
08:03:25 <zzo38> I think it might be useful for some things
08:05:25 <oklopol> I think it might be not useful for some things but it might be useful for some other things.
08:07:29 <oklopol> can you tell me some things for which it would be useful to have a NES/Famicom emulator which includes net play but also has a mode to display only odd frams on one computer and only even frames on other?
08:11:21 -!- monqy has quit (Quit: hello).
08:11:49 <zzo38> Such as multiplayers games with separate screens. It could be done on a TV screen as well; it does not have to be only on the emulator.
08:13:11 <zzo38> The similar thing can also be used for stereovision.
08:47:37 -!- zzo38 has quit (Remote host closed the connection).
09:02:19 -!- FreeFull has joined.
09:40:31 -!- hagb4rd has joined.
10:11:06 -!- Phantom_Hoover has joined.
10:40:26 -!- carado has joined.
10:43:03 -!- DHeadshot has quit (Ping timeout: 245 seconds).
11:08:52 -!- barts_ has joined.
11:11:54 -!- barts has quit (Ping timeout: 240 seconds).
11:21:03 -!- ogrom has quit (Quit: Left).
11:43:32 -!- carado has quit (Quit: Leaving).
11:53:05 -!- Arc_Koen has joined.
11:53:46 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
11:53:50 <lambdabot> oerjan said 16h 48m 36s ago: Stupid me, I left the <>'s around your nick when pasting into @tell...
11:55:06 -!- carado has joined.
12:40:06 -!- ogrom has joined.
12:49:23 -!- atriq has joined.
12:50:44 -!- pumpkin has changed nick to copumpkin.
13:01:17 -!- carado has quit (Quit: Leaving).
13:12:51 -!- ogrom has quit (Quit: Left).
13:14:44 -!- atriq has quit (Ping timeout: 246 seconds).
13:18:18 -!- aloril_ has quit (Ping timeout: 276 seconds).
13:19:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
13:30:52 -!- aloril_ has joined.
13:43:59 -!- Phantom_Hoover has joined.
13:47:22 -!- kinoSi has quit (Read error: Connection reset by peer).
13:47:49 -!- kinoSi has joined.
14:02:50 -!- sivoais has quit (Read error: Connection reset by peer).
14:03:33 -!- sivoais has joined.
14:09:05 <Phantom_Hoover> "After these deadly results, British intelligence leaked falsified information implying that the rockets were over-shooting their London target by 10 to 20 miles. This tactic worked and for the remainder of the war most landed in Kent due to erroneous recalibration.[37]
14:11:16 <olsner> I like that story :) they trusted the double agents more than their (correct) radio location thingy
14:11:38 <Phantom_Hoover> also apparently the v-2 programme cost more than the manhattan project
14:12:07 <olsner> rockets = hard, throwing plutinium together = easy
14:13:29 <olsner> I think they're all based on some kind of throwing together of stuff, doesn't have to be gun-type
14:15:44 <olsner> I saw a ted talk about the norden bombsight a while ago, iirc it cost about half of the manhattan project
14:30:59 -!- oerjan has joined.
14:32:13 <Arc_Koen> atriq: why are you happy when you have no messages?
14:34:33 <oerjan> @tell <zzo38> I think the DotFami mapper codes actually form a idempotent commutative monoid, rather than just being a monoid. <-- i think an idempotent commutative monoid may the same as a semilattice
14:34:50 <oerjan> @tell zzo38 <zzo38> I think the DotFami mapper codes actually form a idempotent commutative monoid, rather than just being a monoid. <-- i think an idempotent commutative monoid may the same as a semilattice
14:35:16 <oerjan> `pastelogs oerjan_?> [@]tell <
14:35:24 -!- atriq has joined.
14:35:55 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23392
14:36:23 <oerjan> `pastelogs oerjan_?> [@]tell <
14:36:33 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.21919
14:36:41 <fizzie> oerjan: It keeps happening.
14:38:22 <oerjan> what, the @tell < or HackEgo not working properly?
14:38:50 <oerjan> @tell zzo38 <zzo38> Does the Haskell compiler know that equality is reflexive? <-- it actually isn't, for Double (NaN)
14:39:30 <oerjan> i hope zzo38 doesn't get confused by me resending answers from back in january
14:39:45 -!- atriq has quit (Ping timeout: 244 seconds).
14:39:49 <oerjan> there were only those three, however.
14:40:11 <fizzie> oerjan: But if you only take into account the seconds when they sent, that's like one every second.
14:44:00 <oerjan> @tell zzo38 Actually, a it's a semilattice with a bottom element (the mempty).
14:46:35 <oerjan> @tell zzo38 From wikipedia: "A bounded semilattice is an idempotent commutative monoid."
14:49:42 -!- elliott has joined.
14:49:48 <elliott> fizzie: Hey, you use the console sometimes, right?
14:50:08 <oerjan> a master of consolation
14:50:53 <fizzie> Not so often these days. And I'm making foods at the moment.
14:51:05 <oerjan> a master of cuisine too!
14:51:22 <elliott> fizzie: Man, you and your foods.
14:51:34 <fizzie> People DIE if food is not made.
14:51:42 <fizzie> Or so they say, anyway.
14:51:48 <elliott> fizzie: Yeah well, I'll die if my console remains unable to display Unicode characters!!!
14:51:53 <elliott> Think about ME for a change, fizzie.
14:52:31 <oerjan> unicode characters are a vital part of elliott's immortality scheme
14:53:09 <oerjan> wait, wasn't i also supposed to eat ->
14:53:53 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
14:53:55 <fizzie> From what I recall from the days I actually used it, it's relatively easy to make it use UTF-8, but there seemed to be some kind of an issue fitting more than about 512 characters in a font.
14:54:11 <elliott> fizzie: Weeeell, I'm using Terminus.
14:54:20 <elliott> "ter-u20n". I assume the u is for Unicode???
14:54:32 <elliott> Anyway the fancy e in "caf[fancy e]" is just displaying as a square on the console.
14:54:48 <elliott> There's this keymap option like "FONT_MAP=8859-2" that apparently you're meant to set appropriately for the font.
14:54:53 <elliott> But I don't know what it's supposed to be for this one.
14:55:08 <elliott> Alternatively maybe I am using the wrong Terminus??
14:55:13 <elliott> There are also a bunch with three digits and no "u".
14:55:21 <fizzie> Is that just the accented e? I'd think that'd be in the console selection.
14:55:55 <elliott> Maybe I want, e.g. ter-120n.
14:55:56 -!- carado has joined.
14:56:13 <elliott> Who even knows what these numbers and letters are???
14:56:24 <elliott> I guess there might be documentation somewhere?
14:57:16 <fizzie> ter-2* iso02, cp1250 ISO8859-2, Windows-1250
14:57:28 <fizzie> It doesn't seem to be the 'u' you want.
14:57:33 <fizzie> ter-1* iso01, iso15, cp1252 ISO8859-1, ISO8859-15, Windows-1252
14:58:00 <fizzie> That one is borderline reasonable.
14:58:02 <fizzie> ter-v* all listed above all listed above and many others (about 110 and many others language sets), 8 foreground colors
14:58:24 <fizzie> That one sounds funny, I wonder how it works.
14:59:29 <fizzie> It also claims the PSF has the "Unicode data"; I vaguely indeed recall that was a thing.
14:59:42 <fizzie> That, and a console set to UTF-8 mode, should mean the code page doesn't actually matter.
14:59:56 <fizzie> Though I suppose the koi8u version wouldn't necessarily have an accented e.
15:01:37 <elliott> fizzie: So, er, which prefix of 12579cdfgkpux do I want?
15:02:55 -!- ogrom has joined.
15:04:16 <fizzie> I think '1' is like the most general-purposey, unless you have that 'v' thing and it works.
15:04:45 <elliott> fizzie: I don't appear to have a v thing. :(
15:05:08 <elliott> <fizzie> It also claims the PSF has the "Unicode data"; I vaguely indeed recall that was a thing. <fizzie> That, and a console set to UTF-8 mode, should mean the code page doesn't actually matter.
15:05:13 <elliott> So, er, does that mean I can't use this or something?
15:06:22 <fizzie> No, I just mean you shouldn't necessarily need to tell the thing about the code page, if it's using UTF-8 and has the Unicode code points in the PSF, since it'd pick characters using the code points. And I understood that applied to all the PSF versions, not just the mysterious v.
15:07:07 <elliott> fizzie: So if I pick the 1 thing I should get the full Unicode coverage? I mean, as full as Terminus has to start with (e.g. in X).
15:07:18 <elliott> Or is the character set still limited?
15:07:42 <fizzie> Well, it would be limited to 512 characters in any case, as far as I know.
15:07:52 <olsner> how did you end up having to choose variants of terminus?
15:08:04 <elliott> olsner: Well, you know, Linux console.
15:08:08 <olsner> iirc, I just installed it and since then it works
15:08:23 <fizzie> On the other hand, Terminus' README says it has 879 characters in total, so 512 is not a lot less.
15:08:38 <fizzie> I don't know whether the '1' variant only has the code pages it mentions or what, though.
15:08:58 <fizzie> There are tools to dump a list of characters in a PSF file, you could check with one.
15:09:08 <elliott> I think I'll just live in ignorance.
15:09:17 <fizzie> I have no idea how systemd vconsole things are used to configure fonts, anyway. Back when I fiddled with these I just had the consoletools package.
15:09:18 <olsner> but otoh, I don't use the linux console so I wouldn't notice if that part is completely broken
15:09:49 <elliott> fizzie: Wait, when did I say anything about vconsole?
15:10:11 <fizzie> elliott: The hits for "FONT_MAP" said things about it. I suppose it could be something else.
15:10:21 <fizzie> It's kind of a generic-sounding term.
15:10:44 <elliott> fizzie: Well, I'm just migrating my Arch system from rc.conf to this vconsole.conf thing, but I happened to set Terminus as my console font at the same time.
15:11:01 <elliott> fizzie: I'm not actually using systemd, but they're deprecating most of rc.conf and telling you to move settings to all these little files to prepare for switching over to systemd.
15:12:28 <fizzie> There's something called "FONT_UNIMAP" too, apparently. But from what I recall, in UTF-8 mode -- which is certainly the only reasonable mode these days -- the mappings weren't really relevant.
15:12:59 <elliott> fizzie: Also, uh, wish me luck in upgrading to GRUB2.
15:13:16 <fizzie> Good luck. It went well for me.
15:13:25 <fizzie> Mature and well-tested technology and all that.
15:13:56 <elliott> :: grub-common and grub are in conflict. Remove grub? [y/N] y
15:14:22 <fizzie> Anyway as long as you can boot from something external maybe things won't become too unfixable. I had that one laptop that couldn't boot from anything else than the internal HD, fiddling with its boot setup was always so tense.
15:14:23 <elliott> Usually the post-MBR gap (after the 512 byte MBR region and before the start of the 1st partition) in many MBR (or msdos disklabel) partitioned systems is 31 KiB when DOS compatibility cylinder alignment issues are satisfied in the partition table. However a post-MBR gap of about 1 to 2 MiB is recommended to provide sufficient room for embedding GRUB2's core.img (FS#24103). It is advisable to use a partitioner which supports 1 MiB partition align
15:14:23 <elliott> ment to obtain this space as well as satisfy other non-512 byte sector issues (which are unrelated to embedding of core.img).
15:14:23 <elliott> If you do not dual-boot with MS Windows (any version) in BIOS systems, it is advisable to switch to GPT partitioning - GUID_Partition_Table#Convert_from_MBR_to_GPT
15:14:33 <elliott> fizzie: Do I need to understand all this?
15:14:53 <elliott> Also is it really telling me to switch from MBR to GPT on a regular system? That sounds sort of like a bad idea.
15:15:04 <fizzie> Maybe they want to be futuristic.
15:15:09 <elliott> I mean, lots of things don't even support GPT, do they??
15:15:15 <Lumpio-> They want you to do UEFI too :P
15:15:27 <Lumpio-> You don't exactly need "lots of things" to support it do you
15:15:34 <Lumpio-> Your hardware, bootloader and kernel mostly.
15:15:42 <Lumpio-> Hardware being the hard part (no pun intended)
15:15:54 <elliott> Well, no, but it sounds like it'd be an awful pain if I ever, e.g., wanted to install an OS that has no clue what GPT is.
15:15:55 <Lumpio-> I couldn't be bothered with GPT
15:16:07 <Lumpio-> What kind of OS doesn't even support GPT these days
15:16:17 <oerjan> why the heck did they EVICT my favorite restaurant?
15:16:19 <elliott> But anyway I guess I shouldn't be surprised that Arch advice is putting bleeding-edge high-techness over practicality..
15:16:20 <fizzie> The mentioned MS Windows in BIOS systems maybe. :p
15:17:02 <olsner> oerjan: you probably didn't eat there often enough
15:17:10 <oerjan> olsner: almost every day :(
15:17:13 <fizzie> They probably had rats in the food.
15:17:16 <elliott> wait, what is "hell" replacing there
15:17:36 <elliott> oerjan: don't they usually give notice of these kinds of things
15:17:42 <olsner> oerjan: maybe they got evicted for letting people like you in
15:18:20 <oerjan> elliott: well yes, i've known it for a few months, but two days ago they actually closed :(
15:19:08 <elliott> There are 3 ways to install GRUB(2) boot files in BIOS booting:
15:19:09 <elliott> #Install_to_440-byte_MBR_boot_code_region (recommended) ,
15:19:09 <elliott> #Install_to_Partition_or_Partitionless_Disk (not recommended),
15:19:09 <elliott> #Generate_core.img_alone (safest method, but requires another BIOS bootloader like grub-legacy or syslinux to be installed to chainload /boot/grub/i386-pc/core.img).
15:19:18 <elliott> fizzie: Sometimes I think about switching back to Debian.
15:19:48 <olsner> nice, installing grub to boot grub is a recommended solution
15:20:06 <olsner> if you interpret "safest method" as a recommendation
15:20:34 <fizzie> One of them is explicitly flagged as "recommended", I think that's the... recommended one.
15:20:47 <elliott> Oh wow, "sudo grub-install --target=i386-pc --recheck --debug /dev/sda" produces a lot of output.
15:21:20 <fizzie> Debian's GRUB 2 installer initially did that #3 and configured the existing GRUB <2 to chainload the core.img; then when you had booted a couple of time and were certain it works, you were meant to call a script that actually put the GRUB 2 in the MBR.
15:22:52 <elliott> fizzie: Okay I think it is done??? Let's try
15:23:01 <fizzie> And that was the last we heard of him.
15:23:35 -!- elliott has quit (Remote host closed the connection).
15:23:50 <oerjan> fizzie: they got impeccable marks on all the recent hygiene controls. (in trondheim they have to put the result form visible in the restaurant.)
15:24:29 <oerjan> no, i am going to believe it was pure greed by the landowner. (they're being replaced by a pharmacy.)
15:24:35 <fizzie> oerjan: Ooh, they should do that here too. Does it have to be "prominently visible" or something?
15:24:41 <fizzie> Like, neon lights and signs.
15:24:50 <oerjan> well, not neon lights :P
15:25:07 -!- elliott has joined.
15:25:24 <fizzie> The local IKEA's restaurant has a diploma on the wall about how they do "organic" things.
15:25:44 <elliott> So, um, it works, but it runs in a really really freaky resolution.
15:26:05 <elliott> Like, it is stretching a 4:3 (but larger than the "plain old BIOS text") resolution to my widescreen... screen.
15:26:08 <fizzie> Oh, and some gas station in Norway where we stopped had a whole wall full of all kinds of yellowed diplomas about marketing seminars from 1989 or whatever.
15:26:15 <elliott> Is there any hope of getting it the same resolution as my Linux console?
15:26:19 <elliott> Or is that too fancy to ask of a bootloader.
15:26:53 <fizzie> They at least used to be somewhat limited to modes listed by the BIOS in question.
15:27:09 <elliott> Yes, but this is GRUB2. It's so fancy, and the future.
15:27:43 <elliott> In GRUB2 it is possible, by default, to change the look of the menu. Make sure to initialize, if not done already, GRUB2 graphical terminal, gfxterm, with proper video mode, gfxmode, in GRUB2. This can be seen in the section #Correct_GRUB2_No_Suitable_Mode_Found_Error. This video mode is passed by GRUB2 to the linux kernel via 'gfxpayload' so any visual configurations need this mode in order to be in effect.
15:27:43 <elliott> Setting the framebuffer resolution
15:27:43 <elliott> GRUB2 can set the framebuffer for both GRUB2 itself and the kernel. The old vga= way is deprecated. The preferred method is editing /etc/default/grub as the following sample:
15:27:48 <elliott> GRUB_GFXPAYLOAD_LINUX=keep
15:27:50 <elliott> fizzie: See? This looks super fancy.
15:27:53 <fizzie> "The VESA widescreen resolutions are not standardized, and I have never once been able to get one working from Grub2. I have heard it's possible, if using an Intel GFX chip and some semi-complicated VESA soft-patching", says some guy.
15:28:01 <elliott> "You can choose one of these resolutions: 640×480, 800×600, 1024×768, 1280×1024, 1600×1200, 1920×1200"
15:28:05 <elliott> None of those are the right resolution. :(
15:28:10 <elliott> fizzie: Well I am using an Intel chip.
15:28:24 <elliott> "Some times for Intel graphic adapters neither # hwinfo --framebuffer nor vbeinfo will show you the desired resolution. In this case you can use 915resolution hack. This hack will temporarily modify video BIOS and add needed resolution. See 915resolution's home page"
15:28:31 <elliott> fizzie: Maybe I can use this to enable the true resolution??
15:28:43 <fizzie> You can certainly *try*.
15:29:01 <fizzie> It's of course even possible your VESA BIOS has the widescreen resolution modes listed directly.
15:29:17 <fizzie> In which case I suppose just stating the mode should work.
15:29:24 <elliott> fizzie: If this breaks horribly how will I boot things??? I don't even know wher my External Bootable USB Medium(TM) is.
15:29:34 <elliott> Do you think grub has some kind of fallback if you specify an invalid resolution.
15:30:02 <fizzie> If you have it doing the right thing unattended, you can just touch nothing if it's messed up.
15:30:41 <fizzie> And anyway I suppose if the BIOS call to switch modes says "I don't like this" it's likely to just keep whatever resolution it was, or choose some "safe" default.
15:30:47 <elliott> fizzie: Maybe I should install coreboot so I can get my BIOS to use the right resolution too!!!
15:30:50 <elliott> I assume it supports fancy things like that.
15:31:11 <elliott> # note that you can use only modes which your graphic card supports via VBE
15:31:12 <elliott> # you can see them in real GRUB with the command `vbeinfo'
15:31:14 <elliott> I guess I could try this also.
15:31:22 -!- Nisstyre-laptop has joined.
15:31:28 <fizzie> That's true, you could try that.
15:31:40 -!- elliott has quit (Remote host closed the connection).
15:33:04 <oerjan> now, last time we heard from him for _real_!
15:34:57 <olsner> obviously *this* time he's really gone
15:38:28 -!- elliott has joined.
15:38:35 <fizzie> Okay, since that's the case, those onions aren't going to dice themselves. ->
15:38:35 <elliott> Intel chipset detected. However, 915resolution was unable to determine the chipset type.
15:38:41 <oerjan> darn, null hypothesis failed again!
15:38:50 <fizzie> Well, the onions still won't.
15:38:51 <elliott> Well, I mean, you can go do whatever. But I might cry.
15:40:06 <oerjan> isn't it more likely that fizzie will cry, given the task at hand?
15:40:14 <olsner> elliott: due to the onions? the onions are in finland
15:40:34 <elliott> fizzie: I bet you're here.
15:40:46 <elliott> Next, our purpose is to overwrite mode 30. (You can choose what ever mode you want.) In the file /etc/grub.d/00_header just before the set gfxmode=${GRUB_GFXMODE} line insert:
15:40:48 <olsner> the hexham onion chop of 2012
15:40:50 <elliott> Does it matter which mode you pick???
15:40:52 <elliott> Could something bad happen.
15:41:04 <olsner> staffed entirely by finns
15:41:06 <oerjan> more famous last words
15:49:00 <kmc> isn't it great how all of Linux functionality is reimplemented from scratch in GRUB just so you can use it for two seconds before you boot Linux?
15:50:01 <olsner> yeah, DON'T YOU JUST LOVE how modern operating systems require other operating systems to boot?
15:50:06 <elliott> kmc: I don't like bootloaders.
15:50:17 <shachaf> elliott: Let me guess, @'s bootloader is @?
15:50:29 <FreeFull> olsner: It's not really an operating system when all it can do is boot a kernel
15:50:36 <elliott> grub can do more than that.
15:50:38 <lambdabot> Maybe you meant: shootout show slap smack source spell spell-all src . ? @ v
15:50:40 <elliott> I think it even has a game of some kind.
15:50:53 <shachaf> That's @'s full nam, right?
15:50:57 <elliott> But seriously, if you have any kind of complexity in terms of reading files -- like say, encryption, LVM-type stuff, or whatever -- then your bootloader inevitably becomes more and more like your OS.
15:51:13 <elliott> And eventually you've just rewritten your OS except weirder and with less functionality, except that this time it also has a boot sector.
15:51:23 <olsner> FreeFull: just because all you use it for is booting another kernel, that doesn't mean it's not an OS
15:52:40 <kmc> and it's not true that GRUB can only boot a kernel
15:52:47 <kmc> doesn't GRUB2 have a turing complete scripting language
15:52:51 <kmc> and filesystem read/write
15:52:53 <kmc> and network capability
15:52:59 <kmc> someone should write a webserver for GRUB2
15:52:59 <fizzie> When life gives you onions, make onionade. Okay, gone again.
15:53:13 <kmc> so that you can log into the machine you just booted and select the kernel through an AJAXy web interface
15:53:16 <kmc> just because
15:53:33 <olsner> grub2 comes with a shell that can actually do stuff, that makes it really clear that it's an OS
15:55:03 -!- atriq has joined.
15:55:15 -!- elliott has quit (Remote host closed the connection).
15:55:21 <pikhq_> GRUB2 is *definitely* an OS.
15:55:29 <pikhq_> Perhaps a relatively light-weight OS, but even so.
15:55:37 <pikhq_> FreeFull: And that's not an OS. :)
15:55:54 <olsner> syslinux isn't (afaik), but DOS is an OS
15:56:20 <pikhq_> syslinux is essentially DOS's bootloading scheme adapted to Linux.
15:56:53 <olsner> isn't syslinux an actual DOS application?
15:57:29 <pikhq_> olsner: Though it might work on DOS, syslinux is the FAT bootloader, done in normal FAT bootloader style.
15:57:49 <pikhq_> It also refers to the class of similar bootloaders, including isolinux and extlinux...
15:58:05 <pikhq_> loadlin is the DOS program.
15:58:05 <FreeFull> A part of syslinux can be used to boot linux from DOS, but you don't need dos to boot using syslinux
15:58:30 <pikhq_> Uh, syslinux doesn't have loadlin I don't think?
15:58:35 <FreeFull> I have the normal MBR -> second stage -> linux setup
15:58:41 <FreeFull> Without a separate boot partition
15:59:46 <pikhq_> Well. I guess syslinux itself almost counts as an OS. Because it can bootload COM files too.
16:00:11 <pikhq_> (which is exactly what it sounds like)
16:00:20 <FreeFull> pikhq_: com files are plain x86 code
16:00:56 <Jafet> So I heard you like bootloaders
16:01:09 <pikhq_> FreeFull: By that notion DOS is a bootloader.
16:01:27 <FreeFull> Well, DOS does more than just loading executables
16:01:41 <FreeFull> It provides an API for doing stuff
16:02:28 -!- jix has quit (Remote host closed the connection).
16:02:35 <pikhq_> A very, very limited subset of DOS and a couple things handy for adding functionality to the boot process.
16:03:35 <FreeFull> The difference is that DOS by default asks the user what to do, while syslinux by default follows the configuration =P
16:04:09 <Jafet> Cannot find /dev/sda1. Abort, retry, fail?
16:04:21 <FreeFull> Also, I don't know if it's possible to go back to syslinux once the com32 file is done
16:04:56 <Jafet> It's an operating system with continuation passing, duh
16:10:07 -!- elliott has joined.
16:10:48 <elliott> fizzie: Do you know how to change the Linux console cursor?
16:10:51 <Jafet> By the way, don't forget the third copy of a subset of an operating system that needs to be implemented in the firmware.
16:11:08 <elliott> I know you can put some funny escape codes in your bashrc or whatever, but that doesn't help for the login prompt and whatnot.
16:14:18 <atriq> Does anyone know where I can get help with a problem with Ubuntu Unity without people telling me that Unity sucks?
16:14:48 <olsner> atriq: not here, apparently
16:16:25 <elliott> atriq: Try http://askubuntu.com/.
16:16:47 <atriq> I don't exactly know how to elucidate my problem
16:17:05 <olsner> it's not working? stop using it, problem solved.
16:17:10 <elliott> atriq: Well, that's a problem.
16:17:21 <elliott> atriq: You could ask for help on http://english.stackexchange.com/!
16:18:54 <atriq> Do you know how to take a screenshot with the mouse cursor displayed?
16:19:26 <elliott> Uhh, not really. I think it's possible, though.
16:19:38 <olsner> Once settled in, ferrets quickly establish their territory and set the house rules: What's theirs is theirs, what's yours is up for grabs.
16:19:55 -!- elliott has quit (Remote host closed the connection).
16:25:19 <oerjan> huh, http://english.stackexchange.com/ exists
16:27:11 <oerjan> those people are such cycles
16:27:34 <Jafet> http://islam.stackexchange.com/
16:34:43 -!- ogrom has quit (Quit: Left).
16:40:13 -!- Frooxius has joined.
16:49:16 -!- ogrom has joined.
16:50:23 -!- elliott has joined.
16:52:38 <fizzie> elliott: There's a set of escape codes that date from the VGA console days, I'm not sure if they still do the same thing in fbcon. They can set the hardware console to underscore/lower-third/lower-half/lower-two-thirds/full-block, or turn on the soft cursor that has the same shapes but also a color.
16:52:55 <fizzie> I only have the vgacon.
16:53:35 <elliott> fizzie: Do you know how much of the average /var/log is produced by syslog?
16:53:36 <FreeFull> fizzie: I think Linux does emulate them
16:53:46 <fizzie> FreeFull: I wouldn't be surprised.
16:53:51 <elliott> fizzie: I've gotten systemd working but it doesn't seem to have this syslog compatibility shim thing running.
16:54:03 <elliott> fizzie: So I'm wondering if I want to get that working or whether I could just do without any syslog support whatsoever.
16:54:18 <fizzie> The codes aren't for some reason listed in the usual console_codes man page (or if they are, I didn't notice) but googling found http://linuxgazette.net/137/anonymous.html that lists them.
16:54:19 <FreeFull> If you tell me what the escape codes are I can find out
16:54:33 <fizzie> FreeFull: \e[?4c should make a half-block.
16:54:54 <elliott> fizzie: (The escape codes aren't the problem; the main problem is that I can't figure out how I can get that to run before login(1) or such.)
16:56:11 -!- Phantom_Hoover has joined.
16:56:25 <FreeFull> Changing the number to 1 turns it off entirely
16:56:31 <fizzie> As for /var/log all the usual things (auth, daemon, dmesg, mail.{log,info,warn,err} and so on) I think tend to go through syslog; only "major" things like Samba, HTTP servers and so on have their own logging. At least in the systems I have.
16:56:39 <fizzie> FreeFull: Yes, it should.
16:56:57 <fizzie> FreeFull: 1-6 should be a steadily growing thing from invisible to full block.
16:57:27 <elliott> fizzie: I guess I should probably get this working then.
16:57:49 <fizzie> (VGA hardware cursor is specified in terms of scanlines, so it's not really exposing the full functionality; VGA cursor can be a middle-of-the-cell thing, or an overline.
16:57:49 <elliott> fizzie: The wiki page is just all
16:57:50 <elliott> Since version 38 systemd has an own logging system, the journal.
16:57:50 <elliott> By default, running a syslog daemon is no longer required. To read the log, use:
16:58:14 <fizzie> I know absolutely nothing about systemd. Except that I hear it's all the rage.
16:58:29 <elliott> Well, uh, does this look sane to you? https://wiki.archlinux.org/index.php/systemd#Journald_in_conjunction_with_a_classic_syslog_daemon
16:58:49 <elliott> I don't even know what that would do exactly.
16:58:58 <elliott> I think the goal is to get syslog stuff filtered through into the systemd(tm) journal(tm).
16:59:05 -!- oerjan has quit (Quit: leaving).
16:59:06 <elliott> But I don't really know how to do that because I'm incompetent.
17:00:31 <fizzie> I think -- based on http://lwn.net/Articles/474968/ -- that systemd is "syslog-compatible" out of the box in the sense that it provides a /dev/log applications can log to, and those already go to wherever it is the journal goes.
17:01:06 <fizzie> But if you want a traditional syslogd sorting the messages and outputting /var/log/whatever as it is configured to, you'll just start the traditional syslogd and make it read that /run/systemd/journal/syslog and then it also gets all that stuff.
17:01:27 <fizzie> I suppose if you're not terribly interested in how the logs are organized, letting systemd do the whole thing is okay too.
17:01:35 <fizzie> Assuming it writes the journal somewhere.
17:02:05 <fizzie> "Note that the journal will store log data only on /run/log/journal which makes it volatile. If a subdirectory /var/log/journal is created the journal will instead store its data on /var, thus making the journal persistant."
17:02:28 <fizzie> You might do that and then use that systemd-journalctl thing that can output human-readable things or JSON or whatever, it sounds very modern.
17:03:24 <fizzie> I mean, unless you have a traditional syslogd configuration you're interested in keeping.
17:04:06 <elliott> <fizzie> I think -- based on http://lwn.net/Articles/474968/ -- that systemd is "syslog-compatible" out of the box in the sense that it provides a /dev/log applications can log to, and those already go to wherever it is the journal goes.
17:04:15 <elliott> I was trying nc -u 127.0.0.1 514.
17:04:24 <elliott> The Googles told me that's how you sent a message to syslog.
17:04:28 <fizzie> That's often not enabled by default.
17:04:37 <fizzie> Or, well, I don't know how often, but at least sometimes.
17:04:52 <elliott> I don't think I need /var/log/whatever. I mean, I don't really look at them often, and I think systemd has its own stuff to read the logs.
17:05:10 <fizzie> Yes, it seems to have a thing that can produce things from the journal in all kinds of formats.
17:05:24 <elliott> There's this "journalctl" that just spews a bunch of output to a pager when run as root, at least.
17:05:31 <elliott> Including all the sudo logs and whatnot.
17:05:34 <elliott> So I suppose it is working fine.
17:05:40 <fizzie> Yes. So it sounds like it's working okays.
17:05:57 <fizzie> But you can do that thing referred to above if you want to make the journal persistent and not wiped out at each boot.
17:06:07 <elliott> Right, I heard about having to do the mkdir thing.
17:06:22 <elliott> Well, I guess I'll uninstall sysvinit.
17:06:24 <elliott> You know, living on the edge.
17:06:56 <fizzie> For the record, I don't seem to have an UDP-listening syslogd either. It's not really necessary except when wanting to collect logs over the network from other boxes.
17:07:09 <fizzie> I think my VDSL2 modem can send stuff to a listening syslogd.
17:07:27 <fizzie> Except it doesn't write anything very interesting in the log last I looked.
17:07:46 <elliott> The thing I found was all about testing a syslog server with a separate IP and so on.
17:08:32 <fizzie> "B0 Line Rate - Downstream (Kbps): 99998"
17:08:35 <fizzie> That sounds a bit dubious.
17:08:45 <fizzie> (I went to look at the box's webif.)
17:09:21 <elliott> "Slow boot? Blame systemd!
17:09:21 <elliott> No, this is not a disparaging or bashing article of the new Linux boot process technology designed to replace the older, classic System V init daemon."
17:09:27 <elliott> Good thing you didn't give it a sensationalised title, then!
17:10:13 <fizzie> Huh, I wonder if someone has done something to our internets. Upgraded hardware or something.
17:10:31 <fizzie> It reports attainable down/upstream rates as 123180/46260 Kbps.
17:10:49 <fizzie> They used to be something like 70M/... well, I don't remember what the upstream was.
17:11:01 <elliott> Hokay, so I want to do "sudo systemctl enable dhcpcd@eth0.service", I think.
17:12:26 <elliott> Then "sudo systemctl enable cronie.service".
17:12:26 -!- sivoais has quit (Read error: Connection reset by peer).
17:12:54 <elliott> Then alsa-store.service and alsa-restore.service.
17:13:03 <elliott> The unit files have no [Install] section. They are not meant to be enabled using systemctl.
17:13:15 -!- sivoais has joined.
17:13:46 <elliott> RIP DAEMONS=(network crond alsa).
17:14:09 <elliott> fizzie: Isn't the FUTURE EXCITING?
17:15:25 <fizzie> It's almost enough for me to also try entering the future. But not quite.
17:15:46 <fizzie> I could do the stupid thing and try out the open-source nv driver one of these days, though.
17:15:52 <elliott> fizzie: My system boots up in, like, seconds now!!!
17:16:10 <elliott> :: systemd-sysvcompat and sysvinit are in conflict. Remove sysvinit? [y/N] y
17:16:28 <elliott> I just saved 0.09 MiB by entering the future!
17:17:01 <elliott> I don't think I actually have it here.
17:17:06 <fizzie> Debian went "parallel" with sysvinit+dependency-based boot ordering quite a while ago, I believe.
17:17:13 <fizzie> You should set up a GPS clock.
17:17:18 <fizzie> There was a picture not long ago.
17:17:19 <olsner> elliott: don't do it, ntp will just adjust your system time back into the present
17:17:52 <pikhq_> fizzie: It's actually silly-yet-amazing.
17:17:58 <elliott> fizzie: Yes, but did you know that systemd is EVEN MORE PARALLEL?
17:18:01 <pikhq_> fizzie: They create a makefile and run it with make -j
17:18:05 <elliott> fizzie: It starts up services BEFORE THEIR DEPENDENCIES.
17:18:24 <fizzie> elliott: http://imgur.com/a/WtaOp if you didn't see it, it's what ion did.
17:18:42 <elliott> fizzie: (By opening a fake socket on the same port or whatever as the dependencies, and then holding everything that comes in there until the thing actually starts, and then forwards it on.)
17:19:05 <elliott> pikhq_: Oh. I assumed the "Makefile-based init" or whatever message that came up on every boot meant something... more reasonable.
17:19:05 <atriq> I really need to get better at naming types
17:19:13 <fizzie> If you set up NTP, you'll get a stratum-2 time at best; if you have your own GPS receiver you'll be stratum-1.
17:19:46 <pikhq_> Only if your NTP server *actually is* an atomic clock.
17:19:46 <fizzie> If your computer is an atomic clock, maybe.
17:19:49 <elliott> pikhq_: (Do they really do that?)
17:20:01 <pikhq_> elliott: Yes, that's how make-based init works.
17:20:09 <elliott> fizzie: What if I buy an atomic clock and plug it into my computer?
17:20:11 <elliott> I bet they're cheap nowadays.
17:20:14 <elliott> It's the future, after all.
17:20:20 <fizzie> elliott: Then the clock is stratum-0 and the computer stratum-1.
17:20:27 <fizzie> (They're weird that way.)
17:20:54 <elliott> fizzie: What's the difference between a computer with an atomic clock on its motherboard and a computer with a wire running to an atomic clock?
17:20:58 <elliott> Or is the former stratum-1 too?
17:21:08 <atriq> What's the opposite of Separation?
17:21:12 <atriq> (in a marriage context)
17:21:14 <fizzie> elliott: Possibly it is. I'm not really sure.
17:21:18 <elliott> If you have a display on your atomic clock so you can measure the time it's reading, is that display stratum-0 or stratum-1?
17:21:23 <atriq> (or, more generically, in a relationship context)
17:21:33 <elliott> Starting to think there's no such thing as stratum-0????
17:21:39 <elliott> I guess the actual, like, atoms are stratum-0.
17:21:42 <elliott> But they don't really know what time it is.
17:21:45 <atriq> Perhaps Conjugation
17:21:47 <fizzie> elliott: It's kind of a philosophical question, I suppose.
17:22:10 -!- elliott has quit (Remote host closed the connection).
17:22:36 <atriq> Trying to achieve enlightenment
17:22:51 <olsner> leaving for the last time over and over again
17:29:43 -!- elliott has joined.
17:29:56 <elliott> fizzie: I feel so future that I want to switch to GPT.
17:30:12 <olsner> I tried that, didn't boot
17:30:16 <fizzie> "It's your funeral" is I think the phrase.
17:30:29 <fizzie> But it does sound like a natural thing to do.
17:30:38 <olsner> and the GPT data is all hidden and stuff, so getting rid of it is surprisingly tricky
17:30:54 -!- hagb4rd has quit (Ping timeout: 246 seconds).
17:31:32 <elliott> I'll try setting up ntp to, you know, stave it off.
17:32:11 <olsner> I'm not quite sure what GPT is supposed to give you that the good ol' crap doesn't
17:32:18 <fizzie> olsner: A sense of the future.
17:32:20 <atriq> Who can I poke about the GEDCOM specs
17:32:44 <fizzie> I might easily consider GPT if setting up a computer right now.
17:33:05 <fizzie> I'm not so sure about breaking an existing setup in order to do that.
17:33:27 <Phantom_Hoover> my laptop has like 3 mystery partitions that i can't bring myself to risk messing with
17:33:37 <atriq> Phantom_Hoover, can I ask you annoying questions regarding the GEDCOM specifications?
17:33:57 <fizzie> On the laptop that was set up maybe a year or so ago there was mostly the issue that it needed to dual-boot to Windows and it was a BIOS system.
17:34:16 <atriq> In the definition of FAMILY_EVENT_STRUCTURE, what does the [Y|<NULL>] represent?
17:34:39 -!- jiella has joined.
17:35:04 <HackEgo> jiella: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
17:36:03 <atriq> jiella, did you want welcoming?
17:36:53 <jiella> This attention is kind of creepy.
17:37:02 <atriq> Are you in Finland?
17:37:15 <HackEgo> Finland is a European country. There are two people in Finland, and at least nine of them are in this channel. Corun drives the bus.
17:37:45 <atriq> Because this is one of the English-language channels with the largest Finn density
17:38:01 <atriq> Also Hexhamite density
17:38:05 -!- atriq has quit (Quit: Leaving).
17:39:25 <jiella> I've been here more or less for... four years now?
17:39:54 <HackEgo> JIELLA: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
17:40:12 <HackEgo> Sweden is the suburb capital of Norway. It's where all the Nobel prizes are announced, except the Math Prize.
17:40:23 <shachaf> I was getting cold so now I'm compiling GHC to warm me up.
17:40:24 <HackEgo> Norway is the suburb capital of Sweden. It's where the Nobel Peace Prize is announced.
17:41:09 <jiella> Several. You won't remember them. I say something perhaps every six months or so.
17:42:07 <jiella> .. you're not going to go through a bunch of nicknames, are you?
17:42:25 <shachaf> elliott: What are you doing here?
17:42:45 -!- Nisstyre-laptop has quit (Remote host closed the connection).
17:42:56 <lambdabot> freshname. Return a unique Haskell project name.
17:43:38 <elliott> $ sudo systemctl enable ntpd.service
17:43:39 <elliott> ln -s '/usr/lib/systemd/system/ntpd.service' '/etc/systemd/system/multi-user.target.wants/ntpd.service'
17:44:00 <elliott> Uh, I wonder how to get it to enable it now/.
17:44:37 -!- Nisstyre-laptop has joined.
17:44:39 <shachaf> elliott: Is HEAD GHC building for you?
17:44:47 <olsner> reinventing init seems to be almost as much fun as adding levels of boot loaders
17:44:58 <elliott> olsner: Well, in fairness, init is pretty terribly-designed.
17:45:07 <elliott> systemd is better. Not perfect, but... better.
17:45:08 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
17:45:28 <elliott> At least it just runs a bunch of stuff dependency-wise in parallel rather than the tangle of tasks old init does.
17:45:39 <olsner> sure, but everything sucks anyway, so why add the choice of new kinds of suckage
17:46:13 -!- Nisstyre-laptop has joined.
17:46:23 <olsner> I suppose it would be alright if there was one better init instead of a hundred
17:46:30 <elliott> It's faster suckage, olsner.
17:47:22 <elliott> Ah, "sudo systemctl start multi-user.target" did it.
17:47:23 <olsner> and that's a good thing
17:47:33 -!- zzo38 has joined.
17:48:08 <elliott> fizzie: Hey, how do I tell if my luck is... uh... ntp'd?
17:48:14 <elliott> ntpd is running, but I don't know if it's... thinging.
17:49:40 <olsner> ntptime seems to print some stats about that
17:49:55 <elliott> olsner: Thank you, fizzie.
17:50:11 <elliott> fizzie: "Startup finished in 5173ms (kernel) + 11636ms (userspace) = 16810ms".
17:50:18 <elliott> Does YOUR system start up in 16810 ms???
17:50:24 <shachaf> lrwxrwxrwx 1 shachaf shachaf 9 Sep 6 15:26 /home/shachaf/.ghc/ghci_history -> /dev/null
17:50:44 <olsner> elliott: how often do you start your system?
17:50:54 <elliott> I need the fastest suckage. :(
17:51:00 <pikhq_> elliott: My *distro* boots in 3. :)
17:51:16 <elliott> pikhq_: I don't believe your distro boots in 3 ms.
17:51:48 <jiella> Phantom_Hoover: No. At least I don't think so.
17:53:08 <olsner> at normal rebooting rate my system has about 25 minutes to boot before it spends more time booting than your 16810ms system
17:53:09 <elliott> pikhq_: I'm actually never happy.
17:53:35 -!- Ginto8 has joined.
17:53:55 <fizzie> elliott: Upstart needs some kind of an extra thing to collect statistics, so I don't really know. (I did see a recent systemd user be all "look at all these statistics I get by default" on me, I think you can get very detailed boot-timings out of it.)
17:54:51 <fizzie> At least I'm under the impression the Ubuntu box has upstart involved. The Debians don't really get booted.
17:55:39 <elliott> Yes, I can do this: http://sprunge.us/dIMG
17:55:42 <elliott> It also works with bootchart, apparently.
17:56:01 -!- hagb4rd has joined.
17:59:13 <elliott> fizzie: Do I have to do something special to check whether my BIOS supports GPT?
17:59:21 <elliott> I don't really know what can go wrong.
17:59:58 <olsner> I'd guess that it doesn't .. then again it might have it, or if it has support the support might not work
18:00:10 <olsner> oh, and if the gpt support is there and works, it might only be able to boot windows
18:00:12 <pikhq_> elliott: If it's a BIOS, it doesn't.
18:00:22 <pikhq_> However, BIOS also doesn't support DOS partitions.
18:00:37 <pikhq_> The BIOS's concept of partitioning is "load the first sector"...
18:00:53 <pikhq_> If you're not using UEFI, you simply need an MBR that groks GPT.
18:01:09 <elliott> pikhq_: And I guess GRUB2 does that.
18:01:17 <elliott> (Do you use GPT??? Maybe I can be "ahead of the pack".)
18:01:37 <elliott> Is there some kind of hack you can do to get Windows booting from GPT?
18:01:39 <pikhq_> I'm still on an LVM setup.
18:01:44 <elliott> Some kind of chainloading nonsense or the like.
18:02:13 <elliott> (Also will this break /dev/sda2 and the like? I remember those having different names on OS X, which uses GPT.)
18:02:30 <pikhq_> Uh, no, pretty sure Windows only supports booting from GPT if booted from UEFI...
18:04:08 <pikhq_> It shouldn't. Linux's partition numbering is not based in DOS partitioning, but rather its generic partition handling code. Aside from that low level bit in the kernel, GPT is indistinct from all other partition formats.
18:04:41 <pikhq_> Including BSD disklabels, classic Mac OS partitions, and anything else anyone was crazy enough to implement.
18:05:18 <elliott> I would sort of like to not totally lock myself out of booting Windows.
18:05:24 <elliott> Though I suppose I'm not likely to actually do so.
18:05:29 <elliott> Is there a way to convert GPT back to MBR? :p
18:07:15 <pikhq_> You could create a "hybrid MBR"...
18:07:23 <elliott> Is that like what Boot Camp does on OS X?
18:07:25 <zzo38> FreeDOS boots much faster
18:07:25 <lambdabot> zzo38: You have 7 new messages. '/msg lambdabot @messages' to read them.
18:07:30 <elliott> It makes an MBR and synchronises that with the GPT or something.
18:07:33 <elliott> Is that well-supported on Linux?
18:07:36 <lambdabot> zzo38: You have 7 new messages. '/msg lambdabot @messages' to read them.
18:07:39 <lambdabot> Sgeo said 1m 8d 51m 9s ago: Now you have a message.
18:07:39 <lambdabot> oerjan said 3h 32m 48s ago: <zzo38> I think the DotFami mapper codes actually form a idempotent commutative monoid, rather than just being a monoid. <-- i think an idempotent commutative monoid may
18:07:39 <lambdabot> oerjan said 3h 31m 42s ago: *may be
18:07:39 <lambdabot> oerjan said 3h 28m 48s ago: <zzo38> Does the Haskell compiler know that equality is reflexive? <-- it actually isn't, for Double (NaN)
18:07:41 <lambdabot> oerjan said 3h 23m 38s ago: Actually, a it's a semilattice with a bottom element (the mempty).
18:07:45 <lambdabot> oerjan said 3h 21m 3s ago: From wikipedia: "A bounded semilattice is an idempotent commutative monoid."
18:07:47 <elliott> All I remember is it is sort of a pain when they get out of sync.
18:08:30 <pikhq_> Linux appears to be fussy if the first partition on disk is not EFI.
18:09:22 <pikhq_> Actually, yeah. As part of its GPT support it needs the first partition to be an EFI partition.
18:09:38 <pikhq_> However, if that's the case it'll just ignore the DOS partitions.
18:09:44 <elliott> (I assume that doesn't mean I have to run EFI?)
18:09:56 <pikhq_> It doesn't mean that at all.
18:10:04 <pikhq_> That's just the partition EFI would read from if it existed.
18:10:36 -!- atriq has joined.
18:11:50 <pikhq_> And Windows will gleefully ignore the GPT partitions.
18:13:21 <pikhq_> Hahah. And FreeBSD has the best hybrid MBR support possible.
18:13:39 <pikhq_> Faced with a hybrid setup, it parses both the GPT and classic partition headers.
18:13:46 <pikhq_> And you get device files for both.
18:14:06 <elliott> that sounds bad if they are duplicates
18:14:21 <pikhq_> It also has logic preventing badness.
18:14:40 <FreeFull> pikhq_: Why doesn't Linux do that?
18:15:02 <pikhq_> Because Linux's partition numbering scheme doesn't quite handle that case well.
18:15:27 <pikhq_> /dev/sdaN doesn't work nicely for parallel partition numbers
18:15:50 <pikhq_> /dev/da0pN and /dev/da0sN does, though.
18:18:09 <atriq> I am REALLY bad at coming up with names
18:18:40 <FreeFull> pikhq_: Couldn't it just use more numbers
18:19:07 <pikhq_> FreeFull: Still doesn't quite seem right. Some of those numbers will refer to the same blocks.
18:19:25 <elliott> pikhq_: Do you know of a login manager that doesn't depend on ConsoleKit?
18:19:33 <elliott> Login manager. I mean display manager thing.
18:20:14 <pikhq_> I don't think LXDE does.
18:20:50 <elliott> I... guess I could use XDM.
18:20:58 -!- elliott has quit (Remote host closed the connection).
18:24:09 -!- elliott has joined.
18:24:16 <elliott> pikhq_: You use systemd, right?
18:24:40 <pikhq_> I use stock init ATM, at one point I'd like to distro-like-crazy and use runit.
18:25:18 <elliott> pikhq_: Can you start using systemd so I can ask questions about it? :p
18:25:53 <pikhq_> I'd rather not. I'm not much of a Lennart fan. :P
18:26:13 <pikhq_> (to fix problems with pulseaudio, do: apt-get remove pulseaudio )
18:26:24 <coppro> pikhq_: I prefer purge
18:26:36 <coppro> pikhq_: Also, I'm not entirely convinced that doing that won't fix problems even if pulseaudio isn't installed
18:26:56 <elliott> pikhq_: I don't like PulseAudio, but systemd is quite nice.
18:27:14 <elliott> IIRC runit doesn't actually work properly as PID 1?
18:27:55 -!- monqy has joined.
18:27:58 <elliott> FreeFull: Do you happen to use Arch also?
18:29:02 <pikhq_> elliott: Yeah, but PID 1 does not need to do much.
18:29:29 <elliott> FreeFull: Do you happen to know if I still need "fsck" in the HOOKS list in /etc/mkinitcpio.conf if I'm using systemd, since it seems to run its own systemd-fsck thing by itself? (Although it also seems to only run it on /dev/sda1, which might have something to do with /dev/sda2 being JFS...)
18:29:47 -!- ogrom has quit (Quit: Left).
18:30:01 <pikhq_> http://sprunge.us/QAQe That does everything init needs to do.
18:30:04 <elliott> FreeFull: Well, you were almost useful :P
18:30:04 <FreeFull> elliott: Tried asking in #archlinux?
18:30:16 <elliott> pikhq_: Well, no, but I don't like the idea of having an /etc/rc.start or whatever that "just" sets up filesystems and the network and so on... those can fit perfectly fine into a dependency-ish system like systemd does.
18:30:44 <elliott> FreeFull: I probably should, yes. But I'll try floundering about messing with it for a bit more first.
18:30:58 <pikhq_> for(;;) wait(&status); is all PID 1 does for the rest of the system run, FWIW.
18:31:16 -!- copumpkin has quit (Ping timeout: 248 seconds).
18:31:31 <elliott> Still, you have an /etc/rc there which is the real problem.
18:31:52 -!- copumpkin has joined.
18:31:54 <pikhq_> elliott: Ideally, perhaps. But systemd's approach appears to be "shove everything into a single process that, if it fails, crashes the *entire system*"...
18:32:12 <elliott> pikhq_: That, uh, applies to every PID 1.
18:32:27 <pikhq_> Hence why PID 1 should be for(;;) wait(&status);
18:32:34 <pikhq_> Nearly impossible to crash.
18:32:45 <pikhq_> If it does crash, your system is already FUBAR'd.
18:32:57 <elliott> monqy: What's *your* opinion on this?
18:33:18 <pikhq_> I'd love for a better dependency-based boot scheme though.
18:33:26 <pikhq_> I just don't feel systemd is the correct approach.
18:33:47 <pikhq_> It does *resemble* the correct approach, but still...
18:34:24 <elliott> pikhq_: Well it's less maintenance than having to manually fiddle about with a monolithic /etc/rc, even if it's theoretically less stable in the worst case.
18:35:28 <monqy> hi opinion on what
18:35:54 <elliott> monqy: I was hoping to trick you again.
18:36:13 <pikhq_> I've also got issues with PID 1 dbus.
18:37:30 <elliott> monqy: Tsk yourself, I've been too busy living in the future.
18:38:31 -!- sirdancealot has quit (Read error: Connection reset by peer).
18:38:35 -!- atriq has quit (Quit: Leaving).
18:38:58 <pikhq_> I've also got this weird thing where I want everything using *less* code... I mean, I find zlib offensive.
18:39:49 <elliott> monqy: I'm so far in the future that /etc/rc.conf stopped existing :'(
18:40:10 -!- sirdancealot7 has joined.
18:42:51 <monqy> i still have /etc/rc.conf but all that's in it is the DAEMONS array
18:43:40 <elliott> monqy: I don't even have that!!
18:43:43 <elliott> My /etc/inittab also disappeared.
18:46:15 <elliott> monqy: Also I can do fancy things like this!! http://sprunge.us/gSGG you can't see it there but "active (running)" is green
18:48:00 -!- jiella_ has joined.
18:49:22 -!- elliott has quit (Remote host closed the connection).
18:49:31 -!- jiella has quit (Ping timeout: 260 seconds).
18:54:37 -!- elliott has joined.
18:55:57 <elliott> pikhq_: OK well do you use GRUB 2
19:04:07 <elliott> Do you know how to get it to skip the menu and just boot up in three seconds unless I press ESC? I've tried setting up the hidden menu stuff, but it ends up doing the countdown, and *then* showing the menu once the countdown expires.
19:06:24 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
19:08:39 <elliott> fizzie: Also do you still use that crazy dzen2 dbus thing?
19:12:59 <fizzie> elliott: Regarding the earlier, I plead the saunath of not answering.
19:13:16 <fizzie> But people dual-boot Windows on systems with a dual GPT + MBR-emulation setup.
19:13:24 <fizzie> It's a bit arguable whether that makes any sense.
19:13:32 <fizzie> Regarding the latter, yes.
19:14:54 <fizzie> Everyone keeps saying I should adopt the XMonad view of there being a single set of workspaces shared between the monitors, but I'm just so stuck with this IndependentScreens thing.
19:15:11 <fizzie> (Okay, "everyone" here means like one person who wasn't even talking to me. But still.)
19:19:20 <fizzie> "The latest versions [of caesium clocks] are accurate to better than 1 part in 10^15, which means they would be off by about 2 seconds since the extinction of the dinosaurs 65 million years ago --" two seconds?!
19:19:33 -!- ogrom has joined.
19:23:09 <elliott> fizzie: Why does passing -fn '-*-terminus-medium-r-*-*-20-*-*-*-*-*-*-*' do the wrong thing? :(
19:23:20 <elliott> It shows me DejaVu Sans at 20 pixels or whatever.
19:24:13 <fizzie> I don't know, but I've been having really stupid problems with dzen2 compiled to support xft when trying to use the usual X logical font descriptors like that.
19:24:27 <fizzie> I blame fontconfig. It might not be its fault, but I still blame it somehow.
19:24:57 <fizzie> (When you compile dzen2 to "support Xft", it actually uses Xft for everything. In *theory*, it should be possible to use bitmap fonts and XLFDs, but...)
19:25:08 <elliott> Terminus:pixelsize=20 does the same thing.
19:25:20 <fizzie> If you're going to be using '-*-terminus-medium-r-*-*-20-*-*-*-*-*-*-*' exclusively, there's an easy fix of just compiling it without Xft support.
19:25:36 <fizzie> Ubuntu for example has a default fontconfig file hidden deep in /etc that disables all pixel fonts.
19:25:53 <fizzie> /etc/fonts/conf.d/70-no-bitmaps.conf that is.
19:26:08 <elliott> <fizzie> If you're going to be using '-*-terminus-medium-r-*-*-20-*-*-*-*-*-*-*' exclusively, there's an easy fix of just compiling it without Xft support.
19:26:14 <elliott> The "easy fix" involving "not using the standard Arch binary package for it".
19:26:37 <elliott> I do have some somewhat suspicious 29-replace-bitmap-fonts.conf and 70-no-bitmaps.conf files.
19:27:09 <elliott> Hokay, unlinking the latter has helped.
19:27:17 <fizzie> Yeah. It's possible to per-user "undo" those by suitable configuration in ~/...whateveritwas, but fontconfig configuration is such pain.
19:27:19 <elliott> Now dzen2 uses some really shockingly beyond-belief godawful font by default.
19:27:47 <fizzie> I'm just using scalable fonts these days. *shame*
19:27:49 <elliott> fizzie: Feel my pain: http://i.imgur.com/mgTSb.png
19:27:59 <elliott> Well, I don't mind scalable fonts, of course.
19:28:02 <fizzie> I think I've seen that thing.
19:28:03 <elliott> The Terminus thing is a long story.
19:28:09 -!- atriq has joined.
19:29:09 <fizzie> I used the SunOS console font for a while on some moderately-high-DPI screen.
19:29:25 -!- Phantom_Hoover has joined.
19:29:25 <fizzie> I don't think it had a very good Unicode support though.
19:30:16 <fizzie> I do wonder if that open-source Source Code from Adobe is any good at my point sizes and resomolutions.
19:30:49 <elliott> fizzie: Is there, uh, a nice way to get dzen2 to start at the bottom?
19:30:58 <elliott> Also I don't like Source Code; it's way too wide and not tall enough.
19:31:52 <fizzie> Maybe not a "nice way"; it has -x -y -w -h parameters, but you'd need to do some math for "bottom".
19:32:27 <fizzie> The sort of complicated math of y=screenheight-barheight.
19:33:12 <elliott> fizzie: Alsoalso what was that thing you needed to do to align text rightmost in new dzen2?
19:33:27 <fizzie> I'll grep for it, I can't remember ever.
19:34:12 <fizzie> <fizzie> There's an undocumented "make a fixed-width block of left/middle/right-aligned text" command ^ba -- sorta-described at http://dzen.geekmode.org/dwiki/doku.php?id=dzen:mainindex and not included (I believe) in the dzen2-0.8.5 stable version -- that can help. Then again, it might not; it's strictly fixed-width.
19:34:24 <fizzie> I don't know what source the Arch version uses.
19:35:20 <fizzie> I'm not entirely sure the example is right and not missing an underscore for the alignment specifier. But maybe it is.
19:35:51 <fizzie> else if(!strcmp(buf, "_RIGHT"))
19:35:55 <elliott> Is there an xmonad helper function thingy that just runs a shell line and returns the output? ISTR there is.
19:35:56 <fizzie> That does look a bit _ey.
19:37:46 <fizzie> XMonad.Util.Run has some helpers. I don't see exactly that there, maybe it was somewhere else.
19:39:10 <fizzie> I think System.Process might have something reasonably usable non-XMonad-specific too. Like readProcess.
19:39:27 <fizzie> "readProcess forks an external process, reads its standard output strictly, blocking until the process terminates, and returns the output string."
19:40:34 <elliott> Hmm, there's spawn :: MonadIO m => String -> m () in XMonad.Core.
19:45:04 <fizzie> elliott: Oh, right, XMonad.Util.Run has a runProcessWithInput.
19:45:17 <fizzie> elliott: I skipped it because of the name, but it also returns the output, and you can just give "" as the input.
19:46:05 <fizzie> It's :: MonadIO m => FilePath -> [String] -> String -> m String so it should work in IO or X or so on.
19:48:20 <elliott> Oh, logCmd "date +'%H:%M'" works for my purposes.
19:49:36 <elliott> Though apparently it... only updates when you switch workspaces.
19:50:50 <fizzie> The logHook should be called every time you switch focus, too.
19:51:06 <fizzie> But not really much more oftener than that.
19:54:16 -!- sebbu- has joined.
19:54:30 <fizzie> I get these "dhclient: Discarding packet with bogus hlen."s nowadays.
19:55:18 -!- Deewiant has quit (*.net *.split).
19:55:18 -!- sebbu has quit (*.net *.split).
19:55:19 -!- zzo38 has quit (*.net *.split).
19:55:19 -!- pikhq_ has quit (*.net *.split).
19:55:19 -!- EgoBot has quit (*.net *.split).
19:55:19 -!- mroman has quit (*.net *.split).
19:56:13 -!- zzo38 has joined.
19:56:14 -!- pikhq_ has joined.
19:56:14 -!- EgoBot has joined.
19:56:14 -!- mroman has joined.
19:56:43 <elliott> Hmm, I can't figure out what the width should be to have this work properly.
19:56:50 <elliott> This is a very silly thing.
19:57:05 <elliott> fizzie: (Do you know of any way to get it called more cmmonly?)
19:57:13 <elliott> I guess I might have to use your dbus thing if I want a clock and things.
19:57:23 <atriq> EgoBot is on a different server to Gregor and HackEgo?
19:58:23 <Gregor> Being connected to a different server isn't very interesting, the server you get connected to is more or less random.
19:58:27 <fizzie> elliott: I think generally speaking "most people" use xmobar; it's got widgets like clocks in addition to the xmonad-reading bits.
19:58:32 <atriq> Apparently there was both a Homestuck meetup and a Hetalia meetup in Newcastle together
19:59:47 <elliott> fizzie: I can't use xmobar because of shachaf.
20:00:20 -!- Nisstyre-laptop has quit (Remote host closed the connection).
20:01:43 <fizzie> elliott: Well, the dzen2 minority then use different kinds of "multiplexing" scripts, I believe.
20:02:27 <fizzie> dmplex has some kind of official status.
20:02:38 <fizzie> In that it's at the dzen site and so on.
20:02:56 -!- Nisstyre-laptop has joined.
20:02:57 <fizzie> http://dzen.geekmode.org/dwiki/doku.php?id=dzen:multiplexer has a link.
20:03:02 <fizzie> I haven't used it at all.
20:03:59 <elliott> Does it really use a named pipe.
20:04:33 <fizzie> Well. It reads from the standard input. But the example setup does seem to use one.
20:04:59 <fizzie> I don't know, I've got that stupid dbus thing. And I don't have a clock anyway.
20:05:45 <fizzie> XMonad has timers -- well, XMonad.Util.Timer does -- and some real xmonad person would probably know some kind of a hack that'd make it call the logHook when one fires.
20:06:08 -!- oerjan has joined.
20:07:35 -!- Deewiant has joined.
20:14:00 <atriq> lifthrasiir, are you following the League of Legends world championship
20:17:08 <atriq> Phantom_Hoover, are you?
20:22:13 <ion> I forgot a ventilation window open while i was away. Some temperatures and the PC clock’s offset to GPS time from the same period: (yeah, all the things run too hot, i haven’t got around to doing something about the ventilation) http://heh.fi/collectd/img/temperature http://heh.fi/collectd/img/time-offset-gps
20:24:18 <oerjan> ion: that's disappointing, i was assuming you had discovered a temperature correction to relativity
20:32:30 <oerjan> `learn Scotland is a country in northern Britain. It is known for having no true inhabitants.
20:32:58 <atriq> `learn Scotland is a country in northern Britain. It is known for having no true inhabitants. Phantom_Hoover looks after the FREEDOM.
20:33:14 <atriq> `learn Scotland is a country in northern Britain. It is known for having no true inhabitants. Phantom_Hoover looks after the FREEDOM.
20:34:09 <FreeFull> England is where the crumpets live
20:34:45 <oerjan> `learn England is a country in southern Britain, with capital Hexham. The people there are all punctuation fascists. ais523 looks after the Turing machines.
20:35:33 <HackEgo> England is a country in southern Britain, with capital Hexham. The people there are all punctuation fascists. ais523 looks after the Turing machines.
20:36:14 <HackEgo> wisdom/endofunctor \ wisdom/england
20:36:29 -!- sebbu- has changed nick to sebbu.
20:36:29 -!- sebbu has quit (Changing host).
20:36:29 -!- sebbu has joined.
20:38:03 <HackEgo> ls: cannot access wisdow/en*: No such file or directory
20:39:11 <HackEgo> Scotland is a country in northern Britain. It is known for having no true inhabitants. Phantom_Hoover looks after the FREEDOM.
20:39:43 <oerjan> `learn Scotland is a country in northern Britain. It is known for having no true inhabitants. The official religion is hatheism. Phantom_Hoover looks after the FREEDOM.
20:40:17 <oerjan> `learn England is [EXPUNGED].
20:40:24 <FreeFull> `run echo "I like pie" >> wisdom/pie
20:40:44 <FreeFull> `run echo "I like pie" >> wisdom/pie
20:41:09 <fizzie> fungot: Do you like position-independent executables?
20:41:11 <fungot> fizzie: and resource files as ascii have the same feelings, too. i'm pretty sure you'd just use fnord in load or on the author's part, mostly. direct to-c translation, no gc ( iirc) from the console
20:43:15 <oerjan> `learn pi is a very round number.
20:43:38 <oerjan> `learn pi is a very round number.
20:44:37 <HackEgo> Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian.
20:45:20 <oerjan> `learn FreeFull is either full of freedom or free of fulldom, we are not sure.
20:45:59 <FreeFull> `run echo -ne "F\rr\re\reFull likes messing around way too much" >> wisdom/FreeFull
20:46:11 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure.
20:46:26 <zzo38> Can you make a hardware description language based only on multiplexers? There is a esolang software programming language Muxcomp which is design of a computer based only on multiplexers.
20:46:28 <FreeFull> `run echo -ne "F\rr\re\reFull likes messing around way too much" >> wisdom/freefull
20:46:41 <HackEgo> FreeFull is either full of freedom or free of fulldom, we are not sure. \ F.r.e.eFull likes messing around way too much
20:47:09 <nortti> :P http://thedailywtf.com/Articles/Known-Bad-Code.aspx
20:53:58 <atriq> I'm in a Skype group call with someone who's asleep
20:54:25 <atriq> She was whimpering
20:54:32 <atriq> She's woken up again, thoguh
20:55:03 <atriq> She's asleep agaiN!
20:55:26 <atriq> Started apologizing
20:56:17 <Arc_Koen> so imagine I'm programming in C; I create a string with char *p = malloc(strlen(s) * sizeof(char)); and later I make this string shorter (possibly much shorter), can I do something like free(p+k+1); where k is the new length?
20:56:43 <atriq> Okay, apparently she's got a head injury and blacks out from time to time
20:56:57 <atriq> Doctor says it's either gonna last a month or it's permanent
20:56:57 <fizzie> Arc_Koen: No, but you can call realloc on it.
20:57:14 <fizzie> It's not guaranteed to actually free up any storage, of course.
20:57:19 <olsner> Arc_Koen: sizeof(char) is 1, and you're forgetting to allocate a byte for the null
20:57:44 <Arc_Koen> olsner: the null already is in s
20:57:51 <fizzie> Arc_Koen: But not counted by strlen.
20:58:15 <fizzie> If doing realloc, remember that it's also allowed to move the string, invalidating any other copies of the pointer you might have lying around.
20:58:21 <fizzie> Well, undefined behaviour is allowed to work.
20:58:28 <fizzie> Quite often allocation isn't all that exact anyway.
20:59:13 -!- ais523 has joined.
20:59:59 <oerjan> ais523: elliott is evil, he censored my reveals of english secrets!
21:01:14 <Arc_Koen> fizzie: I have no idea what I'd use realloc for; I only wanted to free the remaining of the string because my paranoid aspy told me placing a new '\0' in the middle of the string would cause the remaining to be lost forever
21:01:32 <elliott> "free the remaining of the string" makes no sense
21:01:56 <Arc_Koen> elliott: well imagine I use malloc to get a string of 1000 characters
21:02:09 <elliott> I know what you mean, but it makes no sense.
21:02:11 <fizzie> Arc_Koen: "free the remaining of the string" is what you could do with realloc; resize the block of memory to fit exactly the new string.
21:02:23 <Arc_Koen> and then I decide only the first 10 are relevant, so I place a '\0' after the tenth character
21:02:24 <fizzie> Arc_Koen: But if you're not worried about memory consumption, there's really no reason to do it.
21:02:31 <olsner> placing a magic value in the middle of a string will indeed have magic effects on the rest of the string
21:02:48 <fizzie> Arc_Koen: If you free(p) it will free what was allocated, and doesn't care about the contents of those bytes.
21:03:08 <Arc_Koen> fizzie: that's why I wanted to free(p+k+1)
21:03:39 <fizzie> Arc_Koen: Uh. I'm not quite getting it.
21:03:56 <fizzie> Arc_Koen: You can't free p+k+1, because it is not a thing that was allocated by malloc.
21:04:01 -!- ogrom has quit (Quit: Left).
21:04:02 <elliott> fizzie: If you do p[10] = 0 to truncate a string then Arc_Koen is saying free(&p[11]).
21:04:08 <elliott> (But that's not how allocation works.)
21:04:13 <elliott> fizzie: Hey, what border widths and colours do you use in xmonad??
21:04:38 <FreeFull> free can only take the exact pointer that's returned by malloc
21:04:39 <fizzie> elliott: Yes, I got that much. But I just explained that free(p) will free all of p even if you put a 0 in there, so it felt somehow incongruous to get an answer of "that's why I want to free the trailing part".
21:04:55 <fizzie> FreeFull: Also one that was returned by realloc.
21:05:00 <elliott> FreeFull: free can also take NULL IIRC.
21:05:21 <FreeFull> If it gets NULL, it just returns successfully
21:05:27 <Arc_Koen> so, about that +1 I forgot in the malloc (for the null character), the fact that the program still worked well without it, does it mean it happened to have placed that '\0' on a not-free byte without causing a segfault?
21:05:31 <fizzie> FreeFull: realloc(NULL, 42); is equivalent to malloc(42); and then you can later free that pointer.
21:05:45 <olsner> yeah, free on NULL is a no-op ... lots of people miss that and add one or more layers of null checks just because
21:05:50 <FreeFull> Well, not necessarily, but it is possible
21:05:59 <fizzie> elliott: I'm using a border width of 1 and colors that I don't think I have configured. It's some kind of a grey for non-focus, red for focus.
21:06:23 <Arc_Koen> so I just destroyed a char from my computer? I thought that was what segfaults were supposed to prevent!
21:06:28 <FreeFull> fizzie: Anything not allocated by the C *alloc functions then =P
21:06:33 <fizzie> Arc_Koen: It's also possible that malloc for some reason returned a bit more than what you asked for, and the byte was in fact free.
21:06:52 <kmc> Arc_Koen: segfaults are caused by going onto an unmapped page of memory
21:07:01 <kmc> pages are fairly coarse-grained units, typically 4kB or more
21:07:17 <kmc> they are nowhere near exact bounds checking
21:07:56 <fizzie> FreeFull: I was going to be all "and then in C11 there's aligned_alloc" on you but your wildcard matches that too. :/
21:08:11 <elliott> Arc_Koen: FSVO "destroyed".
21:08:23 <elliott> Arc_Koen: All you did was overwrite memory you weren't supposed to have btu were given anyway.
21:08:31 <elliott> Arc_Koen: Nobody else was affected, just you.
21:08:54 <Arc_Koen> ok, so I did not overwrite a byte I wasn't given? great :)
21:09:04 <olsner> there are only so many bits in the world, and every run of this program has destroyed 8 of them
21:09:12 <FreeFull> Arc_Koen: Depends on how big the string is
21:09:28 <fizzie> Arc_Koen: Well, you overwrote a byte that you owned. It might have been part of some other string in your process, but not part of any other process.
21:09:50 <FreeFull> If the strlen happens to match the alignment, then the \0 will overwrite something else
21:10:02 <elliott> (As far as C is concerned you were trespassing.)
21:11:04 <fizzie> Yes, it's certainly not a thing to do, and can be fatal to the program itself.
21:12:01 <oerjan> FreeFull: your allocation is probably rounded up at least to the nearest multiple of 4 or 8 (the alignment)
21:12:58 <Arc_Koen> well I switched to strncpy that should shut down the paranoia for now
21:13:17 <oerjan> and malloc might want to use even larger blocks to avoid fragmentation? i don't actually know whether it does.
21:13:56 <olsner> there are many mallocs, each making different tradeoffs
21:14:35 <elliott> pikhq_: I forget, did I ask you about that GRUB 2 menu thing?
21:15:36 <oerjan> <olsner> there are only so many bits in the world, and every run of this program has destroyed 8 of them <-- 2nd law says that's approximately true
21:16:10 <olsner> yeah, I somewhat failed to not make sense there
21:17:07 <oerjan> unless his program was reversible, of course.
21:17:16 <fizzie> Arc_Koen: strncpy is a function that's somewhat hard to use right, FWIW. It's somewhat sad that strncpy is not to strcpy what e.g. strncat is to strcat.
21:18:44 <Arc_Koen> unsigned int p_length = strlen(argv[1]); char *p = malloc((p_length + 1) * sizeof(char)); strncpy(p, argv[1], p_length);
21:19:16 <olsner> meh, use memcpy with p_length+1 instead
21:19:21 <Arc_Koen> I've never used strcat before so i'm not sure how I should feel about strncpy
21:19:29 <olsner> this is one of the cases where you know exactly how much to copy
21:19:38 <kmc> apparently to get gstreamer faac support i have to apt-get install gstreamer0.10-plugins-really-bad
21:20:07 <kmc> you know it is very important to respect software patents while transcoding illegally acquired copyrighted TV shows
21:20:23 <fizzie> Arc_Koen: Well, that's safe. But it's easy to forget \0s at the end of strings with strncpy; and when it's done safely like that, it's often still needlessly inefficient because if the source string is shorter, it will still pad the whole destination with \0s.
21:20:37 <fizzie> Arc_Koen: Oh, and yes, s/safe/unsafe/
21:20:50 <fizzie> Arc_Koen: Since it doesn't put the \0 there. You've just left a space for it.
21:21:01 <fizzie> If you follow it with a p[p_length] = 0 it's safe.
21:21:28 <fizzie> Arc_Koen: That's what strncpy does. It writes up to 'len' bytes, and if the source string is that long (or longer) the destination won't contain a \0.
21:21:42 <Arc_Koen> so I should've, like, used "strncpy(p, argv[1], p_length+1);" ??
21:21:44 <olsner> is there any case where you really want to zero out the rest of the buffer?
21:22:17 <Arc_Koen> so that strncpy would say "oh look, argv[1] is one byte too short, let's put an extra '\0'"
21:22:26 <fizzie> Arc_Koen: Well, that would've been safe, but in general no, because that won't put a \0 in the buffer if the source string is longer.
21:22:30 <fizzie> 00:21 <fizzie> ,cc char *s = "alongstringhere"; char buf[4] = {1,2,3,4}; strncpy(buf, s, (sizeof buf) - 1); printf("is there a null byte in buf? %d %d %d %d...", buf[0], buf[1], buf[2], buf[3]);
21:22:34 <fizzie> 00:21 <candide> fizzie: is there a null byte in buf? 97 108 111 4...
21:22:59 <fizzie> If you call the above with "sizeof buf" without the - 1, you'll get "alon" in the characters and still no \0.
21:23:06 <fizzie> That's why it's such a sucky function.
21:23:35 <fizzie> I second olsner's suggestion of using memcpy of p_length+1 since you really do want an exact copy of the original.
21:23:45 <fizzie> (Or 'strdup' if you can live with its unportability, I suppose.)
21:23:53 <fizzie> (It does both the allocation and copying.)
21:24:14 <fizzie> olsner: It's not standard C.
21:24:16 <Arc_Koen> unsigned int p_length = strlen(argv[1]); char *p = malloc((p_length + 1) * sizeof(char)); memcpy(p, argv[1], p_length + 1);
21:24:40 <olsner> ah, it appears to be posix not c
21:24:43 <fizzie> olsner: So I suppose that depends on what "portable" means. It's certainly POSIX and common elsewhere too.
21:25:15 <fizzie> Arc_Koen: that looks well and proper. Though I'd drop the sizeof(char).
21:25:35 <Arc_Koen> I thought that was something I should always write
21:25:50 <fizzie> Arc_Koen: It's by definition 1. "sizeof" of anything else is measured in terms of how many 'char's there are in it.
21:25:59 <olsner> sizeof(char) is something you should never write :)
21:26:14 <fizzie> I'm sure there are some people that will still argue for it.
21:26:29 <fizzie> Like, "if you change the array type then you'll remember the sizeof multiplication when it was there already".
21:26:45 <fizzie> Though those people would have you writing char *p = malloc((p_length + 1) * sizeof *p) instead.
21:26:54 <fizzie> (Which is I guess fair enough.)
21:27:05 <Arc_Koen> what if I decide to replace all occurrences of "chat" with "int"
21:27:14 <Arc_Koen> (that's the kind of dumb things I do)
21:27:28 <FreeFull> Oh yeah, I will change my string array to be an array of cake_t instead!
21:28:20 <kmc> what's wrong with transcoding elliott
21:29:00 <kmc> yes there is a quality loss but in this case i am scaling down by 40% so i think there's more quality loss there ;P
21:29:04 <fizzie> It's borderline possible that someone might go along changing things to wchar_t's (or char32_t's or something) and also the string literals and forget to fix the allocation. But still.
21:29:39 <kmc> phone won't play 720p h264 :/
21:29:54 <kmc> and the screen is only 800x480 anyway ;P
21:29:57 <zzo38> - COMING IN 1991 - NEVADA SMITH IN... "JOURNEY TO THE CENTER OF THE EARTH" GEORGE BROUSSARD - AUTHOR
21:30:15 <zzo38> I don't know if the game referenced was actually made.
21:30:40 <elliott> kmc: Watching things on phones is weird.
21:31:39 <fizzie> "Things on phones" is probably some kind of fetish site.
21:31:56 <atriq> Now she's softly calling out for Kankri
21:31:58 <fizzie> There's things like pictures of a brick on top of a phone there.
21:32:08 <fizzie> atriq: What's a "Kankri"?
21:33:05 <elliott> fizzie: I don't suppose you happen to use GRUB 2 with menu-hidey options?
21:33:25 <fizzie> atriq: Oh, never mind; I found out already. "Kankri is a village development committee in Rukum District in the Rapti Zone of western Nepal. At the time of the 1991 Nepal census it had a population of 4210 people living in 851 individual households."
21:33:32 <fizzie> Weird thing to call out for, though.
21:33:56 <atriq> fizzie, I believe she's referring to the Homestuck character
21:34:06 <kmc> https://help.ubuntu.com/community/AndroidVideoEncoding#MPEG4_.28standard.29_encoding this person's ffmpeg options seem highly suspect
21:34:30 <fizzie> Phantom_Hoover: Very much a negative.
21:34:42 <Phantom_Hoover> atriq appears to be listening to some sort of homestuck erotica
21:34:56 <Phantom_Hoover> out of character for him, but perhaps it has satellite appeals
21:34:59 <atriq> One of my friends suffers from a head injury
21:35:07 <atriq> This leads her to black out from time to time
21:35:46 <atriq> I'm in a group Skype call with her, and she's been blacking out a lot
21:36:22 <olsner> that sounds somewhat serious
21:36:24 <fizzie> Phantom_Hoover: I think I'm somewhere like end of act 5.
21:36:35 <fizzie> Phantom_Hoover: So about 1200 pages behind.
21:36:35 <atriq> Apparently Kankri refers to her boyfriend, who cosplays Kankri
21:37:03 <atriq> She's seen a doctor and there's nothing they can do
21:37:09 -!- elliott has left ("Leaving").
21:37:31 <fizzie> Phantom_Hoover: But I'll catch up any day now.
21:37:35 <olsner> what, they can at least guess a little and prescribe some drugs
21:37:35 -!- monqy has left.
21:37:47 <olsner> something antiepileptic perhaps?
21:37:56 <atriq> Slammed into a locker by a chav
21:38:40 <atriq> There's only about 3 readers of Homestuck in Hexham
21:38:54 <atriq> You're in Coventry. Coventry's practically France. You're safe.
21:40:21 <fizzie> There was someone knifed about 400 metres from here a while ago.
21:40:38 <atriq> There was someone hammered to death in Hexham last year
21:41:37 <Arc_Koen> switch statements in C don't need a default: condition, right?
21:42:05 <FreeFull> Arc_Koen: I think if you don't supply a default, it just does nothing for that case
21:42:40 <Arc_Koen> that's what I thought to and it worked; then I thought "maybe it does need it" so I added one and it crashed
21:43:09 <Arc_Koen> (that is, "default: }" caused a syntax error)
21:43:14 <atriq> Mainly because she, due to the head injury, forgot which chav it was.
21:43:33 <fizzie> Arc_Koen: That's because a label needs to point to a statement.
21:43:41 <fizzie> Arc_Koen: "default: ; }" would be legal, if useless.
21:43:53 <fizzie> Arc_Koen: (If there is no matching case and no default, the switch body is just skipped.)
21:44:42 <kmc> cocaine's a hell of a drug
21:44:56 <fizzie> FreeFull: Well, that's also legal and also useless.
21:45:09 <FreeFull> Did you know S-Lang allows you to supply a number to break, so you can break out of nested loops
21:46:01 <fizzie> FreeFull: Did you know Perl allows you to supply a label to break, so you can break out of a particularly labeled enclosing loop?
21:46:17 <fizzie> There was something else with a numeric multilevel break, too.
21:46:38 <fizzie> "break accepts an optional numeric argument which tells it how many nested enclosing structures are to be broken out of."
21:46:46 <fizzie> Probably others too, of course.
21:47:35 <fizzie> (Okay, in Perl's case it's "last" and not "break", but anyway.)
21:47:44 <FreeFull> fizzie: a goto is C's labelled break =P
21:48:09 <fizzie> FreeFull: Sure, though the label goes in the other end.
21:48:35 <kmc> yeah, i like perl's labeled break
21:49:04 <fizzie> LOOP: while (...) { ...; last LOOP; ... } vs. while (...) { ...; goto GET_ME_OUT_OF_HERE; ... } GET_ME_OUT_OF_HERE: ...
21:49:47 <kmc> goto is a fine solution except that some programmers will run screaming in horror at any mention of goto
21:49:55 <fizzie> It's CONSIDERED HARMFUL.
21:49:59 <kmc> i know, right?
21:50:30 <kmc> this is because like forty years ago, some propaganda was needed in order to convince programmers to use anything that *isn't* goto
21:50:43 <kmc> back when structured programming was a controversial new idea
21:51:05 <FreeFull> goto is used in the Linux kernel for handling errors
21:51:12 <FreeFull> And it's cleaner than any other C solution
21:51:33 <kmc> and people like hard rules because it absolves them of the need to think
21:51:34 -!- elliott has joined.
21:51:52 <elliott> <elliott> fizzie: I don't suppose you happen to use GRUB 2 with menu-hidey options?
21:52:05 <FreeFull> The one useful hard rule for not writing bad code is "Don't write code, ever"
21:52:06 <kmc> which is why it's "goto is evil!!!!!" and not "goto is sometimes useful but should be avoided generally"
21:52:07 <atriq> elliott, I have significant evidence suggesting that I'm going to play a video game that will destroy the world.
21:52:15 <FreeFull> If you don't write code, you can't write bad code :)
21:52:19 <fizzie> elliott: I'm not sure what options those are.
21:52:30 <kmc> also the teaching of programming updates at a glacial speed compared to actual programming practice
21:52:33 <elliott> fizzie: Well, uh, do you get a menu when you start up GRUB?
21:52:45 <fizzie> elliott: I do. So I suppose I'm not.
21:52:48 <FreeFull> elliott: You always get a menu if you hold shift while grub is loading
21:52:48 <kmc> perhaps in 2012 warning students over the evils of goto should not remain a high priority
21:53:36 <FreeFull> goto is a reserved keyword just so people can't use it
21:53:54 <kmc> yeah instead you use an AbstractSingletonControlFlowProxyFactoryIteratorBeanProxy
21:54:06 <kmc> much cleaner than goto
21:54:31 <fizzie> FreeFull: It does have the labeled break, though.
21:54:52 <fizzie> Similar to Perl's, with a label of the iteration statement to break out from.
21:54:53 <elliott> Multi-level break is just a delimited continuation anyhow.
21:54:58 <elliott> pikhq_: Did I ask you yet, I forget.
21:55:20 <kmc> no it's not
21:55:59 -!- jix has joined.
21:57:29 <kmc> not first class
21:57:50 <kmc> continuations are so general that it's not meaningful to say "foo is just continuations" unless you mean that it's equally powerful
21:58:05 <kmc> every single control flow feature can be described as a limitation of continuations
21:58:08 * elliott objects to the conflation of "continuations" and "delimited continuations".
21:58:13 <elliott> The latter are much more well-behaved.
21:59:20 -!- zzo38 has quit (Remote host closed the connection).
21:59:56 <coppro> what? continuations aren't powerful
22:00:00 <coppro> you can do anything without continuations
22:00:04 <atriq> Phantom_Hoover, quite possibly.
22:00:27 <kmc> coppro pro troll mode
22:00:45 <atriq> One of my internet friends, who reads MS Paint Adventures, has been suffering mysterious blackouts where she remains surprisingly lucid, although significantly more emotional.
22:01:10 -!- elliott has left ("Leaving").
22:01:19 <coppro> atriq: are those two things related?
22:01:51 <atriq> Adding to this is the fact that I have thrown enough money at the Homestuck Vidoe Game kickstarter to receive a physical copy
22:01:52 * oerjan swats coppro for chasing away elliott -----###
22:02:14 <Arc_Koen> is there a shell redirection command similar to | and >, but which redirect as the "argv[1]" of the next command?
22:02:16 <atriq> If you get a copy!
22:02:45 <FreeFull> coppro: I think you need to add "" somewhere
22:03:37 <atriq> Phantom_Hoover, I'm pretty sure you're, if anything, slightly younger than me, and just a victim of the difference between the education system in Scotland and in England and Wales.
22:04:33 <atriq> This seems scarily TemplateHaskell
22:04:34 <FreeFull> Spaces for clarity and not necessary
22:05:09 <Arc_Koen> coppro, FreeFull: I'm not sure what you mean
22:05:38 <atriq> But yes, if we both receive copies of SBurb, I will certainly invite you to my session.
22:05:51 <kmc> $(foo) is the same as the old school `foo`, but nicer syntax which nests properly
22:06:07 <oerjan> Arc_Koen: $( ... ) puts the redirection output as the literal argv[1] string. if you want argv[1] to be a filename containing the output, try <( ... )
22:06:23 <FreeFull> Arc_Koen: rather than foo | bar
22:06:31 <olsner> and nested quoting is a lot less hairy with "$(foo "bar baz")"
22:06:37 <oerjan> (in bash, uses a named pipe)
22:08:47 <kmc> it's not quite a named pipe in bash on linux
22:08:56 <Arc_Koen> so, if sceql is a sceql interpreter and truth-machine.sceql a program in sceql, I can type ./sceql $(cat truth-machine.sceql) and it will work?
22:09:22 <oerjan> oh, "or the /dev/fd method of naming open files"
22:09:57 <kmc> procfs contains files which look like symlinks to nonexistent paths, but you can still open and use them
22:09:58 <olsner> there might be spaces in that sceql file
22:10:01 <kmc> it's weirdness
22:10:14 <oerjan> Arc_Koen: that depends on whether the sceql interpreter takes a program string or a filename as argument
22:10:46 <fizzie> Arc_Koen: There are often also reasonably small limits of how much things you can push through the command line arguments. Like, "four kilobytes" kind of small.
22:10:56 <fizzie> (I don't know how long sceql programs tend to be.)
22:11:47 <fizzie> (POSIX guarantees 4096 characters as the sum total of arguments. Some systems of course are happy with more.)
22:11:54 <Arc_Koen> hmmm well it doesn't seem to work, but that could be because of a bug in the interpreter, or in the sceql program
22:12:11 <kmc> linux had a fun denial of service bug relating to huge command lines
22:12:20 <fizzie> Admittedly, if the interpreter takes a string, there's not much you can do to get around the command line length limit.
22:12:23 <Arc_Koen> olsner: did you just say the spaces in the program file will split it into several arguments?
22:13:19 <Arc_Koen> oh, ' quotes don't work because they take $(...) directly as the string, but " quotes work
22:13:30 <kmc> argv is an array of pointers to strings; they can all point to the same string if you like
22:13:58 <kmc> so userspace can construct a huge command line and pass it to execve
22:14:01 <fizzie> A true bash person would recommend you use ./sceql "$(< truth-machine.sqecl)" instead.
22:14:08 -!- elliott has joined.
22:14:10 <kmc> without actually using much memory in userspace
22:14:13 <fizzie> ("The command substitution $(cat file) can be replaced by the equivalent but faster $(< file).")
22:14:44 <kmc> but the kernel would not realize they are the same string, and so would allocate a huge amount of memory in the new process
22:14:58 <kmc> yes it's important to micro-optimize your shell scripts for speed
22:15:16 <kmc> one time i posted a shell script which used an unnecessary 'cat'
22:15:22 <kmc> it brought shame upon my entire family
22:16:24 <elliott> kmc: I, uh, don't suppose you use GRUB 2.
22:16:37 <ion> $(cat <(cat <(cat <(cat <(cat file)))))
22:17:22 <elliott> Phantom_Hoover: good job concatenating files with that
22:18:42 <fizzie> Someone should inject in all cat binaries a thing that'd collect aggregate statistics on which fraction of cat invocations actually concatenate things.
22:18:58 <ion> % echo $(</etc/timezone </etc/timezone)
22:19:01 <ion> Europe/Helsinki Europe/Helsinki
22:19:12 <ion> % cat </etc/timezone </etc/timezone
22:19:15 <ion> Europe/Helsinki
22:19:17 <ion> Europe/Helsinki
22:19:17 <Arc_Koen> weeeeeeee interpreter works fine now
22:19:27 <FreeFull> < isn't exactly equivalent to cat anyway
22:19:53 <ion> The latter works identically without the “cat”, too.
22:20:10 <ion> freefull: Yeah, e.g. cat -A is useful.
22:20:23 <FreeFull> If you do < somefile on its own
22:20:35 <FreeFull> It won't print that to the terminal
22:22:48 <ion> % </etc/timezone </etc/timezone
22:22:51 <ion> Europe/Helsinki
22:22:53 <ion> Europe/Helsinki
22:25:15 <fizzie> ion: Which shell is this?
22:26:36 <FreeFull> 0 freefull@freefull-hp:~$ </etc/timezone
22:26:58 <fizzie> That's significantly less fancy, too.
22:27:34 <elliott> zsh's behaviour seems less consistent.
22:27:46 <elliott> If the command "defaults" to copying stdin, then ";" should act as "cat".
22:28:03 <ion> My hostnames come from Pan Sonic song names. They tend to be short and kind of interesting.
22:28:45 <FreeFull> Bash doesn't like a ; without a command
22:28:54 <FreeFull> -bash: syntax error near unexpected token `;'
22:29:19 <coppro> "ooh I've got a great idea. Let's make these things called ordinals and cardinals. All cardinals are ordinals, but not the other way around. Let's also call some ordinals 'limit ordinals' and some cardinals 'limit cardinals' all cardinals will be limit ordinals but not all limit ordinals will be cardinals. Limit cardinals will be rare and magical.'
22:29:31 <olsner> maybe I should start naming my computers in welsh
22:30:04 <coppro> "let's go further and call all non-limit ordinals successor ordinals, and all non-limit cardinals successor cardinals. Then all successor cardinals are limit ordinals!"
22:30:59 <FreeFull> Which of the ordinals and cardinals are limit ordinals/cardinals?
22:37:02 <Phantom_Hoover> Let's make these things called ordinals and cardinals. All cardinals are ordinals, but not the other way around.
22:38:22 <FreeFull> Other than cardinals being limit ordinals, which you said
22:39:19 <coppro> Phantom_Hoover: No, it's the confusing terminology which annoys me
22:40:30 <coppro> FreeFull: \aleph_\alpha is a limit cardinal if and only if \alpha is a limit ordinal
22:40:38 <coppro> some authors exclude \aleph_0 from the limit cardinals as well
22:40:51 <coppro> Phantom_Hoover: The use of confusingly similar noun phrases
22:41:04 <coppro> in particular, there are non-limit cardinals that are limit ordinals
22:41:53 <FreeFull> coppro: So is \aleph_(\aleph_0) a limit cardinal?
22:42:13 <Phantom_Hoover> 'limit' depends on the structure of the thing it's applied to
22:45:01 <coppro> Phantom_Hoover: The statement "Is \aleph_1 limit?" is nonsensical
22:45:11 <coppro> The interpretation of limit does not depend on what you apply it to, it depends on context
22:45:31 <coppro> \aleph_{\aleph_\alpha} is a limit cardinal for all ordinals \alpha
22:45:56 <Phantom_Hoover> yes coppro when you can interpret \aleph_1 as a cardinal or ordinal you DO need to specify which kind of limit you're talking about
22:46:07 <coppro> that is what annoys me
22:46:22 <oerjan> i suspect coppro will _really_ hate category theory, then.
22:46:26 <elliott> i don't see the problem here at all
22:46:39 <elliott> why would you assume structural properties cross over between subsets like that
22:46:39 <Phantom_Hoover> is it so great an obstacle to have to add 'cardinal' or 'ordinal' to the end of your question
22:47:01 <oerjan> or topology - whether a set is closed _does_ depend on the surround space.
22:47:32 <coppro> oerjan: actually, I don't have that much of an issue with category theory
22:47:37 <coppro> The issue I have is just that I confuse the two
22:47:48 <coppro> even when the context is provided, sorting things out in my brain is difficult
22:48:05 <coppro> elliott: I don't. It just is annoying to me that I have to expend mental effort to think about the distinction
22:48:57 <Phantom_Hoover> you'd have to think about whether you meant the cardinal or ordinal anyway
22:49:56 <Phantom_Hoover> if you asked "is aleph 1^2 == aleph 1" the answer would be different depending on if you meant the cardinal or ordinal
22:49:59 <oerjan> coppro: when you have two different topologies on the same space, you get the same trouble with limits there too. norm topology vs. weak *-topology comes to mind.
22:50:12 <coppro> oerjan: yeah, topology annoys me
22:50:16 <olsner> elliott: so you all have a welsh accent then? that is awesome
22:50:18 <coppro> Phantom_Hoover: but it would be more intuitive
22:50:35 <coppro> Phantom_Hoover: dude, I'm a math major
22:51:00 <oerjan> coppro the mathsochist
22:53:59 <coppro> Phantom_Hoover: no thanks
22:54:02 <coppro> graph theory is too awesome
22:56:31 <coppro> set theory assignment was easy this week, which is a nice relief
22:56:47 <Sgeo> I want to put dnolen and jimduey in a particle collider and collide them.
23:02:07 <Sgeo> elliott, dnolen wrote a delimited continuations thing for Clojure, and jimduey wrote an actually decent monads implementation for Clojure
23:02:45 <Sgeo> Want to use reset/shift like syntax for using monads, rather than do notation
23:03:13 <elliott> applicative notation can only describe applicatives
23:03:22 <elliott> though of course you only need a syntactic construct for join
23:03:25 <elliott> but then it gets very messy
23:04:08 <Sgeo> A function that takes a value v :: (Monad m => m a) and does v >>= current_continuation
23:05:03 <elliott> that doesn't really make any sense
23:05:08 <elliott> since do notation is precisely a CPS translation
23:05:23 <elliott> anyway going by the first few tweets on https://twitter.com/jimduey I wouldn't wish being collided with him on anyone
23:05:54 <Sgeo> But do notation is possibly an _ugly_ CPS translation
23:06:58 <Sgeo> reset/shift may be prettier
23:07:27 <elliott> <Sgeo> But do notation is possibly an _ugly_ CPS translation
23:07:45 <Sgeo> elliott, it means I think do notation is ugly.
23:08:10 <elliott> do notation is *literally* foo >>= current_continuation
23:08:47 <Sgeo> But it's ugly to use.
23:12:58 <Sgeo> How is reset/join applicative in nature?
23:13:03 <Sgeo> If that's what you're saying
23:13:29 <atriq> Trying to write music
23:13:36 <atriq> I've got a big build-up going
23:13:43 <atriq> But I've got nothing for it to build up to
23:14:40 <elliott> atriq: have it end after the build-up
23:16:14 <Sgeo> I thought <elliott> applicative notation can only describe applicatives was supposed to be an analogy, but now I'm assuming not
23:16:35 <elliott> well you want a nested, rather than linear, notation, yes
23:16:42 <elliott> which sounds like applicative notation to me
23:18:38 <elliott> for instance (| const (putStrLn "hello") (putStrLn "world") |)
23:18:50 <elliott> (| const (putStrLn "hello") (| const (putStrLn "world") (putStrLn "again") |)
23:18:52 <elliott> (| const (putStrLn "hello") (| const (putStrLn "world") (putStrLn "again") |) |)
23:19:01 <elliott> join (| putStrLn getLine |)
23:19:02 <Sgeo> But what about with let?
23:19:30 <elliott> (| const (putStrLn "name:") (| const (join (| putStrLn getLine |)) (putStrLn "ok") |) |)
23:19:37 <elliott> probably that is unbalanced, it is too unspeakably ugly for me to check
23:19:39 <Sgeo> (Clojure's let binds sequentially)
23:19:42 <elliott> Sgeo: with let that is do notation
23:19:47 <elliott> let a = foo; b = bar; c = quux; in d
23:19:53 <elliott> do { a <- foo; b <- bar; c <- quux; d }
23:20:31 <Sgeo> But I'm thinking make them usable together nicely... although hmm, my idea of "nice" may be slightly warped
23:21:25 <Sgeo> Still, would be nice to write code that mostly isn't written monadically-aware except for the parts that are
23:22:01 <elliott> sounds like you want an effect system
23:22:11 <elliott> a la eff, McBride's Frank, and so on
23:24:27 <Sgeo> Thanks for pointing me to that stuff
23:25:12 <elliott> it is not really "production ready"
23:25:20 <elliott> also edwardk doesn't think it'll work well at all
23:32:18 -!- atriq has quit (Quit: Leaving).
23:35:13 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
23:47:29 -!- kinoSi has quit (Read error: Connection reset by peer).
23:47:57 -!- kinoSi has joined.
23:48:48 <oerjan> Sgeo: elliott: is that filinski stuff relevant to this? (never read it.)
23:49:22 <oerjan> http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.43.8213
23:50:28 <Sgeo> oerjan, looks very relevant to what I was thinking of
23:50:39 <Sgeo> Not sure if it's at all relevant to effects
23:52:54 <Sgeo> That's interesting, the undelimited + one piece of state = delimited thing
23:55:25 <oerjan> i've read some critique of that, though. specifically that it only works if you don't mix it with using undelimited continuations in any _other_ way.
23:56:36 -!- Vorpal has quit (Ping timeout: 276 seconds).
23:56:57 <oerjan> http://okmij.org/ftp/continuations/undelimited.html
23:57:08 -!- Phantom_Hoover has joined.
23:58:00 <oerjan> "Many applications that use call/cc also contain mutable cells holding continuations, betraying the well-known Filinski's emulation of delimited control via call/cc and a mutable cell."
00:06:46 <Sgeo> What is "Undoing Dynamic Typing"?
00:08:46 <oerjan> it's a euphemism for correcting really bad spellers hth
00:12:44 <Sgeo> The paper uses "untyped" too m.. oh
00:12:56 <Sgeo> I guessed untagged wouldn't be strongly typed
00:34:07 -!- augur has quit (Remote host closed the connection).
00:39:10 -!- augur has joined.
00:43:55 -!- jiella_ has quit (Quit: Leaving.).
00:53:04 <elliott> pikhq_: Is it true that Windows 8 only supports GPT?
01:00:53 <Sgeo> It turns out delimc sucks
01:01:17 <Sgeo> As in, it breaks if you don't use all the vars in the namespace where you want to use the stuff
01:02:10 <Sgeo> As in, if import Data.Maybe worked but import qualified Data.Maybe as M didn't
01:03:46 -!- elliott has quit (Remote host closed the connection).
01:05:18 -!- elliott has joined.
01:07:43 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:20:09 <shachaf> elliott: Why because of me?
01:24:11 * Sgeo is slightly unsure how to fix the issue
01:24:17 <Sgeo> But I see what's causing it
01:27:16 <Sgeo> I know how to fix it.
01:34:57 -!- hagb4rd has quit (Quit: hagb4rd).
01:39:50 -!- hagb4rd has joined.
02:30:31 * oerjan adds Gemooy to his TC belt
02:32:28 -!- elliott has quit (Remote host closed the connection).
02:33:13 <shachaf> oerjan: Is that the belt of things you've type checked?
02:33:23 <shachaf> elliott: 19:28 <shachaf> Is there a reason that "a newtype constructor cannot have an existential context" in GHC?
02:33:32 <oerjan> no, it's the belt of things i've proved Turing complete
02:38:23 -!- elliott has joined.
02:39:20 <Sgeo> Has oerjan been proved Turing Complete?
02:44:01 <coppro> oerjan: your proof of 3-cell BF worked out, right?
02:45:23 <oerjan> http://esolangs.org/wiki/Collatz_function
02:45:48 <coppro> apparently the fact that the cartesian product of nonempty sets is nonempty is a consequence of the axiom of choice
02:46:05 <coppro> s/a consequence of/equivalent to/
02:46:06 <oerjan> coppro: of _infinitely_ many, mind you
02:46:16 <elliott> coppro: why would that make you sad
02:46:32 <oerjan> also, that's really sort of obvious.
02:47:56 -!- elliott has quit (Remote host closed the connection).
02:58:48 <Sgeo> Major things such as Clojure vars being very much like Common Lisp symbols in some crucial ways should probably be documented in a place showing differences between Clojure and other lisps
03:03:03 -!- elliott has joined.
03:15:20 <elliott> oerjan: should i convert my partitions to gpt
03:16:21 <oerjan> general protection taunts, right?
03:25:00 -!- elliott has quit (Quit: Leaving).
03:25:13 -!- elliott has joined.
03:27:50 -!- elliott has quit (Remote host closed the connection).
03:32:49 -!- Frooxius has quit (Ping timeout: 246 seconds).
03:42:31 -!- elliott has joined.
03:46:26 -!- elliott has quit (Remote host closed the connection).
03:48:29 -!- baki^ has joined.
03:49:03 -!- baki^ has left ("dumplings you do, dumplings you don't").
03:50:47 <Arc_Koen> so I hear two stacks is enough to be tc
03:51:14 <Arc_Koen> let's try to build something out of two stacks that's not tc
03:51:22 <Arc_Koen> actually I was thinking of using a deque
03:51:33 <oerjan> a deque alone is enough to be tc
03:51:54 <Arc_Koen> with functions like "pop" and "push", and an instruction "toggle" to specify to which end of the deque those functions apply
03:52:52 <Arc_Koen> with two stacks if you can do something like push2(pop1()) it is easy to emulate a tape; but here you can't
03:52:59 -!- elliott has joined.
03:53:27 <Arc_Koen> (because you need to toggle before you can push to the other end; so you can't be pushing one side and popping the other at the same time)
03:54:31 <oerjan> if you are going to prevent the information from getting across some other way, you need to limit branching
03:55:41 <Sgeo> I'm starting to see why Clojure exceptions suck so much
03:55:44 <Arc_Koen> to prevent stuff like "if pop() = 0, then toggle and push(0)"?
03:58:17 <oerjan> you may end up with essentially two coroutines that cannot do anything with each other other than yielding...
03:59:07 <Arc_Koen> yep I was writing it down and it felt kind of lame
03:59:46 <kmc> well there are boring ways to make something not turing complete
03:59:54 <kmc> like putting a bound on space or time usage
04:00:08 <kmc> which also includes any real system
04:07:22 -!- oerjan has quit (Quit: Good night).
04:15:01 <Arc_Koen> well sprunge just found a name for that language
04:24:11 <pikhq_> elliott: I honestly don't know.
04:25:01 <Arc_Koen> hmmmm actually I could just consider Super Stack! deprived from its cycle/rcycle instructions
04:25:15 <Arc_Koen> it still has rev to reverse the entire stack
04:26:34 -!- elliott has quit (Remote host closed the connection).
04:31:12 -!- Arc_Koen has quit (Quit: Arc_Koen).
04:31:41 -!- copumpkin has quit (Ping timeout: 255 seconds).
04:32:19 -!- copumpkin has joined.
04:34:41 -!- hogeyui has quit (Ping timeout: 244 seconds).
04:36:05 -!- zzo38 has joined.
04:47:49 -!- hogeyui has joined.
04:50:23 <zzo38> If you think the note about not moving the article about FurryScript to the main namespace is wrong, you can remove it, like you would remove other wrong things on wiki.
05:10:08 -!- ogrom has joined.
05:23:49 -!- hagb4rd has quit (Ping timeout: 260 seconds).
05:44:12 -!- Nisstyre-laptop has quit (Remote host closed the connection).
05:53:35 <kmc> every time flash plugin crashes, take a drink
06:02:49 -!- Nisstyre-laptop has joined.
06:07:30 <kmc> i'll just fondle myself in this leftover panel
06:08:14 <kmc> just watched an ad for internet explorer featuring dubstep
06:08:35 <coppro> kmc: every time pulseaudio causes a problem, take a drink
06:11:43 <kmc> now i have two problems :(
06:17:43 <zzo38> I wrote on a paper once how to make double negation elimination in (Kleisli (Cont r)) and yes I can see easily how to work. I wrote: ((x->(0->r)->r)->(0->r)->r)->(x->r)->r I think this is the way, isn't it?
06:18:17 <zzo38> (I figure out pretty easily how to write such a function of such a type since we have 0 is initial object here.
06:27:28 -!- copumpkin has quit (Ping timeout: 246 seconds).
06:28:03 -!- copumpkin has joined.
06:39:39 -!- copumpkin has quit (Ping timeout: 256 seconds).
06:40:15 -!- copumpkin has joined.
06:51:53 -!- zzo38 has quit (Remote host closed the connection).
06:58:09 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
07:01:38 <shachaf> kmc: I don't think I get the film.
07:01:46 <shachaf> (Were you the one who recommended it to me?)
07:37:54 <kallisti> is there any language with a brainfuck-style tape and : a) a mov instruction b) a goto instruction c) the ability to copy the location of the instruction pointer into the current tape pointer
07:44:52 -!- atriq has joined.
07:46:08 <Sgeo> (comp bind-cont bind-cont)
07:46:18 <Sgeo> That should be join in my syntax
08:03:09 <atriq> You know, I'm actually really surprised that Fueue is Turing-Complete
08:11:38 -!- ais523 has quit.
08:14:19 -!- MoALTz__ has joined.
08:17:30 -!- MoALTz_ has quit (Ping timeout: 264 seconds).
08:20:00 <atriq> When I made it, I looked at it and thought "This is impossible to do anything with"
08:20:02 <coppro> $ obviously gives rise to flow control
08:20:07 <atriq> "It's an utterly ridiculous language"
08:44:05 -!- MoALTz_ has joined.
08:47:24 -!- MoALTz__ has quit (Ping timeout: 260 seconds).
08:54:22 -!- MoALTz__ has joined.
08:57:19 -!- MoALTz_ has quit (Ping timeout: 245 seconds).
09:02:30 -!- atriq has quit (Ping timeout: 264 seconds).
09:30:26 -!- atriq has joined.
09:48:30 -!- kinoSi has quit (Read error: Connection reset by peer).
09:49:18 <atriq> Anyone know where I can get help with MuseScore?
09:49:28 -!- kinoSi has joined.
10:06:24 -!- Vorpal has joined.
10:24:49 -!- ogrom has quit (Quit: Left).
10:32:49 -!- Arc_Koen has joined.
10:37:10 -!- MoALTz__ has quit (Quit: brb).
10:37:27 <Arc_Koen> has someone done some work about equivalency between programming languages in terms of complexity?
10:38:21 -!- MoALTz has joined.
10:38:27 <Arc_Koen> I feel stupid everytime I try to prove something TC by emulating brainfuck, when that something looks much more powerful than brainfuck
10:39:11 -!- Phantom_Hoover has joined.
10:42:31 <atriq> Prove it TC by emulating Underload
10:43:08 <atriq> If you write an Eodermdrone interpreter you are officially esolanger of the year
10:44:27 -!- Frooxius has joined.
10:54:29 <Arc_Koen> hey, do you have a translation for "suite presque nulle" into english? it means "an (infinite) sequence (x0, x1,...) for which there exists N such that for every n > N, xn = 0"
10:54:40 <Arc_Koen> (so basically it's an infinite sequence that's not so infinite after all)
10:55:11 <Arc_Koen> literally, "suite presque nulle" means "almost zero sequence"
11:08:59 -!- barts has joined.
11:10:11 -!- Jafet has quit (Quit: Leaving.).
11:12:13 -!- barts_ has quit (Ping timeout: 256 seconds).
11:19:35 <fizzie> The term "almost all zero" seems to be used in the context of sequences sometimes.
11:24:35 <FreeFull> Could it be a geometric sequence with a ratio between -1 and 1 (exclusive), or is it something else?
11:25:20 <atriq> > [1,2,3,4] ++ repeat 0
11:25:22 <lambdabot> [1,2,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
11:25:40 <atriq> Something like that?
11:31:16 <FreeFull> > map x [1..] where x n = 2^(n-1)
11:31:18 <lambdabot> <no location info>: parse error on input `where'
11:31:36 <FreeFull> > let x n = 2^(n-1) in map x [1..]
11:31:37 <lambdabot> [1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384,32768,65536,131072,...
11:31:51 <FreeFull> > let x n = (1/2)^(n-1) in map x [1..]
11:31:53 <lambdabot> [1.0,0.5,0.25,0.125,6.25e-2,3.125e-2,1.5625e-2,7.8125e-3,3.90625e-3,1.95312...
11:37:15 <barts> no it means a sequence where a finite sequence contains all non-zero elements of the sequence
11:37:34 <FreeFull> So something like what atriq did then
11:38:06 <barts> not necessarily, the non-zero elements could be interspersed with many zeros as well
11:38:33 <atriq> > [1,2,0,3,0,4] ++ repeat 0
11:38:35 <lambdabot> [1,2,0,3,0,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
11:39:32 -!- atehwa has quit (Ping timeout: 248 seconds).
11:39:34 <lambdabot> [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
11:40:20 -!- atehwa has joined.
11:40:59 <fizzie> If there's a finite number of zeros, though, then one of them is the last zero, and that n > N, xn = 0 holds.
11:41:50 <olsner> hmm, did you mean non-zero?
11:41:59 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
11:56:44 <ion> 【MMD】みんなのリズム天国 霊夢のレスラー会見 パーフェクトプレイ http://youtu.be/k9wt5TrI7II
11:56:46 -!- Frooxius has joined.
12:01:35 <ion> http://i.imgur.com/tRUUT.jpg
12:02:01 <fizzie> The tRUUT is out there.
12:30:28 <Arc_Koen> so you can say "almost all zero"?
12:30:41 <Arc_Koen> like, "an almost all zero sequence" or something?
12:31:19 <Arc_Koen> or "that sequence is almost all zero"
12:38:19 <fizzie> Or the members/elements of this sequence are almost all zero".
12:39:59 <fizzie> "-- let R = (r1,r2,...) range over all sequences of non-negative integers which are almost all zero." -- from a random paper.
12:45:59 -!- jiella has joined.
12:46:01 -!- jiella has left.
12:46:15 -!- jiella has joined.
12:48:09 -!- Jafet has joined.
13:12:07 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
13:26:18 -!- mig22 has quit (Quit: mig22).
13:30:16 -!- ogrom has joined.
13:42:36 -!- atriq has quit (Quit: Leaving).
13:50:50 -!- MoALTz has quit (Read error: Connection timed out).
13:51:47 -!- MoALTz has joined.
14:10:13 -!- MoALTz has quit (Read error: Connection timed out).
14:15:16 -!- jiella has quit (Quit: Leaving.).
14:16:23 -!- atriq has joined.
14:16:51 -!- MoALTz has joined.
14:16:54 <atriq> I don't recall seeing itidus20 in a whie
14:19:39 -!- MoALTz has quit (Client Quit).
14:22:18 -!- atriq has quit (Quit: Leaving).
14:24:42 -!- MoALTz has joined.
14:25:55 -!- Ginto8 has quit (Ping timeout: 246 seconds).
14:38:45 -!- MoALTz_ has joined.
14:41:14 -!- MoALTz has quit (Ping timeout: 240 seconds).
14:51:22 <FreeFull> Apparently Icaros comes with a lolcode interpreter
14:52:00 -!- Phantom_Hoover has joined.
14:56:27 <barts> fizzie: that would be an error, you cannot enumerate all such sequences with natural numbers.
14:56:35 <barts> fizzie: you should inform the author about this.
14:58:16 <Phantom_Hoover> FreeFull, what is icaros and how can i kill the people involved
15:01:07 <FreeFull> Phantom_Hoover: Why kill the people involved?
15:10:14 <Arc_Koen> anyone knows where the names "qdeql" and "sceql" came from?
15:19:50 <fizzie> barts: I don't think it was saying that it could; just that R ranges over all such sequences, and r1, r2, ... are the elements of R.
15:26:05 -!- elliott has joined.
15:45:08 <kmc> shachaf: which film?
15:46:15 <elliott> Why did my client join this channel?
15:46:15 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
15:46:22 <elliott> I don't think I have it on autojoin...
15:53:07 -!- atriq has joined.
16:10:55 <kmc> so really nobody has implemented eodermdrome?
16:11:11 <kmc> it seems like it should not be that hard to produce a slow implementation
16:11:25 <atriq> oklopol began, according to the lore of #esoteric
16:11:30 <atriq> But never finished
16:11:32 <elliott> kmc: i think the problem is that the slow implementation is way too slow
16:11:48 <elliott> kmc: or maybe just that everyone who is the kind of person who would implement it is the kind of person who wants to use the fancy algorithms to make it fast
16:12:07 <kmc> well my fancy algorithm would be "someone else's SAT solver"
16:14:13 <atriq> elliott, what makes reify 6 (\p -> reflect p + reflect p) better than (\p -> p + p) 6?
16:14:39 <elliott> atriq: they're not the same thing
16:14:44 <elliott> the "p" value is irrelevant
16:14:54 <elliott> it is its *type* that matters
16:15:03 <elliott> it's just Proxy of the right type
16:15:09 <elliott> let me get an example i hpasted ages ago
16:15:27 <elliott> atriq: http://hpaste.org/66715
16:16:07 <elliott> atriq: basically in this example, you can think of the p in "forall p. (Reifies p MyConfig) => ..." as a *value* of type MyConfig
16:16:14 <elliott> just it exists at the type level
16:16:20 <elliott> and brought back down by reflect
16:18:10 <atriq> I'm not really understanding this
16:19:12 <elliott> that's ok, I didn't either :p
16:19:25 <elliott> atriq: basically, think of reify as turning a value into a type, and reflect as turning a type into a value
16:19:41 <elliott> when you do reify 6 (\p -> ...), p :: Proxy s (for some s we *don't know*)
16:19:49 <elliott> you can think of that s as an Integer at the type level
16:20:10 <elliott> and since you have (Reifies s Integer), you can do reflect p :: Integer
16:20:15 <elliott> but the value p doesn't matter
16:20:21 <elliott> you only get passed the value p so you have a way to get at the type
16:20:25 <elliott> meanwhile: * voidf (befd1cd9@gateway/web/freenode/ip.190.253.28.217) has joined #haskell <voidf> how to return the type in a function?
16:20:31 <elliott> atriq: imagine if the proxy wasn't there
16:20:38 <elliott> reify :: a -> (forall s. Reifies s a => r) -> r
16:20:44 <elliott> but of course that's invalid, because you don't reference "s" anywhere
16:21:20 <elliott> atriq: anyway a compelling example is modular arithmetic
16:21:47 <elliott> atriq: with reflection, we can have a type (Mod p Integer)
16:21:51 <elliott> atriq: which represents integers, mod p
16:22:01 <elliott> atriq: and it can be an instance of Num
16:22:12 <elliott> because we use reflection to reify the p being used into the type parameter p there
16:22:23 <elliott> I think I hpasted that too, let me find it
16:22:50 <elliott> atriq: http://hpaste.org/66565
16:23:00 <elliott> actually it's (Mod Integer p) there
16:23:04 <atriq> Actually, I was wondering how you could do that the other day
16:23:07 <elliott> which is slightly inferior: you can't give it a Functor instance
16:23:38 <elliott> atriq: note that although "modular n = r where r = Modular (n `mod` modulus r)" appears to be circular, it is actually just a silly trick
16:23:45 <elliott> atriq: modulus doesn't examine its value, it only cares about the type
16:24:02 <elliott> so we just use that circularity because Modular (n `mod` modulus ...) happens to have the type we want to give modulus (i.e. n `Mod` p)
16:24:13 <elliott> anyway look at the commented-out modulo definition instead
16:24:22 <elliott> it does more or less the same thing but without the hack
16:24:37 <elliott> modular turns an integer into the mod form
16:25:00 <elliott> modulo is just modulo' but less general
16:25:05 <elliott> but modulo is the actual useful one, so look at it instead
16:25:07 <elliott> atriq: anyway basically you can do:
16:25:34 <elliott> atriq: ((4 + 4) * 2) `modulo` 8 :: Integer
16:25:56 <elliott> but it's not just mod, because the mod is done at each step, of course, like regular modular arithmetic
16:26:12 <elliott> atriq: and, as a bonus, the "4" and "2" inside actually have a type that encodes the 8
16:26:21 <elliott> so you can't mix them with regular Integers or so on without conversion
16:26:41 <elliott> anyway reflection is sort of confusing but once you get the hang of it, it is very cool
16:26:47 <elliott> I think the original Oleg paper also did the modular arithmetic thing
16:31:13 <atriq> I think I understand it
16:31:26 <elliott> kmc: you might enjoy this GHC dark magic: http://hpaste.org/66699
16:31:30 <elliott> (oleg's reimplementation of reflection)
16:32:06 <elliott> atriq: (you may also find the simpler modular arithmetic definition it comes with helpful for understanding it)
17:12:34 -!- atriq has quit (Ping timeout: 260 seconds).
17:18:45 -!- atriq has joined.
17:21:39 -!- jiella has joined.
17:29:19 -!- zzo38 has joined.
17:31:15 -!- oerjan has joined.
17:40:01 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
17:41:45 <oklopol> no, i finished eodermdrome
17:42:07 <oklopol> it's just graph rewriting, it's not hard to do. but also what elliott said.
17:42:51 -!- ogrom has quit (Quit: Left).
17:44:10 <oklopol> "<Arc_Koen> has someone done some work about equivalency between programming languages in terms of complexity?" at least between different models of computation
17:44:50 <oklopol> at least iirc i finished it, it's definitely gone in any case.
17:47:08 <fizzie> Does "finnishing" mean the same as finishing and subsequently misplacing the finished thing?
17:47:20 <olsner> or finishing and violently deleting
17:47:24 <oklopol> gave it some koskenkorva and didn't speak a word to it for years.
17:54:59 <olsner> yes, I think it's funnier if you imagine a more violent end than just misplacing it though
18:00:10 <fizzie> olsner: What are you implying there! Finns aren't violent.
18:03:15 <fizzie> RARRR I HIT YOU WITH AN AXE FOR IMPINGING ON MY HONOR
18:03:31 <fizzie> Sorry, in retrospect that's more of a Norwegian thing to do.
18:03:40 <olsner> yeah, everyone knows the finn's weapon of choice is the knife
18:04:26 <fizzie> I suppose. Though we do have a certain amount of ax-related crime too, I believe.
18:04:44 <fizzie> It's like, the people living in cities knife each other, while the people living in the countryside use axes.
18:04:50 <fizzie> But we're not a violent people.
18:05:18 <fizzie> Back when I quoted from Finnish songs a while ago there was an axe involved.
18:05:22 <fizzie> In the lyrics, I mean.
18:07:21 <Sgeo> Maybe I should learn how a complicated library works before trying to fix it.
18:10:25 <jiella> fizzie: There was the one axing incident in the metro in Helsinki though.
18:13:10 -!- Phantom_Hoover has joined.
18:13:51 <oerjan> axe and you shall receive
18:14:12 <fizzie> jiella: Well, I'm sure. It was a sort of a generalization.
18:14:26 <fizzie> There's probably been a large number of stabbings in the countryside, too.
18:14:29 <oerjan> axe not for whom the bell tolls
18:15:05 <oerjan> it's natural to use an axe when you're out chopping down trees anyhow
18:16:02 <Phantom_Hoover> i never heard of any incidents with axes in uk undergrounds
18:16:26 <fizzie> oerjan: Don't put all your eggs in one baxet.
18:16:29 <elliott> fizzie: are finns ever happy
18:16:51 <oerjan> Olen metsuri ja olen kunnossa! Nukun koko yön, ja työskentelen koko päivän!
18:17:45 <fizzie> elliott: I'm a Finn and I am sometimes.
18:18:53 <olsner> amazingly, google translate seemed to have no problem at all with that sentence
18:19:30 <fizzie> It's reasonable cogent. Though the translation of the "I'm okay" part is maybe not the best one for that context.
18:19:48 <jiella> fizzie: Tja, mainly I find it funny that the only axe killing I can remember was done in a Helsinki metro... You can't really get any more urban than that in Finland.
18:20:02 <oerjan> fizzie: when i used "OK" it gave OK in the answer, so i changed it.
18:20:46 <fizzie> oerjan: "And have buttered scones for tea" => "Ja on voideltuun teeleipiä teen" -- "And has buttered scones for tea" => "Ja on buttered teeleipiä teen".
18:20:55 <fizzie> oerjan: I have no idea why it doesn't know about "buttered" in the second case.
18:21:51 <oerjan> it's because a single person cannot have buttered scones
18:22:07 <fizzie> But it's in the first person in the first case.
18:22:09 <oerjan> you need to be at least two to share the joy
18:22:21 <fizzie> First person singular, I mean.
18:22:33 <fizzie> On Wednesdays I go shoppin' / And have buttered scones for tea.
18:22:55 <coppro> oerjan: certainly a single person can
18:23:01 <oerjan> it's not _entirely_ unlikely someone put that exact text into google translate before.
18:23:21 <fizzie> "I cut down trees. I wear high heels." => "Olen kaataa puita. En käytä korkokenkiä."
18:23:26 <fizzie> Sometimes it inverts the meaning.
18:23:43 <coppro> this conversation would be more interesting if I knew finnish
18:25:01 <olsner> you don't know finnish?
18:25:43 <oerjan> fizzie: it reinverts it in the other direction too...
18:26:44 <fizzie> "En käytä korkokenkiä. Käytän korkokenkiä." => "I wear high heels. I use high heels."
18:26:54 <fizzie> Machine learning in action.
18:28:10 <oerjan> Älä ammu, tulemme rauhassa!
18:28:27 <oerjan> if it were an _evil_ machine, it would invert that. did it?
18:29:05 <fizzie> "We come in peace, we shoot to kill" also goes through moderately right. Though the latter part is just atrocious grammar.
18:29:18 <fizzie> ("Tulemme rauhassa, me ampua tappaa.")
18:30:42 <fizzie> oerjan: But "I wear shoes" turns into "I don't wear shoes".
18:31:01 <fizzie> oerjan: And "I wear hats" to "I don't wear hats".
18:31:17 <fizzie> But "I wear cloths" is approximately "I clothes".
18:31:26 <fizzie> With the e in the source, too.
18:31:41 <fizzie> "I wear pants" => "I don't wear pants". Well, it's reasonably consistent.
18:31:50 -!- monqy has joined.
18:31:58 <oerjan> so it has some trouble with finns wearing things. probably because of all the sauna.
18:32:30 <fizzie> Plain "I wear" turns (understandably) into "I don't wear/use". (The word has both meanings.)
18:33:01 <olsner> so that you can reuse the same sentence to say what you're wearing inside and outside the sauna?
18:33:27 <oerjan> nah you need to use the saunative case
18:33:34 <fizzie> Maybe I should fix some of those translations and see if it takes.
18:34:27 <fizzie> Well, it remembered it for me.
18:34:55 <fizzie> Aw, no longer when I cleared the whole input text.
18:37:42 <oerjan> <Arc_Koen> hey, do you have a translation for "suite presque nulle" into english? it means "an (infinite) sequence (x0, x1,...) for which there exists N such that for every n > N, xn = 0"
18:37:48 <oerjan> eventually zero, i think
18:38:08 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
18:39:01 <lambdabot> [1,2,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
18:39:26 <oerjan> @tell Arc_Koen "eventually zero sequence"
18:39:35 <lambdabot> Overlapping instances for GHC.Show.Show (t -> t)
18:40:12 <oerjan> seq is the strictness forcing primitive
18:40:28 <oerjan> also, the parentheses around repeat 0 are redundant
18:40:34 <lambdabot> [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]]
18:40:45 <fizzie> oerjan: But what are all the instances of Show (t -> t) that lambdabot has?
18:41:11 <FreeFull> > subsequences ([1..]++ repeat 0)
18:41:33 <oerjan> FreeFull: race condition, i think
18:41:42 <olsner> race with someone doing @let?
18:42:07 <fizzie> My query got this at about the same time: 21:41 <lambdabot> Plugin `more' failed with: thread killed
18:42:23 <oerjan> fizzie: it has one instance that is like that IO one, and which used to be used. but then a conflicting one got accidentally imported from some other module.
18:42:49 <oerjan> and it's impossible to fix that without removing one of the imports completely
18:43:02 <FreeFull> > subsequences ([1..]++ repeat 0)
18:43:02 <oerjan> not that everything in lambdabot that _could_ be fixed, has been.
18:43:04 <lambdabot> [[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3],[4],[1,4],[2,4],[1,2,4],[3,4],[1,...
18:43:16 <fizzie> oerjan: Apparently there's something from smallcheck-0.4:Test.SmallCheck according to that @more.
18:43:19 <oerjan> FreeFull: [1..]++ repeat 0 = [1..], it never gets to the second part
18:43:21 <FreeFull> Of course it's never going to get to the zeroes, but you get the point
18:43:53 <oerjan> if you use a bounded number instance, it might, though
18:44:03 <oerjan> Int, in theory, although it'll take a while
18:44:56 <fizzie> > (reverse . take 10 . reverse) [(1::Int8)..]
18:44:58 <lambdabot> [118,119,120,121,122,123,124,125,126,127]
18:46:14 <oerjan> oh not intervals in math...
18:46:17 <elliott> does anyone know whether Windows 8 will actually require GPT or not
18:46:28 * oerjan was thinking coppro was really struggling there
18:46:44 <elliott> http://en.wikipedia.org/wiki/GUID_Partition_Table
18:46:49 <oerjan> coppro: listening to someone failing at singing is even harder, hth
18:47:29 <coppro> oerjan: well that's precisely what I'm doing
18:47:31 <coppro> failing at singing, I mean
18:48:15 <oerjan> so i hope for humanities sake that you're out of earshot.
18:48:28 <fizzie> elliott: Hasn't that Consumer Preview version been out a while now? You'd think someone would have mentioned this in the interwebs.
18:49:06 <zzo38> Does it depend whehter you are also, singing just intonation or equal temperament or whatever, and also what range you sing (soprano, alto, tenor, bass, and whatever else)?
18:49:11 <elliott> but the results weren't so useful
18:49:39 <oerjan> zzo38: i am _pretty_ sure it depends on range.
18:50:05 <oerjan> like, i wouldn't recommend anyone listening to my soprano.
18:50:35 <coppro> zzo38: I am a baritone
18:50:53 <zzo38> It is why I play piano, I can play the soprano, alto, tenor, and bass, all at the same time.
18:51:07 <zzo38> coppro: O, OK, yes I forgot that one.
18:52:55 <zzo38> I knew someone who sing all ranges
18:54:00 <zzo38> Up to the highest soprano and down to the lowest bass. Her chorus was best one and always won any contests they were in at singing good.
18:54:29 <zzo38> It is because they sing all range.
18:55:13 <oerjan> i read that Ivan Rebroff had an enormous range
18:55:13 <coppro> I could believer, perhaps, that she could sing down to the bottom of a contralto range
18:55:25 <coppro> but that's a good octave above a bass
18:56:51 <elliott> oerjan: 4.5 octaves apparently
18:57:16 <oerjan> "Ivan Rebroff (31 July 1931 – 27 February 2008) was a German singer, allegedly of Russian ancestry, with an extraordinary vocal range of four and a half octaves, ranging from the soprano to bass registers.[1]"
18:58:03 <coppro> I find it particularly hard to believe for a woman because you can extend your range upwards with falsetto
18:58:24 <coppro> but you can't significantly extend it downward in the same fashion
19:03:22 <oerjan> @tell Arc_Koen "almost all zero" is ambiguous since it might mean some kind of zero density, but still infinite number of indices.
19:04:44 <oerjan> @tell Arc_Koen for the non-zeroes, i mean.
19:04:55 <fizzie> oerjan: It might be ambiguous, but it was being used in the "finite nonzeros" sense in the webtubes.
19:05:25 <oerjan> ...it's the kind of ambiguity that might differ between field.
19:05:52 <fizzie> "eventually zero" does seem perhaps slightly more popular, though.
19:06:29 <oerjan> http://en.wikipedia.org/wiki/Almost_all lists both meanings.
19:06:33 -!- monqy has quit (Read error: Operation timed out).
19:06:46 <oerjan> (as well as some for non-sequences)
19:08:00 <fizzie> oerjan: I don't see it mentioning sequences at all.
19:08:55 <oerjan> well, the subset of natural numbers ones
19:09:07 <oerjan> which is isomorphic to speaking about sequences >:)
19:09:26 <oerjan> "A simple example is that almost all prime numbers are odd. (Two is a prime number.)"
19:09:36 <oerjan> "Thus, almost all positive integers are composite (not prime), however there are still an infinite number of primes."
19:09:39 -!- Phantom_Hoover has joined.
19:10:07 -!- monqy has joined.
19:10:50 <monqy> elliott: special occasion for you tho?
19:11:03 <elliott> monqy: apparently I put #esoteric on autojoin by mistake
19:11:12 <monqy> happens to everyone
19:11:33 <elliott> monqy: well before like yesterday I joined eight channels by hand every time I opened xchat
19:17:30 -!- Nisstyre-laptop has joined.
19:19:44 -!- atriq has quit (Ping timeout: 260 seconds).
19:25:43 <zzo38> Then make a macro for each group of channels you want to join, perhaps?
19:26:05 <zzo38> I think xchat must support macros, isn't it?
19:26:26 <oerjan> /alias dontdothiseveragain join #esoteric
20:14:12 -!- Vorpal has quit (Ping timeout: 248 seconds).
20:19:53 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
20:22:15 -!- ais523 has joined.
20:35:46 -!- Phantom__Hoover has joined.
20:39:16 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
20:51:34 -!- atriq has joined.
20:54:14 <atriq> How can I alter the volume of my computer using ssh?
20:54:25 <atriq> Volume as in loudness
20:54:31 <atriq> Not as in length cubed
20:55:02 <atriq> Oh, that's helpful
20:55:30 <atriq> It could not resolve hostname
21:00:12 -!- Nisstyre-laptop has joined.
21:02:31 <atriq> I've ssh'd to my other computer
21:02:45 <atriq> Is it possible to get files from it over here?
21:03:19 <zzo38> I think there is "scp" command to copy files between computers using SSH?
21:03:58 -!- aloril_ has quit (Read error: Operation timed out).
21:04:43 <atriq> Actually, all I really want to do is make my computer an alarm clock
21:05:09 <atriq> I was thinking a cron thingy to start rhythmbox
21:06:15 -!- nortti has quit (Read error: Operation timed out).
21:10:16 <zzo38> I found a mistake in line 154, 155, 164, 165 of one of the files included with FurryScript; it says <HAIR-STYLE-LEN> instead of <HAIR-LEN> so results in wrong output. I will fix it now.
21:11:26 <zzo38> I don't know why; but I fixed it now.
21:12:27 -!- nortti has joined.
21:12:48 <atriq> Why am I using ssh to access the computer in my bedroom to mess with GHCi?
21:13:03 <atriq> :t flip flip (repeat ()) . scanl . (const .)
21:13:06 <zzo38> Actually, I figured it out: It was <HAIR-STYLE-LEN> in the original file, but I renamed it to <HAIR-LEN> for some reason (I fail to remember) and did not correct all of the references to it.
21:13:18 <atriq> iterate in terms of scanl
21:13:33 <atriq> And flip and repeat and const
21:14:03 <zzo38> atriq: Are you at home? If so shouldn't you just go into your bedroom to access the computer directly?
21:14:08 <oerjan> <atriq> Why am I using ssh to access the computer in my bedroom to mess with GHCi? <-- you're probably distantly related to Rube Goldberg somehow
21:14:17 -!- aloril_ has joined.
21:14:27 <atriq> zzo38, I don't exactly own a screen.
21:14:40 <lambdabot> forall (f :: * -> *) a b. (Functor f) => a -> f (a -> b) -> f b
21:14:40 <atriq> I borrow the family computer's screen sometimes, but my mum's using it
21:14:58 <atriq> b -> (a -> b -> c) -> a -> c
21:15:11 <lambdabot> forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b
21:15:28 <atriq> I suppose that's one way of doing flip
21:15:58 <oerjan> caleskell is _slightly_ generalized....
21:16:07 <zzo38> atriq: Yes it is one thing I thought might have been, if that computer lacks a console for any reason you need to access it remotely.
21:16:12 <atriq> So... you need Functor for C and B, Applicative for K and S, and Monad for W
21:16:12 <oerjan> that flip is sometimes useful
21:16:32 <atriq> What's I in this sence
21:16:46 <elliott> iirc i prefer to call that flip strong
21:16:49 <zzo38> You can make up I using S and K
21:16:52 <elliott> since I think it's equivalent to a proof that all Functors are strong?
21:16:56 <atriq> :t undefined :: Functor f => f a
21:16:57 <lambdabot> forall (f :: * -> *) a. (Functor f) => f a
21:17:43 <lambdabot> It could refer to either `Control.Applicative.empty', imported from Control.Applicative
21:17:43 <lambdabot> or `Text.Regex.Posix.empty', imported from Text.Regex.Posix at State/L.hs:55:0-22
21:17:51 <atriq> :t empty :: Alternative f => f a
21:17:52 <lambdabot> It could refer to either `Control.Applicative.empty', imported from Control.Applicative
21:17:52 <lambdabot> or `Text.Regex.Posix.empty', imported from Text.Regex.Posix at State/L.hs:55:0-22
21:18:03 <atriq> :t Control.Applicative.empty
21:18:04 <lambdabot> forall (f :: * -> *) a. (Alternative f) => f a
21:18:34 <atriq> :t ap return return
21:18:35 <lambdabot> Ambiguous type variable `m' in the constraint:
21:18:35 <lambdabot> `Monad m' arising from a use of `return' at <interactive>:1:10-15
21:18:36 <lambdabot> Probable fix: add a type signature that fixes these type variable(s)
21:19:03 <lambdabot> forall a b. (a -> b -> a) -> a -> [b] -> [a]
21:20:45 <oerjan> :t (scanl . (const .)) `flip` repeat ()
21:20:46 <lambdabot> forall b. ([()] -> [()]) -> [b] -> [[()]]
21:24:48 <lambdabot> forall b a. (a -> a) -> a -> [b] -> [a]
21:25:15 <oerjan> :t (fix .) . scanl . (const .)
21:25:31 <oerjan> > ((fix .) . scanl . (const .)) (+1) 0
21:25:33 <lambdabot> [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,...
21:26:19 <atriq> :t unfoldr . (.) Just . ap (ap . ((,) .)) id
21:26:31 <atriq> iterate in terms of unfoldr
21:26:53 <atriq> @unpl unfoldr . (.) Just . ap (ap . ((,) .)) id
21:26:54 <lambdabot> (\ h -> unfoldr (\ c -> Just (((\ t y -> (\ ac -> ((,)) (t ac)) >>= \ v -> y >>= \ u -> return (v u)) >>= \ m -> (\ e -> e) >>= \ l -> return (m l)) h c)))
21:27:19 <atriq> :t \f -> unfoldr (\a -> Just (f a, f a))
21:28:34 -!- augur has quit (Remote host closed the connection).
21:29:47 <oerjan> :t \f -> unfoldr (Just . join (&&&) . f)
21:29:48 <lambdabot> arising from a use of `&&&' at <interactive>:1:27-31
21:29:48 <lambdabot> Possible fix: add an instance declaration for (Arrow (,))
21:30:15 <lambdabot> forall (a :: * -> * -> *) b c. (Arrow a) => a b c -> a b (c, c)
21:30:33 <atriq> :t \f -> unfoldr (Just . join (&&&) f)
21:31:16 <oerjan> :t unfoldr . (Just .) . join (&&&)
21:31:34 <atriq> Doing it in terms of foldr...
21:31:59 <oerjan> foldr is like breaking up lists, not building them
21:32:16 <atriq> I have a feeling it's possible
21:32:20 <zzo38> Does (,) form a semigroupoid (category except identity)?
21:33:10 <atriq> zzo38, so you want (.) :: (b, c) -> (a, b) -> (a, c)
21:33:33 <zzo38> atriq: Yes and associative
21:33:40 <zzo38> elliott: Nothing, which is why it is not a category
21:33:41 <elliott> i didn't read what zzo38 said
21:33:52 <oerjan> elliott: barely avoiding a swat there
21:34:04 <elliott> it's not an instance of http://hackage.haskell.org/packages/archive/semigroupoids/3.0/doc/html/Data-Semigroupoid.html
21:34:24 <atriq> Let's go with the simple (_, c) . (a, _) = (a, c)
21:34:35 <elliott> well that is literally the only way you can define that type
21:34:47 <atriq> For associativity, we need (a . b) . c = a . (b . c)
21:34:52 <zzo38> atriq: Yes that is what I thought.
21:34:56 <oerjan> looks pretty associative to me :P
21:35:19 <atriq> let a = (1, 2), b = (3, 4), c = (5, 6)
21:35:46 <atriq> (a . b) . c = (5, 2)
21:36:22 <atriq> a . (b . c) = (5, 2)
21:36:39 <oerjan> @check let (_, c) . (a, _) = (a, c); (.) :: (Int, Int) -> (Int, Int) -> (Int, Int) in \x y z -> x . (y . z) == (x . y) . z
21:36:55 <atriq> So it's a semigroupoid
21:37:00 <elliott> oerjan: you realise atriq's proof was fully rigorous right :P
21:37:04 <elliott> since 1, 2, 3, 4, 5, 6 are just variables there
21:37:29 <oerjan> elliott: well i would if i had been looking at it while constructing the quickcheck
21:37:46 <zzo38> What is this semigroupoid normally called in mathematics?
21:38:02 <oerjan> @scheck let (_, c) . (a, _) = (a, c); (.) :: (Bool, Bool) -> (Bool, Bool) -> (Bool, Bool) in \x y z -> x . (y . z) == (x . y) . z
21:38:29 <zzo38> You could make it into a category by adding an identity, like newtype X a b = X (Maybe (a, b));
21:38:45 <zzo38> Just like you can make a semigroup into a monoid like that too
21:39:28 <oerjan> zzo38: you'd have an identity between non-neighboring elements too, then
21:39:31 <elliott> Maybe (a, b) is the weirdest category I ever heard of
21:40:22 <zzo38> oerjan: Yes I know it allows it, unless you make a GADT to make such thing prohibited
21:40:22 <oerjan> zzo38: oh that doesn't work when a is not b
21:40:51 <oerjan> how would you compose a Nothing in X a b with a Just in X b c
21:41:18 <zzo38> I can see how it won't work now, which is why it has to be a GADT instead.
21:41:22 -!- FreeFull has quit (Quit: Sleeptime).
21:41:24 <oerjan> you need a GADT for this to work, yeah
21:41:27 <elliott> oerjan: data X a b where X :: Maybe (a, a) -> X a a
21:41:40 <atriq> Is it one of these thingies? http://hackage.haskell.org/packages/archive/data-lens/2.10.2/doc/html/Control-Category-Product.html
21:41:54 <zzo38> data X :: * -> * -> * where { Id :: X a a; Pair :: a -> b -> X a b; };
21:44:00 <atriq> If anyone can find a use for this, I'll be amazed
21:44:05 <zzo38> Yes I see elliott's code is a category, but it is the wrong one.
21:44:54 <elliott> monqy: http://hpaste.org/75855#a75927
21:44:59 -!- atriq has quit (Quit: Leaving).
21:47:15 <monqy> ⅋ is pretty crazy too
21:47:24 <elliott> monqy: standard linear logic symbols!!
21:47:26 <elliott> THE JOKE IS: linear logic is crazy
21:50:43 <monqy> do you k now how this thing works im too lazy to figure it out
21:51:08 <monqy> and im guessing overture is an alternative to prelude??
21:51:18 <elliott> ye but you can just ignore the overture thing I don't think it uses anything special from it
21:51:33 <elliott> it's stream processing except it's done w/ linear logic!!
21:51:55 <monqy> i forget whatever i knew about linear logic
21:54:37 <zzo38> What is this category that I wrote about, is called, in a mathematics?
21:59:48 <oerjan> zzo38: i'm not sure but it's also the product of two simpler ones: one with Hom(A, B) = A and one with Hom(A, B) = B
22:02:30 -!- Frooxius has quit (Ping timeout: 264 seconds).
22:04:46 <oerjan> the former is Const, is it not? although it isn't listed as an instance in that semigroupoid package
22:12:36 <coppro> I love the Internet Standard Content Rating System
22:12:42 <coppro> it has two categories: SFW and NSFW
22:14:45 <monqy> can I give a five star and two thumbs up rating
22:18:24 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
22:23:30 -!- augur has joined.
22:25:02 <oerjan> you _may_, but you cannot.
22:28:51 <lambdabot> Arc_Koen: You have 3 new messages. '/msg lambdabot @messages' to read them.
22:29:07 <Arc_Koen> my guess: three of those people are Oerjan
22:29:07 <elliott> they might all be "fuck you"
22:29:16 <lambdabot> oerjan said 3h 49m 49s ago: "eventually zero sequence"
22:29:16 <lambdabot> oerjan said 3h 25m 53s ago: "almost all zero" is ambiguous since it might mean some kind of zero density, but still infinite number of indices.
22:29:16 <lambdabot> oerjan said 3h 24m 31s ago: for the non-zeroes, i mean.
22:29:46 <oerjan> @tell elliott fuck you
22:30:42 <oerjan> i wouldn't want elliott to be disappointed
22:30:42 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
22:31:09 <Arc_Koen> I think in france we have a consensus that subsets of a countable set cannot have a measure zero if they are themselves infinite
22:31:58 <oerjan> Arc_Koen: "measure" is a technical term which does not work well with the whole space being countable. if you want any uniformity.
22:31:59 <Arc_Koen> or maybe we just assume that something more complicated than "a sequence with a finite number of non-zeroes" deserves a more complicated name than "suite presque-nulle"
22:32:56 <Arc_Koen> though I guess the sequence (1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1, ...) could be considered to have not many non-zeroes as well
22:33:02 <oerjan> Arc_Koen: the wikipedia article on "Almost all" mentions as an example that Almost all integers are composite
22:33:14 <oerjan> for one of the meanings.
22:33:25 <oerjan> er, all natural numbers, i guess.
22:33:49 <Arc_Koen> "Almost all" is sometimes used synonymously with "all but [except] http://en.wikipedia.org/wiki/Finite_set many" (formally, a http://en.wikipedia.org/wiki/Cofinite set) or "all but a http://en.wikipedia.org/wiki/Countable_set" (formally, a http://en.wikipedia.org/wiki/Cocountable set); see http://en.wikipedia.org/wiki/Almost.
22:33:56 <Arc_Koen> errh, pardon my horrible pasting
22:34:22 <oerjan> yep, sometimes. and sometimes it's used completely differently.
22:34:30 <Arc_Koen> but yeah that sentence at the beginning of the article basically means "what 'almost all' means depend on the context" so it's not very helpful
22:35:06 <oerjan> it _is_ very helpful, it tells you it's ambiguous :P
22:36:14 <Arc_Koen> also, yeah, it's been a while since the last measure theory class I attended
22:36:39 <Arc_Koen> (which is kinda sad, in a sense)
22:37:05 <Arc_Koen> oerjan: (1, 2, 0, 3, 4, 5, 6, ...) is eventually 0!
22:37:16 <oerjan> come to think of it, you could probably use it for all but a meagre set, too...
22:40:16 <Arc_Koen> oops... once more I felt short of being loyal to my earlier "let's get to bed early tonight" resolution
22:41:32 <oerjan> sometimes by half a day.
22:42:52 <Arc_Koen> I think esolangs.org owes me sleep
22:43:19 <oerjan> i think it has very little to pay with
22:44:33 <Arc_Koen> well I usually spend more time volunteering than actually working, so I guess my time isn't so expensive
22:44:51 <oerjan> also, Ndeql looks evil.
22:45:43 <Arc_Koen> anyway, I didn't know what qdeql and sceql stood for so I just replaced the first two letters
22:46:10 <elliott> Arc_Koen: sorry, i cannot offer refunds
22:46:26 <elliott> I bet graue offered refunds. elliott worst wiki admin
22:46:56 <oerjan> only if you managed to catch him online.
22:46:59 <Arc_Koen> that's disappointing, at least when I volunteer I get free lunches or stuff
22:48:27 <oerjan> oh those were graue's languages, not cpressey's
22:48:41 <oerjan> might be hard to find out what they stand for, then
22:49:35 <Arc_Koen> Oerjan: although Ndeql's evilness was kind of an accident, I had that "random variable" idea in mind for a while and yesterday I wrote a sceql interpreter and I thought the two ideas would be perfect for each other
22:52:57 <Arc_Koen> oh I just noticed today, Category:Stack-based and Category-Queue-based are subcategories of Category:Languages, but Category:Deque-based isn't and I must say, discriminating mixed-race like that, it's RACISM, mate
22:53:48 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
22:54:05 -!- Arc_Koen has joined.
22:54:25 <Arc_Koen> hmmm something wrong with auto-reconnect server, or something
22:54:27 <oerjan> someone is very good at falling short
22:54:57 <oerjan> IT'S AN OMEN AND YOU MUST STAY
22:55:13 <Arc_Koen> it's weird it only does that for freenode
22:56:17 <oerjan> nope, i don't have a clue how to tame Ndeql's randomness
22:57:37 <Arc_Koen> proving it cannot be tamed would be enough to tame it
22:58:36 <Arc_Koen> (I would say I just proved it could be tamed but Gödel says no)
22:59:19 <oerjan> there is absolutely guarantee against one particular variable _never_ being the one involved in anything, _except_ for being used for all the \ commands. which means it is always possible for all loops to be skipped.
23:00:35 <Arc_Koen> "the \ command can only select variables which are not 0"
23:00:50 <oerjan> ...i think that might have other problems :)
23:00:51 <Arc_Koen> there, you have your guarantee WHAT DO YOU MEAN "it's worse"
23:02:02 <Arc_Koen> about that "two stacks but no communication" silly idea: I had loops based on whether the register had been modified or not
23:02:48 <oerjan> oh it did? well good riddance.
23:03:09 <Arc_Koen> (so I decided to name that language "died")
23:04:20 <Arc_Koen> however a better version: http://sprunge.us/FXJc
23:06:10 <Arc_Koen> ok I'd really like to follow the omen but that's probably not a good idea so gnight
23:12:10 <Arc_Koen> (well as for the conditionals that allow to pass information from one side to the other - I might be ok with that if it's not too easy to do, or if for any other reason the language is not tc)
23:12:18 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
23:18:00 <pikhq_> http://sprunge.us/CSTT Hooray, it sucks!
23:21:04 <pikhq_> Because I was stupendously lazy with the IO, it doubles in speed if linked against musl.
23:21:14 <pikhq_> (apparently glibc getchar is slow?)
23:23:50 <elliott> pikhq_: Should I buy a UEFI motherboard?
23:24:08 <pikhq_> elliott: Is it possible to not anymore?
23:24:14 -!- sirdancealot7 has joined.
23:24:16 <Sgeo> A language sucking in certain ways doesn't mean I should abandon it, does it?
23:24:17 <pikhq_> MS is pushing UEFI pretty hard.
23:25:05 <elliott> It would be pretty weird if the entire computer inventory stopped selling BIOS motherboards over night.
23:25:25 <pikhq_> elliott: IIRC they sell mobos that can be toggled between UEFI and BIOS.
23:25:26 <elliott> Sgeo: Are you using the language because it is a useful tool or because it is a community?
23:25:45 <elliott> If the former, yes, if those ways affect how you are coding in a negative way that other languages do not. If the latter, it doesn't matter.
23:26:14 <elliott> pikhq_: Do you have to deal with this "Secure" Boot nonsense if you do UEFI?
23:26:17 <elliott> Or is that a separate thing?
23:26:41 <pikhq_> elliott: That's a separate thing.
23:27:14 <pikhq_> Well. Technically, it's a feature of UEFI...
23:27:29 <pikhq_> But anyways. On x86, Microsoft is mandating that it be optional.
23:27:33 <pikhq_> So you needn't bother.
23:29:21 -!- augur has quit (Read error: Connection reset by peer).
23:29:58 -!- augur has joined.
23:30:23 <zzo38> I should make up a BIOS which is complete PC BIOS, public domain, and Forth interpreter built-in which is also used to configure it, and then I think it would be completely OK. It can then be made the computer which has a jumper to enable UEFI, to enable BIOS, and to enable both.
23:32:10 <zzo38> I think it would be better than what is currently have, isn't it? Especially if it is also BIOS one function is to download an operating system over the internet, so that you can install an operating system even if you do not have a disk, or use it to emulate a VT100 terminal, or whatever
23:33:25 <Jafet> You can even write, in forth, an ipmi like operating system. Oh wait.
23:33:38 <zzo38> What is a ipmi like operating system?
23:34:08 <elliott> pikhq_: I forget, does btrfs support shrinking?
23:34:54 <Jafet> Well, I suppose real IPMI runs on separate hardware
23:39:38 <Sgeo> International Microwave Power Institute?
23:49:27 -!- kinoSi0 has joined.
23:52:05 -!- kinoSi has quit (Ping timeout: 246 seconds).
23:59:35 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
00:05:39 -!- jiella has quit (Quit: Leaving.).
00:14:46 -!- DHeadshot has joined.
02:01:01 <elliott> Deewiant: I forget, what do you use for AUR stuff?
02:25:06 -!- oklofok has joined.
02:28:04 -!- oklopol has quit (Ping timeout: 248 seconds).
02:33:41 -!- augur has quit (Remote host closed the connection).
02:36:56 -!- elliott_ has joined.
02:37:00 -!- elliott has quit (Read error: Connection reset by peer).
02:50:41 -!- augur has joined.
03:04:52 -!- augur has quit (Remote host closed the connection).
03:13:23 -!- augur has joined.
03:15:08 -!- augur has quit (Remote host closed the connection).
03:31:54 -!- augur has joined.
03:32:56 -!- augur has quit (Remote host closed the connection).
03:38:05 -!- augur has joined.
03:45:26 -!- augur has quit (Remote host closed the connection).
04:13:30 <zzo38> What hardware description languages specify gates explicitly instead of specifying arithmetic and assignments and so on?
04:15:51 -!- oerjan has quit (Quit: Good night).
04:31:28 <Sgeo> "If ever you are by far the best, or the most interested, student in a classroom, then you shouldfind another classroom."
04:31:56 * Sgeo feels like it's sort of too late to start finding another classroom
04:32:02 <zzo38> Why? And also why are the improper characters?
04:32:50 <kmc> zzo38: SPICE
04:32:57 <elliott_> Sgeo: are you still at that shitty university
04:33:01 <kmc> also JSim, the thing used by MIT 6.004
04:33:07 <Sgeo> elliott_, yes, for my last semester before I graduate.
04:33:22 <elliott_> Sgeo: do i get to gloat about how i told you so
04:33:22 <kmc> in which you design a RISC processor at the level of individual logic gates
04:33:31 <elliott_> or would that be insensitive......
04:34:57 <kmc> yeah that's good advice for jobs as well
04:35:49 * Sgeo is very used to being the best in his class
04:36:06 <Sgeo> Although Intro to Drawing is giving me a major slap in the face in that area.
04:40:34 <zzo38> kmc: Isn't SPICE for analog designs? What does JSim?
04:40:53 <kmc> JSim does both analog electrical and digital logical simulation
04:40:58 <kmc> it uses SPICE-like syntax for both
04:41:41 <kmc> i don't know if it is used outside of 6.004
04:41:48 -!- augur has joined.
04:41:56 <kmc> it is a pretty basic program but well-suited to the course
04:42:03 <zzo38> Can any of them be compiled to make a hardware ASIC or to program a CPLD or FPGA?
04:44:58 <zzo38> If not as-is, then how is it?
04:46:57 <kmc> well, there's no fundamental reason you couldn't write a compiler from JSim language to VHDL or something
04:47:37 <kmc> it is probably a silly thing to do
04:47:43 <zzo38> Can it not compile directly into the binary formats?
04:47:50 <kmc> JSim? no, i don't think so
04:47:53 <Jafet> Doesn't VHDL work at the gate level?
04:47:56 <kmc> it is just a simulator for teaching purposes
04:48:38 <kmc> Jafet: kinda, you specify arithmetic / logical expressions, but not how to realize them with individual gates
04:48:41 <kmc> that's my understanding
04:58:05 -!- augur has quit (Read error: Connection reset by peer).
04:59:34 -!- augur has joined.
05:03:28 <kmc> i wonder if automatic lint/style checking can be harmful in some cases
05:03:39 <kmc> my reasoning is thus:
05:03:54 <kmc> the value of these tools isn't that style violations are actually that important
05:04:03 <kmc> it's that they catch cases where programmers are generally not paying attention
05:04:10 <kmc> bad style is just a symptom of that
05:04:52 <kmc> but if you have an automatic style check on commit, you might consider that passing the check satisfies your obligation to pay attention
05:05:04 <kmc> and the result is bad code which is harder to spot
05:06:00 <pikhq_> Besides which, style violations are easy to notice.
05:07:34 <kmc> when i run such a tool on a reasonable size codebase, it usually finds a bunch of violations, and a few real bugs
05:08:31 <elliott_> the real reason lint is useless is because it complains about the shit you don't care about and doesn't complain about the shit you do
05:08:38 <kmc> i'm talking about tools which don't just check, like, how many spaces you indent, but will catch undefined variables in python, accidentally global things in javascript, etc
05:08:41 <elliott_> anyway kmc your argument is also an argument against compiler warnings in general
05:08:50 <elliott_> i don't know whether pointing this out will change your opinion or not
05:09:55 <kmc> no because compiler warnings (and static typing and test cases) have a much higher hit ratio for finding important problems
05:11:58 <kmc> if you have a tool which finds lots of important problems, then for sure you want to run it all the time
05:12:53 <kmc> but with something like lint checking, maybe there's a 'false sense of security' problem, where people focus on making the lint checker's irrelevant complaints go away rather than actually reviewing their code
05:16:53 <kmc> i don't know, this is something i'm thinking about in a specific context and maybe doesn't make sense generally
05:23:04 <elliott_> what's the difference between clang's fanciest warnings and lint
05:23:43 <kmc> i don't think there is a fundamental difference between lint checking and compiler warnings
05:23:46 <Sgeo> Can Haskell's type checking cause a false sense of security?
05:24:03 <kmc> just a practical difference in the tools we use for each
05:24:17 <kmc> Sgeo: yeah
05:24:18 <coppro> Sgeo: totallyInnocentFunction = unsafeCoerce
05:24:40 <kmc> there is a lot of thread-unsafe code on hackage
05:24:56 <kmc> thanks to uncareful use of C bindings
05:25:15 <kmc> this is just an example where types don't help you much
05:25:24 <kmc> also all the common partial functions like 'head' etc
05:26:59 <Jafet> “Some programmers like to use the GCC ‘-Wall’ option, and change the code whenever it issues a warning. If you want to do this, then do. Other programmers prefer not to use ‘-Wall’, because it gives warnings for valid and legitimate code which they do not want to change. If you want to do this, then do. The compiler should be your servant, not your master.”
05:28:36 <pikhq_> And then there's GNU, who stick -Werror in the CFLAGS.
05:28:53 <kmc> i think the people who like to ignore warnings will more often than not be idiot macho ninja rockstar hackers who don't have any good reason to do the weird things they do
05:29:32 <coppro> pikhq_: that's not a bad move if you carefully select your warnings
05:29:46 <coppro> Jafet: clang has -Weverything
05:29:51 <kmc> they probably do these things based on some misunderstood C folklore from 30 years ago rather than an understanding of current systems and compilers
05:29:56 <coppro> Jafet: it turns on all the warnings. all of them.
05:30:27 <pikhq_> coppro: binutils builds with -Wall -Werror by default.
05:30:51 <coppro> pikhq_: I forget what's in -Wall honestly
05:30:58 <kmc> i have done a lot of strange things with gcc and I almost always get it to build cleanly with -Wall, and feel that the solutions which make gcc happy are better
05:31:21 <pikhq_> Yes. And -Wall -Werror just adds to it.
05:31:23 <kmc> like "lol compiler, shut up about aliasing", no, lol programmer, learn the aliasing rules and when to use a union instead of pointer casts
05:31:47 <coppro> I usually have it on, granted, but it's more stupid because of the name than because of the warning
05:31:57 <coppro> kmc: yeah, that should be an error really
05:32:12 <coppro> (I know it can't be conformant and be an error, but since when has GCC cared anyway :P )
05:32:28 <elliott_> pointer casts aren't even conformant like that are they
05:32:47 <kmc> C compilers let you do so many things which are fundamentally nonsense yet basically stand up to casual testing
05:33:16 <kmc> this is a good reason to pay attention to warnings
05:33:45 <coppro> elliott_: they are conformant, but will likely lead to UB at runtime
05:34:16 <coppro> elliott_: arguably a compiler could refuse to translate a program which is guaranteed to produce UB, but if it's only a possibility, it can't refuse
05:34:17 <pikhq_> elliott_: There's rules governing how pointer casts may be performed.
05:34:51 <pikhq_> For instance, casting an arbitrary data pointer to a char pointer is *always* valid...
05:35:12 <zzo38> Some warnings are good, some warnings I don't like and want to turn off. And, some warnings I want to be errors instead (such as converting a pointer to integer without an explicit cast), but they don't seem to have options for all warnings individually
05:35:30 <pikhq_> And casting from a char pointer to another type might be valid.
05:35:46 <elliott_> coppro: well UB is not conformant, right
05:36:02 <pikhq_> elliott_: That's a philosophical question, really. :P
05:36:07 <coppro> elliott_: Yes, but only if it will occur.
05:36:29 <coppro> elliott_: If the program won't cause UB in its execution, it must execute correctly. If it will cause UB if executed, the program can do whatever
05:36:40 <coppro> (it can even fail to do the things that would lead to the UB)
05:36:42 <zzo38> coppro: O, well, GNU doesn't and yet some targets are only supported by GNU, such as MMIX. I wanted MMIX on LLVM as well but they don't do that.
05:37:09 <elliott_> coppro: so a program which adds two signed numbers is conformant if you give it two that don't overflow, but non-conformant if you give it two that overflow?
05:38:11 <coppro> elliott_: right, and if it's run with two numbers that overflow, it doesn't even need to get that far. It could exec("nethack") instead of doing anything else.
05:38:13 <pikhq_> elliott_: Yes. Hence why "UB = non-conformant" is a philosophical question.
05:38:51 <coppro> it is conformant in the sense that a conforming implementation must correctly translate it, and the result must correctly execute if it does not cause UB.
05:39:18 <coppro> If a TU is not conformant, a conforming implementation must issue a diagnostic, but then is free to do whatever
05:39:22 <elliott_> coppro: i feel there is some self-contradiction here
05:39:46 <coppro> (so a truly conforming implementation will warn about all extensions, except a few like pragmas where implementations are specifically allowed to define behaviour)
05:42:08 <pikhq_> Surely not; determining if a TU invokes UB in C is identical to the halting oracle...
05:42:27 <coppro> pikhq_: Not UB; that's conforming.
05:42:49 <pikhq_> void halts() { /* arbitrary function body that may or may not return; */; *NULL = 0; }
05:43:15 <coppro> the implementation must translate that
05:43:53 <pikhq_> And if control flow will always hit the end, then the implementation, according to you, must issue a diagnostic.
05:44:10 <pikhq_> That is to say, a conformant implementation must determine if arbitrary C halts.
05:44:19 <coppro> I meant for something like "int * int = 3;"
05:45:01 <pikhq_> So, you mean a conforming implementation must issue a diagnostic on *parse errors*?
05:45:19 <pikhq_> That's not what you said, you just said "if a TU is not conformant", in a context where you were saying "UB = not conformant"...
05:45:35 <coppro> in that an implementation must translate it.
05:45:45 <coppro> pikhq_: A parse error or a semantic error or anything else that violates the requirements
05:45:55 <pikhq_> Okay, then. Now we're on the same page.
05:46:02 <zzo38> What semantic error, then?
05:46:31 <pikhq_> Except, of course, that most C extensions would not be *parse* errors in C, but rather explicit UB.
05:46:40 <zzo38> Is it requires to specify what parse error, instead of just if it is error or not?
05:46:40 <coppro> pikhq_: __attribute__ comes to mind
05:46:42 <pikhq_> __attribute__(()) invokes undefined behavior.
05:47:12 <coppro> pikhq_: that does not seem right
05:47:25 <olsner> if programs with UB were not conformant that'd make the whole concept of UB a bit meaningless I think
05:47:43 <pikhq_> __* is a reserved name; using it in any context is UB.
05:48:17 <coppro> it's unclear what 'reserved' means
05:48:51 <pikhq_> "Reserved" means "using this is UB". That's what it's defined as.
05:49:08 <coppro> pikhq_: really? Not as making the code ill-formed?
05:49:41 -!- kinoSi0 has quit (Read error: Connection reset by peer).
05:50:09 -!- kinoSi has joined.
05:51:14 <coppro> pikhq_: well an example I can think of is 'signed overflow is defined'
05:51:23 <coppro> no wait, that's runtime
05:51:33 <pikhq_> "If the program declares or defines an identifier in a context in which it is reserved, or defines a reserved identifier as a macro name, the behavior is undefined."
05:51:46 <pikhq_> So, iff you try and #define or #undef __attribute__ it's UB.
05:53:17 <coppro> ah, GCC statement expressions are a good example
05:53:21 <olsner> if you don't define it yourself, you'd be referencing something that isn't necessarily defined?
05:54:00 <olsner> unless by random chance magic it happens to be there, and then I guess you just have no way to know what it does
05:54:19 <coppro> sure, but a conformant compiler will tell you that something happened!
05:54:37 <coppro> of course, a diagnostic could easily be "i dont want to live any more"
05:56:56 <pikhq_> Hmm. There are in fact a decent number of syntax errors that are UB.
05:57:20 <pikhq_> "The initializer for a scalar is neither a single expression nor a single expression closed in braces" invokes UB.
05:58:13 <pikhq_> It is UB for a source file to be both nonempty and not end with a newline.
05:58:50 <coppro> a number of those UBs are, AIUI, due to old implementations with weird behaviours
05:58:51 <olsner> but an empty source file is ok?
05:59:06 <coppro> pikhq_: you know trigraphs?
05:59:21 <pikhq_> However, the empty quine will be UB. Because that does not define main.
05:59:49 <pikhq_> It is UB for there to be an unmatched ' or "
06:00:59 <pikhq_> It is UB for an identifier to start with a digit.
06:01:16 <monqy> > length "aaaaaaaaaaaaaaaaaaaa"
06:01:37 <coppro> pikhq_: They are in C++11 because of IBM
06:01:58 <pikhq_> Surely they can update to UTF-EBCDIC
06:02:03 <coppro> the IBM reps reportedly said "We're sorry. We really wish we could take them out, but we have actual code that depends on these actually being in the standard."
06:02:51 <olsner> herp, if they need their code to follow the latest standard they should just update it
06:03:14 <shachaf> olsner: Have you considered being more like oerjan?
06:04:37 <olsner> it's not something I've considered per se, but I'm always open for suggestions if you want me to change my behavior
06:04:46 <shachaf> Maybe shuffle your nick around.
06:04:56 <olsner> oh, that would only be confusing
06:04:59 <elliott_> shachaf: have you considered being less like shachaf
06:05:11 <monqy> but then he wouldn't be shachaf now would he
06:05:14 <shachaf> elliott_: have you considered being more like monqy
06:05:23 <olsner> right, I did that the other day
06:06:08 <monqy> wow zezvfgrezbaxrl is my secret name how did you know
06:06:40 <olsner> !rot13 mistermysterymonkey
06:17:28 <coppro> the supreme court of canada issued "an order in the nature of mandamus"
06:17:36 <coppro> I wonder what the distinction between that and actual mandamus is
06:28:14 <coppro> that could explain a lot
06:31:31 <pikhq_> coppro: It appears that's a *US* legal term?
06:32:20 <pikhq_> I'm going to declare "fuck if I know"
06:32:53 <coppro> pikhq_: it's not purely US
06:33:02 <fizzie> "A strictly conforming program shall use only those features of the language and library specified in this International Standard.3) It shall not produce output dependent on any unspecified, undefined, or implementation-defined behavior, and shall not exceed any minimum implementation limit."
06:33:21 <coppro> pikhq_: mandamus is an order by a court to a government agency to perform some action
06:34:53 <coppro> pikhq_: most notably when a court refuses to hear a case citing lack of decision; the court has refused to hear the case so it is not a decision which can be appealed, so a higher court can issue mandamus to force it to hear the case
06:39:08 <fizzie> pikhq_: olsner: An empty source file is not ok: the syntax is "translation-unit: external-declaration | external-declaration translation-unit" and there's no way for external-declaration to be empty.
06:39:27 <fizzie> (And yes, it makes the bit about nonempty source files and newlines a bit bizarre.)
06:42:21 <fizzie> I suppose the intent is arguable, though. But at least GCC folks have interpreted it so that the translation unit as a whole must be parseable as the nonterminal called 'translation-unit', and hence rejects the empty file.
06:42:42 <coppro> pikhq_: but it can generally be used for anything. One example I can find is ordering a municipality to impose tax
06:45:11 <pikhq_> coppro: I was referring to "nature of mandamus" in particular
06:45:30 <pikhq_> "Mandamus" appears to be a UK-derivative legal system term.
06:48:13 <coppro> pikhq_: The context is that the court ordered the government to do something, but said it was "of the nature of mandamus"
06:48:45 <coppro> http://scc.lexum.org/en/1994/1994scr3-1100/1994scr3-1100.html
06:50:36 <fizzie> It's a trade mark of JimNeiL.
06:51:03 <coppro> thank you for that knowledge
06:51:06 <coppro> I feel smarter already
06:51:39 <pikhq_> coppro: I declare that legal systems are overly obtuse.
06:51:51 <zzo38> I think empty source files ought to be allowed in C, but they shouldn't compile into an executable since there is no main. It should just make a object file which does nothing if linked with other files, as if that file is not there.
06:51:53 <pikhq_> And that they need replaced with a suffusion of yellow.
06:52:56 <zzo38> Isn't it more logical this way?
06:53:29 <coppro> pikhq_: I'm sorry. I don't think you have the necessary jurisdiction.
06:53:40 <coppro> pikhq_: Perhaps you should ask a court to do that.
06:53:55 <fizzie> zzo38: You can have a source file that says "typedef int foo;" -- that's almost as good. It compiles into an object file, and since the typedef only has file scope and doesn't make any external-linkage objects or anything, it's quite close to "not there".
06:54:17 <fizzie> (Okay, admittedly it might end up in the debugging information.)
06:55:10 <zzo38> fizzie: Well yes I suppose you can work around in that way, but still I think it would just be more sensible to allow an empty source file.
06:55:17 <pikhq_> coppro: But I a sovereign citizen!
06:55:25 <pikhq_> I do not recognize the jurisdiction of the courts!
06:55:48 <coppro> pikhq_: how do I sign up?
06:57:04 <fizzie> zzo38: I suppose many compilers already do, since it is indeed more logical. GCC does unless compiling with "-pedantic", and as mentioned, the standard isn't very explicit about it.
06:57:39 <fizzie> clang seems to accept it always.
06:57:47 -!- ais523 has quit.
06:58:29 <zzo38> Does clang not have the pedantic mode?
06:58:55 <zzo38> Then they should fix it, isn't it?
06:59:35 <fizzie> Well, their interpretation of the standard might be different. The part in the translation phases about an empty source file is arguably evidence that empty translation units should be okay too.
07:00:17 <fizzie> Actually, how coincidental.
07:00:25 <fizzie> Date: Wed Jun 6 12:25:21 2012 "Add pedantic warning -Wempty-translation-unit (C11 6.9p1)."
07:00:36 <fizzie> (My version here at work is older than that.)
07:10:26 <elliott_> <fizzie> It's a trade mark of JimNeiL.
07:10:40 -!- DHeadshot has quit (Read error: Connection reset by peer).
07:10:54 -!- DHeadshot has joined.
07:23:07 <zzo38> Last Dungeons&Dragons session I have played is incomplete, so no experience points yet. But still I think I have thought of what to do next in this time between sessions. It is a bit like you can in chess by mail, you have a lot of time to figure out. Except, chess doesn't have hidden information, and with chess by mail this happens after every move instead of just a session.
07:24:50 <zzo38> Therefore, some of my strategies are similar to that of chess. (But not always)
07:30:06 <zzo38> So it can include: zwischenzug, zugzwang, fork check, discovered check, smothered mate, and so on.
07:34:09 <zzo38> Since we are very outnumbered, we can use this to our advantage.
07:35:51 <zzo38> (It wouldn't work if we weren't outnumbered.)
07:39:32 <zzo38> Do you know the "grotesque" chess problem where the white has only one king and one pawn (still on the starting row), and black still has sixteen pieces, and white will win?
08:15:04 -!- zzo38 has quit (Remote host closed the connection).
08:27:53 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
09:07:54 -!- MoALTz_ has quit (Ping timeout: 264 seconds).
09:10:19 -!- MoALTz has joined.
09:26:57 -!- monqy has quit (Quit: hello).
09:37:58 -!- DHeadshot has quit (Read error: Connection reset by peer).
09:38:03 -!- DH____ has joined.
10:02:19 -!- copumpkin has quit (Ping timeout: 260 seconds).
10:02:53 -!- copumpkin has joined.
10:54:08 -!- ais523 has joined.
11:02:29 -!- ais523 has quit (Read error: Connection reset by peer).
11:02:43 -!- ais523 has joined.
11:06:23 -!- mig22 has joined.
11:09:02 -!- barts_ has joined.
11:12:24 -!- barts has quit (Ping timeout: 260 seconds).
11:15:12 -!- ais523 has quit (Ping timeout: 246 seconds).
11:26:09 -!- epicmonkey has joined.
11:28:48 -!- ais523 has joined.
11:31:36 <elliott_> ais523: q q q qqq qq q q qqq q
11:31:58 <elliott_> pikhq_: Hey, is Nvidia or ATI better supported by Linux this month?
11:42:01 -!- elliott_ has quit (Remote host closed the connection).
11:43:43 -!- elliott has joined.
11:55:42 <ais523> quick sanity check: is banning / and .. enough to avoid all directory traversal attacks on UNIX?
11:55:51 <ais523> working on the automarker script again, looking for exploits
11:56:15 <ais523> this is in a field that's /meant/ to be an email address
11:56:19 <ais523> but you know how loose the email RFC is
11:56:28 <ais523> (specifically, the address-part of the address)
12:01:11 <ais523> oh, I guess there's NUL, but I'm pretty sure that's not allowed in an email address (and will be rejected by the email address parser I grabbed)
12:01:38 -!- Frooxius has joined.
12:03:10 <ais523> hmm, I've thought of a brilliant exploit, actually
12:03:18 <ais523> but I doubt the students will come up with it
12:03:24 <ais523> (not in the filename thing, in something else)
12:04:11 <ais523> basically, the program could bypass one of its checks by outputting its own SHA-1 hash
12:04:27 <ais523> which you could accomplish with a sufficiently clever modification of a quine
12:04:45 <ais523> note that you can't use any libraries for this, so the marker would probably notice the SHA-1 code as it scrolled past
12:05:43 <elliott> I can't imagine why that would happen
12:06:08 <ais523> basically, because we're linking the student's code to provided code
12:06:14 <ais523> we want to check that the provided code has run
12:06:22 <ais523> so we give it the SHA-1 hash of the student's code
12:07:23 <ais523> I guess we could just use a random string
12:07:42 <ais523> "Found dependencies: Capture::Tiny, Throwable::Error, Email::Abstract, Moose"
12:07:49 <ais523> hmm, this is going to take a while to install…
12:08:04 <ais523> there are downsides to emergency use of CPAN
12:22:39 <elliott> ais523: have i told you about cpanminus
12:22:48 <elliott> it has made my life less hellish
12:23:33 -!- ais523_ has joined.
12:23:44 -!- ais523 has quit (Read error: Connection reset by peer).
12:23:52 -!- ogrom has joined.
12:25:06 <elliott> ais523: have i told you about cpanminus
12:25:08 <elliott> it has made my life less hellish
12:25:34 <fizzie> Less hellish, but sometimes loopy, I'd say.
12:26:09 <elliott> well ais523_ doesn't count as real fizzie
12:26:25 <fizzie> Few things count as real fizzies.
12:28:02 <fizzie> I don't know, I haven't counted.
12:29:20 <ais523_> elliott: I'm using cpanminus
12:29:23 -!- ais523_ has changed nick to ais523.
12:29:29 <ais523> luckily the two play together well
12:29:36 <ais523> although it's a pain to get initially set up without root
12:30:00 -!- Kiwitinker has joined.
12:36:09 <HackEgo> Kiwitinker: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
12:39:02 -!- Kiwitinker has left.
12:39:42 <fizzie> The welcoming procedure sure saves a lot of time, though.
12:39:59 <ais523> btw, what's that hash in the topic the hash /of/?
12:40:24 <fizzie> You will need to break SHA-3 to find out, I suppose.
12:40:40 <fizzie> (Perhaps that's why it's in the topic.)
12:40:42 <ais523> or ask someone who was present for the hashing
12:40:47 <ais523> although, that's an SHA-3 hash?
12:40:52 <ais523> I assumed those would be alphanumeric or something
12:41:01 <ais523> and it looks like an SHA-2 hash based on the length
12:41:08 <fizzie> SHA-3 lengths are equal to SHA-2.
12:41:20 <fizzie> And SHA-3 was the topic when the hash was added, so I kind of assumed.
12:41:29 <fizzie> That's what the "new hash function overlords" is referring to.
12:43:01 <fizzie> <pikhq_> Yup, SHA3-224.
12:43:06 <fizzie> That's what it's claimed to be.
12:44:13 <fizzie> Apparently it's a hash of "I, for one, welcome our new hash function overlords".
12:44:27 <ais523> was that checking the logs, or guessing the input?
12:44:51 <fizzie> To find the hash algorithm; it was mentioned, nearby.
12:49:12 <ais523> is there a nonbreaking version of  ?
12:51:14 <fizzie> It's the U+202F NARROW NO-BREAK SPACE, "a narrow form of a no-break space, typically the width of a thin space or a mid space".
12:51:25 <fizzie> (But that's a bit vague.)
12:52:10 -!- Phantom_Hoover has joined.
12:55:38 <ais523> fizzie: well it looks right, anyway
12:56:03 -!- ogrom has quit (Quit: Left).
12:58:42 -!- ogrom has joined.
13:02:49 -!- ais523 has quit (Read error: Connection reset by peer).
13:03:22 -!- ais523 has joined.
13:16:11 -!- ais523 has quit (Read error: Connection reset by peer).
13:16:28 -!- ais523 has joined.
13:16:32 <ais523> [14:15] <ais523> hmm, I take it Haskell doesn't have ignore in its standard library, on the basis that it's completely useless?
13:16:33 <ais523> [14:15] <ais523> or did someone put it there anyway?
13:16:43 <ais523> not in Prelude, at least
13:26:07 <elliott> fizzie: by the way what function got chose as sha-3
13:26:10 <elliott> i assume you are Wise enough to Know
13:27:11 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:28:01 -!- ais523 has quit (Read error: Connection reset by peer).
13:28:08 -!- ais523_ has joined.
13:29:40 <fizzie> elliott: That kcckkaekekcakce one.
13:29:53 <fizzie> The one that sounds like Korean laughter.
13:32:02 -!- ais523_ has changed nick to ais523.
13:37:34 -!- heroux has quit (Ping timeout: 240 seconds).
13:46:12 <elliott> fizzie: Did that one have any ~famous names~?
13:48:33 <fizzie> elliott: I don't know who's famous in crypto-circles; but I mean it's not the Schneier one. These people were from STMicroelectronics.
13:49:02 <fizzie> Oh, and it's also not that Grøstl thing that had some reasonably known dude I believe.
13:49:03 -!- copumpkin has joined.
13:49:04 <ais523> one advantage of keccak that people are mentioning is that it's completely different from sha-2
13:49:14 <ais523> so they think it's unlikely they'll both be broken the same way
13:49:27 <fizzie> And the other is the parallelizability and efficiency in especially hardware implementations.
13:50:30 <fizzie> Keccak is one of those spongey things, so for once it's not a Merkle-Damgård construction.
13:51:00 <ais523> fizzie: is it meant to be particularly efficient or particularly inefficient?
13:51:15 <ais523> we have block ciphers for the inefficient hashes
13:51:58 <fizzie> It's got some kind of a "tree mode" thing that's supposed to be even more parallelizable; there are GPU implementations already.
13:51:59 -!- DH____ has quit (Read error: Connection reset by peer).
13:52:21 -!- DHeadshot has joined.
13:52:24 <fizzie> And supposedly it's especially efficient when it comes to speed/area considerations in dedicated hardware.
13:52:28 -!- Arc_Koen has joined.
13:53:17 <fizzie> And the software implementation, while maybe not the fastest of SHA-3 candidates, wasn't too bad either.
13:53:45 <elliott> fizzie: I guess Schneier and Bernstein are cryptofamous to me and nobody else. :p
13:53:45 <fizzie> I think I saw something like 12.5 cycles/byte mentioned.
13:53:52 <elliott> How do you pronounce Keccak anyway?
13:54:24 <ais523> elliott: I think you pronounce the double c as a k, and don't let the vowels interact with each other
13:54:29 <fizzie> elliott: According to kmc, "it's pronounced 'kashyyyk'", but...
13:54:52 <fizzie> That *was* right after references to LORD KECCAK and so on.
13:54:59 <ais523> <Schneier> "8068" is the least common PIN -- that'll probably change now that the fact is published.
13:55:52 <ais523> the world's least memorable 4-digit number?
13:56:02 <fizzie> I don't know, it's like 8086 with a swapped second pair.
13:56:26 <fizzie> You should use it as your personal PIN number.
13:56:35 <oklofok> i don't get to choose mine :/
13:56:36 <elliott> then if someone tries to spy on me while I put it in I'll say aah, you'll never get it, it's the least common PIN number in the world!
13:56:48 <elliott> fizzie: I use PNG graphics too!!
13:56:59 <fizzie> It's good to use portable PNG graphics files.
13:57:01 <elliott> I'll put my fucking PIN number in the fucking ATM machine and you won't complain
14:01:30 -!- ogrom has quit (Quit: Left).
14:11:04 <elliott> fizzie: Pungent Nocturnal Gerbils.
14:20:26 -!- augur has quit (Remote host closed the connection).
14:25:11 <oklofok> penis nads genitals lol haha
14:47:49 -!- Jafet has quit (Quit: Leaving.).
14:50:08 -!- FreeFull has joined.
14:57:40 -!- augur has joined.
15:00:59 -!- augur has quit (Remote host closed the connection).
15:01:16 -!- atriq has joined.
15:01:28 -!- Jafet has joined.
15:09:52 -!- augur has joined.
15:10:45 -!- mig22 has quit (Quit: mig22).
15:15:07 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
15:25:12 <atriq> Did we work out what to call that category last night?
15:40:12 <atriq> So not the Product Semigroupoid or something like that
15:43:14 -!- ogrom has joined.
15:59:10 -!- sebbu has quit (Ping timeout: 260 seconds).
15:59:55 <atriq> ...I need better friends
16:00:02 <atriq> elliott, will you be my friend?
16:02:45 <atriq> I'm experiencing Ship-to-ship combat in the TVTropes sense
16:02:53 <atriq> SOME OF WHOM ARE ME
16:03:10 <elliott> I... think I will elect to not get involved.
16:03:20 <elliott> You could try being friends with fizzie??? He's nice!
16:03:30 <atriq> btw, Gay Dads is a way better ship than Alladin
16:03:36 -!- sebbu has joined.
16:09:21 -!- Phantom_Hoover has joined.
16:11:37 <atriq> How do OpenOffice and LibreOffice differ?
16:13:21 <FreeFull> Most of the developers moved to LibreOffice
16:13:37 <Gregor> atriq: LibreOffice was going to be “the” followup to OOo until Oracle decided to give it to Apache. It's not clear where OOo is going now, but LibreOffice has made a lot of code cleanups, and hypothetically things are much smoother (I haven't noticed any difference). Most of the developers and distros jumped ship before the OOo->Apache switchover.
16:15:52 <elliott> atriq: One has an "Open" and the other a "Libre".
16:17:42 <Sgeo> Wait, LibreOffice is no longer the followup to OOo?
16:18:31 <Gregor> Sgeo: LibreOffice came about when it looked like Oracle was just going to let it stagnate, but instead they gave the rights to the Apache foundation.
16:21:41 -!- esowiki has joined.
16:21:42 -!- glogbot has joined.
16:21:43 -!- glogbackup has left.
16:21:45 -!- esowiki has joined.
16:21:46 -!- esowiki has joined.
16:21:55 -!- FireFly has joined.
16:23:03 <Sgeo> The Apache Foundation seems to do a lot of stuff that's not web server stuff
16:23:14 <Sgeo> They maintain some sort of convenience library for I/O stuff in Java
16:23:28 <Gregor> Yeah, they do all sorts of shit.
16:23:29 <Sgeo> And ... a packaging system for Java
16:23:55 <atriq> They have that Google Wave thing which was actually quite cool but nobody understood it
16:24:02 -!- zzo38 has joined.
16:24:17 <elliott> Ride the Google Wave dot Com
16:24:51 * Sgeo is sort of in the Java ecosystem now, for better or worse
16:25:21 <elliott> Sort of In the Java Ecosystem Now: The Game of the Movie
16:25:39 <Gregor> Yeah, I'm kinda in the Java ecosystem too right now.
16:25:44 <Gregor> P.S. I work at Oracle, lol
16:26:16 <elliott> Sort of In the Java Ecosystem Now/Kind of In the Java Ecosystem Now, double concept album about being resp. sort of and kind of in the Java ecosystem now.
16:27:06 <Gregor> I would buy that album.
16:27:45 <elliott> one day I will make it and it will be a modern masterpiece
16:28:50 <kmc> new JavaEcosystemManagerFactory().getJavaEcosystemManager(new DefaultJavaEcosystemFactoryConfig()).add(new JavaEcosystemElement(Sgeo)).add(new JavaEcosystemElement(Gregor))
16:29:16 <elliott> prospective song titles: Ant (What the Fuck is This Shit? Is that XML?); I Don't Fucking Understand Maven, Guess it's Back to Ant; Hey, It's Alright, I Never Cared About GUI Toolkits that Are Worth a Damn Anyway
16:29:57 <Sgeo> Leiningen is good... until you want to use a standalone .jar in your project.
16:30:01 <Gregor> kmc: new EcosystemManagerFactoryFactory(new JavaEcosystem()).createEcosystemManager(new JavaEcosystemConfiguration(JavaEcosystemConfiguration.CONFIGURATION_PARAMETERS.DEFAULT))
16:30:16 <elliott> Damn These Folks Are Some Windows-Using Bullshit
16:30:18 <Gregor> Oops, misused my factory factory.
16:30:38 <Gregor> kmc: new EcosystemManagerFactoryFactory().createEcosystemManagerFactory(new JavaEcosystem()).createEcosystemManager(new JavaEcosystemConfiguration(JavaEcosystemConfiguration.CONFIGURATION_PARAMETERS.DEFAULT))
16:30:48 <elliott> Wanting to Release a Java Package but Not Having a Domain Name to Name the Package With Blues (Pt. I)
16:30:58 <elliott> i hope you are all imagining these songs in your head
16:31:07 <Sgeo> Also, does Swing really suck that much? And if it does, is it usability issues or fundamental issues? Because if the former, there's a Clojure library called Seesaw.
16:31:07 <kmc> import static cx.goatse.*;
16:31:30 <fizzie> elliott: I don't think your suggestion "took".
16:31:41 <Gregor> Sgeo: Now if only Clojure didn't suck that much…
16:33:10 <kmc> i would buy that album and then return it but first i would rip it but only to 96 kbps mp3
16:33:10 <elliott> JVM-Hosted Languages Trilogy: Pt I. Clojure (Hey, This is Almost Lisp); Pt II. Scala (Hey, This is Almost Haskell); Pt III. Conclusion (Wow, They're All Shit)
16:33:30 <kmc> you forgot rhino!!!!!!!!!111
16:33:50 <shachaf> hi is it make fun of java o'clock
16:34:09 <elliott> kmc: Downloading an Illegal Pirated Copy of the Timeless Classic "Sort of In the Java Ecosystem Now/Kind of In the Java Ecosystem" Using HotJava
16:34:23 <elliott> if you are in the java ecosystem you have to use hotjava
16:35:06 <elliott> kmc: also if i included rhino it wouldn't be a trilogy
16:35:10 <elliott> and i don't know what comes after trilogy
16:35:17 <elliott> i'm here to provide the soul dammit
16:35:26 <Sgeo> The HHGG trilogy is not a trilogy.
16:35:38 <shachaf> elliott is the sole provider
16:35:54 <shachaf> The first Xanth trilogy has 3³ books.
16:36:02 <shachaf> They're all pretty much the same.
16:37:38 <elliott> has anyone actually used hotjava
16:41:25 <Gregor> elliott: <Gregor> Clojure is your argument for the popularity of Lisp? <Gregor> All seven Clojure users thank you. <Sorella> I never said Lisp is popular eh <Sorella> But it's the only dialect that actually has got some uses outside of academia and long-forgotten companies. <Gregor> Yes, by soon-to-be-long-forgotten companies. * Sorella uses it at work D:
16:47:52 <elliott> clojure is like haskell but worse and also less popular
16:48:08 <FreeFull> Clojure isn't really like haskell
16:48:18 <elliott> it was a not entirely serious comparison
16:48:22 <elliott> they both try to do stm! only one succeeds
16:55:39 <shachaf> elliott: Do you know how MonadFix works?
16:56:05 -!- AnotherTest has joined.
17:01:00 -!- elliott has quit (Ping timeout: 260 seconds).
17:02:34 <AnotherTest> ais523: Have you read my suggestion for the wiki? What do you think?
17:09:40 <zzo38> I think you can make a writer monad with Codensity and it can also be done with CodensityAsk.
17:10:20 -!- kinoSi0 has joined.
17:10:22 -!- TeruFSX_ has joined.
17:10:47 -!- kinoSi has quit (Read error: Connection reset by peer).
17:12:47 -!- TeruFSX has quit (Ping timeout: 240 seconds).
17:18:01 -!- epicmonkey has quit (Ping timeout: 246 seconds).
17:18:50 <zzo38> For example: newtype X y z = X { runX :: y -> z -> z }; type Writer x = CodensityAsk (X x); write x = CodensityAsk (\(X a) f -> a x $ f ()); runWriter (CodensityAsk f) = f (X $ \a (b, c) -> (a : b, c)) ((,) []);
17:20:35 <zzo38> To make a write monad with Codensity, you could make up a "write only" class.
17:29:31 -!- ogrom has quit (Quit: Left).
17:33:48 -!- AnotherTest1 has joined.
17:34:19 -!- AnotherTest has quit (Read error: Connection reset by peer).
17:37:19 -!- variable has joined.
17:37:33 -!- augur has quit (Remote host closed the connection).
17:37:42 -!- variable has changed nick to Guest89785.
17:38:02 -!- Guest89785 has quit (Changing host).
17:38:02 -!- Guest89785 has joined.
17:38:04 -!- Guest89785 has changed nick to trout.
17:41:23 <fizzie> Sadly, I don't think it does binary literals. But there's always the things that read strings.
17:43:51 <fizzie> > fst . head $ readInt 2 isDigit digitToInt "100101"
17:44:47 <fizzie> There only seems to be premade readOct, readDec and readHex. Poor binary numbers, nobody likes 'em.
17:45:08 <fizzie> !perl print oct("0b100101");
17:45:24 <fizzie> Except maybe Perl and a few other guys.
17:45:55 -!- AnotherTest1 has changed nick to AnotherTest.
17:45:56 -!- augur has joined.
17:46:04 <kmc> happy canadian thanksgiving
17:46:12 <fizzie> AnotherTest: What, 0b000 literals? Not standardly.
17:46:41 <fizzie> GCC has an extension for 0b, unsurprisingly.
17:47:38 <fizzie> No printf formatting specifiers for binary in glibc, though, as far as I know.
17:48:36 <Gregor> !c printf("%ld\n", strtol("111", NULL, 2));
17:50:08 <fizzie> Now do it the other way around.
17:50:17 <Gregor> Yeah, that's the problem, innit :)
17:51:53 <fizzie> The ##c bot has a %b that's like %o/%u/%x except with binary. (Glibc has a mechanism for hanging custom hooks on unused -- maybe used, too -- conversion specifiers.)
17:53:34 <EgoBot> ./interps/gcccomp/gcccomp: line 52: 17997 Segmentation fault /tmp/compiled.$$
17:54:11 <Gregor> Dereferencing NULL is fun >_>
17:54:18 <fizzie> The weirdo printf specifier that writes to memory.
17:55:08 <fizzie> I believe there's been a number of related security bugs.
17:55:28 <zzo38> Why does printf have a command to write to memory? That doesn't make sense.
17:55:46 <fizzie> zzo38: It writes the number of so-far output characters there.
17:56:05 <fizzie> zzo38: I believe it's meant for tricky aligning of things and so on.
17:56:17 <zzo38> I think it would make more sense to just use the result of printf doesn't it already do that?
17:56:30 <fizzie> Yes, but that's the total string.
17:56:39 <fizzie> You can stick %n in the middle.
17:56:58 <Deewiant> You can call printf more than once, too.
17:56:58 -!- hagb4rd has joined.
17:57:18 <fizzie> Deewiant: Sure, but it's inkonkkenient.
17:58:38 <fizzie> !c int i, j; printf("%d%n%d%n", 123, &i, 456, &j); printf(" - %d %d", i, j);
17:59:26 <Deewiant> !c int i = printf("%d", 123), j = printf("%d, 456)"; printf(" - %d %d", i, j);
17:59:37 <fizzie> There was some bit in the standard related to sequence points or something that was only meaningful because of %n, I think. Maybe even a footnote.
17:59:58 <fizzie> Something about there being a sequence point after each conversion specifier.
18:00:17 <Gregor> I don't see why %n would have any relevance to sequence points.
18:00:23 <fizzie> So you can have %n writing into a string later printed with %s and it's well-defined.
18:01:05 <Gregor> … but %n doesn't write into a string, and if you did %n%d, then the %d would receive the old value.
18:01:21 <Gregor> But that has nothing to do with %n, it's just arguments being evaluated well before it's dereferenced.
18:01:24 <fizzie> %n can write into a string of you point it at one.
18:01:34 <zzo38> Is %n allowed to write a single byte value?
18:01:48 <Gregor> fizzie: OK, but that still has nothing to do with sequence points, it just has to do with the algorithm used by printf.
18:02:19 <fizzie> Gregor: But if there wasn't a sequence point after the %n you couldn't say whether it was the old or new value.
18:02:47 <Gregor> fizzie: That's not a sequence point, sequence points define the order of evaluation of subexpressions within a single expression.
18:02:58 <Gregor> fizzie: That's just steps in the algorithm of printf.
18:03:22 <fizzie> There are sequence points between statements, you know.
18:03:23 <fizzie> Let me quote it for you.
18:03:51 <Gregor> Yes, of course there are, that's what makes statements statements, but sequence points are what define the semantics of the C /language/, not C library functions.
18:05:30 <fizzie> Uh, after I clean up some cat puke.
18:08:34 <fizzie> "The formatted input/output functions shall behave as if there is a sequence point after the
18:08:38 <fizzie> actions associated with each specifier.274)
18:08:39 <fizzie> 274) The fprintf functions perform writes to memory for the %n specifier.
18:08:53 <fizzie> C11 7.21.6p1 and the footnote.
18:09:03 <Gregor> Why… would they word it that way X_X
18:09:39 <Gregor> Well, I suppose that's not worse a way to word it than anything else, but it confuses a language issue with a library issue.
18:10:10 <fizzie> Since you can't know anything about what goes on in the algorithm of printf, presumably they wanted to guarantee there's a sequence point in-between. I mean, a sequence point is defined to mean that all side effects have completed.
18:10:18 <fizzie> "The presence of a sequence point
18:10:18 <fizzie> between the evaluation of expressions A and B implies that every value computation and
18:10:22 <fizzie> side effect associated with A is sequenced before every value computation and side effect
18:11:54 <Gregor> “Since you can't know anything about what goes on in the algorithm of printf”
18:12:04 <Gregor> Of course you can, the C spec is defining its behavior!
18:12:46 <fizzie> I'm not sure what that means.
18:13:03 <zzo38> Do they still make ARMv2?
18:14:44 <Gregor> fizzie: You're saying that the C spec can't know anything about what goes on in the algorithm of printf, when it's /defining/ printf. It can choose to be as lax or precise in that description as it would like. This is an imperative language, it should be defining the imperatives, not trying to define it as if this were a functional language and then throwing sequence points, a trick to add precision to the language semantics, to the description of the implementat
18:15:14 <fizzie> Gregor: I'm not sure how it should be "defining the imperatives" there.
18:16:18 <fizzie> Gregor: I mean, it's defining certain actions that are associated with the conversion specifiers, and some of those actions involve side effects like writing to memory, so it's defining in which order those actions are sequenced, using the terminology related to those side effects.
18:17:18 * ion of a function.
18:18:03 <fizzie> ion: "ion of function" could be your kind-of title.
18:18:16 <zzo38> Is the VAX printf only using BCD?
18:18:59 <atriq> zzo38, did you think of a name for yesterday's category?
18:19:33 <zzo38> atriq: No, I did not.
18:20:42 <atriq> I'm not very interesting
18:20:55 <atriq> I walked backwards to my maths lesson today for the hell of it
18:21:54 -!- hagb4rd has quit (Ping timeout: 256 seconds).
18:23:45 <ais523> Arc_Koen: are you responsible for the latest TDWTF entry?
18:23:48 <ais523> or is it a different Koen?
18:24:10 <AnotherTest> (07:05:39 PM) AnotherTest: ais523: Have you read my suggestion for the wiki? What do you think?
18:26:09 <atriq> My ankles started hurting after a while
18:27:09 <AnotherTest> atriq: So you walked backwards through the corridors of your school or something?
18:27:12 <atriq> I walked backwards out of the library, up the staircase, waited outside a door for a bit, then into the classroom and sat down
18:27:52 <atriq> Then after the lesson I walked backwards out of the room, down a staircase, up the staircase again, along a corridor, down a different staircase, along another corridor, and back into the library
18:28:07 <fizzie> atriq: Weren't you at all afraid that someone would videotape (uh, I mean... mpeg-4-solid-store...) your walking, and then play it backwards, generating the illusion that you were walking forward?
18:28:32 <AnotherTest> and all your friends said "oh, that's perfectly normal, no reason to put this on youtube"?
18:28:42 <atriq> There's worse videos of me on the internet
18:29:05 <atriq> 2009 and 2010 were weird years for me
18:29:20 <zzo38> Walk backwards in the hallway with clock.
18:31:19 <atriq> Do I want to tell you?
18:31:32 <fizzie> It sounds as if you do.
18:31:46 <atriq> Youtube "Cool kid plays air drums" and "Cool kid plays air drums 2"
18:32:14 <fizzie> Ooh, you've been one of the cool kids.
18:32:56 -!- hagb4rd has joined.
18:33:55 -!- ogrom has joined.
18:34:35 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
18:34:42 <atriq> It was me not caring about my personal image
18:36:48 <fizzie> If you're randomly walking backwards these days, it doesn't sound all that terribly careful nowadays either.
18:38:25 <zzo38> I realized RogueVM has some things similar to VAX. Unlike VAX, you are allowed to use PC as the destination and as an index, though. RogueVM can use immediates as a destination, has its own instruction set for converting numbers to ASCII (but with a different byte length!), you can use any addressing mode with any istructions, etc
18:38:25 <ais523> <AnotherTest> (07:05:39 PM) AnotherTest: ais523: Have you read my suggestion for the wiki? What do you think? ← sorry, that line is entirely too zzo38 and I'm having problems reading it as a result
18:39:08 <AnotherTest> ais523: Is having infoboxes a good idea or not?
18:39:49 <zzo38> In VAX, "Something like tstl (pc)+ can also be assembled, which is like a literal (same specifier), but reads from part of the following instruction." RogueVM also works like that for literals too
18:39:50 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:40:18 <AnotherTest> ais523: on wikipedia, programming language pages (and many other stuff) have these boxes at the right side of the page. I think it would be nice to have general information about a language in there.
18:40:25 <atriq> I've since then carefully constructed a personal image based on being weird
18:40:47 <atriq> And not caring about my personal image
18:41:08 <zzo38> AnotherTest: Perhaps it might if they also have a database search so that the infoboxes can also be used in database tables and queries, perhaps?
18:41:40 -!- ais523 has quit.
18:41:46 -!- ais523_ has joined.
18:41:58 <AnotherTest> zzo38: I don' t know much about mediawiki software and it's features
18:44:15 <AnotherTest> I think it's useful when looking something up quickly. Eg. you want to know which languages influenced C++, in that case you can find it really fast on wikipedia
18:44:31 <AnotherTest> For esoteric languages this would be useful too
18:44:59 <zzo38> I don't think MediaWiki has it built-in but extension could be added. (With Hackiki, such extensions are just normal articles that anyone can write.)
18:45:53 <AnotherTest> ais523_: let me know what you think / whether it's possible
18:46:08 -!- AnotherTest has quit (Quit: Leaving.).
18:50:43 -!- hagb4rd has quit (Quit: hagb4rd).
18:59:22 -!- augur has quit (Remote host closed the connection).
18:59:49 <tswett> Hm. There exist Turing machines that halt in some models of ZFC, but not others.
19:05:06 <tswett> If a Turing machine does not halt, but ZFC cannot prove that it does not halt, then there exists a model of ZFC in which it *does* halt.
19:05:18 <zzo38> How can Turing machines half in some models of ZFC but not others?
19:05:36 <zzo38> How does that work?
19:06:31 <tswett> Define a "strange Turing machine" as one that does not halt, but, in a given model of ZFC, does halt.
19:06:46 <tswett> In such a model of ZFC, a strange Turing machine halts after a non-standard number of steps.
19:07:03 <tswett> Where a "non-standard number" is a number that exists in the model of ZFC, but not in the "real world".
19:07:35 <zzo38> Do you have examples?
19:08:16 <tswett> An example of a non-standard number? No.
19:08:33 <tswett> But here's a set theory that formally defines the predicate "standard": http://en.wikipedia.org/wiki/Internal_set_theory
19:08:42 <tswett> Or, at least, gives axioms for it.
19:09:31 <atriq> And people say maths is hard.
19:10:15 <zzo38> Not only non-standard numbers, I mean examples of strange Turing machine and such model of ZFC and so on.
19:11:17 <tswett> Well, it's impossible to prove that a Turing machine is strange, but an example of a strange Turing machine *may* be the one that searches for a counterexample to Goldbach's conjecture, and halts when it finds one.
19:12:11 -!- Phantom_Hoover has joined.
19:12:23 <tswett> That Turing machine is strange if and only if Goldbach's conjecture is both true and unprovable.
19:12:53 <tswett> If that Turing machine *is* strange, then ZFC + "Goldbach's conjecture is false" is a consistent system.
19:14:43 <tswett> Phantom_Hoover: a "strange Turing machine" is one that does not halt, but, in some model of ZFC, does halt.
19:15:22 <tswett> Or, more mundanely: it's one that does not halt, but which we cannot prove does not halt.
19:17:58 <atriq> If the Product type is a Semigroupoid
19:18:08 <atriq> Is the Coproduct type a Cosemigroupoid?
19:18:47 <atriq> What even is a cosemigroupoid
19:18:55 <tswett> I suddenly wish that mathematics had a sophisticated nomenclature like chemistry does.
19:23:00 <zzo38> I don't know what a cosemigroupoid is
19:23:14 <atriq> Is a Cocategory a thing?
19:23:59 <zzo38> I don't know what cocategory is either
19:24:08 <atriq> How about a cogroupoid?
19:24:17 <atriq> Or for that matter, a groupoid?
19:24:23 <atriq> Would that be a category with inverse?
19:24:33 <atriq> inv :: (a ~> b) -> (b ~> a)?
19:30:14 -!- augur has joined.
19:30:48 <lambdabot> <no location info>: not an expression: `let inv x y = y x'
19:32:14 -!- oerjan has joined.
19:36:18 <atriq> :t let inv x y = y x in inv
19:36:55 <lambdabot> forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b
19:37:14 <atriq> :t flip (fmap (+ 1) [1,2,3])
19:37:21 <atriq> > flip (fmap (+ 1) [1,2,3]) 6
19:37:33 <atriq> > flip (fmap (+ 1) [1,2,3]) undefine
19:37:35 <atriq> > flip (fmap (+ 1) [1,2,3]) undefined
19:38:18 <lambdabot> forall a b a1. (a1 -> a -> b) -> a -> a1 -> b
19:39:24 <oerjan> why don't you require another argument...
19:40:19 <oerjan> :t flip (fmap (+ 1) [1,2,3])
19:40:46 <oerjan> oh right it's because of lambdabot's Num (a -> b) instance
19:41:59 <oerjan> that's not the one lambdabot uses, obviously :P
19:42:13 <lambdabot> forall (f :: * -> *) a b. (Functor f) => f (a -> b) -> a -> f b
19:42:19 <atriq> :t \f a -> fmap ($ a) f
19:42:20 <lambdabot> forall a b (f :: * -> *). (Functor f) => f (a -> b) -> a -> f b
19:42:56 <atriq> :t \f -> flip fmap . id
19:42:57 <lambdabot> forall t a b (f :: * -> *). (Functor f) => t -> f a -> (a -> b) -> f b
19:43:03 <atriq> :t \f -> flip fmap f . id
19:43:05 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
19:43:22 <atriq> :t \f -> (.) (flip fmap f) id
19:43:23 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
19:43:39 <atriq> :t flip (.) id . flip fmap
19:43:41 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
19:43:52 <atriq> :t flip fmap id . flip fmap
19:43:53 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
19:44:30 -!- ogrom has quit (Read error: Connection reset by peer).
19:44:56 <oerjan> :t \f -> (. f) . fmap . ($)
19:44:57 <lambdabot> forall (f :: * -> *) a b (f1 :: * -> *). (Functor f, Functor f1) => f (f1 a) -> (a -> b) -> f (f1 b)
19:45:43 <oerjan> :t \f -> (. f) . fmap . flip id
19:45:44 <lambdabot> forall (f :: * -> *) b (f1 :: * -> *) a. (Functor f, Functor f1) => f (f1 (a -> b)) -> a -> f (f1 b)
19:45:46 <atriq> :t \f a -> flip fmap f ($ a)
19:45:48 <lambdabot> forall b (f :: * -> *) a. (Functor f) => f (a -> b) -> a -> f b
19:45:56 <atriq> :t \f a -> flip fmap f . ($)
19:45:57 <lambdabot> forall t a b (f :: * -> *). (Functor f) => f a -> t -> (a -> b) -> f b
19:46:07 <atriq> :t \f -> flip fmap f . ($)
19:46:09 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
19:46:28 <atriq> @pl \f a -> fmap ($ a) f
19:46:48 <atriq> flip in terms of flip
19:47:10 <oerjan> :t let flip = flip (fmap . flip id) in flip
19:47:11 <lambdabot> Occurs check: cannot construct the infinite type: f = (->) (f a)
19:47:11 <lambdabot> Probable cause: `flip' is applied to too many arguments
19:47:11 <lambdabot> In the expression: flip (fmap . flip id)
19:48:17 <atriq> Did anyone find a use for the Product Semigroupoid?
19:49:03 <oerjan> although i think i found that the Product Semigroupoid is a product of semigroupoids.
19:49:04 <atriq> Is that even a remotely correct name?
19:50:08 <oerjan> (those semigroupoids being Const and Dual Const, in some sense)
19:50:59 <oerjan> (just notice that the semigroupoid operation on the fst and snd elements are independent
19:53:09 <oerjan> <kmc> but with something like lint checking, maybe there's a 'false sense of security' problem, where people focus on making the lint checker's irrelevant complaints go away rather than actually reviewing their code
19:53:52 <oerjan> maybe it is most helpful if there is a requirement to pass lint before an _actual_ code review even starts
19:54:11 <oerjan> which would mean that code review won't be bogged down in trivialities
19:54:29 <kmc> that makes a lot of sense
19:54:43 <kmc> we aren't doing code reviews currently :/
19:54:52 <oerjan> not bad for something i made up on the spot >:)
19:55:33 <oerjan> which reminds me, itidus2[01] is still absent
19:55:53 <oerjan> i hope it's nothing serious
19:56:46 * oerjan wishes freenode didn't reset the dates on the ban list
19:57:49 <oerjan> also that irssi didn't put it in the channel window
20:02:33 <kmc> well a bunch of people told him off for being full of shit
20:02:42 <kmc> which i think has happened at least 100 times before
20:02:46 <kmc> but maybe it took this time
20:03:47 <oerjan> it would have been nice if it gave him a clue rather than chase him away, though
20:04:01 <oerjan> but i guess that rarely works
20:04:43 <oerjan> hm he is on freenode somewhere.
20:06:09 <atriq> Is it possible to call C++ code from Haskell using the FFI?
20:06:24 <atriq> Or is it just C code?
20:07:30 <oerjan> atriq: not directly, no.
20:07:44 <atriq> How about UnrealScript?
20:08:18 <oerjan> i think the general advice is to make a small C interface
20:08:33 <atriq> Heh, much, much more trouble than it's worth
20:11:43 <oerjan> "According to "The Haskell 98 Foreign Function Interface 1.0" report -- you import a C++ function by simply specifying the calling convention cplusplus. Unfortunately, no haskell compiler actually supports this calling convention, so we have to use the C calling convention instead."
20:12:06 <oerjan> "The standard method for dealing with this is to write C++ code that uses extern "C" to export the methods unmangled. Of course, you still have to uniquify the method names, but *you* get to pick the names instead of letting the compiler do whatever wacky method it wants."
20:12:23 <oerjan> and then the rest of the haskellwiki page describes something much more hairy.
20:17:01 <oerjan> atriq: my impression is that calling any other language from haskell or vice versa usually goes via their common C interface
20:17:56 <oerjan> and that this still sometimes leaves the problem of getting one of them to accept not being the main program
20:19:08 <oerjan> (well haskell doesn't have to be, but then you have to get the ghc runtime system set up with the right C calls.)
20:19:50 <Arc_Koen> ais523_: I have no idea what TDWTF is
20:20:40 <Arc_Koen> yup that's what google told me
20:20:44 <oerjan> a site showcasing bad code. by what i hear, often badly :)
20:21:39 <Arc_Koen> hmmm I guess I don't use C often enough to find that "block" special
20:21:41 <kmc> if you know how your compiler is going to name-mangle C++ functions *and* if the C++ calling convention is compatible with the C one, then you can call them directly
20:21:44 <kmc> but it's not recommended
20:22:17 <Arc_Koen> (and for my defense there's another Koen on freenode)
20:22:53 -!- ais523_ has changed nick to ais523.
20:22:59 <oerjan> how can there be more than one Koen
20:23:29 <Arc_Koen> that's actually a pun on my name which works pretty well in french
20:24:39 <Arc_Koen> because it sound like "qu'une", which basically means "only one" (except une is the feminine form)
20:25:27 <oerjan> ceci n'est pas une qu'une
20:25:32 <Arc_Koen> oerjan: what about "If no variable is nonzero, skip to the matching END." for ndeql's begin
20:25:42 <Arc_Koen> oops, pardon my accidental boldness
20:26:12 <Arc_Koen> oerjan: you just said "this is not an only one"
20:27:58 <oerjan> Arc_Koen: i think that would make [-] clear all variables, right? (although using unpredictable time doing so.) which i think may mean you can somehow treat all the variables as a single bit in a usable way.
20:28:10 <oerjan> Arc_Koen: it was a pun on "Ceci n'est pas un pipe"
20:29:50 <oerjan> why not? it wouldn't quit the loop until they're all zero.
20:30:19 <oerjan> well yes, but i'm assuming it would statistically hit all zero _eventually_.
20:30:43 <Arc_Koen> right, so in fact any loop is either an infinite loop or a loop that sets all variables to zero
20:31:32 <oerjan> although still still doesn't make it easy to put predictable things in the deque ... _some_ variable could be zero when you try to put a nonzero there
20:32:02 <oerjan> sorry, confusing a bit with your other language
20:33:07 <Arc_Koen> adding instructions to affect the other side of the queue in ndeql would probably not change much, though
20:34:36 <Arc_Koen> hmmmmmm what about: a deque with "pop", "push", "toggle", a register, and cannot toggle inside loops
20:34:53 <Arc_Koen> (but the register is always accessible, so information can pass from one side to the other)
20:35:29 <Arc_Koen> and maybe conditionals (which don't loop) inside which you can toggle
20:37:13 <oerjan> hm i'm thinking \\-/=\ ... // might be a way to get something dequeued in a usable way...
20:40:20 <oerjan> i'm wondering if you could check if the sum of the variables is odd or even
20:40:40 <Arc_Koen> "until all variables are zero: (set them all to zero, dequeue one element (enqueuing a zero), and then until all variables are zero, do something that has no effect if the selected variable is zero, but which does what we want to do AND set all variables to zero if the selected variable is the right one )"
20:41:42 <Arc_Koen> ndeql_oracle(\--/) checks if the sum is odd or even
20:42:06 <oerjan> not _quite_ what i had in mind :)
20:43:48 <Arc_Koen> ok here's a lead: if we can find a way to determine whether a loop allows for all variables to be set to zero or not
20:44:17 <Arc_Koen> then we have proven that ndeql is not turing complete
20:45:04 <oerjan> i think my brain is overloading again
20:46:09 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
20:47:29 <oerjan> it doesn't like to think about things that are changing underneath it.
20:48:05 <Arc_Koen> that's what I play go and not chess
20:48:40 <oerjan> i thought go had change, but i haven't actually played it :)
20:48:41 <Arc_Koen> (that and the fact that go is objectively SO MUCH more better than chess)
20:49:02 <Arc_Koen> weeeeeell uh there do exist several rules
20:49:15 <Arc_Koen> depending of the country you're in and the wather
20:49:17 * oerjan sort of got tired of chess
20:49:27 <oerjan> Arc_Koen: i meant the board changing.
20:49:43 <oerjan> i don't think the rules change in chess either.
20:49:56 <oerjan> wait, why am i thinking like this, i used to play nomic...
20:50:00 <zzo38> There are many variants of chess and go, some combined both, some changing the rules during the game or changing the geometry of the board, some with hidden information, etc
20:50:31 <Arc_Koen> well japanese rules and french rules for go are much closer than shogi and occidental chess are
20:50:54 <Arc_Koen> oh, this summer we tried the "phantom rengo" side tournament during the european congress
20:51:33 * oerjan considers trying to eat ->
20:51:44 <Arc_Koen> that was a lot of fun (though the rules were not exactly "symmetric" for both teams, so white always won
20:52:26 <Arc_Koen> "phantom go" means you don't see your opponent's moves (but if you try to play somewhere where there is already a stone, the referee will tell you it's a forbidden move and you can place an opponent's stone there to remember)
20:53:08 <Arc_Koen> and rengo is just go with a partner (you play once, your opponents play, your partner plays, your opponents play, then only it's your turn)
20:53:37 <Arc_Koen> so phantom rengo: you see your own moves and one of your opponent's moves, but neither your partner's moves neither your other opponent's moves
20:54:23 <Arc_Koen> problem is, in phantom go it's possible to do some sort of "scams", moves that are usually stupid and easily reprehensible, but in phantom go you're hoping your opponent won't guess what you did
20:54:57 <Arc_Koen> and here in phantom rengo, if the person who plays right after you is the opponent who can see your moves, you can't do that
20:55:22 <Arc_Koen> but if it's the other opponents, then maybe he won't guess it, and maybe your partner will guess it, so scamming is possible
20:56:08 <Arc_Koen> and unfortunately you can't set the order of turns in a way that doesn't advantage one team (that is, one of the teams will be able to scam every move, and the other will never be able to)
20:56:38 <Arc_Koen> so they said "the weaker team must take white (and have that huge advantage"
20:56:48 <Arc_Koen> unsurprinsigly, the weakest team won the tournament
20:57:13 <Arc_Koen> oerjan: why did you stop playing nomic?
20:57:34 <zzo38> What if you play balanced marseillais phantom rengo?
20:58:07 <Arc_Koen> never heard of balanced go or marseillais go
21:00:50 <Arc_Koen> there are some funny stuff about the rules of go, though
21:00:57 <Arc_Koen> for instance, it is possible to repeat the position
21:01:24 <Arc_Koen> they could have just say "it's forbidden to play a move that repeats a position" but nooooo that would have been too simple
21:02:22 <Arc_Koen> so they started by saying "you cannot take back an opponent's stone immediately after it was played, in that very precise shape [diagram here]" (and the shape in question is called a ko and is the most frequent way to repeat a position
21:02:46 <Arc_Koen> but then if you combine three kos on the board, you can repeat the position without immediately taking back the stone!
21:03:11 <Arc_Koen> they could have just say "ok, it's forbidden to play a move that repeats a position" but nooooo that would have been too simple
21:03:27 <Arc_Koen> so they said "if the position is repeated three times because of a triple ko, the game is null"
21:03:32 <atriq> I want to set up a one-time cron thing
21:03:39 <atriq> Like an alarm clock
21:04:02 <Arc_Koen> BUT it's actually possible to repeat the position in other ways (though honestly I have never see them in actual games)
21:04:45 <Arc_Koen> http://esolangs.org/wiki/Alarm_Clock_Radio
21:06:17 <Arc_Koen> so eveyr country made its own set of rules, addressing all problems in a different way
21:06:33 <atriq> Arc_Koen, Linux utility used to time commands
21:09:20 <kmc> you want 'at'
21:09:39 <kmc> echo mplayer -really-quiet -loop 0 ~/wakeup.mp3 | at 09:00
21:11:17 <zzo38> I have never heard of balanced go or marseillais go either, but I have heard of balanced marseillais chess.
21:12:29 -!- atriq has quit (Quit: Leaving).
21:17:58 -!- Phantom_Hoover has joined.
21:20:53 <Arc_Koen> I've even played "inflation go" a few times
21:21:15 <Arc_Koen> black plays one move, white plays two, black plays three, etc.
21:21:56 <Arc_Koen> it's kind of silly though, because it becomes quickly so easy to capture that you have to waste all your moves to protect yourself
21:22:42 <zzo38> I have another idea: Three players go where each player cannot see the stones belonging to the player who plays before him in the turn order, but you can see your own and the next player's stones.
21:23:18 <zzo38> oerjan: What will you consider trying to eat? Go stones?
21:23:31 <Arc_Koen> well actually multiplayer go is already quite original in itself
21:23:47 <oerjan> hm i didn't get around to that eating yet.
21:23:48 <Arc_Koen> and we never play it because of that stupid "there's no third color" limitation
21:24:22 <Arc_Koen> but playing multiplayer go is definitely on my list of things to do at least one in my life
21:24:24 <zzo38> That is because you don't have the stones, I guess, then buy more stones and paint them a different color, or use the computer
21:24:33 <oerjan> it will surely be slices of bread, though.
21:24:54 <Arc_Koen> yes, another thing on my list is "write a go program that can support many many many variants"
21:25:52 <oerjan> but i'm not going to eat that for a meal
21:25:54 <Arc_Koen> I'm not sure I want to know why there's a "technically" in that sentence
21:26:24 <zzo38> Arc_Koen: Because otherwise it looks too short. And actually you do want to know and this is the reason.
21:26:26 <oerjan> technically you may not
21:27:08 <oerjan> technically i am insane
21:27:33 <oerjan> technically this is a sentence
21:27:52 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:29:03 <Arc_Koen> well, technically it lacked a capital and a period
21:29:20 <oerjan> technically i expected that comment
21:30:10 <Arc_Koen> well technically you got what you paid for!
21:31:23 <oerjan> technically i don't think i paid
21:37:53 -!- pikhq has joined.
21:38:00 -!- pikhq_ has quit (Ping timeout: 252 seconds).
21:42:53 <ais523> btw, I had an interesting idea for a potentially interesting BF derivative a while back
21:42:59 <ais523> eliminate . and , because they're unnecessary
21:43:03 <ais523> then create one command that does + or - at random
21:43:11 <ais523> and one that does < or > at random
21:43:15 <ais523> leaving [ ] the same as before
21:43:31 <ais523> preferably using bignum cells, but it doesn't really matter
21:43:50 <ais523> you can zero cells with [+] and nonzero them with [+]+ so you can simulate a binary tape
21:43:55 <ais523> it's the < and > I'm less sure about
21:44:02 <ais523> (tape infinite both ways, obviously)
21:47:28 <oerjan> <ais523> [14:15] <ais523> hmm, I take it Haskell doesn't have ignore in its standard library, on the basis that it's completely useless?
21:47:37 <oerjan> what is that supposed to do
21:48:21 <Gregor> (Just making shit up, ignore me ;) )
21:48:32 <oerjan> although that would be const id
21:48:50 <zzo38> Does Haskell have a "computed NEXT FROM" monad?
21:53:04 <oerjan> ais523: in the Ndeql discussion above i had the idea that you might be able to use parity, this might apply to your derivative too
21:54:52 <oerjan> [>] seeks to the nearest zero cell either to the left or to the right
21:57:10 <oerjan> [++>] seeks to an even cell, although not necessarily the closest one
21:57:41 <kmc> :t flip const
21:58:42 -!- ais523 has quit.
21:58:59 <fizzie> But "const id" is more right, as evidenced by
21:59:00 * oerjan swats ais523 in absentia -----###
21:59:01 <fizzie> @. pl djinn a -> b -> b
21:59:24 <oerjan> i guess ais523 used ignore
22:01:58 <shachaf> @quote ddarius partial.application
22:01:58 <lambdabot> ddarius says: (f x) is a partial application iff f x == (curry (uncurry f) x)
22:02:47 -!- TeruFSX_ has quit (Read error: Connection reset by peer).
22:04:01 -!- copumpkin has joined.
22:04:03 -!- TeruFSX has joined.
22:04:31 <lambdabot> forall a b c. ((a, b) -> c) -> a -> b -> c
22:09:17 <oerjan> <Arc_Koen> oerjan: why did you stop playing nomic? <-- too much real life intervening, i think.
22:09:23 <Arc_Koen> Gregor: ocaml has "ignore x = ()", though that may not be a useful combinator
22:09:52 <oerjan> if that's what he meant, then haskell _does_ have such a thing.
22:10:08 <Gregor> In a pure lazy language, it's stunningly pointless :)
22:10:11 <oerjan> ... lambdabot is getting _old_.
22:10:44 <shachaf> @djinn Not (Not (Either (Not a) a))
22:10:44 <lambdabot> f a = void (a (Left (\ b -> a (Right b))))
22:10:52 <oerjan> Prelude Control.Monad> :t void
22:10:52 <oerjan> void :: Functor f => f a -> f ()
22:11:01 <lambdabot> Foreign.Marshal.Error void :: IO a -> IO ()
22:11:01 <lambdabot> Control.Monad void :: Functor f => f a -> f ()
22:11:26 <shachaf> What about void :: Void -> a
22:11:40 <Gregor> Sure, at the level of /monads/ it makes sense.
22:11:42 <oerjan> that wouldn't be an ignore, would it?
22:11:51 <Arc_Koen> oerjan: I agree that [>] will set the pointer to either the nearest nonzero cell to the right or to the left
22:12:00 <Arc_Koen> but [++>] I'm not sure does what you say
22:12:21 <oerjan> Arc_Koen: i'm assuming only parity matters for the last one
22:12:24 <Arc_Koen> at least not without embarrassing side effects
22:13:38 <oerjan> i'm not sure that helps much though
22:14:05 <Arc_Koen> hmmm you can emulate finite-tape brainfuck easily
22:15:10 <Arc_Koen> yeah no that doesn't work at all
22:15:17 <Arc_Koen> and even if it did that would be only 2-cell brainfuck
22:15:50 <Arc_Koen> I'm not gonna explain because it doesn't make any sense anyway
22:16:29 <oerjan> i'm still slightly miffed over ais523 leaving immediately after proposing it.
22:18:03 <Arc_Koen> I think that's a nonnegligible danger about being interested in math or other sciences
22:18:24 <Arc_Koen> when someone presents you with a problem late in the evening and YOU CANNOT SOLVE IT
22:18:38 <Arc_Koen> and you know there is no way you're gonna sleep until you solve it
22:18:46 <oerjan> oh right, can ruin some sleep yeah
22:19:13 <oerjan> although in this case it's more like i'm stubbornly avoiding trying any more, because he left.
22:19:58 <Arc_Koen> when I was younger I used to go to the same place near the beach every summer; at the harbour there was (among other tourist shops) a magician
22:20:22 <Arc_Koen> he performed tricks and sold them
22:20:40 <Arc_Koen> most were easy to understand (not necessarily the precise trick, but at least the idea)
22:20:58 <Arc_Koen> but there was one with a piped card deck that was just mind blowing
22:21:07 <quintopia> did you know theree is a busking forum?
22:21:17 <quintopia> with a whole subforum devoted to svengali pitch?
22:21:43 <Arc_Koen> except he was not showing his talent so much as his pre-made piped objects
22:22:10 <Arc_Koen> so this numero lasted for about a minute or two
22:22:30 <Arc_Koen> during which the piped card deck was laying inside its box, on the table
22:22:47 <Arc_Koen> are you insinuating my vocabulary is not wide enough to tell that story? :(
22:24:00 <Arc_Koen> yeah so the numero went on *without the magician touching the cards*
22:24:04 * oerjan swats quintopia for explaining with an equally obscure synonym -----###
22:24:15 <Arc_Koen> (so basically he was just talking)
22:24:28 <Arc_Koen> and he asked a member of the audience to think of a card
22:24:55 <quintopia> that card was the only face up one?
22:25:31 <Arc_Koen> after the first time that I saw him perform this I couldn't sleep
22:25:52 <Arc_Koen> that was unfortunately one of the tricks he performed the least often
22:26:16 <Arc_Koen> after some time I decided to buy it
22:26:27 <Arc_Koen> so i asked if he could perform it one last time
22:26:35 <Arc_Koen> and while he did it I UNDERSTOOD
22:27:03 <quintopia> you can no longer be a magical spectator
22:27:08 <quintopia> unless the magician is very very good
22:27:24 <quintopia> but invisible deck is an astounding trick
22:27:28 <Arc_Koen> I mean, other tricks, you *know* that there is a trick, so I'm rarely dazzled or anything (though that didn't stop me from watching his show every year)
22:27:48 <Arc_Koen> but in this he didn't so much as touch the cards
22:28:15 <Arc_Koen> I've never heard of all the terms you're using
22:28:57 <oerjan> clearly the box was hollow and there was an assistant gnome hiding under the table. hth.
22:29:54 <oerjan> which is why he did it so rarely, couldn't afford the gnome all the time.
22:30:27 <Arc_Koen> oh my you just understood the most mind blowing trick I've ever seen WITHOUT EVEN WATCHING IT
22:30:47 <Arc_Koen> yup that's exactly how it worked
22:30:59 <Arc_Koen> well except for the part involving a gnome
22:32:00 <oerjan> my jokes: now omniscient too
22:34:18 <oerjan> real food this time ->
22:35:40 -!- heroux has joined.
22:35:41 <Arc_Koen> funny how that "delay" instruction is so rarely included in esolangs but so present in esoprogrammers
22:38:37 <Arc_Koen> random things to do when bored: write a banana scheme program that returns true or false depending on whether the riemann hypothesis is correct or not
22:41:37 -!- Gregor has set topic: BEWARE THE ØRJANIST MØØSE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
22:41:52 <zzo38> Please read Chris Pressey's message http://esolangs.org/wiki/User_talk:Zzo38/FurryScript
22:43:02 <zzo38> What did you think is good idea?
22:43:59 <Arc_Koen> to move furryscript to main namespace
22:44:13 <zzo38> Then write that on the talk page I linked to, please.
22:44:22 <zzo38> I think you have account, isn't it?
22:45:26 <oerjan> the only thing i was wondering is if it an esolang or not
22:45:29 <Arc_Koen> wait, are we expecting Chris Pressey to take my opinion on that matter into account? You have no idea what good it does to my self-confidence!
22:45:57 <oerjan> yeah i prove his languages TC and he barely notices
22:46:03 <zzo38> Arc_Koen: I don't know, but if you write it there, it can be decided who does and who does not take your opinion on that matter into account.
22:46:18 <zzo38> oerjan: Yes that is too what I was wondering the same thing, which is why I replied as I did there.
22:47:26 <Arc_Koen> oerjan: but you do that to everyone, maybe he'd notice if you stopped proving his languages tc!
22:47:32 <FreeFull> What makes FurryScript furry anyway
22:48:17 <zzo38> FreeFull: The name of the first file which was written with it, although recently I found some more mistakes in it that I fixed; the original had many more mistakes but I fixed most of them.
22:52:15 -!- Nisstyre-laptop has joined.
22:52:35 <Arc_Koen> hey if we all go edit the page at the same time, are we gonna erase other people's edits?
22:52:59 <zzo38> Arc_Koen: I don't think so; I think MediaWiki has stuff in it to prevent that from happening.
22:53:10 <Arc_Koen> or is mediawiki gonna do something like warning us "beware, that page has already been edited since you clicked the edit link"
22:53:40 <Arc_Koen> yeah, I think I've heard that from somewhere (something about concurrent programming) but I have no idea how it can work
22:54:23 <Arc_Koen> I mean, if I make a minimal edit on one part of a page and someone makes a minimal edit on another part of that page, I could understand how both edits are "compatible" but otherwise...
22:55:24 <oerjan> Arc_Koen: it _does_ try to split into compatible edits, but it will simply warn you otherwise, and you have to merge them manually.
22:56:22 <Arc_Koen> so for instance if two people add truth-machine implementations on the truth-machine page, there will be no warning?
22:57:10 <oerjan> as long as they are in separate sections, i don't think so. at least it works that way for undoing stuff.
22:57:36 <Arc_Koen> oh, you can revert an old edit without reverting more recent edits? nice
22:58:12 <oerjan> i recall experiencing that if two people make the exact same edit, neither will get a warning.
22:58:47 <oerjan> although only the first to save is credited.
23:04:32 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
23:06:20 -!- Frooxius has quit (Ping timeout: 246 seconds).
23:17:03 -!- fungot has quit (Ping timeout: 245 seconds).
23:19:23 <kmc> that has happened to me with git commits as well
23:20:11 <kmc> a coworker and i both make the exact same change, they push to master, i rebase onto master
23:20:23 <kmc> instead of showing a merge conflict, git just drops my commit
23:20:41 <kmc> because it has the same git-patch-id as one of the commits it's rebasing past
23:27:30 <Sgeo> Is rebase a history mutating thing?
23:27:47 <Sgeo> Erm, well, I guess everything is, but isn't there something that tampers with history beyond just adding new stuff at the end
23:28:11 -!- monqy has joined.
23:28:23 * Sgeo mutates monkey
23:28:41 <zzo38> Is there some way to make up the "computed NEXT FROM" monad in Haskell?
23:30:59 <oerjan> zzo38: my guess is "yes"
23:31:13 <zzo38> Do you even know how?
23:31:22 <oerjan> well, except what's NEXT FROM
23:31:43 <zzo38> It is something in CLC-INTERCAL, like COME FROM but you can return to where it came from
23:32:13 <Sgeo> If it's a control flow concept, the Cont monad exists, and out of that you can build many control structures.
23:32:41 <zzo38> I did think of that, if it is something with continuation monad
23:36:13 <oerjan> if you have something like do { label 1 (...); x <- someStatement; nextFrom (someThingEvaluatingTo1) (someStatement) } then a problem would seem to be that you cannot get a value for x if you skip over the action setting it...
23:37:07 <oerjan> so i think you'd have to restrict it to a list of resultless actions
23:37:24 <oerjan> same problem with just COME FROM and GOTO, of course
23:38:06 <zzo38> I know that if it is a Kleisli morphism it has that problem, so it would have to be a not Kleisli morphism, if you would otherwise to need like that
23:38:28 <oerjan> i don't know what that is anyway
23:40:04 <oerjan> but i think you could make something that worked with a structure like runLabels [ Label 1 (...), Unlabeled (...), NextFrom (someThingEvaluatingTo1) (...), ... ]
23:40:55 <oerjan> so that runLabels can parse the general position of everything before starting running subactions
23:42:33 <zzo38> GOTO backward may work though even with the "getCC" and stuff I have, where the function runCC = runCT <*> id; can do a goto backward to the getCC
23:43:05 <oerjan> well yes, backward jumps don't have that problem
23:45:25 <oerjan> runLabels wouldn't even need a different monad, i think. it's just a control structure that can be used in any monad.
23:45:31 <zzo38> To do forward, either you would have some kind of fake result to check and then to go back, or to make it something other than Kleisli morphisms, such as haivng nextFrom :: Label -> m x -> m x
23:46:52 -!- Phantom_Hoover has joined.
23:47:14 <zzo38> Or like nextFrom :: Label -> M x -> M x -> M x you need both monads arguments I think
23:49:26 <zzo38> Or maybe you want to be able to compute the label inside the monad too
23:49:54 <oerjan> well of course, otherwise it's not much of a computed NEXT FROM
23:50:47 <oerjan> on the other hand you don't want the label computation to be able to mutate values
23:51:08 <zzo38> Yes, although depending on the monad it may make possible that any value it changes is not changed.
23:53:09 <zzo38> Or maybe you want: nextFrom :: M Label -> M () -> M x -> M x;
23:58:56 <oerjan> the yafgc comic seems to have got a real schedule slip
23:59:38 <kmc> Sgeo: the short answer is "yes, rebase mutates history" but to actually understand what that means you have to understand a few things about git
00:00:33 <kmc> git commits are immutable objects; they are named by their SHA1 hash so there is no way to mutate one unless you find a SHA1 collision ;)
00:01:21 <kmc> each commit refers to its parent(s) also by hash, so in that sense, history is completely immutable
00:01:51 <kmc> but you can always take some sequence of commits, and construct a new sequence of commits which does something similar but different
00:01:56 <shachaf> I think "rewrites history" is more accurate than "mutates history".
00:02:48 <kmc> and then you can switch your branch to use the new history rather than the old one
00:03:17 <kmc> because a branch is not an immutable object, it's a named pointer into the database of immutable objects
00:03:59 <kmc> a branch is literally just a text file in .git/refs/heads with a hex SHA1 hash in it
00:04:06 <kmc> that is also why branches are so cheap to create
00:05:15 <zzo38> For example getCC/runCC can be like: runReaderT (runContT (do { liftIO $ putStrLn "Hello!"; la <- getCC; v <- liftIO $ getLine; n <- ContT (\f -> ReaderT $ \q -> runReaderT (f $ succ q) (succ q)); liftIO $ putStrLn (v ++ ":" ++ show n); when (v /= "" && n < 10) $ runCC la; }) return) 0
00:05:29 <shachaf> getCC = callCC (return . fix)?
00:05:40 <zzo38> shachaf: No. getCC = callCC (return . CT);
00:05:52 <zzo38> (Where CT is just a newtype wrapper)
00:06:39 <zzo38> runCC = runCT <*> id; (where runCT is the field of that newtype wrapper, and CT is the constructor)
00:06:53 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:07:17 <kmc> Sgeo: so rebase takes my local commits, and creates a new sequence of commits as though I had applied those patches to the current upstream, and then sets my local branch to point at the new history
00:07:24 <kmc> (in this case. rebase can do many other things as well)
00:07:32 <ion> rebase -i is awesome.
00:08:09 <kmc> with rebase -i and add -p, you can really make your history look nice
00:08:39 <zzo38> I suppose it is even possible for the result type of a continuation monad to be another continuation monad, or if you use the proper newtype wrappers, even the same one, inside of some other monad or something like that too, even
00:08:43 <kmc> imo the point of version control history is to tell a logical story about how the code got from point A to point B
00:10:30 <kmc> how's that working out for you
00:10:55 <shachaf> I got randomly selected to have my laptop checked, though.
00:11:04 <kmc> what did they do?
00:11:04 <shachaf> Fortunately they only checked the outside.
00:11:14 <kmc> were you flying into the US from another country?
00:11:16 <shachaf> Rubbed something over it and put it in a machine, I think.
00:22:18 -!- zzo38 has quit (Remote host closed the connection).
00:26:38 <Arc_Koen> oerjan: that wasn't a typo! that was me not speaking english
00:31:14 <Arc_Koen> funny thing: my other recent edit was on the total BF talk page and included "whereas it will have been replaced by a 0" where I guess a "with" could (should?) be substituted for the "by"
00:32:03 <shachaf> dcStupidTheta :: ThetaType,-- The context of the data type declaration
00:32:48 <oerjan> i think both are allowed there
00:33:56 <oerjan> Arc_Koen: the term is "For what it's worth" hth
00:34:32 <Arc_Koen> that was completely unintended
00:34:42 <Arc_Koen> "For what I'm worth" would have been intended
00:34:43 <oerjan> freudian slippery slope
00:35:13 <oerjan> ...but would still have been unidiomatic.
00:35:46 <Arc_Koen> oh, not-logged-in users cannot check the fancy little 'm' box
00:37:16 <Arc_Koen> hey is there an easy way to have non-printable characters printed to the console?
00:37:45 <Arc_Koen> the cat program I wrote works almost correctly in my interpreter
00:38:17 <oerjan> i don't use consoles much
00:38:50 <Arc_Koen> uh, wait, console might not be the english term
00:38:56 <oerjan> gvim and winghci, mostly
00:39:30 <oerjan> although i do use it for my shell account where i've got my web page
00:40:13 <oerjan> terminal window is the usual term, i think. i thought you meant like "linux console", which elliott has been asking about a lot recently
00:40:26 <oerjan> and which i haven't used for years.
00:41:23 <Arc_Koen> well it the same thing as a linux console, isn't?
00:41:23 <oerjan> Arc_Koen: perl -e "print (chr 7);" would be one way? :P
00:41:36 <Arc_Koen> except that I'm not using linux
00:41:40 <shachaf> kmc: Did you ever get your Stripe CTF 2.0 shirt?
00:42:00 <oerjan> i thought linux console referred to what you have if you're using linux but not running a GUI
00:42:12 <Arc_Koen> oerjan: well humI meant I'd like to know whether my program doesn't print some garbage
00:42:15 <oerjan> maybe i've misunderstood
00:42:40 <Arc_Koen> here you can see it seems to be working correctly except for that question mark that appears
00:42:50 <oerjan> ah so you want to _check_ for non-printable characters
00:42:54 <Arc_Koen> and which usually means I've printed a character the terminal window doesn't recognise
00:43:13 <Arc_Koen> of course I could just modify the interpreter to print numerci values instead of characters
00:43:41 <oerjan> Arc_Koen: i think piping into hexdump is useful for that
00:44:54 <oerjan> not that i've used it before, or understand the format, but it should tell exactly what the output was
00:45:55 <oerjan> you just made a hexdump file :P
00:46:21 <Arc_Koen> hexdump: A: No such file or directory
00:46:21 <Arc_Koen> hexdump: A: Bad file descriptor
00:47:39 <oerjan> echo 'a' | hexdump -C might be better, it prints the printable ones readably too
00:48:48 <Arc_Koen> 00000000 63 65 63 69 20 65 73 74 20 75 6e 20 74 65 73 74 |ceci est un test|
00:48:50 <oerjan> and the rest as .'s, it seems
00:49:15 <oerjan> Arc_Koen: ok so you have a stray ff at the end
00:49:27 <oerjan> the 0a is just a newline
00:49:56 <oerjan> `run echo 'a' | hexdump
00:50:31 <Arc_Koen> well the program does contain the value 255 as a marker
00:50:37 <oerjan> oh wait no, that was without -C
00:50:37 <Arc_Koen> (because of the ever-growing thing in sceql)
00:50:45 <oerjan> Arc_Koen: yeah, but it got printed at the end
00:50:50 <Arc_Koen> echo 'ceci est un test' | hexdump -C
00:50:51 <Arc_Koen> 00000000 63 65 63 69 20 65 73 74 20 75 6e 20 74 65 73 74 |ceci est un test|
00:50:56 <Arc_Koen> yes that's not supposed to happen
00:51:16 <Arc_Koen> besides, the number of outputs in the sceql program is exactly one less that the number of inputs
00:51:26 <Arc_Koen> which seemed logical since the last input was end of file
00:52:30 <Arc_Koen> but if the 255 is printed as well, there should be as many outputs as inputs
00:52:40 -!- Jafet has quit (Quit: Leaving.).
00:53:54 <Arc_Koen> as you can see, one * inside the loop, one & inside the loop, and one & outside the loop
00:54:26 <Arc_Koen> and it doesn't seem to be the interpreter's fault since other programs work fine
00:57:04 <oerjan> have you checked other programs with hexdump?
01:01:54 <Arc_Koen> simple hello world program:00000000 48 65 6c 6c 6f 2c 20 77 6f 72 6c 64 21 0a |Hello, world!.|
01:02:11 <oerjan> Arc_Koen: oh hm, shouldn't you have *& rather than &*
01:02:26 <Arc_Koen> I think not but I'll think about it
01:02:41 <oerjan> the first character read will never be printed
01:02:44 <Arc_Koen> the idea is that input enqueue the input at the back of the queue (cause it's a queue)
01:03:05 <Arc_Koen> while output has the side effect of going to the next element
01:04:06 <Arc_Koen> and the program basically does "enqueue the next input just after the marker"
01:04:29 <Arc_Koen> so at the beginning of a loop, the marker is at the end and the previous input (which hasn't been printed yet) is at the front
01:04:44 <Arc_Koen> if you output it, it will go after the marker and you don't want that
01:04:56 <Arc_Koen> so first you input the next char, then only you output
01:05:22 <Arc_Koen> [prev ... 255] INPUT OUTPUT [... 255 curr prev]
01:05:56 <Arc_Koen> then you have a loop that will go through the '...' which are all the older inputs
01:05:57 -!- Jafet has joined.
01:06:23 <Arc_Koen> the loop says "while the front byte is not 255, go to next"
01:06:53 <Arc_Koen> INC BEGIN while not 255 DEC NEXT INC END DEC
01:06:56 <oerjan> i think the program should work...
01:07:20 <Arc_Koen> that's what I thought too, but apparently the 255 is outputted
01:07:39 <oerjan> well then there must be something wrong with the interpreter.
01:07:41 <Arc_Koen> ok i'll try it with the interpreter linked below
01:08:28 <kmc> `run echo {}[] | iconv -f iso646-fi
01:08:31 <HackEgo> iconv: illegal input sequence at position 0
01:09:52 <oerjan> it takes a file, not a program string.
01:10:28 <Arc_Koen> so command > name just creates a new file?
01:10:41 <oerjan> yes, with the output of command
01:10:53 <Arc_Koen> I was about to try echo '-&=\&*_\-=_/-=/' > ./sceql_ref
01:11:00 <oerjan> it will also happily overwrite an old one
01:12:25 <Arc_Koen> echo 'this is a test' | ./sceql_ref cat.ttt
01:12:40 <Arc_Koen> but no question mark, so I guess it works fine
01:13:19 <Arc_Koen> so there is something wrong with the damn interpreter
01:14:44 <Arc_Koen> I was so proud that it was shorter than the reference interpreter and yet accepted both single-char command and plain text
01:15:12 <Arc_Koen> like, you could have a program "INC _ iozguqn INC" and it would still perform three increments
01:16:48 <Arc_Koen> ok I'll try the same program but with 254 as a marker instead
01:17:03 <Arc_Koen> and if it doesn't work I'LL TRY 253
01:18:22 <Arc_Koen> Program contains no instructions
01:19:21 -!- Nisstyre-laptop has quit (Quit: Leaving).
01:25:15 <Arc_Koen> so here's my resolution: at 3:30 in the morning I will NOT debug a sceql interpreter in C
01:26:33 <kmc> is it 3:30 in the morning for you
01:26:56 <Arc_Koen> wait does that mean I have four minutes to debug it
01:27:17 <kmc> a real rockstar ninja hacker could do it
01:27:26 <oerjan> sic transit gloria resolutionum
01:27:27 <kmc> just chug some redbull and bro out to some killer kodez
01:30:05 <Sgeo> And so you code
01:32:22 <Arc_Koen> fyi the parser doesn't seem to be the problem
01:32:25 * Sgeo vaguely wonders what sceql is
01:32:47 * oerjan vaguely suggests searching the wiki
01:32:59 <HackEgo> man: can't open the manpath configuration file /etc/manpath.config
01:33:27 -!- SimonRC has quit (Ping timeout: 260 seconds).
01:33:27 <Arc_Koen> basically you have a queue and you can push stuff to it
01:33:28 <oerjan> the people have spoken: sceql has awful documentation.
01:33:52 <Sgeo> Hmm, maybe that would give me some good Clojure practice
01:34:06 <Arc_Koen> yes I'm sure you'll find closure by programming in sceql
01:34:15 <Sgeo> Although elliott once said that he would not use interpreters written in Clojure, and that scared me off from Clojure for a long time
01:35:44 <Arc_Koen> oh hey btw if someone would be so kind as to tell me whether this is good programming style or not: http://pastebin.com/5dmVMpcq
01:36:05 <Arc_Koen> appart from the fact that there are no comments
01:37:00 <Arc_Koen> there are two functions : the function instruction returns the instruction pointed to by the array index (with the side effect of modifying the index if the instruction was not just one char)
01:37:32 <Arc_Koen> and the function parser which takes a sceql program and overwrites it with a parsed sceql program
01:40:16 -!- SimonRC has joined.
01:40:59 <Arc_Koen> and I don't know the functon instruction looks slightly like a hack
01:41:12 <Sgeo> Clojure seems like it would be... overkill, somehow
01:42:37 <Arc_Koen> (only fifteen minutes between the first and second gnights, not bad)
01:42:46 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
01:48:02 <kmc> heh Arc_Koen's quit message is something I said here recently
01:48:17 <tswett> I'm not a fan of instruction().
01:49:19 -!- TeruFSX has quit (Ping timeout: 260 seconds).
01:49:25 <oerjan> shouldn't that use some kind of string comparison instead of all that character/pointer stuff
01:57:19 <oerjan> @tell Arc_Koen you might want to use something like if (*i + 3 < l && !memcmp(&(p[*i+1]), "EXT", 3) { for that
01:59:07 -!- FreeFull has quit (Ping timeout: 240 seconds).
01:59:17 <oerjan> i guess that's the same as p + *i + 1, and that p and *i could be combined somehow, but i'm not a C style expert.
01:59:21 -!- FreeFull has joined.
01:59:57 <oerjan> can pointers be compared usefully with < ?
02:00:59 <oerjan> oh hm there's that undefined behavior if you go too far outside the allocated memory.
02:03:29 -!- MoALTz has quit (Ping timeout: 256 seconds).
02:21:28 -!- FreeFull has quit (Ping timeout: 260 seconds).
02:21:48 -!- FreeFull has joined.
02:35:29 -!- zzo38 has joined.
02:59:02 <Sgeo> monqy, tswett arpdoop
03:11:55 <kmc> yeah, C guarantees that a pointer one past the end of an array is a valid value, for use in comparisons like this
03:12:21 <kmc> but more than one past the end is probably UB
03:12:47 <kmc> of course you're not allowed to dereference that pointer to one past the end of the array
03:17:44 -!- Nisstyre-laptop has joined.
03:21:43 -!- copumpkin has quit (Ping timeout: 244 seconds).
03:22:19 -!- copumpkin has joined.
03:24:22 -!- oerjan has quit (Quit: Lost terminal).
03:38:35 -!- oerjan has joined.
03:55:32 <kmc> 2^32 channels and nothing on...
03:56:13 -!- Jafet has quit (Quit: Leaving.).
04:02:55 -!- mig22 has joined.
04:24:36 -!- Jafet has joined.
04:45:56 -!- oerjan has quit (Quit: Good night).
05:29:35 -!- aloril_ has quit (Ping timeout: 260 seconds).
05:42:19 -!- aloril_ has joined.
05:46:08 <olsner> oh, that reminds me of a funny bug I found... some function was taking a buffer pointer and length, but in a context where it was "known" it wouldn't overflow it was being used with INT_MAX as the buffer length
05:47:07 <olsner> leading to some funny effects when the buffer address had ... certain values
06:05:05 -!- Nisstyre-laptop has quit (Quit: Leaving).
06:06:07 <kmc> how's that
06:08:57 <fizzie> I haven't seen the thing in question, but I would guesstimate it had something to do with buf+len < buf (or a test of p < buf+len with p in the buffer falsely failing) with len of INT_MAX and buf too high up.
06:09:23 <olsner> yeah, somewhere in the function there was some "safety" check to see that the pointer was still inside the buffer
06:22:56 -!- TheJimmyJames has joined.
06:37:00 -!- sirdancealot7 has quit (Ping timeout: 252 seconds).
06:44:58 -!- sirdancealot7 has joined.
06:47:42 -!- ogrom has joined.
07:00:23 -!- epicmonkey has joined.
07:06:01 -!- monqy has quit (Quit: hello).
07:17:59 -!- sirdancealot7 has quit (Ping timeout: 256 seconds).
07:20:19 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:20:35 -!- sirdancealot7 has joined.
07:24:10 -!- donmarquis has joined.
07:27:27 -!- FreeFull has quit.
07:30:24 -!- sirdancealot7 has quit (Ping timeout: 260 seconds).
07:41:50 -!- Jafet has quit (Quit: Leaving.).
07:43:27 -!- sirdancealot has joined.
07:49:56 -!- ogrom has quit (Quit: Left).
07:56:22 -!- TheJimmyJames has quit (Read error: Connection reset by peer).
07:58:48 -!- TheJimmyJames has joined.
07:59:00 -!- TheJimmyJames has quit (Client Quit).
08:18:34 -!- Jafet has joined.
08:20:15 -!- zzo38 has quit (Remote host closed the connection).
08:31:45 -!- epicmonkey has joined.
08:44:03 -!- jiella has joined.
09:49:40 -!- Phantom_Hoover has joined.
09:51:30 -!- kinoSi0 has quit (Read error: Connection reset by peer).
09:51:58 -!- kinoSi has joined.
09:58:35 -!- MoALTz has joined.
09:59:47 -!- Jafet has quit (Quit: Leaving.).
10:08:19 -!- Lumpio- has quit (Ping timeout: 246 seconds).
10:46:39 -!- Arc_Koen has joined.
10:46:51 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
10:46:57 <lambdabot> oerjan said 8h 49m 38s ago: you might want to use something like if (*i + 3 < l && !memcmp(&(p[*i+1]), "EXT", 3) { for that
10:54:40 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
10:56:43 -!- Lumpio- has joined.
10:57:09 -!- donmarquis has quit (Ping timeout: 276 seconds).
11:09:07 -!- barts has joined.
11:10:58 -!- epicmonkey has quit (Ping timeout: 246 seconds).
11:12:07 -!- barts_ has quit (Ping timeout: 245 seconds).
11:13:17 -!- Jafet has joined.
11:22:08 -!- epicmonkey has joined.
11:46:08 -!- atriq has joined.
11:46:43 <atriq> Can anyone recommend a C++ tutorial for someone coming from Haskell with the aim of using the Unreal Development Kit?
11:50:27 -!- epicmonkey has quit (Ping timeout: 276 seconds).
11:54:12 -!- atriq has quit (Ping timeout: 245 seconds).
12:05:31 -!- epicmonkey has joined.
12:08:55 -!- atriq has joined.
12:08:59 -!- elliott has joined.
12:13:35 <atriq> elliott, Unreal Development Kit. Haskell. How much point is there trying to get both at once if I have a reason to use the former?
12:14:06 <atriq> Use the UDK in Haskell
12:16:03 <atriq> To do it, I'd need to use Haskell's FFI to do C code which does C++ code which does the UDK
12:16:30 <elliott> sounds like a full-time project to get them talking raelly
12:16:39 <elliott> i wouldn't use udk in the first place tho
12:16:52 <atriq> I have a reason to that is out of my control
12:17:27 <atriq> One of my friends is making a team for a competition organised by Epic Games
12:17:57 <elliott> surely using haskell is banned somehow
12:18:06 <atriq> Nah, you just need to use the UDK
12:18:38 <atriq> And now I will leave to look for clothes.
12:18:42 -!- atriq has quit (Quit: Leaving).
12:21:55 <Arc_Koen> hey, if I design an esolang and it turns out to be very very similar to something that already exist, what do I do?
12:22:13 <Arc_Koen> I create a page nonetheless (with reference to the other in a "see also" section), or not?
12:22:46 <elliott> you can create it if you want to
12:22:59 <elliott> you don't even have to mention the similarity if you don't want to, although someone else might notice and add it
12:23:15 <elliott> whether it's worth adding despite the similarities is up to you
12:23:36 <elliott> we have languages that are identical to others with only minor syntactic changes, after all, although they're not very well-liked (brainfuck equivalents)
12:26:16 <Arc_Koen> yes it happens to be a brainfuck derivative :( I thought about it yesterday, and of course something similar already exists (I think all brainfuck derivatives already exist) and I'm thinking it feels counterproductive to make pages for all brainfuck derivatives I can think of, because everyone can think of them
12:26:33 <Arc_Koen> (I would probably not have asked if it was not a brainfuck derivative)
12:28:41 <elliott> well, brainfuck derivative =/= brainfuck equivalent
12:28:53 <elliott> but it's hard to say more without knowing more about your language, really
12:29:16 <Arc_Koen> well the idea is that the code is contained in the data tape
12:29:34 <Arc_Koen> the tape is finite (initially as long as the program itself)
12:29:50 <Arc_Koen> there are two pointers, both initially pointing to the same cell (the instruction pointer and the data pointer)
12:30:10 <Arc_Koen> the tape is circular, and there is an instruction to create a new cell (so that memory isn't bounded)
12:30:25 <elliott> that seems a lot more interesting than other BF derivatives
12:30:27 <elliott> what is the similar language?
12:30:27 <Arc_Koen> of course "self-modifying brainfuck" already exists
12:30:49 <Arc_Koen> though it doesn't have a finite tape
12:31:28 <elliott> it sounds different enough
12:31:33 <elliott> not like there's limited space on the wiki, anyway
12:32:12 <Arc_Koen> I've written a pretty detailed description, but I have no name
12:41:50 -!- augur has quit (Remote host closed the connection).
12:48:40 <elliott> Qq q q q qqq qq Qq q q qqq
12:50:22 <elliott> "These images are epic, it's like Reddit, only on github!" -- actual github comment
12:51:40 <barts> sounds like twitter, only on livejournal
12:54:55 -!- DAZ44 has joined.
12:55:24 -!- DAZ44 has left.
12:56:29 -!- DAZ44 has joined.
12:56:32 -!- DAZ44 has left.
12:58:12 <elliott> `run echo "@tell DAZ44 $(welcome DAZ44)"
12:58:24 <HackEgo> @tell DAZ44 DAZ44: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
13:12:52 -!- augur has joined.
13:13:52 -!- augur has quit (Read error: Connection reset by peer).
13:14:16 -!- augur has joined.
13:16:24 -!- Phantom_Hoover has joined.
13:21:12 -!- ais523 has joined.
13:30:48 -!- boily has joined.
13:44:46 -!- Nisstyre has joined.
13:46:08 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:51:57 -!- Guest86966 has joined.
13:52:34 -!- trout has quit (Ping timeout: 244 seconds).
14:03:31 -!- epicmonkey has quit (Ping timeout: 246 seconds).
14:08:25 -!- copumpkin has joined.
14:16:24 -!- epicmonkey has joined.
14:20:00 -!- atriq has joined.
14:23:17 <Arc_Koen> really, I can't write "followed with"?
14:23:58 <atriq> I think it's "followed by"?
14:31:23 -!- Nisstyre has quit (Ping timeout: 260 seconds).
14:32:37 <atriq> What's the context?
14:43:08 <Arc_Koen> uh well in both cases it was a character in a string, followed by another character
14:43:33 <Arc_Koen> and well I naturally write "followed with" but apparently I should write "followed by"
14:43:45 <Arc_Koen> I don't know, "followed with" sounded like english
14:45:13 <atriq> English is a ridiculous language
14:45:30 -!- Nisstyre has joined.
14:45:39 <atriq> It's Vikings who spoke French trying to talk to Germans in Latin
14:45:55 -!- jiella has quit (Quit: Leaving.).
14:46:00 <atriq> (actually almost true)
14:47:02 <atriq> While I could talk for about 5 minutes about the history of the English language, I'm not going to.
14:49:31 <Arc_Koen> that language have existed for centuries or millenia, and you can only talk about its history for five minutes?!
14:53:50 -!- mig22 has quit (Quit: mig22).
15:07:14 -!- Slereah has quit (Ping timeout: 240 seconds).
15:07:33 -!- Slereah has joined.
15:07:41 <kmc> i spoke english before it was cool
15:10:53 <elliott> kmc: do you know anything about ancient versions of borland turbo c++
15:11:37 -!- ais523 has quit (Ping timeout: 246 seconds).
15:12:30 <elliott> kmc: this is a non-philosophical question
15:14:37 <kmc> but i did use openwatcom c yesterday
15:17:50 <kmc> to compile a dos program
15:18:23 <kmc> my friend wrote a program for AVR that blinks some LEDs in patterns to induce hallucinations
15:18:31 <kmc> and i decided to convert it to a DOS program that blinks the screen
15:18:34 <kmc> for no particular reason
15:19:49 <kmc> i also used openwatcom c for http://mainisusuallyafunction.blogspot.com/2010/10/programming-jvf-2010.html
15:20:43 <elliott> did you only sort of hallucinate
15:20:49 -!- ais523 has joined.
15:20:57 <kmc> it doesn't really work unless it fills the entire visual field
15:21:16 <kmc> it produces standing waves in the primary visual cortex
15:21:25 <kmc> which sounds like star trek but there are actual neuroscience papers about this
15:21:32 <kmc> (my friend is a co-author on one of them)
15:22:23 <kmc> oh, how naive i was back when i wrote this
15:22:25 <kmc> i thought "public domain"
15:22:29 <kmc> was a thing
15:22:53 <shachaf> public static void doMain()
15:25:55 -!- elliott has quit (Ping timeout: 246 seconds).
15:26:18 <kmc> it's funny to read old code and pick apart my old style
15:26:56 <kmc> it's only indented two spaces
15:27:24 <kmc> and i thought "while (foo) { }" is more readable than "while (foo);"
15:27:26 <kmc> i am not sure now
15:28:50 -!- elliott has joined.
15:29:45 <elliott> kmc: Don't you hate it when you get disconnected from IRC and your replies to things get dropped and also you miss other things other pepole say??
15:29:53 <elliott> clearly should make unrelaible internet connections illegal
15:30:04 <kmc> that's why i run irssi on ec2 and connect to it with mosh
15:30:18 <elliott> kmc: You need an endorsement line on that advertisement.
15:30:29 <kmc> i'm keegan and i approved this message
15:30:34 <elliott> ANYWAY <elliott> kmc: i like the comments on that entry
15:30:46 <elliott> I would use irssi except I hate irssi's interface.
15:33:50 -!- MoALTz has quit (Ping timeout: 244 seconds).
15:35:42 <elliott> I don't know of any good IRC clients.
15:37:42 -!- atriq has quit (Read error: Operation timed out).
15:38:14 -!- atriq has joined.
15:43:40 <elliott> aha, http://www.ousob.com/ng/borcpp/ng365.php
15:59:36 -!- MoALTz has joined.
16:11:01 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
16:13:36 <Gregor> The new bitbucket look…
16:16:51 <elliott> doesn't look anything like facebook
16:22:24 <Gregor> Top blue bar with logo on the left, search and account dropdowns, user pages are timelines, project pages (now like “Pages” on Facebook) expect your project to have a face—err, logo—placed exactly where Facebook puts it.
16:26:33 -!- Phantom_Hoover has joined.
16:32:12 -!- FreeFull has joined.
16:32:49 <atriq> Why am I looking at the Tumblr tag for Haskell?
16:33:14 <FireFly> Huh, when did the bitbucket redesing thing happen?
16:34:27 -!- zzo38 has joined.
16:35:38 -!- ais523_ has joined.
16:35:44 -!- ais523 has quit (Disconnected by services).
16:35:46 -!- ais523_ has changed nick to ais523.
16:39:22 <FireFly> The whole "pretend to be Facebook" thing seems a bit silly, what with the colour scheme and whatnot
16:39:57 -!- AnotherTest has joined.
16:40:50 <FireFly> Though on the brighter side of things, I do like the icons for various actions in the newsfeed
16:41:41 <Gregor> Yeah, there are lots of little improvements that help things, I overall prefer the new UI.
16:41:57 <Gregor> It's just that if I recommended Bitbucket to a friend right now, I'm 100% certain that they'd ask me why it's trying to be Facebook.
16:43:28 -!- epicmonkey has quit (Ping timeout: 246 seconds).
16:50:24 -!- Guest86966 has quit (Changing host).
16:50:24 -!- Guest86966 has joined.
16:51:08 -!- Guest86966 has changed nick to Guest86967.
16:51:33 -!- Guest86967 has changed nick to constant.
16:59:53 -!- ogrom has joined.
17:38:06 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
17:47:52 -!- epicmonkey has joined.
17:51:24 -!- ais523 has quit.
17:51:36 -!- ais523 has joined.
17:54:37 -!- Phantom_Hoover has joined.
18:21:54 <nortti> ok. who the hell manes their web browser browsex?
18:24:14 -!- ais523 has quit (Read error: Connection reset by peer).
18:24:25 -!- ais523 has joined.
18:24:40 -!- AnotherTest has quit (Quit: Leaving.).
18:41:52 <atriq> A really desperate person with a forehead fetish
18:45:24 <fizzie> Too much RegisterClassEx and CreateWindowEx and such.
18:45:42 <olsner> fed up with Browse? try BrowseEx!
18:45:58 <olsner> (or BrowseExW if you want unicode support)
18:46:25 <fizzie> Or maybe they found the developer at ExpertsExchange.
18:47:16 <fizzie> Brows, named by someone *right* after calling creat.
18:56:53 <fizzie> It used to be at expertsexchange.com, I believe.
18:57:01 <fizzie> They added a dash later.
18:58:38 <nortti> that would be awesome url
18:59:32 <fizzie> There's also Pen Island at penisland.net -- they sell pens.
18:59:47 <atriq> That was deliberate, I'm sure.
18:59:49 <fizzie> It's rather likely to be intentional, though.
18:59:59 <atriq> There's Who Represents
19:00:18 <fizzie> I mean, the slogan for Pen Island is "Your Pen Is Our Business".
19:00:36 <olsner> how many people looking for penisland will end up buying a pen after coming to pen island?
19:03:01 <fizzie> There's also the Holland's Hit Festival site at hollandshitfestival.nl.
19:03:31 <fizzie> Oh, and that Therapist Finder service.
19:04:02 <olsner> hmm, Holland Hit Festival sounds like it would be better english, as well as a less unfortunate domain name
19:04:19 <fizzie> olsner: The site is all in Dutch anyway.
19:04:39 <fizzie> nortti: There are several articles. Probably someone has made a combined list too.
19:05:00 <fizzie> "Worst domain names" is a good search keyword I'd guess.
19:10:32 <fizzie> They seem to tend to be titled "unintentionally bad", but many of them are probably not.
19:10:35 <fizzie> http://www.boredpanda.com/worst-domain-names/ has 30, that's long-ish.
19:10:47 <fizzie> Oh, I remember that Powergen Italia page from before, too.
19:11:06 <olsner> oh, that one is actually funny
19:23:03 -!- ogrom has quit (Quit: Left).
19:25:50 -!- ais523_ has joined.
19:25:57 -!- ais523 has quit.
19:28:09 -!- ais523_ has changed nick to ais523.
19:30:01 <zzo38> My Dungeons&Dragons character has now advanced one experience level up.
19:32:37 <shachaf> zzo38: So now you're zz939?
19:33:24 <zzo38> shachaf: No, my Dungeons&Dragons character is actually named Iuckqlwviv Kjugobe and did not change his name.
19:34:24 <zzo38> I usually use the name Kjugobe, although the DM cannot pronounce either.
19:34:34 <shachaf> > sequence [map pred,map succ,rot13] "Iuckqlwviv Kjugobe"
19:34:36 <lambdabot> ["Htbjpkvuhu\USJitfnad","Jvdlrmxwjw!Lkvhpcf","Vhpxdyjivi Xwhtbor"]
19:35:36 <olsner> Vhpxdyjivi Xwhtbor sounds good
19:35:56 <shachaf> You know what else is a nice name?
19:35:59 <zzo38> The name comes from the following algorithm (I programmed it on my graphing calculator): Roll d6, 1=stop, 2,3=vowel (use d6), 4,5,6=consonant (use d20), and then repeat.
19:36:07 <shachaf> olsner: You should /nick oerjan2
19:36:38 <olsner> shachaf: I am not related to oerjan, so that would be confusing
19:36:55 <shachaf> olsner: You would be if you /nicked oerjan2!
19:37:13 <shachaf> You'd be related by having almost the same nick.
19:37:24 <zzo38> I have 290833 experience points in total, by now.
19:37:34 -!- myndzi has joined.
19:37:56 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
19:38:06 <zzo38> What are you trying to calculate?
19:38:42 <olsner> what is the significance of 4951?
19:38:54 <zzo38> There is no inflation involved.
19:39:07 <shachaf> XP used to be worth much more way back when.
19:39:22 <shachaf> DMs just give it out indiscriminately these days. :-(
19:39:24 <zzo38> Are you trying to convert it to a different system?
19:41:19 <olsner> assuming your xp starts at 1, I'd say the inflation-adjusted xp is always 1
19:41:27 <zzo38> No, my XP starts at zero.
19:41:35 -!- ais523 has quit.
19:41:46 <olsner> oh, ok, I don't know how to deal with zero
19:41:58 <zzo38> Do you know how to divide by zero? It is difficult, because dividing by zero is not allowed.
19:42:45 <zzo38> So you have to use limits and whatever, and to know when it is applicable and not applicable to the calculation.
19:42:58 <olsner> zzo38: yeah, that stuff is tricky
19:42:59 <shachaf> zzo38: I know how to divide by infinitesimals.
19:43:05 <shachaf> Which is basically the same thing.
19:43:18 -!- myndzi has quit (Quit: .).
19:44:04 <zzo38> In Icosahedral RPG, 1XP is worth ten of D&D3.5e XP, I think.
19:44:23 <fizzie> How much is that in US dollars?
19:44:26 <zzo38> But D&D3.5e is older than Icosahedral RPG, so they aren't always worth more in the past.
19:44:27 -!- myndzi has joined.
19:44:55 <zzo38> fizzie: I don't know. In gold coins, 1XP (in D&D3.5e) = 5gp, so I don't know what you would convert gold coins to United States currency.
19:45:16 -!- myndzi has quit (Client Quit).
19:45:28 -!- FireFly has quit (Changing host).
19:45:28 -!- FireFly has joined.
19:45:28 -!- epicmonkey has quit (Ping timeout: 246 seconds).
19:46:39 <fizzie> "5*(1/50 pounds) of gold" W|A €399.79 current commodity price.
19:47:02 <zzo38> But that seems like in euros?
19:47:06 -!- myndzi has joined.
19:47:12 <zzo38> Didn't you want it in US?
19:47:31 <fizzie> Well, close enough. Apparently it's $514.62.
19:47:44 <fizzie> W|A automatically selects currency units by geoip trickery, I believe.
19:48:31 <zzo38> It automatically selects many things by geoip trickery, I think. Will it use geoip to figure out the sunrise/sunset times, and to figure out the hour angle of the sun, and so on?
19:49:14 <zzo38> Does it even deal with hour angle directly, or do you need to convert it from right ascension?
19:49:39 -!- jix has quit (Ping timeout: 260 seconds).
19:49:40 <fizzie> I haven't tried to ask any astronomical questions about it.
19:50:05 <fizzie> But "sunrise" gives me today's sunrise in Espoo, Finland, which is the city I'm in, at least.
19:50:32 <zzo38> I know right ascension and declination works, although you cannot seem to specify J2000 and so on. In addition, it doesn't seem to work with ecliptic coordinates, except with the very limited query "astrological sign".
19:52:25 <zzo38> (You will get the ecliptic longitude of the sun, but only the sign and not the degrees within the sign; it doesn't seem very useful with such low precision (only 12 slices of the circle), and aren't W|A supposed to be scientific?)
19:55:12 <zzo38> I think it would make more sense to treat "astrological sign" as an angular unit rather than a query in itself (of course it could automatically expand "astrological sign" by itself into "ecliptic longitude of sun in astrological signs", which is what I think it ought to do).
19:58:54 <zzo38> O, and even if you do request astrological signs, it should tell you the degrees past the beginning of the sign, too.
20:00:00 <fizzie> Well, it's a perpetual work-in-progress, I suppose. Maybe some day it will.
20:00:53 <zzo38> Actually I think we should work together to make the FOSS version of a similar thing in Haskell.
20:01:21 <zzo38> Therefore it might start with not quite as good, but eventually becomes much better much quicker.
20:02:36 -!- oerjan has joined.
20:03:17 <fizzie> oerjan: Did you know that if you made a FOSS version of Wolfram|Alpha, but in Haskell, it would quickly be much better than that crippled thing Wolfram has.
20:03:38 <kmc> hasn't someone been working on that for a while
20:03:55 <zzo38> But not right away; it would take some time first, and then it would improve more quickly than Wolfram|Alpha improves.
20:03:57 <oerjan> i think someone made a version of mathematica, and then was hired by wolfram
20:04:10 <kmc> i don't think it matters what language you use here
20:04:29 <kmc> i think most of the value in W|A is in a billion hard-coded special rules for understanding various kinds of data
20:04:37 <zzo38> I don't mean it would quickly become better, I mean it would eventually improve much more quickly, so eventually it probably would be better, at least at some things, if not all.
20:04:46 <kmc> your choice of programming language might make those rules a bit easier to write but it won't mean you magically don't need to write them
20:04:52 <fizzie> kmc: They "curate" it. That's a hip verb nowadays, or so I am to understand.
20:06:03 <zzo38> kmc: Well, yes, you would still need to write it, but with the Haskell it could be made if you have installed it you can enter English queries or you can use Haskell queries within GHCi, or a combination of both, yes you do need some rules for various kinds of data, default units, whatever else, etc
20:06:19 <kmc> yeah everyone and their dog will be banging down your door to write queries in haskell
20:06:54 <fizzie> I asked Wolfram Alpha about Wolfram Alpha, but it just printed some rather banal statistics about wolframalpha.com; daily page views and index page size in KiB and a HTML element hierarchy graph.
20:08:46 <zzo38> kmc: Well, you would need to have GHC installed if you want to write the queries in Haskell codes, but anyone who uses it and does have may find it useful.
20:11:12 <zzo38> And yes I did think I read about it once someone was doing that in Haskell.
20:11:14 <oerjan> zzo38: afaict the basic problem is that to improve faster than WA there need to be enough people able and willing to write queries in haskell to overtake the actual paid Wolfram employees doing the same for WA.
20:11:57 <kmc> but magical haskell magic will make them 1000x more efficient!
20:12:24 <kmc> surely you're not suggesting that some problems are hard or tedious no matter what programming language you use
20:12:34 <zzo38> oerjan: Someone can certainly pay someone if they use the system within their own company, to make improvement, if anyone ever does do for payment.
20:12:54 <zzo38> But some things are hard, regardless of programming language, is the case, anyways.
20:13:16 <kmc> how goes it shachaf
20:14:51 <ion> shalifornia
20:15:13 <shachaf> kmc: This is your last week of not being Old, by the way.
20:17:34 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
20:19:18 <oerjan> `run echo "lambdabot: @tell elliott You can probably do it like this."
20:19:23 <HackEgo> lambdabot: @tell elliott You can probably do it like this.
20:19:41 <shachaf> oerjan: You have a pretty good nick.
20:20:06 <shachaf> But within the confines of IRC you can't do much better than oerjan.
20:20:36 * shachaf should probably do résuméy things. :-(
20:20:40 <shachaf> That's terribly unpleasant.
20:21:02 <oerjan> also i've had the nick oerjan since 1992/1993 or so.
20:21:25 <shachaf> oerjan: That's just around the time I got the nick Shachaf!
20:23:30 <oerjan> or maybe even earlier, come to think of it.
20:23:45 <atriq> Nobody ever calls me atriq.
20:23:56 <atriq> For a start I'd get mixed up with Patrick
20:24:34 <oerjan> i had the username eigil after my mud character initially, i don't remember exactly when i switched.
20:25:11 <oerjan> presumably when i started using the account for mail and/or usenet.
20:25:58 <fizzie> Yes, that was the "hey".
20:26:11 -!- fungot has joined.
20:26:55 -!- Phantom_Hoover has joined.
20:27:11 <kmc> cnegvpx %rax; pshufd
20:27:16 <atriq> !rot13 Phantom_Hoover
20:27:53 <shachaf> Oh, that shuffles 16-bit values?
20:28:34 <zzo38> Do you know where to buy the fast ARMv2 chips?
20:29:49 <zzo38> (rather than the slow ones)
20:30:08 <zzo38> (O, and they should also be RoHS compliant, if that is possible.)
20:31:39 <elliott> <oerjan> `run echo "lambdabot: @tell elliott You can probably do it like this."
20:31:40 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
20:32:30 <shachaf> elliott: Just imagine oerjan told two bots to each tell two bots to @tell you something.
20:32:36 <shachaf> In the form of a small tree.
20:32:41 <shachaf> Then it would be a four-leaf clever!
20:33:31 <fizzie> pshufd shuffles 32-bit values. packed-shuffle d-oublewords.
20:33:51 <shachaf> Because a "word" is 16 bits.
20:35:44 -!- copumpkin has joined.
20:36:23 <Gregor> !c printf("%d", sizeof "word")
20:37:40 <shachaf> !c printf("@tell elliott oh no :'(")
20:37:43 <EgoBot> @tell elliott oh no :'(
20:38:39 <ion> !c printf("\001ACTION tests\001")
20:38:43 <zzo38> I think you need to put "lambdabot: " at front otherwise there will be zero-width space at front.
20:38:45 <shachaf> Someone tried to get me to get a job in NH the other day.q
20:39:20 <ion> ("boston" `means` "cold")
20:40:47 <oerjan> boston isn't cold. when i was there it was about 30 degrees celsius.
20:41:54 <shachaf> Oh, you went to university in NH, didn't you.
20:43:36 -!- jix has joined.
20:49:21 <shachaf> kmc: 'screen' doesn't support non-BMP codepoints. :-(
20:50:19 -!- hagb4rd has joined.
20:51:11 <kmc> they are racist against ancient sumerians and elves and such
20:51:51 <kmc> fuck mathematicians
20:52:37 <kmc> to please mathematicians you have to include codepoints for bold italic fraktur double-strike lower case greek
20:53:20 <shachaf> Is asking for codepoints like "ℂ" too much?
20:53:27 <kmc> unicode has a bunch of copies of the latin and greek alphabets with different font-ish attributes
20:53:30 <shachaf> (That one happens to be BMP.)
20:53:40 <kmc> because while to normal people these are just font distinctions, to a mathematician they are semantically different characters
20:53:46 <shachaf> Bold and italic is silly, but double-struck isn't *that* silly.
20:53:59 <kmc> and so they get different codepoints according to unicode's philosophical notion of what a character is
20:54:13 <kmc> double-struck was invented as a way of writing bold on a blackboard
20:54:26 <kmc> but now we have bold, double-strike, and bold double-strike
20:54:27 -!- Frooxius has joined.
20:54:58 <shachaf> Hmm, there are some great letters here.
20:55:43 <shachaf> What would you have mathematicians do? Use *multi-character identifiers*?
20:56:08 <kmc> nah i'm just on a rant
20:56:18 <kmc> perhaps they could become more like programmers and accept multi-letter identifiers
20:57:02 -!- ais523 has joined.
20:57:57 -!- augur has quit (Remote host closed the connection).
20:58:36 <ion> I’d love that.
20:58:51 <ion> They already have sin, cos etc.
20:59:28 <ion> instead of bold double-struck comic sans inverse “s” and “c”.
21:00:06 <shachaf> Oh, man, we need COMIC SANS codepoints.
21:02:44 <kmc> http://www.ctan.org/tex-archive/macros/latex/contrib/comicsans
21:03:25 <Gregor> * Mathematics using Comic Sans wherever possible
21:03:59 -!- atriq has quit (Quit: Leaving).
21:05:18 <fizzie> The documentation .pdf is in Comic Sans.
21:05:44 <Gregor> Its example of math in comic sans brings a tear to my eye.
21:11:38 <Gregor> But I am printing that bit and posting it on my cubicle.
21:12:18 <kmc> don't miss page 5
21:14:01 -!- monqy has joined.
21:21:25 * boily foolishly opens the PDF and attempts to read it...
21:22:00 <shachaf> monqy: do you like comic sans
21:22:24 <shachaf> SanDisk should make a music player called Comic Sansa.
21:22:48 <lambdabot> monqy: You have 26 new messages. '/msg lambdabot @messages' to read them.
21:23:19 <monqy> it's going to get thread killed just watch
21:23:24 <monqy> 14:23:19 <lambdabot> Plugin `tell' failed with: thread killed
21:23:33 <monqy> elliott...........................
21:23:54 <shachaf> monqy: Are they all gone now?
21:28:28 <shachaf> Do you still have to download a .exe and extract the font from it using cabextract?
21:28:35 -!- augur has joined.
21:28:51 <kmc> hey i owned a sansa something or other
21:28:56 <kmc> it was shite until i installed rhythmbox
21:30:06 <oerjan> franz i am, i am franz, do you like comic sans
21:30:38 -!- nooga has joined.
21:30:56 <nooga> i'm writing a C compiler in ruby
21:31:08 <nooga> and you know what? it's quite pleasant
21:31:18 <kmc> better than writing a ruby compiler in C
21:31:24 -!- boily has quit (Quit: Poulet!).
21:31:36 <nooga> despite the fact that it's terribly wrong and lame
21:31:55 <kmc> does your C compiler have a hip name and a nice looking website full of references to popular internet memes
21:31:55 <Gregor> Writing compilers in high-level languages makes perfect sense…
21:32:12 <kmc> Gregor: you must be a terrible programmer with a small penis
21:32:26 <nooga> i was looking for a good compiler targetting 65c816
21:32:37 <nooga> which I could easily modify
21:32:56 <nooga> and then i just grabbed this: https://github.com/oggy/cast , and started prototyping
21:33:00 <kmc> why 65c816
21:33:07 <nooga> to the point that it actually compiles something
21:33:56 <nooga> http://integratedredstone.wikispaces.com/RedPower+Control
21:34:39 <pikhq> Why not just write Forth?
21:34:51 <oerjan> write forth and multiply
21:34:56 <Gregor> Why not just write Fythe?
21:35:36 <oerjan> wait, that's not an esolang?
21:35:36 <pikhq> Gregor: Sadly, RP doesn't ship with a Fythe interpreter.
21:36:24 <oerjan> oh it's Gregor's, and he even registered an .org domain
21:37:20 <oerjan> "Hamdee Fythe, Real Estate Agent."
21:37:36 <oerjan> a pretty good name, that
21:39:01 * oerjan imagines him being the evil capitalist ruling hexham, montgomery burns style
21:44:32 <nooga> forth is already there
21:44:44 <nooga> i want C cross compiler
21:45:57 <oerjan> "Your program lacks a main function. What a stupid error."
21:46:16 <oerjan> although maybe that would be a cross linker
21:47:05 <nooga> my compiler emits ACME assembly
21:47:18 <nooga> and ACME does not produce linkable objects
21:47:26 <nooga> so linking is... uh
21:47:28 <kmc> firth of forth
21:47:43 <oerjan> does it have a BEEP BEEP instruction
21:48:05 <nooga> no, but it has "halt and catch fire" instruction
21:48:33 <kmc> does it actually
21:48:35 <kmc> catch fire
21:48:43 <nooga> i think i've seen that
21:49:00 <nooga> but since i currently work with the emulator emulator
21:49:13 <kmc> oh, i heard you like emulators!
21:50:23 <nooga> c compiler written in ruby targets a virtual machine running on a virtual machine
21:51:26 <oerjan> <fizzie> Oh, I remember that Powergen Italia page from before, too. <-- XD
21:51:50 <shachaf> nooga: It's like several dozen spoons when all you need is a butter knife.
21:52:04 <nooga> shachaf: but it's fun
21:52:14 -!- kinoSi has quit (Read error: Connection reset by peer).
21:52:42 -!- kinoSi has joined.
21:54:08 -!- Jafet has quit (Quit: Leaving.).
21:57:21 <oerjan> and the spoons aren't even ironic
21:57:31 <shachaf> oerjan: Is the knife ironic?
22:00:30 <nooga> smør is an awesome word, sounds like smar, which means technical lube in Polish
22:01:45 <Sgeo> monqy, elliott arpdoop
22:02:00 <Sgeo> Phantom_Hoover too
22:02:47 <nooga> i've just accidentally ardpoop
22:06:20 <oerjan> nooga: could be a cognate?
22:10:55 * oerjan hasn't found out how to get good norwegian etymology from the internet yet
22:11:18 <oerjan> for a word that isn't shared with a big language
22:11:38 <zzo38> What is ACME assembly?
22:12:12 <nooga> especially that verb 'smarować' derived from 'smar' is used with both bread and, for example, mechanisms
22:12:41 <oerjan> same with norwegian "smøre"
22:14:20 <ion> > let f 'a' = "rp"; f 'r' = "do"; f 'p' = "op"; f 'd' = "ar"; f 'o' = "pd" in fix (('a':).(f=<<))
22:14:22 <lambdabot> "arpdooparpdpdoprpdooparoparpdopdooparpdpdoprpdopdoprpdooparpdoparpdpdoprpd...
22:15:52 <nooga> i just googled ACME assembler for zzo38 and look: http://www.esw-heim.tu-clausthal.de/~marco/smorbrod/acme/
22:19:24 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
22:24:21 <nooga> Just what do you think you're doing, Dave?
22:25:00 -!- ion has set topic: BEWARE THE Ø̈RJANIST MØ̈Ø̈SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
22:28:44 * oerjan detects a zero temperature in friday's forecast
22:28:58 <oerjan> i guess this is the end then. no one could possibly survive that.
22:40:16 -!- nooga has quit (Ping timeout: 246 seconds).
23:12:45 -!- FreeFull has quit.
23:38:21 -!- carado has quit (Quit: Leaving).
00:31:54 -!- Frooxius has quit (Ping timeout: 264 seconds).
01:06:12 <kmc> 'The entire council of the city of Reggio Calabria in southern Italy is dismissed to stop it from being taken over by the mafia, officials say.'
01:27:34 <Sgeo> I need to finish DS9 at some point
01:32:32 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:36:25 <Sgeo> Does ClojureScript count as a Lisp?
01:36:39 <Sgeo> ClojureScript macros are in a different language (Clojure).
01:37:08 <shachaf> Time for argue-about-words-o'clock.
01:38:53 <kmc> Scheme macros are also in a different language (usually)
01:38:57 <kmc> I guess Scheme isn't a Lisp...
01:39:27 <zzo38> It depends if the macros are in a different language?
01:39:49 <Sgeo> Hmm, what makes a Lisp a Lisp?
01:40:08 <shachaf> Sgeo: The main question is how much Paul Graham has written about it.
01:40:22 <kmc> the term "Lisp" can be endlessly redefined to win the current argument
01:40:25 <kmc> that's the beauty of it
01:40:52 <shachaf> I guess he doesn't write about Lisp anymoer.
01:42:22 * Sgeo should reread LoperOS person's rant about Clojure
01:42:27 <Sgeo> I think I disagree with it
01:43:12 <pikhq> So. For various reasons I got shoved into a "UNIX programming" class. ... Holy mother of shit we have to use *C shell*?
01:43:40 <pikhq> Am I going to need to learn COBOL next?
01:43:43 <Sgeo> "It promotes no, mandates - the use of undigestable foreign matter in Lisp code: primitives on which you cannot pop the hood to reveal intelligible innards."
01:43:44 <pikhq> Seriously, what the fuck.
01:44:20 <Sgeo> Does he believe that the hardware we run on should operate on conses?
01:45:26 <elliott> Sgeo: http://www.loper-os.org/?p=55
01:45:47 <elliott> my encyclopedic knowledge of bad loper os posts finally comes in handy
01:46:50 <shachaf> I thought you quit #esoteric
01:50:44 <Sgeo> I do think that Clojure is uncomfortably closer than it should be to Java at times, but I don't think it's really that horrible.
01:50:57 <pikhq> *C shell does not have functions*.
01:51:09 <Sgeo> pikhq, any chance that they're called something else?
01:51:09 <pikhq> *They made a language worse than Bourne shell.*
01:51:22 <pikhq> Sgeo: No. The closest it *has* is aliases.
01:51:38 <pikhq> C shell is literally devoid of functions.
01:52:19 <kmc> "No car crash, however brutal, will ever produce piles of loose protons and neutrons."
01:52:22 <kmc> i don't think that's true
01:52:29 <kmc> is there really nothing in a car which can burn hot enough to produce plasma?
01:53:34 <Sgeo> Doesn't Joel talk about abstractions
01:53:45 <kmc> oh dear, this seems to be a complicated question
01:53:50 <kmc> Sgeo: Joel talks about a lot of shit
01:54:00 <Sgeo> There may be some abstractions (e.g. TCP) in which leaks of the abstraction are inevitable
01:55:00 <oerjan> we just need the car to crash with randall munroe's baseball
01:55:22 * Sgeo initially skipped the word "about" in what kmc said
01:55:31 <kmc> either way, really
01:55:54 <kmc> magnesium engine block will burn at 3,000 K
01:56:09 <kmc> nobody can give me a straight answer as to what temperature air turns into plasma
01:56:48 <kmc> isn't cool
01:58:18 <oerjan> i hear there is cold plasma too
01:59:31 <kmc> Sgeo: what's special about TCP there?
01:59:57 <kmc> do you mean the fact that it can't overcome an indefinite period of 100% packet loss?
02:00:48 <pikhq> csh builtins cannot be pipes.
02:01:58 <Sgeo> Java methods are not functions in Clojure
02:02:08 <Sgeo> pikhq's thing is probably worse
02:03:13 <pikhq> And its errors don't include line numbers.
02:05:08 -!- Sanky has quit (Ping timeout: 245 seconds).
02:05:32 <pikhq> Who designed C shell, and can I beat them?
02:05:55 * Sgeo again sees a comparison with Clojure :/
02:08:41 -!- ais523 has quit.
02:19:05 <pikhq> Okay, I'm happy with beating him.
02:20:16 <oerjan> a joyful beating, check
02:20:56 <pikhq> Oh dear, he's partly to blame for NFS.
02:20:59 <pikhq> Now I have to beat him.
02:21:21 <pikhq> NFS: because file systems are stateless.
02:27:55 <Sgeo> Wait, NFS is reviled?
02:29:14 <kmc> such a joker
02:42:52 <shachaf> 19:42 <cornihilio> it's like I am stuck misusing the do monad
02:44:00 <oerjan> misusing the do monad, doo dah doo dah
02:44:23 <Sgeo> Newbie misunderstandings are quote-worthy now?
02:44:57 <Sgeo> <rwbarton> since it's cornihilio it's much more likely that the type is right and the 'do' is wrong
02:45:09 <Sgeo> Sounds like the people are familiar with this person?
02:45:42 <oerjan> this person has no heart
02:46:39 <oerjan> no, that would coromnisio
02:48:06 <pikhq> Sgeo: NFS is horrific.
03:03:56 -!- hagb4rd has quit (Ping timeout: 255 seconds).
03:08:04 <shachaf> You know who makes the puns around here, right?
03:08:21 -!- mig22 has joined.
03:08:29 <Sgeo> `welcome mig22
03:08:32 * oerjan just deals out punishment -----###
03:08:33 <HackEgo> mig22: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
03:10:02 <kmc> ^rot13 ▚▞▚▞▚▞▚▞▚▞▚▞▚▞▚▞
03:11:11 <elliott> kmc Does "mc" really stand for "Mc"?
03:11:38 <kmc> haters gonna hate
03:11:55 -!- zzo38 has left.
03:12:06 <elliott> Not good enough for zzo38.
03:27:56 <elliott> kmc: noob answer here but, i think you mean type checking, and that happens before. if a function gets bound, it becomes a new type, and the next type you feed it needs to be compatible. if a function is fed proper types but pruposely used in the wrong context, that's a failure of semantics.
03:28:43 <kmc> very good sir
03:28:51 <kmc> shall i warm up sir's crack pipe
03:29:05 <elliott> kmc: a function that could take functions could do that
03:29:08 <oerjan> i think sir is cracked enough
03:29:10 <elliott> kmc: something along the lines of f :: (a->b) -> a
03:29:14 <elliott> kmc: monads should be suitable for this
03:29:28 <kmc> are you livetweeting #haskell or what
03:29:40 <kmc> jesus really
03:29:40 <elliott> this isn't twitter though kmc
03:29:46 <elliott> shall i warm up sir's crack pipe, as they say
03:29:56 <shachaf> elliott is trying to make you leave the last channel you're still in. :-(
03:30:04 <elliott> that was all one person if that makes it better
03:31:00 <elliott> shachaf: how long has this person been here
03:31:09 <elliott> oh they're just reffering to the monadic context in general now i understand
03:31:11 <elliott> ps by here i mean #haskell
03:31:52 <shachaf> elliott: You're such a geneous.
03:32:36 <shachaf> kmc: Do you know that you still beat me in "number of words said in #haskell"?
03:34:02 <elliott> shachaf: does anyone beat me
03:35:39 <shachaf> I used to write all these specialized monomorphic functions and I couldn't use any free theorems. Then I started writing more general types for my functions and it was all, like, "welcome to parametri city".
03:36:43 <shachaf> Oh, I measured wrong. It's not quite 3x.
03:36:58 <shachaf> dons is almost at 2 million words.
03:39:02 <shachaf> elliott: haveyouread OutsideIn(X)
03:44:22 <shachaf> elliott: I prefer the less well-known "double-negation with newline in the middle" translation.
03:44:43 <elliott> shachaf: Er. What. It's strictly weaker.
03:45:31 <shachaf> elliott: You know how you used to be here every day but now you're only here every 7 days?
03:46:12 <shachaf> elliott: Do you believe cps :: (a -> b) -> (b -> r) -> a -> r yet?
03:46:51 <shachaf> You said it should be a -> (a -> r) -> r before.
03:48:19 <shachaf> ((b -> r) -> (a -> r)) is a CPSed (a -> b)
03:51:41 * Sgeo decides not to ask a stupid and tangentally-related question
03:54:39 <kmc> no paypal i do not need a loan to buy 5 tee shirts
03:58:44 -!- TeruFSX has joined.
04:00:04 -!- zzo38 has joined.
04:08:29 <kmc> 1 lakh rupees isn't cool, you know what's cool? 1 crore rupees
04:11:34 <Sgeo> I can only assume that kmc is either playing a game or drunk.
04:12:12 <kmc> well i'm not more playing a game than usual
04:12:17 <kmc> it's all, like, games, man
04:13:31 * Sgeo fines kmc for one crore crore rupees
04:15:41 <oerjan> why does http://en.wikipedia.org/wiki/South_Asian_numbering_system skip the crore crore row...
04:30:53 <kmc> besides Sgeo, you know that it's illegal to be drunk on the internet
04:32:01 -!- Sanky has joined.
04:32:09 <ion> @type flip (.)
04:32:10 <lambdabot> forall a b (f :: * -> *). (Functor f) => f a -> (a -> b) -> f b
04:32:15 <ion> @type flip (Prelude..)
04:32:16 <lambdabot> forall b c a. (a -> b) -> (b -> c) -> a -> c
04:33:38 <lambdabot> forall a b c. (a -> b) -> (b -> c) -> a -> c
04:37:48 <oerjan> when carnage is insufficient, mr. munroe adds more zeroes.
04:38:22 <shachaf> kmc isn't playing a game more than usual.
04:38:25 <shachaf> Nor drunk more than usual.
04:39:02 <shachaf> I feel like I should learn how type checking/inference works properly.
04:42:48 <kmc> shachaf: Did you read Typing Haskell in Haskell?
04:47:43 <shachaf> That's probably a good one to read. :-)
04:47:57 <shachaf> Of course GHC's type system is barely Haskell these days.
04:52:23 <kmc> i wasn't sure if you meant the general idea of type checking/inference, or specifically ghc haskell with all the bells and whistles
04:52:38 <kmc> implementing type inference for simply typed lambda calculus is fun and not hard
04:53:08 <kmc> hindley milner is only a bit harder, i think
04:53:28 <kmc> and then you add type classes and polymorphic mutual recursion and you have haskell
04:53:41 <kmc> and then you take about 2 mg of LSD and you have GHC Haskell
04:54:06 <shachaf> What do you do to end up with Agda?
04:54:57 <shachaf> Sometimes making these things more general makes them simpler.
04:54:57 <kmc> well, i know nothing about how inference works in agda, to the degree it exists
04:55:08 <kmc> as far as checking goes that is true
04:55:34 <shachaf> Agda's value inference is probably better than its type inference...
04:55:51 <lambdabot> cmccann says: someone should implement a dependently-typed unsafeCoerce in Agda, you'd have to provide a proof that the coercion is invalid
04:55:53 <lambdabot> cmccann says: the most common solution to prevent runtime errors in Agda is by not running the program
04:57:05 <shachaf> That's another one of those that I don't get.
04:58:29 <shachaf> There's no fundamental reason not to have "exists" in Haskell, is there?
04:58:37 <shachaf> I heard there's a fundamental reason not to have it in GHC.
05:02:02 <shachaf> By heard I mean edwardk mentioned something about it being incompatible with the way GHC does type checking at dinner once.
05:02:25 <kmc> "I asked Karp in the elevator and he said it was probably NP-complete"
05:03:19 <shachaf> It was almost exactly a year ago. He's coming back next week for the same event!
05:03:37 <shachaf> Maybe I'll have the opportunity to ask him again.
05:08:51 <shachaf> zzo38: Where did your CodensityAsk type come from?
05:10:30 <elliott> shachaf: Do you like reflection?
05:10:33 <elliott> That's a great library, that.
05:10:37 <elliott> That wonderful person elliott worked on it.
05:10:53 <shachaf> elliott: I don't understand reflection.
05:11:05 <shachaf> It's probably good, though.
05:11:36 <zzo38> shachaf: Actually I just made it up
05:11:52 <elliott> shachaf: Have you ever wanted to be able to express the type "Integer mod 42" in such a way that the 42 is encoded in the type?
05:11:55 <shachaf> zzo38: Right, but in what context?
05:11:57 <elliott> So you don't have to write a Num instance for every single number.
05:12:04 <elliott> That you'd want to modulo it by.
05:12:33 <elliott> shachaf: Okay, then look at "newtype M s a" onwards in http://hpaste.org/66699. Ignore the reflection implementation, it's just Oleg's low-level hack to accomplish it.
05:12:58 <elliott> shachaf: Basically you can lift an arbitrary value to a (phony; the actual "type" is nothing and doesn't matter to you) type that you get an instance for.
05:13:04 <elliott> That instance lets you give a proxy for that type, and get the value back.
05:13:09 <elliott> So you can write interfaces that depend on values.
05:13:15 <zzo38> shachaf: I was first think of Yoneda with a class constraint, and then to use not a class constraint but rather a value instead.
05:13:21 <elliott> shachaf: It can also be used to replace Reader like that, but in a way that omits all the monadic plugging.
05:13:28 <elliott> shachaf: It's like implicit parameters, but without all their weirdnesses.
05:13:36 <elliott> (And you don't have to implement it in the compiler.)
05:13:42 <elliott> reify :: a -> (forall s. Reifies s a => Proxy s -> r) -> r
05:13:48 <elliott> class Reifies s a | s -> a where reflect :: proxy s -> a
05:13:49 <zzo38> And then I realize that you can use it to make a MonadPlus from any comonad.
05:14:05 <zzo38> shachaf: Do you understand me now?
05:14:30 <shachaf> elliott: Did you see CodensityAsk?
05:14:43 <elliott> shachaf: Here's an example of it replacing Reader: http://hpaste.org/66715
05:14:49 <elliott> Pfft, reflection is way cooler than CodensityAsk.
05:14:50 <oerjan> shachaf is now completely confused and thinks Reifies is a CodensityAsk type
05:16:11 <zzo38> oerjan: Oops, isn't Reifies a class instead??
05:16:21 <oerjan> zzo38: he is _very_ confused.
05:16:25 <elliott> See, even zzo38 knows the deal about reflection!!
05:17:06 <shachaf> zzo38: Can you express CodensityAsk as a CodensityAsk type?
05:17:12 <oerjan> reflection lets you be down with what's up
05:19:05 <zzo38> shachaf: I suppose you can use (CodensityAsk (IdentityT f)) but I don't know if that is what you meant
05:19:22 <zzo38> (But you can do that with anything really)
05:22:44 <shachaf> zzo38: What's CodensityAsk (Cont r)?
05:23:49 <zzo38> shachaf: I don't know, but it is something.
05:24:29 <zzo38> However, notice that you don't need to use a functor there, it can be anything, such as (CodensityAsk Predicate) to make up the infinite search monad.
05:25:01 <shachaf> zzo38: CodensityAsk is "pretty damn awesome", confirms another channel.
05:29:11 <shachaf> zzo38: Is it really related to Codensity, though?
05:29:40 <shachaf> Codensity m a = forall z. (a -> m z) -> m z
05:33:40 <zzo38> shachaf: Well, kind of, but not really. I just didn't know what other name to put.
05:34:06 <zzo38> It is a monad in the same way that Codensity is a monad.
05:34:31 <zzo38> Which is also the same way that Cont is a monad, too.
05:34:32 -!- oerjan has quit (Quit: Good night).
05:42:01 -!- zzo38 has quit (Quit: Good night (again)).
06:10:56 <shachaf> @ask zzo38 Is this the CodensityAsk Monad (>>=)? m >>= f = CA $ \q k -> runCA m q (\x -> runCA (f x) q k)
06:20:25 -!- barts has quit (Quit: leaving).
06:24:36 <Sgeo> Today I learned that YKK is a company
06:49:29 -!- nooga has joined.
06:49:37 <elliott> pikhq: what's a good cpu these days
07:08:22 -!- epicmonkey has joined.
07:26:10 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:31:22 <ion> elliott: 68000
07:31:49 <ion> Much more powerful than the 6502.
07:32:11 <ion> You’re welcome.
08:01:37 -!- Jafet has joined.
08:02:03 <shachaf> @tell zzo38 Oh, I guess so.
08:20:54 -!- TeruFSX has quit (Read error: Connection reset by peer).
08:44:04 -!- epicmonkey has joined.
09:53:01 -!- kinoSi has quit (Read error: Connection reset by peer).
09:53:30 -!- kinoSi has joined.
10:21:05 <elliott> kmc: http://www.dustingetz.com/2012/10/09/can-haskell-prove-that-a-program-will-not-crash.html
10:22:43 <elliott> so in effect, an expression of type int -> int, will only crash in the same ways that math can ‘crash’ on pencil and paper.
10:22:49 <elliott> Which means that if we’re confident that our program isn’t ⊥ (do you really worry about the halting problem in your business application?), if your program passes the type checker, it will not crash. ever. (Unless it runs out of memory, or you unplug it, …)
10:23:59 <monqy> i can offer a hard guarantee that if your program won't crash it won't crash
10:24:10 <monqy> how much more could you ever want or need
10:25:19 <Jafet> http://www.dustingetz.com/2012/10/07/monads-in-python-identity-maybe-error.html
10:26:13 <elliott> "business logic is crystal clear. hook it up to a flowchart software or something.
10:26:16 <elliott> heeeeeeeeeeeeeeeeeeeeeeeeeeeeelp
10:27:23 <monqy> Strange Loop 2012 talk - Monads for normal people in python (slides), monads for normal people in python and clojure
10:30:35 -!- monqy has quit (Quit: hello).
10:38:53 -!- ais523 has joined.
10:40:05 -!- Phantom_Hoover has joined.
10:48:57 -!- ogrom has joined.
11:01:41 -!- copumpkin has quit (Ping timeout: 248 seconds).
11:02:14 -!- copumpkin has joined.
11:04:31 -!- Arc_Koen has joined.
11:06:38 -!- ais523_ has joined.
11:06:48 -!- ais523 has quit.
11:08:09 <Jafet> "! End of file on the terminal... why?"
11:09:06 <Arc_Koen> hey, has anyone seen itidus lately?
11:18:22 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
11:19:19 -!- Phantom_Hoover has joined.
11:30:12 <Deewiant> He got called "full of shit always", "spends too much time dragging down the discussion", "making the channel that much worse by being here and [..] clearly never going to change", and took off half an hour later; this was about 156 hours ago.
11:30:42 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
11:54:09 <elliott> Deewiant: sounds like the #esoteric I know
11:55:00 <elliott> nice looks like oerjan started it
11:55:04 <elliott> don't see that every day!!
11:55:55 <elliott> 22:47:20: <itidus21> i am more interested in the unsolicited humour than reality when i say there is no operation which satisfies x in the equation (> (x wolfram) (in mathematicians_wolfram_admires))
11:56:01 <Deewiant> Right, there was some stuff before those quotes, too.
11:56:01 <elliott> that might just be the best opening sentence to an argument ever
11:56:17 <elliott> 22:28:17: <itidus21> apparently wolfram's new kind of science recommends mathematica.. and someone is annoyed by it
11:56:17 <elliott> 22:29:53: <itidus21> i think.. maybe he should see a psychologist
11:56:58 <elliott> 22:55:22: <itidus21> what i tried to say is really in bad taste
11:56:59 <elliott> 22:55:30: <itidus21> so im glad its meaningless
11:57:07 <elliott> i should probably feel bad for laughing at all this a lot
11:57:22 -!- copumpkin has quit (Ping timeout: 252 seconds).
11:57:55 -!- copumpkin has joined.
11:58:07 <elliott> Deewiant: Well, only two of those were PH rather than the three I expected, that's quite exciting.
11:58:18 <elliott> maybe #esoteric does change sometimes!
12:01:41 <elliott> What, he didn't even reply. I want my money back.
12:05:46 -!- ais523_ has changed nick to ais523.
12:06:26 <ais523> elliott: Mathematica ancedote: writing the 2,3 turing machine functions in mathematica, they were orders of magnitude slower than the equivalent Perl
12:06:34 <ais523> (and Perl is not the right language to write those in)
12:08:13 <elliott> ais523: err, you told me this five years ago
12:09:08 <elliott> ais523: why do I remember you telling me something about Mathematica five years ago
12:10:18 <elliott> ais523: well I wouldn't go *that* far [LAUGH TRACK]
12:10:25 -!- ais523 has quit.
12:10:42 -!- ais523 has joined.
12:10:50 <elliott> @tell ais523 i take it back, i'm not sorry at all
12:10:56 -!- boily has joined.
12:11:06 <lambdabot> ais523: You have 3 new messages. '/msg lambdabot @messages' to read them.
12:11:09 <lambdabot> AnotherTest asked 9d 19h 8s ago: On Wikipedia, programming language pages have "info boxes" which show some basic but useful information. Maybe we could do this on the esolangs wiki too? (To give
12:11:10 <lambdabot> you an idea of the information that the boxes would contain; I was thinking of: paradigms, creator, year of creation, derived from, influenced by, influenced, specification, reference implementation
12:11:10 <lambdabot> elliott said 19s ago: i take it back, i'm not sorry at all
12:11:32 <ais523> I don't think you need to apologise for whatever you were trying to apologise for
12:11:43 <elliott> <elliott> ais523: well I wouldn't go *that* far [LAUGH TRACK]
12:11:44 <elliott> <elliott> @tell ais523 i'm sorry
12:11:44 <elliott> <lambdabot> Consider it noted.
12:11:44 <elliott> * ais523 (~ais523@unaffiliated/ais523) has joined #esoteric
12:11:46 <elliott> <elliott> @tell ais523 i take it back,
12:11:50 <elliott> i stopped being sorry because it became clear you did not actually get upset!
12:11:52 <elliott> therefore i don't have to be worry
12:14:52 -!- copumpkin has quit (Ping timeout: 244 seconds).
12:15:27 -!- copumpkin has joined.
12:32:48 -!- Phantom_Hoover has joined.
12:37:13 -!- ais523 has quit (Read error: Connection reset by peer).
12:37:19 -!- ais523_ has joined.
12:37:53 -!- ais523_ has changed nick to ais523.
12:41:14 -!- ogrom has quit (Quit: Left).
12:47:34 -!- Slereah_ has joined.
12:49:34 -!- Slereah has quit (Ping timeout: 246 seconds).
13:10:44 <nortti> wtf: http://thedailywtf.com/Articles/The-Killing-Job.aspx
13:16:23 -!- ais523 has quit.
13:17:44 <ion> I have a week’s worth of stats from my server that’s in the NTP pool. The connection speed has been set as 3 Mbit/s in the pool settings, the average usage is less than 0.5 kB/s. http://heh.fi/collectd/img/ntp-bytes
13:18:22 <elliott> ion: Haha, you actually have that GPS thing in an NTP pool?
13:18:37 <ion> elliott: My server has been in the pool for ages.
13:21:13 <elliott> ion: Well, I only got told about this server thing a few days ago by someone or other in here.
13:21:17 <elliott> I am "out of" "the" "loop".
13:24:34 <elliott> ion: Do you happen to know if there's any particularly easy way to compare my system's idea of the time with your server's?
13:24:51 <elliott> I'm synchronised with ntp myself though, so it might be... uninspiring.
13:25:21 <ion> elliott: “server ntp1.heh.fi iburst”
13:25:51 <elliott> ion: I take it that's not a shell command.
13:25:53 <ion> elliott: Which servers are you using, btw? {0,1,2,3}.{your area}.pool.ntp.org?
13:25:57 <ion> elliott: A ntp.conf line
13:26:09 <elliott> It's, uh, literally whatever the Arch default is. Let me check.
13:26:20 <elliott> [012].pool.ntp.org. Thoroughly uninspiring.
13:26:36 <elliott> I guess there is probably some trickery to give me geographically-appropriate servers for those?
13:27:44 <ion> 0) Vendors are working against the pool rules by using that by default; they should be {0,1,2,3}.arch.pool.ntp.org. 1) Why {0,1,2}, not {0,1,2,3}? 2) I think it probably has some GeoIP stuff, but i guess it’s best to use {0,1,2,3}.{your area}.pool.ntp.org.
13:29:08 <elliott> 0) Who starts numbering their lists from 0? I'm hereby renumbering 0 as 1. 1) I'd report it as a bug, except, uh... I'm lazy, and I doubt they'd care. 2) God knows, but that's how it is. 3) Right. Modifying configurations is so 2011, but maybe having super accurate time is 2012 enough to counter it out.
13:29:26 <elliott> I like how http://pool.ntp.org/ has a decent chance of getting you some quaint time server website.
13:29:41 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
13:30:14 <elliott> ion: I'm not sure what the vendor thing is about, though. It seems a rather arbitrary distinction.
13:30:49 <elliott> Should Linux from Scratch recommend you use lfs.pool.ntp.org, even though you're mostly doing things yourself and don't really have any association with LFS?
13:30:56 <elliott> Admittedly Arch is a bit heavier-weight than that, but still.
13:31:27 * elliott notes that http://www.pool.ntp.org/en/use.html doesn't mention anything about it either :p
13:31:36 <elliott> I guess http://www.pool.ntp.org/en/vendors.html is it.
13:31:38 <ion> Sometimes some vendor’s device/software is faulty in some way and DoSes the pool. That way they can limit the issue until the bug is fixed.
13:31:48 <elliott> "Time usually just advances." Deep.
13:31:49 <Jafet> lfs should provide instructions for calibrating with a sundial
13:32:06 <elliott> ion: I think Arch just ships unpatched ntpd with a default configuration file.
13:32:16 <elliott> They don't patch stuff all that much.
13:32:28 <elliott> Also by ntpd I think I mean openntpd?
13:32:52 <ion> If an LFS/whatever *user* configures their ntpd they’re free to do whatever they want. But vendors coming with some kind of a default configuration should get a subdomain.
13:33:04 <Jafet> Is there much practical use for having network calibrated time, anyway?
13:33:06 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:33:06 <elliott> No, I mean whatever this "ntp" package is.
13:33:28 <elliott> Jafet: Well, you get a clock that's right. That's pretty valuable.
13:34:13 <elliott> ion: Right. So where do you draw the line between a user copy-pasting an example configuration file from a website, and a user telling a tool (e.g., package manager pacman) to copy-paste an example configuration file for them? Admittedly it's somewhat more obvious in the case of something big and supported and official like Ubuntu.
13:34:35 <Jafet> So, why is that valuable.
13:35:21 <elliott> Jafet: Well, time is a thing.
13:35:28 <elliott> I think all sorts of Official(tm) stuff uses NTP.
13:35:31 <ion> Protocols that require roughly the same time on both ends are able to work. Filesystem etc. timestamps will be correct.
13:35:35 <elliott> "Therefore, air traffic control was one of the first applications for NTP." -- see, that's official.
13:36:02 <ion> You won’t be late for work when using your computer’s clock.
13:36:18 <Jafet> That's assuming your office is on the same time!
13:36:54 <Jafet> I think protocols should start by negotiating time, rather than assuming the same time.
13:37:15 <elliott> There's also the whole thing where it's nice for you, as a person, to know what time it is.
13:37:37 <elliott> Unless you want every conversation about when to do a certain thing to involve negotiating two different clocks that are 15 minutes off because nobody synchronises their time.
13:37:43 <ion> Yeah, add time-dependency to the protocol so the attacker is unable to replay authentication packets… but let her dictate what time it is.
13:37:50 <elliott> Seems nicer to have just one program (i.e., ntp) do the conversations about agreeing on what a time means.
13:38:41 <Jafet> "Someone with a watch can always tell the time. Someone with two watches is never sure."
13:39:05 <ion> Someone with two ntp-synchronized watches?
13:39:23 <elliott> I think Jafet may be engaged in some leg-pulling.
13:42:53 -!- FreeFull has joined.
13:43:41 -!- Phantom_Hoover has joined.
13:48:29 <ion> nortti: :-D
13:50:41 <Jafet> ion: bitches don't know about mah nonce
13:53:22 <ion> “We can use y to help us obtain an estimate of x, but we cannot necessarily take the information from y at face value because it is corrupted by noise. The measurement is like a politician. We can use the information that it presents to a certain extent, but we cannot afford to grant it our total trust.” :-D
13:54:35 <Jafet> Politicians, unfortunately, don't tend to be gaussian.
13:54:44 -!- copumpkin has joined.
14:06:57 -!- mig22 has quit (Quit: mig22).
14:15:28 -!- sirdancealot has quit (Ping timeout: 246 seconds).
14:26:06 -!- MoALTz has quit (Quit: Leaving).
14:27:04 -!- jiella has joined.
14:33:47 -!- MoALTz has joined.
14:40:08 -!- sirdancealot7 has joined.
14:40:43 -!- kmc_ has joined.
14:40:57 -!- ineiros has joined.
14:41:27 -!- tswett_ has joined.
14:45:46 -!- kmc has quit (*.net *.split).
14:45:50 -!- yiyus has quit (*.net *.split).
14:45:50 -!- ineiros_ has quit (*.net *.split).
14:45:50 -!- tswett has quit (*.net *.split).
14:53:58 -!- yiyus has joined.
14:58:01 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
14:59:24 -!- sirdancealot7 has joined.
15:01:14 -!- augur has quit (Remote host closed the connection).
15:22:31 -!- MoALTz has quit (Ping timeout: 245 seconds).
15:23:00 -!- MoALTz has joined.
15:26:45 -!- sirdancealot7 has quit (Ping timeout: 248 seconds).
15:46:18 -!- augur has joined.
15:59:40 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
16:09:08 <nooga> struct S x, y; x = y; just blindly mempcys contents from x to y?
16:10:36 <kmc_> in C++ you can define the behavior by overloading operator=
16:10:46 -!- kmc_ has changed nick to kmc.
16:11:15 -!- Phantom_Hoover has joined.
16:11:26 <kmc> the default in C++ is basically that it does "x.a = y.a; x.b = y.b;" for all the fields
16:11:45 <kmc> which might in turn invoke a user-defined operator= or recursively invoke that default rule
16:11:54 <kmc> so Plain Old Data in C++ effectively gets memcpy'd too
16:12:22 <nooga> i never use plain structs
16:12:31 <nooga> always pointers to structs
16:12:47 <Arc_Koen> I never use pointers to structs
16:12:54 <Arc_Koen> always pointers to pointers to structs
16:12:58 <kmc> i don't always use structs, but when i do, i use pointers to them
16:17:27 -!- elliott has quit (Ping timeout: 240 seconds).
16:29:57 <fizzie> nooga: It's not guaranteed to memcpy. In particular, it need not copy padding.
16:33:02 <nooga> if the struct fits into 32 or 64 bits (in x86-64)
16:33:29 <nooga> i've just read what clang produced for my test program
16:33:48 <fizzie> Yes, well, but the point was that it doesn't need to copy all the bytes. Of course it can, and maybe probably will.
16:34:35 <fizzie> "When a value is stored in an object of structure or union type -- the bytes of the object representation that correspond to any padding bytes take unspecified values.51) ... 51) Thus, for example, structure assignment need not copy any padding bits."
16:42:44 <Gregor> It will frequently, perhaps always, be more efficient to copy the padding anyway.
16:43:07 <Gregor> (Irrelevant statement GOOOO)
16:43:53 <olsner> it will always be most efficient to choose the most efficient alternative
16:45:52 <olsner> actually no, choosing can be costly ... skip directly to *using* the most efficient alternative
16:50:02 -!- Jafet has quit (Ping timeout: 245 seconds).
16:51:04 -!- epicmonkey has quit (Ping timeout: 246 seconds).
16:58:07 -!- ogrom has joined.
16:58:26 -!- zzo38 has joined.
17:05:53 -!- Jafet has joined.
17:12:12 <nooga> i like this channel
17:16:49 <lambdabot> zzo38: You have 2 new messages. '/msg lambdabot @messages' to read them.
17:16:58 <zzo38> lambdabot ?messages
17:17:03 <lambdabot> shachaf asked 11h 6m 1s ago: Is this the CodensityAsk Monad (>>=)? m >>= f = CA $ \q k -> runCA m q (\x -> runCA (f x) q k)
17:17:03 <lambdabot> shachaf said 9h 14m 58s ago: Oh, I guess so.
17:17:53 <zzo38> Yes, it is almost a kind of Codensity monad.
17:21:52 <olsner> hmm, is it just me or has the internet been more boring than usual the last few weeks?
17:22:32 -!- Jafet has quit (Ping timeout: 255 seconds).
17:22:33 <boily> I'd say it is interestingly boring.
17:23:37 <nortti> lol: http://thedailywtf.com/Articles/Taking-a-Dump.aspx
17:25:58 <olsner> ah, that did temporarily restore my faith in the internet
17:27:30 <nooga> http://fu.x14.eu/#WTF,funny,pics,4chan here You go
17:28:21 <ion> nortti: hah
17:33:41 -!- zzo38 has quit (Remote host closed the connection).
17:36:47 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
17:39:49 -!- sirdancealot7 has joined.
17:42:11 -!- ogrom has quit (Quit: Left).
17:43:45 <shachaf> ion: https://groups.google.com/forum/?fromgroups=#!topic/bahaskell/QJi4bU0cFi4
17:47:41 <nooga> i never did that but I always thought that I can ((unsigned int*)0x54aa4f02) = 100;
17:48:07 <olsner> sure, you "can" do that
17:48:43 <nooga> it's not legal lvalue according to clang
17:48:54 <olsner> oh, you're missing a *
17:52:39 -!- Phantom_Hoover has joined.
17:56:38 -!- augur has quit (Read error: Connection reset by peer).
17:57:07 -!- augur has joined.
17:58:48 -!- mean has joined.
18:03:19 <ion> shachaf: There’s going to be a Google hangout?
18:11:45 <shachaf> ion: I think that's the plan.
18:11:52 <shachaf> It's like recording, except for the recording bit.
18:12:34 <ion> I hope it also gets recorded.
18:17:51 <shachaf> You can record the G+ stream!
18:20:09 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
18:20:25 -!- Arc_Koen has quit (Quit: Arc_Koen).
18:38:40 -!- atriq has joined.
18:40:19 <atriq> Means I don't have to deal with anything
18:41:21 -!- Phantom_Hoover has joined.
18:43:40 <fizzie> @tell atriq Deal with a thing, please.
18:43:54 <atriq> @tell fizzie I REFUSE
18:44:06 <fizzie> This was a productive thing to do.
18:44:19 <fizzie> I hope I didn't have any messages in the meanwhile there.
18:45:21 <atriq> That would have been bad
19:02:35 <ion> SmoothLife is a family of rules created by Stephan Rafler. It was designed as a continuous version of Conway's Game of Life - using floating point values instead of integers. http://youtu.be/KJe9H6qS82I
19:02:54 <atriq> Didn't Phantom_Hoover make something like that?
19:02:56 <atriq> Wait, that was chess
19:03:03 <ion> shachaf: I’m sure the stream will be of much worse quality than what can be recorded on-site.
19:03:49 <Sgeo> As an actually playable game, or as ... something to observe
19:04:02 <Sgeo> Can I read about SmoothLife rather than watch a video?
19:05:03 <Phantom_Hoover> he won the first game because i let him change the rules
19:05:21 <Sgeo> Can I assume by flotrary ratiiece of shit right now.
19:05:25 <Sgeo> , my computer is being a piece of shit right now.
19:05:25 <Sgeo> , my computer is being a piece of shit right now.
19:05:43 <Phantom_Hoover> and also i mustn't've worked out the final version of the rules for moving through enemy piece
19:06:27 <Sgeo> What I intended to say was, can I assume that by floating point values, you mean arbitrary reals or rationals?
19:07:21 <Sgeo> flotrary ratiiece, what a wonder phrase.
19:09:54 <Sgeo> Phantom_Hoover, that paper looks like it was made after Gemini?
19:11:01 <Sgeo> Just that the paper mentions large constructions and changes to the GoL rules made in the search of a non-orthogonal non-diagonal "glider"
19:11:12 <Sgeo> (I think the paper is abusing the term "glider", isn't it?)
19:11:37 <atriq> I have a fear that in two thousand years the only source for historians learning about our civilization will be Tumblr
19:11:52 <Phantom_Hoover> 'glider' is often used the same way as 'spaceship' when talking about general cas
19:12:52 <atriq> To demonstrate the problem: http://froyuh.tumblr.com/post/33310816271/katherinebloginson-frankenzned
19:13:32 -!- ais523 has joined.
19:13:39 <Phantom_Hoover> that is a pretty cutting commentary on our civilisation though
19:14:13 <atriq> I spell how I want to spell: no more, no less.
19:16:13 <atriq> I believe on an older version of my user page I mentioned I spoke en-GB-oed, in which -ize and -ization are accepted
19:19:07 -!- oerjan has joined.
19:21:04 <oerjan> <elliott> nice looks like oerjan started it <-- i was _not_ the one to say he made the channel worse. i think.
19:22:22 * oerjan might be gone a few(?) days himself, got to get something done about my bad feet...
19:22:57 <atriq> Has anyone any itinews?
19:23:13 <ais523> hmm, the TV is currently talking about one of those questions that makes your head hurt
19:23:22 <ais523> basically, it's to do with Fairtrade ingredients
19:23:46 <oerjan> he isn't on freenode under his two usual nicks, anyway. (he was last time i checked.)
19:24:01 <ais523> some companies have apparently been buying both Fairtrade and non-Fairtrade ingredients, and putting the non-Fairtrade ingredients in their Fairtrade products and vice versa
19:24:17 <ais523> such that they're using the same amount they would have used otherwise
19:24:54 <ais523> the question is, is this unethical in any way? the issue in my head is that the only difference between fairtrade and non-fairtrade is the price the company paid the farmers
19:25:02 <ais523> and they're receiving the same amount of money any way
19:25:40 <oerjan> reminds me of the green electricity market - current doesn't care where it comes from :)
19:26:29 -!- mean has quit (Read error: No route to host).
19:26:52 -!- oerjan has quit (Quit: Ribbit).
19:33:04 -!- oerjan has joined.
19:35:22 <shachaf> ion: You should ask about recording!
19:35:53 <oerjan> :t let m >>= f = \q k -> m q (\x -> (f x) q k) in (>>=)
19:35:54 <lambdabot> forall t t1 t2 t3 t4. (t -> (t1 -> t2) -> t3) -> (t1 -> t -> t4 -> t2) -> t -> t4 -> t3
19:35:58 <shachaf> ion: I guess you'd have to join the list. Should I ask?
19:38:29 <oerjan> oh i guess there's a forall on the (t1 -> t2) vs. t4 part
19:38:47 <atriq> kallisti, I need to make someone who's trying to be cool by pretending to be a discordian look like an idiot
19:40:19 <HackEgo> 2012-10-10.txt:19:39:21: <oerjan> `log newtype CA
19:40:53 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25933
19:41:38 <oerjan> `pastelogs zzo38>.*\<CA\>
19:41:45 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.906
19:42:26 <oerjan> `pastelogs zzo38 codensityask
19:42:32 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.30825
19:42:34 <oerjan> `pastelogs zzo38.*codensityask
19:42:41 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.29654
19:44:10 <ion> shachaf: If you don’t mind asking, i’d appreciate it.
19:45:19 <oerjan> of course the housemate has to start humming precisely when my brain is _just_ out of reach of grasping this.
19:45:48 * Sgeo has a habit of humming
19:45:59 * oerjan hires a hitman to take out Sgeo
19:46:07 <oerjan> it's for the good of humanity!
19:46:20 -!- epicmonkey has joined.
19:47:17 <oerjan> oh well, it's just the universe's way of telling me not to get anywhere near codensityask.
19:47:20 -!- augur has quit (Read error: Connection reset by peer).
19:47:41 -!- augur has joined.
19:47:55 * oerjan hires a hitman to take out the universe
19:50:16 <mroman> Quick or slow painful death?
19:50:26 <oerjan> quick. we are not monsters either.
19:50:46 <oerjan> besides, i don't want slow painful death on my karma.
19:50:56 <Sgeo> Is CodensityAsk a zzo38 invention?
19:51:12 <atriq> What's CodensityAsk?
19:51:14 <oerjan> it's in that last paste
19:53:08 -!- augur has quit (Read error: Connection reset by peer).
19:53:31 -!- augur has joined.
19:54:49 -!- augur has quit (Read error: Connection reset by peer).
19:55:14 -!- augur has joined.
19:55:15 <atriq> I don't see how that's a functor
19:55:53 <atriq> Unless you don't use the function at all
19:56:02 <atriq> In which case, it's a ridiculous Proxy
19:57:59 <oerjan> zzo38 claims it's a monad always
19:58:13 <oerjan> but sadly my brain cannot get close to it
19:59:34 <fungot> \o| |o| |o/ \m/ \m/ |o/ \o/ \o| \m/ \m/ \o| |o| |o/
20:00:47 <Sgeo> Who was it who did that anyway?
20:08:34 <kallisti> 19:38 < atriq> kallisti, I need to make someone who's trying to be cool by pretending to be a discordian look like an idiot
20:08:41 <kallisti> no, I am not very good at this
20:08:54 <atriq> I HAVE PROMISED NEVER TO TALK TO HIM EVER AGAIN
20:09:07 <kallisti> my usual razor-sharp wit fails me, now.
20:09:23 -!- tswett_ has changed nick to tswett.
20:09:28 <atriq> One of my friends was telling me a story today
20:09:31 <kallisti> though a maternal insult is always a reliable choice.
20:09:48 <atriq> About how, one christmas, she received a DVD and was struggling to open it
20:10:04 <atriq> So she asked her brother to give her a knife or a pair of scissors
20:10:19 <atriq> "Don't worry. We can use my razor-sharp wit!"
20:12:40 -!- hagb4rd has joined.
20:12:56 <oerjan> kallisti: your mom is a reliable choice
20:26:48 -!- ais523_ has joined.
20:27:38 -!- ais523 has quit (Ping timeout: 245 seconds).
20:27:43 -!- ais523_ has changed nick to ais523.
20:35:29 -!- hagb4rd has quit (Ping timeout: 256 seconds).
20:45:15 -!- boily has quit (Quit: Poulet!).
20:52:18 -!- epicmonkey has quit (Ping timeout: 276 seconds).
21:02:04 -!- Jafet has joined.
21:05:41 -!- atriq has quit (Quit: Leaving).
21:29:15 -!- Nisstyre-laptop has joined.
21:33:30 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:34:18 -!- Nisstyre-laptop has quit (Ping timeout: 264 seconds).
21:53:44 -!- kinoSi has quit (Read error: Connection reset by peer).
21:54:10 -!- kinoSi has joined.
21:55:40 -!- hagb4rd has joined.
22:09:46 -!- augur has quit (Remote host closed the connection).
22:22:15 -!- Arc_Koen has joined.
22:23:35 -!- FreeFull has quit (Quit: Sleep).
22:29:38 <Arc_Koen> oerjan: any new thoughts on ais523's non-deterministic brainfuck?
22:32:26 -!- nooga has quit (Ping timeout: 252 seconds).
22:33:00 <oerjan> which one was that again
22:33:33 <oerjan> i guess my current thought is that it was rather forgettable :P
22:34:26 <oerjan> nothing to be sorry about, i just took a while answering
22:34:37 <Arc_Koen> + > [ ] with [ ] identical to brainfuck and + is randomly + or - and > is randomly > or <
22:38:23 <oerjan> well, nothing new, no.
22:38:43 <oerjan> i think it may be particularly hard to use ><
22:39:30 <oerjan> to see if it's still possible to do anything in it, presumably
22:40:43 -!- augur has joined.
22:44:05 <Arc_Koen> it may be simpler starting with boolean cells (and + always flipping the bit)
22:44:27 <shachaf> http://samuelhughes.com/boof/
22:44:54 <Arc_Koen> and then maybe use [>] to move to nearest zero cell, digfill-style
22:50:12 <oerjan> i just don't see any way to reliably return to a cell.
22:51:07 <Arc_Koen> well if you're on a cell with all the cells to the right zero and the cell to the left 1
22:51:31 <oerjan> i mean if there is a nontrivial pattern of cell values.
22:51:33 <Arc_Koen> hmmm that doesn't even work if the cell you're in is 1
22:52:09 <Arc_Koen> well if we can find a pattern that makes it possible, then we *only* need to make programs that keep that pattern
22:55:45 -!- copumpkin has joined.
23:04:07 <Arc_Koen> urrrh why is there no sum or successor function with type char in ocaml
23:06:48 <oerjan> > map succ "I dunno, use haskell >:P"
23:07:19 -!- jiella has quit (Quit: Leaving.).
23:08:01 <oerjan> it doesn't have sum though, not that summing unicode codepoints makes sense.
23:08:39 <oerjan> shachaf: you didn't get zzo38's language name before? :)
23:09:20 <ais523> oerjan: note that < and > all do at least move
23:09:25 <ais523> so you always know if you're on evens or odds
23:09:35 <ais523> this may make it possible to maintain two numbers on the stack, somehow
23:11:16 <ais523> on odds and evens of the tape
23:11:49 <shachaf> Well, not if you use > in a loop...
23:11:51 <ais523> the problem is that the value of the numbers is pretty fuzzy and hard to determine
23:11:55 <ais523> shachaf: if you do [>]
23:12:16 <ais523> then you're moving until you find some blank cell that has no blank cells between it and your current location
23:12:24 <ais523> it's the same except for respecting oddness/evenness
23:12:28 <oerjan> i am not sure there is a reliable way to distinguish more than even vs. odd numbers, zero is a subset of even but can you reliably set some cell to non-zero even?
23:13:09 <ais523> reliably sets it to 1 or -1
23:13:17 <oerjan> non-zero _even_ i said
23:13:51 <oerjan> there is definitely no way to distinguish 1 from -1, by symmetry
23:14:22 <oerjan> (not that i think you meant that)
23:14:41 <ais523> I'm not convinced you can reliably distinguish 1 from 2 without an infinite loop
23:15:36 <ais523> something along the lines of [+]++[>] seems promising
23:15:43 <ais523> except you can't figure out where the pointer is afterwards
23:15:46 <ais523> and you'd need to put it in a loop
23:15:55 <oerjan> that could easily keep it as 0
23:16:05 <ais523> the idea is you loop until the [>] runs and moves the pointer
23:16:09 <ais523> but you can't detect whether it moved or not
23:16:30 <ais523> you could just do [[+]++[rest of program here]]
23:16:35 <ais523> but that doesn't repeat
23:16:56 <ais523> well, it /does/ repeat, if you only have one of them
23:17:06 <ais523> you could drop out of the main loop to set cells to 2/-2
23:18:22 <oerjan> hm an observation: if a run of non-zero's is even in length, then you _can_ reliably get to the zero at a chosen end
23:19:15 <oerjan> from a known point inside it
23:19:16 <ais523> no, not at a chosen end
23:19:31 <ais523> by using the length as an indicator
23:19:51 <ais523> err, couldn't you also end up one past the other end?
23:42:02 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
23:43:25 <oerjan> i wonder if this is somehow related to an idea i've had - a brainfuck variant where you can only apply + to 0 and - to 1, and any other use of them is undefined behavior
23:44:01 <ais523> your language seems much easier
23:44:05 <oerjan> it's sort of an intersection of every bf cell size with unbounded tape, but still TC
23:44:17 <oerjan> yeah it has no >< problem
23:44:18 <ais523> yeah, it's obviously TC
23:44:39 <oerjan> you can emulate boolfuck flip with 2 cells easily
23:46:19 <oerjan> the relation i thought of is just that your variant has those operations as + (or [+]+) and [+] respectively
23:56:51 <oerjan> +[>>]+[>>]+ creates a 10101 pattern and puts you at one end
23:58:01 <oerjan> +[>]+[>]+[>>]+ creates a 11101 pattern
23:59:56 <ais523> neither [+]+ nor [+] cares about the original value
00:00:37 <ais523> anyway, I have a feeling "CPS" is the way to go here
00:00:45 <ais523> or at least, inside-out loop programming
00:01:04 <ais523> you'd expect it to be just because it isn't obviously sub-TC
00:02:04 <ais523> you can use alternating elements of the tape as two counters
00:02:20 <ais523> you can increment them, the problem is decrement and zero test
00:03:24 <ais523> to decrement, you'd need to find one end of the counter, then overwrite it with a 0
00:03:41 <ais523> the problem is if the counter is actually 0, you'd just spend forever trying to find the end
00:03:48 <ais523> even if you had a reliable inverted while, and I'm not sure you do
00:04:18 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:04:25 -!- Frooxius has joined.
00:31:08 -!- MoALTz has quit (Quit: Leaving).
00:54:46 -!- Jafet has quit (Quit: Leaving.).
01:03:40 -!- sivoais has quit (Ping timeout: 244 seconds).
01:06:23 -!- sivoais has joined.
01:14:40 -!- monqy has joined.
01:23:46 -!- monqy has quit (Quit: hello).
01:24:29 -!- hagb4rd has quit (Ping timeout: 256 seconds).
01:48:33 -!- Frooxius has quit (Ping timeout: 256 seconds).
01:48:58 -!- TeruFSX has joined.
02:04:00 -!- ais523 has quit.
03:02:16 -!- hagb4rd has joined.
03:09:33 -!- hagb4rd has quit (Ping timeout: 272 seconds).
03:11:12 -!- Wntrvnm has joined.
03:15:41 -!- hagb4rd has joined.
03:17:07 -!- TeruFSX_ has joined.
03:20:43 -!- TeruFSX_ has quit (Remote host closed the connection).
03:21:07 -!- TeruFSX_ has joined.
03:39:14 -!- hagb4rd has quit (Ping timeout: 260 seconds).
03:47:56 -!- monqy has joined.
03:50:34 -!- mig22 has joined.
03:52:33 -!- TeruFSX_ has quit (Read error: Connection reset by peer).
03:52:52 -!- TeruFSX_ has joined.
04:30:14 -!- Jafet has joined.
05:43:11 -!- hogeyui has quit (Ping timeout: 244 seconds).
06:00:24 <shachaf> kmc: 22:59 <shachaf> A new lambdabot isn't cool. You know what's cool? A new (U+E9278)bot.
06:01:16 <oerjan> kelvinbot is the coolest bot
06:06:00 <olsner> I'm guessing that was the pun he was going for
06:06:24 <kallisti> yes but it is more solidified cool.
06:07:39 <oerjan> some people want solid zero kelvin puns, but i say the helium
06:08:58 <oerjan> the helium deficit is simply ballooning
06:09:28 <olsner> what other things is helium used for, really?
06:12:20 <olsner> I should be doing more mad science
06:13:05 <shachaf> ((more mad) science) or (more (mad science))?
06:13:56 <olsner> also more science, so I have some science to put the mad in
06:20:31 <fizzie> More ((more mad) science).
06:20:39 <shachaf> More, more, I'm still not satisfied!
06:44:52 -!- monqy has quit (Quit: hello).
06:49:39 -!- Jafet has quit (Ping timeout: 255 seconds).
06:51:32 -!- epicmonkey has joined.
07:24:47 -!- epicmonkey has quit (Ping timeout: 272 seconds).
07:53:38 -!- oerjan has quit (Quit: See you in a few days if I survive).
07:56:19 -!- oerjan has joined.
07:57:09 <oerjan> Just realized I probably shouldn't imply that I expect not to survive hospital :P
07:57:12 -!- oerjan has quit (Client Quit).
07:57:38 <shachaf> kmc: The examples in the end of http://mainisusuallyafunction.blogspot.com/2010/10/quantification-in-haskell.html aren't actually monoids (1/"foo" aren't identities).
07:58:09 <shachaf> I'm not sure whether that was meant to imply that Something was equivalent to SomeMonoid.
08:19:21 -!- TeruFSX has quit (Read error: Connection reset by peer).
08:30:04 -!- epicmonkey has joined.
08:37:46 -!- hogeyui has joined.
08:57:19 -!- nooga has joined.
09:18:18 -!- jiella has joined.
09:46:23 -!- Jafet has joined.
09:46:33 -!- MoALTz has joined.
09:47:19 -!- Kosnik has joined.
09:47:50 <Kosnik> can anyone solve this riddle
09:52:41 -!- Kosnik has quit (Quit: Leaving).
09:53:14 <fizzie> I don't think anyone can.
09:53:27 <Jafet> A homotopy lattice on elliptic curve residues.
09:55:41 <Jafet> theproofistrivial.com
10:55:21 -!- Nisstyre has quit (Ping timeout: 276 seconds).
11:02:25 -!- ogrom has joined.
11:09:17 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
11:09:36 -!- Nisstyre has joined.
11:28:27 -!- Nisstyre has quit (Read error: Operation timed out).
11:41:42 -!- copumpkin has joined.
11:45:47 -!- Nisstyre has joined.
11:49:12 -!- epicmonkey has quit (Ping timeout: 260 seconds).
11:49:20 -!- boily has joined.
11:54:25 -!- Frooxius has joined.
12:01:14 -!- epicmonkey has joined.
12:04:16 <ion> Some sensor testing. http://heh.fi/tmp/imu-test
12:10:10 -!- ogrom has quit (Ping timeout: 255 seconds).
12:12:03 -!- ogrom has joined.
12:21:55 -!- hijack has joined.
12:22:24 -!- hijack has changed nick to mean.
12:32:13 -!- Arc_Koen has joined.
12:32:49 -!- epicmonkey has quit (Read error: Operation timed out).
12:49:39 -!- epicmonkey has joined.
12:59:05 -!- Jafet has quit (Quit: Leaving.).
13:04:09 -!- Phantom_Hoover has joined.
13:09:34 -!- Jafet has joined.
13:25:53 -!- elliott has joined.
13:28:20 -!- mig22 has quit (Quit: mig22).
13:49:12 -!- ais523 has joined.
13:51:43 -!- ais523 has quit (Read error: Connection reset by peer).
13:51:56 -!- ais523 has joined.
13:54:43 -!- kinoSi has quit (Read error: Connection reset by peer).
13:55:10 -!- kinoSi has joined.
14:00:26 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
14:06:53 <elliott> pikhq: How was it you said how to convert GPT to MBR?
14:07:01 * elliott 's system has been all too stable the past few days.
14:17:23 <elliott> shachaf: Why isn't there a castStableName :: StableName a -> StableName b -> a -> Maybe b?
14:20:04 <elliott> Or I guess castStableName :: StableName a -> StableName b -> p a -> Maybe (p b) is better.
14:20:28 <elliott> (Implementation is Just through unsafeCoerce if (==).)
14:21:38 -!- ogrom has quit (Quit: Left).
14:30:19 -!- Phantom_Hoover has joined.
14:58:56 -!- ogrom has joined.
15:05:36 -!- ais523 has quit (Ping timeout: 256 seconds).
15:06:09 -!- Arc_Koen has quit (Quit: Arc_Koen).
15:18:15 -!- ais523 has joined.
15:33:30 -!- ogrom has quit (Quit: begone).
15:52:21 <shachaf> elliott: To annoy you. :-(
15:53:08 -!- augur has quit (Remote host closed the connection).
15:53:26 <elliott> shachaf: Doesn't it annoy you too?
15:53:47 <shachaf> I've never wanted that function.
15:54:18 -!- ais523 has quit (Read error: Connection reset by peer).
15:54:20 <elliott> It lets you do observable sharing, see?
15:54:26 <elliott> It's useful with existential types and stuff.
15:54:36 -!- ais523 has joined.
15:54:48 <shachaf> StableNames are for people who horse around while they're programming.
15:56:34 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
16:00:50 <elliott> ais523: I think you should kick shachaf for that.
16:19:16 -!- Wntrvnm has quit (Quit: Stopping ZNC Daemon... [DONE] - http://github.com/Wintervenom).
16:20:12 -!- Wntrvnm has joined.
16:24:08 -!- mean has quit.
16:25:26 -!- augur has joined.
16:31:22 <olsner> oh, that pun took a while to spot
16:32:34 -!- Nisstyre has quit (Ping timeout: 240 seconds).
16:34:14 -!- ais523_ has joined.
16:34:33 -!- ais523 has quit (Read error: Connection reset by peer).
16:34:36 -!- ais523_ has changed nick to ais523.
16:47:59 -!- Nisstyre has joined.
17:19:29 -!- epicmonkey has quit (Ping timeout: 272 seconds).
17:22:22 <Sgeo> Ugh, even well-known libraries like Incanter sometimes feel like they were written by Clojure newbies
17:22:56 -!- ais523 has quit.
17:43:57 <shachaf> kmc: How many cores were in that machine you were talking about at ksplice?
17:45:05 <kmc> four sockets, each with one of AMD's "Magny-Cours" processors
17:45:19 <elliott> kmc: More like kscheisse, right?
17:45:37 <elliott> Magny-Cours is French for Many-Cores
17:45:39 <kmc> which are sold as 12-core processors but are actually two six-core processors in a multi-chip module
17:45:53 <kmc> (for example, each socket has 2 NUMA domains and 2 L3 caches)
17:46:15 <shachaf> 2 L3 caches? That's like an L6 cache!
17:46:23 <kmc> i know, right?
17:46:35 <elliott> kmc: I feel like you don't appreciate my jokes.
17:46:44 <kmc> it is elliott
17:46:49 <kmc> that's the joke
17:47:33 <shachaf> What did Ksplice need with 48 cores?
17:48:06 <kmc> shachaf: building kernels
17:48:10 <elliott> kmc??? "No it isn't okay!!!" - mc
17:48:20 <elliott> suddenly I burned you instead..........
17:48:24 <kmc> it's true that this work could be distributed across multiple machines
17:48:37 <kmc> we did the biggest batch builds on EC2 spot instances
17:49:26 <kmc> but in general it's easier to manage one machine, and one build script that runs on one machine
17:52:35 <kmc> so we built the most parallel single machine we could using parts that are still vaguely commodity PC hardware
17:54:46 <kmc> basically we decided the price premium of one integrated super beefy machine versus four reasonably beefy machines was less than the value of engineering effort to make the existing build scripts run in a distributed fashion
17:55:09 <kmc> (or the engineering effort of making a local distributed setup that looks like EC2 enough to reuse the EC2 build scripts, which also had various problems)
17:55:40 <kmc> this being a 12 person company and not someone like Google or Oracle with huge teams devoted to building and managing distributed systems
17:55:45 <shachaf> Making build scripts distributed is more trouble than you might think.
17:55:52 <shachaf> Even if you take Hofstadter's law into account.
17:56:18 <kmc> i was pretty pleased with myself when i added distributed work to the script to re-encode my music library as ogg vorbis
18:09:57 -!- sivoais has quit (Ping timeout: 245 seconds).
18:12:46 <kmc> building a ksplice update involves building the distribution's kernel using exactly their configuration and toolchain, then applying your patch and building it again
18:13:28 <kmc> you do get to use make's incremental build, but it still takes a fair amount of time
18:13:42 <kmc> and you have to do this separately for each version of the base kernel the user booted into
18:13:46 <kmc> nooga: do you know what ksplice is
18:17:11 <nooga> linux kernel extension?
18:17:16 <kmc> not really
18:17:27 <shachaf> It's more of a Windows NT kernel extension.
18:17:37 <kmc> it's a technology for applying linux kernel updates to a running system, without rebooting or disrupting any processes
18:18:12 <kmc> i worked for the company that developed this technology, and sold an updates service based around it
18:18:20 <kmc> until that company was bought by oracle
18:18:30 <kmc> now it is a feature of oracle linux premium support, but i don't work there anymore
18:18:52 <kmc> anyway ksplice works by comparing the compiled object files of the pre- and post-patch kernels
18:19:08 <kmc> which is why you need to compile the kernel exactly as the distribution did
18:19:20 <kmc> you don't need a special kernel to apply ksplice updates
18:19:55 <nooga> then wikipedia is wrong
18:19:56 <kmc> we had customers who had not rebooted their machines since before ksplice was created, and yet they could apply rebootless updates
18:20:17 <kmc> 'Using Ksplice does not require any preparation before the system is originally booted (the running kernel does not need to have been specially compiled, for example)'
18:20:26 <kmc> does wikipedia contradict this somewhere else?
18:20:37 <nooga> "Ksplice is an open source[2] extension of the Linux kernel "
18:20:44 <kmc> it is open source
18:20:47 <kmc> i added that citation
18:20:52 <nooga> but not an extension?
18:21:13 <kmc> each update is a linux kernel module
18:21:23 <kmc> (actually, a few kernel modules)
18:21:32 <kmc> it seems valid to call kernel modules "extensions"
18:21:54 <kmc> also it is possible to build a kernel that has the core ksplice technology built in (or, it was possible at one point, anyway) but we did not expect our customers to have done so
18:22:08 -!- sivoais has joined.
18:22:11 <kmc> we expected our customers to be using standard precompiled kernels from red hat, ubuntu, debian, etc.
18:23:14 <nooga> actually, that's pretty nifty
18:23:32 <kmc> yeah, it is really cool tech :)
18:24:27 <nooga> are you one of the founders?
18:24:37 <kmc> i joined only 8 months before the company was acquired
18:26:10 -!- FreeFull has joined.
18:26:12 <nooga> i'm sure it was a nice job
18:26:22 <nooga> hacking this stuff
18:26:27 -!- epicmonkey has joined.
18:26:32 <kmc> it was really fun
18:26:49 <kmc> i was kinda bummed when we got acquired by compuglobalhypermegacorp
18:27:01 <kmc> but i made a decent amount of money off it
18:27:01 -!- ais523 has joined.
18:28:33 <nooga> that's the best part usually
18:29:15 <nooga> it's nice to have some extra
18:30:21 <kmc> i guess money is overrated
18:30:32 <kmc> but the value of having money is that you can adopt the attitude "money is overrated"
18:30:39 <kmc> if you don't have money then it does not seem overrated
18:30:56 <nooga> tthat i was an uneployed student
18:31:11 <nooga> and couldn't afford bread
18:31:31 <kmc> i do feel like my quality of life does not change much past some fairly low income level, but that level is still very high by global standards
18:31:33 <nooga> nothing too bad - but it was an important experience
18:31:44 <kmc> sometimes students can get free food :)
18:31:45 <shachaf> Money is overrated beyond a certain point, I mean.
18:32:28 <kmc> but money saved is also more time you don't have to work later
18:32:40 <kmc> and longer you can survive without getting a job in the future
18:32:44 <shachaf> Maybe I'm just trying to convince myself.
18:32:48 <kmc> and you can also give it to someone who needs it more
18:33:25 <nooga> i like having some cash buffer
18:34:15 <nooga> not worrying about the small stuff
18:34:43 <nooga> you cannot even focus if you fear that you won't be able to pay rent
18:37:02 <kmc> being poor is expensive
18:37:38 <kmc> if you're poor you can't afford the time or equipment to cook at home, can't buy food or anything else in bulk
18:37:54 <kmc> poor people in rich countries eat lots of terrible cheap fast food
18:38:27 <kmc> if you're poor you probably spend a lot of your time on transit getting from your house in the middle of nowhere to various jobs
18:38:39 <kmc> basically being poor is expensive and exhausting
18:38:46 <nooga> majority of ppl earn from 600 to 1200 bucks
18:38:54 <kmc> are poor people in Poland fat or thin?
18:38:59 <nooga> and gas is like 2 bucks per litre
18:39:02 <kmc> i think poland is rich enough that the poor people should be fat but i'm not sure
18:39:28 <nooga> dinner in a decent restaurant is 20-30 bucks
18:40:03 <nooga> rest ona 55sqm flat is 400-600
18:42:00 <nooga> living here is quire expensive when you look at the earnings
18:42:24 <nooga> i think living in london is cheaper, provided that you work for pounds
18:43:07 <kmc> where in poland are you?
18:44:07 <kmc> i was in poland briefly in august
18:44:11 <kmc> didn't make it that far west though
18:44:28 <nooga> where have you been?
18:44:30 <kmc> it's crazy how much housing prices differ by area
18:44:54 <kmc> my parents have a nice big four bedroom house in suburban iowa and I think their mortgage is about the same per month that I pay to rent one bedroom in cambridge massachusetts
18:45:49 <kmc> i was in kraków and warszawa
18:46:12 <kmc> and surrounding areas
18:46:12 <nooga> kraków is nice and warszawa is awful
18:46:23 <kmc> that's kinda what i thought too
18:46:44 <kmc> i saw the wieliczka salt mine
18:46:46 <kmc> that was really cool
18:47:29 <nooga> yeah, been there too
18:50:12 * nooga has never been to USA
18:50:26 <nooga> but I'm working on fixing that
18:50:34 <kmc> cool, where will you go?
18:50:35 * FreeFull has been to two salt mines. Wieliczka and Bochnia
18:51:34 <shachaf> nooga: That's the place to be!
18:52:07 <nooga> sillicon valley :D
18:52:15 <kmc> san francisco is really nice
18:52:29 <nooga> i'm working on some tech for language pattern recognition and I was invited
18:52:35 <kmc> silicon valley is south of there and I don't think there's much to see if you don't have friends working there
18:52:45 <nooga> our guys have founded a company there
18:52:47 <kmc> there are a few interesting computery museums down that way
18:52:57 <nooga> that's what i'm waiting for :D
18:53:37 -!- itidus21 has joined.
18:53:38 <lambdabot> luite says: I'm really interested in both practice and theory of optics and wave mechanics, so I'll be coming over from Europe for Edward's lecture on lenses and transversals.
18:54:07 <itidus21> hello guys! just taking a break from here.. just joined by muscle memory since i join all rooms manually
18:54:48 <nooga> muscle memory huh? :D
18:55:47 <nooga> btw. I wonder when was the first time I joined this fine channel
18:55:58 <nooga> something around... uh... 2005?
18:58:10 <itidus21> the the most interesting thing i have been trying to do is to take a bitmap which could be viewed as an image in black and white, and compress it into colours
18:58:23 <fizzie> [2004-12-23 10:04:58] -!- VonTroba is now known as nooga
18:59:09 <fizzie> With a join just 17 seconds before.
18:59:29 <itidus21> i'm curious in such things as to whether it's possible for human brain to learn to see simple shapes as colours
19:00:44 <itidus21> one particularly interesting part is that only the edges of things really change colours
19:01:05 <nooga> can you provide an example?
19:01:20 <itidus21> ill show my paint image.. its a bit ridiculous
19:04:43 -!- nys has joined.
19:06:33 <itidus21> it's this http://oi49.tinypic.com/35hlsh0.jpg
19:08:00 <FreeFull> itidus21: Can you do better than 8 pixels per byte raw B&W data?
19:12:07 <itidus21> humm.. my theory is that using 2 or 3 bits per pixel like that that it would be possible to learn to watch objects move by changing colour
19:12:43 <itidus21> beyond that, it was just a weird idea i had to try
19:13:30 <itidus21> i guess even in black and white objects move by changing colour
19:14:30 <itidus21> with 24bits it could represent 16 million patterns per pixel of course
19:20:35 <nooga> definately human brain can comprehend that
19:22:19 <olsner> yeah, the human brain is like smart
19:23:28 <itidus21> i was thinking about the way resolution affects the number of frames in an animation
19:23:35 <itidus21> and then i ended up on that ..
19:25:04 <itidus21> to be honest i think images compressed by colour would be nightmare fuel
19:28:27 <nooga> http://attrition.org/errata/charlatan/hakin9/nmap.html lfmao
19:29:33 <nooga> "Furthermore, we reduced the effective tape drive throughput of our stochastic overlay network. Similarly, we tripled the effective floppy disk space of our Internet-2 overlay network."
19:31:10 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
19:35:52 -!- Wntrvnm has quit (Quit: Stopping ZNC Daemon... [DONE] - http://github.com/Wintervenom).
19:38:51 -!- Wntrvnm has joined.
19:40:38 <nooga> https://docs.google.com/viewer?a=v&q=cache:_j0_-BRo0MAJ:raisama.net/ufpr/tg/paper.pdf+&hl=pl&gl=pl&pid=bl&srcid=ADGEESivOHOM_O0aEfZ-Wn_XOroe2qgQBYM2XLaGHn75VcvILppGL9BrWLyhX124vxLTxQJL3_GNMAAqhrdoUN-Qv_VkT78Utvb8edLqnMQ8EBlOrDS1QlLt6h8HooGIqL9AppSDbZun&sig=AHIEtbRjm2-pxwjJXi3NaH-FXk2vqaZPyQ LULZ
19:45:25 -!- epicmonkey has quit (Ping timeout: 246 seconds).
19:51:22 -!- pikhq has quit (Ping timeout: 246 seconds).
19:56:42 -!- pikhq has joined.
19:58:48 -!- pikhq has quit (Remote host closed the connection).
20:09:26 -!- pikhq has joined.
20:30:55 -!- jiella has quit (Quit: Leaving.).
20:36:35 -!- jiella has joined.
20:41:53 -!- atriq has joined.
21:02:52 -!- boily has quit (Quit: Poulet!).
21:08:10 <atriq> itidus21, I've missed you!
21:08:11 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
21:10:59 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
21:11:10 <atriq> I've replaced the "Hello" with a different hello
21:23:34 <atriq> Is there a term for the restriction of brainfuck where comments and whitespace aren't allowed?
21:30:08 <Gregor> Yes, it's called ++++++++++++++[>+++++++>++++++++>+><<<<-]>.>++.<-.++++++++.+++++.--------.>+++.<---.++++++++.>>----.
21:32:51 -!- augur has quit (Remote host closed the connection).
21:40:07 -!- Phantom_Hoover has joined.
21:45:17 <atriq> Goodnight, everyone
21:45:17 -!- atriq has quit (Quit: Leaving).
22:10:43 -!- augur has joined.
22:31:06 -!- jiella has quit (Quit: Leaving.).
22:31:51 <kmc> branfuck has 800% your daily recommended allowance of dietary fiber
22:32:44 <Gregor> When absorbed via the penis, that's about 80%!
22:32:56 <kmc> no it's over 9000%
22:46:43 -!- Phantom__Hoover has joined.
22:49:01 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
22:51:53 <elliott> kmc: more like dietary fuckber
22:52:23 -!- nooga has quit (Ping timeout: 246 seconds).
22:56:18 <Gregor> #esoteric: From any topic to gay porn in three steps or less.
22:59:46 <pikhq> That seems like an abusable property.
23:00:36 <pikhq> Like, say, next time someone needs to fill a gay porn folder.
23:15:02 <pikhq> But lazy is what I do best
23:42:54 -!- sirdancealot7 has quit (Ping timeout: 240 seconds).
23:46:02 -!- sirdancealot7 has joined.
23:46:34 -!- Jafet has quit (Quit: Leaving.).
23:49:19 -!- ais523 has quit.
23:50:36 -!- sirdancealot7 has quit (Excess Flood).
23:51:39 -!- sirdancealot7 has joined.
23:55:41 -!- copumpkin has joined.
00:00:56 -!- sirdancealot7 has quit (Ping timeout: 260 seconds).
00:01:50 -!- sirdancealot7 has joined.
00:10:19 -!- MoALTz has quit (Ping timeout: 245 seconds).
00:24:40 -!- monqy has joined.
00:29:26 <monqy> i beat you to the punch this time
00:33:47 -!- Frooxius has quit (Ping timeout: 245 seconds).
00:36:36 -!- itidus21 has left ("Leaving").
00:43:39 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
01:01:28 -!- zzo38 has joined.
01:04:33 <zzo38> Does this Haskell type meaningful anything to you (I wrote it while trying to figure out something else): (forall y. forall z r. (x -> Cont r z) -> Cont r ((z -> x') -> y)) -> y)
01:05:44 <Sgeo> Oh hey itidus was here
01:22:36 -!- Wntrvnm has left ("http://wintervenom.github.com - http://wintervenom.us.to").
01:28:14 -!- heroux has quit (Ping timeout: 260 seconds).
01:30:25 <zzo38> The control schemes I like for platform games are using the shift keys to move, space to jump, and any of Z X C V B N M , . / to shoot.
01:30:43 <zzo38> However I know only of a few games implementing this.
01:50:13 -!- Jafet has joined.
02:01:08 <kmc> http://i.imgur.com/bFXM6.jpg
02:04:28 <shachaf> zzo38: That's not good because you might accidentally press both Shift keys at the same time.
02:04:33 <shachaf> Then it'll change your keyboard layout.
02:22:05 <zzo38> shachaf: It was a DOS program so it didn't do that, and anyways it won't change the keyboard layout if you don't have it configured like that
02:25:10 <Sgeo> Am I allowed to slap library writers who don't understand the most advertised feature of the language they're writing a library in?
02:25:19 <Sgeo> Incanter uses STM, but uses it wrongly.
02:25:29 <pikhq> Do tell? And, yes.
02:27:45 <Sgeo> The defop function in incanter.infix alters several refs, but each alteration is in its own dosync block
02:27:56 <Sgeo> https://github.com/liebke/incanter/blob/master/modules/incanter-core/src/incanter/infix.clj#L42
02:28:15 <Sgeo> If there are several ... hold on, I have deja vu
02:28:18 <kmc> and you're sure they intended for it to be atomic?
02:28:33 <Sgeo> I don't know if they intended for it to be anything
02:29:47 <Sgeo> Hmm, when I was reading it before, I thought there could be a negative consequence, but looking at it now, I don't think so
02:30:36 <kmc> it seems like more transactions might have higher overhead and lower uncontended throughput, but fewer big transactions might have more likelihood of livelock
02:30:45 <kmc> that's just a vague guess
02:30:57 <kmc> also it might not be correct for Clojure because their STM implementation is not lockless
02:32:11 <Sgeo> Even if that last dosync runs later, it's still finding the highest value in the precedence table and putting it in highest precedence
02:34:17 -!- Bike has joined.
02:40:56 -!- heroux has joined.
02:53:37 <zzo38> My team has 24 winning streak so far.
02:54:17 <shachaf> My team has 25 winning streak.
02:54:25 <shachaf> I think I win this one, zzo38.
02:55:48 -!- monqy has quit (Quit: hello).
02:56:10 <zzo38> Regardless of winning streak you might win or lose.
02:56:23 <zzo38> I beat someone with more winning streak than I have.
02:58:28 -!- nys has quit (Quit: quit).
03:01:32 <shachaf> zzo38: Did you play Zork Zero?
03:03:27 <shachaf> zzo38: That's a good game.
03:05:35 -!- mig22 has joined.
03:05:43 <quintopia> you should play trial of the clone
03:10:44 <Sgeo> Wait, Chrome just goes ahead and downloads a .exe but warns me that .jars can harm my computer?
03:11:48 <zzo38> Perhaps you did not configure it?
03:12:14 <shachaf> zzo38: Did you play Double Fanucci?
03:12:52 <zzo38> I don't have any cards to play Double Fanucci.
03:12:59 <shachaf> What about in the computer?
03:14:21 <Sgeo> Eww, the Incanter executable ships with Clojure 1.2
03:37:50 <zzo38> This sentence claims to be an Epimenides Paradox, but it is lying.
03:51:00 <kmc> zzo38: I don't believe you
03:52:41 <zzo38> I don't believe me either!
04:12:59 -!- Nisstyre has quit (Ping timeout: 260 seconds).
04:22:48 -!- Nisstyre has joined.
04:25:59 -!- monqy has joined.
04:28:28 -!- FreeFull has quit.
04:32:14 -!- donmarquis has joined.
04:32:34 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
04:32:59 <shachaf> @ask elliott what did the message say
04:43:13 -!- donmarquis has quit (Quit: Leaving).
04:45:11 -!- elliott has quit (Ping timeout: 255 seconds).
04:49:20 <shachaf> http://hackage.haskell.org/packages/archive/Agda/latest/doc/html/src/Agda-Auto-Auto.html#auto
04:50:17 <pikhq> Hmm. National Coming Out Day. *shrug* Guess I'll use the last hour of it to say "I'm bi", though I think I might have said that previously here?
04:50:20 <pikhq> Feh, not that it matters.
04:50:27 <pikhq> No real IRC sexytimes here.
04:50:34 <pikhq> Maybe some rape of the brain.
04:50:46 <shachaf> pikhq: I didn't know you were a functor.
04:50:53 <pikhq> shachaf: Smartass.
04:52:50 <zzo38> My Dungeons&Dragons player has played Double Fanucci, though, but lost five perica (a form of currency in the Japanese manga "Kaiji", used by underground slave colony, worth one tenth of one yen) at it.
04:54:15 <zzo38> shachaf: Did you know if you were a functor?
04:54:27 <zzo38> Is it a endofunctor?
04:55:10 <pikhq> Glad to see everyone here has appropriate levels of apathy about sexuality.
04:59:35 <Sgeo> Agda.Utils.Impossible
05:01:09 <kmc> hey all our brainfucking is strictly consensual
05:01:16 <kmc> brainfucking and brickbraining too
05:01:53 <pikhq> Malbolge touched me in naughty places
05:02:01 <kmc> malbolge is kinky
05:02:23 -!- monqy has left.
05:04:07 <zzo38> Astronomical twilight is of importance in this Dungeons&Dragons game now.
05:08:36 <zzo38> To win this game, we have to take advantage of everything, including the phase of the moon.
05:14:51 <Sgeo> http://www.reddit.com/r/politics/comments/11cmsi/paul_ryan_admits_romney_win_would_lead_to_world/ if I ever needed any proof that Democrats can sensationalize things too
05:15:47 <pikhq> But everyone knows $other is evil, and $us is good!
05:16:07 <pikhq> And that's why I should be supreme overlord of everything.
05:16:16 <pikhq> I am your overlord!
05:20:47 <zzo38> I think there should be no supreme overlord of everything. But maybe some thing, OK
05:21:42 <pikhq> "There is no life, truth, intelligence, nor substance in matter. All is infinite Mind and its infinite manifestation, for God is All-in-all. Spirit is immortal Truth; matter is mortal error. Spirit is the real and eternal; matter is the unreal and temporal. Spirit is God, and man is His image and likeness. Therefore man is not material; he is spiritual."
05:21:52 <pikhq> Christian Science is weirder than I thought.
05:22:22 <zzo38> How is that Christian or science?
05:22:44 <pikhq> Beats me, but that's Christian Science for you.
05:24:04 <pikhq> Bike: Given that it suggests that *matter* is not *real*? Yeah, that's weird.
05:24:33 <Bike> it's just platonism.
05:25:35 <pikhq> Most religious folk go for dualism. Y'know, where minds are magic.
05:26:16 <Bike> or "spirits", here.
05:29:56 <pikhq> Point is, it's gibberish that's either false or devoid of meaning, and I find it deserving of mockery.
05:30:21 * Sgeo finds anything that tells people to reject modern medicine as deserving of utmost hatred.
05:30:45 <Bike> oh, go for it. I just meant that it's old and venerable
05:31:04 <pikhq> That Plato came up with it first doesn't mean shit. :)
05:31:22 <pikhq> Only silly people think Plato was actually right about everything.
05:31:50 <pikhq> He just managed to think about things before a lot of other people is all, really.
05:35:03 <zzo38> Some people are monism other are dualism, but my opinion is I think monism and dualism are both wrong.
05:35:56 <pikhq> What do you think is right?
05:38:06 <zzo38> I think the mind, matter, are one with the universe, so really everything is one with the universe, however, the universe itself is just mathematics, which includes things other than those which might be physical. All is mathematics. However, even the universe may be exist just because people observe, and yet the people exist because is part of universe, it is something like a causality loop.
05:39:19 <zzo38> Of course this is just philosophy, including of metaphysics and stuff like that, not reality. However, it is my opinion based on what I know about physics.
05:40:08 <oklofok> i think there's a bit turtle whose poop is planets
05:42:33 <zzo38> Because if nothing exists, then something might exist there is nothing to make nothing to exist! As someone has said, they couldn't decide whether nothing or something to exist, so they decided to toss a coin. But to toss a coin, it has to exist, so the choice is already made for them. Something exists because something is a cheater. Of course this is all metaphorical, but the point stands.
05:44:02 <zzo38> This recording of the Dungeons&Dragons game (I have typed out the Oct.9 session today) contains footnotes such as "Why does Kjugobe's note have a reference to a footnote in this book?"
05:44:17 <pikhq> zzo38: That sounds essentially like philosophical materialism, combined with the idea that the universe is a lawful place, combined with the idea that the simulation hypothesis is valid, and the idea that that simulation doesn't really need to be *run* for the universe to exist in some sense.
05:44:29 <pikhq> ... Bit of a conjugation of ideas there, but eh
05:45:44 <zzo38> I think it is not a simulation, but mathematics. Some mathematics may be uncomputable. In addition, some equations may have multiple solutions or no solution. And then, there are even more complexities than this. It doesn't necessarily all correspond to physical objects, even though all is the same mathematics.
05:45:59 <zzo38> So they are the same as the ones that do.
05:46:28 <pikhq> So, let's sum that up a bit more cleanly.
05:46:49 <pikhq> "The universe can be expressed mathematically."
05:47:11 <pikhq> That's... Basically materialism, isn't it/
05:48:00 <zzo38> I think it is like materialism but my ideas have some differences and more things too. But I don't know "materialism" exactly.
05:48:52 <pikhq> "Materialism" in the modern sense is more-or-less "All that is, is physics."
05:49:19 <pikhq> (there's technically other sorts, but that's the sort most people really care about)
05:49:49 <pikhq> s/most people/most people who discuss ontology/ :P
05:55:41 -!- kinoSi has quit (Read error: Connection reset by peer).
05:56:08 -!- kinoSi has joined.
06:54:13 -!- epicmonkey has joined.
06:57:07 -!- nooga has joined.
06:59:15 -!- Bike has quit (Quit: (dyn)).
07:04:06 -!- mig22 has quit (Quit: mig22).
07:20:08 -!- epicmonkey has quit (Ping timeout: 245 seconds).
07:44:30 -!- mig22 has joined.
07:55:15 -!- KingOfKarlsruhe has joined.
08:01:18 -!- monqy has joined.
08:13:27 -!- zzo38 has quit (Remote host closed the connection).
08:18:18 -!- KingOfKarlsruhe has quit (Read error: Connection reset by peer).
08:22:42 -!- monqy has quit (Quit: hello).
08:42:18 -!- Phantom_Hoover has joined.
08:48:08 -!- epicmonkey has joined.
09:12:27 -!- ais523 has joined.
09:22:51 -!- ais523 has quit (Read error: Connection reset by peer).
09:23:04 -!- ais523 has joined.
09:23:49 <ais523> so, randomly-walking brainfuck
09:24:03 <ais523> I think that it's TC given arbitrary control flow (conditional goto is enough)
09:24:13 <ais523> but it seems very difficult to convert that to [] loops
09:43:47 -!- ais523_ has joined.
09:43:48 -!- ais523 has quit (Read error: Connection reset by peer).
09:50:01 -!- Jafet has quit (Quit: Leaving.).
09:55:43 -!- kinoSi has quit (Read error: Connection reset by peer).
09:56:10 -!- kinoSi has joined.
10:06:13 -!- ais523_ has quit (Read error: Connection reset by peer).
10:06:19 -!- ais523_ has joined.
10:11:06 -!- Jafet has joined.
10:43:29 -!- ais523_ has quit (*.net *.split).
10:43:42 -!- kmc has quit (*.net *.split).
10:43:42 -!- Slereah_ has quit (*.net *.split).
10:44:31 -!- nortti has quit (*.net *.split).
10:44:31 -!- EgoBot has quit (*.net *.split).
10:44:31 -!- mroman has quit (*.net *.split).
10:44:31 -!- augur has quit (*.net *.split).
10:44:31 -!- oklofok has quit (*.net *.split).
10:44:31 -!- glogbackup has quit (*.net *.split).
10:44:31 -!- nooga has quit (*.net *.split).
10:44:31 -!- myndzi has quit (*.net *.split).
10:44:31 -!- atehwa has quit (*.net *.split).
10:44:31 -!- Gregor has quit (*.net *.split).
10:44:31 -!- Nisstyre has quit (*.net *.split).
10:44:31 -!- copumpkin has quit (*.net *.split).
10:44:31 -!- tswett has quit (*.net *.split).
10:44:31 -!- kallisti has quit (*.net *.split).
10:44:36 -!- lambdabot has quit (*.net *.split).
10:44:40 -!- pikhq has quit (*.net *.split).
10:44:46 -!- Jafet has quit (*.net *.split).
10:44:48 -!- yiyus has quit (*.net *.split).
10:44:52 -!- ion has quit (*.net *.split).
10:44:54 -!- Cryovat has quit (*.net *.split).
10:46:09 -!- heroux has quit (*.net *.split).
10:46:09 -!- sirdancealot7 has quit (*.net *.split).
10:46:09 -!- Deewiant has quit (*.net *.split).
10:46:09 -!- fizzie has quit (*.net *.split).
10:46:09 -!- TeruFSX_ has quit (*.net *.split).
10:46:09 -!- constant has quit (*.net *.split).
10:46:09 -!- epicmonkey has quit (*.net *.split).
10:46:09 -!- Sanky has quit (*.net *.split).
10:46:09 -!- jix has quit (*.net *.split).
10:46:09 -!- quintopia has quit (*.net *.split).
10:46:09 -!- FireFly has quit (*.net *.split).
10:46:09 -!- TodPunk has quit (*.net *.split).
10:46:09 -!- chickenzilla has quit (*.net *.split).
10:46:28 -!- kinoSi0 has joined.
10:47:11 -!- ais523_ has joined.
10:47:11 -!- glogbackup has joined.
10:47:11 -!- Arc_Koen has joined.
10:47:11 -!- Jafet has joined.
10:47:11 -!- ais523 has joined.
10:47:11 -!- epicmonkey has joined.
10:47:11 -!- nooga has joined.
10:47:11 -!- Nisstyre has joined.
10:47:11 -!- heroux has joined.
10:47:11 -!- sirdancealot7 has joined.
10:47:11 -!- copumpkin has joined.
10:47:11 -!- augur has joined.
10:47:11 -!- pikhq has joined.
10:47:11 -!- TeruFSX_ has joined.
10:47:11 -!- yiyus has joined.
10:47:11 -!- tswett has joined.
10:47:11 -!- kmc has joined.
10:47:11 -!- Slereah_ has joined.
10:47:11 -!- Sanky has joined.
10:47:11 -!- jix has joined.
10:47:11 -!- myndzi has joined.
10:47:11 -!- constant has joined.
10:47:11 -!- FireFly has joined.
10:47:11 -!- oklofok has joined.
10:47:11 -!- nortti has joined.
10:47:11 -!- atehwa has joined.
10:47:11 -!- Deewiant has joined.
10:47:11 -!- mroman has joined.
10:47:11 -!- EgoBot has joined.
10:47:11 -!- TodPunk has joined.
10:47:11 -!- ion has joined.
10:47:11 -!- quintopia has joined.
10:47:11 -!- lambdabot has joined.
10:47:11 -!- kallisti has joined.
10:47:11 -!- fizzie has joined.
10:47:11 -!- Gregor has joined.
10:47:11 -!- Cryovat has joined.
10:47:11 -!- chickenzilla has joined.
10:47:23 -!- ais523 has quit (Ping timeout: 272 seconds).
10:47:23 -!- ais523_ has changed nick to ais523.
10:47:32 -!- glogbackup has left.
10:47:32 <ais523> fizzie: through a NAT and the University's firewall?
10:47:32 <fizzie> ais523: It's what all the popups say.
10:47:32 -!- kinoSi has quit (Ping timeout: 240 seconds).
10:47:32 <ais523> computers always send their IP whenever they contact anything, unless you spoof it (in which case you don't get a reply)
10:47:32 <ais523> although "broadcast" is a little different
10:47:32 <fizzie> BROADCASTING an IP ADDRESS and HACKING, I tell you.
10:47:32 -!- ais523 has quit (Changing host).
10:47:32 -!- ais523 has joined.
10:47:32 <ais523> btw, both freenode and synirc were netsplitted at the same time
10:47:32 <ais523> I wonder if it was for the same reason?
10:48:37 <fizzie> That's funny, IRCnet was slightly, too.
10:49:12 <fizzie> At least approximately at the same time; maybe it was slightly earlier.
10:49:14 <fizzie> 13:38 -!- Netsplit *.pl <-> ircnet.eversible.com
10:49:33 <fizzie> Eversible is somewhere in the states (united), I believe.
10:50:01 <fizzie> fungot: You awake? I think you're connected to some us server too, right?
10:50:02 <fungot> fizzie: i think she turned around but why? can i spend my time solving different kinds of numbers. i do. see: fnord/ fnord
10:50:30 <fizzie> Solving different kinds of numbers sounds like a reasonable hobby for a computer program.
10:59:39 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
11:01:17 -!- ais523 has quit (Ping timeout: 256 seconds).
11:12:38 <fizzie> Ah ha, more splittery on the IRCnet side.
11:12:46 <fizzie> Someone must have it against IRC networks today.
11:19:53 -!- augur has quit (Remote host closed the connection).
11:27:07 -!- nooga has quit (Ping timeout: 245 seconds).
11:27:30 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
11:56:47 -!- augur has joined.
12:07:05 -!- boily has joined.
12:39:50 -!- Jafet has quit (Quit: Leaving.).
12:48:45 -!- nooga has joined.
13:21:57 -!- elliott has joined.
13:51:19 <ion> http://austriantimes.at/news/Around_the_World/2012-10-10/44722/Holy_Shit
15:06:52 <kmc> always amusing when a food is labeled "96% fat free"
15:06:58 <kmc> sounds better than "4% fat"
15:08:34 <shachaf> It means you're only paying for 4% of the fat.
15:08:40 <shachaf> The rest is subsidized by the non-fat.
15:08:43 <kmc> what a deal
15:10:04 <shachaf> elliott: @shachaf, I assume that you were referring to my answer (correct me if I am wrong). Yes it does copy the array first and then does the in-place shuffle, however, fixing this is simply exchanging thaw with unsafethaw
15:12:55 <elliott> shachaf: If the implicit question is whether HaskellElephant ever says anything that makes sense, the answer is no.
15:14:25 <elliott> Come on, you literally just quoted them.
15:14:43 <shachaf> Yes, but in the grander scheme.
15:18:02 -!- Phantom_Hoover has joined.
15:19:10 <elliott> Some person who posts bad Haskell questions on SO.
15:19:12 <elliott> shachaf: I like ilango's answer.
15:19:19 <elliott> I like it so much I'm going to click the "delete" button on it.
15:19:45 <shachaf> You have magical delete powers?
15:21:01 <elliott> Needs two more votes to make it happen though.
15:21:38 <shachaf> elliott: Memorized any good codepoints lately?
15:23:06 <shachaf> I woke up before 08:00 today.
15:34:05 -!- zzo38 has joined.
15:35:27 -!- atriq has joined.
15:35:28 -!- AnotherTest has joined.
15:35:43 <atriq> I also just got here
16:20:16 <Sgeo> Is the HHGG TV series better than the movie?
16:21:46 <olsner> is there a new tv series to go with the recent(ish?) movie, an old movie to go with the old tv series, or neither?
16:22:47 <olsner> ok, then I don't know because I haven't seen the tv series
16:23:05 <olsner> but I think the movie can be watched in HD, so it must be better
16:27:47 <Sgeo> The acting's a bit iffy
16:27:52 <Sgeo> http://www.youtube.com/watch?v=ZMoi-nDd6cQ
16:28:52 <elliott> the bbc h2g2 series is good
16:29:43 <Sgeo> That's what I linked I think?
16:32:10 <Sgeo> I still think the acting's iffy
16:33:49 <elliott> i don't remember anything about it, only that it was good
16:34:09 <olsner> I think I like the book the best
16:40:20 <Sgeo> I should probably buy And Another Thing at some point
16:41:40 -!- atriq has quit (Quit: Leaving).
16:48:28 -!- FreeFull has joined.
16:49:07 -!- augur has quit (Remote host closed the connection).
16:50:39 -!- mig22 has quit (Quit: mig22).
16:52:37 -!- augur has joined.
16:56:50 <Sgeo> I think the reason I'm not laughing that much is because I pretty much know all the jokes
16:57:17 <FreeFull> I bet there are plenty of new kinds of joke that would make you laugh
17:09:25 <Arc_Koen> do you know that joke about the people who knew all the jokes?
17:10:12 <Arc_Koen> there's a village somewhere where everyone knows all the jokes
17:10:42 <Arc_Koen> in the local pub, occasionally someone exlaims "joke #46!"
17:10:55 <Arc_Koen> and everyone would burst out laughing
17:11:19 <Arc_Koen> but one day, a guy exclaims "joke #32!"
17:11:41 <Arc_Koen> so that guy says "yeah, I've never known how to tell that joke."
17:17:35 -!- ssue has quit (Remote host closed the connection).
17:22:12 <zzo38> Try a number that is not in range
17:25:14 <Gregor> And the fact that there were only 52 jokes when they declared that one #67 is, itself, #53.
17:36:24 -!- ogrom has joined.
17:37:33 -!- atriq has joined.
17:38:48 <zzo38> I mean something other than a positive integer.
17:39:11 <atriq> I wonder if Bill Bryson reads Homestuck
17:39:24 <shachaf> zzo38: What if you try an unnameable real number?
17:40:32 <atriq> zzo38, if they tried a number that is not a natural number, they'd get confused by your surrealist humour
17:40:44 <atriq> 2+7i is a very complex joke
17:40:59 <atriq> -4 is a bit negative
17:44:16 <Gregor> (lim(x->infinity) 1/x) isn't very funny.
17:44:45 <Sgeo> fwiw, my original statement was in the context of knowing the jokes used in HHGG
17:45:20 <olsner> no-one respects context in here
17:46:20 <Sgeo> No wonder Smalltalk isn't very well used in here; everyone disrespects thisContext.
17:47:17 <elliott> Sgeo: ps what. who is bill bryson even.
17:47:31 <atriq> elliott, non fiction author who is currently in hexham
17:47:44 <kmc> why is bill bryson in hexham
17:47:51 <Sgeo> elliott, why are you asking me who Bill Bryson is?
17:47:59 <olsner> non-(fiction author who is currently in hexham)
17:48:07 <atriq> He is in Hexham for the single purpose of beating me
17:48:14 <elliott> can you guys stop having nicks of the same length
17:48:21 <elliott> ok the same length give or take one
17:48:36 -!- atriq has changed nick to atriqWhoIsTanebA.
17:48:42 <elliott> atriqWhoIsTanebA: beating you at what
17:48:44 <olsner> hey, none of us has the same nick length as any other participant
17:48:55 -!- atriqWhoIsTanebA has changed nick to atriq.
17:49:09 <atriq> elliott, other definition of "beating"
17:49:13 <Sgeo> If by participant you mean chatting person
17:49:23 <Sgeo> Because boily and augur have nicks length 5
17:49:34 <atriq> http://www.hexhamcourant.co.uk/news/man-killed-by-falling-tree-1.1004001?referrerPath=news
17:49:35 <olsner> I was only counting everyone after the "who is bill bryson even" line
17:49:48 <shachaf> Wait, Hexham actually exists?
17:49:59 <olsner> shachaf: no it doesn't
17:50:09 <olsner> even imaginary places have newspapers duh
17:50:16 <HackEgo> Hexham is a European town. There are nine people in Hexham, and at least two of them are in this channel. Taneb looks after the ham.
17:50:31 -!- boily has changed nick to not5nick.
17:50:50 <atriq> A Taneb is kinda like an atriq, but younger
17:50:56 <HackEgo> boily may be French or something. We are not sure about the rest.
17:51:09 <not5nick> I'm not boily, because I don't have a 5-length nick :p
17:51:23 <elliott> does everyone in the channel have a different nick length now
17:51:27 * not5nick is not sure about the effectiveness of his subtle camouflage
17:51:39 <olsner> elliott: yes, everyone
17:51:53 <Sgeo> I can only assume that log is not an everyone.
17:51:56 <lambdabot> JohnyBoy says: so have a nice goodspeed
17:51:59 <zzo38> But your username is given as "~boily" and I can see your NICK command above too
17:52:18 <atriq> elliott and shachaf are the same length
17:52:31 <olsner> it's not completely obvious since the displayed nick lengths are rounded to the closest integer
17:52:33 <atriq> This clearly means they are one and the same!
17:52:50 <Sgeo> (swap! olsner inc)
17:53:03 <elliott> `addquote <olsner> it's not completely obvious since the displayed nick lengths are rounded to the closest integer
17:53:04 <lambdabot> butt2 says: "I'd butt linux on the butt, I'd like to give buttad a try"
17:53:06 <HackEgo> 871) <olsner> it's not completely obvious since the displayed nick lengths are rounded to the closest integer
17:53:09 <zzo38> atriq: Not only are "elliott" and "shachaf" the same length, but so are the usernames and cloaks
17:53:18 <atriq> Hence Hexham is in Finland, hence I'm in Finland!
17:53:45 <zzo38> I released version 5 of FurryScript with a few bugfixes, and added documentation for some commands: RSC ALL GEN ARG TR TR- TRB TRB- REX REX- REX+ RNG LAH
17:53:55 <shachaf> elliott: no im shachaf!!!!!!
17:54:21 <Sgeo> olsner, Clojure. If olsner is an atom, it atomically changes what the atom contains to (inc @olsner)
17:54:45 <kmc> http://docs.python.org/library/doctest.html is cute
17:54:47 <shachaf> elliott: You turn into shachaf at the full moon?
17:54:58 <olsner> atomically changing an atom, that sounds good
17:55:00 * Sgeo was going to say that but in a worse way
17:55:05 <shachaf> 10:55 <Rodney> The Moon is Waning Crescent (10% of Full). New moon in NetHack in 2 days.
17:55:26 <olsner> but what's (inc @olsner)?
17:55:39 <zzo38> Good things then, I have the phase of moon and all ephemeris of all planets in my computer.
17:55:53 <Sgeo> @ is a bit of reader syntax that will expand to (deref olsner)
17:55:58 <atriq> Which are the phases of the moon that are viewable mid-afternoon
17:56:04 <atriq> I'm overthinking a song I heard once
17:56:16 <olsner> why do I need to be dereffed before incorporation?
17:56:22 -!- variable has joined.
17:56:39 <Sgeo> (deref (atom 10)) ; 10
17:56:59 <zzo38> atriq: I don't know, maybe half moon?
17:57:19 <shachaf> zzo38: Maybe a Zork Zero Moon.
17:57:34 -!- epicmonkey has quit (Ping timeout: 240 seconds).
17:58:30 <zzo38> I have seen the Zork calendar, with various strange phase of moon
17:58:46 <shachaf> Dimwit's Birthday Observed.
17:59:13 <zzo38> Every Thursday, yes... But it is Friday today.
17:59:25 <atriq> Aaah, a waxing moon
18:00:11 <olsner> iirc, I was last setting up some boring stuff that'd allow running specific test-case programs on a fresh-booted kernel with qemu
18:00:21 <shachaf> zzo38: No, Zork Zero is shifted by one day.
18:00:46 <olsner> oh, and that either requires qemu built from git because some stuff is broken, or a bunch of boring workarounds in my code
18:00:54 <zzo38> shachaf: O, is that because of the different leap years?
18:01:23 <shachaf> I was just making things up.
18:01:26 <zzo38> In the mid-afternoon perhaps the sun is in the 8th house, so perhaps the moon would be in the 11th house then, so it would be waxing half moon, if visible in the mid afternoon.
18:02:02 <zzo38> (Since they move counterclockwise around the zodiac)
18:02:20 <zzo38> (that is, forward.)
18:04:07 <shachaf> I think clockwise is forward, zzo38.
18:04:13 <shachaf> Have you ever looked at a clock?
18:04:46 <zzo38> On a clock, yes, clockwise is forward. However, on a horoscope, the angle increases counterclockwise.
18:04:57 -!- Gregor has set topic: BEWARE THE Ø̈RJANIST MØ̈Ø̈SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://esolangs.org/wiki.
18:05:07 <zzo38> (that is, ecliptic longitude)
18:05:36 -!- zzo38 has set topic: BEWARE THE RJANIST MSE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:05:59 <zzo38> Oops I forgot one letter
18:06:13 -!- zzo38 has set topic: BEWARE THE ORJANIST MOOSE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:06:24 <zzo38> Oops I forgot the slash
18:07:00 <olsner> organist moose, now that's a sight
18:07:20 -!- Gregor has set topic: I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:07:23 <kmc> beware the onanist moose
18:07:40 <kmc> why are the channel logs now naked grandmas?
18:07:52 -!- zzo38 has set topic: BEWARE THE O/RJANIST MO/O/SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:08:02 <Gregor> kmc: shadyurl.com = best URL shortener
18:08:14 <elliott> zzo38: Why did you duplicate the log link in the topic?
18:08:28 <olsner> oh, and someone should make a new zardoz joke
18:08:29 <Sgeo> Why does MyWOT dislike 5z8.info
18:08:37 <zzo38> elliott: I did not duplicate it. Now you have both the picture and text logs.
18:08:56 <elliott> you're too biased to windows-centric file extensions, zzo38!!
18:09:00 <shachaf> It's a Clojure thing, isn't it?
18:09:11 <zzo38> Well, I didn't look so I don't know, I just know that .jpg is usually a picture (regardless of operating system).
18:09:41 -!- Gregor has set topic: BEWARE THE O/RJANIST MO/O/SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | ZARDOZ created ZARDOZ; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://esolangs.org/wiki.
18:09:42 <shachaf> zzo38: @ uses .jpg to hold filesystem metadata.
18:09:53 <olsner> someone should've made that link point to naked grandmas after people had been taught it was just a link to the logs
18:10:41 <Sgeo> Bluh, shadyurl doesn't like data URLs
18:10:53 <atriq> I'm analysing a song from a children's TV show completely out of context
18:11:19 <zzo38> Sgeo: Then don't use shadyurl, if it doesn't like data URLs.
18:12:09 -!- zzo38 has set topic: BEWARE THE O/RJANIST MO/O/SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | God made the natural numbers; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:12:19 <zzo38> Hay why did you remove the log
18:12:43 -!- zzo38 has set topic: BEWARE THE O/RJANIST MO/O/SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | ZARDOZ created ZARDOZ; all else is the work of ZARDOZ | Channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | http://codu.org/logs/_esoteric/.
18:12:53 <Gregor> zzo38 has a serious case of Not Getting the Joke, even though the joke was inspired by him.
18:13:01 <Sgeo> zzo38, because it was there, but just looked different
18:13:42 <Sgeo> shachaf, Web of Trust thingy, people vote on whether domains are suspicious or not
18:13:54 <Sgeo> Sometimes people suck, but I do tend to rely on it
18:14:05 <shachaf> 5z8.info is very suspicious.
18:14:11 <shachaf> That's not even a valid z-encoding!
18:14:23 <kmc> xn--5z8.info
18:14:43 <Sgeo> http://www.mywot.com/en/scorecard/geocities.com
18:15:06 <Sgeo> Just ... read the comments
18:15:10 <zzo38> Well, it is a redirect but not a very good one, it says "expected /hookers_j0l4yf_nakedgrandmas.jpgsplit Arrayshort hookers_j0l4yf_nakedgrandmas.jpgQUERYhookers_j0l4yf_nakedgrandmas.jpg" on it!
18:15:30 -!- augur has quit (Read error: Connection reset by peer).
18:15:43 <olsner> searching for z-encoding gave me "Zen Coding is a set of plug-ins for text editors that allow for high-speed coding and editing in HTML, XML, XSL, [...]"
18:15:52 -!- augur has joined.
18:16:01 <olsner> but to be fair, the second hit was the ghc commentary
18:16:29 <Gregor> “Zen” and “XML” should not be allowed in the same sentence.
18:16:40 <zzo38> Then fix it to use xn--5z8.info if you think 5z8.info is no good
18:16:50 <Gregor> Except to say “those who have written XML can never achieve Zen.”
18:17:00 <zzo38> Gregor: Are you sure?
18:17:19 <Deewiant> https://www.mywot.com/en/scorecard/www.quote-egnufeb-quote-greaterthan-colon-hash-comma-underscore-at.info
18:17:23 <atriq> I thought the path to Zen was avoiding Zen
18:17:36 <Deewiant> Where does it get the value from? I doubt someone's actually voted for that
18:18:23 <elliott> it's almost as if you can't trust web of trust
18:19:14 <atriq> ...I'm analysing a Eurobeat fansong of a children's TV show
18:19:16 <Deewiant> It's also got a higher score than the more normal domain name https://www.mywot.com/en/scorecard/www.phlamethrower.co.uk
18:19:17 -!- Phantom__Hoover has joined.
18:19:38 <atriq> NOW I MUST LEAVE FOREVER OR AT LEAST UNTIL PROBABLY TOMORROW EVENING
18:19:39 -!- atriq has quit (Quit: Leaving).
18:19:50 <Deewiant> Even though in the latter case it claims to know where the server is, unlike the former
18:22:46 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
18:28:57 -!- Phantom__Hoover has quit (Ping timeout: 256 seconds).
18:35:39 <Sgeo> Maybe someone did vote for it
18:36:17 <Sgeo> The plugin doesn't really do exact numbers
18:36:26 <elliott> yeah all those befunge haters on the internet
18:37:01 -!- zzo38 has set topic: BEWARE THE O/RJANIST MO/O/SE | I, for one, welcome our new hash function overlords | E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E1565E03EBF2 | ZARDOZ created ZARDOZ; all else is the work of ZARDOZ | New channel logs: http://5z8.info/hookers_j0l4yf_nakedgrandmas.jpg | Old-style channel logs: http://codu.org/logs/_esoteric/.
18:37:16 <kmc> i am arthur frayne, and i am zardoz
18:38:03 -!- augur has quit (Remote host closed the connection).
18:38:22 <kmc> i see "MOH/OH/SE" where the H's are reverse video which I guess means they are ^H?
18:38:47 <kmc> oh i get it
18:39:09 <zzo38> kmc: They are supposed to be backspace
18:39:12 <olsner> ah, that thing where you use backspace to put characters on top of each other?
18:39:49 <zzo38> My computer shows them black-on-purple on the screen, but displays the slashed O properly on the printout.
18:40:01 <Sgeo> For me it just says MO/O/SE
18:40:01 <kmc> do you print out hardcopy logs of IRC?
18:40:09 <zzo38> (I mean the "H" with black on purple; the rest of the text in blue)
18:40:23 <Sgeo> kmc, you don't?
18:40:24 <olsner> kmc: yes, and then he OCRs them and puts them on gopher
18:40:40 <kmc> at one point i had a dot matrix printer as my linux system console
18:40:56 <kmc> to diagnose a bug which crashed the graphics card
18:41:05 <kmc> it slowed down the boot process quite a bit
18:41:57 <kmc> not on the printer
18:43:47 <olsner> but why would you use an actual printer instead of e.g. connecting a null modem cable to another computer?
18:44:44 <shachaf> Reaching the billionth decimal digit of pi could help technologists and mathematicians because they can use the equation to create random number sequences. Random numbers are a driving force behind computer security, including everyday consumer-level protections, like in electronic banking.
18:45:00 <kmc> because i didn't have another computer
18:45:25 <kmc> or didn't have a null modem cable, or something
18:45:28 <kmc> i don't remember exactly
18:45:54 <kmc> more recently i have used netconsole for this
18:46:10 <zzo38> Can ARCFOUR be used for random number generator, though?
18:46:30 <olsner> kmc: but you did have a dot matrix printer?
18:46:30 <zzo38> I don't think pi is best for random number since pi is always the same for everyone.
18:46:51 <shachaf> zzo38: The question is whether your computer is fast enough to compute it farther than anyone else.
18:46:56 <kmc> olsner: yes
18:47:07 <shachaf> That's why we build supercomputers.
18:47:32 <Deewiant> RC4 has been used in some BSDs as (part of) a random number generator, IIRC.
18:47:40 <zzo38> shachaf: What you have to do is to make the computer reprogram its own hardware to calculate billion digits of pi
18:48:38 * shachaf likes the idea of a world where randomness is a scarce resource that has to be mined and such.
18:49:20 <zzo38> Deewiant: As part of? What other part did they use, then?
18:49:25 <shachaf> I guess the idea of people who carry one-time pad data is related.
18:50:15 <Arc_Koen> http://samuelhughes.com/boof/ has "If the end-of-file character has been input, outputs a zero to the bit under the pointer." as part of the description of the ; (output) instruction
18:50:19 <Deewiant> zzo38: I don't know, that's why it was in brackets. Perhaps it was the whole thing and there were no other parts.
18:50:43 <Arc_Koen> do you think it's just a mistake and should be part of , (input) or is it some special feature?
18:51:20 <olsner> shachaf: hmm... but the tricky part about one-time pad data is that you need the same randomness in two places, not that you need to collect a bunch of random?
18:52:41 <shachaf> olsner: Right, it's not the same thing.
18:53:36 <olsner> in this randomscarce world of yours, would one random bit be a reasonable christmas present?
18:53:54 <zzo38> Deewiant: As it turns out, Famicom Hangman uses not only RC4 but also fails to initialize i and j (so it uses whatever happens to be in RAM at power on) and uses the microphone, and it runs several times per frame until the space-bar is pushed.
18:54:08 <fizzie> A friend and I once collected a CD's worth of random, to be used as a one-time pad in conjunction with an irssi script.
18:54:15 <shachaf> olsner: Only if kept it wrapped.
18:54:19 <fizzie> Sadly, it never really got used.
18:54:55 <olsner> shachaf: no, you unwrap it to see that it's a random bit box, then you need to open that box to use the random bit
18:55:04 <zzo38> (It still appears to work fine even without a microphone; but it uses the microphone if it is available.)
18:55:05 <olsner> it could be some kind of single-use electronic device too
18:58:07 <zzo38> Deewiant: Are you sure they wouldn't add microphone and that stuff to the random numbers too, if such things would be available?
18:58:11 <olsner> if you don't disclose whether it's previously used or not, does that give you another bit of random?
18:59:48 -!- augur has joined.
19:01:15 <olsner> shachaf: also, what happens if you roll a dice too often in this world of yours?
19:01:39 <olsner> A is an integer number of dice
19:02:15 <zzo38> If you need to use a dice for encryption, maybe you should use a casino dice and make sure to rull against the wall
19:02:28 <olsner> dice: the gift that keeps on giving random numbers
19:03:23 <kmc> maybe in shachaf's world the physics of dice rolling is just very easily predictable
19:03:50 <kmc> even in our world you can learn to throw a die to a particular side
19:03:58 <olsner> yeah, or maybe dice roll slower and slower as their random supply runs out
19:04:15 <zzo38> I read about a "quantum dice" which always rolls doubles when rolled together, but act like regular dice when thrown individually. It probably doesn't exist; they just wanted to describe it.
19:04:36 <shachaf> Maybe everyone knows the entire state of the world at any point.
19:04:54 <shachaf> Except for the inside of their brain, which starts out deterministic but gets seeded with random data.
19:05:33 <olsner> brains are the only sources of random data?
19:05:59 <Arc_Koen> wouuuw I wrote exactly one fourth of the truth-machine implementations on the truth-machine page
19:06:15 <olsner> (this is a placeholder for some kind of pun about zombies)
19:09:11 <fizzie> Remeber to go back and replace it with the actual pun some day.
19:09:12 <zzo38> How can brains be the only sources of random data, it is like physical like anything else? It must follow the same laws, although there is possibliity to cause different results just as mathematical functions can give different outputs by the different inputs.
19:09:15 -!- epicmonkey has joined.
19:09:37 -!- ogrom has quit (Quit: Left).
19:09:58 <olsner> fizzie: feel free to remind me, but I'm good at neither puns nor zombies
19:10:53 <olsner> maybe oerjan or funpuns can fill it in later
19:11:29 <Arc_Koen> olsner: I seem to recall joke #32 was about zombies
19:11:32 <FreeFull> Brains don't really depend on quantum effects for operation any more than a rock does
19:11:33 <Sgeo> Arc_Koen, I wonder if I should try implementing in in $current_preferred_language
19:12:25 <Sgeo> Although most of these implementations are in esolangs
19:12:32 <zzo38> FreeFull: Well, yes, but rocks are simpler so the result is generally the same as anything. However, everything will depend on quantum effect, I think.
19:12:54 <FreeFull> zzo38: That is part of my point
19:13:05 <zzo38> It must, since it is the same law of physics!
19:16:01 <Arc_Koen> Sgeo: well, maybe we could add one in C in the intro
19:16:07 -!- AnotherTest has quit (Quit: Leaving.).
19:16:19 <Arc_Koen> that could be clearer that the current pseudo-code
19:16:57 -!- ssue has joined.
19:17:41 <zzo38> Just write it in whatever you want; whatever is the clearest can be linked to from the intro, I suppose.
19:20:20 <FreeFull> I'm thinking C is just a bit old, therefore doesn't have some of the convieniences =P
19:26:04 <zzo38> I think also that the I/O of FurryScript is not good enough to make truth-machine since it can only make input at beginning and output at the end. Possibly with lazy evaluation it could be done, but the current implementation does not use lazy evaluation.
19:26:34 <Arc_Koen> it's the same problem with Kipple and a couple other languages
19:27:22 <Arc_Koen> http://esolangs.org/wiki/Truth-machine#Squishy2K
19:29:24 -!- Phantom__Hoover has joined.
19:29:49 -!- constant has quit (Quit: I found 1 in /dev/zero).
19:32:16 -!- zzo38 has quit (Remote host closed the connection).
19:34:32 -!- NihilistDandy has joined.
19:41:24 -!- not5nick has changed nick to boily.
19:57:37 -!- jiella has joined.
20:02:33 -!- NihilistDandy has quit (Quit: ["Textual IRC Client: www.textualapp.com"]).
20:29:18 -!- epicmonkey has quit (Ping timeout: 245 seconds).
20:29:32 <Gregor> OMG, I just realized that it is my destiny to create a web technology called AppleJAX.
20:49:07 -!- Gregor has changed nick to Poniest.
20:49:16 <Poniest> Did somebody say “HELL YES PONIES”?! Yeah, I did!
20:50:48 <Arc_Koen> "Several languages exist which are based on rewriting strings, the most well-known being Thue."
20:50:49 <nortti> anyone who understands what this does gets a virtual cookie: main(){char a[256],*b,*c[256],**d;int p;while(1){write(1,"$ ",2);for(b=a;*(b-1)!='\n';b++){read(0,b,1);}*b=0;d=c;*d++=a;for(b=a;b<a+256&&*b!=0;b++){if(*b==' '||*b=='\n'){*b=0;*d=b+1;d++;}}*(d-1)=0;if(!(p=fork()))execvp(a,c);else wait(p);}}
20:50:58 <Arc_Koen> I thought it should be "the best-known being Thue"
20:51:03 <nortti> bonus point to the first one who finds the buffer overflow
20:51:23 <Arc_Koen> nortti: am I allowed to compile it?
20:51:47 <Arc_Koen> or at least copy it into a text file and add proper indentation
20:52:03 <FreeFull> nortti: Is it cheating if I copy-paste it into a text editor and make it more readable? =P
20:52:24 <boily> there seems to be a suspicious fork() and execvp() in there.
20:52:25 <nortti> don't forget that there is 1 space in there
20:53:07 <Arc_Koen> what the heck of a way to code is that
20:53:36 <Poniest> Uhhh, that's pretty conventional.
20:54:10 <Arc_Koen> uh, I don't know fork() or execvp
20:54:11 <Poniest> void strcpy(char*a,char*b){while(*b)*a++=*b++;*a=0;}
20:55:03 <nortti> Arc_Koen: those are unix syscalls like read and write you should notice in there
20:56:00 <Arc_Koen> hum, right, I don't know read and write either
20:56:28 <nortti> consult your nearest man page
20:56:36 <Arc_Koen> well hum there is a builtin read function in the shell OF COURSE so it won't show me the C one
20:56:48 <Arc_Koen> man man will tell me how to do that maybe
20:57:27 <nortti> in this case man 2 read
20:58:08 <Arc_Koen> wait, it tells me you have to #include a bunch of stuff
20:58:14 <Arc_Koen> therefore your program should not work
20:58:36 <Arc_Koen> because there are no #includes in your program
20:58:48 <nortti> I didn't need includes with unix v6 and I don't need then mow
20:59:07 <nortti> and it only needs size_t
20:59:45 <nortti> and as you see only a literal is used there
21:00:41 <nortti> so following bad coding practices I left the #include out bcause I wanted to fit it in one line
21:03:58 -!- boily has quit (Quit: Poulet!).
21:06:36 <kmc> in C if a function is not declared it is assumed to exist with an int return type and an arbitrary number of int arguments
21:06:39 <kmc> or something?
21:06:55 <kmc> it's more complicated than what I just said, I'm sure
21:07:46 <kmc> anyway nortti i'm guessing it's a shell
21:07:52 <kmc> i think you showed us before
21:08:10 <Poniest> There are specific rules regarding the default types of the parameters given the arguments, with the implication that those same types have to be compatible if you later give it a proper prototype.
21:08:13 <kmc> also the write(',"$ ",2); and fork and execvp are good clues
21:09:04 <kmc> but your shell does not do job control!
21:09:23 * nortti gives kmc a virtual cookie
21:09:36 <nortti> now find the buffer overflow
21:09:51 <kmc> well there are only so many places it could be :)
21:11:59 <FreeFull> You never allocate a space for c
21:12:35 <nortti> >char a[256],*b,*c[256],**d
21:13:22 <FreeFull> Unless I'm reading it wrong and it's a 256 array of char pointers
21:13:26 <kmc> no it's the latter
21:13:37 <kmc> cdecl> explain char *c[256]
21:13:37 <kmc> declare c as array 256 of pointer to char
21:14:08 <FreeFull> Maybe I should get cdecl then =P
21:14:14 <nortti> FreeFull: do you understand what pointers are put in c?
21:14:37 -!- Phantom_Hoover has joined.
21:14:38 <kmc> "*d=b+1;d++;" could be replaced with "*d++=b+1;" for extra obfuscation
21:14:53 <nortti> hmm. missed that for some reason
21:15:01 <kmc> you did it somewhere else aleady
21:15:04 * kmc can't type
21:15:06 <nortti> but the aim is not to obfuscate
21:15:21 <kmc> there is a difference between compact code and obfuscated code
21:15:45 <FreeFull> You could get rid of d and replace all occurences of it with c and it'd still work, right?
21:15:55 -!- carado has joined.
21:16:03 <Poniest> char*a,b[9999];main(){gets(a=b);while(*a){a+=(b[*a]-=b[a[1]])?3:a[2];}puts(b+1);}
21:17:05 <FreeFull> nortti: Pointers to chars in a, right?
21:17:16 -!- Phantom__Hoover has quit (Ping timeout: 256 seconds).
21:17:24 <kmc> also there is no way to exit the shell :D
21:17:48 * nortti gives some extra points to kmc
21:18:02 <nortti> forgot to include that in the puzzle
21:18:09 <kmc> of course that would be as easy as if(!read(0,b,1))return;
21:18:11 <olsner> is there a unix shell that emulates command.com? (or cmd.exe?)
21:18:39 <kmc> yeah because it doesn't do job control ;P
21:18:54 <nortti> but any other way than abusing it not handling signals
21:21:58 <nortti> if no one finds the buffer overflow in 10 minutes I'm going to reveal it
21:23:21 <kmc> it's just that long command lines will overflow 'a', right?
21:30:43 * nortti gives kmc bonus points
21:34:31 <olsner> oh, that was a boring one ... gets is an automatic buffer overflow
21:42:49 <kmc> what does yours do Poniest
21:43:13 <Poniest> Don't feel like guessing, eh? X-D
21:43:23 <kmc> well i ran it but it wasn't particularly enlightnening
21:43:33 <Poniest> You'd need very carefully-constructed input to use it.
21:43:45 <Poniest> It's an interpreter for a TC subleq-like language.
21:44:00 <Poniest> Although it is not itself TC since the memory is fixed at 9999 bytes.
21:45:42 -!- jiella has quit (Quit: Leaving.).
21:45:54 <kmc> what a coincidence, my computer is also not turing complete :)
21:47:08 <kmc> you can build a turing machine by making an EC2 instance which upgrades its own storage when necessary, and also has an endowment in government bonds or something, which will eventually cover the costs of additional computation
21:48:03 -!- carado has quit (Ping timeout: 245 seconds).
21:48:22 <kmc> of course when amazon goes out of business you are still screwed :(
21:49:37 <olsner> not if the machine moves to another internet fluffy weather thingy
21:49:37 <Poniest> I like how you blindly ran unreadable C code, btw.
21:50:07 <olsner> it's ok, he probably ran it as root so it couldn't touch his user data
21:51:17 <kmc> it's not unreadable
21:51:30 <kmc> i couldn't tell exactly what it does but i was fairly confident that it wouldn't do anything too nasty
21:51:49 <kmc> the only system-ish calls are gets and puts
21:51:59 <kmc> and it's too simple to be constructing a nasty payload and buffer overflowing it, or anything like that
21:52:04 <kmc> though really
21:52:11 <kmc> i am interested in how well you can hide these things
21:52:30 <kmc> i want to run a contest kind of like http://underhanded.xcott.com/
21:52:33 <kmc> but more open-ended
21:55:45 <olsner> kind of like ioccc but for malicious programs?
21:56:20 <kmc> kind of, yeah
21:56:36 * Sgeo thinks that Lisps might be good for that because as far as I understand, indentation is crucial for readability, so false indentation might be able to trick readers, I think
21:56:44 <kmc> for the most part programs in ioccc are obviously very hard to understand
21:57:02 <kmc> i'm interested in programs which look like very straightforward implementations of one thing, but actually do some other malicious thing
21:57:08 <olsner> oh, except that instead of inscrutable they should look harmless
21:57:10 <kmc> there are a few IOCCC winners like that, though
21:57:24 <kmc> also, it's easy to make a progra
21:57:25 <olsner> I recall some Java-like thing
21:57:34 <kmc> also, it's easy to make a program with a deliberate subtle security hole
21:57:43 <kmc> but that's not so interesting either
21:58:01 <kmc> so it's hard to delineate exactly what i'm looking for
21:58:21 <olsner> leave it to the judges? :)
21:59:13 <kmc> i started writing up guidelines
21:59:26 <kmc> 'Your program should conceal the malicious behavior from the user for as long as possible. It's especially impressive if you can make it look like an honest mistake even after it's been uncovered.'
22:00:00 <Sgeo> kmc, that underhanded thing, were the submissions ever shown/judged?
22:00:04 <Sgeo> For the airline one
22:00:14 <kmc> i think not for that iteration of the contest
22:00:19 <kmc> some previous years are on there though
22:01:19 <kmc> i'm particularly interested in what psychological tricks you can play to make someone shrug and say "eh, this code is probably ok"
22:01:19 <olsner> I think the underhanded contest was a bit boring because you had to solve one specific problem and make a specific kind of malicious behavior
22:01:30 -!- carado has joined.
22:05:39 <olsner> actually, I think this kind of program goes well in the ioccc
22:06:32 <olsner> although they might be surprised to get submissions that don't look obfuscated at all
22:07:06 <olsner> also might be pissed if they try your program and it does something evil
22:08:10 <Poniest> It would be just fine to /tell/ them it does something evil.
22:08:26 <Poniest> In a way it's not similar to that submission that #defined a bunch of stuff to make Java-looking code run.
22:08:40 <Poniest> And in a way, it's not similar ^^
22:14:18 -!- augur has quit (Remote host closed the connection).
22:15:06 <kmc> my contest would definitely not be limited to C, though
22:15:18 <kmc> i think a lot of different languages have a lot of different interesting ways to hide shit
22:15:56 <kmc> i want to see a LaTeX document class that steals your SSH private key
22:16:16 <kmc> to recover the key, the attacker has to print out the document and soak it in lemon juice
22:16:44 -!- Phantom__Hoover has joined.
22:18:23 <Sgeo> "Note that some really nasty security holes result from similar acts of syntactic cleverness. Probably the biggest example is the format specifier bug, which exists because a zillion programmers think that writing printf( string ) instead of printf( %s, string ) is kinda neat."
22:20:05 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
22:26:05 <Arc_Koen> oh I had never thought of writing printf(string)
22:33:52 -!- carado has quit (Quit: Leaving).
22:34:26 <kmc> first thing in gitit user's guide: "Gitit is a wiki program written in Haskell. It uses Happstack for the web server"
22:34:37 <kmc> cause if there's anything users care most about, it's what language and web framework was used to implement the site
22:34:55 <kmc> gitit is pretty cool though
22:38:45 <kmc> i like that i can download any page on my wiki as a LaTeX document, man page, or S5 slideshow
22:39:04 <kmc> for that "not three shits were given" presentation look
22:44:49 -!- augur has joined.
22:57:51 <olsner> it better not give you one of those LaTeX documents that steals your SSH private key
22:58:50 -!- Poniest has changed nick to Gregor.
22:58:58 <Gregor> Even the S5 presentation does.
22:59:18 * ion saved an idea for a rhythm in glorious General MIDI. http://heh.fi/tmp/test-20121013.midi
22:59:40 <olsner> I suppose the man page does too
23:01:13 <elliott> ion: how do i play general midi on linux again
23:01:45 <ion> elliott: xdg-open http://heh.fi/tmp/test-20121013.midi
23:01:56 <olsner> hah, as if that would work
23:01:58 <Gregor> My estimation of that working: 0%
23:02:01 <elliott> what player do i need to install for midis
23:02:03 <ion> Worksforme™
23:02:11 <ion> elliott: Totem plays it on my system.
23:02:21 <ion> What’s your default media player?
23:02:25 <Gregor> ion: … do you have a hardware MIDI synth?
23:02:47 <Gregor> Then your distro must configure timidity or fluidsynth as an alsa server by default, I suppose.
23:03:04 <elliott> all these modern conveniences
23:03:20 <olsner> oh, xdg-open opened the link in my browser, upon which my browser is offering to open the file using xdg-open
23:03:36 <Gregor> The answer is not “it's magic”, ion, there exists a sequencer somewhere X_X
23:04:07 <pikhq> I blit into the framebuffer just right and tune an AM radio to my monitor.
23:04:08 <olsner> chockingly, I don't have a midi player installed
23:04:12 <ion> elliott: gst-launch-0.10 filesrc location=test-20121013.midi ! decodebin ! alsasink
23:04:28 <elliott> apparently i actually have gstreamer
23:04:29 <Gregor> <Gregor> Then your distro must configure timidity or fluidsynth as an alsa server by default, I suppose.
23:04:31 <elliott> but i doubt that will work
23:04:35 <elliott> i have no midi synthesiser installed
23:05:19 <ion> This seems to be the thing it uses. /usr/lib/x86_64-linux-gnu/gstreamer-0.10/libgstwildmidi.so
23:05:41 <olsner> oh wow, xdg-open's list of candidates lists 11 copies of Internet Explorer
23:05:57 <ion> It came from gstreamer0.10-plugins-bad
23:06:33 <Gregor> wildmidi, never heard of it. Uses GUS patches though, so it's shit.
23:06:43 <Gregor> elliott: http://codu.org/webmidi/
23:06:57 <elliott> webmidi doesn't accept a url, worthless
23:07:12 <olsner> derp, and I forgot to uncheck the "always use this program" thingy, so now all midi files open with internet explorer
23:08:14 <ion> http://codu.org/webmidi/gen/22676115734515/22676115734515.ogg
23:08:19 <olsner> (I don't seem to have IE installed)
23:09:28 <elliott> i like how tinny this sounds
23:10:46 <elliott> anyone remember the algorhythm thing
23:10:55 <elliott> imo ion should generate a melody for thar rhythm with it
23:11:18 <ion> I’ll generate a melody using the algorithms in my wetware. :-P
23:11:54 <elliott> nothing surpassed the algorhythms
23:12:06 <olsner> elliott: GUS is a well-renouned sound card from the age before such things were standard equipment built into every PC
23:12:12 <elliott> i forget what Gregor's really good one was called
23:12:17 <olsner> it had buffers and samples and fancy stuff
23:12:34 <ion> http://heh.fi/tmp/test-20121013.pdf
23:12:52 <elliott> http://codu.org/masterpiecemachine/mp/Onerously%20Uptight%20Toccata this one
23:12:53 <Gregor> elliott: Onerously Uptight Toccata.
23:12:57 <elliott> Gregor: please add a link that automatically webmidis it
23:13:13 <Gregor> elliott: http://codu.org/music/auto/Onerously%20Uptight%20Toccata.ogg
23:13:19 <Gregor> But I'll bear that in mind for this weekend and/or never.
23:16:12 <elliott> i can't find the ones i made RIP
23:16:19 <elliott> well i remember http://codu.org/masterpiecemachine/mp/Onerous%20Cake-Eating%20Festival%20Disallowment%20Barricade
23:16:23 <elliott> but i forget what it sounds like because there's no ogg link
23:17:11 <Gregor> First world too-lazy-to-just-download-it-then-upload-it-to-webmidi problems.
23:17:33 <elliott> Gregor: http://codu.org/webmidi/gen/228332553116545/228332553116545.ogg doesn't work
23:17:40 <elliott> http://codu.org/webmidi/gen/228332553116545/
23:17:49 <Gregor> Well, I can't figure out why, as I'm at work, so nya ^^
23:17:54 <elliott> http://codu.org/webmidi/gen/228332553116545/log.txt
23:18:13 <Gregor> That's an unhelpful log ^^´
23:19:24 <elliott> now i'm trying with chorium
23:19:26 <elliott> but it's stuck as "queued"
23:19:31 <elliott> http://codu.org/webmidi/gen/2288519420303/
23:20:08 <Gregor> The queue isn't based on webmidi submissions, it's based on system load.
23:20:21 <Gregor> Webmidi is always prioritized lower than… just about everything else :)
23:20:36 <elliott> ok now it finished and spat out a 0 second file
23:21:16 <elliott> i think this "Roe v_ Wade As An Analogy For Temperature" one is mine
23:21:54 <elliott> Gregor: btw fluidsynth: warning: Failed to pin the sample data to RAM; swapping is possible.
23:22:07 <Gregor> It's irrelevant for rendering to a file.
23:22:23 <elliott> http://codu.org/webmidi/gen/22981154128959/22981154128959.ogg this is amazing
23:22:24 <Gregor> And infrequently an issue even for live playback.
23:23:09 <elliott> i think this may be the best thing i have ever made
23:23:54 <Gregor> And you didn't even make it.
23:28:06 <Gregor> A couple weeks ago I drove by a place called “Beverages and More”. I thought to myself, “what a bizarre niche”, and drove on.
23:28:19 <Gregor> Today I realized, of COURSE a place called “Beverages and More” would have Moxie.
23:28:28 <Gregor> In retrospect, I am a fool :'(
23:28:44 <Gregor> But in prospect, I will soon have Moxie!
23:29:06 <Arc_Koen> elliott: your .ogg file sounds like it runs four times too fast
23:29:38 <elliott> Arc_Koen: maybe you run four times too slow
23:29:42 <elliott> how about this http://codu.org/webmidi/gen/23051228304267/23051228304267.ogg
23:30:48 <elliott> gonna go with you being too slow on this one
23:30:51 <Arc_Koen> there might be something wrong with my player
23:31:38 <elliott> does http://codu.org/music/auto/Onerously%20Uptight%20Toccata.ogg sound too fast
23:31:42 <elliott> (it's meant to be 160 bpm)
23:32:34 <Arc_Koen> it's not just the sound - my player actually displays the time and every second it's incremented by 4 or 5
23:51:44 <shachaf> kmc: Any talk of extracting the interesting part of mosh into a library?
23:58:22 <kmc> people talk of it, yes
23:58:29 <kmc> by "the interesting part" do you mean the state sync protocol?
23:59:28 <kmc> well, it is already sort of a library
23:59:41 <kmc> it lives in its own directory in the mosh source tree
23:59:47 <kmc> and has a reasonably clean if completely undocumented interface
00:00:08 <shachaf> "Distributed as source code in a pre-extracted tar file"
00:00:10 <kmc> KeithW is using it also for his awesome dynamic bitrate inferential flow control videoconferencing thingy
00:00:14 <kmc> https://github.com/keithw/alfalfa
00:00:26 <kmc> i think this may have started as a complete copy of the mosh repo...
00:00:32 <kmc> but now it's a videoconferencing program
00:00:49 <kmc> slash an academically relevant demonstration of something that could be turned into a videoconferencing program
00:01:34 <shachaf> I hope that's what SSP stands for.
00:01:38 <kmc> er, with one modification
00:01:50 <kmc> i forgot which though
00:02:22 <elliott> supplemental super proteins
00:02:42 <kmc> 'The major modification we made to SSP to support Alfalfa is that in Mosh, “diff” and “patch” are round-trip operations, so the protocol is lossless. In Alfalfa, the “diffs” are lossy and the available length for a diff varies according to Sprout’s forecast window size.'
00:03:07 -!- sivoais has quit (Ping timeout: 244 seconds).
00:03:24 <kmc> presumably you then re-apply the lossy diff locally, so that errors don't accumulate
00:03:52 <kmc> here "diff" = MPEG-2 P-frames
00:04:20 -!- nooga has quit (Ping timeout: 245 seconds).
00:04:27 <ion> Sanyo’s “SSP” is the most horrible protocol i’ve ever seen.
00:04:38 <kmc> it uses MPEG-2 not because that's actually a good choice for videoconferencing but because keith had to implement a custom variable bitrate encoder in like three days
00:05:08 <kmc> basically, it uses bayesian estimation to figure out the maximum bitrate it can send with only a 5% chance of a delay larger than 100ms (i think)
00:06:48 <ion> I wish all software did that.
00:07:56 <shachaf> kmc: How're your adventures in JavaScriptland, by the way?
00:07:59 <shachaf> Or wherever it is you are.
00:08:08 <kmc> pretty good
00:08:13 <kmc> i am enjoying my job
00:08:24 <kmc> we have been working on the thing for a month and a half and have made a ton of progress
00:08:34 <shachaf> Is the thing still secret?
00:19:15 <Arc_Koen> some days I just tell myself "hey let's go to bed now before it gets late" and then before I have successfully gone to bed I tell myself "hey I should take a look at that Emmental language it seemed really interesting" or anything of the like and it overwrites the previous resolution and IT'S 2:30AM ALREADY and today is one of those days
00:19:42 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
00:19:51 <shachaf> I woke up before 08:00 today!
00:22:14 <kmc> how'd you manage that?
00:23:30 <shachaf> Normally when I need to wake up early I set several alarm clocks and still have a lowish probability of it doing any good.
00:23:35 <kmc> how do you feel about this event?
00:23:55 <shachaf> When it happens on its own and I'm not tired.
00:29:22 <elliott> there is no good reason for hours less than 12 to exist
00:30:07 -!- monqy has joined.
00:30:11 <shachaf> elliott: 01:00 is a perfectly good time to be awake.
00:30:33 <shachaf> elliott probably believes in Random Standard Time.
00:30:51 <elliott> monqy: what is shachaf talking about
00:31:09 <shachaf> elliott: RST goes from 06:00 to 29:59
00:31:20 <shachaf> kmc probably knows more about it than I do.
00:31:43 <elliott> shachaf: shut up let me war with monqy in peace
00:32:59 <elliott> shachaf: 06:00 is wrong anyway
00:33:03 <elliott> since i'm often still up at that time
00:33:11 <elliott> 08:00 would be a reasonable roll-over probably
00:33:26 <lambdabot> how does this command even work again
00:36:15 <Sgeo> Oh, Phantom__Hoover elliott monqy et all, recent update if you didn't see it
00:37:36 <monqy> creative liberties, artistic license
00:37:47 <elliott> monqy: i didn't know you coded perl
00:38:13 <monqy> i used to know some perl but then i forgot it
00:38:22 <monqy> i think i';ve only written one perl thing in my entire life
00:38:34 <shachaf> iused to forgot all perl but thenr i learned it :"(
00:38:48 <elliott> monqy: http://en.wikipedia.org/wiki/Artistic_License
00:39:56 -!- fungot has quit (Ping timeout: 246 seconds).
00:39:58 <monqy> never heard of it!
00:40:03 <monqy> plenty about the other artistic license though
00:40:05 <monqy> my favourite license
00:40:13 -!- sebbu has quit (Ping timeout: 246 seconds).
00:41:00 * Sgeo forgets whether there's a way for non-admins to privately message lambdabot to get it to say something in channel
00:41:22 <Sgeo> There's obviously someone in here who can do it, shachaf I think?
00:41:58 <shachaf> lambdabot is lying. It's me.
00:42:27 <Sgeo> shachaf vs shachaf, FIGHT!
00:43:09 <Sgeo> "Whether or not the original Artistic License is a free software license is largely unsettled. It was criticized by the Free Software Foundation as being "too vague; some passages are too clever for their own good, and their meaning is not clear.""
00:43:28 <shachaf> elliott: stop @admin-ing me :'(
00:43:31 <Sgeo> Too clever for their own good? Like some Perl code?
00:46:59 -!- sebbu has joined.
00:47:39 -!- sivoais has joined.
01:07:04 <FreeFull> shachaf: Not all haskell code is clever =P
01:07:17 <FreeFull> See: All Haskell code I've ever written
01:07:46 <shachaf> Not all things FreeFull says are clever.
01:08:07 <FreeFull> shachaf: I say none of them are
01:15:04 -!- copumpkin has joined.
01:26:41 -!- glogbackup has joined.
01:26:41 -!- slbkbs has joined.
01:26:41 -!- slbkbs has quit (Changing host).
01:26:41 -!- slbkbs has joined.
01:26:49 -!- lambdabot has quit (Ping timeout: 256 seconds).
01:26:52 -!- EgoBot has quit (Remote host closed the connection).
01:27:03 -!- EgoBot has joined.
01:28:05 -!- HackEgo has quit (Ping timeout: 255 seconds).
01:28:42 -!- HackEgo has joined.
01:30:22 -!- slbkbs has quit (Quit: adieu).
01:33:57 -!- TeruFSX_ has quit (Read error: Connection reset by peer).
01:34:46 -!- TeruFSX has joined.
01:36:53 <Sgeo> Common Lisp:Clojure::Tcl:???
01:36:59 * Sgeo wants the ??? language
01:39:10 <Sgeo> Clojure has CL-style macros, when I think I really like Tcl-style I-don't-know-what-to-call-it
01:39:40 <Sgeo> fexprs? Except, if Kernel is said to have fexprs, it's not quite it
01:40:27 <pikhq> Tcl: a Tcl-expr lisp.
01:41:09 <monqy> something about strings
01:42:42 <Sgeo> I didn't say I like the string aspect
01:43:06 <Sgeo> But the idea of being able to dynamically generate the code that a control structure will see
01:43:56 <Sgeo> Although admittedly it hurts compilability and any code-walking ability
01:44:24 <monqy> does it do anything good
01:44:40 <monqy> it'd be pretty sad if something so crazy was entirely useless and just a huge mess for losers!!!
01:46:16 <Sgeo> It comes to mind whenever I see someone complain about how some macro they want to use won't accept a variable containing a symbol or a vector in place of where the macro usually accepts a symbol or vector
01:51:41 -!- TeruFSX has quit (Remote host closed the connection).
01:53:04 -!- TeruFSX has joined.
01:57:33 <Sgeo> Wait, why exactly am I chatting on the W:A chat as though anyone actually chats?
01:58:01 <Sgeo> http://snooper.worms2d.info/
01:59:29 <elliott> why are you asking #esoteric, Sgeo
01:59:45 <shachaf> elliott: Twist: #esoteric is W:A caht.
02:09:23 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.17397
02:20:55 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
02:49:01 -!- Jafet has joined.
03:08:00 <Sgeo> I wonder if I should attempt to implement ALPACA in Clojure
03:12:45 <monqy> whatever it is, it's better than nothing, unless it isn't
03:26:38 <Sgeo> Why does catseye keep 404ing on me?
03:26:43 <Sgeo> http://catseye.tc/projects/alpaca/doc/alpaca.html
03:26:56 <Sgeo> The Game of Life link and the WireWorld link both 404 on me
03:27:11 <Sgeo> Almost complained that ALPACA cheats, but that's REDGREEN not ALPACA cheating
03:27:50 <monqy> do you think you have a chance at winning the: catch of the year award???? I think you do
03:28:12 <monqy> you'll have to compete with the fishers but all they catch are fish
03:30:37 <elliott> monqy: sometimes they catch other things by accident
03:30:42 <Sgeo> I should do it in ClojureScript, not Clojure
03:30:59 <Sgeo> Although I kind of hate ClojureScript. A "lisp" with macros in a different language and no eval.
03:31:06 <monqy> do it in "clozure"
03:31:15 <elliott> monqy: is the joke clozure common lisp
03:32:13 <monqy> that was my final joke
03:32:26 <elliott> what's the point of living if you don't have jokes to tell.
03:32:37 <shachaf> i meant a pun but a pub would also do
03:33:34 <Sgeo> Is APALCA's only full documentation the Perl implementation?
03:35:59 <Sgeo> Oh, REDGREEN's source probably serves as documentation
03:36:30 <Sgeo> o.O cpressey writes useful code?
03:42:03 -!- TodPunk has quit (Read error: Connection reset by peer).
03:42:15 -!- TodPunk has joined.
03:42:23 <Sgeo> Can REDGREEN fish interact with the rest of the REDGREEN world?
03:42:46 <Sgeo> e.g. the GoL simulation interacting with WireWorld
03:44:19 <shachaf> kmc: newtype Rec a = InR { outR :: Rec a -> a } is just Curry's paradox.
03:48:09 <elliott> shachaf: curry's paradox doesn't work because you have to mix logic with common sense to get the best results
03:48:11 <elliott> a wise man once told me this
03:50:26 <shachaf> Those are the ingredients of a delicious curry.
03:55:31 -!- mig22 has joined.
03:57:03 -!- kinoSi0 has quit (Read error: Connection reset by peer).
03:57:31 -!- kinoSi has joined.
04:06:27 <Sgeo> DuctTape is flammable.
04:07:05 <monqy> i'll keep that in mind
04:07:16 -!- FireFly has quit (Ping timeout: 246 seconds).
04:12:40 <Sgeo> <ivan> let's train a new generation of programmers capable only of thinking functionally, leaving us with the high-paying procedural maintenance
04:19:56 -!- FireFly has joined.
04:26:02 <Sgeo> Oh, so Himera needs a server.
04:26:16 <Sgeo> (Himera is a web-based REPL for ClojureScript)
04:27:15 <Sgeo> Yes, this bothers me.
04:27:31 <elliott> thanks for letting us all know, Sgeo
04:38:19 -!- copumpkin has quit (Ping timeout: 260 seconds).
04:38:54 -!- copumpkin has joined.
04:45:22 -!- elliott has quit (Ping timeout: 246 seconds).
05:07:21 <Sgeo> Steam is Steamy. Good to know.
05:32:04 -!- copumpkin has quit (Ping timeout: 252 seconds).
05:32:14 -!- evincar has joined.
05:32:44 -!- copumpkin has joined.
05:36:34 <Sgeo> shachaf, this is surprising to you?
05:45:41 -!- ogrom has joined.
05:49:11 -!- evincar has quit (Read error: Connection reset by peer).
05:53:41 -!- evincar has joined.
06:03:27 <kmc> now running memtest86+ v4.20
06:03:34 <kmc> test memory everyday
06:06:02 -!- evincar has quit (Read error: Connection reset by peer).
06:08:25 -!- evincar has joined.
06:47:44 -!- epicmonkey has joined.
06:52:50 <kmc> achievement unlocked: mounted boot drive using only duct tape
06:54:24 * Sgeo keeps looking at redgreen.alp
06:54:48 -!- evincar has quit (Quit: leaving).
06:55:58 <kmc> shachaf: that is roughly all i know about random standard time
06:56:26 <kmc> what you said
06:56:45 <kmc> it goes from 06h to 29h, with the numbers under 24 lining up with normal time
06:57:04 <kmc> actually I think in some real world contexts both 00h and 24h are used
06:57:09 <kmc> to denote beginning or end of day resp.
07:30:27 -!- carado has joined.
07:46:18 -!- carado has quit (Quit: Leaving).
07:59:31 <Sgeo> Why is my college so full of idiots
07:59:58 <Sgeo> Apparently, a bunch of students ignored a fire drill, then ignored a seminar that they were required to attend because they didn't participate in the fire drill.
08:00:03 <Sgeo> They are now expelled from the dorms.
08:00:56 -!- monqy has quit (Quit: hello).
08:20:44 <Sgeo> Oh hey, I think I found a mistake in cpressey's REDGREEN implementation
08:21:44 <Sgeo> Fish in water are supposed to follow GoL rules. But one fish surrounded by 8 fish will turn into air (not a GoL cell state) rather than water (GoL dead)
08:22:12 <Sgeo> Unless the precedence of the state transitions is opposite of what I think it is
08:30:55 -!- Arc_Koen has joined.
08:33:55 <Sgeo> No, I think I'm right and cpressey is wrong.
08:36:57 <fizzie> I do think it's first-matching, too.
08:37:23 <fizzie> Though you could just try it out.
08:38:21 <fizzie> Arc_Koen: REDGREEN's ALPACA spe
08:38:41 <fizzie> I was going to make that "Arc_Koen: Fish.", to be more mysterious.
08:38:46 <Sgeo> fizzie, looking at the generated Perl also suggests it's first-matching
08:38:46 <fizzie> Now I spoiled the whole thing.
08:39:38 <fizzie> I just looked at the Perl generating the Perl, but it did, too.
08:39:54 <Arc_Koen> fizzie: according to the logs the discussion about alpaca and redgreen started four hours ago
08:40:33 <Arc_Koen> wait that's actually what you were talking about ?
08:41:26 <Sgeo> The Perl generating the Perl gives me a headache of confusion
08:49:37 -!- fungot has joined.
08:57:46 <Sgeo> Does fungot speak REDGREEN?
08:57:46 <fungot> Sgeo: and the same buttons to page up and page down in aterm. oh, you are just making a bad optimization for fun
08:58:00 <Sgeo> bad optimizations for fun!
09:04:45 -!- Phantom_Hoover has joined.
09:11:32 -!- lambdabot has joined.
09:12:12 -!- Jafet has quit (Quit: Leaving.).
09:24:57 -!- Jafet has joined.
09:25:57 -!- nooga has joined.
09:31:58 <Arc_Koen> I think I accidentally erased the brainfuck interpreter I had written in thue
09:36:43 <Arc_Koen> FreeFull: fortunately I pasted it to sprunge.us and copied the link here and it's in the logs
09:39:58 <Arc_Koen> oh, it turns out § is not ascii
09:41:12 <Arc_Koen> I didn't think that was the problem
09:41:59 <Arc_Koen> replaced § with ¬ß (which is not ascii either, that's weird)
09:56:33 -!- FireFly has quit (Changing host).
09:56:33 -!- FireFly has joined.
10:22:09 <ogrom> let's not screw files, shall we?
10:28:47 <fizzie> Seven bits is not enough for miracles. At least ASCII has both upper- and lowercase.
10:35:51 -!- AnotherTest has joined.
10:43:01 <Arc_Koen> you need only 6 bits for A-Za-z0-9, who needs the rest
10:57:42 -!- ogrom has quit (Quit: Left).
10:59:47 <fizzie> Sometimes a bit of punctuation is good too.
11:08:25 <oklofok> get access to GAME BREAKING BUGS
11:12:18 -!- Jafet has quit (Quit: Leaving.).
11:20:05 -!- sivoais has quit (Read error: Connection reset by peer).
11:20:24 -!- Jafet has joined.
11:20:48 -!- sivoais has joined.
11:32:10 -!- sivoais has quit (Read error: Connection reset by peer).
11:32:53 -!- sivoais has joined.
12:06:48 -!- itidus21 has joined.
12:10:51 <itidus21> * Topic for #esoteric is: BEWARE THE O/RJANIST MO/O/SE |
12:11:02 <itidus21> I, for one, welcome our new hash function overlords |
12:11:11 <itidus21> E5081A06F9E364E179B336A2C6D6831D4B50CD7739C7E156
12:11:19 <itidus21> 5E03EBF2 | ZARDOZ created ZARDOZ; all else is the work of
12:11:30 <itidus21> ZARDOZ | New channel logs: http://5z8.info/hookers_j0l4yf_nak
12:11:42 <itidus21> edgrandmas.jpg | Old-style channel logs: http://codu.org/logs/_es
12:12:01 <itidus21> * Topic for #esoteric set by zzo38!~zzo38@24-207-49-17.eastlink.c
12:12:06 <olsner> itidus21: it is looking more odd the further you go
12:12:38 <itidus21> the arbitrary line breaks are new information
12:13:32 <olsner> oh, zzo probably put weird ascii in there
12:13:58 <itidus21> uh.. thats just the linebreaks based on the width of my xchat window
12:14:03 <Arc_Koen> I was implementing the . instruction in my brainfuck interpreter in thue
12:14:08 <itidus21> Look at Dave. He's like "Okay. You can do this. DON'T hit the cymbals as hard as you fucking can!"
12:14:12 <olsner> itidus21: so what is the odd thing?
12:14:44 <itidus21> the odd thing was me re-posting the topic with the linebreaks based on the width of my xchat window
12:14:50 -!- itidus21 has left ("Leaving").
12:15:00 <Arc_Koen> so I though "I'd do characters 32-126 manually, and characters above 128 can be detected easily since they have a 1 as their most significant digit
12:15:12 <Arc_Koen> so I do all characters 32-126 manually
12:15:36 <Arc_Koen> I realize I did all that with the . marker right to the number
12:15:46 <Arc_Koen> and the most significant digit is left to the number
12:16:39 <olsner> hmm, so the oddest part about that whole thing was that nothing was odd in the first place
12:16:40 <Arc_Koen> does that mean I have to do it all over again?
12:16:41 <olsner> ... except itidus, I guess he's a bit odd
12:17:57 <Arc_Koen> @tell itidus21 about that null stack you were so impressed about: I thought maybe a copy stack that would do exactly the opposite: instead of destroying everything that's pushed onto it (and being always empty) it keeps copy of everything that's popped from it (and is never empty)
12:19:19 <Arc_Koen> ok one cheap way to cover my mistake without redoing everything manually is to consider ascii characters mod 128
12:19:45 <Arc_Koen> that is, characters 128-255 would be equivalent to characters 0-127
12:20:17 <Arc_Koen> or I could just say I don't care and trying to output a character outside the range 0-127 causes the program to halt
12:20:25 <Arc_Koen> yeah that should be good enough
12:20:51 -!- spamdribble has joined.
12:21:44 -!- spamdribble has left.
12:26:03 -!- Frooxius has joined.
12:32:36 <Arc_Koen> wouuuuuuuuh works with the Hello World program from the esolangs.org brainfuck page!
12:34:14 <olsner> Arc_Koen: congratulations
12:34:37 <Arc_Koen> I think I'm gonna send an email to the guy who wrote the thue interpreter I'm using
12:35:27 <Arc_Koen> it allows to run the thue program step by step or at any speed and to see the current state of the program and that's a very valuable debugging tool
12:45:13 -!- AnotherTest has quit (Read error: Connection reset by peer).
12:45:27 -!- AnotherTest has joined.
13:01:47 -!- AnotherTest has quit (Quit: Leaving.).
13:03:27 -!- AnotherTest has joined.
13:08:24 -!- Jafet has quit (Quit: Leaving.).
13:28:33 <ion> Absolutely No Words http://youtu.be/pquYAEfbBFM
13:37:27 <olsner> that's slightly disturbing
13:40:24 -!- iconmaster has joined.
13:46:01 -!- Vorpal has joined.
14:21:06 -!- Jafet has joined.
14:24:54 -!- iconmaster has quit (Ping timeout: 260 seconds).
14:32:35 -!- nooga has quit (Ping timeout: 256 seconds).
14:42:02 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
14:42:14 -!- Frooxius has joined.
14:46:31 -!- iconmaster has joined.
15:05:16 -!- hagb4rd has joined.
15:06:34 -!- iconmaster has quit (Ping timeout: 256 seconds).
15:07:57 -!- iconmaster has joined.
15:12:05 -!- FireFly has quit (Excess Flood).
15:19:05 -!- FireFly has joined.
15:20:26 -!- FireFly has quit (Excess Flood).
15:23:44 -!- FireFly has joined.
15:26:49 -!- mig22 has quit (Quit: mig22).
15:29:29 -!- nooga has joined.
15:42:45 -!- elliott has joined.
16:12:06 -!- iconmaster has quit (Ping timeout: 265 seconds).
16:13:20 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
16:15:03 -!- iconmaster has joined.
16:38:40 -!- AnotherTest has quit (Ping timeout: 246 seconds).
16:38:44 -!- iconmaster has quit (Ping timeout: 246 seconds).
16:43:52 -!- iconmaster has joined.
16:47:31 -!- nooga has quit (Ping timeout: 244 seconds).
16:56:23 -!- iconmaster has quit (Ping timeout: 245 seconds).
17:02:15 <Gregor> Facebook just told me that somebody I don't know accepted /my/ friend request.
17:05:39 <ion> :-D Someone had made a friend request to me ages ago, but i didn’t recognize the name immediately and didn’t get around to looking up who he was until today. It turns out it was you and i accepted.
17:07:04 <Gregor> Dafaq, why would I friend you, I hate you. I MEAN, NOTHING.
17:07:26 <Gregor> More tot he point, I don't remember ever doing this, or for that matter, ever friending anyone from #esoteric other than pikhq >_>
17:08:46 <shachaf> Hmm, now I know what ion looks like. Just like I imagined, really.
17:08:55 <pikhq> Gregor: Only me? Hah.
17:09:23 <Gregor> I don't have “friends”, I only have “acquaintances I tolerate”.
17:09:42 <ion> Date: Wed, 6 Jun 2012 17:36:14 -0700 Subject: Gregor Richards haluaa olla kaverisi Facebookissa.
17:10:06 <shachaf> haluaa olla kaferisi Facebookissa
17:10:21 <Gregor> June? May as well be 1960.
17:10:47 <pikhq> haruā orra kaferishi fēsubūkkissa
17:11:29 -!- Phantom__Hoover has joined.
17:11:35 -!- iconmaster has joined.
17:12:39 -!- ogrom has joined.
17:14:04 <elliott> pikhq: Hey, if I break my system, fix it.
17:14:15 <elliott> I have no idea what I'm doing, so I probabiy will break it.
17:14:34 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
17:14:38 <pikhq> Computers love coffee.
17:14:45 <pikhq> You should pour a whole pot on it.
17:15:29 <elliott> pikhq: Weeeell, I'm removing my separate ext2 /boot partition and merging it into my JFS / at the same time as switching from MBR to GPT.
17:15:43 <elliott> To make room for a 2 MiB partition GRUB2 apparently needs on GPT systems.
17:15:54 <elliott> So I'm fairly certain my system is going to stop booting in a few minutes.
17:16:14 <olsner> that does sound like something almost guaranteed to break your system
17:16:22 <pikhq> You *might* want to make a boot disk of some sort.
17:16:41 * FreeFull wonders what's up with people trying out GPT
17:16:46 <elliott> pikhq: I think I have a USB drive with an Arch thing on it.
17:16:59 <elliott> So probably I can just boot from that if it goes wrong.
17:17:03 <elliott> No idea where it *is*, mind you.
17:18:05 <Gregor> FreeFull: I switched to GPT when my 3TB HD forced me to ;)
17:18:19 <elliott> OK; writing new GUID partition table (GPT) to /dev/sda.
17:18:19 <elliott> Warning: The kernel is still using the old partition table.
17:18:19 <elliott> The new table will be used at the next reboot.
17:18:19 <elliott> The operation has completed successfully.
17:18:25 <elliott> Hey does anyone know how I can force the kernel to reload the partition table?
17:18:28 <pikhq> FreeFull: MBR is almost tolerable if you've got a small enough HD.
17:18:30 <elliott> It's, uh, currently looking at my MBR table.
17:18:34 <FreeFull> Gregor: How did it force you to?
17:18:35 <pikhq> FreeFull: And besides, this is new interestingness.
17:18:41 <elliott> But the problem is I want GRUB to see the partition I just made or something.
17:18:45 <elliott> FreeFull: mbr is limited to 2 tb
17:18:48 -!- micrypt has joined.
17:18:49 <pikhq> elliott: Erm. I dunno.
17:19:09 -!- brownies has joined.
17:19:20 <HackEgo> MICRYPT: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
17:19:24 <FreeFull> elliott: Can't you just have the boot partition setup
17:19:30 <HackEgo> BrOwNiEs: WeLcOmE To tHe iNtErNaTiOnAl hUb fOr eSoTeRiC PrOgRaMmInG LaNgUaGe dEsIgN AnD DePlOyMeNt! FoR MoRe iNfOrMaTiOn, ChEcK OuT OuR WiKi: HtTp://eSoLaNgS.OrG/WiKi/mAiN_PaGe. (fOr tHe oThEr kInD Of eSoTeRiCa, TrY #eSoTeRiC On iRc.dAl.nEt.)
17:20:15 <pikhq> FreeFull: That doesn't help you if you cannot *represent partitions for the whole drive*.
17:20:21 <FreeFull> Like what was done in the olden days when the BIOSes didn't support booting partitions larger than 528MB
17:20:23 <shachaf> micrypt: They don't actually ever talk about esolangs in here.
17:20:31 <elliott> Oh nice, apparently tar doesn't save symlinks.
17:21:16 <pikhq> elliott: There's other file types tar doesn't preserve, though.
17:21:54 -!- elliott has quit (Remote host closed the connection).
17:22:27 <pikhq> Legacy tar only handles normal files, hard links, and soft links. Sane tar also preserves character specials, block specials, directories, and FIFOs.'
17:23:20 -!- elliott has joined.
17:23:33 <pikhq> You'll note it still doesn't handle named sockets.
17:23:55 <elliott> It's not meant to be possible to fiddle about with that many things related to your boot process in one go and still have it work first try.
17:24:03 <elliott> Maybe I messed up the conversion and it's still MBR???
17:24:35 <elliott> Okay, nope, gdisk says it's GPT.
17:24:58 <pikhq> I bet dmesg says what the kernel thinks it is.
17:25:02 <olsner> you can have both GPT and MBR at the same time
17:25:11 <elliott> olsner: Yeah, but gdisk says I just have the protective MBR thing.
17:25:29 <elliott> pikhq: dmesg | grep -i gpt gives nothing.
17:25:36 <FreeFull> olsner: Linux doesn't like that though
17:25:44 <elliott> But the same applies to | grep -i mbr.
17:25:46 <FreeFull> FreeBSD does but who uses FreeBSD? =P
17:25:47 <olsner> I remember trying to set MBR back up after accidentally the GPT
17:26:28 <elliott> FreeFull: Huh? Linux manages it fine, I thought.
17:26:58 <pikhq> FreeBSD does it a bit better than Linux, but Linux doesn't *utterly break* on hybrid MBR configs.
17:27:16 <pikhq> Linux only uses MBR or GPT, not both.
17:27:35 <elliott> Sort of upset that I didn't get any fancy breakage.
17:28:05 <elliott> Maybe I should enable [testing] for more fun.
17:28:06 <pikhq> Actually, from what I gather, the easiest way to check would be to see if /boot is a separate filesystem.
17:28:28 <olsner> yeah, partitioning and boot loader setup is so boring when it just works
17:28:43 <elliott> pikhq: Yeah, there's no /boot mounted, it's definitely GPT...
17:28:53 <olsner> how bad is it to use an SSD with the wrong sector size?
17:29:17 <elliott> olsner: I think it's just slightly slower.
17:29:34 <elliott> Oh hey, the ghc package got updated!!!!!!!!!!!!!!!!!!!
17:29:39 <elliott> Time to blow away /opt/ghc and break everything.
17:29:41 <FreeFull> elliott: It will show the GPT partitions, or the MBR partitions, but not both at the same time
17:30:12 <FreeFull> And which ones it shows depends on if you booted it from GPT or MBR
17:33:02 <elliott> Eurgh, the package only provides Cabal 1.16.0.
17:33:07 <elliott> So I guess upgrading probably won't work.
17:33:20 <elliott> FreeFull: That seems OK though, since in hybrid configurations you keep the two tables synchronised.
17:33:56 <pikhq> At least, to the extent possible.
17:34:22 <pikhq> (presumably if you're using a gigantic HD in a dual boot config, you don't try to keep track of your partition that goes over the 2TB boundary)
17:35:42 * elliott is just going to not install Windows until using a UEFI system.
17:36:05 <pikhq> Probably the best option.
17:37:10 <elliott> Not like the things I'd want a Windows partition for are viable on this machine, anyway... mostly games and this system is sort of crappy.
17:42:01 -!- brownies has left.
17:45:44 -!- micrypt has left.
18:07:02 <pikhq> It is, uh. Technically possible to use EFI with MBR.
18:07:24 <pikhq> Your MBR partition scheme just needs to have an EFI system partition and it "just works".
18:08:09 <pikhq> About the only benefit I can see here is if you wanted to image a giant bunch of disks with the same OS install and have it work identically on BIOS and EFI.
18:08:33 <pikhq> And, hypothetically speaking, it's an OS that doesn't boot from GPT on BIOS.
18:17:03 <pikhq> *cough*fuckyouwindows*cough*
18:17:43 -!- micrypt has joined.
18:26:12 <HackEgo> MICRYPT: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANG
18:27:42 <pikhq> God, zenkaku Roman.
18:28:32 <elliott> Hmm, I wish I could get rid of all these 32-bit libraries.
18:28:45 <elliott> I guess Dwarf Fortress is still 32-bit only, though.
18:28:49 <pikhq> Have you considering replacing all with musl?
18:29:07 <pikhq> Speaking of, I really need to help finish glibc ABI compat on musl one of these days.
18:29:30 <elliott> pikhq: I don't see how musl helps.
18:29:41 <pikhq> elliott: It doesn't directly.
18:29:47 <pikhq> But it makes me happier.
18:29:55 <pikhq> That's like helping.
18:30:15 <elliott> I sort of doubt musl's binary compatibility is good enough to use all of Arch's glibc-based binary packages with it.
18:30:28 <pikhq> Hence why I need to finish it.
18:30:47 <pikhq> As far as I'm aware, the single largest gaping hole is the lack of the _FORTIFY_SOURCE functions.
18:31:15 <elliott> What about those warnings you get about needing dynamically-loaded stuff if you statically link with glibc? Does musl have to do anything to support that kind of stuff?
18:31:24 <elliott> Not that the packages are statically-linked, but you know what I mean.
18:31:37 <pikhq> What those are is functions in glibc that call dlopen...
18:31:40 <pikhq> In musl, they don't.
18:33:27 <pikhq> Of course, static linked glibc stuff won't work without those...
18:33:36 <pikhq> Betcha they could be stubbed without much trouble though.
18:34:09 <pikhq> (mind, nobody, and I mean nobody, *actually static links against glibc*. It makes GHC's runtime look minimal.)
18:35:12 <pikhq> 675k for "int main(){}" is a bit much.
18:35:15 <elliott> I statically link against glibc sometimes.
18:35:45 <pikhq> That's 675k needed for glibc's *startup routines*.
18:36:14 <pikhq> And that's just the text segment.
18:36:43 <pikhq> The equivalent in musl is 1.5k for my current checkout.
18:36:46 <shachaf> 11:35 <shachaf> Zeno knew how to halve his cake and eat it too.
18:38:10 <pikhq> Went down a couple bytes when I did a git pull...
18:38:25 <olsner> I got 883kB for an empty main with whatever libc ubuntu has
18:38:42 <olsner> 854 with -Wl,--gc-sections
18:39:03 <pikhq> 650 B for a dynamic linked program.
18:40:14 <pikhq> olsner: I'm arbitrarily just measuring the text segment.
18:40:58 -!- epicmonkey has quit (Ping timeout: 245 seconds).
18:41:16 <pikhq> If you only look at the binary size proper, static linked musl is the smallest.
18:41:41 <olsner> there's no real reason that program should have anything more than an exit syscall in its text segment
18:41:58 <pikhq> olsner: Well, you still need the startup code.
18:42:22 <pikhq> How it works is _start runs, it sets things up for main, and only *then* does an exit syscall.
18:42:31 <pikhq> It's slightly more work than just _exit.
18:42:39 <pikhq> Still shouldn't be *that* much.
18:42:52 <olsner> yes, but even that is not necessary for this program
18:43:04 <pikhq> The linker can't magically know that main is a no-op.
18:43:56 <pikhq> All it knows is it needs the startup code and the program's objects to be glued together into a single binary.
18:44:10 -!- epicmonkey has joined.
18:44:13 <olsner> sure it can, but it's somewhat reasonable that the linker doesn't have that magic built in
18:45:03 <pikhq> s/somewhat/perfectly/
18:46:04 <pikhq> The linker is getting handed headered machine code. You need a disassembler and some sort of assembly logic analyzer to determine what main is doing, and if any bit of the startup code is necessary.
18:46:20 <pikhq> That is to say, you'd basically be shoving compiler infrastructure into the linker.
18:47:34 <pikhq> Does not quite work like this, actually.
18:48:11 <pikhq> Here's the linker's knowledge of LTO: it's passed a .so that should be loaded, and should have objects filtered through it.
18:48:23 <pikhq> And, also, that .so isn't even looking at the machine code blob in the objects.
18:48:39 <pikhq> It's looking at compiler IR that was shoved in the object files.
18:49:21 <pikhq> It's more-or-less just deferring optimization passes and code generation until all the translation units are available at once.
18:49:28 <elliott> i don't see much wrong with putting compiler logic in the linker, though
18:49:34 <elliott> if anything i'd rather there be less compiler logic in the compiler
18:56:55 <elliott> I wonder if Rust binaries are standalone enough to work as PID 1.
19:02:39 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: W: not found
19:05:08 -!- epicmonkey has quit (Ping timeout: 245 seconds).
19:07:53 <elliott> pikhq: Is poppler or mupdf better these days?
19:10:00 -!- FreeFull has quit (Quit: New tmux).
19:10:28 <Gregor> mupdf: The muppet defragmenter.
19:15:31 -!- FreeFull has joined.
19:19:17 <Sgeo> http://www.fileformat.info/info/unicode/char/1f648/index.htm
19:19:23 <Sgeo> Uh. The image they give seems to be wrong
19:21:41 <elliott> it's almost like the font they use doesn't have perfect unicode 6 coverage
19:25:06 <Sgeo> Aww, according to Wikipedia, Mayan symbols are not yet in Unicod
19:25:26 <Sgeo> Unicod. Universal fishing.
19:26:40 <Sgeo> Gregor, I don't count as being from #esoteric ? Or did I friend you?
19:26:56 <Sgeo> Also, I should figure out how to contact cpressey
19:27:23 <elliott> It's literally impossible to contact Chris.
19:28:06 <fizzie> Sgeo: There is, however, a tentative allocation for Maya hieroglyphs in the SMP roadmap: http://www.unicode.org/roadmaps/smp/
19:28:09 <Sgeo> I don't see an email address on his about page
19:29:08 <fizzie> Sgeo: I think it went something like so that you write "cpressey" in blood on a mirror at midnight, and then... something. Some chanting was involved.
19:29:49 <fizzie> Oh right, write it three times. Don't remember the other details.
19:32:05 <Sgeo> "And, because OpenZz thinks you are the input to a compiler, accumulating 10 of these errors will actually cause OpenZz to quit!"
19:32:19 <Sgeo> So you can have 9 syntax errors and OpenZz will not quit?
19:32:25 <Sgeo> That seems bizarre
19:33:19 <fizzie> I seem to recall some other compiler having a "more than K errors, giving up" rule too.
19:33:52 <fizzie> Though I don't know what "quit" means in that context.
19:34:31 <fizzie> I would've assumed "stops trying to make sense out of the file", as opposed to trying to report all errors.
19:34:38 <Sgeo> http://catseye.tc/projects/zzrk/README.markdown.html
19:36:03 <fizzie> Well, it sounds a bit like that, then.
19:37:04 <fizzie> Like doing -fmax-error=10 to gcc.
19:37:17 <fizzie> -fmax-errors=10, I mean.
19:37:57 <Sgeo> But surely an error is something that should make the compiler quit immediately?
19:38:49 <Sgeo> I don't know how often he comes in here, so don't know how long a @tell would take
19:42:59 -!- nooga has joined.
19:43:22 <fizzie> Sgeo: I think most compilers actually would instead read the whole file and try to report all errors at once, instead of quitting at the first, and that's what people actually want.
19:43:32 <elliott> Yes, gcc doesn't give up at the first error or anything.
19:43:33 <Sgeo> Ah, good point
19:43:42 <fizzie> There's the whole field of error recovery in parsing to make that possible.
19:45:20 <fizzie> But there was some tool with a finite default to '-fmax-errors'-like behaviour, I just can't remember which it was. The error message was mostly neutral, but there was a slight hint of disparaging the programmer.
19:45:39 <fizzie> The limit was something like 500 or 1000 errors, after all.
19:47:23 <fizzie> GCC just says "compilation terminated due to -fmax-errors=2." which is kind of boring.
19:47:26 <Sgeo> disparaging the programmer made me think INTERCAL, but I'm sure it would have a lower limit
19:49:09 -!- ais523 has joined.
19:49:17 <fizzie> No, this was some "serious" tool.
19:49:51 <fizzie> Oh, I'm probably just thinking of Valgrind's "go fix your program" message.
19:50:17 <fizzie> ==21573== More than 10000000 total errors detected. I'm not reporting any more.
19:50:20 <fizzie> ==21573== Final error counts will be inaccurate. Go fix your program!
19:50:30 <fizzie> That thing. It doesn't even quit.
19:50:59 <fizzie> Or at least mingling that message and the as-yet unidentified compiler.
19:51:45 <ais523> Valgrind's "go fix your program" is quite confusing
19:51:56 <ais523> given that 10 million errors can happen very quickly, and often stem from the same cause
19:52:05 <ais523> btw, I just received spam saying I'd been successfully unsubscribed
19:52:13 <Sgeo> "This seems difficult at least, and not really necessary if we're willing to forego writing "Hunt the Wumpus" in Burro"
19:52:15 <ais523> my guess is it's angling for replies asking wtf is going on
19:52:23 <ais523> which would confirm the address as genuine
19:52:31 <Sgeo> Aww, I wanted to write Hunt the Wumpus in Burro
19:52:36 <Sgeo> (note: not really)
19:52:37 <ais523> also, which one's Burro?
19:52:45 <ais523> I'm sort-of losing track of all the esolangs we have nowadays
19:52:58 <Sgeo> Brainfuck-like where every program has an antiprogram that when concatenated to the program results in a no-op
19:53:12 <Sgeo> http://catseye.tc/projects/burro/doc/burro-1.0.html
19:53:47 <ais523> I remember talking to cpressey about it, because there was a mistake in it
19:54:31 <fizzie> JScript .NET has a syntax error "JS1197: Too many errors", but I'm sure I haven't used that.
19:55:28 <Sgeo> ais523, how do I contact cpressey, there's a mistake in his REDGREEN implementation, I think
19:56:02 <fizzie> Oh, and Apple MPW C has "Too many errors on one line (make fewer)".
19:57:40 <Sgeo> <bb'> ≡ <e> ≡ <>
19:57:52 <Sgeo> That line should NOT have confused me as much as it did, even if it was only for seconds
19:58:17 -!- kinoSi has quit (Read error: Connection reset by peer).
19:58:44 -!- kinoSi has joined.
20:01:19 <Sgeo> ais523, Burro question: Is it mandatory to have a / inside (), or can you have (e) and no / in there
20:02:01 <ais523> I think you'd need a / or a \ because otherwise it wouldn't make sense
20:02:24 <ais523> fizzie: I'm pretty sure I've used compilers that stop at a configurable number of errors, with "error: too many errors"
20:02:42 <ais523> I think it's because they have bad error recovery and errors after the first few don't actually make sense anyway
20:02:47 <ais523> or else that they fear a lot of duplicates
20:03:17 <fizzie> ais523: So am I, but I can't remember which ones they were. (GCC has an option for it too, but it is off by default.)
20:04:08 <ais523> hmm, Borland C++ 4, perhaps
20:04:13 <ais523> the compiler I grew up with
20:04:23 <Sgeo> ais523, is there a way to contact cpressey?
20:05:00 -!- Phantom_Hoover has joined.
20:07:14 -!- Phantom__Hoover has quit (Ping timeout: 255 seconds).
20:08:28 <ais523> Sgeo: I think he has an email address
20:08:48 * Sgeo is having trouble finding it
20:09:05 <ais523> does the email link on his userpage work?
20:09:12 <ais523> actually, probably not, given how often catseye moves
20:10:01 <Sgeo> Oh hey REDGREEN is on Github
20:10:06 <Sgeo> I could just do something there
20:10:27 <fizzie> They seemed to have identical commits.
20:10:47 <fizzie> It smells like some kind of an automatic thing to have both.
20:11:32 <ais523> you can commit to multiple repos
20:11:45 <ais523> the fact that they're different DVCSes shouldn't matter
20:12:32 <Sgeo> Do I just gratuitously add myself to the comment at the top of the file in my fork, or just make the change?
20:13:18 <fizzie> ais523: Oh, Bitbucket also supports Git? I thought they only did Mercurial.
20:14:20 <fizzie> In which case there would have needed to be some kind of a thing, or a person doing all commits twice with the same messages and so on.
20:15:37 <fizzie> By "thing" I mean something like that hg-git that people use.
20:16:53 -!- hagb4rd has quit (Quit: hagb4rd).
20:17:09 <Sgeo> "Sgeo opened this pull request in a few seconds
20:17:15 <Sgeo> You know, I should probably test it...
20:17:57 -!- ogrom has quit (Quit: Left).
20:18:09 -!- pikhq_ has joined.
20:18:28 -!- pikhq has quit (Ping timeout: 248 seconds).
20:19:45 <Sgeo> "Madison, a Term-Rewriting Proof-Checker"
20:19:56 <Sgeo> Misread that as time-travelling proof-checker
20:20:27 <Arc_Koen> "let's travel back in time to check if fermat really had a proof"
20:20:49 <Arc_Koen> (that's probably gonna be very disappointing)
20:21:46 -!- atriq has joined.
20:23:24 <Sgeo> fungot needs to be rewritten in Flobnar
20:23:25 <fungot> Sgeo: you'll be doing summer homework. *then* i can come up with a good solution
20:25:36 <Sgeo> Hmm. So Flobnar is more functional than Befunge?
20:25:51 <Sgeo> I'm trying to understand the distinction between a moving IP and "evaluate what's over there"
20:28:07 <atriq> "Evaluate what's over there" has a sort-of intrinsic "move back and do the next thing afterwards"
20:28:31 <Sgeo> The arithmatic stuff helps me understand
20:29:54 <fizzie> There is currently no text in this page. :/
20:30:10 <elliott> - This frequent relocation of our web address was done specifically to
20:30:11 <elliott> - please [[Phantom Hoover]].
20:30:21 <Sgeo> "(And it's not implemented yet, but never mind that.)"
20:30:31 <elliott> Phantom_Hoover: http://catseye.tc/node/Phantom%20Hoover.html
20:32:05 <Sgeo> Blah, I think the introspection and self-modification should perhaps use relative coordinates
20:33:15 -!- jiella has joined.
20:33:22 <atriq> And so mysterious!
20:33:37 <Phantom_Hoover> never did i think i would rub shoulders with douglas hofstadter
20:33:50 <Phantom_Hoover> i wonder if he'll lend me some of his harem of beautiful french women now
20:34:16 <Sgeo> Maybe I should have opened an issue than just issue a pull request
20:34:21 <atriq> Harems are overrated
20:35:46 <Sgeo> What is Befunge-93's :
20:36:12 <atriq> Duplicate, I think
20:36:58 <atriq> One of my friends hates me in her sleep
20:37:29 <fizzie> (At least that's always been my personal logic for it.)
20:38:46 <atriq> I'm kind of bored right now
20:39:07 <Phantom_Hoover> see, if you had a harem of beautiful french women you wouldn't be bored
20:39:12 <fizzie> !befunge "!olleh">:#,_@
20:39:42 <atriq> Phantom_Hoover, you're forgetting two things
20:39:54 <atriq> And I don't speak French
20:40:16 <atriq> Beyond "Ou est le W/C? Je voudrais une baguette!"
20:42:19 <olsner> hmm, I think I need new glasses
20:42:29 <Sgeo> I think that would make sense, but not sur
20:42:43 <fizzie> Yes. Well,it has a 0 on stack at @.
20:43:44 <Sgeo> But $ pops the stack
20:43:56 <fizzie> Yes, but only one of the 0s pushed by :.
20:44:00 -!- Phantom__Hoover has joined.
20:44:09 <Sgeo> Should the stack be considered to have an infinite number of 0s?
20:44:52 <fizzie> If you like. Poppig an empty stack yields 0.
20:45:38 <fizzie> The spec (at least 93) isn't explicit about ':' on empty, but pushing two 0s is I believe most common.
20:45:39 <Sgeo> The example cat program
20:45:42 <atriq> Phantom__Hoover, you've cloned yourself!
20:45:52 <Sgeo> Wouldn't that .. n/m
20:46:48 <fizzie> 98 seems to be explicit about :.
20:47:04 <fizzie> "pops a cell off the stack, then pushes it back onto the stack twice, duplicating it".
20:47:06 * Sgeo was talking Flobnar
20:47:20 <fizzie> Well, I haven't seen Flobnar.
20:47:27 <Sgeo> http://catseye.tc/projects/flobnar/doc/Flobnar.falderal.html
20:47:34 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
20:50:08 -!- atriq has quit (Ping timeout: 245 seconds).
20:52:08 -!- atriq has joined.
20:52:39 <fizzie> Ooh, that division by zero is funky.
20:52:58 <Sgeo> "Enter Velo, a vaguely Ruby-inspired scripting language which unifies strings with code blocks, and scripts with object classes."
20:54:48 <Sgeo> Well, partly like Tcl
20:55:17 -!- sivoais has quit (Ping timeout: 246 seconds).
20:56:46 -!- sivoais has joined.
21:21:47 -!- iconmaster has quit (Ping timeout: 255 seconds).
21:50:16 <atriq> Help I'm answering things on Stack Overflow badly
21:51:28 <atriq> Hey, I've got the Tumbleweed badge on Ask Ubuntu
21:51:46 <atriq> And I still have this problem
21:53:09 <nooga> i've spent my evening eating beef and drinking portuguese wine
21:53:17 <Sgeo> nooga, in Tcl, Everything Is A String
21:54:07 <pikhq_> nooga: This includes code.
21:54:25 <atriq> In Windows Powershell Strings Are Not Actually Strings
21:54:36 <nooga> what's windows powershell?
21:54:56 <atriq> Thingy included with Windows 7
21:55:05 <atriq> Supposed to replace CMD.EXE or whatever
21:55:53 <nooga> microsoft finally noticed that unixy OSes had a serious command line shell for, llike, 40 years?
21:56:08 <nooga> and tried to copy the idea?
21:56:28 <olsner> that and more and wrong, I think
21:56:34 <atriq> Tried to copy the idea and wrote it thinking that attaching hidden information to EVERYTHING was a brilliant idea
21:56:43 <olsner> but I've never used powershell so I don't really know
21:56:54 <nooga> i uess nobody ever used it
21:56:57 -!- atriq has changed nick to awesome.
21:57:05 <nooga> even the, gah, windows sever powerusers
21:57:10 -!- awesome has changed nick to atriq.
21:57:28 <Lumpio-> I used to answer stuff on stack overflow but I got bored when I got all the privileges :I
21:57:36 <Lumpio-> There's still badges but they're meh hard
21:58:25 <pikhq_> Powershell manages to be more verbose than you reasonably want in a shell.
21:59:06 <atriq> Today I actually tried to climb a building
21:59:22 <Lumpio-> It's C# with a funny syntax.
22:00:13 <Lumpio-> new-object Searcher::$search(call-static-method File::OfType("txt"))
22:00:18 <Lumpio-> Or something like that I don't know
22:00:40 <nooga> what a spectacular fail
22:01:24 <pikhq_> BTW, because both POSIX and common systems permit some massive brain damage, "echo *.txt|grep foo" does not quite do what you think it does.
22:01:48 <ion> http://thebestpageintheuniverse.net/c.cgi?u=youre_not_a_nerd
22:02:40 <Lumpio-> Ok here's an actual example
22:03:04 <Lumpio-> Actually I don't know how to search .__.
22:03:10 <Lumpio-> But here's how to open a log: $AppLog = New-Object -TypeName System.Diagnostics.EventLog -ArgumentList Application
22:04:07 <ion> pikhq: echo *.txt|grep foo seems to do what i thought it does.
22:04:29 <pikhq_> ion: Consider the file -n.txt
22:04:49 <Lumpio-> Solution: don't name files like that
22:04:54 <pikhq_> Or perhaps the file \n.txt (in C string notation "\\n.txt")
22:05:48 <ion> pikhq: That behavior is what i think it has. It’s not what i’d *hope* it had, but that’s another matter. :-P
22:05:51 <pikhq_> Lumpio-: Solution, smack whoever thought echo should be anything but int main(int argc, char**argv){for(int i = 1; i < argc; i++)puts(argv[i]);}
22:06:19 <nooga> atriq: was it a portable toilet?
22:06:23 <nooga> or something bigger/
22:06:29 <elliott> pikhq_: that does not solve the bigger problem at all
22:06:30 <pikhq_> (which, incidentally, remains a POSIX compliant echo.)
22:06:39 <atriq> I didn't get very far, though
22:07:04 <pikhq_> elliott: Nah, but it's *less* brain-damaged at least.
22:07:26 <pikhq_> 'Course, second you add spaces to your filenames, it breaks like crazy.
22:07:29 * ion kills the gazebo
22:07:31 <atriq> I got a couple meters off the ground before I realised that the column I was ascending led to a horizontal wall thing
22:07:33 <elliott> well why fix echo when there is also every other command with options
22:07:36 <elliott> pikhq_: btw that is not a compliant echo
22:07:38 <atriq> nooga, a SHOPPING CENTRE
22:07:47 <pikhq_> Oh, dur, puts does append newlines after everything.
22:08:30 <atriq> No, I did not climb ion
22:08:36 <pikhq_> int main(int argc, char**argv){for(int i = 1; i < argc; i++)printf("%s",argv[i]);puts("");}
22:08:56 <atriq> It was a leisure and retail complex
22:08:59 <nooga> i meant an arbour, not gazebo
22:09:07 <nooga> i'm not even sure what gazebo is
22:09:28 <atriq> A gazebo is like a tent on stilts
22:09:36 <elliott> main = fmap unwords getArgs >>= putStrLn
22:09:37 <pikhq_> elliott: Complaint echo does not have options, so what do you mean, "every other command with options"?
22:09:48 <atriq> Except without walls
22:09:55 <pikhq_> "Implementations shall not support any options." -- POSIX
22:10:08 <elliott> well i mean "echo *.txt" not doing the right thing compared to globbing with any command that accepts options
22:10:10 -!- Phantom_Hoover has joined.
22:10:11 <elliott> like cat *.txt or whatever
22:10:18 <elliott> and don't complain about cat's options or i'll just find a command with options you like :P
22:10:25 <elliott> pikhq_: btw echo *.txt actually works perfectly
22:10:25 <atriq> No, I did not climb an arbor
22:10:30 <atriq> Why would you even IMPLY that
22:10:36 <elliott> (of course spaces still mess it up)
22:10:55 <nooga> once I climbed an arbor
22:10:58 <ion> nooga: http://www.comedycorner.org/90.html
22:11:10 <pikhq_> The above actually works. Perfectly.
22:11:16 <nooga> an I was slightly drunk and then i fell because i was afraid of falling
22:12:13 -!- Phantom__Hoover has quit (Ping timeout: 246 seconds).
22:12:16 <elliott> if "cat -- *.txt" is an ok solution then surely "echo -- *.txt" is too
22:12:22 <elliott> i.e. the problem isn't actually that echo has options there
22:12:34 <pikhq_> Except echo does not support options. Not even --
22:12:40 <ion> Isn’t echo officially deprecated in the POSIX spec?
22:12:53 <pikhq_> I'm reading it. It is not deprecated.
22:13:32 <Gregor> The problem with the POSIX echo spec is that it doesn't match any existing implementation.
22:13:49 <elliott> it matches the one pikhq_ will write in one IRC line in three seconds
22:14:00 <ion> “New applications are encouraged to use printf instead of echo.” – echo(1posix)
22:14:14 <pikhq_> Gregor: POSIX-but-not-XSI echo does map very well to sufficiently old UNIX.
22:14:20 <nooga> ion: yeah, i was the Eric before a looked up the goddamn gazebo in my dictionary
22:14:29 <pikhq_> ion: That is informative text, not a statement of deprecation.
22:14:49 <Gregor> ion: That's not the same thing as deprecation.
22:14:55 <nooga> i wonder how's echo in Plan9
22:15:10 <pikhq_> Also, the 1posix man pages are not the spec, but a derivative thereof. :P
22:15:27 <shachaf> elliott: Fun fact: It's impossible to write echo for GHC.
22:15:32 <shachaf> A compliant echo, that is.
22:15:54 <ion> As an answer to your question: feel free to.
22:16:26 <pikhq_> Gregor: It appears to be POSIXly correct.
22:16:43 <pikhq_> Though it does handle "-n" as the first operand.
22:16:59 <ion> How about with -rtsopts=none?
22:17:22 <shachaf> ion: z: RTS options are disabled. Link with -rtsopts to enable them.
22:17:22 <pikhq_> No translations, though, so it's not XSI at all.
22:17:30 <ion> shachaf: duh
22:18:44 <pikhq_> Also: int main(int argc, char**argv){for(int i = 1; i < argc; i++)printf("%s%c",argv[i],i==argc-1?'\n':' ');}
22:20:15 <shachaf> pikhq_: That doesn't print a newline for an empty command line.
22:20:17 <elliott> pikhq_: fails to handle printf failing
22:22:44 <Arc_Koen> I wonder what would happen if Kipple was working with queues instead of stacks
22:23:48 <shachaf> elliott: You forgot to mention the undefined behavior bit where it doesn't return 0.
22:24:05 <olsner> main doesn't have to return
22:24:20 <shachaf> Isn't that a C++-only thing?
22:24:22 <pikhq_> shachaf: In C99, if you reach the end of main you return 0.
22:24:25 <pikhq_> elliott: Fine. int main(int argc, char**argv){for(int i = 1; i < argc; i++)if(printf("%s%s",argv[i],i!=argc-1?" ":"")<0)return 1;return putchar('\n') != EOF;}
22:24:38 <shachaf> Or maybe "things that make any sense" land.
22:24:50 <elliott> pikhq_: makes assumptions as to what a return value of 1 means
22:24:58 <olsner> also known as "ancient C" land?
22:24:59 <elliott> perhaps you want EXIT_FAILURE?
22:25:17 <pikhq_> elliott: No. POSIX echo returns some value greater than 0 on an error.
22:25:32 <pikhq_> elliott: It does not have to have semantics other than being greater than 0.
22:26:29 <elliott> pikhq_: what if argv[i] is NULL? can that ever happen?
22:27:40 <shachaf> It even handles the argc == 0 case.
22:28:03 <fizzie> shachaf: No, it's not. It's initialized to 1 even if argc <= 1.
22:28:26 <Sgeo> "and even if Chris doesn't respond to your pull request for three or four years, at least your fork will be out there and available to anyone else who might be interested."
22:28:30 <fizzie> Oh, it was inside the loop.
22:28:31 <Sgeo> Hmm, is that particularly likely?
22:28:46 <elliott> Sgeo: yes. chris hates pull requests. and the web.
22:28:59 <elliott> he quit IRC because he refuses to use any other protocol but ssh and gopher.
22:29:04 <elliott> this is also why he cannot be contacted
22:29:40 <elliott> pikhq_: anyway I guess that might be valid
22:29:48 <shachaf> I bet it's still not compliant.
22:30:03 <elliott> it seems fairly airtight though
22:30:10 <elliott> i was tryign to think of overflow behaviours with argc but that seems ok too
22:30:23 <shachaf> Wait, which echo specification are we talking about here?
22:30:38 <Sgeo> All of them. Simultaneously.
22:30:53 <olsner> POSIX echo is boring though, judging by the echo(1posix) man page
22:30:55 <pikhq_> http://pubs.opengroup.org/onlinepubs/9699919799/utilities/echo.html
22:31:17 <shachaf> Oh, part of that spec is XSI.
22:31:18 <pikhq_> -n as the first operand is implementation-defined, as are instances of backslash in the operands.
22:31:32 <pikhq_> And I define them to be "they are treated as ordinary strings".
22:31:40 <elliott> pikhq_: looks like you have to deal with locales
22:31:45 <elliott> given ENVIRONMENT VARIABLES
22:32:25 <fizzie> Not if you have no diagnostic messages.
22:32:34 <pikhq_> elliott: I do so correctly, by having no diagnostic messages.
22:32:45 <shachaf> "Determine the locale for the interpretation of sequences of bytes of text data as characters (for example, single-byte as opposed to multi-byte characters in arguments)."
22:32:54 <elliott> shachaf: yes but that's XSI :(
22:33:13 <elliott> seems like this is more likely to be an invalid C program than non-compliant with the POSIX spec
22:33:29 <shachaf> Well, you need #include <stdio.h>
22:33:33 <shachaf> But I guess that was implied.
22:33:37 <pikhq_> I was taking that as read.
22:42:27 <pikhq_> int main(int a,char**b){int i=1;for(;i<a&&printf("%s%s",argv[i],i!=b-1?" ":"");i++);return i==b&&putchar('\n')!=EOF;}
22:44:20 <elliott> is continuing to printf after an error ok
22:44:38 <olsner> are you allowed to execvp("/bin/echo", argv)?
22:44:51 <pikhq_> olsner: No, because /bin does not need to exist.
22:44:59 <shachaf> I'm pretty sure that won't compile because argv isn't in scope.
22:45:39 <pikhq_> /bin/echo is not guaranteed to exist, nor is /bin.
22:46:12 <elliott> int main(int a,char**b){while(*b)printf("%s%c",*b,*b++?' ':'\n')>0||exit(1);}
22:46:46 <pikhq_> I'm pretty sure the argv vector is not NULL terminated.
22:47:02 <shachaf> argv[argc] == NULL is in the C spec.
22:47:14 <pikhq_> olsner: It is strictly conformant for all POSIX utilities to be shell builtins, and for the shell itself to not actually exist in the filesystem at all.
22:47:46 <shachaf> elliott: exit() isn't golf if you count the #include
22:47:54 <olsner> pikhq_: ah, that kills any exec-based solution
22:48:14 <Sgeo> I wonder if I should learn how to use yoob
22:48:24 <olsner> elliott: that only works if the shell is in the filesystem?
22:48:37 <olsner> or are you always able to exec sh?
22:49:00 <shachaf> elliott: Wait, what's your correct program?
22:49:10 <elliott> int main(int a,char**b){while(*b)printf("%s%c",*b,*++b?' ':'\n')>0||exit(1);}
22:49:25 <elliott> technically both mine and pikhq_'s programs are wrong
22:49:29 <elliott> because printf can print only some output sometimes
22:50:19 <shachaf> elliott: Yours is wrong because it prints argv[0]
22:50:59 <pikhq_> According to POSIX, all of the standard utilities must be executable via exec(), even if they are implemented as shell builtins.
22:51:06 <shachaf> Also doesn't handle the no argument case.
22:51:21 <pikhq_> Except the "special" builtins, which needn't be.
22:51:30 <shachaf> elliott: Oh boy, when you run your code with argc==0, it prints the environment!
22:51:44 <shachaf> (On Linux/glibc/etc., that is. It's undefined behavior, of course.)
22:51:55 <shachaf> Also if you fix the thing that makes it not even compile.
22:52:08 <pikhq_> So, it's valid to have the C compiler as a shell builtin, but a POSIX system must execute that shell builtin on exec("cc")
22:52:10 <elliott> is '\n' guaranteed to equal 10
22:52:37 <pikhq_> There are no charset guarantees beyond what characters must exist.
22:52:44 <elliott> shachaf: what makes it not compile
22:52:50 <shachaf> pikhq_: What about '\0' == 0?
22:52:54 <elliott> pikhq_: that's not true. 'a' to 'z' are required to be adjacent IIRC
22:53:08 <elliott> and i think '0'+n has to work?
22:53:09 <elliott> shachaf: is that not valid?
22:53:22 <shachaf> Instead of figuring it out I replaced it with an if().
22:53:24 <atriq> NAME FOUR FICTIONAL JAKES
22:53:27 <pikhq_> shachaf: You're handing a numeric literal there.
22:53:55 <pikhq_> shachaf: Which of course works. '\0' is (char)0
22:54:16 <shachaf> OK, but are there guarantees like 'a' != 0?
22:54:27 <pikhq_> elliott: *Very* certain '0'+n doesn't have to work.
22:54:36 <pikhq_> shachaf: Don't think so.
22:54:43 <elliott> pikhq_: i think you are wrong
22:54:45 <pikhq_> elliott: Heck, that's not even true of EBCDIC systems.
22:54:53 <elliott> I know there are some ordering guarantees
22:55:12 <pikhq_> Nor is 'a' through 'z' adjacency...
22:55:31 <shachaf> To specify an integer character constant containing
22:55:31 <shachaf> the two characters whose values are 0x12 and '3', the construction
22:55:31 <shachaf> '\0223' may be used, since a hexadecimal escape sequence is terminated
22:55:31 <shachaf> only by a non-hexadecimal character. (The value of this two-character
22:55:32 <shachaf> integer character constant is implementation-defined also.)
22:55:36 <shachaf> I didn't know that was in C89.
22:55:45 <shachaf> Implementation-defined, but still.
22:55:49 <pikhq_> Oh, 0 through 9 should be adjacent.
22:56:12 <pikhq_> There are no *other* ordering guarantees in POSIX.
22:56:49 <pikhq_> That is the only character with a fixed value.
22:58:35 <shachaf> pikhq_: What about the guarantee that if you order a copy of the POSIX spec, they'll send it to you?
22:58:39 <shachaf> I should hope that's a guarantee.
22:58:48 <pikhq_> (POSIX volume 1, 6.1 "Portable Character Set")
22:58:57 <pikhq_> shachaf: I don't think that's *in* POSIX.
22:59:07 <shachaf> It's still a POSIX guarantee, though.
22:59:18 <pikhq_> I said "guarantees in POSIX".
22:59:25 <olsner> ordering the spec should be undefined behavior
22:59:26 <Sgeo> Oozlybub and Murphy is great so far
22:59:27 <pikhq_> Not guarantees *about* POSIX.
23:02:29 <Sgeo> TRIVIA PORTION OF SHOW
23:02:29 <Sgeo> WHO WAS IT FAMOUS MAN THAT SAID THIS?
23:02:29 <Sgeo> A) RONALD REAGAN
23:02:29 <Sgeo> B) RONALD REAGAN
23:02:29 <Sgeo> B) RONALD STEWART
23:02:41 <Sgeo> ^^ in the Oozlybub and Murphy docs
23:02:55 <shachaf> Sgeo: What does that have to do with Clojure?
23:03:02 <olsner> the correct answer is D) CAPTAIN PICARD
23:03:29 <elliott> Sgeo: do you not "get" cpressey
23:03:55 <shachaf> elliott: WHAT IF!!! i do not "get" cpressey :'(
23:04:03 <shachaf> I don't even know who that is.
23:04:11 <elliott> shachaf: you don't get anything
23:04:13 <Sgeo> BURN THE BLASPHEMER
23:04:15 <elliott> cpressey is the only esolanger worth a damn
23:04:21 <elliott> well ais523 and oerjan too
23:04:27 <olsner> shachaf: http://www.catseye.tc/projects/oozlybub-and-murphy/doc/oozlybub-and-murphy.html
23:05:12 <olsner> hmm, that reminds me, I should start working on yonguilexiphonaugh some day
23:05:48 <ais523> elliott: cpressey is more prolific than me, and oerjan is more profound
23:06:17 <ais523> and AmBF/AmbiF (it has two official names) has really got me annoyed, because I'm still not sure if it's TC
23:06:23 <ais523> the only thing it's missing is arbitrary effect at arbitrary point
23:06:28 <elliott> I guess fizzie is good too for fungot
23:06:28 <fungot> elliott: did they make it easier to use than a keyboard.
23:06:29 <ais523> and you know how annoying /those/ things are to prove TC
23:06:43 <elliott> but every esolanger beyond that is unnecessary
23:07:00 <shachaf> elliott: It's a good thing I'm not an esolanger, isn't it?
23:07:28 <elliott> ais523: Is arbitrary effect at an arbitrary point even well-defined?
23:07:31 <elliott> I've always been suspicious of it.
23:07:34 <Sgeo> arbitrary effect at arbitrary point is what's needed for quineness, right? Or, well, providing arbitrary effect at arbitrary point is necessary for a proof of the existence of a quine to hold, in addition to TC
23:07:45 <Sgeo> Am I understanding correctly?
23:07:57 <ais523> but it's a good explanation to use for "I've been able to create two bignum counters in this with increment, decrement, and zero test and I'm /still/ not sure it's TC"
23:08:16 <ais523> elliott: I basically consider the TCness rules as not a mathematical definition but a heuristic
23:09:22 <ais523> elliott: anyway, this nondeterministic BF variant is definitely TC if you add conditional goto
23:09:26 <ais523> I'd explain to oerjan but he isn't here
23:09:51 <elliott> also the word I was thinking when I said "unnecessary" was actually "inessential"
23:10:06 <ais523> elliott: it's like BF, with a tape infinite both ways and bignum elements; and + does - instead half the time, and < does > instead half the time (and vice versa)
23:10:13 <ais523> (i.e. + and - are the same, and < and > are the same)
23:10:24 <elliott> ais523: is this on the wiki?
23:10:31 <ais523> I should probably add it some time but I'm lazy
23:10:42 <ais523> anyway, the name is /pronounced/ like "am BF" or "ambi-F"
23:10:48 <ais523> and it is spelled in such a way that you can't tell which it is, which is impossible
23:10:52 <ais523> so I'm having issues titling the page
23:11:07 <shachaf> ais523: What's the point of the "vice versa"?
23:11:12 <olsner> at least it's not spelled ///
23:11:45 <elliott> ais523: make it so that [ does ] half the time too
23:11:55 <shachaf> elliott++ makes a good point.
23:12:05 <ais523> shachaf: oh, I did get rid of , and .
23:12:07 <ais523> just forgot to tell anyone
23:12:14 <ais523> and that would make the thing even harder to deal with
23:12:23 <elliott> it doesn't harm semantics, right?
23:12:51 <shachaf> You can keep . as long as it does , half the time.
23:13:09 <ais523> but you can't distinguish between n and -n
23:13:26 <ais523> and above 2, can't distinguish between two numbers if they have the same parity
23:13:33 <ais523> so you couldn't actually construct anything coherent to output
23:13:43 <ais523> at least, can't non-destructively distinguish
23:13:49 <ais523> and any distinction would be probabilistic as-is
23:13:52 <elliott> ais523: make it normalise the output to what's observable, then
23:13:58 <elliott> take abs as first step, obviously
23:14:13 <ais523> you should probably make it output bits, actually
23:14:17 <ais523> just caring about 0 and non-0
23:14:18 -!- jiella has quit (Quit: Leaving.).
23:14:25 <ais523> you can construct 0 and ±1 trivially
23:14:34 <shachaf> ais523: Just base it on boof
23:14:36 <elliott> IMO use * and @ for +- and <>, I think some other derivative does that
23:14:37 <ais523> there's some doubt as to whether you can reliably construct ±2, and if it's useful to do that
23:14:52 <ais523> I guess we should work out the IPA for it
23:14:54 <ais523> and use that in the title
23:14:57 <shachaf> elliott: Why would you use @ for <>?
23:16:24 -!- atriq has quit (Quit: Leaving).
23:16:35 <shachaf> Does æ mean the thing which is pronounced as "ea"?
23:17:08 <ais523> shachaf: it's basically what English people do when trying to pronounce short "a"
23:17:37 <Arc_Koen> so i'm trying to run the example brainfuck program used on the Dbfi page to test the self-interpreter's speeds
23:17:47 <shachaf> Wait, "ambiguous" isn't pronounced like "and".
23:17:59 <ais523> are according to Wiktionary
23:18:03 <Arc_Koen> and I'm trying to run it in a brainfuck interpreter written in thue, itself ran in a thue interpreter in java
23:18:04 <ais523> and I pronounce them the same way
23:18:09 <ais523> how do they differ in your language?
23:18:16 <Arc_Koen> and well it's been running for almost two minutes now
23:18:21 <ais523> Arc_Koen: you can expect that to take a while
23:18:22 <shachaf> You = wiktionary = wrong :-(
23:18:35 <ais523> thue has an inherent O(n) slowdown
23:18:38 <Arc_Koen> I have no idea what that brainfuck program was supposed to do
23:18:41 <ais523> shachaf: so how do they differ in your accent?
23:18:48 <Arc_Koen> ais523: I thought this slowdown could easily be reduce
23:18:50 <shachaf> ais523: I'd pronounce the 'a' in "ambiguous" like the 'u' in "up".
23:19:11 <Arc_Koen> by making a thue interpreter that, instead of selectng rules randomly, would "sort" them
23:19:19 <shachaf> It might not quite be like that, but it's certainly not like "and".
23:19:23 <ais523> although pretty much any vowel can be pronounced as anything if you go looking around for weird accents
23:19:32 <ais523> Arc_Koen: you still have to see where the rules match
23:19:35 <Arc_Koen> that is, always trying to apply rules from the top of the rule list, and always placing the last rule used on top of the list
23:19:38 <shachaf> I might pronounce it that was for a long word like "ambiguity".
23:19:45 <olsner> I've said ambiguous in so many ways now that I've forgotten the right way to say it (if I ever knew any)
23:20:04 <shachaf> ais523: I might just be wrong.
23:20:08 <Arc_Koen> writing a system to try first where the last change has been made might be slightly more complicated
23:20:14 <olsner> (took about three tries to get there)
23:20:17 <ais523> Arc_Koen: so basically each interpreter step is proportional to the size of the internal state
23:20:21 <ais523> that's what causes the O(n) slowdown
23:20:26 <ais523> Thutu has the same problem for the same reason
23:20:27 <Arc_Koen> but still, the sorting rules thing would make it much faster I think
23:20:32 <ais523> despite running rules in deterministic order
23:20:53 <olsner> is that the best that can be done, or is that just because the thue interpreters are not very good?
23:21:07 <ais523> olsner: it's possible to optimise it in many practically useful special cases
23:21:10 <ais523> but not in general, IIRC
23:21:17 <ais523> Arc_Koen: sure, benchmarks rarely do
23:21:22 <ais523> unless you're running Crysis or something
23:21:25 <Arc_Koen> well technically it tried to print the number 11001010
23:21:48 <ais523> (note: I don't have a BF version of Crysis to check; Lost Kingdoms is normally considered the closest substitute)
23:21:51 <Arc_Koen> but I only implemented the result of the . operator for ascii values 10 and 32-126
23:21:56 <shachaf> ais523: Do you pronounce "ambiguous" like "America"?
23:22:03 <ais523> has anyone here actually completed Lost Kingdoms, btw?
23:22:24 <Arc_Koen> the thue interpreter in java seems to be pretty slow too
23:22:34 <shachaf> So you pronounce "america" with "æ"?
23:22:40 <shachaf> And you pronounce "and" with "æ"?
23:22:40 <Arc_Koen> (it allows me to see the internal state)
23:23:00 <ais523> I only really have one sort of short "a" for the starts of words
23:23:07 <Arc_Koen> but it does allow escaped characters in replacement rules, which is nice
23:23:46 <shachaf> ais523: You pronounce "and" like "america"?
23:23:59 <elliott> and an america start with the same vowerl
23:24:15 <ais523> shachaf: only the first vowel
23:24:18 <shachaf> "vowerl" is the British spelling of "vowel", right?
23:24:37 <ais523> shachaf: "er" for "e" in "vowel" is quite a common accent in the UK
23:24:43 <ais523> although I'd typically pronounce it as "vowl"
23:25:23 <shachaf> elliott: Just like "colour", right?
23:26:55 <ais523> huh, New York just banned soda
23:27:04 <copumpkin> I thought it only banned large ones
23:27:24 <Arc_Koen> what do you mean "banned soda"?
23:27:46 <ais523> basically shops aren't allowed to sell more than 16oz at a time
23:27:51 <shachaf> copumpkin: Rec is pretty nifty.
23:27:55 <ais523> sadly, I'm British, and as such am not entirely sure how much 16oz is
23:28:00 <ais523> how much is that in metric?
23:28:01 <lambdabot> newtype Rec a = InR { outR :: Rec a -> a }
23:28:04 <Arc_Koen> wasn't that "unless the customer asks"?
23:28:10 <copumpkin> shachaf: oh, the non-termination type
23:28:19 <shachaf> elliott: Can you use newtype P = InP { outP :: forall a. P -> a } to write Y?
23:28:21 <olsner> I thought 1 oz was about 30 grams
23:28:27 <shachaf> copumpkin: Yes. It's Curry's paradox.
23:28:32 <ais523> Conversion result: 473.2 mL (milliliters), assuming oz is US fluid ounces.
23:28:46 <Arc_Koen> I thought they just banned the "if the customer doesn't say how much they want, then they want a huge one" policy
23:28:49 <ais523> 350ml is about standard for a small bottle of drink in the UK
23:28:54 <elliott> shachaf: hey how do I define P in lambdabot
23:29:03 <ais523> which corresponds to 12oz
23:29:06 <Arc_Koen> for the record our previous president made up a tax on soda
23:29:12 <olsner> 50cl is the normal soda bottle size here
23:29:34 <elliott> @let newtype P = InP { outP :: forall a. P -> a }
23:29:36 <ais523> olsner: I've seen 50cl bottles too, but they're rarely used for soda
23:29:45 <shachaf> elliott: @let doesn't work that way.
23:29:48 <ais523> (although they'd be marked 500ml in the UK)
23:29:53 <elliott> @let newtype Test = Test Int
23:29:56 <ais523> bottles are 500ml indeed
23:29:57 <elliott> @let newtype Test = Test { test :: Int }
23:30:00 <ais523> but cans are more common
23:30:11 <ais523> mostly I see fruit juice in the 500ml ones rather than soda, though
23:30:18 <copumpkin> http://upload.wikimedia.org/wikipedia/commons/2/21/Double_big_gulp.jpg
23:30:24 <Sgeo> "Because using a built-in operation store in this way saturates it, it cannot be used again. Typically you want to make a copy of the store first, and use that, leaving the built-in store unmodified."
23:30:39 <Sgeo> I can imagine how bad things would be if a mainstream language was like that
23:30:43 <Sgeo> http://catseye.tc/projects/xoomonk/doc/Xoomonk.falderal.html
23:30:44 <shachaf> copumpkin: Pft. That cup is still smaller than the person holding it.
23:30:47 <olsner> according to this article the ban is for restaurants, "concession stands" and "other eateries"
23:30:59 <Sgeo> I'm sure badly written libraries and programs would saturate important stores
23:31:06 <ais523> anyway: fun fact: at the University, I can buy a 500ml bottle of carbonated water for 95p
23:31:13 <ais523> and I can buy a 2l = 2000ml bottle for 55p
23:31:24 <ais523> even from the same shop, I think
23:31:33 <ais523> I'm not 100% sure of the logic behind this
23:32:07 <shachaf> ais523: «'Only you MUST eat them both, if you buy two,' said the Sheep.»
23:32:13 <Arc_Koen> for a second there I thought 'p' meant 'pound'
23:33:41 <ais523> Arc_Koen: that'd be massively expensive
23:33:54 <ais523> and a dollar is usually somewhere between 60p and 70p
23:34:05 <ais523> although it's probably somewhere really different right now because the world economy is in a mess
23:34:31 <ais523> it's prety much where you'd expect it to be
23:35:04 <olsner> I somehow read p as cent
23:35:19 <olsner> I guess I forgot how england and america are actually different countries that just happen to speak the same language
23:35:30 <ais523> shachaf: which country's currency is that?
23:35:45 <ais523> olsner: and also there's a distinction between England and the UK
23:35:49 <ais523> which many Americans don't seem to realise at all
23:36:00 <ais523> (some of them catch on when you mention the existence of Scotland)
23:36:40 <olsner> ais523: yeah, I will never learn how that distinction works
23:36:57 <Arc_Koen> well my internal money converter is still using the values from my childhood: 1$ ~= 10f (french francs), 1€ = 6.56f, 1 swiss franc = 4f, and 1$ is slightly less than 1€
23:37:13 <shachaf> ais523: To be fair, even people who live in the UK are confused on the finer points.
23:37:19 <shachaf> ais523: Including elliott.
23:37:42 -!- monqy has joined.
23:37:54 <shachaf> elliott: Remember when I confused you by talking about the Isle of Man or something?
23:37:56 <ais523> shachaf: you can start a mindboggling flamewar by asking whether England is a country or not
23:38:05 <ais523> mindboggling because nobody's entirely sure of which side of the argument they're on
23:38:14 <shachaf> ais523: I'm with Rosencrantz.
23:38:24 <Arc_Koen> (and when thinking about it you get "10 is slightly less than 7" but those rates might come from different times so it's ok)
23:38:49 <shachaf> GUIL (leaping up): What a shambles! We're just not getting anywhere.
23:38:49 <shachaf> ROS (mournfully): Not even England. I don't believe in it anyway.
23:38:50 <shachaf> GUIL: Just a conspiracy of cartographers, you mean?
23:39:29 <copumpkin> I suppose Rosencrantz probably is too then
23:39:33 <ais523> I think the latest terminology is that the UK is a nation, or a state, and that England, Scotland, Wales are countries, and screw all the smaller constituents of the UK because classifying Northern Ireland is a political minefield and the other places are too small to bother with
23:39:36 <shachaf> copumpkin: Did you see R&G Are Dead?
23:39:41 <ais523> but I'm not convinced I agree with it
23:39:51 <copumpkin> I read it at some point and then watched a video of a performance
23:39:51 <shachaf> copumpkin: Well, he's in a box. Take that as you will.
23:40:54 <elliott> ais523: UK is a kingdom, obviously
23:41:04 <Arc_Koen> ais523: and where do you place Great Britain in all that?
23:41:05 <shachaf> ROS: We might as well be dead. Do you think death could possibly be a boat?
23:41:05 <shachaf> GUIL: No, no, no... Death is... not. Death isn't. You take my meaning. Death is the ultimate negative. Not-being. You can't not-be on a boat.
23:41:08 <shachaf> ROS: I've frequently not been on boats.
23:41:11 <shachaf> GUIL: No, no, no - what you've been is not on boats.
23:41:20 <shachaf> Arc_Koen: Great Britain has already been placed.
23:41:25 <shachaf> It's pretty solid where it is.
23:41:53 <Arc_Koen> shachaf: I was referring to ais523: I think the latest terminology is that the UK is a nation, or a state, and that England, Scotland, Wales are countries, and screw all the smaller constituents of the UK because classifying Northern Ireland is a political minefield and the other places are too small to bother with
23:41:54 <ais523> Arc_Koen: Great Britain is reasonably simple, it's a geographical term referring to an island
23:41:57 <ais523> it's a reasonably large island
23:42:05 <ais523> and it contains England, and most of Scotland and Wales
23:42:10 <olsner> "The 14 British Overseas Territories are under the jurisdiction of the United Kingdom, though they do not form part of it."
23:42:58 <nooga> what's the english name for that dash in ń character?
23:43:01 <shachaf> What about the Underseas Territories?
23:43:10 <Arc_Koen> so the UK is a state that contains countries... and the US are a country that contains states
23:43:17 <olsner> shachaf: they are secret and don't officially exist
23:43:29 <ais523> we don't have acutes in our own language, but we have a word for them so we can talk about them in other languages
23:43:40 <Jafet> They're at Lantis.
23:43:56 <ais523> nooga: we're not really used to seeing them on n, though
23:44:06 <ais523> mostly we use them to talk about French because the French are closest
23:44:09 <Arc_Koen> I'm beginning to learn dutch and they have acutes, though they seem to be saving them for onomatopoeias
23:44:13 <ais523> and we used to repeatedly have wars with them
23:45:01 <nooga> like... give me a second
23:45:10 <shachaf> There should be a modifier for silent letters.
23:45:23 <Arc_Koen> I'm pretty sure we have that in french
23:45:32 <olsner> shachaf: silent letters should simply be removed
23:45:36 <Jafet> That's so cliché, ais
23:46:15 <Arc_Koen> so ń alone is a whole syllable?
23:46:24 <Jafet> Silent letters are what they read in silent films
23:47:00 <nooga> it's platal nasal consonant
23:47:11 <nooga> it just sounds like ni in night
23:47:55 <olsner> maybe the sound isn't used in english at all
23:47:58 <Arc_Koen> "ghhh"? that's a weird way to pronounce an n
23:48:50 <nooga> http://en.wikipedia.org/wiki/%C5%83
23:49:24 <Arc_Koen> Ń (minuscule: ń) is a letter formed by putting an acute accent over the letter N.
23:49:45 <Arc_Koen> I'm so glad wikipedia can teach me those things every day
23:50:05 <olsner> seems it's the same sound as ñ in spanish
23:50:11 <nooga> http://en.wikipedia.org/wiki/File:Pl-kwiecie%C5%84.ogg
23:50:18 <nooga> olsner: yep, pretty much
23:50:37 -!- Phantom__Hoover has joined.
23:50:48 <nooga> ó is pronounced like Polish u, which is like english oo
23:51:31 <nooga> i think ś and ć do not exist in english
23:53:25 <nooga> we've also got ł,ż,ź,ą,ę and ł
23:53:46 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
23:54:01 <olsner> don't forget rz, sz and cz
23:54:12 <Arc_Koen> mind me if I go off-topic for just one second? - do you know of a brainfuck program I could feed my interpreter with to check for potential bugs? (instructions +-><[] are supposed to be working properly, instruction . works if the current cell is either 10 or 32-126, and instruction , is considered a no-op)
23:55:10 <nooga> brzeszczot -> knife edge
23:56:16 <nooga> chrząszcz brzmi w trzczcinie w strzebrzeszynie, to remind the most known tongue breaker
23:56:36 <olsner> let me guess, that's polish for "hi"?
23:56:50 <nooga> no, hi is cześć ;)
23:56:50 <Arc_Koen> hrm aren't we supposed to throw some vowels into that before even considering trying to pronounce it?
23:57:20 <Jafet> http://www.muppetlabs.com/~breadbox/bf/quine.b.txt
23:58:32 -!- kinoSi has quit (Read error: Connection reset by peer).
23:59:01 -!- kinoSi has joined.
00:00:43 <nooga> http://www.ivona.com/pl/?tk=C3b7IPvKHx ;D
00:01:12 <nooga> we've got all kkinds of sounds, from soft to harsh
00:01:43 <olsner> strzebrzeszynie sounded a lot easier than it looks
00:03:27 <pikhq_> It helps a bit that English already loads up on consonant clusters.
00:03:45 <pikhq_> Going from consonant clusters to more consonant clusters isn't too bad. :)
00:04:08 <Arc_Koen> nooga: what are the smurfs called in polish?
00:04:32 <Arc_Koen> their original name is "schtroumpf"
00:04:44 <pikhq_> "Strengths". 6 consonant sounds, 1 syllable.
00:05:10 <nooga> i would write this as sztrumf
00:05:16 <Arc_Koen> that's way too much consonants for french already, so I would have assumed polish would go further in that direction
00:05:44 <pikhq_> Arc_Koen: It's French, though. 75% of all letters in French are silent.
00:06:22 <nooga> rendeszvous -> randevu?
00:06:25 <pikhq_> I bet that's actually pronounced something like "sump"
00:06:36 <Arc_Koen> though in that case the only unnecessary letter is the starting s
00:06:54 <Arc_Koen> no, it's pronounced like english "shtroompf"
00:07:14 <olsner> it's belgian or dutch, isn't it?
00:07:16 <elliott> ais523: can you suggest a way to break my system
00:07:36 <pikhq_> olsner: In the French language, and from Belgium.
00:07:57 <elliott> ais523: I've been kind of flabbergasted after removing my separate ext2 /boot partition and putting it into my JFS / *and* converting my MBR partition table to GPT in-place with no recourse if it all goes wrong failed to break my system
00:08:02 <elliott> ais523: so I'm looking for some excitement
00:08:07 <nooga> dutch speaking french
00:08:19 <Arc_Koen> but since the smurf people use the word smurf to replace almost every words, so making a weird word like schtroumpf was part of the fun, I guess - and english smurf took that out
00:08:37 <pikhq_> elliott: Have you considered mastering a Freddie Mercury impression and touring rural southern US?
00:08:45 <nooga> i watched smurfs as a kid
00:08:57 <nooga> and we had this all word fun with that
00:09:00 <olsner> elliott: install windows
00:09:06 <pikhq_> Arc_Koen: Yeah, "Smurf" is utterly *mundane* for English phonotactics.
00:09:16 <nooga> smerfowe, smerfować, smerfetka, smerfastycznie & stuff
00:09:44 <Arc_Koen> nooga: this summer I was in germany for two weeks - in a biergarten (some kind of pub) the waiter addressed us in german, then english, then french, then dutch
00:10:08 <Arc_Koen> and I was so impressed until I realized he was probably simply belgian
00:10:21 <pikhq_> Arc_Koen: I doubt anyone here would fail to recognize "biergarten".
00:10:24 -!- javad3v has joined.
00:10:24 <elliott> pikhq_: what do you think I'm doing with my life
00:10:32 <elliott> olsner: that would be kind of hard, since windows only boots from gpt on uefi systems
00:10:35 <elliott> olsner: (for no apparent reason)
00:10:35 <olsner> Arc_Koen: did you have to try four languages before you were able to order a beer?
00:10:58 <Arc_Koen> olsner: no I think he was just showing off
00:11:02 <olsner> elliott: sounds perfect for making your computer not boot then?
00:11:14 <Arc_Koen> though the first biergarten I had a beer in I felt kind of insulted
00:11:16 <pikhq_> The transparent interpretation "beer garden" is actually a term in English that means "biergarten". :)
00:11:26 <elliott> olsner: well it has to be something that the documentation says will work
00:11:28 <elliott> and that I do apparently correctly
00:11:48 <Arc_Koen> I asked for three beers in german - the waiter answered in english - I answered back in english - then he switched to french
00:11:54 <pikhq_> elliott: Not getting discriminated against, clearly.
00:11:55 <javad3v> i wrote my own langauge called "navi" you should check it out
00:12:03 -!- augur has quit (Remote host closed the connection).
00:12:04 <nooga> try ogródek piwny for your beer gaden and suddenly it's not so apparent
00:12:07 <pikhq_> elliott: Nor imitating awesomeness.
00:12:14 <olsner> Arc_Koen: maybe you have a bad french accent
00:12:25 <olsner> (and an english accent to your german?)
00:12:45 <Arc_Koen> well I wouldn't be surprised if it was transparent that I was only pretending to know german
00:13:17 <Arc_Koen> but switching to french felt really bad, even though he probably just overheard me when I was talking to my friends
00:13:30 <javad3v> its not finished yet sorry. the onky acceptable phrases are "hey" and "listen". its a BF derivative
00:13:37 -!- augur has joined.
00:14:03 <Arc_Koen> in ocarina of time there's this place where navi would buzz if you walk over some stuff
00:14:18 <Arc_Koen> if you do it right she would start stuttering
00:14:18 <monqy> @seen Phantom__Hoover
00:14:43 <Arc_Koen> I spent almost an hour trying to keep her stuttering Hehehehehehehehehehehehehehey listen! the longest possible time
00:14:44 <pikhq_> Acarecrowa? Is this some weird transliteration?
00:14:51 <elliott> javad3v: does it have to be a bf derivative
00:15:21 <Arc_Koen> javad3v: why not make it stack-based or even queue-based instead of brainfuck
00:15:31 <Arc_Koen> or even tree-based, we don't have many tree-based languages
00:15:51 <javad3v> songi meant scarecrow im one my nexus7 and the keypad is coveri g up the textbox
00:15:56 <monqy> befunge derivative, lolcode derivative, hq9+ derivative, snack derivative, esme derivative
00:16:01 <Arc_Koen> Jafet: for the record your quine hasn't printed anything out yet
00:16:25 <pikhq_> Arc_Koen: What about a hashmap of stacks of queues of arrays of integers?
00:16:28 <javad3v> i literally wrote the language in 5 minutes
00:16:54 <monqy> as in wrote its specification or wrote an implementation or what
00:17:01 -!- nooga has quit (Ping timeout: 244 seconds).
00:17:24 <Arc_Koen> javad3v: if it's a brainfuck derivative people will probably be reading about it in 5 minutes then move to something else but if it's tree-based we're gonna spend a whole month talking about it
00:17:29 <javad3v> all i did was make a file reader and writer that would take in the brainfuck source code and translate each symbol into either hey or listen
00:18:07 <Arc_Koen> random thought: do we have a language based on raising and catching exceptions?
00:18:11 <javad3v> its not realkh a language i guess lol
00:18:19 <elliott> being written in five minutes is something common to almost every brainfuck derivative, yes
00:18:21 <Jafet> For the record, it's not my quine
00:18:50 <shachaf> elliott: (\x -> x x) (\x -> x x) is a quine, right?
00:19:23 <Arc_Koen> Jafet: the webpage says it's brian raiter's
00:19:30 <shachaf> elliott: But it reduces to itself!
00:19:49 <Arc_Koen> then it's probably an infinite loop
00:20:04 <shachaf> Every quine is an infinite loop if you run it ove and over.
00:20:47 -!- nooga has joined.
00:20:50 <Arc_Koen> well if your system is "reduce the initial expression as much as you can, and when you're done output the result"
00:21:00 <Jafet> It's a quine in the college bum's lambda calculus, where you only bother to do one reduction
00:21:45 <shachaf> Jafet: Eh. In the advanced version you don't do any reductions.
00:21:50 <Arc_Koen> ok well I guess I should switch to a faster thue interpreter
00:22:33 <shachaf> Is there an esolang called WVO?
00:22:42 <shachaf> There should be, so you could write a WVO Quine.
00:22:48 <javad3v> im probably going to make a navi derivative of java next...
00:22:57 <nooga> i'm struggling with peephole optimizer
00:22:58 <monqy> how are you going to do that
00:23:26 <javad3v> just translate reserved words into either hey or listen
00:24:27 <javad3v> anyone want to download mg binary complier? it literaly complies and runs binary
00:24:54 <Arc_Koen> ooh hey I have an idea for a brainfuck derivative
00:25:09 <javad3v> i wrote it in mgblolobogoblol or whatevr its called
00:25:15 <nooga> javad3v: what is your problem?
00:25:47 <shachaf> Lots of people make BF derivatives. How many people have made BF integrals?
00:25:48 <javad3v> umm i dont knoe are you talking aboug my grammar and w/e?
00:25:53 <Arc_Koen> it's exactly the same as brainfuck except + is replaced with "smurf", - is replaced with "smurf", > is replaced with "smurf", < is replaced with "smurf", . is replaced with "smurf", , is replaced with "smurf", [ is replaced with "smurf" and ] is replaced with "smurf",
00:26:34 <Arc_Koen> and now begins the very hard struggle to not make that a wiki page
00:26:36 <elliott> javad3v: what is mgblolobogoblol
00:26:52 <pikhq_> So, s/[\[\]><+\-.,]/smurf /g
00:27:06 <javad3v> whatevrr that language is thats named after a level in hell or whatever
00:27:15 <elliott> well he is obviously full of shit
00:27:20 <elliott> but it'd be nice to know exactly what he's full of shit about
00:27:25 <pikhq_> Which is a properly awesome esolang.
00:27:53 <nooga> *village idiot drools on you*
00:28:40 <elliott> javad3v: would you like to share your mgblolobogoblol compiler
00:28:48 <javad3v> someone should make an esolang thats a fucked up fortran called "4chan"...
00:29:20 <HackEgo> JAVAD3V: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
00:29:52 <elliott> javad3v: sorry but you have been mislead. this channel is actually about mysticism and spirituality.
00:30:08 <javad3v> oh well i know all about that too
00:30:34 <elliott> copumpkin: no, he's been, in the past, the abstract concept of the verb mislead
00:30:35 <shachaf> elliott: What about rivenicism
00:30:53 <javad3v> so how about that jesus guy?
00:31:30 <javad3v> i work at google just so you guyss know
00:31:38 <shachaf> What happened to the "your behavior is not conducive to the desired environment" message?
00:31:50 <javad3v> i programmed their autonomous car thing
00:32:19 <elliott> ais523: can you kick javad3v
00:32:31 <elliott> ais523: it would be ok if he was amusing but these are just boring lies!!
00:32:31 <javad3v> fuck no i cant esolang too
00:32:46 <elliott> ais523: 0/10 not entertained
00:32:46 <shachaf> I *am* the curiosity rover.
00:32:49 <monqy> i programmed a brainfuck derivative
00:33:14 <shachaf> 17:25 <shachaf> Lots of people make BF derivatives. How many people have made BF integrals?
00:33:16 <copumpkin> is the integral of your brainfuck derivative isomorphic to brainfuck?
00:33:20 <monqy> mine translates the word "hello" to brainfuck codes
00:33:27 <shachaf> I programmed jokes into copumpkin's mind.
00:33:33 <javad3v> woa wo wos know you limits
00:33:43 <Arc_Koen> shachaf: please don't repeat that too often, I'm probably not gonna sleep until I begin to find a way to make that have sense
00:34:07 <pikhq_> javad3v: Whoa, *nobody* can do calculus. :P
00:34:24 <nooga> he was always here
00:34:34 <shachaf> copumpkin: I'm not just sorry, I'm pathetic.
00:34:41 <elliott> qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
00:34:58 <Arc_Koen> or I've been misled by his comment "this is not how the alphabet works. good night"
00:35:00 <pikhq_> Our Lord Oerjan hath need to give obeisance unto the cycle of time
00:35:12 <elliott> qqqqqqqqqqqqqqqqqqqqqqqqqqqqqq q qqq qq
00:35:19 <monqy> javad3v: you broke elliott
00:35:24 <monqy> javad3v: plaese use your calculus to fix him
00:35:31 <elliott> im making the channel better
00:35:50 <monqy> javad3v: he thinks hes making the channel better but really hes not (he thinks that because hes broken because you broke him)
00:35:57 <shachaf> Q: Where does a general keep his armies?
00:36:04 <javad3v> okay tangent line of f(x) = 4x/x≥2
00:36:19 <monqy> elliott: feeling better?
00:36:38 <Arc_Koen> hum is the x≥2 in that formula some kind of boolean statement?
00:36:59 <Arc_Koen> though "four x divided by false" sounds very wrong
00:37:00 <shachaf> It's a troolean statement.
00:37:00 <javad3v> i was looking for the power of symbol but i got lazy
00:37:07 <shachaf> It's called troolean because it's always true.
00:37:15 <shachaf> copumpkin: Did you see my pun from before?
00:37:25 <elliott> javad3v: what's it like in virginia
00:37:46 <Arc_Koen> shachaf: I'm sorry I've only learned foolishean logic so far
00:37:53 <javad3v> lolololoolololololLoLOLOLo
00:38:07 <monqy> i missed it because my eyes are bad
00:38:13 <monqy> i'll ned you to point it out
00:38:26 <shachaf> 11:34 <ousado> I found this to be a very nice informal intro: "Some of the best things in life are free; and some are not. Truth is free. Having proved a theorem, you may use this proof as many times as you wish, at no extra cost. Food, on the other hand, has a cost. Having baked a cake, you may eat it only once. If traditional logic is about truth, then linear logic is about food"
00:38:32 <shachaf> 11:35 <shachaf> Unless you're Zeno.
00:38:35 <shachaf> 11:35 <shachaf> Zeno knew how to halve his cake and eat it too.
00:38:36 <javad3v> at least we have uva and tech in VA
00:38:51 <Arc_Koen> Jafet: well it still hasn't printed anything so I'm shutting it off
00:39:22 <javad3v> UVA is pretty good for comp sci
00:39:40 <elliott> ais523: you're talking in #acehack you can't hide
00:39:48 <elliott> ais523: come out of rehidement
00:39:59 <Arc_Koen> I'm afraid that "sqrt(2) is irrational" pun is on top of my best puns list and a cake that's not even lying is never gonna top that
00:41:10 <javad3v> sqrt of 2 is like 1.2 or something
00:42:21 <javad3v> my programming language programmes on a tree branch derivstive of the stack overflowing alu unit
00:42:52 <monqy> pff who would do it any other way
00:43:10 <shachaf> monqy: i do it indirectly :'(
00:43:54 <nooga> javad3v: http://www.docstoc.com/docs/35998870/Towards-the-Syn-thesis-of-Vacuum-Tubes < here's an interesting paper for you
00:43:59 <javad3v> my programms gomright to the stack on an extra-hytercenary exchange unit derivived from the alu
00:44:01 <nooga> i think you'll like it
00:44:51 <javad3v> nexus7 doesnt have flash so i csnt
00:45:37 <nooga> http://raisama.net/ufpr/tg/paper.pdf
00:45:49 <nooga> grab a pdf version
00:47:25 <javad3v> i already wrote a fully conciouss computer
00:48:39 <javad3v> what language was assembly written in?
00:48:46 <elliott> javad3v: do you realise how fucking dumb & stupid & unfunny you are
00:48:53 <nooga> i think that any AI would be more I than you, javad3v
00:48:57 <elliott> like i realise you are bullshitting on purpose and that me saying this probably counts as a victory to you
00:49:07 -!- ChanServ has set channel mode: +o ais523.
00:49:08 <elliott> i think you have to pay special attention to just literally how unconvincing you are
00:49:19 <ais523> let me read scrollback, sorry, I was somewhere esle
00:49:20 <elliott> you're really bad at trolling!!
00:49:21 <javad3v> because im bored and my program didnt work so i came here
00:49:38 <nooga> you'd pass a turing test
00:49:54 <javad3v> thanks man i appreciate it
00:50:02 <ais523> javad3v: well talking a load of nonsense isn't going to work very well, really
00:50:04 <nooga> Phantom__Hoover: stop :D
00:50:05 <elliott> Phantom__Hoover: i prepared a brick
00:50:07 <ais523> trolling can be fun to watch
00:50:12 <ais523> but only if it's done well
00:50:55 <ais523> most people who think they've done one well are wrong
00:51:07 <ais523> (I think I've done two well, but I may be wrong about that)
00:51:22 <javad3v> im in , that was already stated
00:51:28 <ais523> Phantom__Hoover: have you ever actually gone through with that threat?
00:51:41 <elliott> ais523: do you have any evidence he has ever /not/ gone through with it?
00:51:52 <javad3v> i live in the rotunda at UVA cause im the smartest one here
00:52:00 <elliott> ais523: people with bricks for brains rarely talk, after all
00:52:11 <monqy> javad3v: may i give you a trophy for being the smartest one here
00:52:15 <ais523> elliott: I'd think we might hear about it if he got arrested
00:52:21 <ais523> Phantom__Hoover: note that death threats are illegal
00:52:23 <elliott> ais523: that just means he's really good at it
00:52:27 <nooga> that says much about the UVA
00:52:51 <javad3v> they paid me $100000 more than harvard offered so i chose UVA
00:53:01 <ais523> it's sort-of implied, most people can't survive their brain being replaced
00:53:14 <ais523> javad3v: anyway are you here to be constructive? I unstealthed my ops for a reason
00:53:23 <elliott> "are you here to be constructive"
00:53:32 <ais523> elliott: I'm looking forward to the answer
00:53:36 <javad3v> yes i can here to talk about navi
00:53:38 <nooga> ais523: i think it wouldn't change much
00:53:48 <elliott> "truly my career of TROLLING is over"
00:53:49 <ais523> javad3v: note: the answer is supposed to be comprehensible
00:53:55 <Phantom__Hoover> javad3v, lemme guess, the commands are some permutation on 'hey' and 'listen'
00:54:00 <elliott> Phantom__Hoover: yes that is literally what he said
00:54:14 <elliott> Phantom__Hoover: you didn't know that though -- you just made a bf derivative o nIRC
00:54:18 <ais523> I really don't think the world needs that BF derivative
00:54:25 <elliott> Phantom__Hoover: i prepared a brick to replace your brain
00:54:29 <Phantom__Hoover> that's not a brainfuck derivative, that's a brainfuck substitution
00:54:36 <elliott> Phantom__Hoover: and those don't get brickbrained?
00:54:58 <javad3v> i have a brain the size of einstej
00:55:04 <shachaf> ais523: Death threats are illegal?
00:55:06 <nooga> hey listen brick brain translates to [+-]
00:55:07 <Phantom__Hoover> which is basically a continuous rain of alternating bricks and brains
00:55:14 <ais523> where Phantom__Hoover is
00:55:56 <javad3v> when youre through with me it will be the size ofmyours probably ohhh
00:55:57 -!- Vorpal has quit (Ping timeout: 276 seconds).
00:56:02 <ais523> [+-] doesn't do anything at all
00:56:49 <Arc_Koen> ais523: well technically it's a conditional statement "if the current cell is zero, carry on, otherwise get stuck here"
00:57:04 <ais523> Arc_Koen: I meant as a whole program
00:57:08 <nooga> ais523: could you please get rid of javad3v so we can get back to our nightly routine?
00:57:16 <ais523> nooga: our nightly routine isn't so useful
00:57:22 <ais523> but I don't think he's being useful anyway
00:57:32 <Arc_Koen> I think the original idea was that cells contain unspecified values
00:57:36 <ais523> it'd be nicer if he just left of his own accord, but I can kick him given that he clearly isn't being constructive
00:57:38 <javad3v> what language was assembly writte in? i must know
00:58:01 <ais523> javad3v: machine code, obvs
00:58:03 <Arc_Koen> and if it doesn't allow wrapping, then if the current cell is 255 it might set it to 254
00:58:12 <ais523> Phantom__Hoover: I could voice Gregor
00:58:17 <ais523> at least, I can't think of a good reason not to
00:58:32 <ais523> has he done something wrong?
00:58:35 <javad3v> what language was c written .
00:58:43 -!- ais523 has kicked javad3v not being useful.
00:58:56 <nooga> it's 6 PM in San Francisco
00:59:04 <nooga> why is not Gregor here
00:59:04 <elliott> ais523: if not being useful is a kick reason then boy howdy are my days numbered
00:59:12 <ais523> elliott: you're more useful than javad3v was
00:59:28 -!- ais523 has set channel mode: +v Gregor.
00:59:30 -!- ais523 has set channel mode: -o ais523.
00:59:31 <Arc_Koen> ais523: I'm not sure "obviously" is accurate here - most people wouldn't make a difference between assembly and machine code
00:59:49 <ais523> Arc_Koen: why not? they look pretty different, after all
00:59:54 <elliott> they are not the same thing
00:59:59 <shachaf> whois codu.org says Portland.
00:59:59 <nooga> shachaf: San Francisco is in the US, Gregor is in the US
01:00:01 <elliott> especially since most assemblers have things like structs and macros and
01:00:04 <ais523> also, asm is compiled and machine language is interpreted, usually
01:00:08 -!- javjav has joined.
01:00:08 <Arc_Koen> because most people wouldn't look at them in the first place :)
01:00:22 <elliott> javjav: we just had someone from virginia!
01:00:25 <elliott> whose name started with "jav"
01:00:31 <monqy> what a coincidence
01:00:47 <elliott> i didn't even look up javjav's ip
01:00:55 <Gregor> Yes, I'm in SFO. It is a good place to be.
01:01:07 <ais523> Phantom__Hoover: I'm in Birmingham
01:01:10 <nooga> javjav: just tell us
01:01:13 <ais523> I was trying to think of a creative lie
01:01:21 <Gregor> And it's 6PM on a Saturday, so I should be out having fun, but am instead here, alone in my apartment.
01:01:26 <nooga> javjav: how did you end up in here... and why?
01:01:27 <ais523> Phantom__Hoover: that is almost close enough to walk
01:01:35 <elliott> ais523: he wants to replace your brain with a brick
01:01:41 <elliott> he knows about your BF derivatives!!
01:01:43 <ais523> elliott: but my BF derivatives are actually good
01:01:53 <elliott> ais523: "At some point, I shall snap and everyone who has posted a stupid Brainfuck derivative (read: a Brainfuck derivative) to this wiki will have their brains forcefully replaced with a large brick."
01:01:58 <elliott> ais523: looks pretty unambiguous, friend
01:02:12 <javjav> i didnt post mine to thenwiki
01:02:21 <ais523> elliott: I could just meet him somewhere where there are plenty of people around
01:02:32 <ais523> when meeting someone you only know from the Internet
01:02:38 <elliott> ais523: i'll come to birmingham for irl intercal lessons as long as i can punch Phantom__Hoover
01:02:42 <Arc_Koen> I guess the real question is are there BRICKS around?
01:02:43 <Phantom__Hoover> perhaps i could charitably call them 'brainfuck variations'
01:02:44 <elliott> monqy: you'll come too right
01:02:49 <javjav> imdont get it, how are any of you being constructive??
01:02:49 <ais523> Arc_Koen: yes but they're mostly attached to buildings
01:02:56 <elliott> that's the big joke of #esoteric
01:02:59 <monqy> elliott: no im too busy doing monqy things
01:03:00 <elliott> none of us are ever constructive, ever
01:03:01 <Phantom__Hoover> elliott, aren't you trapped in the body of a 10-year-old girl
01:03:09 <ais523> elliott: I could be constructive right now
01:03:10 <javjav> but i was kicked for that
01:03:12 <elliott> monqy: how can anything be more important than irl intercal lessons with ais523
01:03:13 <ais523> I even have something to talk about
01:03:19 <ais523> javjav: you were kicked for just not getting the point
01:03:22 <elliott> javjav: no you weren't, you just said you weren't javad3v
01:03:23 <Arc_Koen> "I even have bricks to construct with"
01:03:26 <elliott> javjav: stop lying about being kicked
01:03:32 <Phantom__Hoover> you guys are so constructive i twitch when lecturers do proofs by contradiction
01:03:35 <elliott> it was javad3v that was kicked
01:04:23 -!- ChanServ has set channel mode: +o ais523.
01:04:24 <shachaf> Gregor: I didn't know you were in SF.
01:04:30 -!- ais523 has kicked javjav still doesn't get it.
01:04:39 <shachaf> Gregor: Are you a Haskell person? You should go to the bahaskell meeting next week!
01:04:49 <elliott> monqy: how about return PH's body at the irl intercal lessons
01:04:54 <Gregor> I'm not really a Haskell person. Not enough, anyway.
01:04:58 <Arc_Koen> o do you use the "still doesn't get it" field to explain the kick to us or to him?
01:05:18 <monqy> elliott: but how would i get there
01:05:21 <elliott> he uses it to explain it to the president
01:05:23 -!- unambiguous has joined.
01:05:24 <ais523> elliott: I'm happy to teach people INTERCAL any time I'm free, anyway
01:05:26 <elliott> who personally reviews every kick on irc
01:05:30 <elliott> ais523: gosh i wonder who this unambiguous person is
01:05:36 <elliott> ais523: please don't ban them it's really funny to see them keep trying
01:05:47 <shachaf> Gregor: Not enough as in you'd like to be more of one, or as in you have no reason to go to bahaskell?
01:05:47 <ais523> unambiguous: you are aware your IP is in your hostname, right?
01:06:04 <unambiguous> my name is scott and im from northen ireland
01:06:07 <ais523> elliott: actually I'm not entirely sure how to formulate the ban to affect only the correct people
01:06:18 <ais523> and it's at least starting to get slightly amusing
01:06:22 <Phantom__Hoover> unambiguous, unfortunately the only thing i hate more than brainfuck derivatives is northern ireland
01:06:52 <Arc_Koen> yes you're from northen ireland, you said that already
01:06:56 <unambiguous> im from eastern india, baghdad to be exact
01:07:00 <nooga> i'm going to sleep
01:07:08 <nooga> i will get back when things settle
01:07:17 <ais523> hmm, are there any actual irish esolangers (northern or republic)?
01:07:23 <Gregor> TIL: Baghdad is in India X-D
01:07:26 <ais523> nooga: how can you tell when to wake up?
01:07:34 <ais523> Gregor: just like Birmingham is in both the UK and the US?
01:07:42 <nooga> ais523: i said that i will get back
01:07:53 <elliott> nooga: come on, this is fun
01:07:57 <ais523> nooga: so you'll come back while asleep?
01:08:18 <Gregor> ais523: Yes, with the exception that the Indian one isn't real.
01:08:18 <nooga> i will wake up, eat breakfast, read the logs
01:08:19 <Arc_Koen> http://esolangs.org/w/index.php?search=guinness seems to imply there are no irish esolangers
01:08:23 -!- ais523 has kicked unambiguous you keep getting kicked for a reason.
01:08:25 <nooga> and then join the # again
01:08:59 <nooga> Arc_Koen: good one, a bit
01:09:31 -!- Steven86 has joined.
01:09:35 <Phantom__Hoover> http://esolangs.org/w/index.php?search=bomb suggests there are some northern irish ones though
01:09:49 <ais523> Phantom__Hoover: not funny
01:10:15 <Steven86> my favorite esolang has to be chef
01:10:42 <elliott> Phantom__Hoover: you're better than that
01:10:51 <ais523> `addquote <Phantom__Hoover> i did not aim for humour, merely offence
01:10:55 <HackEgo> 872) <Phantom__Hoover> i did not aim for humour, merely offence
01:11:06 <monqy> have we played the quotes game anytime recently
01:11:11 <monqy> maybe we could get steven's input
01:11:20 <Sgeo> What did Phantom__Hoover say?
01:11:21 <HackEgo> 153) <cpressey> < ais523> then running repeatedly until you get the right sequence of random numbers < ais523> and just completely ignoring the input <-- some people live their entire lives this way, i reckon
01:11:26 <HackEgo> 49) <GregorR> ??? <GregorR> Are the cocks actually just implanted dildos? <GregorR> Or are there monster dildos and cocks? <GregorR> Or are both the dildos and cocks monster?
01:11:27 <ais523> elliott: bonus points if 872 is one of the random ones
01:11:37 <Sgeo> Oh, connecting bombs to Northern Ireland?
01:11:56 <HackEgo> 490) <ais523> oerjan: I'm not imaginative enough to write truly great slash fiction
01:11:59 <HackEgo> 19) <bsmntbombdood> there is plenty of room to have two heads
01:12:00 <HackEgo> *poof* <Phantom__Hoover> i did not aim for humour, merely offence
01:12:01 <Gregor> wtf is the context of 49 X-D
01:12:07 <HackEgo> 470) <Patashu> Tomorrow's computer viruses will extend robotic arms from your computer to fiddle with the SD card to infect it!!
01:12:24 <Sgeo> ^welcome Steven86
01:12:25 <fungot> Steven86 : Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esote ...
01:12:25 <elliott> this channel is about feudal japan
01:12:34 <elliott> feudal japan and neopagan spirituality
01:13:00 <elliott> 19 is bad, but it's there to provide context to the following quotes
01:13:02 <elliott> ais523: you can kick him now
01:13:14 -!- ais523 has kicked Steven86 User terminated!.
01:13:26 <ais523> that's my client's default kick message
01:13:28 <HackEgo> *poof* <Patashu> Tomorrow's computer viruses will extend robotic arms from your computer to fiddle with the SD card to infect it!!
01:13:29 <ais523> and I never bothered to change it
01:13:37 <Sgeo> We need `unwelcome
01:13:47 <HackEgo> 148) <Gregor-W> You people. You people are so stupid. I'm making a SOCIOLOGICAL statement here.
01:14:16 <HackEgo> 846) <elliott__> i just hit enter b/c its easier than ctrl+a del
01:14:22 -!- nooga has quit (Ping timeout: 244 seconds).
01:14:24 <HackEgo> 521) <monqy> im hungary too...but cnnot eat until hours
01:14:26 <HackEgo> 48) <ehird> no Deewiant <Deewiant> No?! <Deewiant> I've been living a lie <ehird> yep. <Deewiant> Excuse me while I jump out of the window ->
01:14:27 <HackEgo> 217) <quintopia> vorpal: a lot of people in AK fly <Vorpal> quintopia, well getting a pilot cert is a lot more complex than a driving license :P <quintopia> being an AK resident is a lot more complex than a driver's license too
01:14:32 <ais523> btw, 153 is a programming technique I was seriously considering for /ˈæmbiːɛf/
01:14:32 <elliott> Arc_Koen: btw i think we do not have such a category
01:14:46 <HackEgo> 511) <Taneb> Maybe if you try diplomacy. <Taneb> Pointy steel diplomacy
01:14:48 <ais523> which is /so/ its official name, now
01:14:57 <elliott> i quite like 521 because it says hungary
01:14:57 <ais523> but that's how you write its official name down
01:15:04 <monqy> elliott: yes i meant 521
01:15:08 <HackEgo> 521) <monqy> im hungary too...but cnnot eat until hours
01:15:08 <ais523> elliott: btw, will that name work on the wiki? or will it cause similar problems to ///?
01:15:13 <elliott> ais523: thanks for reminding me that http://esolangs.org/wiki//// is broken
01:15:16 <elliott> ais523: well I can fix that
01:15:18 <elliott> it's just a configuration change
01:15:25 <elliott> but it requires admitting to myself that I'm never going to finish setting up mailman
01:15:31 <elliott> which requires emailing taral to tell him i can't do it
01:15:34 <Arc_Koen> elliott: well that was kind of a rhetorical question anyway
01:15:39 <elliott> which requires getting over procrastination + stress
01:15:45 <ais523> oh, I sort-of thought you were running the lists atm
01:15:46 <elliott> so probably it will happen in ten years
01:16:24 -!- encapsulated314 has joined.
01:16:26 <ais523> who is, then? still Taral, on a system that no longer exists?
01:16:46 -!- micrypt has left.
01:16:56 <HackEgo> ENCAPSULATED314: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
01:17:01 <elliott> encapsulated314: Hi! Welcome to the Esolang channel.
01:17:05 <elliott> encapsulated314: hello, this is a channel about esolangs
01:17:12 <elliott> encapsulated314: Hey, we have a wiki at http://esolangs.org/wiki/Main_Page!
01:17:15 <elliott> encapsulated314: hi there what's up
01:17:23 <monqy> encapsulated314: have you heard of the gret new language "navi" it's what we'vre been talking about
01:17:23 <elliott> encapsulated314: Good evening! This is a channel about esoteric programming language.
01:17:28 * Sgeo vaguely hopes that this isn't some person stalking me
01:17:33 <elliott> encapsulated314: What's up? Here we talk about esoteric programming languages!
01:17:34 <monqy> it's a brainfuck derivative with "hello" and "listen"
01:17:45 <ais523> monqy: have you ever actually played Ocarina of Time?
01:17:49 <elliott> encapsulated314: Hey, how are you doing? Here we talk about the new & exciting happenings in the world of esoteric programming languages!
01:18:10 <monqy> ais523: one time I got into the deku tree and got either stuck or bored
01:18:19 <elliott> monqy: that's my ocarina of time experience too
01:18:20 <monqy> ais523: or I started and got there and realized I didn't want to play it
01:18:26 <ais523> shachaf: I was going to wait for a random amount of time, and then kick him
01:18:29 * Sgeo has erm, heard of Ocarina of Time
01:18:34 <ais523> Phantom__Hoover: I was thinking more of the misquote
01:18:38 <monqy> I got further in majora's mask!!! all the way to uhh I forget what it's called
01:18:40 <elliott> ais523: hey, kicking me is immoral
01:18:44 <monqy> I think I got the compass in woodfall temple
01:18:59 * Sgeo has watched Legend of Neil, for what little that's worth
01:19:07 <elliott> monqy: all I remember about majora's mask is it had some realtime-based mechanic (related to the three days thing I think???) that really stressed me out
01:19:07 <ais523> monqy: the funny thing is that tatl, the navi-version in majora's mask, actually does have quite some character depth, and even development
01:19:14 <ais523> whereas navi is just a tutorial fairy
01:19:25 <ais523> elliott: yes, the world ends in three days
01:19:31 <ais523> you can reset the world
01:19:31 <elliott> monqy: I think it turned out I also misunderstood the mechanic as much more tight than it actually is
01:19:46 <ais523> and get a bit further due to accumulated knowledge, also items for some reason
01:20:02 <elliott> ais523: all I remember is a day seemed to go by awfully quickly in real time!!
01:20:15 <ais523> you can slow it down from the second cycle onwards
01:20:17 <elliott> ais523: so I was scared I wouldn't be able to win in time
01:20:17 <monqy> you can do a song to make days go by slower
01:20:23 <ais523> the first cycle is the only one with real time pressure
01:20:25 <elliott> I thought you just had to play fast!!
01:20:32 <ais523> and even then there's huge amounts of slack
01:20:48 <Phantom__Hoover> there are some sidequests that have to be completed in a single cycle
01:20:59 <ais523> if you're going to give people factual advice about Majora's Mask, please don't get things muddled
01:21:02 <elliott> I also had windwaker I think
01:21:04 -!- ais523 has kicked encapsulated314 User terminated!.
01:21:05 <elliott> but never played it much at all
01:21:11 <ais523> you have to repeat the notes to skip half a day
01:21:19 <ais523> playing it backwards slows it down
01:21:23 <elliott> other things that get you kicked in #esoteric: giving misleading information about zelda games
01:21:39 <Phantom__Hoover> hmm, come to think of it i think my basic problem with the zelda games was that when i played them i wanted to be playing a tes game
01:21:41 <ais523> elliott: it's more that if someone has proven themselves kickworthy
01:21:44 <ais523> you can kick them for any reason at all
01:21:58 <elliott> ais523: next time try kicking them as soon as they join before they say anything
01:22:02 <elliott> it'll be funny to see how they react the next time
01:22:14 <ais523> just didn't get the acronym
01:22:39 <ais523> it's also really badly broken, most of the games in it I mean
01:22:53 <ais523> such as the way in Morrowind that you can create potions that make you better at creating potions
01:22:57 <ais523> and go exponential with it
01:23:04 -!- obfuscatedC has joined.
01:23:39 <elliott> ais523: you can also walk on floating paintbrushes, I hear
01:23:52 <ais523> Phantom__Hoover: the silly thing is that that isn't even the fastest way to complete it
01:24:00 -!- ais523 has kicked obfuscatedC same person….
01:24:08 <Phantom__Hoover> everyone pretends it's all mystical and incomprehensible because it sounds cooler that wy
01:24:25 <elliott> ais523: or is that oblivion?
01:24:56 <Phantom__Hoover> there's a stat in both that affects your jumping height though
01:25:05 -!- IWontSayAWord has joined.
01:25:10 <elliott> ais523: you don't have to kick this one
01:25:20 <Phantom__Hoover> and in morrowind there are 3 unique scrolls that let you jump clean across the game world
01:25:41 <ais523> Phantom__Hoover: the difficulty is landing, right?
01:25:59 <ais523> (the developers put that in as a joke, but it turns out it is indeed possible to survive the landing)
01:26:32 <Phantom__Hoover> the stat affects your jumping height and the distance you can fall before taking damage
01:27:22 <Phantom__Hoover> so basically you can jump once, and after that it's just an elaborate way of committing suicide
01:29:07 * Sgeo wishes he knew for certain that the weird person repeatedly entering wasn't a particular person stalking him
01:29:24 <ais523> Sgeo: you have a stalker?
01:29:27 <ais523> actually, I can believe that
01:29:34 <ais523> but we think it's just a troll
01:29:42 <elliott> Sgeo: is your stalker in virginia
01:29:55 <elliott> btw said person is in the channel
01:30:04 <Sgeo> ais523, well, was being harassed on Facebook and via phone about a month or so ago. And no, not in Virginia
01:30:31 <elliott> their ip geolocates to virginia
01:32:25 <IWontSayAWord> im not a stalker im just bored as fuck /end break of rules
01:33:08 <elliott> ais523: kick IWontSayAWord for lying
01:35:48 <elliott> we're communicating in sign language
01:36:05 -!- Jafet has quit (Quit: Leaving.).
01:36:24 <monqy> i communicate exclusively in braille.
01:36:33 <monqy> if you put your finger on your screen hard enough you can feel the bumps
01:36:47 <elliott> monqy: i think that's just my finger hurting
01:36:49 <coppro> IWontSayAWord: Hey! Listen! Hey! Listen!
01:37:02 <elliott> im pressing but it keeps hurting
01:37:25 <coppro> ok, confirmed. he does speak navi
01:37:31 <monqy> have you tried using your other finger
01:37:46 <elliott> now they're both hurting!!! ow ow ow ow ow ow ow
01:37:54 <elliott> IWontSayAWord: it's great. the best countries are the ones i'm not in ow ow ow
01:37:58 <monqy> maybe it's your computer screen that hurts
01:38:11 -!- Phantom_Hoover has joined.
01:38:31 <elliott> monqy: it's my life...........
01:38:38 <monqy> im holding tab and watching the "Hoover" dance
01:39:06 <elliott> IWontSayAWord: ais523 lives in france with me
01:40:12 <shachaf> and shachaf is elliott and elliott is school
01:40:33 -!- ais523 has kicked IWontSayAWord User terminated!.
01:40:44 <ais523> elliott: sorry, I was busy in #nethack
01:40:47 <ais523> they just discovered a bizarre bug
01:41:06 <ais523> apparently wielding or offhanding a potion of blindness protects you from certain blinding effects
01:41:13 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
01:41:23 <elliott> ais523: that sounds sort of intentional
01:41:29 <ais523> my theory is that they were checking for worn blindfolds
01:41:33 <ais523> not worn potions of blindness
01:41:37 <ais523> and screwed up the check
01:41:52 <ais523> offhanding a potion of blindness protecting you from yellow lights makes no sense
01:42:01 -!- youguysaremean has joined.
01:42:06 <ais523> offhanded items, when you're not two-weaponing, aren't even being used in any significant sense
01:42:11 <ais523> elliott: can I ban him yet?
01:42:14 <ais523> or shall I just keep kicking?
01:42:16 -!- ais523 has kicked youguysaremean User terminated!.
01:42:28 <ais523> he's been using male names, though
01:42:32 <elliott> ais523: if it is too much work for you to kick then you can ban
01:42:34 <ais523> so if he's female he's really guarding his gender well
01:42:37 <elliott> it is sort of funny seeing them be so persistent though
01:44:27 <monqy> should maybe pointing him to stalker mode if he wants to watch the chat happen
01:44:35 <monqy> assuming he's sincere about being bored
01:45:28 <Phantom_Hoover> as Gregor has voice, there should be no real collateral
01:47:22 -!- Jafet has joined.
01:53:29 -!- Frooxius has quit (Ping timeout: 246 seconds).
01:54:10 -!- whitespacer has joined.
01:54:59 <Sgeo> monqy, shall I link?
01:57:12 <Sgeo> whitespacer, if you want to watch the chat without being in channel, you can at http://codu.org/logs/log/_esoteric/s
01:58:16 <Sgeo> I could say, but it's kind of mean.
01:58:33 <whitespacer> uuh its the internet dont be afraid be mean
01:58:42 <Sgeo> Honestly? The difference is that we won't have to deal with your presense in channel.
02:01:08 <elliott> whitespacer: qqqqqqqqqqqqqq
02:01:08 <elliott> whitespacer: qqqqqqqqqqqqqqqqq
02:01:09 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqq
02:01:11 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqq
02:01:13 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:15 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:17 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:19 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:21 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:23 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:25 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:27 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:29 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:31 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:33 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:35 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:37 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:39 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:41 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:43 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:45 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:47 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:49 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:51 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:53 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:55 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:01:56 <monqy> something about squeaky wheels, oiling
02:01:57 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:02:00 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:02:02 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:02:04 <elliott> whitespacer: qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
02:02:06 <monqy> whitespacer: i think elliott wants something from you
02:02:08 -!- ais523 has set channel mode: +m.
02:02:19 -!- ais523 has set channel mode: -m.
02:02:26 <monqy> it's like when a baby cries but it's elliott and q
02:02:37 <elliott> i was about to engage in polite conversation with whitespacer "trololololol" whitespacer
02:02:42 <elliott> <elliott> whitespacer: i see you use os x
02:02:44 <monqy> and you don't know if the baby wants food or diapers or what
02:02:55 -!- ais523 has kicked whitespacer User terminated!.
02:03:13 <elliott> ais523: would you kick oklofok for doing okokokokoko
02:03:18 <elliott> pretty sure this is unfair opping
02:03:25 <ais523> no, assuming he spelt it correctly
02:03:33 <ais523> I'd probably join in though
02:03:39 <ais523> and besides I didn't kick you
02:03:43 <ais523> I just +med the channel for a bit
02:04:03 <ais523> this is my usual response to botloops
02:04:07 -!- pleasehearmeout has joined.
02:04:09 <ais523> I don't see why I shouldn't do them when they involve humans
02:04:22 -!- ais523 has kicked pleasehearmeout that was 2 seconds.
02:04:22 <coppro> cocococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococococo
02:04:39 <ais523> probably a bit more than 2, actually
02:04:43 <ais523> took me a while to tab-complete the name
02:05:08 <ais523> that's how oko pyramids normally end
02:05:09 <elliott> (repeating history lines is cheating)
02:05:14 <ais523> you can keep them going for ages with history but that's cheating
02:05:35 <elliott> ais523: we need a bot that kicks people who fuck them up like in that other channel
02:06:35 <coppro> ok, what is actually the history of this oko thing?
02:06:49 <ais523> oklopol used to randomly say o a lot
02:06:58 <ais523> I still do it, but only when I remember, which is rarely
02:07:03 <ais523> because you can only do it as a non sequitur
02:07:09 <ais523> then people started following up with ok
02:07:21 <ais523> and then the original person would respond with okoko
02:07:24 <ais523> and you'd form a pyramid
02:07:35 <ais523> then it sort-of became a game to avoid screwing it up first, and you had to do all the typing by hand
02:08:15 <ais523> it also helps that the spelling of oklopol's name is somewhat fluid
02:08:25 <ais523> I think "oklopol" is the most common
02:08:32 <ais523> but you get oklofok and okopol and all that sort of thing too
02:09:52 <Sgeo> "Unlikely takes dependency injection to the logical extreme."
02:10:09 <Sgeo> Doesn't Newspeak try to do that, in an actually productive language?
02:10:25 <elliott> ais523: that isn't its origin btw
02:10:27 <ais523> Newspeak is a productive language? I thought it was designed to make it impossible to express traitorous thoughts?
02:10:31 <elliott> pretty sure solo okoing came firts
02:10:41 <elliott> at least there were large streaks of just one person doing it in that other channel
02:11:05 <ais523> only only vaguely remember it being mentioned
02:12:11 <Sgeo> ais523, http://newspeaklanguage.org/
02:13:00 <elliott> monqy: you should try!! it's fun
02:13:08 <elliott> also keeping a count is cheating i think
02:13:18 <monqy> i don't like that sort of game
02:13:30 <monqy> im playing a different game too
02:14:18 <monqy> it doesn't have a name
02:14:39 <ais523> elliott: is it traditional to say "fuck" after screwing it up?
02:14:44 <elliott> that's just me saying fuck
02:14:47 <Sgeo> I want to play but don't want to flood the channel
02:14:48 <elliott> b/c i'm frustrated at messing it up
02:15:04 <elliott> Sgeo: flooding the channel is part of the game
02:15:08 <elliott> it's ok because ais523 will just +m if he gets upset
02:15:09 <ais523> huh, there's nobody there any more
02:15:11 <elliott> and then only Gregor can play
02:15:33 <ais523> the channel was created for the purposes of being flodded
02:15:42 <ais523> and chanserv still seems to be maintaining it after all this time
02:15:43 <Arc_Koen> hum does the latest ocaml implementation have some mind reading stuff included?
02:15:50 <ais523> Arc_Koen: not that I know of
02:15:55 <ais523> if it does, let me know, it might be worth upgrading
02:16:04 <monqy> elliott: the game is just coq's standard library :[
02:16:13 <Arc_Koen> well I made a file named deque.ml to implement a deque module
02:16:37 <Arc_Koen> thing is I've never implemented a module before - I had no idea what I was supposed to do to compile another file using it
02:17:11 <Arc_Koen> and well hum I made another .ml file which referred to functions from the deque.ml, using the prefix Deque.
02:17:17 <ais523> Arc_Koen: oh it looks at the filename
02:17:24 <Arc_Koen> and I tried to compile it AND IT WORKED
02:17:30 <ais523> it'll even complain if you write a file with a filename that isn't a valid identifier
02:17:34 <ais523> although it'll compile it anyway
02:18:07 <Arc_Koen> but does that mean I don't need to say anything when compiling?
02:18:14 <Arc_Koen> it'll just find the other file by itself?
02:19:39 <ais523> if it's in one of the places it looks by default, yes
02:19:43 <ais523> I think the same directory is one of those
02:20:25 <Arc_Koen> though I think I'm gonna set most files to read only from now on
02:23:01 <Arc_Koen> oh, hmm, if I change something in deque.ml that doesn't seem to affect the compilation
02:23:26 <Arc_Koen> I guess it's using deque.cmo or deque.whatever from an earlier compilation
02:24:26 <elliott> Note: This config file is not supported by any currently shipping kernel version and is expected to be supported only in kernels >=3.7. It has been confirmed to be working in >=3.5.
02:24:29 <elliott> ais523: does this make any sense to you
02:27:59 <Sgeo> Wait, Unlikely classes only have one method?
02:28:53 -!- printercaller has joined.
02:30:42 <ais523> huh, I was pinged when he joined the channel this time
02:31:09 <ais523> elliott: is 3.5 shipping?
02:31:19 <ais523> I guess it means that they just implemented it and as such aren't supporting it yet
02:31:28 -!- ais523 has kicked printercaller that's more than a second.
02:31:46 <ais523> for some reason my stalkword on INTERCAL was triggering on every line he spoke
02:31:50 <ais523> because it matches the nick too, or something
02:31:57 <ais523> but it's hilarious that he made that mistake twice
02:32:26 -!- iactuallywasabou has joined.
02:32:27 <Sgeo> I thought it was because I pinged you in another channel
02:32:49 <ais523> but you don't say "hold on 1 sec" and then not react instantly within 1 second
02:32:52 <elliott> Sgeo: what other channel are they in
02:32:53 <ais523> we're excessively literal here, sometimes
02:33:10 <ais523> elliott: they aren't, rather Sgeo is in another channel and doesn't seem to realise PM exists
02:33:20 <ais523> and thus is spouting a sequence of non sequiturs there
02:33:40 <ais523> well, I could just ban you
02:33:40 <elliott> iactuallywasabou: it would actually be really really easy to ban you so you can't come back
02:33:46 <elliott> it's just more effort than you're worth, you know?
02:34:16 <elliott> too bad freenode has an open proxy scanner thing :'(
02:34:34 <ais523> also, 7 proxies is a meme
02:34:41 <ais523> which you should feel bad for spouting
02:35:06 <ais523> http://knowyourmeme.com/search?utf8=%E2%9C%93&q=behind+seven+proxies
02:35:18 <ais523> I was just hilariously amused at that utf8= parameter in the URL
02:35:36 <ais523> (it's an URLencoded UTF-8 encoded ✓)
02:35:59 <ais523> it looks like some sort of UTF-8 check except that wouldn't actually work
02:36:05 <ais523> so, I don't know why it's there
02:36:27 <ais523> you don't put easter eggs in the URL
02:36:34 <ais523> iactuallywasabou: there's room for 7 bans
02:36:42 <elliott> our ban list is totally full
02:37:47 -!- ais523 has set channel mode: +q iactuallywasabou!*@*.
02:38:00 <ais523> took me a while to remember that command
02:38:21 <elliott> he didn't even get the lyrics right. this is pathetic
02:38:21 <ais523> elliott: btw, check wiki recent changes :)
02:38:36 <ais523> I'll leave it up to you what to do with that edit, it's hilarious
02:38:55 <ais523> I suggest reverting it, but you might want to implement some degree of ban too
02:39:18 <elliott> ais523: maybe should just replace "ban" with "kick" to make it more accurate
02:39:22 <elliott> can't deny the completer asses part
02:41:22 <elliott> how about just readd "BE WARNED: The people here are completer asses."
02:41:36 -!- elliott has set topic: BE WARNED: The people here are completer asses. | http://codu.org/logs/_esoteric/.
02:42:20 <ais523> OK, /me approves of the topic
02:42:36 <elliott> what should we complete today is an unkind fashion
02:42:53 -!- DHeadshot has joined.
02:43:51 <ais523> <elliott> in 24 years I will be too old to deal with a million spammers coming back at once
02:43:53 <Sgeo> I could listen to this all day
02:43:54 <Sgeo> http://www.youtube.com/watch?v=cKqKrH0O9yg
02:44:10 -!- iactuallywasabou has quit (Quit: Page closed).
02:44:11 <Arc_Koen> Error: Error while linking superstack.cmo:
02:44:11 <Arc_Koen> Reference to undefined global `Deque'
02:44:14 <ais523> why do you think they'd all come back at once?
02:44:21 -!- ais523 has set channel mode: -q iactuallywasabou!*@*.
02:44:27 <Arc_Koen> who turned the mind-reading thing off???
02:44:42 <ais523> Arc_Koen: you need to list deque.cmo while linking too
02:44:46 -!- naviISGOD has joined.
02:44:59 <Arc_Koen> what do you mean "too"? I never did that before!
02:45:09 <elliott> naviISGOD: you realise you got un-muted right
02:45:13 <elliott> you didn't even have to make a new nick!
02:45:27 <elliott> ais523: http://esolangs.org/w/index.php?title=Esolang:Community_portal&curid=983&diff=34249&oldid=34248
02:45:55 <elliott> ais523: already dealt with tho
02:46:47 <naviISGOD> repeat following two steps while n != 0
02:46:52 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:47:10 -!- DHeadshot has joined.
02:47:15 <elliott> naviISGOD: btw you can still edit your user talk page at http://esolangs.org/w/index.php?title=User_talk:108.28.95.130&action=edit&redlink=1 to appeal your ban
02:49:45 <naviISGOD> then transmorgified that into navi
02:51:06 <naviISGOD> lololololololol Allen turing was GAy
02:51:37 -!- ais523 has kicked naviISGOD User terminated!.
02:52:00 <elliott> they are wasting so much time
02:52:07 <pikhq_> Makes me wanna fuck a dude.
02:53:01 <ais523> I just tried to ban them but screwed up the command
02:53:06 <ais523> so looks like they get another chance
02:55:13 <pikhq_> http://sprunge.us/DSET gzip: it's easy. (wheeee)
02:56:44 <pikhq_> elliott: You know you want to tell me I'm a terrible programmer.
02:57:28 <elliott> standards lawyering is hard on code that's more than a line long
02:57:59 <elliott> i find your omitting braces on that else clause with a braced if clause distasteful however
02:58:12 <elliott> also the use of lowercase in hex constants
03:01:32 <pikhq_> I wrote a (stupid) gzip compressor in less space than zlib's crc32. Is everyone bad, or am I just good?
03:02:17 <pikhq_> elliott: Actually, fast*er*. Though also worse.
03:02:31 <elliott> does it compress within an order of magnitude of zlib
03:02:41 <pikhq_> elliott: Depends on the input.
03:02:58 <pikhq_> shachaf: 425 lines of code for one of the simplest checksum algorithms.
03:03:01 <elliott> i would hazard a guess that maybe everyone else wants something more than run-length encoding
03:03:14 <pikhq_> elliott: I want it to be better.
03:03:28 <elliott> http://www.stillhq.com/gpg/source-modified-1.0.3/zlib/crc32.html
03:03:29 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:03:34 <elliott> this doesn't look like 425 lines of code
03:03:53 <pikhq_> https://github.com/madler/zlib/blob/master/crc32.c This is what I'm going off of.
03:04:12 <pikhq_> Huh. The older the zlib the more reasonable, eh? :P
03:04:47 <elliott> lots of those comments are comments or configuration stuff
03:05:11 <elliott> and optimisations (that may not be relevant in 2012)
03:05:51 <pikhq_> s/may not/almost certainly are not/ This is code with far pointer annotations.
03:06:17 <elliott> well the four-bytes-at-a-time stuff looks relevant
03:14:08 <pikhq_> CRC32 is an utterly minimal amount of the time here...
03:21:11 <Sgeo> far pointer annotations
03:22:40 <elliott> i bet it was less minimal in the 90s
03:23:12 <pikhq_> When zlib had less crc32 code. ;)
03:24:10 <Sgeo> "However, it is widely known that "REPEAT" loops alone are not sufficient for a Turing-complete language."
03:24:24 * Sgeo did not know that
03:24:40 <Sgeo> "The secondary design goal of ZOWIE was to strike the perfect balance between It's a Mad Mad Mad Mad World and The Party. It is generally considered a morbid failure in that regard, what with not being a madcap 60's movie and all."
03:24:49 -!- mig22 has joined.
03:29:45 <Sgeo> "When a value is written into R7, the boolean negation of that value is written into R7: 1 if the value was 0, and 0 otherwise. Reading from R7 always offers the value 7.
03:30:04 <Sgeo> I assume that that should say "written into R8"
03:31:19 <Arc_Koen> Sgeo: well I might be missing some context but if the only instruction a language contains is Repeat{ ... } then it's definitely not turing-complete
03:31:41 <Sgeo> http://catseye.tc/projects/zowie/README.markdown.html
03:31:43 <Arc_Koen> for one thing, this language actually doesn't have any valid program
03:32:40 <Arc_Koen> (unless the empty program is a valid program)
03:33:39 <Sgeo> "Many find the syntax for labels to be quite sumilar to that for identifiers. (Some even find it to be quite similar.)"
03:33:42 <Sgeo> http://catseye.tc/projects/quylthulg/doc/quylthulg.html
03:34:39 <Sgeo> "But you see what I'm getting at, don't you? Hopefully not."
03:38:34 -!- monqy has quit (Quit: hello).
03:38:42 <Sgeo> " It should be noted that there are at least three schools of thought on this subject.
03:38:42 <Sgeo> The first school (Chilton County High School in Clanton, Alabama) "
03:38:57 <elliott> are you quoting every spec chris has written
03:40:28 <Sgeo> Probably not, I don't think I can possibly read all of them
03:58:37 -!- kinoSi has quit (Read error: Connection reset by peer).
03:59:04 -!- kinoSi has joined.
04:00:54 <pikhq_> Hmm. Has kinoSi ever said anything?
04:04:52 <Sgeo> Hmm, there's a larabee language
04:04:56 <Sgeo> Any connection to Gregor?
04:05:25 <Gregor> I speak all languages.
04:06:03 <pikhq_> Gregor, glottal master.
04:08:41 <Sgeo> "(It should be noted that it was rougly at this point that Pressey reached one of the peaks of his so-called "referential" period, in which he was apt to provide "commentary" on his own work, in the form of interjections or asides, as if from the perspective of a historian from a much later era. Such pretentious interruptions were generally not well received, except perhaps by the occasional loser such as yourself.)"
04:22:26 <Arc_Koen> anyway it's almost 6:30 and I actually plan to go to bed *before* the time when I must get up so gnight
04:23:00 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
04:26:49 <elliott> Sgeo: any connection to gregor??
04:27:13 <shachaf> Gregor: How about Portuguese?
04:27:33 <Sgeo> elliott, Gregor sometimes goes by "Lawlabee"
04:27:47 <Gregor> shachaf: Portuguese is just Spanish with a funny accent, Spanish is just French with a funny accent, French is just Dutch with a funny accent, Dutch is just English with a funny accent.
04:28:25 <pikhq_> And Finnish is just Japanese with a funny accent.
04:29:52 <lambdabot> shachaf says: I think Dutch is just a parody of English.
04:29:58 <shachaf> I guess you're right about Dutch.
04:30:13 <shachaf> pikhq_: Finnish isn't a real language.
04:30:57 <pikhq_> shachaf: No, it's an accent of Japanese.
04:31:40 <Gregor> Polish with a funny accent.
04:31:55 <pikhq_> A language encoded in our DNA, that can only be accessed when sufficiently drunk.
04:32:08 <pikhq_> All drunk men speak Russian.
04:32:15 <shachaf> I,I given a sufficiently drunk compiler
04:35:56 <Sgeo> I keep finding typos in cpressey's documentation
04:36:06 <Sgeo> At least I assume they're typos
04:36:16 <shachaf> Remember the time when someone said something sensible in #haskell and then it turned out it was you?
04:42:02 <elliott> <pdxleif_> instance Functor BashVar n, maybe?
04:42:11 <elliott> shachaf: Are there really even more people who just make up answers?
04:42:15 <elliott> Than there used to be, I mean.
04:45:41 <shachaf> elliott: How can there be more than "all of them"?
04:46:32 <elliott> *Some* people don't just make up answers.
04:48:12 <shachaf> elliott just made up an answer right now!
05:15:00 -!- ogrom has joined.
05:15:09 -!- ogrom has quit (Client Quit).
05:32:05 -!- elliott has quit (Ping timeout: 248 seconds).
05:48:59 <Sgeo> Didigm is making me hate French.
06:11:06 -!- monqy has joined.
06:20:24 <Sgeo> Reading the Mascarpone spec
06:20:32 <Sgeo> I really like the naming of reify/deify
06:39:30 -!- iconmaster has joined.
06:43:18 -!- copumpkin has quit (Ping timeout: 245 seconds).
06:43:54 -!- copumpkin has joined.
06:44:02 -!- iconmaster has quit (Ping timeout: 255 seconds).
07:06:18 -!- ais523 has quit.
07:17:13 -!- DHeadshot has quit (Ping timeout: 245 seconds).
07:20:42 -!- atriq has joined.
07:30:12 -!- DHeadshot has joined.
07:43:21 -!- epicmonkey has joined.
08:34:07 * Sgeo looks up at logs, and realizes that the reify/deify thing still fascinates him. It has not stopped being a fascinating thing.
08:48:49 <atriq> Make it a thing/Make it a god
08:48:54 <atriq> I got deified once
08:50:21 <Sgeo> In Mascarpone, v (reify) pushes the current interpreter onto the stack, and ^ (deify) pops the interpreter from the stack and makes it the current interpreter
08:52:44 <atriq> Is Mascarpone the one with first class esolangs?
08:53:21 -!- nooga has joined.
08:54:01 <Sgeo> I don't think the spec called them "esolangs" as such, but that seems fair enough
08:54:09 <Sgeo> Just "interpreters"
08:56:15 <atriq> The world is quiet here
09:03:55 -!- atriq has quit (Quit: Leaving).
09:10:21 -!- kinoSi has left ("kill -TERM $").
09:32:46 -!- ogrom has joined.
09:40:22 <monqy> hi no to you too, sgeo
09:40:42 <Sgeo> The perils of tab-complete.
09:41:19 <Sgeo> Yes, that is not correct.
09:42:12 <Sgeo> ...having trouble finding the exact quote :(
09:43:52 -!- atriq has joined.
09:57:21 -!- ogrom has quit (Quit: Left).
10:02:23 <atriq> We've been infiltrated
10:06:09 -!- monqy has quit (Quit: hello).
10:14:37 <Sgeo> Hasn't been here for a while
10:20:59 -!- nooga has quit (Ping timeout: 246 seconds).
10:36:24 -!- Vorpal has joined.
10:36:55 -!- Jafet1 has joined.
10:37:39 -!- Jafet has quit (Ping timeout: 260 seconds).
10:39:54 -!- Jafet has joined.
10:41:14 -!- Jafet1 has quit (Ping timeout: 240 seconds).
10:44:06 -!- Jafet has quit (Ping timeout: 245 seconds).
10:48:41 -!- epicmonkey has quit (Remote host closed the connection).
10:51:05 -!- epicmonkey has joined.
10:52:43 -!- Phantom_Hoover has joined.
10:54:29 -!- epicmonkey has quit (Remote host closed the connection).
10:54:45 -!- epicmonkey has joined.
10:59:49 -!- monqy has joined.
11:25:43 -!- Jafet has joined.
11:27:38 -!- Jafet1 has joined.
11:29:56 -!- Jafet has quit (Ping timeout: 245 seconds).
11:32:19 -!- Jafet1 has quit (Ping timeout: 246 seconds).
11:35:37 -!- Jafet has joined.
12:12:46 -!- elcot_ has joined.
12:16:51 -!- elcot_ has left ("Leaving").
12:19:13 -!- monqy has quit (Quit: hello).
12:21:09 -!- Phantom_Hoover has quit (Ping timeout: 272 seconds).
12:24:24 -!- Phantom_Hoover has joined.
12:59:34 <ion> Meanwhile in Finland, http://lukijoidenkuvat.hs.fi/kuvat/uusimmat/90123/
13:06:55 -!- Jafet has quit (Ping timeout: 256 seconds).
13:13:09 -!- AnotherTest has joined.
13:14:23 -!- Jafet has joined.
13:55:33 -!- mig22 has quit (Quit: mig22).
13:56:16 <atriq> > let foo = fromMaybe <$> show <*> cast in [f 1, f (), f [1,2,3], f "Hello"]
13:56:18 <lambdabot> Ambiguous type variable `t' in the constraints:
13:56:34 <ion> http://www.youtube.com/user/redbull?v=MrIxH6DToXQ
13:56:37 <atriq> > let f = fromMaybe <$> show <*> cast in [f 1, f (), f [1,2,3], f "Hello"]
13:56:56 <atriq> The power of applicatives
13:56:57 <ion> @type cast
13:56:58 <lambdabot> forall a b. (Typeable a, Typeable b) => a -> Maybe b
13:57:18 <atriq> It detects if it's a string and shows it if it isn't
13:58:26 <atriq> Actually uses unsafeCoerce
13:59:56 <atriq> :t \x -> let r = if typeOf x == typeOf (fromJust r) then Just $ unsafeCoerce x else Nothing in r
13:59:58 -!- Jafet has quit (Quit: Leaving.).
14:20:23 -!- nooga has joined.
14:27:02 <nooga> what's completer ass?
14:28:41 <atriq> Am I the only person active both here and Tumblr?
14:41:32 <atriq> zzo38 and Gregor both seem possible Tumblrist
14:45:17 <Phantom_Hoover> the idea of any of those people having a tumblr is utterly alien to m
14:46:31 <atriq> I'm gonna register phantom_hoover.tumblr.com
14:46:53 <Phantom_Hoover> are you going to attempt to impersonate me for your devious purposes
14:47:08 <atriq> Tumblr doesn't like underscores
14:47:18 <atriq> I'll take Phantom-Hoover.tumblr.com instead!
14:48:36 <atriq> Maybe I'll reveal all the information I know about you
14:48:45 <ion> The jump’s beginning.
14:48:51 <atriq> Basically, you are from Edinburgh's new town and go to university in Coventry
14:48:58 <atriq> Which is ridiculous upload speeds
14:49:13 <Phantom_Hoover> they're only ridiculous compared to the download speeds
14:49:16 <atriq> Also, you hate brainfuck derivatives with a passion
14:50:21 <atriq> Well, the John Egbert cosplayer who hates me in her sleep... HAS MY GLASSES
14:50:36 <atriq> Maybe I'll just bash brainfuck derivatives
14:51:13 <atriq> But in such a way that it seems they're a perverse lust of yours
14:51:23 <ion> Filling the balloon will take quite a while.
14:51:51 <atriq> ion, are you talking about the guy who's jumping from a balloon?
14:51:57 <atriq> I filled some balloons yesterday
14:52:23 <Phantom_Hoover> what, you mean i have some kind of weird s&m thing with brainfuck derivatives?
14:52:29 <ion> atriq: yeah
14:52:34 <atriq> Phantom_Hoover, yeah
14:52:41 <Phantom_Hoover> although wait, are all lusts perverse from your perspective?
14:54:21 <atriq> Although my cunning facade will be weakened somewhat when people notice that taneb.tumblr.com and phantom-hoover.tumblr.com are held by the same account
14:56:38 <atriq> I'm actually seriously gonna do this
14:56:46 <Phantom_Hoover> like that time me and elliott registered the timeustestified account with a script
14:57:03 <Phantom_Hoover> (well, elliott wrote the script, i just ran it overnight for him)
14:59:06 <atriq> Do you still have it?
14:59:21 <Phantom_Hoover> in the end we gave it away to someone who turned out to be really boring
15:00:27 <Phantom_Hoover> oh my god they substitute the cursor and have sparkles on it and everything
15:09:59 <atriq> http://phantom-hoover.tumblr.com/post/33568447695/ugh-there-was-once-a-fish-called-fred
15:11:04 <atriq> Thank you very much
15:11:19 <Phantom_Hoover> also my day is now a little worse for learning about that language
15:11:37 <atriq> Refresh the tumblpost
15:12:44 <Phantom_Hoover> is that profile picture a photo of the new town from the castle
15:13:30 -!- Frooxius has joined.
15:18:27 -!- atriq has set topic: BE WARNED: The people here are completer asses. | http://phantom-hoover.tumblr.com/ | http://codu.org/logs/_esoteric/.
15:21:23 <ion> http://www.youtube.com/redbull will apparently display some flight data in the sidebar.
15:22:57 <atriq> Wow, I can be really reckless sometimes
15:29:40 <atriq> Yesterday I climbed up a building even though my friends were telling me not to
15:29:52 <mroman> Somebody apparentely is pissed about being banned for speaking :D
15:29:52 <atriq> Today I made a Tumblr where I pretend to be Phantom_Hoover
15:30:20 <mroman> Today I climbed up walls :)
15:36:10 <atriq> Today I've barely left my bedroom
15:36:29 <atriq> Meanwhile my glasses are in a shopping centre 23 miles away
15:36:38 <atriq> So distances I can't see so well
15:41:21 -!- elliott has joined.
16:01:08 -!- FreeFull has quit (Quit: Rebooting).
16:02:47 -!- FreeFull has joined.
16:47:01 -!- Arc_Koen has joined.
16:48:54 <Arc_Koen> in real life we name streets and erect statues after people who have done great things
16:49:21 <atriq> Like Grey Street and Grey's Monument in Newcastle
16:49:49 <Arc_Koen> on irc we write the channel's topic after someone whom we've just banned the previous day
16:51:24 <Arc_Koen> Phantom_Hoover: does your blog know about the right to reply?
16:51:35 <Arc_Koen> or about any other similar concept
16:53:09 <Arc_Koen> I'd like to advocate "There Once was a Fish Named Fred"
16:54:11 <Arc_Koen> first, it's not "There Was Once A Fish Called Fred", it's "There Once was a Fish Named Fred". At least name the thing right!
16:55:04 <Arc_Koen> note the completely arbitrary capitals which are part of that language's pittoresque
16:55:42 <Arc_Koen> second, your only critic of this language seems to be "It literally just replaces the commands of brainfuck with one of 8 words. Nothing more, nothing less."
16:56:04 <Arc_Koen> because there are SEVEN words!!!
16:56:25 <Arc_Koen> which is clearly something less
16:57:11 <Arc_Koen> so it's be cool if you could publish an erratum or something
17:02:20 <kmc> it sucks that the phrase "special case" has two opposite meanings
17:03:05 <Arc_Koen> as a non-native speaker I'd be glad to have more on that
17:04:28 <kmc> sometimes "foo is a special case of bar" means "bar generalizes foo"
17:04:38 <kmc> a square is a special case of a rectangle
17:04:53 <kmc> if you know how a rectangle works, you automatically know how a square works because it's just a particular type of rectangle
17:05:02 <kmc> but then sometimes it means that there is a special rule for foo
17:05:08 <atriq> kmc, you also need to know how a rhombus works
17:05:28 <kmc> which means that foo works differently from how you would expect based on how bar works
17:05:33 <kmc> so it's basically the opposite meaning
17:06:10 <Arc_Koen> that happens a lot when we're thinking too much logically
17:06:35 <Arc_Koen> atriq: no, if you're able to handle rectangles, you'll handle squares just fine
17:07:09 <atriq> Yeah, I was thinking of something else
17:07:25 <atriq> Arc_Koen, I'm gonna let you in on a secret
17:07:31 <Arc_Koen> you were thinking about the opposite meaning of "how a square works"!!
17:07:39 <atriq> Phantom_Hoover doesn't own phantom-hoover.tumblr.com
17:07:48 <Arc_Koen> if you write it here and it's logged it won't be a secret
17:08:07 <atriq> Read the logs for today
17:08:27 <kmc> atriq was just thinking contravariantly
17:08:40 <Arc_Koen> oh, that would most certainly explain why it reads "remove your brain and replace it with a brick" and not "force a brick into your brain"
17:09:11 <atriq> "At some point, I shall snap and everyone who has posted a stupid Brainfuck derivative (read: a Brainfuck derivative) to this wiki will have their brains forcefully replaced with a large brick."
17:09:17 <atriq> From Phantom_Hoover's user page
17:10:18 <shachaf> 10:31 <shachaf> cmccann: I like the part where «foo would just be a special case» could either mean that you implement unusual behavior for foo or that you don't.
17:12:26 <kmc> i'm glad you have also noticed thes
17:13:20 <Arc_Koen> different versions, same story
17:13:57 <Arc_Koen> I also had "a brick so large you will believe you actually are a small house" (or flying house)
17:14:11 <Arc_Koen> so i'm reading the logs from last night
17:14:21 <Arc_Koen> it turns out I was so tired I wasn't aware that other people were talking so much
17:14:35 <Arc_Koen> it's like there are five different story told at the same time and I only noticed one
17:15:16 <kmc> shachaf: what about 'existence proof'?
17:16:06 <Arc_Koen> <monqy> ais523: one time I got into the deku tree and got either stuck or bored
17:16:45 <Arc_Koen> (though in my case I was playing on a black and white tv and inside of the deku tree we're supposed to hit an underwater switch which was invisible in black and white)
17:18:00 <shachaf> kmc: It could either mean "proving that something exists without having a specific example" or "proving that something exists by providing a specific example".
17:18:14 <shachaf> Mathematicians mostly use it in the former sense, though.
17:18:42 <kmc> i just understand it to mean "proving that something exists"
17:21:27 -!- jiella has joined.
17:23:13 <kmc> i wonder if credit card companies have honeypot credit card numbers
17:24:08 <olsner> why would they need any, as long as they have customers?
17:26:51 <Arc_Koen> shachaf: then we say it's a non-constructive proof, don't we?
17:27:16 <Arc_Koen> like, you proved it existed, without building a particular instance
17:27:26 <kmc> they wouldn't *need* them, but it would be easy to do and would provide additional information about fraud that might be valuable
17:28:01 <elliott> Arc_Koen: non-contsructive proof doesn't really quite mean that
17:28:04 <Arc_Koen> Sgeo: what's this newspeak thing? I thought newspeak was a round in frc
17:28:07 <elliott> though they often coincide
17:28:24 <kmc> for example you could tell if someone at the CC company or at an affiliate (banks etc.) is selling numbers on the side
17:28:26 <elliott> Arc_Koen: fantasy rules committee? :p
17:29:02 <kmc> though you wouldn't detect numbers being stolen from legitimate merchants, which is probably the greater concern
17:29:10 <Arc_Koen> the theme was "design newspeak" or something
17:29:16 <elliott> Arc_Koen: oerjan used to play that, way back
17:29:32 <elliott> anyway newspeak is a fictional language from 1984 that both the frc round and the programming language reference
17:29:48 <kmc> doubleplus ungood
17:29:54 <Arc_Koen> and the first rule was something like "you should add a new modification to the english language every rule, and rules must follow all previous modifications
17:30:12 <Arc_Koen> he probably played that round, actually
17:30:30 <Arc_Koen> (like, one of the first fifty, or something)
17:30:36 <elliott> this reminds me i have to keep bugging oerjan to return to agora
17:30:38 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
17:31:04 <kmc> if I send a bunch of read requests to a Linux software RAID1 device, is the I/O scheduler smart enough to route them to component drives based on the angular position of each drive?
17:32:05 -!- ogrom has joined.
17:32:15 <Arc_Koen> <elliott> too bad freenode has an open proxy scanner thing :'(
17:32:47 <Arc_Koen> how does that work? I was assuming proxies were *designed* to be invincible or something
17:32:56 <elliott> i don't know how it works actually
17:33:22 <Arc_Koen> like, instead of sending an email to you, I send it to a robot which then sends that exact same email to you
17:35:03 <Sgeo> Well, if the robot understands a common way of asking it to send mail on people's behalf, someone could ask someone they received mail from to send mail on their behalf to see if it's really a robot
17:36:47 <Arc_Koen> so what would the scanner do then? just say "you've been identified as a proxy, so you're not allowed to be on our network"?
17:38:35 <Sgeo> Does Freenode allow Tor?
17:40:20 <fizzie> It has a Tor hidden service for that.
17:40:33 <fizzie> p4fsi4ockecnea7l.onion.
17:41:23 <fizzie> (irc.tor.freenode.net is a CNAME to it.)
17:42:21 <fizzie> A Finnish finance magazine had a short column on bitcoins; it mentioned how bitcoins are used for drugs, sex and violence "on the dark side of the Internet, called Tor", or something like that.
17:45:07 <Arc_Koen> atriq: so I just went through 18 hours of logs
17:45:27 <Arc_Koen> most of which were about that navi guy
17:45:39 <Sgeo> fizzie, Reddit flipped out some time ago about "the deep web" and how it simultaneously made up most of the Web and was a secret hiding place for things
17:45:46 <Arc_Koen> and in the end it turned out the phantom-hoover thing happended just before I logged in
17:46:40 -!- Frooxius has joined.
17:46:47 <Sgeo> Or was it "dark web"
17:47:01 <Arc_Koen> interestingly enough I haven't eat at all during those 18 hours so hum see you guys later
17:55:39 -!- ogrom_ has joined.
17:57:29 -!- ogrom has quit (Ping timeout: 255 seconds).
17:58:26 -!- ogrom has joined.
18:00:39 -!- ogrom_ has quit (Ping timeout: 255 seconds).
18:14:45 <kmc> the swan and paedo
18:15:34 <Arc_Koen> so what's with this baumgartner guy
18:17:39 <ogrom> let him land on red square.. then it's cool
18:19:09 <Arc_Koen> "welcome back to earth! we've been taken over while you were gone"
18:19:42 <Arc_Koen> or "you gained too much speed and broke the dimension wall"
18:20:00 <kmc> http://www.youtube.com/watch?v=lrBZeWjGjl8
18:26:44 <kmc> http://news.bbcimg.co.uk/media/images/63480000/jpg/_63480371_63480370.jpg
18:31:00 <Arc_Koen> I actually hardly know anything about the atmosphere - aren't there issues with pressure, like for scuba divers?
18:31:02 <Sgeo> :( why does JMOD want unrestricted access to my computer
18:31:08 <Sgeo> I'm lazy and said yes, but still...
18:32:01 <Arc_Koen> Sgeo: are you sure it's JMOD and not some malware sent to you by a stalker?
18:32:07 <Sgeo> Applet that plays MOD files
18:32:14 <Sgeo> Used on modarchive.org
18:32:21 <Sgeo> Currently happily listening to http://modarchive.org/index.php?request=view_by_moduleid&query=36405
18:34:53 <Sgeo> It's the song that was used in Fitznik (a game) and for some levels in Fitznik 2
18:35:47 <fizzie> grant { permission java.security.AllPermission; }; -- man, that's indeed quite some permissions.
18:36:38 <Sgeo> fizzie, hmm, is that actually a line somewhere? Where do you see it?
18:36:44 <Sgeo> I mean, except for the comment of course
18:37:09 <fizzie> The "java.policy.applet" file inside the jar.
18:37:11 <elliott> fizzie: Can you, like, write an IRC client for me?
18:37:26 <fizzie> There's also a command-line interface included, apparently.
18:37:35 -!- ogrom_ has joined.
18:39:58 <fizzie> And no, I can't. I'm always tempted to write one for me, but even if I one day did do that, it wouldn't probably be something for anyone else.
18:40:15 -!- ogrom has quit (Ping timeout: 255 seconds).
18:43:14 <elliott> fizzie: Well, you wouldn't be so horrible as to make an IRC client that isn't perfect, right?
18:44:18 <Sgeo> http://www.indiegamer.com/archives/t-208.html
18:45:08 <elliott> fizzie: Have you tried irssi2?
18:45:08 <AnotherTest> Do I have the permission to create an infobox template on the wiki?
18:47:44 <atriq> I sometimes connect to the Pesterchum network using XChat
18:48:39 <elliott> fizzie: Anyway let me know when you have that perfect client written so I can use it, thanks.
18:48:45 <fizzie> I tried out that WeeChat thing few years ago, and it segfaulted on me.
18:49:05 <atriq> But it's a poorly designed protocol built on top of a disagreeing protocol
18:49:21 <Sgeo> From ais523's part message:
18:49:21 <atriq> So you can see everyone's colour codes and that
18:49:22 <Sgeo> <fungot> fizzie: it makes demons fly out of my window, washing the windows api
18:49:23 <fungot> Sgeo: ( danvy filinski invented shift reset after other composable continuation operators. they allow you to install mysql.
18:49:32 <atriq> An awful lot is done client-side
18:49:56 <Sgeo> Composable continuations. The best way to install MySQL.
18:49:59 <Sgeo> You heard it here first.
18:50:12 <fizzie> fungot: Washed any APIs lately?
18:50:13 <fungot> fizzie: in haskell anything can be realtime when you throw enough people at it, it would permit easily having discussion of multiple implementations e.g. debian's alternatives, but sicp pdf is at http://www.cs.indiana.edu/bmastenb/ misc/ sicp.pdf, the html at http://mitpress.mit.edu/ sicp/
18:50:20 <fungot> Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube
18:52:45 <Arc_Koen> AnotherTest: if you do that, I'm gonna make some hot chocolate, watch an episode from stargate, and when I'm back if it's working I promise to fill at least three languages' infoboxes
18:53:16 <Arc_Koen> (note: I have absolutely no idea how much efforts are involved in making an infobox template)
18:54:41 <fizzie> That's a lot of episodes and hot chocolate.
18:54:45 <Arc_Koen> that's quite a lot of episodes
18:54:52 <AnotherTest> Unless of course some else wants to do it today
18:55:45 <fizzie> atriq: Out of curiosity, what's your chumhandle? (If it's sort of public.)
18:56:15 <AnotherTest> For a nice tutorial: http://www.etcwiki.org/wiki/Install_infobox
18:56:49 -!- AnotherTest has quit (Quit: Leaving.).
18:56:56 <Arc_Koen> if it's within my skills, or within skills that are within my reach modulo a reasonable amount of learning, and if I'm allowed to do that with my two-month old account, then there is a possibility for you to talk me into doing it
18:57:09 <atriq> fizzie, I'm not on often
18:57:20 <Arc_Koen> of course that's gonna be hard if you've already left
18:57:45 <atriq> My current handle is mathematicalEyebrow, which I'm using for a fan-adventure
18:58:00 <fizzie> atriq: I'm not on ever, I just wondered if it was an interesting pair of words.
18:58:11 <atriq> Used to be pixellatedQuestant
19:04:31 <Arc_Koen> lazy evaluation tells me I probably don't have the authorizations to make up such a thing. switching back to initial plan: hot chocolate!
19:05:26 <Arc_Koen> atriq/fizzie: what are you talking about?
19:05:46 <fizzie> Arc_Koen: Homestuck nonsense.
19:06:12 <Arc_Koen> i've heard that word mentioned on this channel before
19:06:28 <atriq> Homestuck is a web media thing.
19:06:31 <atriq> It's pretty popular.
19:06:57 <atriq> http://www.mspaintadventures.com/?s=6
19:06:59 <Arc_Koen> so you think I know nothing about popular stuff!!
19:07:15 <atriq> I think you know nothing about Homestuck!
19:08:35 <Arc_Koen> wait, are they calling con air a REALLY TERRIBLE MOVIE? I beg to differ!
19:08:51 <fizzie> There are probably many people in the world that do not know about Homestuck.
19:09:05 <olsner> a web media thing? homestuck is about SEO then?
19:09:22 <Sgeo> Even John agrees that Con Air is terrible.
19:09:43 <atriq> Sgeo, shhh, spoilers
19:09:50 <atriq> Arc_Koen just started!
19:10:10 <Arc_Koen> wait, yours is named John too?
19:10:21 <Arc_Koen> I got lucky I was almost named something terrible
19:10:23 <atriq> It's largely static
19:10:35 <atriq> It's the same for everyone
19:10:43 <Sgeo> It's more of a web comic than an interactive game
19:11:07 <Sgeo> Although... it would have been fun to see someone read Homestuck believing that it's different for everyone
19:11:36 <fizzie> Arc_Koen: I think you should read it through in one setting.
19:12:15 <Arc_Koen> like, I start now and don't stop until I'm finished?
19:12:26 <Arc_Koen> I haven't even made hot chocolate yet!!
19:12:38 <fizzie> Well, how long could it be?
19:13:59 <fizzie> (I think it's somewhere between five and six thousand pages.)
19:15:12 <fizzie> (Many of those pages are also interactive supermedia, the full exploring of which may take moments.)
19:16:12 <atriq> You are gonna love Act 4
19:16:24 <Arc_Koen> poor bunny, when you know what it's gonna have to go through before it is finally given to the daughter
19:17:10 <Arc_Koen> interestingly, the hero's friend is not on the poster
19:17:34 <Arc_Koen> even though he's been the only ally during the hole flight (well he and that female cop)
19:21:26 <Arc_Koen> am I the only one to find tire swings depressingly look like hangman's rope?
19:21:46 <atriq> Now you mention it
19:24:49 <Arc_Koen> I guess at some point he'll accidentally eject the smoke pills from the inventory stack
19:25:02 <Arc_Koen> (that features kind of makes it a queue, actually)
19:25:21 <Arc_Koen> and it will make his room lousy with smoke!
19:31:05 <Arc_Koen> wait, uh, where did I get my arms from?
19:31:40 <atriq> http://www.mspaintadventures.com/?s=6&p=001907
19:32:48 <Arc_Koen> captchalogue captchalogue arms
19:33:51 <Arc_Koen> this is the kind of jokes that knows you've seen it coming and is even funnier like that!
19:33:55 <Phantom_Hoover> atriq, btw, I style my nick "Phantom Hoover" unless there are technical limitations.
19:40:08 -!- DHeadshot has quit (Ping timeout: 245 seconds).
19:40:57 <elliott> people with multiword capsed nicks are so lame
19:42:24 <Arc_Koen> I would definitely agree with you weren't it for that homonym I have on freenode
19:43:18 <elliott> i had to wage wars to get this nick
19:44:29 -!- DHeadshot has joined.
19:45:52 <atriq> Aren't there, like, 6 Elliotts in #haskell?
19:46:25 <olsner> no, it's just elliott being there 6 at once
19:46:28 <elliott> one of them is annoying & bad & jealous of my name
19:46:30 <elliott> and this makes me really happy
19:46:44 <elliott> i've offered a fair trade of $500 for it tho
19:47:22 -!- atriq has changed nick to ectoBiologist.
19:47:33 -!- ectoBiologist has changed nick to tentacleTherapis.
19:47:42 -!- tentacleTherapis has changed nick to turntechGodhead.
19:47:47 -!- turntechGodhead has changed nick to atriq.
19:48:00 <atriq> tentacleTherapist isn't registered on account of being too long
19:48:30 -!- atriq has changed nick to golgothasTerror.
19:48:35 -!- golgothasTerror has changed nick to atriq.
19:48:44 <olsner> tentacleRapist is shorter
19:49:01 -!- elliott has left ("Leaving").
19:49:10 <atriq> Trivia: when I play Guitar Hero Arcade, I always leave my highscore as a Homestuck character
19:49:31 <atriq> I should have probably left #haskell before doing that
19:50:47 <atriq> Arc_Koen, where are you up to?
19:51:11 <Arc_Koen> it became too much repetitive for me
19:51:31 <atriq> I highly recommend you try to push on
19:51:41 <atriq> It becomes a LOT less repetitive
19:51:50 <Arc_Koen> maybe another day (if there's a way to jump ahead back to where I left)
19:52:09 <atriq> Did you click "save game"?
19:52:20 -!- NihilistDandy has joined.
19:55:36 <FreeFull> Since when are people in here suddenly mspainters
19:55:39 <atriq> Use your browser's history thing
19:56:56 <Arc_Koen> but for another kind of esoteric...
19:57:14 <HackEgo> koen: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
19:57:26 <FreeFull> lambdabot confirms I'm still in the right channel
19:57:37 -!- Phantom__Hoover has joined.
19:57:58 <Arc_Koen> either that or lambdabot is in the wrong channel
19:59:32 <fizzie> fungot: Is this the right channel?
19:59:33 <fungot> fizzie: do it like that? you?. but how boring.
20:00:51 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
20:03:14 <fungot> FireFly: haven't seen you around for a good while to understand his objections are sure to be the case, but srfi-7 is " feature-based program configuration language
20:03:28 -!- DHeadshot has quit (Ping timeout: 245 seconds).
20:03:41 <fizzie> fungot: You should maybe brush up on your grammar.
20:03:42 <fungot> fizzie: actually we're just sitting around thinking completely random thoughts about generic i/ o speed, the hands acquire shaking, the shaking becomes a warning; it is by the fact that set! defines new variables at top level
20:03:42 <FireFly> The beginning of that line is eerily correct
20:04:42 <fizzie> The "the hands acquire shaking, the shaking becomes a warning; it is by the fact that set! defines new variables at top level" part.
20:06:06 <Arc_Koen> if sentences returned noun phrases, fungot would be speaking proper english
20:06:07 <fungot> Arc_Koen: i just dumped all my music into /home/ fnord
20:06:51 <Arc_Koen> is that some special location, fungot?
20:07:18 <fizzie> fungot: Is it your fault that disk is filling up?
20:07:47 <olsner> fungot: more dune quotes
20:08:00 <fungot> Arc_Koen: i want to get fancy, you could use macros perhaps
20:08:01 <fungot> fizzie: in the latest python? for what implementation of lists using pairs.
20:08:01 <fungot> olsner: class quine: http://rafb.net/ p/xmkaav98.html or maybe figuring out how the clever recursive solution works? ;p it might make things clearer.
20:10:36 <fungot> FireFly: well, i never could find a definition of y i gave, though. i got a new queue altogether with its own build system that's quite as all-encompassing, however, the core procedures to operate on a flow learning scheme 4 years ago
20:14:58 <kmc> fungot: dongs
20:14:58 <fungot> kmc: the egg breakfast before lunch!! i'm in
20:18:16 -!- Vorpal has quit (Ping timeout: 260 seconds).
20:27:58 <Sgeo> I should rewatch Up Skit's Creek
20:28:06 <Sgeo> iirc it's a bit juvenile, but still
20:49:54 -!- ogrom_ has quit (Quit: Left).
20:59:31 -!- atriq has quit (Quit: Leaving).
21:05:29 <fungot> Phantom__Hoover: excuse me a minute. it explains the design and implementation" from 1975.
21:08:55 -!- elliott has joined.
21:09:10 <elliott> pikhq_: Is Nvidia or ATI better supported on Linux this month? :(
21:09:41 -!- ais523 has joined.
21:10:21 <Sgeo> elliott, I thought it only changes every few years
21:13:37 <Sgeo> Used to be nVidia, seems to have switched to ATI
21:15:02 <elliott> I hear bad things about UEFI and Nvidia.
21:16:45 * Sgeo wonders what a Lisp needs to have in order to be a Lisp
21:17:00 <Sgeo> Mostly in the context of whether or not ClojureScript qualifies as a Lisp.
21:17:45 <shachaf> Sgeo: A Lisp needs nothing in order to be a Lisp.
21:18:15 <olsner> what does a not-lisp need in order to become a lisp?
21:18:54 <kmc> i can't think of a more pointless, masturbatory topic
21:19:19 <shachaf> kmc: Clearly you've been away from #haskell for too long.
21:20:00 <Sgeo> There's a ClojureScript REPL. It's backed by a server.
21:20:27 <elliott> shachaf: i was just about to make a #haskell joke
21:20:28 <kmc> fungot: is ClojureScript a Lisp?
21:20:29 <fungot> kmc: dunno i'd buy that terribly easily if you like
21:20:35 <Sgeo> ClojureScript macros are Clojure code and there's no eval.
21:20:41 <kmc> yes we all know
21:20:51 <elliott> who cares whether it counts as lisp
21:20:56 <elliott> what matters is it sounds bad
21:21:52 <kmc> elliott: obviously 'Lisp' is special magic fairy dust and not just a programming language with cool features that could be discussed individually
21:22:24 <kmc> you have to know if a language is 'Lisp' so that you know whether programming in it makes you a real hacker
21:22:37 <shachaf> kmc: What's the matter with fairy dust?
21:22:37 <elliott> kmc: did you ever see that loper os post about how a brick is more like lisp than clojure
21:22:43 <elliott> i swear to god it literally said a brick was lisp
21:22:57 <kmc> has a dog the lisp-nature
21:23:27 -!- Phantom_Hoover has joined.
21:23:38 <Sgeo> Phantom_Hoover is Lisp.
21:23:46 <elliott> kmc: http://www.loper-os.org/?p=405 here
21:25:42 -!- Phantom__Hoover has quit (Ping timeout: 245 seconds).
21:26:08 <Phantom_Hoover> love how the loper-os blog has 32 posts tagged as philosophy and 19 tagged as loper os
21:26:22 <Sgeo> Scheme doesn't have reader macros, correct?
21:26:26 <kmc> 'philosophy'
21:27:02 <Sgeo> In that case, how does it not force a non-modifiable syntax on programmers (parentheses) any more than Clojure does (slightly more than just parentheses)
21:27:30 <kmc> obviously, the aspects of syntax I care about modifying are important, but the aspects you care about modifying are irrelevant
21:27:48 <Sgeo> Phantom_Hoover, I did say Scheme for a reason.
21:27:52 <Phantom_Hoover> but that line of thinking ends up with you hailing perl as the height of syntactic freedom
21:28:04 <kmc> how about machine code
21:28:15 <kmc> i said scheme isn't a lisp
21:28:28 <kmc> because scheme macros aren't written in scheme (usually)
21:28:42 <kmc> this is a troll statement though
21:28:57 <elliott> common lisp macros aren't really written in common lisp either
21:29:04 -!- variable has changed nick to trout.
21:29:17 <elliott> i could make a reasoned argument for this but i won't
21:29:35 <kmc> aren't they usually normal common lisp procedures manipulating syntax as data?
21:29:51 <kmc> whereas scheme macros are usually not normal scheme procedures; they are rules for a special purpose macro DSL
21:30:06 <kmc> image macros are the foundation of humor
21:30:17 <elliott> kmc: ye but (a) the definition of "common lisp" is a bit vague in terms of defining ~lispiness~; you can well argue that the form that looks at the car and switches on special forms or function names is just one DSL in many; (b) hence Scheme macros are in a way Scheme too
21:30:40 <shachaf> (c) 2012 elliott "elliott hird" hird
21:30:47 <elliott> (d) furthermore a definition which includes CL macros as being "in Lisp" but not Scheme macros is an unhelpful definition because it rejects what you want to admit and probably admits what you want to reject
21:32:05 <elliott> because you want to say that Scheme is a Lisp
21:32:14 <kmc> i don't particularly
21:32:22 <elliott> actually more precisely, I don't care about whether I say whether Scheme is a Lisp
21:32:28 <kmc> but i already described the question of "what is Lisp, really?!?" as pointless and masturbatory
21:32:36 <elliott> but I'd like to laugh at people who think that there is a definition of Lispiness that (a) is useful and (b) excludes Scheme is true
21:32:46 <elliott> hence I must adopt this position
21:33:02 <shachaf> elliott: You can laugh at them without making up complicated definitions.
21:33:07 <shachaf> Just point and laugh. It's that easy.
21:33:18 <shachaf> Sometimes you don't even need to point.
21:33:34 <kmc> s/exy/tim/e
21:36:02 <Phantom_Hoover> one might make the case that cl-style macros are more 'lispy' because they further break down the distinction between compile and runtime
21:36:12 <kmc> perhaps bonghits will fix your ontological conundrum
21:36:31 <elliott> Phantom_Hoover: counterpoint: CL macros are a pain to use
21:36:31 <kmc> Phantom_Hoover: kernel is the best lisp :)
21:37:27 <Arc_Koen> thue morse is supposed to start with 01, right?
21:37:38 <kmc> how does that falsify the claim that CL is "lisp"
21:37:51 <kmc> or are you starting with the axiom that Lisp is beautiful and perfect
21:37:58 <Phantom_Hoover> Arc_Koen, in the scheme or things, it matters not a jot
21:38:06 <Arc_Koen> I'm trying my brainfuck interpreter in thue against keymaker's thuemorse sequence in brainfuck
21:38:28 <kmc> i wonder if there are any interesting ways left to implement brainfuck
21:38:43 <kmc> i guess every TC proof is that
21:38:59 <elliott> kmc: who said I was falsifying that claim
21:39:03 <Sgeo> kmc, in that language I was ranting about earlier?
21:39:10 <elliott> my counterpoint is i don't care what Phantom_Hoover says because cl macros are annoying
21:39:15 <elliott> and i don't care about a definition of lispy that means something bad
21:39:21 <Phantom_Hoover> since the obvious way to do it is to represent code and data as graphs
21:39:28 <shachaf> falsifee, falsify, falsifo, falsifoo
21:39:30 -!- jiella has quit (Quit: Leaving.).
21:39:38 <elliott> someone implement an efficient eodermdrome please
21:39:40 <Phantom_Hoover> which makes implementing it more of a syntactic things?
21:39:50 <kmc> falsisetto
21:40:05 <Arc_Koen> ok I'm pretty sure thuemorse is not supposed to start with "0 01 01"
21:40:14 <Sgeo> kmc, would doing it as Mascarpone count as interesting?
21:40:19 <shachaf> @ask monqy monqy = the best
21:40:30 <Sgeo> (Basically, transforming Mascarpone into Brainfuck via Mascarpone code)
21:40:57 <Arc_Koen> Phantom_Hoover: who's to blame, keymaker or me?
21:41:46 <Arc_Koen> oh wait I think it's reprinting the sequence from the beginning
21:42:11 <Arc_Koen> "it starts with 0. oh no wait it starts with 01. oh no wait it starts with 0110."
21:44:13 * ion ordered http://www.amazon.co.uk/gp/product/0262201623/ http://www.probabilistic-robotics.org/
21:44:48 <Arc_Koen> wow, http://esoteric.voxelperfect.net/files/brainfuck/src/factor.b claims to be able to factor any arbitrarily large integer
21:45:05 <Arc_Koen> I think if it can really do that it's worth more money that I can possibly imagine
21:45:08 -!- nooga has quit (Ping timeout: 245 seconds).
21:45:47 <elliott> Arc_Koen: you realise the difficulty is factoring *quickly*, right?
21:46:01 <Arc_Koen> otherwise I could do it myself
21:46:12 <elliott> i have no trouble believing that program does what it claims
21:46:29 <Arc_Koen> well the "arbitrarily large" thing is a little stretched
21:47:39 <elliott> i am confident that brainfuck program's semantics are the factorisation of an arbitrarily-large integer given on input
21:47:44 <elliott> well, rather, not confident, but I find it entirely credible
21:47:56 <elliott> I have not actually read its source, but it is a simple enough task that it's no great deal to believe it
21:48:41 <elliott> well existing brainfuck implementations won't be able to do it
21:48:44 <elliott> since they are limited by your RAM
21:48:45 <Arc_Koen> "you can input arbitrarily large numbers... but don't expect a result soon if they're too large"
21:48:51 <elliott> but that just means they're unfaithful implementations
21:49:14 <Arc_Koen> (also my implementation is incredibly slow)
21:49:48 <Arc_Koen> ((well, not incredibly, since I do believe it is slow.))
21:55:43 <Sgeo> Brainfuck. Strictly more powerful than C?
21:58:17 <Arc_Koen> it would most certainly be if we had improved it with proper extensions! but for some reason all the people who have tried now believe they are small flying houses
21:58:26 <pikhq_> Sgeo: From a computational perspective, yes.
21:58:57 <pikhq_> C describes a class of finite state machines, Brainfuck describes a Turing-complete system.
21:59:05 <Sgeo> Someone should make a Brainfuck variant that allows for execution of arbitrary machine code.
21:59:14 <Arc_Koen> oh, are you saying that C is so low-level that's it's "overspecified"
21:59:26 <Sgeo> Arc_Koen, we're saying that C is not turing-complete.
21:59:35 <pikhq_> Arc_Koen: Just that C mandates finite state.
21:59:55 <pikhq_> Arbitrarily high bounds, but still bound.
22:00:00 <Arc_Koen> well brainfuck certainly isn't turing-complete if you take the original 30000-cell implementation as a reference
22:00:38 <shachaf> C is Turing-complete if you allow file I/O and read the spec right.
22:10:11 <FreeFull> Wouldn't C allow you to construct an infinite doubly-linked list
22:10:22 <FreeFull> Therefore obliterating all bounds
22:10:30 <ais523> wow, never seen that happen before: for domain registrations you have to maintain accurate contact details
22:10:41 <ais523> and my registrars apparently email all their customers every year to ask if there was a change, just in case
22:11:13 <ais523> FreeFull: no, because sizeof(void*) has to be finite, and CHAR_BIT also has to be finite
22:11:24 <ais523> and I /think/ that two pointers with the same bit pattern have to be equal
22:11:44 <ais523> (I know it wouldn't make any sense for them not to be, but it's interesting to see if the Standard actually says that)
22:12:21 <shachaf> 15:24 <pikhq_> elliott: Fine. int main(int argc, char**argv){for(int i = 1; i < argc; i++)if(printf("%s%s",argv[i],i!=argc-1?" ":"")<0)return 1;return putchar('\n') != EOF;}
22:12:27 <olsner> I think it does say something about how copying the bytes back should produce an "equal" (or something) object
22:12:38 <FreeFull> Are you sure file io isn't limited then?
22:12:50 <olsner> shachaf: it's C, so it's probably not valid
22:13:01 -!- fungot has quit (Ping timeout: 246 seconds).
22:19:36 <fizzie> ais523: "Two values (other than NaNs) with the same object representation compare equal, but values that compare equal may have different object representations.
22:20:28 <elliott> fizzie: but is it guaranteed that *p1 is the same as *p2 just because p1 and p2 compare equal?
22:21:30 <pikhq_> elliott: Can't be, because p1 and p2 might be different types.
22:21:51 <pikhq_> If p1 is char* and p2 is int*, *p1 is not necessarily *p2.
22:22:16 <fizzie> pikhq_: Comparing a char* and int* with == is a constraint violation.
22:22:50 -!- Nisstyre has quit (Ping timeout: 256 seconds).
22:23:02 <fizzie> (The types of compared pointers need to be compatible, or one has to be void, or a null pointer constant.)
22:23:06 <Arc_Koen> basic logic usually implies that for any x, y, f, if x = y, then f(x) = f(y) but apparently nobody told that to C
22:24:03 <elliott> well comparing equal is a concept the C standard defines
22:24:16 <elliott> it's true that if x = y then nothing can distinguish x and y
22:24:19 <elliott> but that doesn't apply to C equality
22:24:24 <elliott> since objects with the same representation can compare equal
22:26:22 <Arc_Koen> do you mean with different representations?
22:27:23 -!- Nisstyre has joined.
22:27:27 <elliott> given <fizzie> ais523: "Two values (other than NaNs) with the same object representation compare equal, but values that compare equal may have different object representations.
22:28:12 <fizzie> But now the "quote" has all kinds of stuff.
22:30:24 <Arc_Koen> I think it ended when elliott copypasted your quote (and then he just asked you to add a " pls)\n<fizzie>")
22:31:01 <shachaf> Arc_Koen: Now elliott hasn't closed his (!
22:32:06 <olsner> yeah, we're royally screwed now
22:32:52 -!- Arc_Koen has quit (Quit: break; break; break; break; break; EXIT_FAILURE ) (({)).
22:33:11 -!- Arc_Koen has joined.
22:33:44 -!- sirdancealot7 has joined.
22:33:54 <elliott> there, that fixed all the unbalanced stuff
22:34:26 -!- Arc_Koen has quit (Client Quit).
22:34:30 <olsner> oh, @ automatically balances all parens, quotes and accounts?
22:34:45 <ion> @ also makes coffee.
22:34:51 <olsner> not sure what balancing an account *is*, but I know the phrase for some reason
22:34:52 <lambdabot> Maybe you meant: . ? @ activity activity-full admin all-dicts arr ask b52s babel bf bid botsnack brain bug check choice-add choose clear-messages compose devils dice dict dict-help djinn djinn-add
22:34:52 <lambdabot> djinn-clr djinn-del djinn-env djinn-names djinn-ver do docs dummy easton echo elements elite eval fact fact-cons fact-delete fact-set fact-snoc fact-update faq farber flush foldoc forget fortune
22:34:52 <lambdabot> fptools free freshname ft gazetteer get-shapr ghc girl19 google googleit gsite gwiki hackage help hitchcock hoogle hoogle+ id ignore index instances instances-importing irc-connect jargon join karma
22:34:52 <lambdabot> karma+ karma- karma-all keal kind learn leave let list listall listchans listmodules listservers localtime localtime-reply lojban map messages messages? more msg nazi-off nazi-on nixon oeis offline
22:34:52 <lambdabot> oldwiki palomer part paste ping pl pl-resume pointful pointless pointy poll-add poll-close poll-list poll-remove poll-result poll-show pretty print-notices protontorpedo purge-notices quit quote rc
22:34:53 <lambdabot> read reconnect remember repoint run shootout show slap smack source spell spell-all src tell thank you thanks thx ticker time todo todo-add todo-delete topic-cons topic-init topic-null topic-snoc
22:34:55 <lambdabot> topic-tail topic-tell type undefine undo unlambda unmtl unpf unpl unpointless uptime url v vera version vote web1913 what where where+ wiki wn world02 yarr yhjulwwiefzojcbxybbruweejw yow
22:35:00 <lambdabot> Maybe you meant: . ? @ activity activity-full admin all-dicts arr ask b52s babel bf bid botsnack brain bug check choice-add choose clear-messages compose devils dice dict dict-help djinn djinn-add
22:35:00 <lambdabot> djinn-clr djinn-del djinn-env djinn-names djinn-ver do docs dummy easton echo elements elite eval fact fact-cons fact-delete fact-set fact-snoc fact-update faq farber flush foldoc forget fortune
22:35:02 <lambdabot> fptools free freshname ft gazetteer get-shapr ghc girl19 google googleit gsite gwiki hackage help hitchcock hoogle hoogle+ id ignore index instances instances-importing irc-connect jargon join karma
22:35:04 <lambdabot> karma+ karma- karma-all keal kind learn leave let list listall listchans listmodules listservers localtime localtime-reply lojban map messages messages? more msg nazi-off nazi-on nixon oeis offline
22:35:05 <lambdabot> oldwiki palomer part paste ping pl pl-resume pointful pointless pointy poll-add poll-close poll-list poll-remove poll-result poll-show pretty print-notices protontorpedo purge-notices quit quote rc
22:35:07 <lambdabot> read reconnect remember repoint run shootout show slap smack source spell spell-all src tell thank you thanks thx ticker time todo todo-add todo-delete topic-cons topic-init topic-null topic-snoc
22:35:10 <lambdabot> topic-tail topic-tell type undefine undo unlambda unmtl unpf unpl unpointless uptime url v vera version vote web1913 what where where+ wiki wn world02 yarr yhjulwwiefzojcbxybbruweejw yow
22:35:11 -!- Arc_Koen has joined.
22:35:32 <olsner> shapr claims it does work but slowly
22:35:33 <lambdabot> I perform dictionary lookups via the following 13 commands:
22:35:33 <lambdabot> all-dicts ... Query all databases on dict.org
22:35:33 <lambdabot> devils ...... The Devil's Dictionary
22:35:33 <lambdabot> easton ...... Easton's 1897 Bible Dictionary
22:35:50 <ion> The correct response to @thank's would be “your welcome”.
22:35:59 <shachaf> @@ @echo @echo @echo @echo
22:36:00 <lambdabot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "shachaf!~shachaf@unaffiliated/shachaf", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@@ @echo @echo @echo @
22:36:00 <lambdabot> echo"]} rest:"echo; msg:IrcMessage {msgServer = \"freenode\", msgLBName = \"lambdabot\", msgPrefix = \"shachaf!~shachaf@unaffiliated/shachaf\", msgCommand = \"PRIVMSG\", msgParams = [\"#esoteric\",\"
22:36:00 <lambdabot> :@@ @echo @echo @echo @echo\"]} rest:\"echo; msg:IrcMessage {msgServer = \\\"freenode\\\", msgLBName = \\\"lambdabot\\\", msgPrefix = \\\"shachaf!~shachaf@unaffiliated/shachaf\\\", msgCommand = \\\"
22:36:00 <lambdabot> PRIVMSG\\\", msgParams = [\\\"#esoteric\\\",\\\":@@ @echo @echo @echo @echo\\\"]} rest:\\\"echo; msg:IrcMessage {msgServer = \\\\\\\"freenode\\\\\\\", msgLBName = \\\\\\\"lambdabot\\\\\\\", msgPrefix
22:36:00 <lambdabot> = \\\\\\\"shachaf!~shachaf@unaffiliated/shachaf\\\\\\\", msgCommand = \\\\\\\"PRIVMSG\\\\\\\", msgParams = [\\\\\\\"#esoteric\\\\\\\",\\\\\\\":@@ @echo @echo @echo @echo\\\\\\\"]} rest:\\\\\\\"\\\\\\
22:36:30 <lambdabot> echo; msg:IrcMessage {msgServer = "freenode", msgLBName = "lambdabot", msgPrefix = "elliott!~elliott@unaffiliated/elliott", msgCommand = "PRIVMSG", msgParams = ["#esoteric",":@. echo . echo echo"]}
22:36:31 <lambdabot> rest:"echo; msg:IrcMessage {msgServer = \"freenode\", msgLBName = \"lambdabot\", msgPrefix = \"elliott!~elliott@unaffiliated/elliott\", msgCommand = \"PRIVMSG\", msgParams = [\"#esoteric\",\":@.
22:36:31 <lambdabot> echo . echo echo\"]} rest:\"echo; msg:IrcMessage {msgServer = \\\"freenode\\\", msgLBName = \\\"lambdabot\\\", msgPrefix = \\\"elliott!~elliott@unaffiliated/elliott\\\", msgCommand = \\\"PRIVMSG\\\",
22:36:31 <lambdabot> msgParams = [\\\"#esoteric\\\",\\\":@. echo . echo echo\\\"]} rest:\\\"\\\"\\n\"\n"
22:36:46 <lambdabot> Plugin `compose' failed with: Unknown command: "elliott"
22:36:57 <shachaf> elliott must be a big fan of @@
22:37:00 <ion> @@ @tell shachaf @echo @echo @echo @echo @echo @echo
22:37:01 <lambdabot> Maybe you meant: . ? @ bf do ft id pl rc v wn
22:38:32 -!- shapr has joined.
22:38:45 <shachaf> 15:35 <elliott> @get-shapr
22:38:45 <shachaf> 15:35 <elliott> it's not working
22:38:58 <shapr> you guys is funny :-P
22:39:19 <shapr> But srsly, my favorite esoteric lang of the moment is HackerFoo's Peg
22:39:31 -!- Arc_Koen has quit (Client Quit).
22:39:35 <shapr> It has roots in Joy, Haskell, and Prolog.
22:39:42 -!- luite has joined.
22:39:44 <pikhq_> fizzie: char* is a god damned weird edge case.
22:40:03 <shachaf> elliott: #-blah is taking over #esoteric
22:40:16 -!- Arc_Koen has joined.
22:40:30 <shachaf> He's the one who 15:38 <shachaf> 15:35 <elliott> @get-shapr
22:40:31 * shapr goes back to configuring his VPS
22:40:33 <shachaf> shapr: I'll be seeing luite this week!
22:40:36 -!- basti_ has joined.
22:40:38 <Arc_Koen> I sware I asked my client to quit
22:40:49 <shapr> Arc_Koen: It did, but then it got lonley.
22:40:59 <shapr> Jag kan inte stava :-(
22:41:17 -!- Arc_Koen has quit (Client Quit).
22:41:25 <shapr> Eu sou incapaz de soletrar.
22:42:04 -!- Arc_Koen has joined.
22:42:13 <luite> hi all, first time i'm in this channel :) looks like i'll fit right in, reading the topic
22:42:22 <olsner> shapr: En voi kirjoittaa.
22:42:35 <HackEgo> luite: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
22:42:42 <shapr> olsner: Whoa, do you speak Finnish?
22:42:53 * shapr tries to puzzle out that sentence...
22:42:57 <olsner> shapr: finnish is the native language of #esoteric
22:43:00 <shapr> I am going to read?
22:43:17 <shapr> kirjoit is "read" I think..
22:43:27 <shapr> I'll stick with Portuguese.
22:43:35 <olsner> oh, and I only speak/write/read finnish using online translation
22:43:38 <pikhq_> olsner: I think you mean: enn ùoi kirisìȳoi'ta-
22:43:49 <shapr> I'm actually learning Portuguese at school.
22:44:19 <shapr> I lived in Finland for two years
22:44:31 <shachaf> shapr: Did you have lakka?
22:44:45 <pikhq_> I just snark at Finish sometimes.
22:44:49 <shapr> Lumpio-: Well then I fail :-(
22:44:57 <Lumpio-> No I made typos on purpose
22:45:11 <Lumpio-> Because English-speaking people always do that when imitating Finnish
22:45:13 -!- fungot has joined.
22:45:27 <fungot> Available: agora alice c64 ct darwin discworld europarl ff7 fisher fungot homestuck ic irc* iwcs jargon lovecraft nethack pa qwantz sms speeches ss wp youtube
22:45:31 <shapr> I like listening to Finnish from Lappland, where I spent two years.
22:45:34 <fungot> shachaf: ( i don't quite understand what the installer asked me if it's still recognized as a bank, but is it possible to program graphics using the basic defaults, mostly.
22:45:42 <fungot> Selected style: alice (Books by Lewis Carroll)
22:45:44 <fungot> shachaf: " and certainly you've given me the best of it!"
22:45:44 <shapr> Much as I like listening to Norrbotten Swedish, where I spent five years.
22:45:48 <fungot> shachaf: " and what are you thinking of?" i said, " i'm setting you a riddle fnord your victim be in bed, you know."
22:45:49 <fungot> shachaf: and what a grand thing it would be such a treat!" said lady muriel. " it's a far more interesting question than ' isn't this a picturesque ruin?' aren't those autumn-tints lovely?' i shall have to go without fifty dinners at once! remember what i told you so! you've no idea what to do?
22:46:02 <fungot> Selected style: discworld (a subset of Terry Pratchett's Discworld books)
22:46:07 <fungot> shapr: the singing had stopped... that's foreign for cat's water, you know.
22:46:18 <fungot> shachaf: mr. ogg, you are fully qualified." the cat purred as the fingers tickled it behind the fnord crabs so they could all see.
22:46:24 <fizzie> The book styles tend to be kinda not so good.
22:46:34 -!- Arc_Koen has quit (Client Quit).
22:46:36 <shapr> Is it done with markov chains?
22:46:37 <fungot> Selected style: qwantz (Dinosaur Comics transcriptions 2003-2011)
22:46:39 <fungot> elliott: so in that, well enjoy pooping in it. all the dudes, they will!
22:46:57 <elliott> shapr: They're something slightly fancier than Markov chains that I completely forget the name of.
22:47:08 <fizzie> shapr: If you choose to think of it like that. (It's a variable-length n-gram model.)
22:47:16 -!- Arc_Koen has joined.
22:47:25 <shapr> Huh, that's nifty.
22:47:34 <shapr> I want to make my markov keyboard layout someday...
22:47:44 <fizzie> It's trained with http://varikn.forge.pascal-network.org/
22:47:55 <fizzie> (Our department made that thing.)
22:47:59 <shapr> Where it dynamically remaps your keyboard to pick the letter you are most likely to type next by frequency.
22:48:13 <shachaf> shapr: That sounds awful. :-(
22:48:19 <Arc_Koen> I think if I don't shut the client down quick enough it will always try to reconnect
22:48:20 <shapr> shachaf: But it would be fun to write anyway
22:48:27 <shapr> Arc_Koen: Which client?
22:48:31 <shapr> fizzie: Which department?
22:48:38 <shachaf> shapr: If you could make it correct typos, though...
22:48:55 <elliott> ++ for a keyboard that remaps your keys in prediction of a mistype you're about to do
22:48:59 <shachaf> If the next letter is really likely to be 'x' but I press adjacent key 'y', it could use 'x'.
22:49:07 <Arc_Koen> I was on xchat aqua for one or two years but then it suddenly stopped working
22:49:11 <shapr> shachaf: maybe you should write it.
22:49:13 <fizzie> shapr: The ICS department of Aalto University (formerly TKK/HUT) of Finland.
22:49:16 <elliott> ++ for a keyboard that reads your mind
22:49:21 <shachaf> shapr: Maybe probably not. :-(
22:49:28 <shapr> Wait, HUT turned into Aalto?
22:49:34 <shachaf> Half a cheer for Klaymen! Hip hip--hoo!
22:49:38 <elliott> fizzie: Don't you need "of the European Union of Europe of Earth of ..."?
22:49:40 <elliott> It's not quite specific enough.
22:49:50 <shapr> fizzie: Did your department move, or did HUT change names, or what?
22:49:54 <fizzie> HUT is one of the three universities that make up Aalto, yes.
22:49:56 <shapr> Man, HUT did all sorts of awesome things!
22:50:17 <fizzie> The other two are a business university and an arts university.
22:50:21 <shapr> I know Linux, ssh, and neural networks all came from the Helsinki area.
22:50:36 <shachaf> I never neural network I didn't like.
22:50:38 <shapr> I made a pilgrimage to the first IRC server in Oulu
22:50:51 <shapr> It's a flowerpot now.
22:50:53 <fizzie> They decided we need more interdisciplinarity and all kinds of such things.
22:51:23 <elliott> I can't decide whether an IRC pilgrimage is the worst or best thing ever
22:51:44 <shachaf> On average it's the most average thing ever.
22:51:46 <shapr> elliott: It's okay, the was out to lunch so I just stood outside the door reverently for a few seconds.
22:51:49 <fizzie> shapr: So far it's really a single university in name only, really; all three have their own campuses (campi?) and there's not too much intermingling except for a few joint projects.
22:52:16 <fizzie> The arts people are I think supposed to move to Otaniemi in the next decade, though.
22:52:16 <shapr> fizzie: Ah, that's too bad.
22:52:38 <shapr> I used to think art students just shouldn't mix with technology, then I saw what art students can do with an Arduino.
22:52:51 <shachaf> fizzie: I know people in universities around here who are really into joint projects.
22:52:58 <shachaf> kmc is probably also into them.
22:53:21 <shapr> It's funny that art students ended up making new flavors of Arduinos that I now use myself.
22:53:37 <Arc_Koen> I thought the arduino was a computer
22:54:03 <shapr> Arc_Koen: Some art person was like "Hey, I want to sew a computer into my clothes."
22:54:15 <shapr> And then the Arduino LilyPad was born.
22:54:21 * elliott tries to think of a good way to put on "Arduino" <-> "what do we know".
22:54:22 <shachaf> And shapr was like "sew what"
22:54:38 <Arc_Koen> when I decided occam-pi would be a neat new language to pick on all the docs told me "occam-pi is great for programming arduinoooooooos get yourself an arduino right nooooow"
22:54:40 <shapr> Leah Buechley was the woman who started the LilyPad.
22:54:49 <elliott> (I guess that is probably not how you pronounce "Arduino".)
22:55:07 <shapr> I want to get Joy running on my Arduinos
22:55:09 <Arc_Koen> for the record I did not get myself an arduino
22:55:29 <shapr> Arc_Koen: but they're awesome!
22:55:36 <lambdabot> May the clap make ye incapable of Cracking Jenny's Tea Cup.
22:55:46 <shapr> Anyway, I'm off to the coffeeshop to finish setting up my new VPS
22:55:52 <shapr> But I'm leaving :-P
22:56:06 <shapr> I have an interview tomorrow morning!
22:56:18 <elliott> all you have to do is spam @get-shapr and he'll be unable to move
22:56:19 <shapr> Probly gonna write Python part time
22:56:22 <shapr> if they offer me enough money
22:56:25 <Arc_Koen> shapr: I'm afraid I might not have all the nerdiness/computer-knowledge required to appreciate how much an arduino can offer me
22:56:31 <shachaf> shapr: what if they offer too much
22:56:39 <shapr> shachaf: Then I'll drop out of school and have kids.
22:57:20 <fizzie> shapr: There *was* some amount of HUT name recognition that I think was lost, that's true; Teuvo "SOM" Kohonen has an office five doors right from me (not that he visits very often), and Erkki "(Fast)ICA" Oja is my thesis supervisor, but nobody associates those things with "Aalto".
22:57:21 <shapr> Arc_Koen: I made an RGB LED clock.
22:57:35 <shapr> fizzie: sadness :-(
22:57:47 <fizzie> On the other hand, we're now Finland's foremost university in all lists that are in alphabetical order.
22:57:50 <Arc_Koen> shapr: can you hook up an arduino to a coffee pot?
22:58:04 <shapr> Arc_Koen: I wake up in the middle of the night, and my body can't tell what time it is... so I set an LED to change color according to the time.
22:58:09 <shapr> So dull red means "keep sleeping"
22:58:18 <shachaf> shapr: We spell it "colouur" around here.
22:58:18 <shapr> green means "You can go ahead and wake up now"
22:58:24 <shapr> and blue means "GO TO CLASS NOW"
22:58:27 <shapr> Arc_Koen: yes, you can
22:58:56 <shapr> Arc_Koen: https://www.google.com/search?q=arduino+coffee+pot
22:58:56 <elliott> no, shapr is lying so he can take over the world
22:59:01 <Arc_Koen> cause if it can then it's most definitely going on my to-buy list
22:59:03 <elliott> by making everyone buy arduinos that can't interface with their coffee pots
22:59:07 <shapr> Arc_Koen: http://www.wired.com/gadgetlab/2012/01/arduino-controlled-espresso-machine-rivals-way-more-expensive-models/
22:59:19 <shapr> http://www.instructables.com/id/Tweet-a-Pot-Twitter-Enabled-Coffee-Pot/
22:59:30 <shapr> http://www.arduino.cc/playground/Main/coffeeTronics
22:59:33 <Arc_Koen> though the top of the list is currently "a car" and I'm not working at the moment so it's gonna take a while before anything on that list gets purchased
22:59:42 <lambdabot> Whuu... I think so, BrainPan! But if running shoes had little feet, wouldn't they need their own shoes?
22:59:54 <shachaf> @@ (@brain) (@brain) (@brain) (@brain) (@brain) (@brain)
22:59:54 <lambdabot> Now, Pinky, if by any chance you are captured during this mission,
22:59:54 <lambdabot> remember you are Gunther Heindriksen from Appenzell. You moved to Grindelwald
22:59:54 <lambdabot> to drive the cog train to Murren. Can you repeat that? Are you pondering what I'm pondering? It is here that my cheap workforce of trained iguanas will work
22:59:54 <lambdabot> night and day to make our shoes to my exacting specifications! Well, I think so, Brain, but first you'd have to take that whole bridge apart, wouldn't you? I think so, Brain, but culottes have a
22:59:54 <lambdabot> tendency to ride up so. I think so, Brain, but a codpiece made from a real fish would get smelly after a while, wouldn?t it?
22:59:55 <Arc_Koen> shapr: you have no idea how happy you just made me
23:00:06 <shapr> Arc_Koen: Arduinos really ARE awesome, ok?
23:00:40 <shapr> fizzie: Isn't Kohonen really old these days?
23:01:17 <shapr> fizzie: So wait, if Oja is your supervisor, you're doing neural nets?
23:01:42 <Arc_Koen> shapr: it's like life actually has a meaning now
23:02:20 <shapr> Anyway, I'm off to finish setting up before my interview.
23:02:46 <Arc_Koen> until now there was this "-> get a car -> find a girl -> marry her -> buy house -> have children -> don't forget to be happy all the way through" pattern in my head but there definitely was something missing about it
23:02:55 <Arc_Koen> something involving coffee at some point or another
23:03:25 <elliott> fizzie does speech recognition.
23:03:32 <elliott> Unless he thought better of it by now.
23:03:41 <Arc_Koen> I think if I can hook up an arduino to a coffee pot and to the cigar-lighter from a car and just drive around the world
23:06:24 <fizzie> shapr: Erkki's also a supervisor in name only, since the speech group doesn't at the moment have a professorship, and a thesis needs a professor as supervisor.
23:08:38 <fizzie> I do have two "instructors" from the speech group, though, and it's possible one of them could become a full professor in the near future, in which case I'd probably switch the supervisor, since that'd really reflect the reality better.
23:09:06 <shapr> The only thing I know about speech recognition is Viterbi, sadly.
23:09:18 <shapr> Seems like it would be a fun thing to apply to syntax-directed programming editors.
23:10:17 <fizzie> shapr: And I suppose Kohonen must be really old; his title is "professor (emeritus)" and he just visits sometimes. A friend was making the Matlab SOM Toolbox that Kohonen (I think) wrote portable to Octave too, he had some discussions with him. But Kohonen is certainly not actively working any more.
23:10:54 <olsner> ah, elliott, the premier authority on thesis supervisors in finland?
23:11:21 <fizzie> Just the authority on the futility of speech recognition.
23:11:44 <elliott> I'm an authority on thesis supervisors in Finland, too.
23:12:09 -!- sipa has joined.
23:12:51 <shapr> yow, 1934! http://en.wikipedia.org/wiki/Teuvo_Kohonen
23:14:59 <luite> hm i only know him for his maps :)
23:15:00 <fizzie> The article is a bit dated in that the "Adaptive Informatics Research Centre" it mentions is no longer with us either.
23:15:29 <fizzie> It was a 5-year "centre of excellence" project of the Academy of Finland.
23:15:48 <fizzie> Currently the corresponding-but-slightly-different thing is COIN.
23:15:58 <fizzie> Which... means something.
23:16:39 <fizzie> COmputational INference, I think.
23:16:52 <shapr> I think words like ohjelmointia are way more fun.
23:17:08 <HackEgo> seurootusta uppoamisempiville säänsä pohumalaulun siinsa vihkerrostasi röyhäisempaamuyöskemmassa soljumalaulatalle irroille negattamakkoi tyttävineminanne leuksi asevälitamme tuntavasta harvitsemmassa littuvina omalloa hastamme yhyttäviksi oppiltansa
23:17:11 <shapr> minä haluan hampurilainen!
23:17:18 <fizzie> (This channel is all about the bots.)
23:17:21 <shapr> That's awesome :-)
23:17:30 <olsner> negattamakkoi tyttävineminanne leuksi
23:17:30 <sipa> `words --dutch 20
23:17:42 <shapr> `words --portuguese 20
23:17:46 <HackEgo> terão acascurarei encorajará cadorejá recoarão indurai alimatricia calatesolacro enfraremos apaireis descendidora intenregrafa despontado consoldariz tralize desence viteimplebrando ento sacomano destinas
23:17:47 <elliott> dutch isn't a real language
23:17:50 <fizzie> That's I think a character trigram model, made by.. PH?
23:17:52 <lambdabot> shachaf says: I think Dutch is just a parody of English.
23:17:57 <HackEgo> Usage: words [-dhNo] [DATASETS...] [NUMBER_OF_WORDS] \ \ options: \ -l, --list list valid datasets \ -d, --debug debugging output \ -N, --dont-normalize don't normalize frequencies when combining \ multiple Markov models; this has the effect \ of making larger datasets more influential \ -o, --target-offset change the target length
23:18:06 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27718
23:18:11 <HackEgo> valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian --esolangs \ default: --eng-1M
23:18:17 <HackEgo> heijastani kehräämpänäsi käytyvissioin eroittavimme kaalisellisimme pystyvikseen mättä pikaamolue grönsyinee unoksesi harkokoorukaisi hankeamme turvaan suomimaniltanevaa tyttyvänäni uimmisemme palkua komenneissä kaimpanasi kiehtimeampiesi
23:18:20 <Lumpio-> I wanna see it come up with a real word
23:18:23 <HackEgo> mud later ewhockhap whitan tnnsyll radh hauter renmitting potiebzii aschrick ofprov falle abethcllama mafe boulamf ijf anximeld rafielo atjina kasen resen evier self modinato erted
23:18:27 <olsner> http://translate.google.com/#fi|en|asevälitamme seems to be a real word
23:18:30 <elliott> mud and later and self sure are words
23:18:36 <fizzie> Lumpio-: "hankeamme" is up there.
23:18:41 <shapr> self is a real word
23:18:48 <Lumpio-> "turvaan" is a real word at least.
23:18:50 <HackEgo> parte joar cla boit dil ihr striment incina virin trible flaxt second recd con servc hab wii asile natclif stralthfe mety rettington assar ielec buck
23:18:55 <Phantom_Hoover> i guess finnish is more agglutinative so there's more made-up words?
23:18:58 <elliott> wii, that's sort of like a word
23:19:04 <elliott> yes finnish is better for this
23:19:10 <luite> does it use a first order markov model?
23:19:10 <elliott> since none of these fake english words have any sort of meaning
23:19:11 <shachaf> luite; You don't really believe in Dutch, do you?
23:19:12 <HackEgo> 6ix twodu tod buband godscript fal var'aq thess alc blane minispace minifuck-2d sher c-lon 2050706 .box datefuck d1ffe7e45e unisc jot
23:19:16 <elliott> whereas the finnish things occasionally mean something sometimes, I hear
23:19:29 <fizzie> Lumpio-: Uh... you know, "hanki" + first-person plural + whatever noun case it was.
23:19:40 <pikhq_> Pity getting a database for Japanese would be hard.
23:19:44 <HackEgo> הדות ממזווע ומקבלם החדות הדבו מטבע נאמינא ודפס משלת לאתר ומדים והמנזק נדב המצו הסים הנגמולד חסוריד עבאסטה ואות האיכ ברו כהמחמד ויליו כאמלה העמדת
23:19:48 <HackEgo> ölflacks skatiskan äpphöjer hemmans sippierränsam des luftlande bötfäril ändstremier insatserat blick kningskogets spring undigast grip utveden gamensamattadestfält säng hovs förbär
23:19:50 <luite> shachaf: only a little
23:20:10 <pikhq_> Oh, the words that could be had.
23:20:12 <shachaf> `words --norwegian 100000000000000000000000
23:20:14 <fizzie> Lumpio-: Also the "project-tub", I suppose, if interpreted as hanke|amme compound.
23:20:16 <HackEgo> fiffinbøte disittenesperfatt paknemhjulside papire belverds morendensiene plaskiftsutver fruksvirksom navn livens musledelsenterkutap sulemsentipe føringen kjøp ulykkensjkuponing systbetodeal kjørnestregnsker tobakinsfeiner smålene bollen emndefirmasjons østnerorgiveplegi tralmene hydrofer ettenestertets
23:20:27 <elliott> fizzie: project-tub sounds like some sort of "Web 2.0" "startup" "incubator".
23:20:29 <shachaf> > length . words $ "fiffinbøte disittenesperfatt paknemhjulside papire belverds morendensiene plaskiftsutver fruksvirksom navn livens musledelsenterkutap sulemsentipe føringen kjøp ulykkensjkuponing systbetodeal kjørnestregnsker tobakinsfeiner smålene bollen emndefirmasjons østnerorgiveplegi tralmene hydrofer ettenestertets
23:20:31 <lambdabot> lexical error in string/character literal at end o...
23:20:34 <shachaf> > length . words $ "fiffinbøte disittenesperfatt paknemhjulside papire belverds morendensiene plaskiftsutver fruksvirksom navn livens musledelsenterkutap sulemsentipe føringen kjøp ulykkensjkuponing systbetodeal kjørnestregnsker tobakinsfeiner smålene bollen emndefirmasjons østnerorgiveplegi tralmene hydrofer ettenestertets"
23:20:43 <fizzie> elliott: It could well be the name of one.
23:20:57 <shachaf> > 25 — 100000000000000000000000
23:21:02 <shapr> Finnish is very hard. I spent two years failing to learn Finnish.
23:21:05 <elliott> "hankeamme" doesn't sound quite as good, though.
23:21:25 <fizzie> elliott: Maybe they could type it with that |.
23:21:36 <pikhq_> shapr: I think you need to embrace your inner Scandinavian first.
23:21:37 <NihilistDandy> shapr: If it makes you feel any better, I've spent 23 years failing to learn Finnish, among other languages
23:21:38 <shachaf> > 25 — 100000000000000000000000 -- hi
23:22:06 <shachaf> > 1————————————————————————————————————————————————————————————————————————————————————————1
23:22:15 <Lumpio-> I'm gonna go register "hankeamme"
23:22:16 <shachaf> ais523: You should probably kick me.
23:22:20 <shapr> pikhq_: I tried embracing a Scandinavian, she broke up with me.
23:22:30 <pikhq_> shapr: I specified "inner".
23:22:37 <shapr> I learned Swedish!
23:22:44 <shachaf> pikhq_: shapr's *inner* Scandinavian broke up with him.
23:22:51 <elliott> I think Swedes only ever learn Swedish sort of, too.
23:23:11 <shapr> hydrofer is a neat word.
23:23:24 <shachaf> shapr: You're not even in #scannedinavian. :-(
23:23:36 <fizzie> elliott: "hanke|amme". With a nifty logo.
23:23:47 <luite> bah this channel is too active for my productivity
23:24:00 <HackEgo> valid datasets: --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian --esolangs \ default: --eng-1M
23:24:05 <shachaf> luite: Just don't read it.
23:24:09 <shachaf> luite: None of the rest of us do.
23:24:11 <elliott> luite: It's like #haskell; you can just ignore all the noise.
23:24:18 <HackEgo> lomail feal dhe bas caobhan leòc t-uiste ursaich n-eunlamus bliab ceisd athalm chomh treit déidean ain cleach taobradh fiod fhallainn ulladha-rèid timchadh cais stàtaich caibhionn
23:24:23 <elliott> Except that #haskell is 90% noise and #esoteric is 101%.
23:24:25 <luite> #haskell is a lot quieter atm :)
23:24:29 <HackEgo> pozaną sesemizdaturozsiedocerwsz rytorowy skrysokowywracją nientaktotane wiedodraczał obształybyśmy bydlepylajkach mantetyczykryn zagrzekliłem
23:24:30 <pikhq_> Or never be productive.
23:24:35 <HackEgo> десически най засеялист частолмский масбродом дений тей ьняемом хьюэлоняющие солод
23:24:37 <sipa> `words --eng-fiction 1-
23:24:40 <olsner> `words --canadian-english-insane 10
23:24:47 <sipa> `words --eng-fiction 10
23:24:48 <fizzie> Okay, sleb now; have to be up in 4-and-a-half hours to give an insulin poke to our recently diagnosed diabetic cat. :/ ->
23:24:50 <shapr> I wish gandi would let me change my country, I don't live in Finland anymore :-(
23:24:56 <HackEgo> everrel amicallin orgolded genetota free pherbodynanting suctua constacebubbuktu lation timeno
23:25:01 <HackEgo> Argument "1-" isn't numeric in int at /hackenv/bin/words line 148. \ padi
23:25:03 * pikhq_ *still* hasn't bothered to actually get this thing to do LZ
23:25:05 <HackEgo> lebulk caterab vofa sau tection hath attaine int motected beckund
23:25:09 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WELCOME luite: not found
23:25:09 <elliott> shapr: you'd think gandhi would be more understanding of such things
23:25:16 <HackEgo> LUITE: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.
23:25:22 <HackEgo> monsophv wilbee adnancerit ische day oestru josing oraae sor mac mal typali cyclng cmic boarkr mtheran tre wlden glanded plc carta charmen cordik qaz krton
23:25:34 <HackEgo> ShApR: wElCoMe tO ThE InTeRnAtIoNaL HuB FoR EsOtErIc pRoGrAmMiNg lAnGuAgE DeSiGn aNd dEpLoYmEnT! fOr mOrE InFoRmAtIoN, cHeCk oUt oUr wIkI: hTtP://EsOlAnGs.oRg/wIkI/MaIn_pAgE. (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.)
23:25:54 <olsner> oh my, this channel really went down the bot hole this evening
23:26:05 <luite> monsophv wilbee andnancerit ische day
23:26:15 <elliott> shapr: can you change your name so i can press sha<tab>
23:26:17 <shapr> blame me, everybody else does!
23:27:18 <elliott> wow, I never thought anyone could be lazier than me
23:27:39 <elliott> `words --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --canadian-english-insane --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian --esolangs 50
23:28:30 <elliott> `words --eng-1M --eng-all --eng-fiction --eng-gb --eng-us --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --swedish --brazilian --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian 50
23:28:37 <HackEgo> dev grusomnia crab triinc help cabrainfuck ext() dot mycelium pointer quantum symespearbf binarylis sendejx musicasmith subskin ted rubescript tri super stantum netwofiftysnail .ger che jug
23:28:52 <HackEgo> claitnys surrym erchoo n'egoil jeshaslavio bogh-screg hellvee thie ker maane-chaa tonnoropal morteir ny-chey jedoobeydagh bengle breeagh lieen shiare eays neuglouan etlag furreyder daagyrtarman shan lharvian
23:28:58 <elliott> `words --eng-all --french --german --hebrew --russian --spanish --irish --german-medical --bulgarian --catalan --swedish --brazilian --manx --italian --ogerman --portuguese --polish --gaelic --finnish --norwegian 50
23:29:14 <HackEgo> webcarting lekterprdrownowboy größenphy qatarabasseturoo uljeitus annum perail cybenblivativaron bai naphenava mará уолствахъли prísti arterrsivelsiom abulark ion друсирод exema physika dark-ono blator tement сотэрд nachaura כשעתו
23:29:37 <elliott> that is the best word I have ever heard
23:29:43 <NihilistDandy> Phantom_Hoover: I get the feeling that everyone who speaks Manx is a dragon
23:30:42 <olsner> elliott: what is webcarting?
23:31:01 <shachaf> olsner: "the best word [elliott] [has] ever heard"
23:31:09 <ion> <HackEgo> … ion …
23:32:13 <HackEgo> zbalnymiancjujecie datnymienami cienaśnie wibranżowski świnetucja niemonowanizowa nieastowe przykowacyjny sztynomowandrzemnym nieautowaniują niezdyssidlana naklowertowi półletnikownej podbijaku wychodziweryplątech zbranowocestrynk zakomusinizorowni łowiajże ocystawizmy niehiperach nierzowałbyście rozsynosłowym pełźnicowie replatowańskakudze zaparskiemaszmacki
23:33:38 <Phantom_Hoover> "Because Manx has never had a large user base..." -- [[Manx]]
23:34:25 <Phantom_Hoover> i'm now seeing manx as a shitty scripting language that nobody used
23:35:17 <ion> shachaf: !
23:36:07 * shapr tries to remember how to configure DNS
23:36:29 <ion> shachaf: That was a weird tree.
23:36:34 -!- basti_ has quit (Quit: n8).
23:36:52 -!- noals has joined.
23:37:03 -!- NihilistDandy has quit (Quit: ["Textual IRC Client: www.textualapp.com"]).
23:37:11 -!- noals has left.
23:38:21 -!- monqy has joined.
23:38:49 <Phantom_Hoover> `learn webcarting is not dissimilar to Mario Kart, but uses real, remote-controlled go-karts. Participants describe it as "the outlandish spectacle of real go-karting combined with the thrill and immersion of Mario Kart".
23:41:28 <shachaf> ion: Try writing some functions that use it!
23:54:09 <ion> fmap f (Leaf a) = Leaf (f a); fmap f (Node t) = Node (fmap (f *** f) t)
23:56:35 <ion> Feel free to define it for us, i feel like doing something else. :-P
23:56:49 <kmc> Phantom_Hoover: is that a real thing?
23:57:14 <Phantom_Hoover> tell randall munroe about it, doubtless he'd think it's a good idea
23:57:54 <kmc> 99,999,999 blog authors and commenters agree: webcarting is "awesome"
23:59:14 <kmc> millions of office workers briefly comforted by the fantasy of indulging in a pointlessly expensive and destructive hobby
00:00:25 <kmc> not as hardy as stop-karts
00:02:05 <kmc> are those real russian words?
00:02:09 <kmc> up there a bit
00:02:13 <kmc> google can't translate most of them
00:02:27 <kmc> хьюэлоняющие
00:19:33 <luite> whoah i didn't know kmc was still alive!
00:19:52 <luite> you coming to bahug? ;)
00:24:11 <elliott> kmc: don't lie, you'd play webcarting.
00:26:48 <kmc> i almost went drunk go-karting in montenegro but decided against it
00:26:51 <kmc> beacuse i am lame
00:38:58 <FreeFull> At least not according to ghci
00:39:55 <ion> shachaf: Ok, i’m back and i felt like doing it. toList t = toList' (:) t []; toList' f (Leaf a) = f a; toList' f (Node t) = toList' (\(a,b) -> f a . f b) t
00:41:18 <ion> toList' needs a type signature, type inference seems unable to handle it. toList' :: (a -> b -> b) -> Tree a -> b -> b
00:41:34 <elliott> ion: This is data Tree a = Leaf a | Node (Tree (a, a)) right?
00:42:03 <FreeFull> elliott: This will be of great use to me
00:42:03 <elliott> ion: Doesn't this work? toList (Leaf a) = [a]; toList (Node t) = toList (fmap fst t) ++ toList (fmap snd t)
00:42:26 <shachaf> ion: I have toList (Leaf x) = [x]; toList (Node t) = concatMap (\(x,y) -> [x,y]) (toList t)
00:42:37 <shachaf> Also needs a type signature.
00:42:42 <shachaf> Yours is more efficient, I guess.
00:43:23 <ion> elliott: toList (Node (Node (Leaf ((4,5),(6,7))))) = [4,6,5,7]
00:44:11 <elliott> ion: s/++/`interleave`/ then?
00:44:53 <shachaf> I think I get elliott's behavior if I use unzip instead of the thing I did.
00:45:22 <elliott> anyway ion's implementation is obviously wrong because it's ugly
00:46:56 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:53:50 <ion> foldMap f (Leaf a) = f a; foldMap f (Node t) = foldMap (\(a,b) -> f a <> f b) t
00:54:08 <ion> and get toList for free
00:57:48 <elliott> isn't your toList' just fold with a wonky argument order anyway
00:58:23 <elliott> i guess it's actually more awkward here though :/
00:58:41 <elliott> fold (Leaf a) = a; fold (Note t) = fold $ fmap (uncurry mappend) t?
01:01:01 <elliott> pikhq_: what's the one that isn't twisted neumatic called
01:02:03 <elliott> ooh you can get IPS monitors cheapish nowadays??
01:03:26 <kmc> yeah they are pretty cheap now
01:03:34 <ion> elliott: Yeah, that works. But you’ll also have to define foldMap f = fold . fmap f (or alternatively, foldr).
01:03:50 <elliott> ion: pretty sure that's a default in Foldable
01:04:05 <ion> elliott: Alas, it isn’t.
01:04:19 <ion> The default foldMap uses foldr and the default foldr uses foldMap.
01:04:43 <elliott> kmc: yeah this ASUS one is surprisingly cheap ($175 for 23" LED/IPS), downsides are seemingly that it has a really ugly placement of buttons jutting out from the bottom that would annoy me endlessly & that it actually has less than 96 ppi
01:04:48 <ion> elliott: http://techreport.com/review/23291/those-27-inch-ips-displays-from-korea-are-for-real
01:04:53 <elliott> also it's asus and I seem to recall their displays are shit
01:05:06 <elliott> I guess what I mean is they started selling bad IPS displays
01:05:35 <elliott> oh it brags about 5 ms response time too
01:05:41 <kmc> there are no-brand korean IPS monitors for really cheap
01:06:04 <elliott> ion apparently just linked to that
01:06:12 <elliott> 27" is too big though :( i'm too small to use a 27" display
01:06:39 <kmc> http://www.overclock.net/t/1225919/yamakasi-catleap-monitor-club
01:07:01 <kmc> i have three dell IPS monitors at work
01:07:37 <elliott> also they look too high-ppi for 2012
01:07:47 <kmc> but i spent an unreasonable amount of money on them
01:07:58 <elliott> everyone is still using pixels so I cannot buy a high-enough ppi monitor without annoyingness :(
01:08:35 <kmc> if you want a 24" 16:10 monitor i like the Dell U2412M
01:08:38 <kmc> it's about $300 at newegg
01:09:00 <elliott> i can't actually buy things from newegg because i am in the uk
01:09:06 <elliott> I just find stuff on newegg and then pray someone sells it in the UK
01:09:14 <kmc> well i'm sure someone does sell this
01:09:18 <elliott> and it is always for like twice the price when I do
01:09:24 <kmc> they actually don't sell to UK or is the exchange rate just horrible?
01:09:45 <ion> elliott: Say hi from me to the queen.
01:10:13 <elliott> kmc: this one is 8 ms, it must be good
01:10:19 <kmc> yeah i've heard you basically pay the same number of pounds as the US dollar price :/
01:10:26 <kmc> for electronics in the UK
01:10:27 <elliott> how to judge monitors: look at the advertised response time
01:10:29 <elliott> the higher it is, the better
01:10:39 <ion> And the dynamic contrast ratio.
01:11:24 -!- monqy has quit (Quit: hello).
01:11:36 <elliott> kmc: i'm annoyed that the 14" displays are always 1920xwhatever
01:11:51 <kmc> all displays are 1920xwhatever basically
01:12:15 <ion> http://i.imgur.com/E00nl.gif
01:12:21 <elliott> anyway i hear dell monitors are good
01:12:24 <elliott> so maybe I should just look at those
01:12:28 <ion> The cheap Korean ones are 2560×something
01:13:10 <elliott> conspicuous consumption and all that
01:13:29 <kmc> hopefully the PC hardware industry will copy apple's retina display, like they copy everything else
01:13:37 <ion> kmc: Indeed.
01:13:57 <ion> About time to get a bit less sucky DPI values.
01:14:00 <elliott> http://upload.wikimedia.org/wikipedia/commons/6/64/IBM_T221.jpg
01:14:07 <elliott> ibm t221, because you don't want to be able to see your xterms
01:14:24 <elliott> i think it actually shows itself as multiple displays to the graphics card or whatever
01:14:30 <elliott> so you have to set up a multi-monitor OS setup to get it working
01:15:12 <ion> Ah, someone i know on IRC has one.
01:15:33 <kmc> only updates at 41 Hz :/
01:16:05 <elliott> kmc: you only get so much from 2001 tech
01:17:27 <elliott> [[You see, shortly after I mentioned on Twitter that I'd ordered one of these monitors, my friend Jeff Atwood of StackOverflow and SuperUser fame decided to order three of them on my "recommendation." Vaguely terrified, I tried to explain that my review was still forthcoming, but he wasn't dissuaded.]]
01:17:59 <elliott> ion: you forgot to mention how the buttons are broken
01:18:19 <elliott> good thing i am the kind of awful person who uses their display at full brightness always
01:19:08 <elliott> the buttons are just complicated
01:19:20 <ion> Buttons? You don’t need buttons where we are going.
01:19:53 <elliott> "I fairly quickly realized that the flashing power LED above the buttons was an indicator: the faster or slower it flashed, the higher or lower the volume."
01:20:17 <elliott> it is a good thing i don't have any use for in-monitor speakers
01:20:21 <elliott> because ha ha LED that flashes constantly
01:20:26 <ion> elliott: Please tell your Amazon to ship (sorry, “dispatch”) my booke quickly.
01:20:31 <kmc> theff atwood
01:20:54 <elliott> ion: sorry but amazon is a bookstore not a bookestore looks like you got mislead!!!
01:20:58 <kmc> elliott: I like to think that quote is about the T221
01:21:25 <kmc> bokehstore
01:22:10 <elliott> kmc: sorry it's about the korean things
01:22:33 <elliott> i would like to live in a world where equipment does not have awful status LEDs
01:23:26 <kmc> sometimes i disable them
01:23:35 <kmc> hack your annoying LED using tape
01:23:44 <elliott> but tape is also sort of gross
01:23:50 <kmc> on one computer i soldered a 10 kΩ resistor in series with the power LED
01:24:16 <kmc> hm i bet i could sell a power LED dimmer that just plugs into the motherboard header
01:24:47 <kmc> and then i could sell the Y3TI MUTILAT0R XTREME GAMER EDITION of that for $50
01:25:21 <elliott> i think i know what happens next in this annual effort to upgrade my computer to something better than a toshiba half-laptop-half-netbook-from-a-few-years-ago
01:25:26 <elliott> it's keyboard obsessiveness :(
01:30:07 <elliott> "The fact that these two monitors are in a dead heat in response times comes as little surprise, since they both appear to lack an internal chip dedicated to scaling or other forms of image processing. Such chips enable all sorts of nice features, but they're also one of the primary contributors to input lag."
01:30:15 <elliott> hm, I wonder what these are listed as in product descriptions so I can avoid them
01:30:42 <kmc> do you actually care that much about lag
01:31:03 <elliott> kmc: well it depends what you mean by care
01:31:04 <kmc> don't monitors regularly get sub 10ms latency even with processing?
01:31:11 <elliott> i have to at least pretend to care to myself
01:31:23 <kmc> the other day my monitor crashed such that half the screen was overlaid with noise
01:31:29 <kmc> and rebooting the monitor fixed it
01:32:05 <elliott> the mission of all tech is to introduce as many points of failure as possible
01:35:38 <elliott> kmc: do you know anything about the current state of SSDs? I am several years out of the loop
01:36:05 <kmc> yeah there are a lot of credible alternatives now
01:36:19 <kmc> http://www.storagereview.com/best_drives
01:36:32 <elliott> only the intel drives were worth anything last time I checked, which was a long time ago
01:36:37 <elliott> except some OCZ stuff was ok too or something
01:36:47 <kmc> yeah that's how it was when i bought my first SSD
01:36:55 <kmc> now Intel is still good but there are viable alternatives
01:37:38 <elliott> I don't suppose capacity is high enough to use SSDs exclusively without being rich yet
01:37:51 <elliott> admittedly this laptop just has a 256 gigabyte drive, but it's sort of not ideal
01:37:56 <kmc> i recently bought a 240 GB Intel SSD 520
01:38:15 <kmc> i'm happy with it so far
01:38:26 <kmc> my laptop has an older Intel X25-M 80 GB
01:38:38 <kmc> i find 80 GB is plenty of local storage
01:39:17 <kmc> since i'm only running one OS and it's Linux
01:39:37 <ion> I have a 120 GB OCZ Vertex 3. I’ve been happy with it.
01:39:40 -!- Frooxius has quit (Ping timeout: 246 seconds).
01:39:56 <elliott> kmc: well it depends what you mean by "local"
01:39:59 <kmc> i have all my TV shows and music and such on a 10 TB fileserver
01:40:07 <kmc> which i can sshfs-mount when i am at home
01:40:10 <elliott> I only use one computer at a time, so pretty much everything gets centralised
01:41:28 <kmc> i have a laptop and a file server and a desktop at work
01:41:46 <kmc> also an ec2 instance which just runs irssi and finch
01:45:27 <luite> hm, i find 80GB too small for my laptop, got a samsung 830 256gb recently :)
01:46:29 -!- copumpkin has quit (Ping timeout: 260 seconds).
01:47:04 -!- copumpkin has joined.
01:50:22 <elliott> "I also make bacon unicorn references on Twitter."
01:50:26 <kmc> i will get a new laptop soon, and it will have more space because SSD space is so cheap now
01:50:29 <elliott> that sure does win the prize for worst by-line ever
01:54:04 <kmc> sure but much cheaper than when i bought that 80 GB SSD back in 2009
01:58:20 <FreeFull> Well hardware prices do tend to go down for PC stuff
02:01:28 -!- FreeFull has quit (Quit: Zzzzzzzzzzzzzzzzzzzzz).
02:02:19 <kmc> FreeFull really has a way of stating obvious
02:02:51 <elliott> i see they have started pushing the clock speed of processors back up
02:02:57 <elliott> and dialing back the core numbers
02:04:35 <kmc> how's that?
02:04:49 <kmc> the new thing is "Turbo Boost" or whatever
02:05:01 <kmc> which means that if only one core is active, it can use a higher clock than the max clock of allcores together
02:05:09 <kmc> because the limiting factor is heat dissipation
02:05:41 <elliott> well there is this "Intel Core i7-3770K Ivy Bridge 3.5GHz (3.9GHz Turbo) LGA 1155 77W Quad-Core Desktop Processor Intel HD Graphics 4000 BX80637I73770K" (catchy name)
02:05:48 <elliott> last time the i7s were all like sub-3 ghz but 8-core
02:05:59 <kmc> i doubt they were 8 core
02:06:13 <kmc> they might have been erroneously advertised as such when they are 4 core with hyperthreading
02:06:56 <kmc> maybe, how long ago was that
02:07:14 <elliott> maybe i am thinking of the nehalem xeon
02:08:37 <kmc> yeah i don't think they have shipped more than 6 cores in a non-xeon chip
02:09:22 <elliott> ugh I forgot computer cases are the land of living hell
02:09:57 <kmc> yeah your choices are ugly beige box or some ridiculous blinged out monstrosity with a plexi cutout of a dragon fucking a robot
02:10:14 <kmc> i really like the Antec Three Hundred; it is a rare exception
02:10:26 <elliott> i seem to remember deciding to buy an antec case last time
02:10:40 <kmc> and it has good cable management stuff on the inside
02:11:00 <kmc> other recommendation is don't buy fans smaller than 120 mm if you care about noise
02:11:18 <kmc> and seal all places where dust might get in, with fan filters or just tape over them
02:11:51 <elliott> yeah I was sufficiently obsessive to develop Opinions about fans last time
02:11:54 <elliott> hopefully I can remember some of that by now
02:12:12 <elliott> (this is why I never get anything done)
02:13:09 <elliott> http://www.newegg.com/Product/Product.aspx?Item=N82E16811133188 wow look at this thing
02:13:34 <elliott> they should make an art exhibit filled with insane computer cases
02:14:11 <kmc> it's called every brick and mortar computer store
02:14:37 <kmc> that one is super ridiculous
02:14:56 <elliott> it looks like a transformer
02:16:32 <kmc> i like http://www.newegg.com/Product/Product.aspx?Item=N82E16811147111 as a small cheap case but it's out of production or something
02:17:03 <pikhq_> http://www.newegg.com/Product/Product.aspx?Item=N82E16811129042 appears reasonable
02:17:22 <elliott> kmc: did the computer industry work out what kind of ATX it likes best yet
02:17:32 <kmc> yep i have that one
02:17:35 <kmc> the antec three hundred
02:17:47 <elliott> I seem to remember deciding to get an Antec P182 last time, but apparently they don't exist now!!
02:17:53 <kmc> elliott: shrug
02:18:04 <pikhq_> elliott: *-ATX fits in a straight ATX case.
02:18:08 <kmc> if you have a big case then it doesn't matter
02:18:20 <kmc> if you want a small case then you might need a micro-ATX motherboard
02:18:26 <kmc> which isn't really that small
02:18:34 <elliott> it seems like there are more smaller-than-ATX mobos and cases than ATX stuff nowadays
02:18:48 <pikhq_> The other *-ATX stuff is just smaller versions of ATX; they fit in a full ATX case, you just have a lot of empty space.
02:19:07 <kmc> a lot of mobos are micro-ATX, yeah, because they don't need more space
02:19:18 <pikhq_> Well, there's larger variants too but you are probably not getting them.
02:19:25 <kmc> smaller stuff like mini-ITX is not compatible though
02:19:37 <elliott> holy shit RAM is cheap these days
02:19:46 <elliott> i mean even cheaper than it was before
02:19:48 -!- monqy has joined.
02:19:50 <kmc> yeah seriously
02:19:53 <pikhq_> Yes, RAM is cheaper than fuck.
02:20:02 <kmc> yeah you can get 4 GB for like $15
02:20:06 <kmc> you can't get a good fuck for that
02:20:37 <elliott> if I wanted I could buy 64 gigabytes of ram for $285
02:20:46 <elliott> uses I have for 64 gigabytes of RAM:
02:21:13 <kmc> yeah who even needs a SSD then
02:21:17 <kmc> all your files will be cached forever
02:21:34 <elliott> monqy: weren't you just here a second ago
02:22:25 <elliott> I wonder if I can convince myself buying 32GB of RAM for $140 is at all reasonable
02:22:35 <monqy> why do you need it
02:22:58 <elliott> monqy: that's the main problem :(
02:23:00 <monqy> I'm sure some starving kids in africa could make much better use of all that ram
02:23:12 <elliott> they don't have computers in africa
02:23:28 <luite> elliott: you need 64GB for debugging ghc!
02:23:43 <elliott> luite: you mean you need 64GB for compiling anything with ghc :P
02:24:02 <monqy> so is phantom hoovere blogging about brainfuck now
02:24:25 <monqy> so is taneb blogging about brainfuck now
02:24:35 <kmc> africa is such a poor country
02:25:27 <shachaf> hi kmc, luite, elliott, monqy, africa
02:26:20 <shachaf> elliott: How do you think I feel with a measly 8GB?
02:26:36 <monqy> I forget how many gb I have but I think it might be 2
02:26:44 <kmc> where's nortti
02:26:47 <pikhq_> But, I'm using a few-years-old system.
02:26:57 <pikhq_> Which only faintly resembles modernity.
02:26:59 <elliott> I've got 4 and I run out just browsing the web
02:27:01 <monqy> new systems are for losers
02:27:21 <elliott> monqy: are you calling me a loser!!!
02:27:23 <monqy> flash player nearly makes my computer grind to a halt
02:27:24 <pikhq_> I managed to get it so it's quite usable, though.
02:27:29 <pikhq_> I now use LXDE and Opera.
02:27:30 <elliott> monqy: do you use a dumpster computer
02:27:37 <shachaf> ion: Did you write fromList yet?
02:27:38 <monqy> well sometimes it's fine
02:27:40 <pikhq_> I'm using 2.6 gigs for tons and tons of tabs.
02:27:41 <monqy> other times it grinds to a halt
02:27:42 <elliott> pikhq_: xmonad uses less RAM than lxde
02:28:10 <shachaf> elliott: You know what uses less RAM than xmonad?
02:28:16 <pikhq_> LXDE is a non-revolting DE.
02:28:24 <ion> shachaf: Nah, i’m playing FTL.
02:28:25 <pikhq_> And doesn't make X leak like a sieve.
02:28:31 <pikhq_> (XFCE has X resource leaks.)
02:28:45 <shachaf> ion: Should I acquire FTL?
02:28:45 <elliott> pikhq_: xmonad is a non-(revolting DE)
02:28:54 <ion> shachaf: Yes. It’s great.
02:28:55 <shachaf> elliott: I was thinking of Windows 3.11.
02:28:56 <monqy> speaking of what's hot and new, what's the language of the future these days
02:29:01 <pikhq_> elliott: Why yes, yes it is.
02:29:05 <shachaf> ion: Does it require OpenGL to run? :-(
02:29:11 <kmc> i love dumpster computers
02:29:14 <kmc> also dumpsters
02:29:15 <elliott> i hear FTL is a good roguelikelike except for the last bit which is bad
02:29:21 <elliott> also it's actually a roguelike if you just press pause all the time
02:29:27 <kmc> my friend made really good pear bread from some pears from the whole foods dumpster
02:29:56 <elliott> kmc: do consumer motherboards support ECC RAM yet
02:30:09 <ion> I’d expect it to work well enough with software OpenGL implementations, but it might not. In any case, this is the best place to get it since you’ll get the DRM-free versions (Linux, too) as well as a Steam key. http://www.ftlgame.com/
02:30:21 <shachaf> ion: I don't even have software GL.
02:30:29 <monqy> i hear it's good roguelikelike except for i hear you need specific stuff or attack power or something to deal with the last bit. i don't know anything else about ftl
02:30:36 <monqy> those are just the things everyone talks about
02:30:39 <monqy> not what ftl actually is
02:30:41 <elliott> monqy: right I hear the final boss ``cheats''
02:30:52 <elliott> by not letting you use a bunch of playstyles that are viable up to that point
02:31:01 <shachaf> elliott: can i ``cheat'' too?
02:31:13 <ion> The boss is a challenge, but it’s winnable.
02:31:28 <kmc> elliott: not to my knowledge
02:31:38 <monqy> maybe sometime in the future I'll play a game
02:31:43 <kmc> maybe some high end enthusiast ones
02:32:02 <kmc> but maybe not because it would slow down kill3r overclockzzzz
02:32:57 <kmc> you can use a server board in a desktop of course
02:33:06 <kmc> but there are some drawbacks, like the onboard video is probably enormously shit
02:33:28 <kmc> we did this at ksplice and the onboard video literally could not handle moving windows around on a normal 2D linux desktop
02:33:36 <kmc> it had like 8 MB of VRAM
02:33:45 <elliott> well i plan to buy a video card of some sort
02:33:52 <elliott> since intel integrated graphics are still shit right
02:33:56 <elliott> except for having good linux support
02:34:06 <kmc> i think they're pretty good
02:34:16 <kmc> basically all laptops with integrated graphics have intel
02:34:32 <kmc> don't expect to play the latest games on high settings
02:35:09 <elliott> but how else can I delay the feeling of having spent an awful lot of money on a computer that is totally excessive for my needs
02:35:33 <ion> shachaf: Why don’t you have OpenGL?
02:35:45 <kmc> yeah you better buy at least two high end video cards
02:35:55 <kmc> more like pessimus am i right
02:36:53 <ion> Shouldn’t mesa work on anything?
02:37:18 <shachaf> I've yet to get any xorg.conf to work.
02:38:24 <kmc> perhaps bonghits will fix your xorg.conf
02:39:28 <shachaf> kmc: I don't I can do this alone. It'll have to be a joint effort.
02:39:31 <elliott> kmc: remember that terrible optimus keyboard
02:42:08 <kmc> it was extremely expensive because it has an OLED display under each key
02:42:20 <kmc> they also make a much cheaper (still too expensive one) which just has transparent keys over a LCD
02:42:28 <shachaf> That doesn't sound terrible to me.
02:42:40 <kmc> it probably sucks as a keyboard, i dunno
02:42:44 <pikhq_> I don't *look* at my keys.
02:43:10 <shachaf> kmc: Just imagine the amazing Compose-key customizations you could make to it!
02:43:12 <kmc> it's not so much a real product as an art / concept prototype, which people with far too much money could order on a small run basis
02:43:18 <kmc> that would be the best
02:43:47 <kmc> pikhq_: in theory it would be useful for learning the keyboard shortcuts for a new application
02:43:59 <kmc> you know, if the programs actually knew about it
02:45:15 <pikhq_> It would be nice if I felt like learning the kana layout.
02:45:46 <pikhq_> Though to do that "right" I'd probably also need the weird extra keys...
02:45:55 <kmc> the black keys
02:46:03 <pikhq_> The ones that would be right where the groove in my spacebar are.
02:46:04 <shachaf> Or maybe it would be more accurate to say that he ain't kana.
02:46:15 <pikhq_> (seriously, I've got a freaking groove worn in my spacebar)
02:49:11 <kmc> i read "i've got a freaking grove worm in my spacebar"
02:49:36 <shachaf> i read "three men in a boat"
02:49:48 <kmc> i read that after you told me to
02:50:04 <ion> http://images1.wikia.nocookie.net/__cb20100605031305/spyro/images/6/67/Grove_Worm.png
02:50:35 <kmc> i didn't even know it's a thing
02:54:46 <shachaf> Java 2 Electrical Engineer
02:55:28 <kmc> and some of ATaPL
02:55:44 <shachaf> Is it good to read if I want to learn more about type systems?
02:55:48 <elliott> kmc: What's the difference between Sandy Bridge and Sandy Bridge-E and Ivy Bridge? :(
02:55:57 <luite> ivy bridge is the new generation
02:56:15 <luite> e is some xeon version
02:56:34 <elliott> hmm, why are they selling consumer processors with E then?
02:56:55 <kmc> Ivy Bridge is newest, it's the same architecture as Sandy but shrunk to 22 nm process, and with some minor additional features
02:57:31 <pikhq_> -E is high end i7 and Xeon.
02:57:41 <pikhq_> That is, it's *also* some consumer models.
02:57:41 <kmc> a hardware RNG
02:57:45 <pikhq_> Ivy Bridge is what you want.
02:57:46 <kmc> and a semi useless kernel security feature
02:58:21 <elliott> i7s sure do seem more expensive than last time... I guess because now there's the whole i3/i5 split
02:58:36 <shachaf> elliott: Better wait for Haswell.
02:59:00 <pikhq_> If you can wait 'til June.
02:59:20 <elliott> shachaf: Is Haswell like Haskell?
02:59:40 <shachaf> elliott: Well, it has transactional memory!!!!
02:59:44 <pikhq_> elliott: Nah, it's the latest tock iteration of Intel's design cycle.
02:59:55 <shachaf> pikhq_: Isn't it a tick iteration?
03:00:05 <elliott> I see they aren't at single-digit nanometers yet
03:00:13 * shachaf suspects pikhq_'s clocks go backwards.
03:00:17 <pikhq_> No, tick is the die shrink.
03:00:28 <shachaf> Maybe it's my clocks, then.
03:00:32 <elliott> Why do they have the major changes on tock?
03:00:33 <pikhq_> Nah, it's Intel's clocks.
03:00:48 <shachaf> pikhq_: Intel's clocks aren't getting faster anymore. :-(
03:00:49 <elliott> monqy: we know our clocks better, rght?
03:00:51 <pikhq_> It makes a lot more sense for tock to be the die shrink.
03:01:03 <pikhq_> shachaf: Instructions-per-clock keeps going up at least.
03:01:26 <shachaf> elliott: You should get a 32-core machine like kmc.
03:01:35 <kmc> but it's not mine
03:01:37 <elliott> OK, if kmc donates the funds.
03:01:41 <shachaf> elliott: You should get a 48-core machine like kmc.
03:01:43 <shachaf> And compile colonels on it.
03:01:50 <kmc> i built it for ksplice and it's probably sitting unused in some oracle warehouse now
03:02:09 <pikhq_> Haswell will apparently have 10% higher instructions-per-cycle than Ivy Bridge.
03:02:19 <elliott> kmc: c'mon, where's my money
03:02:31 <kmc> do you think we are joking, or making with the funny stuff
03:14:35 <ion> Meanwhile, a hay competition: http://ubuntuone.com/0FaPo5mnm0KHJ1M4W1P6US
03:30:09 <kmc> I'm the Emperor, and I want dumplings!
03:30:53 <shachaf> ion: Help, is my type broken?
03:32:11 <ion> shachaf: No, you should simply use a dynamically typed language.
03:54:27 <shachaf> It made sense before but now I don't get it.
03:54:33 <Sgeo> Are the Humble Bundle ebooks worth reading?
03:54:36 <shachaf> 20:15 <shachaf> That would be something like data Tree k a = One k a | Two (Tree k (k,a,a))?
03:54:43 <Sgeo> I've read Cory Doctorow's Down and Out in the Magic Kingdom
03:56:31 <elliott> shachaf: Your Tree type is known, IIRC.
03:56:38 <kmc> there's a humble ebook bundle now? shit
03:56:48 <elliott> I think it has properties.
03:57:56 <shachaf> elliott: Is it even valid?
03:58:09 <shachaf> I wrote it but now I don't know how it works.
03:59:49 <kmc> these all sound pretty good
04:00:00 <kmc> except for doctorow's book, which sounds terrible
04:00:04 <kmc> but i never really liked anything he wrote
04:01:03 <elliott> I wouldn't buy anything with a Doctorow book in it just on principle.
04:01:31 <Sgeo> Wait, what's wrong with Doctorow?
04:01:49 <shachaf> elliott would arrange the bundle such that you get a Doctorow book unless you pay more than the average.
04:03:00 <kmc> hahaha shachaf
04:03:06 <elliott> Sgeo: I don't know, I've been ignoring him for the forseeable past on account of him being annoying.
04:03:25 <kmc> down and out was boring
04:03:33 <elliott> But I seem to remember he has a penchant for oversimplification.
04:03:34 <kmc> i just don't give a shit about disneyland
04:04:01 <kmc> and all the futuristic post-singularity stuff was pretty standard sci-fi fare by the time i read it
04:04:24 <pikhq_> And some of his other stuff just beats you over the head with politics.
04:04:30 <pikhq_> It's obnoxious *even if you agree with him*.
04:04:36 <kmc> eastern standard tribe was ok but i don't recall really enjoying it at any point
04:04:42 <elliott> kmc: Have you read The Metamorphosis of Prime Intellect?
04:04:47 <kmc> elliott: yes!
04:05:03 <kmc> i really enjoyed that book when i was like 14 and found it through everything2 or kuro5hin or something
04:05:26 <kmc> good times
04:05:28 <pikhq_> Might've been 15, but eh.
04:05:31 <shachaf> Back when all the "cool websites" had digits in their names.
04:05:43 <kmc> as opposed to missing vowels
04:05:59 <shachaf> kmc: By the way, how does it feel being over 9000 days old?
04:06:06 <elliott> I hear there's a sequel coming out roughly never.
04:06:17 <elliott> This reminds me I should finish catching up with Ra.
04:06:21 <elliott> kmc: You've read Fine Structure, right?
04:07:29 -!- zzo38 has joined.
04:07:32 <Sgeo> elliott, have you even finished Fine Structure yet?
04:07:37 <kmc> elliott: no
04:07:53 <kmc> shachaf: wow
04:08:00 <elliott> Sgeo: Yes! I'm now going to invoke this fact:
04:08:07 <elliott> kmc: What! Even *I've* read Fine Structure.
04:08:23 <elliott> even monqy has read Fine Structure assuming he actually got round to it which is unlikely
04:08:23 <pikhq_> kmc: Sam Hughes is awesome.
04:08:28 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
04:08:49 <Sgeo> kmc, I am thirding the Fine Structure suggestion.
04:08:58 <zzo38> I have added some examples of FurryScript, some people asked for some examples
04:09:12 <elliott> Hey, who said it was a suggestion???
04:09:18 <elliott> Maybe I hate Fine Structure and want to warn kmc off.
04:09:34 <pikhq_> elliott: You *read* it. Surely you don't hate it. :P
04:09:53 <elliott> pikhq_: you like everything you've read??
04:10:10 <shachaf> elliott: pikhq_'s point is that you can't read Fine Structure and not like it.
04:10:16 <pikhq_> elliott: No, but I suggest you can't read Fine Structure and hate it.
04:10:43 <zzo38> You might read it and neither like or hate it.
04:10:55 <elliott> shachaf: I've got a TIP for you, get the POINT?
04:13:13 <zzo38> This is FurryScript truth-machine program: 1[ <1> 1# ] PAR DUP ~#
04:13:31 <zzo38> Static analysis of stack effects would be required to prove that it would work.
04:13:51 <zzo38> However, it does not actually work, for similar reasons as some of the other examples of truth-machine that doesn't work for the same reason.
04:14:11 <shachaf> for similar reasons as some of the other examples of truth-machine that doesn't work for the same reason.
04:16:35 <zzo38> The implementation will work if you put 0 however, it will make 0 output and stop.
04:17:45 <zzo38> (If you are running the program on your own computer, the second command-line parameter is the input; if running on the form for custom scripts, use the PAS command to fill in the input.)
04:17:45 <kmc> reading Fine Structure
04:35:01 <kmc> what's a truth machine
04:36:32 <elliott> http://esolangs.org/wiki/Truth-machine
04:36:48 <shachaf> Do you know what a cake machine is?
04:37:00 <shachaf> I'm just going to paste my pun in.
04:37:01 <shachaf> 11:34 <ousado> I found this to be a very nice informal intro: "Some of the best things in life are free; and some are not. Truth is free. Having proved a theorem, you may use this proof as many times as you wish, at no extra cost. Food, on the other hand, has a cost. Having baked a cake, you may eat it only once. If traditional logic is about truth, then linear logic is about food"
04:37:07 <shachaf> 11:35 <shachaf> Unless you're Zeno.
04:37:10 <shachaf> 11:35 <shachaf> Zeno knew how to halve his cake and eat it too.
04:51:49 <kmc> oh i thought this was going to be about the cake being a lie
04:54:26 <nortti> 05:26 < kmc> where's nortti // I was sleepinh
04:55:01 <shachaf> Welcome back to awakeness.
04:55:09 <shachaf> kmc: Did you notice your 9000th birthday?
04:56:02 <shachaf> kmc: I wonder whether _Typing Haskell in Haskell_ is a good example of literate programming.
04:59:54 -!- sivoais has quit (Ping timeout: 240 seconds).
05:04:05 -!- sivoais has joined.
05:14:33 -!- mig22 has joined.
05:25:21 <kmc> i did not notice it
05:25:26 <kmc> but you did
05:25:31 <kmc> which is weird but cool
05:25:43 <kmc> anyway i have to sleep now, ttyl
05:41:42 -!- copumpkin has quit (Ping timeout: 276 seconds).
05:42:17 -!- copumpkin has joined.
06:29:55 <Sgeo> elliott, monqy UPD8
06:30:38 <zzo38> What does linear logic mean?
06:31:07 <zzo38> O, I found in Wikipedia, OK
06:36:08 <zzo38> Is it possible to make up a type system similar to Haskell but also has kinds for linear logic instead of only intuitionistic?
06:36:50 <zzo38> (There are some cases I have thought of where I have wanted something like this)
06:50:24 -!- nooga has joined.
06:54:36 -!- ais523 has quit.
07:00:41 -!- nooga has quit (Ping timeout: 246 seconds).
07:17:25 <zzo38> Is the list of stuff put near the top of the page is OK? Do you like this? http://esolangs.org/wiki/User:Zzo38/FurryScript
07:25:13 <shachaf> There Once Was A Fish Named Fred
07:25:19 <shachaf> best esoland or bestestest esolang?
07:25:30 <ion> unit besting
07:26:23 -!- epicmonkey has quit (Remote host closed the connection).
07:26:37 <ion> “(However, note that it is being discussed this notice might be wrong.)” That should be followed by “(However, note that it is being discussed also this notice might be wrong.)”
07:30:36 <zzo38> shachaf: I don't know!
07:33:37 -!- zzo38 has quit (Remote host closed the connection).
07:34:23 <shachaf> zzo38: "(there must be a space after [ and before and after ] however)"
07:34:31 <shachaf> Can you drop the requirement for a space after ]?
08:21:40 -!- epicmonkey has joined.
08:22:20 -!- hagb4rd has joined.
08:32:44 -!- epicmonkey has quit (Read error: Connection reset by peer).
08:35:12 -!- epicmonkey has joined.
08:36:05 -!- Phantom_Hoover has joined.
08:37:40 -!- atriq has joined.
08:40:59 -!- zzo38 has joined.
08:48:41 <atriq> zzo38, you've mentioned going to conventions in the past, correct?
08:50:19 <atriq> What kind of conventions?
08:50:30 <shachaf> The unconventional kind, no doubt.
08:50:31 <lambdabot> shachaf: You have 1 new message. '/msg lambdabot @messages' to read it.
08:53:48 -!- epicmonkey has quit (Remote host closed the connection).
08:53:59 -!- epicmonkey has joined.
08:55:02 <zzo38> I went to anime convention
08:55:23 <atriq> Just out of curiosity, were there many Homestucks?
08:58:02 <atriq> How long ago was this?
09:00:23 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
09:04:36 <atriq> No crowd of people being weird wearing grey make-up and orange horns?
09:05:03 <zzo38> I think there were two.
09:05:57 <atriq> I guess there are either a lot of Homestucks around here or they're really organized
09:07:32 <atriq> I wonder if the "her" mentioned on Koen's user page refers to someone specific
09:09:05 <fizzie> The list is kind of coffee-oriented.
09:09:32 -!- monqy has quit (Quit: hello).
09:10:40 <atriq> I've got an ssh server on my other computer, and I want to access some HTML pages on there from here
09:11:04 <fizzie> It does still have "find her" which doesn't sound all that specific; then again, it just might be someone specific but in hiding.
09:11:09 <atriq> Is there a way I can set it up so I can point my browser at file////whatever/othercomputer/whatever/file.html
09:12:19 <fizzie> You can do 'sshfs othercomputer:/place /anotherplace" on thefirstcomputer, and then you can just use file:///anotherplace/thing to access the /place/thing of othercomputer.
09:12:34 <fizzie> At least with luck, and with sshfs+fuse installed.
09:13:04 <fizzie> Also it's probably best not to mix ' and " like I did there.
09:16:06 <atriq> This is a VERY roundabout way to mess with haskell
09:21:40 <atriq> Okay, that's a VERY good reason for that to not work
09:43:49 <elliott> "Warning: If you don't follow the instructions correctly, the result may be an unbootable Linux. Even if you do follow the instructions correctly, the result may be an unbootable Linux."
09:46:22 <fizzie> An unbootable Linux is always an option.
09:51:58 -!- zzo38 has quit (Remote host closed the connection).
10:04:14 -!- Slereah_ has changed nick to Slereah.
10:06:53 <elliott> fizzie: More like an inscrutable Linux, right?
10:10:32 <Lumpio-> atriq: ...the usual way to access HTML pages is via a HTTP server
10:16:29 -!- Phantom_Hoover has joined.
10:22:27 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
10:23:19 <atriq> Lumpio-, advise on setting one up?
10:46:30 <atriq> That... appears to be a pacman game
10:47:07 <atriq> Did I do something wrong?
10:48:37 <fizzie> You probably used the "wrong" Linux distribution.
10:48:49 <fizzie> (All of them are wrong.)
10:49:06 <atriq> Is Solaris the wrong Linux distribution?
10:49:08 <elliott> I think Arch system maintanence would be a lot less stressful if pacman(1) was just a pacman game.
10:49:27 <elliott> I think I can definitively state that Solaris is, in fact, the most wrong a Linux distribution can possibly be.
10:49:44 <atriq> Okay, because I'm not using that
10:49:48 <atriq> How about Windows 98 SE?
10:50:00 <elliott> Windows 98 SE is quite a good Linux distribution IMO.
10:50:10 <elliott> I mean, it's better than Solaris.
10:50:17 <fizzie> All the cool dudes use Windows 98 SE Linux.
10:50:55 <elliott> My favourite Linux distribution is BeOS.
10:51:03 <atriq> When GHC gets ported to Haiku I'll probably use Haiku
10:51:32 <atriq> (actually serious)
10:54:06 -!- mig22 has quit (Quit: mig22).
11:04:19 <atriq> I'd need nVidia drivers
11:04:52 -!- mig22 has joined.
11:12:27 -!- ais523 has joined.
11:32:30 -!- Phantom_Hoover has joined.
11:32:38 <ais523> I'm busy adding /ˈæmbiːɛf/ to the wiki
11:33:27 <elliott> ais523: come up with an ascii redirect or i'll kill you :P
11:33:31 -!- elliott1 has joined.
11:33:41 <ais523> there's a link in the language list
11:33:59 <elliott> ais523: but I like typing http://esolangs.org/wiki/$x
11:34:17 <ais523> OK, I'll add a redirect from [[$x]]
11:35:14 <Phantom_Hoover> it sounds terrible but my brain is too mathsed to bother wading through that spec
11:37:24 <elliott> ais523: you know about protocols right
11:47:45 <ais523> http://esolangs.org/wiki/$x
11:48:01 <elliott> ais523: that redirect goes to an interesting place
11:48:07 -!- mig22 has quit (Quit: mig22).
11:49:27 <ais523> xchat doesn't like the link?
11:49:43 <elliott> ais523: you have a bad category
11:49:45 <ais523> try http://esolangs.org/wiki//%CB%88%C3%A6mbi%CB%90%C9%9Bf/ instead
11:49:52 <ais523> you can fix it, it's a wiki
11:49:57 <ais523> didn't know if BF derivatives got that one
11:50:21 <elliott> and yr article is the only entry
11:50:31 <ais523> meh, it shouldn't be included anyway
11:51:02 <ais523> anyway, going home, I need sleep
11:51:24 <elliott> ais523: here i was just about to ask you programming questions too!!
11:51:27 -!- ais523 has quit (Quit: Page closed).
11:51:45 <elliott> fizzie: Guess whose lucky day it is??
11:52:17 <fizzie> I think it's most definitely not mine.
11:54:31 <elliott> fizzie: Is there some kind of generic thing that encapsulates a protocol and gives it encryption (and ideally authentication?) so my server/client don't have to worry about it per se? My current best idea is just opening "ssh server connect-to-local-server-socket-and-hook-stdio-to-it" as a process and using that as the "socket", which seems a bit... suboptimal.
11:56:53 <fizzie> Well, uh. Certainly there are rather generic encrypted-and-optionally-authenticated transport channels. TLS, for example. But maybe that's not what you mean.
11:57:41 <elliott> fizzie: Right, I thought TLS might be what I'm thinking of. I... guess I'll go look into that.
11:58:04 <elliott> (I don't suppose TLS supports SSH public-key authentication. :p)
11:58:46 <elliott> Mostly TLS seems to have lots of complex fiddly thingies I'm not sure I care about, like certificate-signing and so on.
11:59:22 <fizzie> At least not normally, no; the authentication aspects are traditionally all X.509.
11:59:54 <elliott> Right. That sounds like it could potentially be a pain to set up on clients and stuff "just" for this thing I'm working on.
12:01:13 <elliott> So maybe I'll just go with the ssh thing after all.
12:01:58 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
12:02:32 <elliott> Aren't these things meant to be nice?
12:02:37 <fizzie> I think TLS supports pre-shared key ciphersuites, if that's an option. Of course it's not quite SSH public keys.
12:03:21 <fizzie> (But it's not dabbling with certificates either.)
12:03:58 <elliott> fizzie: I don't even know what a ciphersuite is.
12:04:27 <elliott> IS IT: a suit you wear in bad cyberpunk novels that encrypts your travels through CYBERSPACE with a cipher?
12:05:18 <fizzie> Just a term they use. "The fiddly details," sort of. A name for the particular pile of encryption and authentication and whatnot algorithms that are used.
12:06:26 <elliott> Right. I mean, I don't even know if the typical Linux system has the programs you need to set such a thing up, though.
12:06:42 <elliott> It sounds fiddlier than making an ssh key, which takes 0 seconds because everyone* has one.
12:08:27 <fizzie> I didn't know whether TLS libraries support the TLS-PSK things if it's an extension; based on a quick google, though, at least GnuTLS does, and has helper functions to generate and hex-encode/decode keys. But, really, for pre-shared keys, it's just K random bits.
12:08:53 <fizzie> OpenSSL API isn't IIRC the most pleasant to work with. GnuTLS probably isn't any nicer, though.
12:09:13 <elliott> Hmm, I guess I could do some sort of ssh tunneling deal rather than "ssh server connect-to-local-server-socket-and-hook-stdio-to-it".
12:09:18 <elliott> That seems... less awful, maybe.
12:09:27 <elliott> fizzie: Well, I don't anticipate talking to it directly from C.
12:10:43 <elliott> Anyway this is all sounding awfully complicated. :(
12:11:21 <fizzie> There are netcat-like tools that provide encrypted pipes, but it's arguable whether that's really any better than your SSH method.
12:11:28 <fizzie> Possibly the optimal solution may depend on what's comfortably available for your implementation language.
12:12:01 * elliott doesn't even know that, except that it's almost certainly one of Haskell, Python or C, and probably not C.
12:12:06 <elliott> My planning: woefully under.
12:12:29 -!- Arc_Koen has joined.
12:15:12 <atriq> Arc_Koen, is the "her" mentioned on your user page someone specific, or just a general goal?
12:15:37 <Arc_Koen> though there are specific candidates
12:15:41 <fizzie> elliott: SSL does have the advantage that I'd expect most decent things have a way to speak it. (And everyone has the openssl command line tools installed, so fiddling with the certificates isn't too many orders of magnitude more complicated than fiddling with SSH public keys, except the commands are a lot uglier.)
12:16:58 <elliott> fizzie: I don't suppose it gets any easier if I settle for password-based authentication?
12:18:15 <fizzie> Well. A TLS encrypted-only channel with just a password query would be easy, but also somewhat MITM-risky, since there's no way to detect someone just forwarding all traffic in the middle.
12:19:22 <fizzie> SSH at least has the host key checks. Assuming the user just doesn't type "yes" to all questions.
12:19:47 <elliott> fizzie: Right. Well, in this case it's more the server trying to keep riff-raff out than much about the client trusting the server.
12:21:34 <fizzie> Apparently there's also a "TLS-SRP" password-based-key-exchange authentication extension, implemented in the usual libraries.
12:21:38 -!- nooga has joined.
12:22:19 <Arc_Koen> atriq: I'm surprised you read that already
12:22:35 <fizzie> So you can nowadays do TLS with certificates, with pre-shared keys, or with passwords. Fancy.
12:22:36 <atriq> (disclaimer: I don't actually read everything)
12:24:07 -!- Phantom_Hoover has joined.
12:26:37 <atriq> I think I'm being flirted at
12:27:30 <fizzie> atriq: Shoot a cloud of ink to hide behind, and then slink away.
12:30:58 <Arc_Koen> how do I put a link to http://esolangs.org/wiki//ˈæmbiːɛf/ on the wiki?
12:31:18 <Arc_Koen> the starting / seems to be confusing the wiki
12:32:44 <Arc_Koen> (and then common sense tell me I could've seen how ais did on the languages list)
12:42:09 <Arc_Koen> so i : just a symbol to say "don't treat this link like you usually do" or does it mean something like . and .. in a unix shell?
12:47:33 <elliott> format is [[namespace:foo]]
12:47:47 <elliott> the "main" namespace's name is an empty string
12:48:00 <elliott> if you do [[:foo]] then it's the page named foo... otherwise [[/foo]] is interpreted as a subpage of the current page
12:49:15 <atriq> So it kind of is like Unix's "."
12:50:46 <elliott> and [[foo:bar]] is like C:\bar because now the metaphor is windows
12:51:22 <Arc_Koen> and how to make a distinction between a subpage and a page that has a / in it?
13:09:32 -!- nooga has quit (Ping timeout: 265 seconds).
13:14:59 -!- mig22 has joined.
13:16:08 -!- boily has joined.
13:21:19 <Phantom_Hoover> a/b is a subpage of a if a exists, otherwise it's just a page with a / in the name.
13:21:40 -!- jiella has joined.
13:22:34 -!- nooga has joined.
13:24:45 <Phantom_Hoover> wikipedia has at least two maps of the island that thomas the tank engine is set on
13:33:48 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
13:35:33 -!- aloril_ has quit (Ping timeout: 276 seconds).
13:36:07 <shapr> Are there any spoken programming languages?
13:36:26 <shapr> fizzie: Can your department hack up a spoken programming language please? :-)
13:36:31 <Slereah> Tell him "Make a program that does this"
13:36:49 <shapr> I was thinking more like lojban->Haskell
13:37:06 <Slereah> Spoken or written is just the medium
13:37:15 <shapr> I guess if there's an easy way to turn spoken lojban into text, that would be enough.
13:37:18 <Slereah> You could just say out loud written Haskell
13:37:28 <Slereah> And get a speech to text converter
13:37:39 <Slereah> Lojban isn't really any more programmy than any other language
13:37:53 -!- Phantom_Hoover has joined.
13:37:56 <Slereah> Also there's Plain English, but that is the worst language
13:39:20 -!- nooga has quit (Ping timeout: 255 seconds).
13:39:48 <FireFly> There are plenty of (buggy) english-to-*-compilers out there, though
13:40:32 <fizzie> shapr: I don't think we have investigated recognition of spoken (existing) programming languages, let alone tried to make an easily-recognizable new language.
13:41:51 <Slereah> Don't you remember Plain English, fizzie!
13:41:56 <Slereah> From osmonian or something
13:42:17 <fizzie> I mean "we" as in our department.
13:42:31 <fizzie> It's not like I could forget Plain English, no.
13:42:57 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
13:43:43 <fizzie> The department that the speech recognition/synthesis research group that I'm in is part of.
13:44:34 <fizzie> The Osmosian Order! Man, they're wacky.
13:44:55 <fizzie> shapr: I'm not sure if anyone mentioned fungot's implementation language to you yet, so let me just do a shameless plug here.
13:44:56 <fungot> fizzie: but that makes things worse than ever! everybody is going straight to the top, since who cares! the utahraptor's been having a bad time to say all the run-of-the-mill thoughts we have!
13:44:59 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
13:45:13 <fizzie> Yes, it made things worse than ever.
13:45:58 -!- nooga has joined.
13:47:35 -!- aloril_ has joined.
13:48:09 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:51:19 -!- boily has quit (Quit: Poulet!).
13:52:47 <shapr> fizzie: That's terrifying.
13:56:54 -!- atriq has quit (Quit: Leaving).
13:59:25 <ion> Stratos jump successful http://youtu.be/yFU774q6eVM
14:08:01 -!- Phantom_Hoover has joined.
14:12:41 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
14:12:47 -!- nooga has quit (Ping timeout: 252 seconds).
14:16:36 -!- atriq has joined.
14:19:18 -!- augur has quit (Remote host closed the connection).
14:36:20 -!- mig22 has left.
14:40:12 -!- copumpkin has joined.
14:49:46 -!- augur has joined.
14:55:31 -!- Lumpio- has quit (Ping timeout: 260 seconds).
15:03:33 -!- FreeFull has joined.
15:07:59 -!- AnotherTest has joined.
15:08:01 -!- AnotherTest has left.
15:08:06 -!- AnotherTest has joined.
15:12:13 -!- Phantom_Hoover has joined.
15:14:21 -!- Frooxius has joined.
15:21:27 -!- Lumpio- has joined.
15:49:55 -!- AnotherTest has quit (Quit: Leaving.).
15:50:17 -!- AnotherTest has joined.
15:58:54 -!- nooga has joined.
16:06:40 -!- ogrom has joined.
17:03:37 -!- atriq has quit (Quit: Leaving).
17:13:45 -!- Vorpal has joined.
17:15:33 -!- elliott1 has quit (Ping timeout: 248 seconds).
17:15:50 -!- elliott has quit (Ping timeout: 244 seconds).
17:17:13 -!- AnotherTest has quit (Quit: Leaving.).
17:17:27 -!- AnotherTest has joined.
17:22:15 -!- impomatic has joined.
17:23:48 -!- atriq has joined.
17:33:12 <atriq> You know, at the beginning of the American Civil War, the confederates thought that they could count on the support of the British, because Britain imported a lot of cotton from them.
17:33:45 <atriq> However, when they asked for military aid, Britain thought "why bother" and got cotton from Egypt instead, which turned out to be cheaper.
17:33:55 <atriq> The moral of the story is, don't rely on the British?
17:37:42 <Phantom_Hoover> never underestimate the ability of the british to screw you over?
17:38:55 <Phantom_Hoover> afaict the opium wars were basically a bond villain plan
17:40:07 -!- augur has quit (Remote host closed the connection).
17:43:52 <atriq> "Well, Mister Bond, you have discovered my plan to sell opium to China so we can afford tea and they'll be too high to care!"
17:44:08 <atriq> (I don't know that much about the Opium wars)
17:44:26 -!- augur has joined.
17:44:33 <Phantom_Hoover> i think at some point the chinese tried to foil this fiendish plan by banning opium
17:45:50 -!- AnotherTest has quit (Quit: Leaving.).
17:47:01 -!- AnotherTest has joined.
17:52:07 <atriq> Arc_Koen, did you ever try Homestuck again?
17:52:25 <atriq> Since, well, yesterday evening
17:52:31 <Arc_Koen> last time was about 14 hours ago
17:52:31 <atriq> Did you get that hot chocolate?
17:53:00 <Arc_Koen> well, the chocolate I got about two hours ago, actually
17:53:51 <Arc_Koen> I'm currently implementing deadfish in thue
17:53:51 -!- augur has quit (Read error: Connection reset by peer).
17:54:00 <Arc_Koen> (and also wondering why I'm doing that)
17:54:14 -!- augur has joined.
18:06:18 -!- zzo38 has joined.
18:07:38 -!- epicmonkey has quit (Ping timeout: 245 seconds).
18:07:46 <AnotherTest> http://esolangs.org/wiki/The_Best_Place_To_Grab_Cash_Financing_Very_Quickly ?
18:08:06 <atriq> I need to make an esolang REALLY QUICKLY
18:10:38 -!- AnotherTest1 has joined.
18:10:39 <AnotherTest1> (note: this idea might not work out, and if it does, it will be virtually impossibe to write a program in this language)
18:10:59 -!- AnotherTest has quit (Disconnected by services).
18:11:12 -!- AnotherTest1 has changed nick to AnotherTest.
18:12:29 <atriq> (look at Fueue and Eodermdrone and Malbolge)
18:12:54 <AnotherTest> atriq: are you interested in languages with randomness?
18:13:08 <atriq> I'm more interested in functional languages
18:13:33 <atriq> Nah, I want to hear it
18:14:06 <AnotherTest> okay so, this is only a vague idea (keep that in mind):
18:15:14 <AnotherTest> A is parsed into a tree. So the root node would be the first instruction, and then a random number is generated in the range (for example) [1, 5]
18:15:28 <AnotherTest> this number determines the number of child nodes the root has
18:16:14 <AnotherTest> next, each of the child nodes will (if enough instructions are available) also get a random amount of child nodes in the range [1, 5]
18:16:30 <AnotherTest> this continues until there are no more instructions
18:17:13 <AnotherTest> Then a random child of this root node is executed
18:17:25 <AnotherTest> this process continues until a node without children is reached
18:18:34 <AnotherTest> I'm not entirely sure whether it would be possible to write an actual program (that does something that makes sense) in this language
18:19:53 -!- ogrom has quit (Read error: Connection reset by peer).
18:21:12 <AnotherTest> It would be an accomplishment to write a hello world program in such a language
18:25:06 <impomatic> The Code Poems book appears to have been published... http://wired.co.uk/news/archive/2012-10/12/code-poems-book - not sure about the availability
18:26:36 <atriq> Could be interesting
18:28:09 <AnotherTest> Well, if we want to to make this, we will need to determine the details
18:28:23 -!- Por_gammer has joined.
18:28:39 <AnotherTest> for example, what would be the basic instructions?
18:29:06 <atriq> `welcome Por_gammer
18:29:08 <AnotherTest> I was also thinking to have the memory as a tree (with randomness when going down, but not when going up)
18:29:16 <HackEgo> Por_gammer: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
18:29:28 <Sgeo> "Scala macros are, in fact, cats."
18:30:46 <AnotherTest> atriq: what if we took the brainfuck instructions, and organized them in this new manner?
18:30:57 -!- sipa has left.
18:31:04 <atriq> AnotherTest, I think it may work well with function-y ness
18:31:42 <atriq> Define each function to be n-adic where n is any number from 1 to 5
18:31:49 <atriq> Then you can use the whole tree
18:33:34 <AnotherTest> atriq: so you want to make a fully functional language, where the flow of instructions is in this manner?
18:34:25 <atriq> If each subtree is a function from a tree to a tree
18:34:36 -!- Gregor has set topic: BE WARNED: The people here are the completest asses. | http://phantom-hoover.tumblr.com/ | http://codu.org/logs/_esoteric/.
18:35:09 <Gregor> nortti: The completest.
18:35:27 <FireFly> What is an incomplete donkey?
18:36:00 <Gregor> FireFly: The truest of tragedies :'(
18:39:34 <AnotherTest> so, atriq, suppose you said fun a (with possibly function b as argument) = (+ 1) b; It would do either b or (+1) (so it would either be 1 or b + 1)
18:40:02 <atriq> I haven't really thought of this much
18:40:29 <AnotherTest> So you can specify an amount of arguments, but it's not certain that they will get passed
18:41:38 <AnotherTest> f(x, y, z) = x + y + z might do x, y, z, x + y, y + z or x + z
18:41:52 <AnotherTest> assuming that the parameters that are not passed are 0
18:42:25 <AnotherTest> or are the neutral element for the operation that is being done (thus when multiplying they equal 1)
18:42:43 <atriq> Or when composing they equal the identity function
18:43:37 <AnotherTest> Yes f(x, y, z) = (x · y · z)(1) might thus be 1
18:43:57 <AnotherTest> (assuming · is actually an open dot, which it is not unfortunately)
18:47:08 -!- epicmonkey has joined.
18:48:19 -!- boily has joined.
18:49:52 -!- atriq has quit (Ping timeout: 244 seconds).
18:51:18 -!- epicmonkey has quit (Remote host closed the connection).
18:53:15 <boily> maybe something like *bwarg*. half-my mouth is frozen from the dentist.
18:54:01 <Gregor> So your dentist injects dry ice instead of novocaine too!
18:54:04 <Gregor> I thought that was just mine! *whew*
18:54:42 <boily> I'd be very surprised if it was dry ice.
18:54:51 <boily> but they went and used multiple products.
18:56:26 <Phantom_Hoover> Gregor probably just doesn't understand because nobody trusts his country with the good anaesthetics
18:56:54 <Gregor> HA HA YOU GUYS ARE BAD AT JOKES
18:57:09 <Gregor> The joke was that “frozen” is a bizarre word choice.
18:57:39 <boily> pardon my French :p
18:57:48 <Phantom_Hoover> how many members of monty python were american again??
18:58:06 <Gregor> Aaaaand Phantom_Hoover thinks that Monty Python was about jokes.
18:58:26 <olsner> a "half-my" mouth is an interesting concept ... I guess the other half belongs to the novocaine
18:59:02 <boily> shows how affected I am by the intervention...
19:00:05 -!- AnotherTest has quit (Quit: Leaving.).
19:01:56 -!- augur has quit (Remote host closed the connection).
19:02:20 -!- atriq has joined.
19:07:03 <ion> http://fi3.eu.apcdn.com/full/63422.jpg
19:09:07 <Gregor> Hello Android! HAW HAW HAW
19:10:57 -!- augur has joined.
19:11:18 -!- Taneb has joined.
19:17:51 -!- zzo38 has quit (Remote host closed the connection).
19:20:39 <atriq> Oh dear god I've cloned myself
19:22:24 <Arc_Koen> atriq: here is an idea of a name for an esolang
19:22:54 -!- Taneb has quit (Disconnected by services).
19:23:22 -!- Taneb has joined.
19:24:05 -!- Taneb has quit (Disconnected by services).
19:24:31 -!- Taneb has joined.
19:26:49 <Arc_Koen> http://esolangs.org/wiki/Talk_talk:Turing_tarpit
19:27:20 <Arc_Koen> I was planning to make this a language one day or the other but I don't really have a proper idea yet
19:27:43 <Arc_Koen> I was thinking maybe something self-modifying in the same vein as emmental (except a turing tarpit)
19:28:19 <Arc_Koen> so if you have a proper idea any time soon, go ahead :)
19:28:59 <olsner> beware the turing armpit, where [expunged]
19:29:16 <Arc_Koen> thing is I really need to make a language heavily inspired by nomics but I don't have a consistent idea yet
19:31:04 <Arc_Koen> beware the turing armpit, where everything is possible but nothing is smooth?
19:41:07 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
19:41:33 <Sgeo> kmc, remember when I was talking Common Lisp and was trying to work out how to get the lexical environment to show off that whatever we were talking about could be done in Common Lisp, and I gave up?
19:42:00 <Sgeo> Pretty sure it could be done in Common Lisp, because I did it in Clojure and I think Common Lisp is sufficiently similar in regards to the basic concept
19:42:03 <Sgeo> https://www.refheap.com/users/sgeo
19:42:11 <Sgeo> https://www.refheap.com/paste/5886
19:51:52 <Sgeo> !rot13 clojure
19:52:47 <olsner> ok, rot13 is boring again
19:53:17 <Sgeo> !rot13 na na. na na na na.
19:55:48 <boily> would have been nice if it had outputed somthing like ŕŕŕŕŕ
19:56:22 -!- Phantom_Hoover has joined.
19:56:51 <Sgeo> !rot13 hey hey hey goodbye
19:57:11 <Sgeo> !rot13 na na. na na na na. hey hey hey.
19:57:12 <EgoBot> an an. an an an an. url url url.
19:58:01 -!- augur has quit (Remote host closed the connection).
20:00:58 <fizzie> ^rot13 can you do UPPERCASE?
20:01:20 <Sgeo> I could play this game all day
20:02:21 <Sgeo> !rot13 verticle tabber
20:02:32 <Sgeo> !rot13 vertical tabber
20:02:37 <Sgeo> I learned how to spell!
20:05:26 -!- nooga has quit (Ping timeout: 255 seconds).
20:09:43 <Arc_Koen> atriq: so, any idea for Talk talk: Turing Tarpit?
20:10:14 <Arc_Koen> "talk talk" sounds like the french onomatopoeia for knock knock
20:11:25 <Arc_Koen> so I was thinking something about a nomic-inspired turning tarpit with something about doors
20:11:29 -!- FireFly has quit (Excess Flood).
20:11:56 -!- FireFly has joined.
20:13:12 <atriq> Something like dupdog, maybe?
20:13:59 <Arc_Koen> if I recall correctly dupdog was something about WARNING: Don't Spend Your Whole Night Trying To Understand Dupdog!!!
20:14:31 <Arc_Koen> also tarpit looks like the french word for carpet
20:14:39 <Arc_Koen> so maybe something with doors and carpets
20:15:35 <Arc_Koen> actually that's consistent with the idea of a turning tarpit: you're in a circular, spinning room with lots of doors and a nice rug under your feet (and instructions are behind the doors)
20:16:25 <Arc_Koen> oh wait no I'm mistaking it with something else
20:16:36 <Arc_Koen> dupdog is that thing using the length of the source code, right?
20:16:57 <boily> but what happens if you shuffle too much in that room? wouldn't trying to read the instructions cause an electric discharge and fry them?
20:17:51 <Arc_Koen> like, sometimes door can open in the middle of two instructions?
20:18:23 * Arc_Koen adds that to his list of potentially-interesting-ideas
20:24:00 <Arc_Koen> oh, or a non-deterministic language using the same idea as ais523's amBF, where instructions are in a circle, and everytime you use the symbol for an instruction, one of the three instructions (previous, that one, next) will be executed instead
20:24:53 <Arc_Koen> (by "in the same idea as /'æmbeef/" I don't mean it needs to be a brainfuck-derivative)
20:33:32 -!- augur has joined.
21:04:20 -!- Vorpal has quit (Ping timeout: 248 seconds).
21:05:49 -!- atriq has quit (Remote host closed the connection).
21:12:02 -!- Taneb has quit (Ping timeout: 255 seconds).
21:38:57 -!- zzo38 has joined.
21:46:08 -!- boily has quit (Quit: Poulet!).
21:48:56 <kmc> there should be an "invent your own cargo cult C performance rule" contest
21:49:03 <kmc> a la http://chronicle.com/blogs/linguafranca/2012/10/03/a-new-contest-centered-around-usage/
21:53:13 <Sgeo> https://www.refheap.com/paste/5886 getting the lexical environment, both variable symbols and values, in Clojure
21:53:22 <Sgeo> And a similar concept should work in Common Lisp, I think
21:54:00 <zzo38> Do you like this? http://www.chessvariants.org/index/msdisplay.php?itemid=MSsecretbombsche
21:55:38 -!- nys has joined.
21:55:39 <Sgeo> And of course, it should be easy to write an eval that takes such a map and wraps its argument in a let
22:00:58 <Arc_Koen> zzo38: why "Cannot escape pictorial checkmate."?
22:01:58 <Arc_Koen> checkmate usually means "you're in check and cannot escape" - if you change the rules, then it seems only logical that it affects the possibilities of checkmate
22:02:27 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:02:30 <Arc_Koen> unless those new rules have actually been tested and it has been decided it's actually better this way
22:04:08 <Arc_Koen> (also, I've never seen the phrase "pictorial checkmate" before, but I assume it means "a position that would be a checkmate if we were playing regular fide chess")
22:04:23 <zzo38> Arc_Koen: Yes, that is what "pictorial checkmate" means, and I have seen it before.
22:08:06 <Arc_Koen> zzo38: have you had a look at http://www.chessvariants.org/large.dir/contest84/orwellchess.html ?
22:20:37 <Arc_Koen> that's the chess variant I've been the most impressed with
22:20:55 <Arc_Koen> and I'm looking (not actively, though) for an opportunity to play it
22:23:31 -!- copumpkin has joined.
22:24:25 <zzo38> Maybe make up some pieces and board you can do it
22:25:19 <Arc_Koen> I was thinking a circular board would be more appropriate than a cylindrical one
22:25:34 <zzo38> Then make up your own variant of variant
22:26:01 <Arc_Koen> it's not really a variant - it's just another way to represent the 'torus' aspect of the board
22:27:57 <zzo38> Is my description of FurryScript better now? I think you have asked for some improvement and now I have done.
22:28:19 <Arc_Koen> if I were to make a program with graphics it would probably display the board both as a cylinder and a disc
22:28:23 <zzo38> It is not only the description; if you have additional questions, or you wanted some additional commands, you can ask that too.
22:28:44 <zzo38> Arc_Koen: OK, it could be done like that, could be one way I guess.
22:29:49 <Arc_Koen> what's a "domain specific" programming language?
22:30:38 <Arc_Koen> does that mean it's been designed for one purpose mainly (with "domain" meaning a field like physics or biology)?
22:30:55 <zzo38> http://en.wikipedia.org/wiki/Domain-specific_language
22:31:01 <shapr> Arc_Koen: Yes, like PHP
22:31:07 -!- augur_ has joined.
22:31:22 <shapr> PHP is PHP HyperText Preprocessor or something like that.
22:31:30 <Arc_Koen> so what's furryscript's domain?
22:32:05 <shapr> SNOBOL was for text processing
22:32:20 <shapr> A good example of a domain specific language is regular expressions.
22:32:22 <zzo38> FurryScript is even more domain-specific than PHP; the original reason it was written was actually specifically to interpret this: http://zzo38computer.org/furry/scripts/furrygenerator_7thsanc.txt (it is also where the name comes from)
22:32:41 -!- augur has quit (Read error: Connection reset by peer).
22:33:26 <zzo38> Although the current version implements many commands which are not used in that file.
22:35:49 <Arc_Koen> I have no idea what "generation" means
22:36:26 <zzo38> You also have to read the section about "templates" like it tell you to do
22:36:40 <zzo38> Probably I could explain it better, but am unsure how.
22:37:08 -!- shapr has left ("focus on code").
22:37:26 -!- augur_ has quit (Remote host closed the connection).
22:37:55 <zzo38> But if you are still confused, you can ask more specific or see some of the external examples might explain a bit?
22:38:32 -!- Gregor has changed nick to RocketJSquirrel.
22:38:46 <Arc_Koen> hmm yes I'm definitely still confused
22:39:20 <Arc_Koen> the examples use PAR a lot and I have no idea what it does either
22:39:53 <Arc_Koen> also what do the "( -- )" and "( ? -- ? )" means?
22:40:01 <zzo38> The purpose of PAR command is explained clearly in the text; it is used to read input.
22:40:14 <zzo38> Things like "( -- )" are stack effect notation (commonly used with Forth).
22:41:44 <zzo38> I added another paragraph of text to the "Generation" section.
22:42:15 <Sgeo> If I want to implement esolangs in Clojure, I should find a good parsec-equivalent
22:43:02 <Arc_Koen> hmm I understand a little better now
22:43:41 <Arc_Koen> so it's mainly a functional language right? except with side effect on the stack
22:44:34 <zzo38> Arc_Koen: Somewhat, I guess
22:45:15 <Arc_Koen> there's this whole continuation thing I'm not sure I understand
22:45:54 <Arc_Koen> does it mean when a subroutine is called, it is provided with a copy of the stack (and of the program state)?
22:46:49 <zzo38> No; they all use the same stack. It is only provided with a copy of the stack and of the rest of the program state if you use the command to call with the current continuation. Also, continuations cannot be called backward.
22:47:10 <zzo38> You may see these files for more examples: http://zzo38computer.org/furry/scripts/ (I have added a link directly to this directory now)
22:50:39 <zzo38> Do you understand the external examples? If anything in external example not understand, you can ask specific clarification I may add the comments if needed.
22:52:47 <Arc_Koen> well the beer program looks very much like any usual stack based language
22:53:05 <Arc_Koen> though I'm not sure when things are outputted
22:54:11 <zzo38> Things output when the program ends, any strings remaining on the stack are process any instructions they contain, and then send to output.
22:54:31 <Arc_Koen> king_game and lifepath don't really look like programs at all - do they simply take some input to fill in some form?
22:55:05 <zzo38> "<You have <colordata> <skindata>, <numberdata> eyes, and <featuredata>.>
22:55:13 <Arc_Koen> ok, but that means the 99 is put on the stack first, then 98, etc., so 99 will be outputted last instead of first?
22:56:02 <zzo38> "<You have <colordata> <skindata>, <numberdata> eyes, and <featuredata>.>" is a string which contains four instructions, "colordata", "skindata", etc, these subroutines are called and anything added to the stack since that point, one is selected at random and the instruction is replaced with that result.
22:56:17 <zzo38> Arc_Koen: No, because the + at the beginning of any instruction tells it to use concatenation.
22:56:38 <zzo38> You can try the programs if you want; either install it on your own computer or use the HTML form.
22:57:35 <Arc_Koen> so king_game basically generates a sentence with random values for skindata and stuff?
22:59:50 -!- impomatic has left.
23:01:43 <Arc_Koen> SU ( y x -- result ) Subtract x from y does this mean that the code "3 0 SU" will output -3 and not 3?
23:02:55 <zzo38> Actually it won't output anything because it is not a string, but you can cast it to a string by +<> afterward
23:05:36 <Arc_Koen> so in ( z y x -- z' ) the top of the stack is z?
23:06:03 <zzo38> The top of the stack is x same as in Forth
23:07:27 <zzo38> Hopefully it is understandable now?
23:09:26 <Arc_Koen> still a bit confused about the whole good-bad-very bad thing
23:10:47 <zzo38> Perhaps look at some of the files that use those commands
23:22:47 -!- jiella has quit (Quit: Leaving.).
23:23:46 <kmc> Arc_Koen, shachaf: I would say that "domain-specific language" is a much narrower thing than PHP
23:23:59 <kmc> PHP is basically a general purpose programming language
23:24:13 <kmc> a terrible one, and definitely with lots of web stuff baked in, but with lots of other things too
23:24:20 <kmc> and i mean "web stuff" is a really broad domain
23:24:24 <Arc_Koen> I think it's similar to ocaml's exceptions
23:24:40 <kmc> to me a DSL is like, a makefile language or a 3D renderer scene description language or such
23:25:04 <kmc> they might be turing complete but they aren't oriented towards the general tasks of programming
23:25:15 <zzo38> kmc: Yes, I agree with you.
23:25:32 <kmc> one insight is that one should focus on building the domain specific bits and not on reinventing the programming language bits, incrementally and poorly
23:25:58 <kmc> basically every 'config file' format eventually grows a bad implementation of variables, control flow, etc.
23:26:17 <kmc> so the so-called "embedded domain-specific languages" are really just libraries in a host language, and you have the host language's features for these things
23:26:34 <kmc> er I meant to ping shapr not shachaf
23:26:36 <kmc> but shapr is not here
23:27:19 <kmc> i worked somewhere where both frontend and backend were written in a mixture of Ruby on Rails and PHP
23:27:54 <kmc> meaning, both the webapp and backend batch processing or sysadmin scripts
23:27:56 -!- augur has joined.
23:28:08 -!- augur has quit (Remote host closed the connection).
23:28:19 -!- augur has joined.
23:34:11 <zzo38> kmc: Your description of these thing of domain specific programming, is a bit like how FurryScript is like
23:34:43 -!- nys has quit (Quit: quit).
23:38:47 <shachaf> I need to find a place which is quiet and pleasant and open at odd hours.
23:39:21 <shachaf> The library works for everything except for the odd-hours bit.
23:39:37 -!- Por_gammer has quit (Ping timeout: 245 seconds).
23:47:05 <shachaf> ion: You gonna talk about applicative functors with XMunkki face-to-face, like a man? Huh?
23:48:14 <ion> I know him from elsewhere.
23:49:26 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
23:50:04 <kmc> i wonder when 4TB drives will be reasonably priced and not shitty
23:51:35 <shachaf> What counts as "reasonably"?
23:52:18 <shachaf> Looks like you can get one for $300
23:52:53 <kmc> it's twice as much as a 3TB drive, though
23:53:54 <shachaf> How times have changed, or something.
23:54:13 <kmc> and 2TB is like $110
23:54:29 <shachaf> I should get an external drive.
23:55:30 <kmc> my storage array is 99.6% full
23:56:25 <shachaf> How many TBs is that 0.4%?
23:56:43 <shachaf> I never petabyte I didn't like.
00:06:56 <oklofok> just zip it repeatedly until it's small
00:08:37 <oklofok> many people just zip once and get it down to like 80%, but what they don't realize is 0.8^10 is like 0.1
00:08:51 <shachaf> oklofok: You should patent it!
00:09:28 <oklofok> in fact i should probably patent powers of endomorphisms in general.
00:11:07 <oklofok> so today i was programming shit
00:11:32 <kmc> that's funny, today i was shitting programs
00:11:53 <oklofok> i think i may have omitted some detais
00:12:47 <oklofok> what i was going to say was i programmed this thing that takes a texture and then chooses uvs of vertices in your triangles so that the texture is always the same size
00:12:56 <oklofok> which was ofc kinda trivial
00:13:08 <oklofok> but there was this one bug i just couldn't fix
00:13:28 <oklofok> everything was the wrong way around
00:13:45 <oklofok> i'm going to share this with you so you'll know in the future
00:13:58 <oklofok> clockwise means the direction clocks tick in
00:14:07 <oklofok> not the direction they don't tick in
00:14:30 <oklofok> i even invented a mnemonic
00:14:44 <oklofok> clockwise sounds kinda like "clock direction"
00:14:57 <oklofok> so you can think of it as like the "direction of a clock"
00:15:55 <oklofok> kinda far-fetched i admit but mnemonics are sometimes easy to remember because they are so silly
00:16:15 <kmc> there seem to be at least 21 linux installs buried somewhere within my drive array
00:16:33 <kmc> no actually some of them are freebsd
00:38:55 <ion> Hehe. It was fun to see him out of character. http://www.huffingtonpost.com/2012/10/14/stephen-colbert-meet-the-press-newsman_n_1965034.html?utm_hp_ref=butt
01:03:43 <kmc> WD and Seagate 3TB drives are exactly the same price
01:03:54 <kmc> i guess the thing to do is get half of each
01:35:42 -!- nooga has joined.
01:40:47 -!- nooga has quit (Ping timeout: 240 seconds).
01:45:52 <ion> Please Move The Deer Crossing http://youtu.be/CI8UPHMzZm8
01:57:28 <shachaf> Anyone except Sgeo can submit 4clojure questions.
01:57:59 * Sgeo wants to make the halting problem a 4clojure problem >:D
02:04:30 -!- luite has quit (Quit: leaving).
02:34:39 -!- monqy has joined.
03:02:25 -!- Arc_Koen has quit (Quit: Arc_Koen).
03:02:46 -!- Arc_Koen has joined.
03:03:11 -!- Arc_Koen has quit (Client Quit).
03:21:50 -!- RocketJSquirrel has changed nick to Gregor.
03:30:43 -!- Robdgreat has joined.
03:39:40 -!- tswett has quit (Changing host).
03:39:40 -!- tswett has joined.
03:41:23 -!- Frooxius has quit (Ping timeout: 245 seconds).
03:45:25 <kmc> i got my oyster mushroom spores
03:45:39 <kmc> the sketchy spore company included a baggie of opium poppy seeds as a 'free gift'
03:56:34 -!- sirdancealot7 has quit (Ping timeout: 240 seconds).
04:03:30 <zzo38> I have entered Famicompo Mini vol.9 and you will see it at Halloween, unless you wish to enter in which case you must submit before then.
04:04:11 <shachaf> When's Canadian Halloween?
04:06:02 <zzo38> However, I am talking about the Japanese, which is on October 31.
04:06:11 <shachaf> Wow, it's the same day as American Halloween. What a coïncidence.
04:06:25 <zzo38> (I don't know if they celebrate Halloween much, but nevertheless it is still October 31)
04:12:03 <zzo38> If you write any music, try!!
04:16:12 <shachaf> zzo38: Do they have a 4th of July in Canada?
04:20:11 <zzo38> Yes, but it is not anything special.
04:25:28 <pikhq_> zzo38: Halloween in Japan is a) a very recent cultural import b) not a big deal.
04:26:07 <pikhq_> But it does exist in Japan, yeah.
04:26:13 <pikhq_> And even in a vaguely recognizable form.
04:28:27 <pikhq_> Fairly unlike say, Christmas, or Valentine's, though, in that it's not exactly a major holiday.
04:48:53 <zzo38> Is it possible to make any halting problem into a formula of Typographical Number Theory which is true statement if and only if the program halts (even though it cannot be proven)?
05:14:16 <zzo38> How common is additive synthesis in .NSF?
05:55:41 <zzo38> Some of the userboxes I made on Wikipedia are used by others some aren't. nopatents (me only) netcatIRC (1 other) DVIPDF (me only) gamediff4 (me only) AntiAntiTerrorist (1 other) ownpythag (self only) dnd35 (30 other) Vonkeror (me only) Yomi (me only) AkagiManga (me only) TeX (3 other) Mad_TeX (me only) gopher (1 improper use) ...
05:59:16 <zzo38> ... cmdline (95 other) textonlygame (8 other) hexeditMIDI (5 other) dnd35monsterchara (3 other)
05:59:22 <kmc> shachaf: http://wwpgd.com/
05:59:31 <kmc> this is what happens when I wander into TechCrunch
06:04:30 <kmc> oh man http://twitter.com/shit_hn_says
06:29:13 <zzo38> I mentioned Dada Engine and rmutt in the document of FurryScript now.
06:32:38 <zzo38> Those are also programming language for random text generator, which I did not know about when I made FurryScript, and are less powerful and less strange than FurryScript.
06:35:08 -!- zzo38 has quit (Remote host closed the connection).
06:40:37 -!- sirdancealot7 has joined.
06:57:34 -!- sirdancealot7 has quit (Ping timeout: 240 seconds).
07:01:57 -!- nooga has joined.
07:06:35 -!- epicmonkey has joined.
07:10:31 -!- FreeFull has quit.
07:18:28 -!- nooga has quit (Ping timeout: 252 seconds).
07:33:35 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:43:10 -!- hijack has joined.
07:43:36 -!- hijack has changed nick to mean.
07:48:15 -!- zzo38 has joined.
07:57:07 -!- copumpkin has quit (Ping timeout: 245 seconds).
07:57:41 -!- copumpkin has joined.
08:08:41 -!- nooga has joined.
08:23:49 -!- sirdancealot7 has joined.
08:54:49 -!- nooga has quit (Read error: Operation timed out).
09:03:24 -!- monqy has quit (Quit: hello).
09:09:12 -!- epicmonkey has joined.
09:16:34 -!- zzo38 has quit (Remote host closed the connection).
09:44:55 -!- Arc_Koen has joined.
10:13:59 -!- TodPunk has quit (Read error: Connection reset by peer).
10:14:12 -!- TodPunk has joined.
10:32:39 -!- Phantom_Hoover has joined.
10:32:39 -!- Phantom_Hoover has quit (Client Quit).
10:32:45 -!- Phantom_Hoover has joined.
11:02:36 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
11:14:27 -!- coppro has quit (Ping timeout: 260 seconds).
11:15:07 -!- coppro has joined.
12:02:30 -!- Frooxius has joined.
12:08:04 -!- Phantom_Hoover has joined.
12:32:02 -!- boily has joined.
12:36:52 -!- MoALTz has joined.
12:51:44 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
12:59:15 -!- ogrom has joined.
13:26:43 -!- elliott has joined.
13:30:15 -!- Phantom_Hoover has joined.
13:39:22 -!- epicmonkey has quit (Remote host closed the connection).
13:39:32 -!- epicmonkey has joined.
13:41:35 <elliott> tswett: do you have any opinion wrt http://esolangs.org/wiki/Talk:Surprised_look
13:43:59 <elliott> Arc_Koen: about http://esolangs.org/wiki/User:Koen/brainfuck.thue -- I think generally we avoid putting user pages in categories like that, but it seems like it'd fit just fine as an article
13:44:04 <elliott> (say [[Brainfuck interpreter in Thue]] or something)
13:45:53 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:49:10 <elliott> Arc_Koen: the link in http://esolangs.org/w/index.php?title=EsoInterpreters&curid=2229&diff=34294&oldid=33862 we explicitly avoid per http://esolangs.org/wiki/Esolang:Policy
13:49:20 <elliott> maybe the best thing there is an external link to your user subpage (as bizarre as it is)
13:49:25 <elliott> anyway ais523 might have a better idea than me
13:55:30 <Arc_Koen> elliott: yes I don't know why when I started writing it it felt more natural to make it a user page, and when I was over it felt like it should have been in the main namespace
13:56:01 <Arc_Koen> also for EsoInterpreters, all the links are just "X"s with no distinction between internal and external links
13:56:13 <elliott> should move it by copy-paste so I get the opportunity to do an exciting history merge
13:56:18 <elliott> haven't had enough of those since NSQX disappeared
13:56:35 <elliott> Arc_Koen: well the external links are coloured slightly differently
13:56:40 <elliott> not the biggest deal though
13:57:08 -!- MoALTz has quit (Ping timeout: 246 seconds).
13:57:43 <Arc_Koen> by copy-paste do you mean I should just create a new page and don't care about the old one?
13:59:56 <elliott> that's exactly what you should not do but also exactly the thing that would lead me to have to merge the history of the pages
14:00:02 <elliott> it was a joke, makes no sense unless you were around when NSQX was :p
14:00:41 <Arc_Koen> well I still should start by rewriting all the parts that were first-person, right?
14:01:30 <elliott> honestly you should just ak ais523, probably he remembers the last time we had an interpreter in userspace
14:04:52 -!- copumpkin has joined.
14:12:23 <tswett> elliott: not really. I don't particularly care whether it's deleted or salvaged.
14:23:44 <elliott> i was thinking it should probably just have the blanking reverted and some note about it being abandoned added
14:23:53 <elliott> since deleting it is a shame and leaving it blank is confusing
14:25:14 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
14:29:31 <Arc_Koen> and a link added to the logs where it is described?
14:29:55 <elliott> too lazy to find that myeslf
14:36:38 -!- copumpkin has changed nick to Shylock.
14:36:52 -!- Shylock has changed nick to copumpkin.
14:37:10 -!- Phantom_Hoover has joined.
14:44:24 -!- augur has quit (Ping timeout: 244 seconds).
14:49:51 -!- ogrom has quit (Quit: Left).
15:03:02 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
15:24:37 -!- nooga has joined.
15:34:56 -!- pikhq_ has quit (Read error: Operation timed out).
15:35:10 -!- pikhq has joined.
15:36:26 -!- augur has joined.
16:05:19 -!- AnotherTest has joined.
16:06:31 -!- Vorpal has joined.
16:09:14 -!- Phantom_Hoover has joined.
16:11:57 -!- Vorpal has quit (Ping timeout: 276 seconds).
16:27:42 <Arc_Koen> hey is there a something like "plainpres" or something to force every cell in a wikitable to look like it were in <code></code> snippets?
16:29:57 <ion> http://i.imgur.com/59rw6.jpg
16:33:00 -!- zzo38 has joined.
16:42:17 <elliott> Arc_Koen: you should just wrap them in <code> or <pre>
16:44:33 <Arc_Koen> I seem to recall last time I used <pre> inside a table, Oerjan edited after me to make it more simple
16:45:47 <elliott> probably do whatever oerjan did then :p
16:47:32 <shachaf> @ask zzo38 Want a message?
16:58:16 * Arc_Koen resists the urge to imitate shachaf and AnotherTest
17:02:18 -!- FreeFull has joined.
17:15:23 <zzo38> Other programming languages for random text generator other than FurryScript includes Dada Engine and rmutt, although FurryScript seems to have many more features, and an entirely different syntax.
17:15:23 <lambdabot> zzo38: You have 2 new messages. '/msg lambdabot @messages' to read them.
17:15:59 <zzo38> TITLE("The Passion Considered as a Mornington Crescent Game")
17:36:57 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
17:49:29 -!- augur has quit (Read error: Connection reset by peer).
17:49:50 <Arc_Koen> @tell Arc_koen remember to ask ais523 about User namespace when you get back
17:49:55 -!- augur has joined.
17:58:57 -!- AnotherTest has quit (Quit: Leaving.).
17:59:08 -!- AnotherTest has joined.
17:59:26 -!- atriq has joined.
18:00:58 -!- augur has quit (Read error: Connection reset by peer).
18:01:23 -!- augur has joined.
18:10:15 -!- mean has quit (Remote host closed the connection).
18:10:51 -!- mean has joined.
18:11:21 -!- mean has quit (Client Quit).
18:16:44 <ion> http://blog.humblebundle.com/post/33714074132/humble-ebook-bundle-is-now-five-times-more-hilarious
18:17:44 <kmc> ebooks... of web comics?
18:17:45 -!- epicmonkey has quit (Remote host closed the connection).
18:18:01 <olsner> it's like... the web in book form in web form
18:18:31 -!- Phantom_Hoover has joined.
18:19:55 <ion> "Eläinlääkintäeverstiluutnantittomuuttaankinkohan vihollisarmeija jämähti?" = "I wonder if one of the reasons why the enemy army stopped was their lack of Veterinary Lieutenant Colonels?"
18:22:25 <shachaf> ion: The string on the left looks shorter than the string on the right, but that's only due to lack of spaces.
18:23:07 <ion> > length "ä" -- did lambdabot handle this right?
18:23:38 <ion> > let f = length . filter isAlpha in map f ["Eläinlääkintäeverstiluutnantittomuuttaankinkohan vihollisarmeija jämähti?", "I wonder if one of the reasons why the enemy army stopped was their lack of Veterinary Lieutenant Colonels?"]
18:24:13 <atriq> I'm temporarily out of money, so I won't get the Humble eBook Bundle
18:24:31 <elliott> ion: i can't decide if that was actually an increase in hilariousness or a decrease
18:24:43 <elliott> the SMBC books will probably be good
18:24:58 -!- sirdancealot7 has quit (Ping timeout: 265 seconds).
18:25:54 <ion> > "length"
18:28:26 <atriq> This morning I was bored so I wrote a program to find perfect numbers
18:28:47 <atriq> It found eight straight away then ran out of memory half an hour later
18:29:13 <olsner> eight magic numbers, or the number eight?
18:29:30 <atriq> 6, 28, 496, yada yada yada
18:29:44 <olsner> I don't know what those are
18:30:20 <atriq> Numbers that are equal to the sum of their factors (other than themself)
18:30:32 <atriq> Factors of 6 are 1, 2 and 3. 1 + 2 + 3 = 6
18:30:41 <elliott> it's more perfect if you include themself
18:31:02 <atriq> Factors of 28 are 1, 2, 4, 7, 14. 1 + 2+ 4 + 7 + 14 = 28
18:31:07 <atriq> Then it would just be 1?
18:32:43 <atriq> import Data.Numbers.Primes -- from the primes package on Hackage
18:32:52 <elliott> <atriq> Then it would just be 1?
18:32:55 <elliott> 1 is pretty perfect don't you think
18:33:13 <atriq> main = mapM_ print [2 ^ (p - 1) * q | p <- primes, let q = 2 ^ p - 1, isPrime q]
18:33:24 <atriq> 1 is ridiculously imperfect.
18:33:40 <atriq> 33550336 is perfect
18:34:00 <atriq> The program can easily be altered to find mersenne primes
18:34:31 <fizzie> I have a sed script to find perfect numbers.
18:34:32 <atriq> By removing "2 ^ (p - 1) * "
18:35:03 <atriq> Does it work in a similar way?
18:35:33 <fizzie> I don't remember how it works.
18:36:20 <AnotherTest> I just wrote a program to draw a madelbrot fractal
18:37:07 <fizzie> I don't remember what I'm meant to give as input to this program.
18:37:18 <AnotherTest> although it doesn't render them smooth (although there is an algorithm for that I believe)
18:38:41 <fizzie> http://sprunge.us/cQZc -- oh, so that's how it works, it looks for as many numbers as there are letters on the line.
18:39:22 <fizzie> Sadly, I don't think it's really efficient enough to go past 8128 very well.
18:40:03 <fizzie> This one tests only numbers of the form 2^(p-1)(2^p-1).
18:40:20 <fizzie> So it'll skip all those possible odd perfect numbers.
18:40:39 <fizzie> (The first version tests every number for perfection, but it's kinda slower.)
18:42:27 <fizzie> I think it does unary math, anyway.
18:43:01 <fizzie> At least the body of the pow2 loop is just a s/^x*/&&/.
18:43:17 <fizzie> (There's a unary-to-decimal conversion at the end.)
18:44:19 <ion> Meanwhile in the Free World, http://www.huffingtonpost.com/2012/05/20/asset-forfeiture-wisconsin-bail-confiscated_n_1522328.html?utm_hp_ref=butt&src=butt&comm_ref=butt
18:45:14 -!- AnotherTest has left.
18:51:32 <atriq> I don't believe in odd perfect numbers.
18:53:27 <fizzie> Are you SURE there aren't any?
18:54:35 -!- ais523 has joined.
18:55:20 <fizzie> Though given that lower bound of 10^1500, maybe the unary-using program wouldn't need to spend time looking for it.
18:56:18 <olsner> hmm, so it's not the sum of factors, but the sum of all combinations of factors?
18:56:44 <olsner> I was just about to combine factor and dc into a perfect number tester, but now I'll probably not bother
18:56:45 -!- Zerker has joined.
18:57:13 <fizzie> olsner: Sum of all (positive, proper) divisors.
19:08:00 -!- epicmonkey has joined.
19:11:05 <zzo38> Can any programming be made involving linear logic making functions?
19:12:00 <atriq> Don't know enough about linear logic
19:25:50 <atriq> Today at school I provided an alternate proof that for any a and b in a group, (ab)^-1 = a^-1 b^-1
19:25:54 <atriq> (alternate to the teachers)
19:25:57 <atriq> And someone filmed it
19:27:16 <atriq> That is what I meant
19:29:04 <shachaf> How many proofs of that can there be?
19:29:59 <atriq> At least two, evidently
19:30:38 <atriq> I can't remember the teacher's proof
19:31:24 <atriq> (ab)^-1 = b^-1 a^-1
19:31:43 <atriq> -> (ab)^-1 a = b^-1 a^-1
19:32:14 <atriq> -> (ab) ^ - 1 a = b^-1
19:32:41 <atriq> -> (ab)^-1 a b = b^-1 b
19:32:53 <atriq> Actually, I have no idea what I'm doing
19:32:58 <atriq> My proof was better
19:34:35 <shachaf> ((ab)^-1)(ab) = 1; (((ab)^-1)a)b = 1; ((ab)^-1)a = b^-1; (ab)^-1 = (b^-1)(a^-1)
19:56:14 -!- augur has quit (Remote host closed the connection).
20:38:47 -!- epicmonkey has quit (Remote host closed the connection).
20:39:04 -!- epicmonkey has joined.
20:52:37 <zzo38> Can the "!" in linear logic be made like a kind of comonad?
21:16:08 <ais523> elliott: heh, when I saw you on [[The Best Place To Grab Cash Financing Very Quickly]] I was wondering whether it was spam deletion or language construction ;)
21:16:15 <ais523> it does sound like a good language name
21:16:32 <ais523> zzo38: it has both monad-like and comonad-like properties
21:16:53 <ais523> I think my supervisor and I concluded it was probably a comonad
21:17:01 <ais523> but I wasn't sure, and it didn't really matter for what I was doing
21:17:49 <shachaf> I talked with my supervisor and concluded that ais523 was probably a cocoa monad.
21:18:43 <olsner> shachaf: can you kick you?
21:19:24 <ais523> I can kick arbitrary people from the channel, assuming they're here at the time
21:19:27 <ais523> whether I /should/ is another issue
21:19:35 <shachaf> Am I arbitrary enough for you?
21:19:37 <ais523> heh, Gregor's still voiced?
21:20:03 <olsner> everyone should have the right to kick and ban themselves
21:21:19 <ais523> on Wikipedia, they actually had to ban people from banning themselves
21:21:29 <ais523> because it had unintended side effects
21:21:38 <ais523> (especially involving shared IPs)
21:22:10 -!- atriq has quit (Quit: Leaving).
21:27:17 <olsner> so people actually ended up banning a lot more people than themselves?
21:29:31 <zzo38> I think you could just delete [[The Best Place To Grab Cash Financing Very Quickly]]. Administrators can undelete anyways if required isn't it?
21:30:36 <shachaf> Why would you delete an esolang like that?
21:31:17 <elliott> ais523: Arc_Koen was going to ask you stuff
21:32:21 <elliott> Arc_Koen: btw i believe you misunderstand http://esolangs.org/wiki/Works_in_progress possibly
21:32:40 <zzo38> shachaf: Mostly because it is already deleted.
21:32:53 <zzo38> And even when it exist, contain nothing of any use.
21:33:09 <zzo38> (If is required, I guess undelete since I think MediaWiki allows it)
21:34:48 <zzo38> Although I prefer pure wiki deletion, if it could be made MediaWiki to support it (such as making the history is viewable on deleted pages and everything else just like blanking it, but it never appears on lists of pages and never appears on random page function either.
21:35:41 <Arc_Koen> elliott: no, Lazy Prefix was made to be a work in progress
21:35:55 <ais523> zzo38: pure deletion would probably be a bad idea, people would link to deleted history pages and then maintain it as Wikipedia's official position
21:36:02 <ais523> and quite a lot of people would be stupid enough to fall for it
21:36:44 <Arc_Koen> it's mainly the result of me trying to fall asleep and if it can make sense for anyone I'd be glad that they make it their thing as much as mine
21:37:14 <elliott> pure wiki deletion is terrible for things like copyvio and personal info also
21:37:35 <Arc_Koen> ais523: yes I had a question about User:Koen/brainfuck.thue
21:38:03 <Arc_Koen> I'm gonna move it to main namespace - thing is, I'm not sure it fits as is
21:38:19 <Arc_Koen> for instance I use first-person throughout the page, should I change that?
21:38:34 <Arc_Koen> and move the external links to a "external resources" section, also
21:38:42 <zzo38> Even normal page deletion is bad for things like copyvio; instead, administrators should delete individual changes in the page history list, in such cases as that, if something must be remove entirely without disturbing the rest of the article, in case it is otherwise OK.
21:38:54 <Arc_Koen> elliott said you would remember the last time an interpreter was in the user namespace
21:40:08 <Arc_Koen> the reason I put it there in the first place was because there was already a link to a brainfuck interpreter on the thue page, and while making mine I felt more like doing something for myself than actually contributing to esolangs in general
21:42:00 <elliott> fwiw if you want to license it as something other than CC0 then the best thing would be to put it up elsewhere on the web (e.g. on a pastebin) and link to it externally, also
21:42:15 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:45:34 <Arc_Koen> I'm not so excited about copyrights
21:45:47 <kmc> I AM ORGASMIC OVER COPYRIGHTS
21:46:31 <elliott> i copyright things all night and then go to bed and dream about copyright
21:46:51 <elliott> ais523: http://esolangs.org/wiki/WASD sigh
21:47:08 <elliott> ais523: we should split the language list up so all the brainfuck derivatives are on another page or something
21:48:21 <shachaf> elliott: how about my derivative that uses the symbols <> for [], -+ for <>, ,. for -+, [] for ,.
21:48:29 <shachaf> Phantom_Hoover: ☝ innovation ☝
21:49:19 <elliott> http://esolangs.org/wiki/Not_a_brainfuck_derivative i remember making this
21:49:35 <kmc> how about my derivative that uses the symbols 8=D, 8==D, 8===D, 8====D, 8=====D, 8======D, 8=======D, and 8========D
21:49:44 <Arc_Koen> I have an even better idea! a brainfuck-derivative on a left- and right-unbounded tape with bounded wrapping cells, using the symbols > for <, < for >, + for - and - for +
21:49:57 <elliott> Arc_Koen: and . and , do 255-x?
21:50:44 <Arc_Koen> and [ and ] don't test whether x = 0, but whether x = 256
21:51:07 <kmc> data D = D deriving Eq; instance Num D where fromInteger 8 = D
21:51:41 <elliott> nice pointless deriving Eq
21:52:00 <shachaf> elliott: kmc believes in Eq a => Num a
21:52:11 <shachaf> Like the Haskell Report (and unlike GHC).
21:52:18 <kmc> the history of haskell is the history of class struggle
21:52:23 <shachaf> I guess kmc forgot to derive Show.
21:52:26 <elliott> shachaf: then he also has to believe in Show a => Num a
21:52:29 <elliott> so it is pointless or invalid
21:52:48 <shachaf> kmc: elliott just called you not(pointful and valid)
21:54:06 <shachaf> fix u = let mad = u mad in u
21:57:23 <olsner> but considering he's already in, shouldn't we be allowing him out instead?
21:57:42 <Arc_Koen> I'm probably gonna regret I ever asked, but what other esolangs have inspired wasd?
21:58:10 <elliott> Arc_Koen: presumably brainfuck
21:58:15 <shachaf> elliott: Did you @admin - me?
21:58:23 <elliott> shachaf: no, but I might next time
21:58:29 <Arc_Koen> elliott: the page says "inspired by brainfuck and other esolangs"
21:58:38 <elliott> Arc_Koen: probably ook or something then
21:59:01 <Arc_Koen> oh, yes, it does bear some resemblance with Ook!
21:59:17 -!- Zerker has quit (Ping timeout: 255 seconds).
21:59:29 <olsner> might be nice with an esolang that's somehow a superset of all the other esolangs
21:59:55 -!- augur has joined.
22:00:21 <Arc_Koen> something dangerous to say, someone might overhear you and go ahead and do it
22:00:44 <olsner> that'd be awesome because then I get the benefit of having thought it without having to actually do any work
22:00:57 -!- copumpkin has joined.
22:01:15 <Arc_Koen> I was gonna say "I'm gonna hit random page a few times and include every esolang I'm gonna come across"
22:02:18 <Arc_Koen> like, starting from brainfuck, and if I meet deadfish I add a command to square the current cell (taking it out of 0-255), and if I meet a stack-based language I add that every cell is in fact a stack, etc.
22:02:34 <Arc_Koen> http://esolangs.org/wiki/Cvlemar
22:02:43 <Arc_Koen> not sure how that'd fit with brainfuck :)
22:03:09 <Arc_Koen> which is a pretty neat excuse to let you find someone else to do your dirty work!
22:04:50 <Arc_Koen> oh and I thought it might be cool to prove a "subset" of Kipple turing-complete... and that subset would not allow stacks to hold anything else than zeroes
22:06:22 <Arc_Koen> in fact that's probably easy to prove, via reduction from 3-cell brainfuck
22:14:25 -!- nooga has quit (Ping timeout: 244 seconds).
22:30:22 -!- Slereah_ has joined.
22:31:06 -!- Slereah has quit (Ping timeout: 252 seconds).
22:55:42 -!- mean has joined.
22:57:56 <kmc> looks like i picked the wrong day to stop sniffing glue
22:58:24 <HackEgo> mean: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
22:58:53 <zzo38> kmc: What kind of glue did you stop sniffing?
23:00:23 -!- boily has quit (Quit: Poulet!).
23:05:15 -!- ais523 has quit.
23:06:47 -!- epicmonkey has quit (Remote host closed the connection).
23:07:09 -!- epicmonkey has joined.
23:07:14 <ion> > map ('o:' . flip replicate 'h') [0..]
23:07:16 <lambdabot> lexical error in string/character literal at chara...
23:07:19 <ion> > map ('o': . flip replicate 'h') [0..]
23:07:20 <lambdabot> <no location info>: parse error on input `.'
23:07:27 <ion> I seem to be too tired for code.
23:07:31 <ion> > map (('o':) . flip replicate 'h') [0..]
23:07:33 <lambdabot> ["o","oh","ohh","ohhh","ohhhh","ohhhhh","ohhhhhh","ohhhhhhh","ohhhhhhhh","o...
23:07:46 -!- epicmonkey has quit (Remote host closed the connection).
23:08:10 -!- epicmonkey has joined.
23:08:16 -!- epicmonkey has quit (Remote host closed the connection).
23:19:15 <lambdabot> ["o","oh","ohh","ohhh","ohhhh","ohhhhh","ohhhhhh","ohhhhhhh","ohhhhhhhh","o...
23:20:20 <shachaf> > map (\n -> take n ('o':repeat 'h')) [1..]
23:20:22 <lambdabot> ["o","oh","ohh","ohhh","ohhhh","ohhhhh","ohhhhhh","ohhhhhhh","ohhhhhhhh","o...
23:20:41 <shachaf> > (tail . inits) ('o':repeat 'h')
23:20:43 <lambdabot> ["o","oh","ohh","ohhh","ohhhh","ohhhhh","ohhhhhh","ohhhhhhh","ohhhhhhhh","o...
23:21:14 <shachaf> > (map ('o':) . inits . repeat) 'h'
23:21:16 <lambdabot> ["o","oh","ohh","ohhh","ohhhh","ohhhhh","ohhhhhh","ohhhhhhh","ohhhhhhhh","o...
23:23:58 <kmc> whee, earthquake
23:24:04 <kmc> magnitude 4.5, 90 miles north of me
23:25:37 <ion> He didn’t say it happened yet. Perhaps he won’t.
23:26:00 <kmc> i did survive yes
23:46:30 -!- MoALTz has joined.
00:18:48 <elliott> Absurd Ambition: Towards lifting differential/integral calculus into Haskell (self.haskell)
00:18:48 <elliott> submitted 1 day ago by enolan
00:18:48 <elliott> Okay, so first observe that FRP is a language embedded in Haskell for reasoning about systems evolving in time. Then make time first class. This enables time-bending programs, among other things. Remember that "regular" calculus is about rates of change and things depending on other things. Generalize FRP into differential/integral calculus on arbitrary data. (Remember we can find derivatives of data structures!)
00:18:49 <elliott> Please poke all the holes possible in this idea.
00:18:51 <elliott> Bitcoin donations graciously accepted here 1EDqgKBx3XuVnMughSzmTtFjqz5zey12Jv
00:18:55 <elliott> i nominate this for worst /r/haskell post of any time
00:19:14 <elliott> [[I'm aware of automatic differentiation, hence "Remember we can find derivatives of data structures!".]]
00:19:18 <elliott> looks like their replies are golden too
00:19:28 <elliott> "Automatic differentiation is not the same as differentiating data structures." "I don't know what that means yet, but thank you."
00:20:28 <elliott> shachaf: does this enolan guy talk in #haskell at all
00:21:23 -!- Phantom__Hoover has joined.
00:21:28 <shachaf> 17:21 <preflex> enolan was last seen on #haskell 1 day, 1 hour, 18 minutes and 3 seconds ago, saying: http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/
00:22:15 <elliott> "Architect of the Bitcoin singularity, man of super-Einsteinian ambition, nerd accelerator. ;)"
00:22:24 <elliott> someone has actually described themselves with these words
00:22:45 <elliott> Phantom__Hoover: what is that from
00:24:22 <Phantom__Hoover> http://www.reddit.com/r/askscience/comments/10bnuv/mirs_orbit_eventually_decayed_and_it_crashed_into/
00:24:27 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
00:24:45 <shachaf> Phantom__Hoover: The question is: How can I donate bitcoins to this person?
00:24:50 <Phantom__Hoover> http://www.reddit.com/r/askscience/comments/z8mnv/why_are_tall_women_generally_considered_more/
00:25:39 <Phantom__Hoover> if we capture and dissect this man we may finally understand the true essence of human stupidity
00:26:14 <elliott> "Asking for money seems a bit gratuitous." "I think this is gratutiously awesome idea."
00:27:41 <elliott> "Anyone who posts like that, and hurts my brain, gets upvotes and possibly BTC."
00:27:57 <elliott> "Does that mean we need dependent Haskell to express this? I am totally willing to go there!"
00:28:04 <elliott> he's totally willing to go there!!
00:28:15 <elliott> "Why is Edward getting all the imaginary internet points in this thread? Where are my points?!?!!?" he actually posted this
00:29:05 <Phantom__Hoover> "hey guys upvote upvote!!! it's ok because i've evolved beyond meaningless ideas of karma"
00:29:42 <Phantom__Hoover> http://www.reddit.com/r/math/comments/yy344/askmath_what_is_a_good_mathematical_basis_for_a/
00:30:10 <elliott> @tell cmccann I have no idea what this is -- http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/ -- but it looks sort of like trolling, esp. given http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/c6n0evb... the asking for money thing seems inappropriate but I don't know if you want to do anything about it
00:30:51 <Arc_Koen> that's a pretty depressive sentence.
00:30:58 <Phantom__Hoover> @tell cmccann make sure you check his post history if you feel like working up a good healthy hatred
00:31:25 <shachaf> Why are you @telling cmccann?
00:31:47 -!- DHeadshot has joined.
00:31:48 <elliott> shachaf: I was @telling cmccann because reddit's report feature is useless and he's the most active /r/haskell mod and I talk with him fairly.
00:31:58 <elliott> Phantom__Hoover is @telling cmccann because he's trying to be annoying, which I'm sure is behaviour you're familiar with.
00:32:37 <shachaf> More like coolpumpkin, AM I RIGHT?
00:32:43 -!- Phantom__Hoover has quit (Quit: Leaving).
00:32:47 <Arc_Koen> hey do you pronounce it often or often?
00:32:56 <elliott> copumpkin: shachaf is talking about /r/haskell mods :p
00:32:59 <elliott> re <elliott> @tell cmccann I have no idea what this is -- http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/ -- but it looks sort of like trolling, esp. given http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/c6n0evb... the asking for money thing seems inappropriate but I don't know if you want to do anything about it
00:33:02 <copumpkin> I pay attention to the modqueue whenever I can
00:33:08 <copumpkin> and have done my fair share of moderating recently
00:33:23 <shachaf> You should make elliott a moderator.
00:33:24 * elliott would have reported it if reddit's report feature included anything even vaguely useful like a text box to say wtf you're reporting for
00:33:30 <shachaf> It would be the end of /r/haskell as we know it.
00:43:49 <Sgeo> elliott, feel free to report then message mods?
00:46:02 <elliott> Sgeo: I figured just messaging a mod would be less work.
00:46:06 <elliott> Formal complaints are work 'n stuff.
00:46:22 <Sgeo> Why not the mods?
00:47:20 <Sgeo> You do know that that's a thing, right? You don't have to choose one particular mod, you can message /r/haskell
00:47:39 <Sgeo> </probably-reading-into-what-you-said-too-much>
00:47:49 <elliott> telling "a" mod, n. <elliott> @tell cmccann I have no idea what this is -- http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/ -- but it looks sort of like trolling, esp. given http://www.reddit.com/r/haskell/comments/11ixcl/absurd_ambition_towards_lifting/c6n0evb... the asking for money thing seems inappropriate but I don't know if you want to do anything about it
00:48:22 <shachaf> elliott wants to tell his buddy cmccann
00:48:30 <shachaf> Because he knows cmccann will give him special treatment.
00:49:08 <elliott> Yes, I control /r/haskell from behind closed doors.
00:49:17 <elliott> Sgeo has found out my terrible secret.
00:49:22 -!- Jafet has joined.
00:49:34 <elliott> I will have to assassinate him and shachaf for their sins.
00:50:15 <shachaf> copumpkin might assassinate you for your cosins!
00:50:16 -!- Arc_Koen has quit (Quit: and happy assassination).
00:50:31 <shachaf> Does the co in cosine have anything to do with the category co?
00:50:37 -!- Arc_Koen has joined.
00:50:52 <elliott> copumpkin: Please spare me, my cousins didn't do anything wrong.
00:51:10 <copumpkin> elliott: your wish is granted, just this once
00:51:19 -!- Arc_Koen has quit (Client Quit).
00:51:47 <Jafet> My croissants are to die for.
00:52:04 -!- Arc_Koen has joined.
00:52:42 -!- Arc_Koen has quit (Client Quit).
00:52:58 <Sgeo> "The cosine of an angle is the ratio of the length of the adjacent side to the length of the hypotenuse: so called because it is the sine of the complementary or co-angle."
00:53:33 <Jafet> Don't stifle shachaf's new angle on category theory.
00:53:34 -!- Arc_Koen has joined.
00:54:04 * Sgeo chokes with laughter.
00:55:25 <Arc_Koen> ...so I type /quit followed with a funny reason, then I click the damn red button to close the application before it has time to reconnect me somehow, and you know what? instead of closing it pops a little window "are you sure you want to close the application? that would close all connections"
00:55:51 <Arc_Koen> "Welcome to the esoteric programming channel!
00:56:03 -!- Arc_Koen has quit (Client Quit).
00:57:12 <HackEgo> 152) <alise> Phantom_Hoover: Don't be nasty; he's a lunatic, not a murderer. \ 304) <Vorpal> elliott, it was an artful robbery! <Vorpal> wait, murder \ 826) <monqy> you've constructed a situation in which i have no choice but to die in 10 days <monqy> well done <monqy> that's murder
00:57:40 <shachaf> when did monqy say that :'(
00:57:51 <Jafet> Less than ten days ago?
00:58:13 <HackEgo> 457) <itidus20> monqy: last night in my dreams I saw a false photo album of my childhood... looking ghostly \ 504) <elliott> I MIGHT BECOME GHOST
00:58:19 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: qhuost: not found
01:16:38 -!- Jafet1 has joined.
01:17:29 -!- Jafet has quit (Disconnected by services).
01:17:35 -!- Jafet1 has changed nick to Jafet.
01:18:28 <Sgeo> http://www.reddit.com/r/Clojure/comments/11kav3/the_consequences_of_not_using_paredit/
01:20:40 -!- hogeyui has quit (*.net *.split).
01:20:43 -!- lahwran has quit (*.net *.split).
01:21:47 -!- hogeyui has joined.
01:21:47 -!- lahwran has joined.
01:37:50 <ion> Their target market is the non-OCD customers.
01:40:31 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:40:36 -!- DH____ has joined.
01:46:33 -!- trout has changed nick to function.
01:57:35 <Sgeo> What mathematical problems, besides Fermat's last theorem, could a solution to the halting problem be used to solve, and to which we do manage to know the answer?
01:58:45 <pikhq> Most any. It's fairly trivial to produce a brute-force check of most theorems by looping over all *possible* combinations, that will only halt/not-halt if it's true.
01:58:48 <Slereah_> Well, all problem that are recursively enumerable
01:59:00 <Sgeo> Which ones were difficult?
01:59:19 <pikhq> And so a halting oracle can basically give you an answer to anything you can write an algorithm, no matter how shitty, to check.
01:59:22 <Slereah_> It doesn't work if, say, you need to check over aleph_0 solutions
01:59:37 <Sgeo> Preferably a famous one. I have a reason for asking
02:00:05 <pikhq> Hmm. I wonder if P=NP could be expressed appropriately.
02:00:17 <elliott> Sgeo: anything of the form (exists (n:Z), p(n)) where p is a decidable proposition can be solved given a halting oracle
02:00:34 <Slereah_> You can solve most math because you can do a syntactic proof using logical axioms
02:00:35 <Jafet> print $ doesHalt $ filter (isProofOf P) $ listAllProofs
02:00:49 <elliott> proof: halts?({ for(Z i=0;;i++)if(p(i))break; })
02:01:03 <Slereah_> The syntactic proof has to exist, though, but that's a pretty wide category of things
02:01:03 <Jafet> You probably want to run that in parallel with (isProofOf (not P))
02:01:15 <Jafet> And provableIn (modelOf P)
02:01:16 * Sgeo would have done Fermat's last theorem, but I don't see a simple way to loop over a b c and n such that it won't just increase one of them
02:01:37 <elliott> Sgeo: do you really not see a bijection Z^4 <-> Z
02:01:52 <elliott> i mean i can't think of a *good* one (fsvo good) off-hand
02:01:55 <elliott> but Q <-> Z hence pack etc.
02:02:08 <Sgeo> elliott, I know it exists, but I don't know how to do it easily
02:02:50 <Jafet> > [ (a, b, c, n-a) | n <- [0..], a <- [0..n], b <- [0..n-a], c <- [0..n-a-b] ]
02:02:51 <lambdabot> [(0,0,0,0),(0,0,0,1),(0,0,1,1),(0,1,0,1),(1,0,0,0),(0,0,0,2),(0,0,1,2),(0,0...
02:04:23 <Sgeo> Wait, why n-a?
02:04:31 <Sgeo> > [ (a, b, c, n) | n <- [0..], a <- [0..n], b <- [0..n-a], c <- [0..n-a-b] ]
02:04:32 <lambdabot> [(0,0,0,0),(0,0,0,1),(0,0,1,1),(0,1,0,1),(1,0,0,1),(0,0,0,2),(0,0,1,2),(0,0...
02:04:57 <elliott> need to reset it when you "roll over"
02:05:57 <Jafet> Actually I don't know. That could be wrong.
02:06:15 <zzo38> There are variuos ways to encode pairs into single numbers, such as bit interleave, or whatever
02:09:02 -!- DH____ has quit (Read error: Connection reset by peer).
02:10:19 -!- Slereah_ has quit (Ping timeout: 260 seconds).
02:15:25 -!- Slereah has joined.
02:40:31 -!- MoALTz has quit (Ping timeout: 256 seconds).
02:49:27 <ion> http://i.imgur.com/BJmIg.jpg
02:52:48 <Robdgreat> but that left parenthesis has a match
02:56:24 <zzo38> Is there programs for random text generator other than Dada Engine, rmutt, and FurryScript?
02:58:21 <ion> Oh, wait. That wasn’t the one i was thinking of.
03:00:54 <kmc> what kind of random text?
03:01:10 <kmc> i wrote http://hackage.haskell.org/package/detrospector
03:01:19 <kmc> there are a billion programs like it
03:03:02 <ion> Ah, found it. polygen
03:03:30 <Sgeo> What sort of fun can I have with reified lexical environments?
03:03:40 <ion> http://pdos.csail.mit.edu/scigen/
03:03:51 <zzo38> I mean like the examples I have given, though. However these are OK too
03:14:08 <zzo38> kmc: It is good; I do not think any of the three programs I listed have any command for Markov chain, but maybe later I may add command in FurryScript for Markov (including high order).
03:14:25 <zzo38> Anyways, which programs have you used to write your own, which one don't, etc?
03:16:35 <zzo38> You said there are billion programs like it, how many in Haskell and what difference of feature?
03:19:40 <ion> kmc: Aww, you can’t use detrospector as a library?
03:21:02 -!- Jafet has quit (Ping timeout: 255 seconds).
03:21:34 <zzo38> Do you intend to change it so that it does?
03:26:16 <kmc> yeah, people have asked for that
03:26:18 <kmc> i probably won't though
03:26:21 <kmc> because i am lazy
03:29:53 <zzo38> Sgeo: What is reified lexical environments?
03:31:12 <Sgeo> zzo38, a macro in Clojure, and probably Common Lisp, can help capture the lexical environment, as in, symbols bound by let and their values
03:33:56 <shachaf> Design goals include speed and full Unicode support. I welcome suggestions and patches regarding any aspect of this program.
03:34:19 <shachaf> kmc welcomes your suggestions into the trash bin.
03:36:26 -!- Jafet has joined.
03:50:54 -!- elliott has quit (Ping timeout: 240 seconds).
03:59:22 -!- mean has quit (Ping timeout: 260 seconds).
04:05:08 -!- Jafet has quit (Ping timeout: 248 seconds).
04:10:39 -!- sirdancealot7 has joined.
04:18:57 -!- sirdancealot7 has quit (Ping timeout: 252 seconds).
04:21:32 -!- Frooxius has quit (Ping timeout: 246 seconds).
04:25:12 <shachaf> kmc: Man, I looked up some things on Google and found #haskell logs with you and ski and all that.
04:25:25 <kmc> i do miss #haskell
04:25:28 <shachaf> Talking about ∃ and things.
04:25:40 <kmc> i tried reasonably hard to get the good parts of it elsewhere
04:31:23 <shachaf> kmc: You know the way converting ∃ to ∀ is like currying?
04:32:36 <kmc> i could probably come up with it, but what do you have in mind?
04:39:48 <shachaf> kmc: (exists a. Foo a) = forall r. ((exists a. Foo a) -> r) -> r
04:40:21 <shachaf> forall a. Foo a is like (a:*) -> Foo a, exists a. Foo a is like ((a:*),Foo a)
04:41:02 <shachaf> So ((exists a. Foo a) -> r) is like (((a:*),Foo a) -> r), and if you curry that you get ((a:*) -> Foo a -> r), so it's the same as (forall a. Foo a -> r)
04:41:43 <shachaf> Something along those lines, anyway.
04:42:38 <zzo38> ais523 also says "!" in linear logic is like comonad, too? So, it is not only me. Is it like intuitionistic logic can be a comonad on linear logic, as classical logic can be a monad on intuitionistic logic? They mention how encoding intuitionistic logic in linear logic.
04:43:27 <zzo38> So what happen in linear logic putting multiple "!" and/or "?" together?
04:45:10 <Sgeo> An example of what I meant by reified lexical environment
04:45:23 <Sgeo> In Clojure, a hash-map is {key1 val1 key2 val2} etc
04:45:39 <Sgeo> I wrote a macro, get-lexical-env, that does this:
04:46:04 <Sgeo> (let [a 1 b 2] (get-lexical-env)) ; returns {'a 1 'b 2}
04:46:11 <Sgeo> Although it would print as {a 1 b 2}
04:46:43 <zzo38> O, that is what it means. OK
04:50:20 <Sgeo> I don't know if that's actually a correct description of the term "lexical environment", but it's what I meant.
04:56:35 -!- Jafet has joined.
05:00:58 -!- evincar has joined.
05:27:16 <ion> PSY vs Ghostbusters - Gangnam Busters - Mashup by FAROFF http://youtu.be/82LCKBdjywQ
05:41:52 -!- monqy has joined.
05:47:29 -!- evincar has left.
06:40:33 <zzo38> I made up law of excluded middle continuations.
06:42:42 <monqy> are they any useful
06:43:06 <Jafet> You can't prove that they aren't useless, so they are useful.
06:43:44 <zzo38> callCC (return . Right . (<=< return . Left)) :: ContT r m (Either a (a -> ContT r m b)) it is similar to law of excluded middle, I guess.
07:10:04 -!- FreeFull has quit (Quit: And so pie was invented.).
07:15:04 <zzo38> I have added some more commands in FurryScript now, including AGA IMC MC SHF
07:17:07 -!- zzo38 has quit (Remote host closed the connection).
07:33:38 -!- nooga has joined.
07:48:49 -!- sirdancealot7 has joined.
08:12:38 -!- epicmonkey has joined.
08:42:39 -!- monqy has quit (Quit: hello).
09:18:42 -!- Arc_Koen has joined.
09:20:13 -!- Arc_Koen has quit (Client Quit).
09:20:35 -!- Arc_Koen has joined.
09:27:07 -!- ais523 has joined.
09:37:19 -!- Phantom_Hoover has joined.
09:51:32 -!- epicmonkey has quit (Remote host closed the connection).
09:51:52 -!- epicmonkey has joined.
10:23:49 -!- ais523 has quit (Read error: Connection reset by peer).
10:24:03 -!- ais523 has joined.
10:34:02 -!- ogrom has joined.
10:48:07 -!- ais523 has quit (Ping timeout: 246 seconds).
10:48:47 -!- ais523 has joined.
10:59:45 <nortti> this is fucking scary: http://superchief.tv/leaked-north-korean-documentary-exposes-western-propaganda-and-its-scary-how-true-it-is/
11:00:10 <ion> Someone forgot to tell Gnesa that 0) autotune exists; 1) clown makeup looks even more atrocious in close-up. http://youtu.be/CF2o5RDkq9A
11:01:13 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
11:05:18 -!- nortti has changed nick to protip.
11:05:28 -!- protip has changed nick to nortti.
11:17:47 -!- ais523 has quit (Remote host closed the connection).
11:19:01 -!- ais523 has joined.
11:30:40 <ion> nortti: It’s funny when it’s true.
11:43:55 -!- ais523_ has joined.
11:46:13 -!- ais523 has quit (Ping timeout: 246 seconds).
11:59:47 -!- boily has joined.
12:01:43 -!- Frooxius has joined.
12:13:16 -!- ais523_ has changed nick to ais523.
12:23:42 <mroman> I know The Rock's real name!
12:32:52 <fizzie> mroman: But can you find Britain on a map?!
12:35:04 -!- Phantom_Hoover has joined.
12:36:24 <Jafet> Does he have a GPS phone?
12:38:57 <fizzie> Does a GPS phone transmit voice through GPS satellites?
12:39:51 <Jafet> No, silly, it uses the GPS satellites to calculate your location and transmits it to spy satellites.
12:41:56 <ion> [image of Keanu Reeves] What if GPS satellites are spy satellites?
12:44:15 <fizzie> Jafet: I hear all phones are espionage devices that listen to you even when turned off, and transmit detailed location data too.
12:44:23 <fizzie> I heard this from that Stallman guy.
12:44:25 <Arc_Koen> ok hopefully my emmental interpreter should be working buuuuuuut I have nothing to test it on
12:44:32 <fizzie> (Disclaimer: slightly exaggerated, maybe.)
12:45:16 <fizzie> Actual quote, for the record: "I refuse to have a cell phone because they are tracking and surveillance devices. They all enable the phone system to record where the user goes, and many (perhaps all) can be remotely converted into listening devices." http://stallman.org/rms-lifestyle.html
12:45:20 <Jafet> Yay, another cheesy language
12:45:37 <Jafet> fizzie: actually, that's probably true
12:45:41 <fizzie> Arc_Koen: You need to eat, I mean, write some emmental.
12:47:10 <Arc_Koen> (for the record if I ever have to take part in a conspiracy, I promise I won't take my phone with me)
12:47:11 <ais523> fizzie: his statement is, of course, technically correct
12:47:30 <ais523> I refuse to have a cellphone for reasons which are only very vaguely related (specifically, I don't like people being able to contact me at arbitrary times)
12:48:10 -!- Slereah_ has joined.
12:49:34 <ion> fizzie: http://www.ted.com/talks/malte_spitz_your_phone_company_is_watching.html
12:49:49 -!- Slereah has quit (Ping timeout: 256 seconds).
12:51:06 <Jafet> Most people probably want their phone to be able to remember where they went and what they did, anyway.
12:51:27 <ion> How about their phone company?
12:51:30 -!- ais523 has quit.
12:51:33 -!- ais523_ has joined.
12:51:40 <Jafet> Most people are pretty short-sighted.
12:54:42 <ais523_> you mean metaphorically, right?
12:54:44 -!- ais523_ has changed nick to ais523.
12:54:52 <ais523> literally, I think more than half of people can focus to infinity
12:55:10 <ais523> and focusing beyond infinity is not a massively useful operation (despite being technically possible, it just leaves /everything/ out of focus)
12:55:12 <Slereah_> But you can only focus to infinity if the universe is infinite :o
12:55:34 <fizzie> The location-tracking is kind of obvious; I'm a bit more sceptical on any claims that phone companies / law enforcement / the gummint would generally turn phones into listening devices. (Admittedly RMS only says "can".)
12:55:40 <Jafet> The universe can be finite and have unbounded light lines
12:55:55 <ais523> Slereah_: focusing to infinity means assuming that incoming light rays are parallel to each other
12:56:08 <Slereah_> Yes, but how are you going to get that!
12:56:12 <ais523> focusing beyond infinity is only useful if you have a lens that's making light rays more convergent and want to cancel out its effects
12:56:21 <Slereah_> Light tends to be emitted isotropically
12:57:47 <ais523> in practice, focusing to infinity is visually indistinguishable from focusing to, say, 100m
12:58:53 <Slereah_> Mostly because your eye can't make the difference if the light rays land a nanometer apart~
12:59:55 <fizzie> I don't quite see how the actual incoming light would matter when discussing how your optics can or cannot focus.
13:01:32 <Slereah_> Do you want me to make irrelevant complaints about something else, perhaps
13:02:20 <Arc_Koen> hey guys I'm getting the weirdest errors
13:02:53 <Arc_Koen> for instance if I try to pop an element from a queue and push it on a stack, when the queue is empty, ocaml raises exception Stack.Empty
13:07:26 <fizzie> http://sprunge.us/DYDR -- not for me.
13:08:06 <Arc_Koen> yes I think it is reasonable to assume I'm the one doing something wrong, not ocaml
13:10:13 <Arc_Koen> ok I just fixed a minor bug that was apparently completely unrelated and now it seems to be raising the proper exceptions
13:10:35 -!- ais523 has quit.
13:10:57 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:17:03 <ion> https://www.computerworld.com/s/article/9232477/Pacemaker_hack_can_deliver_deadly_830_volt_jolt The following people were surprised by the security problem:
13:19:45 <Jafet> Like wardriving but more fun
13:21:45 -!- elliott has joined.
13:22:10 <Jafet> Hm, same person behind http://youtu.be/bidDXuM4-2E
13:22:41 -!- ogrom has quit (Ping timeout: 255 seconds).
13:27:49 <ion> libseccomp looks really nice. http://s3hh.wordpress.com/2012/07/24/playing-with-seccomp/
13:31:13 <Jafet> This is like the path that goes over mountains and through five days of blinding hail to get capabilities
13:31:36 -!- copumpkin has joined.
13:33:25 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
13:41:34 -!- AnotherTest has joined.
13:42:07 -!- Phantom_Hoover has joined.
13:46:06 <Slereah_> Inspired by brainfuck is a code for brainfuck cypher
13:46:54 <AnotherTest> so for what is "and several other esolangs" code?
13:47:28 <AnotherTest> also which ones? (except for all other brainfuck equivalents)
13:48:04 <Slereah_> But then again, I once made an esolang based on unlambda because I didn't like lazy evaluation
13:48:13 <AnotherTest> In this regard, I would like to suggest that brainfuck equivalents will no longer be listed in the manually maintained language list
13:48:17 <Slereah_> Although I tried mixing it up by adding lambda calculus
13:48:54 <elliott> Slereah_: did you ever figure monads out
13:48:56 <Phantom_Hoover> Having rewritten the argument I'm not sure that he specified the same loop semantics as Brainfuck.
13:49:04 <AnotherTest> Brainfuck equivalents are EQUIVALENT to brainfuck, thus they shouldn't be considered separated pages
13:49:11 <Slereah_> elliott : Hell, I didn't even look up esolangs in months
13:49:45 <AnotherTest> Phantom_Hoover:"If pointer is set to 0 loop starts"
13:50:13 <AnotherTest> Phantom_Hoover: he probably wanted to say "If the value at the pointer is set to 0"
13:54:54 <AnotherTest> and you can't nest loops because his implementation sucks
13:57:09 <AnotherTest> " in order to create a language that would be quick to program"
13:57:43 -!- TeruFSX has quit (Read error: Connection reset by peer).
13:59:00 -!- Phantom__Hoover has joined.
13:59:32 <elliott> there is not really limited space
13:59:41 <elliott> are http://esolangs.org/wiki/Snack and http://esolangs.org/wiki/Esme better because they're not bf derivatives
13:59:58 <fizzie> AnotherTest: Did you check the WASD interpreter? It's... kinda curious, when it comes to loops. Can't say I've ever seen that particular approach yet.
14:00:17 <AnotherTest> elliott: At least they are not listed on the language list!
14:00:38 <AnotherTest> fizzie: yes, I have (unfortunately) seen it
14:01:42 <elliott> AnotherTest: you are wrong
14:01:49 <elliott> snack is listed on the languag elist
14:02:17 <elliott> http://esolangs.org/wiki/FURscript another bad language unrelated to brainfuck
14:02:28 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
14:02:29 <elliott> and that should be on the language list, not the joke language list; it clearly has semantics, just stupid ones
14:03:53 <AnotherTest> but I must also say that I never said that only brainfuck equivalents were often bad
14:04:53 <elliott> well the language list should not be an arbiter for taste... the featured language thing was meant to highlight some of the better esolangs but it hasn't been updated in ages because apparently I and all the other admins are lazy as sin
14:05:05 <elliott> arguably there should be a separate list for brainfuck derivatives just because there are so many of them, but idk
14:05:52 <AnotherTest> I just noticed the case of "WASD", the creator cannot even implement loops. You can as well ask a 5 year old to think of a nice way to write the brainfuck operators.
14:06:27 <AnotherTest> elliott: I'm talking about equivalents here, not deriatives, may that be clear (there are many very nice deriatives)
14:07:04 <elliott> didn't you just find out its semantics are different :p
14:07:09 <elliott> I guess the interpreter might be equivalent though
14:07:55 <AnotherTest> But where not intended to be different; I'm pretty sure the author just didn't understand brainfuck or couldn't make a proper implementation
14:10:23 <AnotherTest> If a new visitors clicks the language list and chooses a random language at this moment, chances are getting higher (because of such languages) it's going to be a worthless language
14:11:04 <elliott> suspect people are more likely to click random page
14:11:28 <elliott> anyawy a list of good esolangs would certainly have value, though it's of course completely subjective... the wiki has traditionally been open to every language no matter how crappy though
14:11:54 <elliott> and, unfortunately, there are an awful lot of crap esolangs... far outweighing the good ones
14:12:08 <fizzie> AnotherTest: Be fair, it implements *a* loop.
14:12:09 <Phantom__Hoover> it's a giant table of the name of the language, the command substitutions, and author name etc
14:12:34 <fizzie> There's quite a few interpreters that don't get nested loops. (Although this was the first one that duplicated essentially the whole interpreter for the insides of the loop.)
14:13:05 <Phantom__Hoover> delete all pages for substitutions except the one or two with historical interest (by which i mean ook)
14:13:08 <fizzie> First one I've seen, I mean.
14:13:22 <elliott> Phantom__Hoover: you could have at least read the interpreter before making an incorrect edit
14:13:22 <AnotherTest> elliott: That people can create crappy pages: OK if you really want it like that; but that they are all in the same language list: definitely not OK.
14:13:55 <boily> there should be a QA process -- Quintopia Approval :p
14:14:00 -!- FreeFull has joined.
14:14:10 <boily> (at least one of my langs is already certified)
14:14:17 <elliott> AnotherTest: well feel free to come up with some objective criteria for whether an esolang should be on the list or not... the closest thing I can think of is some kind of vote, which would be terribly un-wiki and slow things down immensely and generally result in stagnation IMO
14:14:35 <AnotherTest> elliott: so I will make a brainfuck interpreter were you input real numbers, and it will be an entirely new concept?
14:14:40 <elliott> besides, it would be dishonest to portray the esolangs community as mostly full of quality languages... it is a mixed bag and that's how it's always been
14:15:17 <elliott> AnotherTest: I don't claim to make any judgement of whether it's entirely new or not... it would probably be uninteresting and I wouldn't like it, although real numbers are a vaguely interesting premise for a BF derivative (depending on what +-[] do)
14:15:52 <AnotherTest> elliott: I'm pretty sure the author of WASD didn't even realize q was different.
14:15:56 <elliott> still, I don't see how you can just say "the language list shouldn't list unoriginal languages" without realising how impractical that is
14:17:11 <AnotherTest> elliott: I realize that, but it might still be possible to filter out a number of cases; such as were one language can be converted to another by simply replacing characters
14:17:36 <Phantom__Hoover> AnotherTest, that only ever happens with brainfuck though.
14:18:07 <AnotherTest> well at least that would get rid of the dozens of brainfuck equivalents
14:18:47 <elliott> the closest thing I can see as being viable is to have a section on the joke language list for languages that are very very close (intentionally so) to existing esolangs
14:19:01 <elliott> if you think that'll make the average language on the main list good though you're out of your mind :)
14:19:36 <hagb4rd> what do we need to form a language? syntax, sematics..and..
14:19:55 <AnotherTest> What about something like a good language list? I know it's unpractical to realize, but it doesn't have to be a large list either.
14:20:07 <elliott> http://esolangs.org/wiki/Esolang:Featured_languages
14:20:21 <elliott> you need to define rules for it or people will just put their own languages on and you'll have dumb revert wars over matters of opinion of whether a language is good or not
14:20:34 <AnotherTest> elliott: I think there are more than 2 good languages
14:20:41 <elliott> main problem is almost all ideas are either too much overhead/work (and hence they stagnate), or open to that kind of nonsense
14:20:47 <elliott> featured language process has the former
14:21:03 <elliott> feel free to put a better proposal for a collection of recommended languages on the community portal, it would be welcomed
14:21:38 <elliott> speaking of bad languages, seems like good old !!!Batch got an update
14:21:48 <elliott> what would we do without shubshub
14:24:00 <AnotherTest> Personally I think that the languages on the "good language list" should be implemented. I realize that some very good languages have not yet been implemented, although visitors should be able to try out these "good languages".
14:25:01 <hagb4rd> syntactics, semantics and pragmatics.. finally got it
14:25:56 <AnotherTest> and it should have a decent specification (either external or on the wiki); this means, for example, that you can't capitalize every word(Like With !!!Batch Really)
14:28:04 <AnotherTest> The language may also not be a semantic equivalent of another language
14:29:49 <FreeFull> How much of a problem are these unoriginal languages right now?
14:30:22 <AnotherTest> As long as there is a way to filter the good languages from the bad languages they are not a problem
14:30:35 <AnotherTest> but there is currently not a good way to do it
14:30:57 <AnotherTest> so I think they're a pretty big problem when you want to find nice languages
14:32:24 <AnotherTest> Oh, another requirement should be that the language is not a vague idea, but rather is actually well defined etc.
14:32:34 <Arc_Koen> did you actually CONTRIBUTE to that brainfuck-derivative??
14:33:01 <elliott> i don't quite understand why everyone is reacting so strongly here, you guys realise trivial brainfuck ciphers are nothing new right :P
14:33:21 <FreeFull> Brainfuck is the most trivial cipher of brainfuck
14:34:07 <Arc_Koen> elliott: something about a straw and a camel, I reckon
14:35:40 <elliott> your backs should have broken years ago
14:36:11 <Arc_Koen> btw I think Ook! was an awesome idea
14:36:48 <Arc_Koen> it's just the 36 zillion that came after that were bad ideas
14:38:13 <elliott> <AnotherTest> and it should have a decent specification (either external or on the wiki); this means, for example, that you can't capitalize every word(Like With !!!Batch Really)
14:38:20 <elliott> these sound basically like the rough featured language criteria i wrote ages ago
14:39:13 <AnotherTest> elliott: I should probably read those, it might be a good source of inspiration
14:39:22 <Arc_Koen> and only two languages were good enough??
14:39:54 <elliott> Arc_Koen: how about read the process before making assumptions
14:40:12 <elliott> it relied on admins do sift through them every now and then and that didn't happen because it means main page blurbs have to be written for the language
14:40:21 <elliott> and that's difficult and annoying and nobody ever wants to do it :p
14:40:24 <elliott> so it's laid dormant for months
14:42:58 <Arc_Koen> "If pointer is set to 0 loop starts" uh, does that mean "if the pointer points to the first cell"?
14:46:50 <Arc_Koen> uh, his interpreter seems to do awful stuff
14:50:28 <Arc_Koen> in particular I think the instruction pointer will never wander beyond the first end loop
14:51:28 <AnotherTest> http://esolangs.org/wiki/Esolang_talk:Community_portal#List_of_.22good.22_languages
14:51:49 <Arc_Koen> your mission, if you accept it, is to find those 7 requirements, and destroy them using enchanted swords and other basilisk fangs.
14:52:09 <AnotherTest> "This message will self destruct in 60 seconds."
14:52:18 <elliott> "semantically equivalent" rules out TC languages
14:53:43 -!- augur has quit (Remote host closed the connection).
14:53:57 <Arc_Koen> hey seriously if your secret agents require a whole minute to read their assignment I doubt they will be a match against the great evil we're all fighting
14:54:02 <AnotherTest> "The language may not be convertible to another language by a series of simple substitutions."
14:54:49 -!- augur has joined.
14:54:53 <Arc_Koen> see http://esolangs.org/wiki/Maze
14:54:59 <Arc_Koen> it can be converted to brainfuck easily
14:55:19 -!- augur has quit (Remote host closed the connection).
14:55:33 <Arc_Koen> in fact, you're basically ruling out all turing tarpits
14:55:56 <AnotherTest> You can't convert Maze by simple substitutions
14:56:09 <AnotherTest> You have to preform additional semantic checking
14:56:12 <Arc_Koen> no, I mean, you can convert brainfuck into Maze by simple substitutions
14:57:56 <Arc_Koen> well Maze is much more recent that brainfuck but that's not the point, for instance brainfuck can be converted into C easily
14:58:46 <AnotherTest> By replacing one lexeme with another lexeme from the other language?
14:59:28 <oklofok> how about you take brainfuck but the cells have like complex values
15:00:04 <Arc_Koen> in fact I had a hard time not saying the exact same thing a few minutes ago
15:00:45 <Arc_Koen> AnotherTest: the "just one lexem" thing allows languages like "unary brainfuck" in
15:01:00 <Arc_Koen> I mean, what "one lexeme" is is easily abusable
15:01:05 <oklofok> darn, clue doesn't fit the specification
15:01:17 <oklofok> because it's page is a joke.
15:01:31 <AnotherTest> Arc_Koen: unary brainfuck doesn't meet all the other requirements
15:01:59 <oklofok> Phantom__Hoover: yeah gaussian integers because all the other complex numbers are just silly
15:02:14 <Arc_Koen> true - but then can you think of one language that is ruled out by 4 but not by 5?
15:02:37 <Phantom__Hoover> i hung out with that elliott one and he peer pressured me with constructivism
15:02:58 <Phantom__Hoover> now i have nagging doubts whenever i do proofs by contradiction
15:03:07 <oklofok> constructivism? lol try finitism. in fact fuck finitism, i'm a singletonist.
15:03:19 <AnotherTest> Arc_Koen: No, but 4 is easier to determine objectively.
15:04:29 <Arc_Koen> well a cell in brainfuck is just a simple 256-state automaton
15:05:01 <oklofok> lol nihilism is just silly, i'm a singletonist to the bone. as we singletonists say, cogito ergo sum, but that's it.
15:05:08 <Arc_Koen> AnotherTest: how about "is not a close derivative of another language"
15:05:23 <oklofok> also known as solipsism then i guess.
15:06:51 <hagb4rd> how bout group by affinities in the instruction set or sth
15:06:58 <oklofok> is that not essentially 4?
15:07:02 <Arc_Koen> no I intend to strongly argue that it is redundant with 4 and 5 and at least one of the three should not be included
15:07:26 <oklofok> but perhaps what Arc_Koen said
15:07:34 <Arc_Koen> or maybe we should make a list of requirements for a requirement to be featured in the requirement list
15:09:22 <Arc_Koen> "semantically equivalent" was interesting - that'd probably leave us with a list of computational models, plus deadfish
15:09:53 <Arc_Koen> oh and also a few like banana scheme and twoducks
15:11:47 <tswett> oklofok: singletonism, eh? As in forall x y, x = y?
15:12:53 <tswett> I have a tendency to prefer axiom systems capable of expressing themselves.
15:13:52 <tswett> Let x = x. Is x an element of x?
15:13:53 <hagb4rd> tswett: you're out to complete gödels incompleteness theorem?
15:14:02 <hagb4rd> or at it least to extend it
15:14:20 <tswett> hagb4rd: no, I'm not sure what you're getting at.
15:14:25 <Arc_Koen> the heck does "Let x = x." mean
15:14:35 <tswett> Arc_Koen: it means "let x be a value such that x = x".
15:15:18 <tswett> Arc_Koen: a value such that x = x.
15:16:07 <tswett> A value equal to itself?
15:16:26 <tswett> Alternatively, let me restate.
15:16:32 <tswett> True or false: For all x, x is an element of x.
15:16:49 <Arc_Koen> see that would have been much more simple to answer with nihilism
15:17:31 <Arc_Koen> (but honestly who needs a set theory when there is only one element?)
15:17:32 <tswett> "There's no such thing"?
15:17:55 <Arc_Koen> well all statement starting with "for all" would be true
15:18:31 <hagb4rd> at least better then false
15:18:38 <tswett> Hm. So, here's a simple set theory. I'll call it Zero.
15:18:46 <hagb4rd> the would be fatalism i guess
15:18:48 <tswett> The axioms of Zero: "For all x, x != x."
15:19:05 <kmc> i came up with a complete consistent axiomatization of number theory
15:19:24 <tswett> kmc: neat! Does it prove its own consistency?
15:19:39 <kmc> i just take every true statement of number theory as an axiom
15:19:41 <kmc> it's so easy!
15:20:18 <kmc> WHAT IF YOU'RE INCONSISTENT
15:20:23 <tswett> Hm, let me ponder that system.
15:20:49 <kmc> this is why goedel's incompleteness theorem says there is no complete, consistent, *recursively enumerable* axiomitization of number theory
15:20:55 <kmc> but people forget about the third condition
15:21:02 <elliott> To be fair, kmc, you're not recursively enumerable.
15:21:16 <kmc> nah i'm a finite object
15:21:20 <tswett> What counts as a "statement of number theory"? Is it simply a statement quantified over the natural numbers whose predicates are addition and blah blah blah?
15:21:37 -!- glogbackup has quit (Ping timeout: 246 seconds).
15:21:39 <kmc> "yo momma so fat she's a strongly inaccessible cardinal"
15:22:51 <ion> It puts the lotion on its skin?
15:23:33 <hagb4rd> no, it lights on in the dark
15:24:33 <tswett> Yo mama so fat, the set {{x} where x ∈ yo mama} has a cardinality strictly smaller than that of yo mama.
15:24:49 <hagb4rd> also it levels up charisma by 1 if worn in set with the mkc boots
15:25:10 -!- augur has joined.
15:26:23 <Arc_Koen> please don't say "fsvo 'strictly smaller'"
15:30:21 <Arc_Koen> AnotherTest: what if the complex numbers in my brainfuck derivative are encoded as polynomials to which they are roots?
15:30:49 <Arc_Koen> would that be a unique enough concept?
15:31:59 <Arc_Koen> (yeah hum currently the implementation is unavailable)
15:39:42 -!- AnotherTest has left.
16:14:46 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds).
16:32:54 <tswett> Arc_Koen: it's not possible in ZFC, since there's a bijection { (x, {x}) where x ∈ yo mama}.
16:33:29 <Arc_Koen> what's zfc? (and why am I asking?)
16:33:49 <elliott> http://en.wikipedia.org/wiki/Zermelo%E2%80%93Fraenkel_set_theory
16:38:21 <fizzie> Does someone join a mostly empty Dropbox shared folder? I'll get this 250 MB "Get Started" reward if I get a fifth step done in this stupid thing. (Made stupider by the fact that I'm not even going to use the deebee for anything.)
16:38:25 <fizzie> I can drop an in-Finnish religious proselytization note I found on the ground in Järvenpää into the folder to sweeten the deal.
16:38:34 <fizzie> Well, a photo of one, anyway.
16:43:53 <elliott> fizzie: i'll do it if you give me the note irl
16:44:32 <fizzie> I didn't actually pick it up. I thought then I'd be depriving someone else of God and whatnot.
16:44:37 <fizzie> The next one to walk that way, I mean.
16:44:58 <Arc_Koen> so I just put a slice of bread in a frying pan, with grated cheese on top of the bread, and an egg on top of the grated chease
16:51:56 -!- ogrom has joined.
17:03:28 <Arc_Koen> as I feared, the slice of bread got completely burnt before the egg was properly baked
17:04:07 <Arc_Koen> next time I'll try putting the egg under the toast, or something
17:05:28 <fizzie> You can also put it beside the toast.
17:06:06 <Arc_Koen> or maybe make it an egg sandwich
17:06:19 <Arc_Koen> and when the egg is half-baked, I flip it
17:07:02 <Arc_Koen> I wonder if that's how they do paninis
17:08:53 <fizzie> Don't those usually get made in those grill-on-both-side machines?
17:09:05 <fizzie> http://en.wikipedia.org/wiki/File:Professional_panini_machine.JPG you know, that kind of things.
17:10:33 <fizzie> Also thanks a whole lot, now I'm terribly hungry.
17:14:51 <Slereah_> Panini was also the first esolanger :V
17:21:04 -!- Phantom__Hoover has joined.
17:46:10 -!- zzo38 has joined.
18:01:21 -!- augur has quit (Read error: Connection reset by peer).
18:01:44 -!- augur has joined.
18:16:21 <Arc_Koen> fizzie: yes during the whole thing I was wondering if there was anything I could use to heat the egg from above
18:21:50 <fizzie> It was more about sandwich-making.
18:28:52 -!- Arc_Koen has quit (Quit: Arc_Koen).
18:51:22 -!- Phantom__Hoover has quit (Ping timeout: 265 seconds).
18:55:00 -!- augur has quit (Read error: Connection reset by peer).
18:55:19 -!- augur has joined.
18:59:23 -!- ogrom has quit (Quit: Left).
19:37:01 <mroman> fizzie: Of course I can find Britain on a map.
19:37:23 <mroman> If the map has names on it then I also can locate Afghanistan.
19:38:40 <mroman> It's a pretty big country.
20:04:27 <olsner> if it's a map of afghanistan I can probably locate it
20:13:13 -!- Phantom__Hoover has joined.
20:24:20 <mroman> If it's a map of great britain I can locate it perfectly.
20:24:48 <elliott> I'm quite good at locating Afghanistan on maps of Great Britain too
20:25:54 <mroman> I just have to abuse a little trick from classic logic.
20:26:06 <Phantom__Hoover> 12:47:30: <ais523> I refuse to have a cellphone for reasons which are only very vaguely related (specifically, I don't like people being able to contact me at arbitrary times)
20:26:33 <Phantom__Hoover> who the fuck thought it was a good idea to invent a device that allows people to blindly pester you whenever they like
20:26:57 <mroman> according to the north korean propanda movie
20:27:05 <mroman> an iPhone changes everything!
20:27:35 <mroman> I don't think they like pandas.
20:27:56 <olsner> if they don't like pandas why would they make propanda movies?
20:55:57 -!- MoALTz has joined.
21:01:09 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
21:06:56 -!- Frooxius has joined.
21:38:48 -!- augur has quit (Remote host closed the connection).
21:42:45 <elliott> shachaf: What type f has f (a,b) = Either a b?
21:43:49 <shachaf> elliott: Is there such a type?
21:44:28 <elliott> What type f has f (Either a b) = (a,b)?
21:44:44 -!- MoALTz has quit (Quit: Leaving).
21:45:25 <shachaf> Why would these types exist?
21:46:49 <shachaf> But, really, why does that make sense?
21:46:49 <olsner> shachaf: profound, isn't it?
21:46:57 <shachaf> elliott: "I could do this with recursion, but since I'm doing this in Haskell, I'd like to understand the monads. The State Monad is probably the best for this job, I suppose?"
21:47:01 <elliott> shachaf: I don't know. Do you make sense?
21:47:22 <elliott> shachaf: Anyway if you defined f (Either a b) = (a, b) as a type family what would you call it?
21:47:37 <shachaf> elliott: Oh, a type family.
21:48:09 <olsner> if it's not at ype, where is it?
21:48:25 <shachaf> olsner: oerjan would never say that.
21:48:31 <shachaf> That's why you should be more like oerjan.
21:49:05 <elliott> shachaf: I didn't mean a type family before.
21:49:31 <shachaf> Do you know anything else about F?
21:50:20 <olsner> shachaf: oerjan would never make fun of at ypo?
21:50:24 <elliott> shachaf: Well, ideally F (forall r. (a -> r) -> (b -> r) -> r) would be isomorphic to (a, b).
21:52:01 -!- hagb4rd has quit (Quit: hagb4rd).
21:53:39 -!- sirdancealot7 has quit (Ping timeout: 268 seconds).
21:54:13 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:02:16 <zzo38> Then how can F be if it is possible to make that working?
22:02:44 <shachaf> elliott: What do you want it for?
22:03:35 <shachaf> elliott: Is there a "log" function such that f (a,b) = Either (f a) (f b)?
22:03:36 <zzo38> Is it possible, even? If not with intuitionistic logic, is it possible with linear logic, or other logical systems? Would F do anything else other than just this?
22:03:44 <elliott> shachaf: I don't want it for anything.
22:03:54 <elliott> I don't know if there's such a log. But that sounds cute, so let's go with: yes.
22:04:07 <elliott> shachaf: Const Void satisfies log.
22:05:24 <shachaf> elliott: What's the other thing you need to satisfy log?
22:06:33 <zzo38> I have tried before to make logarithm of types but I don't think it can be done?
22:06:36 <elliott> You have b^log_b(a) = a. So Log a -> b should be iso to a. Problem: what's b?
22:06:51 <elliott> I don't think that even makes sense.
22:06:57 <elliott> b has to be constant; you can't extract any info out of the result.
22:07:15 <elliott> shachaf: Anyway Const Void satisfies log 1 = 0 too.
22:07:52 <elliott> shachaf: Log (a -> b) ~ (a, Log b).
22:07:53 <zzo38> I don't think you can make a base of natural logarithms as a type, though
22:08:00 <shachaf> 15:07 <byorgey> shachaf: once upon a time I had this idea that log corresponded to "paths" in data structures
22:08:03 <elliott> Does Const Void satisfy that? I guess yes.
22:08:03 <shachaf> 15:07 <byorgey> shachaf: e.g. a path to a value in an (a,b) structure is either a path to an a, or a path to a b.
22:08:06 <shachaf> 15:07 <byorgey> shachaf: but I couldn't quite make it all work out nicely. but I'm still convinced there's something interesting there.
22:08:32 <shachaf> elliott: I have a feeling you're missing a point here.
22:08:40 <zzo38> Maybe, try something, see
22:08:48 <shachaf> Or are you trying to come up with a rule for log that Const Void doesn't satisfy?
22:09:42 -!- boily has quit (Read error: Connection reset by peer).
22:11:51 <shachaf> elliott: Also, Log_b (a -> b) = a? That doesn't even make sense.
22:12:34 <elliott> shachaf: I think forgetting about "b" here is ideal.
22:12:47 <elliott> (But it does seem to make sense somehow...)
22:13:00 <elliott> (If you take b as some kind of continuation token, then the formulae involving b seem to make sense.)
22:13:03 <shachaf> Wait, no, we figured out that that was nonsense.
22:13:14 <shachaf> 15:12 <cmccann> shachaf, heh, that looks an awful lot like de morgan's law
22:13:49 <shachaf> 15:12 <lambdabot> cmccann: You have 5 new messages. '/msg lambdabot @messages' to read them.
22:14:03 <shachaf> elliott: Stop making cmccann's life painful.
22:14:32 <shachaf> Phantom__Hoover: Oh, and you.
22:14:53 <elliott> I sent two; Phantom__Hoover sent one.
22:15:02 <elliott> If there's any more then either it's someone else or Phantom__Hoover decided to be more annoying than usual.
22:15:08 <shachaf> 15:14 <cmccann> did elliott finally lose it after all those lambdabot messages and start spamming everyone? :D
22:16:05 <elliott> shachaf: This is great. It's like being in #haskell except all the lines have wrong timestamps on them.
22:16:45 <shachaf> Otherwise I'll have to keep pasting.
22:16:51 <shachaf> 15:15 -!- gnuvince [~vince@ip-50-21-138-141.dsl.netrevolution.com] has joined #haskell
22:16:54 <shachaf> 15:15 -!- clahey is now known as cl_away
22:16:57 <shachaf> 15:15 -!- zhulikas [~Derp@195.181.64.50] has quit [Ping timeout: 246 seconds]
22:16:59 <shachaf> 15:15 <shachaf> cmccann: Hey, it does.
22:17:02 <shachaf> 15:16 -!- corruptmemory [~jim@h-64-236-128-62.nat.aol.com] has joined #haskell
22:17:45 <elliott> 15:17:15 <byorgey> heh, so I guess f ~ ((->) Void) works
22:17:57 <olsner> you know, if any of us wanted to be in #haskell we'd be in #haskell
22:18:01 <elliott> (Void -> a -> b) ~ (a, Void -> b)?
22:19:24 <elliott> ((a -> b) -> Void) ~ (a, b -> Void).
22:19:34 <elliott> not (a implies b) = a and not b
22:19:43 <elliott> Isn't that true in classical logic?
22:20:11 <shachaf> (0^x) is pretty close to (const 0) :-(
22:20:14 -!- copumpkin has joined.
22:20:20 <elliott> <elliott> You have b^log_b(a) = a. So Log a -> b should be iso to a. Problem: what's b?
22:20:46 <zzo38> So it is for classical logic only, I guess.
22:20:50 <elliott> OK, now we can not think about Log ever again.
22:23:16 <shachaf> 15:21 <shachaf> byorgey: (-> Void) = (0^), which is worryingly close to (const 0)
22:23:22 <shachaf> 15:21 <shachaf> It doesn't really behave like a logarithm in terms of most things you expect from a logarithm, I think.
22:23:30 <shachaf> 15:21 <shachaf> Then again it's hard to do that while staying discrete. :-)
22:24:07 <olsner> what timezone are those timestamps in?
22:24:26 <olsner> is that a couple of minutes ago or 9 hours ago?
22:24:38 <shachaf> olsner: A couple minutes ago.
22:25:54 <olsner> anyway, what's exponentiation in types?
22:28:19 <shachaf> Which is just iterated iterated sum!
22:30:22 <elliott> which is just iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated iterated
22:36:33 <olsner> I wasn't listening before, but was there any use for this Log thing except trying to figure out what it might mean?
22:37:12 <olsner> oh, and shouldn't it be Log b a or something? just guessing that the base should be involved somewhere
22:37:30 <shachaf> olsner: Real logarithms don't have bases.
22:37:58 <elliott> log_b(x) is just log(x)/log(b) so
22:38:23 <elliott> <olsner> I wasn't listening before, but was there any use for this Log thing except trying to figure out what it might mean?
22:38:23 <elliott> <shachaf> 15:07 <byorgey> shachaf: once upon a time I had this idea that log corresponded to "paths" in data structures
22:38:25 <elliott> <shachaf> 15:07 <byorgey> shachaf: e.g. a path to a value in an (a,b) structure is either a path to an a, or a path to a b.
22:38:26 <elliott> <shachaf> 15:07 <byorgey> shachaf: but I couldn't quite make it all work out nicely. but I'm still convinced there's something interesting there.
22:38:36 <shachaf> 15:38 <elliott> <shachaf> 15:07 <byorgey> shachaf: once upon a time I had this idea that log corresponded to "paths" in data structures
22:39:54 -!- augur has joined.
22:39:57 <olsner> and log is the length of the path?
22:40:33 <elliott> no, Log t would be the path itself
22:46:25 -!- impomatic has joined.
22:47:16 <olsner> tell me if you ever figure it out though
22:52:48 <Sgeo> I want to make a Clojure-like language that gets some inspiration from Tcl.
22:52:53 <Sgeo> But the name....
22:53:06 <Sgeo> Tclj comes to mind, but that makes it look like it's primarily based on Tcl.
22:53:11 <Sgeo> I might call it Cloqure.
22:53:17 <Sgeo> Clojure with a lot of quote marks
22:56:34 <Sgeo> pikhq, is [uplevel] generally hated?
22:58:18 -!- nooga has quit (Ping timeout: 264 seconds).
23:07:34 <shachaf> 16:06 <Saizan> shachaf: btw, logarithms are easy for representable functors
23:07:42 -!- Arc_Koen has joined.
23:08:10 -!- sirdancealot7 has joined.
23:08:49 <shachaf> elliott: do you know what that is :'(
23:09:41 <Sgeo> Someone suggested Tclojure
23:10:19 <elliott> For a long years Archlinux WAS my favorite linux distibutive. Because it was simple and powerfull, flexible configurabe. It was really best choise for home and for server! And now, archlinux turning into ....even not Unbutu, Arch turning into Windows!!
23:10:19 <elliott> P.S.: I WISH LENNART POETTERING TO GO TO HELL!!!
23:10:51 <shachaf> Arch turning into Windows!!??
23:11:18 <Jafet> What next, gates turning into basements?
23:11:45 <elliott> Phantom__Hoover: he's this guy who to goed to hell after someone flamed him on the arch linux forums
23:11:46 <Arc_Koen> hope it's not a simple substitution
23:11:52 <shachaf> https://bbs.archlinux.org/viewtopic.php?pid=1175809#p1175809
23:11:59 <shachaf> next time include the link :'(
23:12:14 <elliott> Phantom__Hoover: well all windows users to go to hell on a regular basis
23:12:40 <Arc_Koen> "this guy who to goed to hell"
23:12:42 <shachaf> Hmm, Lennart Poettering wrote PulseAudio.
23:12:51 <Arc_Koen> like, "to to go to hell" is a verb?
23:13:00 <pikhq> Sgeo: Uh, not so much "hated" as it is "use sparingly".
23:13:03 <elliott> Arc_Koen: if this post is any metric, then yes
23:13:46 <Arc_Koen> as long as nobody starts to coming from hell
23:13:48 -!- Phantom_Hoover has joined.
23:14:04 <Sgeo> pikhq, similarly to how in Lisps, people are expected to use macros sparingly?
23:14:18 <Sgeo> pikhq, and I'm thinking more in terms of, do alternatives exist
23:14:29 <Arc_Koen> (that was supposed to be a joke but I think it's broken)
23:15:07 <pikhq> If you want custom control structures you need uplevel.
23:15:27 -!- copumpkin has changed nick to BinderFullOfWome.
23:15:37 <Sgeo> pikhq, I don't mean within Tcl, I mean as far as language features go
23:15:50 -!- BinderFullOfWome has changed nick to BinderOfWomen.
23:15:50 <Sgeo> That would still give me pervasive eval + lexical scope
23:15:54 -!- BinderOfWomen has changed nick to copumpkin.
23:16:09 <Phantom_Hoover> is that a binder containing women, or is it someone who binds women?
23:16:27 -!- copumpkin has changed nick to BinderOfBigBird.
23:16:28 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
23:17:11 <Sgeo> http://manuel.github.com/wat-js/doc/manual.html
23:17:15 <shachaf> BinderOfBigBird: Three rings to bind them all?
23:19:35 <Arc_Koen> oh wait, I was trying to make a pun by merging "turing" and "ring"
23:21:02 <Arc_Koen> well you understand my joke anyway and assuming we share some common sense of humour, you're free to go ahead and laugh even though the pun failed
23:21:16 <Arc_Koen> or better pretend it went right!!
23:22:41 <Arc_Koen> hey can I add Emmental to the list of featured language candidates?
23:23:45 <elliott> assuming you did not create it
23:24:21 <Arc_Koen> are you kidding it's chris pressey's
23:25:38 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9977
23:26:40 <elliott> 2011-04-05.txt:20:38:24: * ZOMGMODULES IS ZOMGMODULES
23:26:48 <elliott> if only we still had chris around to dispense wisdom like this
23:27:13 <Sgeo> Maybe I should make wat running on node.js my new favorite language.
23:27:48 <kmc> Sgeo: ooooh
23:28:18 <elliott> 2011-04-05.txt:21:39:53: * ZOMGMODULES SAYS ONLY EXACTLY WHAT ZOMGMODULES MEANS
23:28:18 <elliott> 2011-04-05.txt:21:40:18: * ZOMGMODULES DISMISSES TSWETTBOT!!!!
23:28:19 <Arc_Koen> Phantom_Hoover: you hang around with brainfuck-equivalent designers too much
23:28:57 <elliott> 2011-04-05.txt:22:54:21: <ZOMGMODULES> YES
23:28:57 <elliott> 2011-04-05.txt:22:54:23: <ZOMGMODULES> YES YES YES
23:28:57 <elliott> 2011-04-05.txt:22:57:01: <ZOMGMODULES> THIS IS HOW CHILDREN LEARN
23:30:00 <shachaf> kmc: 16:29 <dolio> Boston has some good burritos.
23:30:00 <shachaf> 16:29 <shachaf> dolio: As good as SF?
23:30:00 <shachaf> 16:29 <dolio> I don't know.
23:30:16 <shachaf> kmc: You're clearly the one to answer this.
23:30:17 <kmc> i like beantown taqueria
23:30:19 <kmc> it's close to my house
23:30:22 <kmc> i was just there
23:30:48 <shachaf> That place with the burritos.
23:30:50 -!- BinderOfBigBird has changed nick to copumpkin.
23:31:08 <kmc> hm if i enumerate eight different ways of complaining about brainfuck-equivalent esolangs, then...
23:31:20 <elliott> tswett: something you made in 2k11
23:31:52 <tswett> I remember no such year as 2011.
23:32:19 <kmc> i have invented a language where each line is a transcript of something said in #esoteric complaining about brainfuck-equivalent esolangs
23:33:04 <kmc> each line performs an operation equivalent to one of brainfuck's <>+-,.[] according to the number of the day on which the thing was first said, mod 8
23:33:25 <shachaf> I have invented a language where Phantom_Hoover = [, elliotit = ], shachaf = <, kmc = >, tswett = -, pikhq = +, oerjan = ,, olsner = .
23:33:38 <shachaf> Sorry oerjan. :-( You got the worst operator.
23:33:45 <Arc_Koen> kmc: does that mean your language evolves every time someone complains about brainfuck equivalents?
23:33:51 <shachaf> Oh, and operators have to be enclosed in <>
23:33:55 <kmc> shachaf: do you also have a giant chessboard and 32 silly outfits?
23:34:07 <kmc> Arc_Koen: yeah, though old programs should keep the same meaning
23:34:38 <shachaf> "ddoublle lleterss are hard"
23:34:39 <kmc> elliotit: the wiki server backed by the elliott content tracker
23:35:06 <elliott> kmc: that's just esolangs.org
23:35:10 <Arc_Koen> so we're developing brainfuck-equivalent supersets of brainfuck-equivalents? EVEN WORSE
23:35:11 <shachaf> kmc: More like the elliot content tracker.
23:36:16 <Arc_Koen> wait I was supposed to put "we create brainfuck-equivalents against our will" in one of the sentences before, otherwise the joke doesn't work
23:36:24 <Arc_Koen> did I just fail three jokes in a row?
23:36:44 <shachaf> kmc: Today I overheard people talking about their social photo-sharing app for iOS.
23:39:13 -!- elliott has left ("Leaving").
23:41:57 -!- Nisstyre has quit (Quit: Leaving).
23:42:12 <kmc> isn't that every day in the bay area
23:42:38 <kmc> No newline at end of file
23:42:45 -!- Nisstyre has joined.
00:11:46 <kmc> shachaf: people elsewhere are talking about the best bagels in san francisco
00:12:31 <kmc> apparently http://www.deliboardsf.com/ has secret bagels
00:12:40 <kmc> which are boiled in new york, baked in SF, and not listed on the menu
00:13:00 <shachaf> On the other hand there's http://idlewords.com/2007/04/the_alameda-weehawken_burrito_tunnel.htm
00:14:08 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:15:33 <Sgeo> Someone asked a question in #clojure about whether the stdlib includes a feature
00:15:52 <Sgeo> As far as we can tell, it's both a really bad idea and impossible. But my language would make it possible.
00:16:00 <Sgeo> That sort of makes me take pause.
00:17:33 <Sgeo> Someone linked to http://www.ioccc.org/2012/tromp/hint.html
00:20:37 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
00:24:39 <Sgeo> Hmm, I think the scoping I have in mind is technically dynamic but with a function to essentially temporarily clear currently bound stuff
00:24:48 <ion> http://store.valvesoftware.com/product.php?i=CP201
00:26:24 <Sgeo> Is something like this too ugly?
00:26:28 <kmc> space gotta go to space
00:26:48 -!- sirdancealot7 has joined.
00:26:49 <Sgeo> (defn foo '[a b c] '(level '(+ a b c)))
00:26:55 <Sgeo> In terms of needing that level there?
00:27:11 <Sgeo> o.O that level is in a very wrong place
00:29:26 <shachaf> It's Clojure. You don't even need to read it to know that it's Clojure.
00:30:26 <Sgeo> It's a variation based on Clojure + Tcl
00:30:33 <Sgeo> Unsure how I'm going to deal with lexical scoping
00:31:47 -!- Frooxius has quit (Ping timeout: 240 seconds).
00:32:49 <Sgeo> (deflfn '[a b c] '(+ a b c))
00:33:20 <Sgeo> (def '(level '(fn '[a b c] '(+ a b c))))
00:33:59 <Arc_Koen> also for the ioccc link you provided - that looks like it's Real Fast Nora's Hair Salon 3: Shear Disaster Download
00:34:09 <Sgeo> It occurs to me that defn and anything similar should be providing a name
00:34:18 <Sgeo> (def 'foobar '(level '(fn '[a b c] '(+ a b c))))
00:34:26 <Sgeo> (deflfn 'foobar '[a b c] '(+ a b c))
00:35:49 <Arc_Koen> with LAMBDA as 00, APPLY as 01, ZERO as 10 and ONE MORE THAN as 1
00:38:49 -!- monqy has joined.
00:40:38 <Sgeo> I am slowly turning into Gamzee.
00:40:58 <Sgeo> That reminds me. Arc_Koen, keep reading Homestuck.
00:41:25 <Arc_Koen> buuuut it was kind of repetitive and slow
00:53:10 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
01:02:27 <Arc_Koen> 's a shame the mailing list doesn't exist any longer
01:20:14 <Sgeo> If I don't have true lexical scoping, but do have an easyish way to effectively say "Hey, consider this a separate scope", is that sufficient for a language to be comfortably usable?
01:26:20 * Sgeo is suddenly not sure if he's reinventing picolisp or not
01:26:57 <Sgeo> Hmm, I'm... not sure
01:27:20 <monqy> what are you doing and why
01:27:38 <shachaf> monqy: ask not what are you doing and why, but what aren't you doing and why not
01:27:39 <Sgeo> Language based off Clojure and Tcl where conditionally printing looks like
01:27:52 <Sgeo> (if blah '(println "true") '(println "false"))
01:32:59 <monqy> why wouldn't you have lexical scoping though
01:33:02 <monqy> i bet it's a bad reason
01:33:34 <shachaf> "i bet you're a bad person" - "monqy'"
01:34:16 <shachaf> monqy: HEY THAT WAS MONQY PRIME
01:50:42 <shachaf> kmc: 00000000-0000-0000-0000-000000000000 is a perfectly valid UUID!
01:50:53 <shachaf> It could've come about as random chance.
01:51:43 <shachaf> kmc: So IOCCC 2012 is done.
01:51:51 <shachaf> When's your contest coming along?
01:53:03 <coppro> shachaf: guaranteed to be chosen at random
01:53:30 <kmc> oh IOCCC 2012 is done?
01:53:39 <kmc> i had a good idea for an entry
01:53:41 <kmc> next year i guess
01:54:17 <shachaf> kmc: http://www.ioccc.org/years.html#2012
01:54:39 <shachaf> 18:51 <ion> https://raw.github.com/gist/3909430/377bfe9b1a62e1c74acac0ec32ca4261c66379cd/%F0%9D%94%93%F0%9D%94%AF%F0%9D%94%A2%F0%9D%94%A9%F0%9D%94%B2%F0%9D%94%A1%F0%9D%94%A2.hs
01:55:10 <shachaf> ion: Why doesn't that export most of the identifiers?
02:07:47 -!- pikhq has quit (Read error: Connection reset by peer).
02:09:08 -!- pikhq has joined.
02:28:08 -!- jfguest has joined.
02:38:38 -!- jfguest has quit (Quit: leaving).
02:45:39 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:46:59 -!- Max00355 has joined.
02:48:15 <Max00355> Is it possible to write to a file with brainfuck?
02:50:11 -!- pikhq_ has joined.
02:50:16 -!- pikhq has quit (Ping timeout: 244 seconds).
02:53:09 -!- Max00355 has quit (Ping timeout: 260 seconds).
03:02:46 -!- Max00355 has joined.
03:05:31 -!- zzo38 has quit (Remote host closed the connection).
03:15:47 <Jafet> BACK IN THE DAY, SON, WE DIDN'T HAVE FILES
03:15:54 <Jafet> AND EVERYTHING WAS IN UPPERCASE
03:16:03 <ion> BACK IN THE DAY WE DIDN’T HAVE SONS
03:19:51 <Sgeo> Max00355, well, you could direct the output of a brainfuck interpreter to a specific file
03:20:06 <Sgeo> Or you could use something like PSOX, although I abandoned it before hammering out the file stuff
03:28:44 <kmc> that is amazing
03:30:42 <kmc> http://i.imgur.com/6QpIO.png
03:31:00 <ion> kmc: https://gist.github.com/3909452
03:37:10 <ion> Interesting, the gist title was cut off from the first non-BMP character.
03:43:49 <tswett> Max00355: Brainfuck itself has no particular mechanism for doing so.
03:44:46 <kmc> that's why you should always use brainfuck implementations where the tape has finite size and the array indexing is not bounds-checked
03:44:52 <kmc> then you can write to files
03:45:16 <kmc> now i wanna write a brainfuck JIT spray
03:52:02 <tswett> So, let me blab about NFU.
03:52:18 <tswett> NFU is that set theory where comprehension is allowed for any "stratified" formula.
03:53:10 <tswett> So {x where x = x} is a valid set. It contains everything. {x where {} is a subset of x} contains all sets. {(x,y) where x is a subset of y} is a valid set.
03:53:30 <tswett> {x where x is not in x} is not a valid set, because "x is not in x" is not a stratified formula.
03:54:33 <tswett> Stratified comprehension is the bulk of NFU. It has an axiom, the axiom of choice, that is equivalent to a function with a certain property.
03:55:05 <tswett> Equivalent to the existence of such a function, I mean.
03:55:11 <tswett> It has another axiom, the axiom of counting, which isn't obviously equivalent to the existence of a function at all.
03:58:04 <tswett> If S is a set, let Box(S) = {{x} where x in S}.
03:58:19 <tswett> The axiom of counting states that if S is finite, then S has the same cardinality as Box(S).
04:03:05 <tswett> The "obvious" way to express that as a function is to say that if S is finite, then there is a bijection between S and Box(S). But that sounds really dangerous.
04:11:47 -!- sivoais has quit (Quit: leaving).
04:12:17 -!- sivoais has joined.
04:16:44 -!- FreeFull has quit.
04:49:45 -!- Jafet1 has joined.
04:51:10 -!- Jafet has quit (Ping timeout: 265 seconds).
04:56:04 <kmc> is there pine tar flavored bread in finland
04:58:53 <shachaf> kmc: johnw of #haskell-blah is on the C++ committee, voting on C++14 features.
04:59:10 -!- zzo38 has joined.
05:04:17 <kmc> what's new in C++14
05:04:57 <shachaf> Apparently they were voting on "return { 10 };" syntax today.
05:05:39 <shachaf> Which, if your return type is a class, calls the constructor of the class?
05:42:34 -!- impomatic has quit (Quit: http://BASICcomic.com).
05:52:28 -!- FireFly has quit (Excess Flood).
06:00:04 -!- FireFly has joined.
06:51:18 -!- AnotherTest has joined.
06:51:26 -!- AnotherTest has left.
07:04:17 -!- Phantom_Hoover has joined.
07:14:06 -!- Jafet1 has quit (Quit: Leaving.).
07:25:28 -!- epicmonkey has quit (Remote host closed the connection).
08:02:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
08:04:50 -!- zzo38 has quit (Remote host closed the connection).
08:10:54 -!- nooga has joined.
08:23:30 -!- epicmonkey has joined.
08:30:04 -!- Jafet has joined.
08:55:55 -!- sirdancealot7 has joined.
09:04:45 -!- epicmonkey has quit (Remote host closed the connection).
09:04:55 -!- epicmonkey has joined.
09:15:47 -!- monqy has quit (Quit: hello).
10:11:49 -!- Phantom_Hoover has joined.
10:21:31 <Max00355> What exactly can brainfuck be used for besides printing out some ASCII characters?
10:23:21 <fizzie> Calculating exciting stuff.
10:23:25 <fungot> 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648 42949672 ...
10:23:31 <fizzie> See, that's from brainfuck.
10:23:41 <Jafet> Making benchmarks against your new language
10:24:07 <fizzie> Getting brain-bricked, via the "make a derivative language, wait a few seconds" plan.
10:24:50 <fizzie> ^rainbow Not to forget the prettiest rainbows.
10:24:51 <fungot> Not to forget the prettiest rainbows.
10:26:24 <fizzie> And then there's always the highly vibrant brainfuck adventure game development community. There's Lost Kingdom, and... well, I guess Lost Kingdom.
10:28:21 <fizzie> I seem to recall it was mostly automatically generated, so the code isn't perhaps too edit-friendly.
10:28:50 <fizzie> The source is 2189420 bytes long.
10:30:38 <Jafet> I bet most games aren't that big.
10:33:53 -!- ais523 has joined.
10:57:45 -!- ais523_ has joined.
10:57:50 -!- ais523 has quit.
10:59:01 -!- ais523_ has changed nick to ais523.
11:20:00 -!- atriq has joined.
11:38:38 -!- olsner has quit (*.net *.split).
11:43:02 -!- olsner has joined.
12:02:47 -!- boily has joined.
12:09:15 -!- Arc_Koen has joined.
12:11:00 -!- pikhq_ has quit (Ping timeout: 265 seconds).
12:11:18 <Arc_Koen> is this international day or something?
12:11:53 <Jafet> Internation indoeuropean day
12:12:28 <Arc_Koen> and it looks like he wants to make it up for the time he was missing!
12:16:59 <Arc_Koen> so that's why someone said "another cheesy language" yesterday
12:24:06 <fizzie> In its natural habitat, one hopes.
12:24:08 <atriq> Back into the wilds of Northern Scotland
12:24:43 <fizzie> atriq: Do you have roaming bands of BSDs in Scotland?
12:25:05 <atriq> fizzie, nah, they're quite solitary
12:25:23 <atriq> I'm too far south to get them here, though
12:31:02 <Phantom_Hoover> northern scotland, or as literally everyone else calls them, the highlands
12:31:39 <fizzie> Is that where the HIGHLANDERS fight?
12:36:57 -!- ais523_ has joined.
12:37:14 -!- ais523 has quit (Read error: Connection reset by peer).
12:40:44 <boily> bon matin à tous! I'm wearing my http://www.amazon.com/Save-Planet-Learn-Proto-Indo-European-T-shirt/dp/B0087LFWDY t-shirt today!
12:47:52 -!- ais523_ has changed nick to ais523.
12:59:16 -!- atriq has quit (Ping timeout: 246 seconds).
13:16:49 -!- atriq has joined.
13:18:42 -!- elliott has joined.
13:30:57 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
13:51:46 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:10:14 <elliott> UK court says Apple must now run adverts in major British papers and leave a banner on its website for 6 months saying Samsung isn't a tablet-design copycat. (zdnet.com)
14:10:36 <elliott> [[Apple has lost an appeal against Samsung in the U.K. after the first judge claimed the Galaxy Tab 10.1 could not have infringed the iPad because it wasn't "cool" enough.]]
14:12:11 -!- copumpkin has joined.
14:38:36 -!- function has changed nick to constant.
14:41:03 -!- copumpkin has quit (Remote host closed the connection).
14:55:44 <Phantom_Hoover> i had an english teacher who pronounced surreal 'sooral'
14:58:57 <Phantom_Hoover> she also pronounced poem 'poeeyem' but that's weirdly common in scotland
15:00:53 <atriq> Did she pronounce "film" with two syllables?
15:03:30 -!- copumpkin has joined.
15:06:01 <Arc_Koen> nah, that's just you pronouncing fillem wrong!
15:06:43 <Arc_Koen> oh and give a look at that mascarpone language it looks great
15:07:03 <Arc_Koen> (was looking for a slightly more expressive adjective than just "great" but hey)
15:07:46 <kmc> how about "awesome"
15:08:35 <boily> there's no page on the wiki. is there any public info floating somewhere on mascarpone?
15:11:13 <atriq> Possibly the same thing as Emmental, not sure
15:19:10 -!- zzo38 has joined.
15:21:23 -!- Vorpal has joined.
15:37:09 -!- ais523 has quit.
15:38:12 <atriq> Thinking about Featured Languages
15:41:18 <atriq> I'm gonna suggest not Underload, because Glass is stack based too
15:41:48 <atriq> I might put my weight behind Malbolge
15:44:59 <atriq> It's quite different to Glass and ///
15:45:21 <atriq> It's got a specification
15:50:03 -!- augur has quit (Remote host closed the connection).
15:52:06 -!- hagb4rd has joined.
15:53:45 <elliott> atriq: are you planning to become an admin
15:53:50 <elliott> do you want to be in charge of featured languages
15:54:06 <atriq> I don't know if I can be trusted with the responsibility!
15:54:47 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
16:03:06 -!- copumpkin has quit (Ping timeout: 264 seconds).
16:06:24 <zzo38> Do you have a pipe organ?
16:08:50 <atriq> I have an electric keyboard with 2 pipe organ voices, though
16:09:14 <atriq> Pipe Organ 1 and Pipe Organ 2
16:09:47 <atriq> Also, Synth Organ and Jazz Organ
16:12:43 <elliott> atriq: Do they sound different???
16:12:51 <elliott> I want to hear Pipe Organ 1 and Pipe Organ 2. How do you make two separate pipe organ voices.
16:14:05 <zzo38> Well, I suppose they could have different stops, different swell shades, etc
16:14:14 <atriq> Pipe Organ 1 sounds bolder, Pipe Organ 2 more italic
16:14:22 <atriq> I think that only makes sense for me
16:18:10 <elliott> atriq: i'm going to have to demand audio here
16:19:00 <atriq> I'm gonna have to refuse or at least arbitrarily delay
16:21:20 <elliott> i will never know the smooth sounds of pipe organ 1 & 2
16:21:24 <fizzie> "More italic", is that like as in the cursive typeface?
16:23:52 <elliott> fizzie: Hey, how's that thing?
16:25:28 <fizzie> What, what, WHAT. There's no "things".
16:28:44 -!- copumpkin has joined.
16:32:55 -!- atriq has quit (Ping timeout: 252 seconds).
16:36:38 -!- mindlessDrone has joined.
16:37:18 -!- ais523 has joined.
16:38:00 -!- FreeFull has joined.
16:38:23 <shachaf> elliott: http://www.youtube.com/watch?v=k-jRj8qXpag#t=1m40s
16:39:48 <HackEgo> mindlessDrone: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
16:41:02 -!- augur has joined.
16:41:22 <shachaf> They tell you that it's the international hub, but really there are only two countries: Hexham and Finland.
16:46:12 <zzo38> No, some people of esolang are Canada, too.
16:47:05 <fizzie> Some people of esolang are *alleged* to be Canada.
16:47:14 <fizzie> (Innocent until proven guilty and all that.)
16:47:34 <shachaf> zzo38: What is there in Canada, really, once you take out the Hexham and the Finland?
16:50:18 -!- copumpkin has quit (Ping timeout: 256 seconds).
17:04:02 -!- Phantom_Hoover has joined.
17:13:53 -!- AnotherTest has joined.
17:17:24 -!- atriq has joined.
17:20:13 -!- atriq has quit (Client Quit).
17:22:12 <fizzie> I'd ask how it translates to sound, but I might not want to hear the answer.
17:27:38 <mindlessDrone> OMG this is a programming language? I thought this is hardcore esoteric like walking over water
17:28:06 <FreeFull> And over water if there is a bridge or something
17:29:02 <zzo38> Can you walk on water if frozen to make ice?
17:29:27 <boily> I'm back from lunch and what do I know? people here doubting my canadianness.
17:29:57 <zzo38> mindlessDrone: What did you want about walking over water, anyways?
17:30:27 <zzo38> Esolang is not in itself a programming language, but rather involves prorgamming language; see wiki for information
17:31:50 <kmc> try nailing yourself to some wood
17:34:18 <zzo38> It is supposed to be so much text ...
17:39:04 -!- oklofok has quit (Ping timeout: 246 seconds).
17:41:16 <fizzie> http://dsc.discovery.com/gear-gadgets/man-attempts-walking-across-sea-in-a-human-sized-hamster-wheel-photos.html
17:41:22 <fizzie> That thing, maybe that's a bit Jesusy.
17:41:33 <fizzie> I mean, kind of, sort of.
17:42:26 -!- copumpkin has joined.
17:43:21 <fizzie> And anyway wasn't he a carpenter's son or something? I mean, adopted, if you can call it that. I'm sure he could've fiddled together something like that.
17:44:05 <fizzie> Maybe a slightly more creakier version but still.
17:48:05 -!- nortti has changed nick to []{}\|-_`^.
17:48:10 <zzo38> It is also possible that they mistaken him, they misremembered, they added the walking on water for metaphorical purposes, and various other things, including but not limited to, divine magic
17:48:53 -!- []{}\|-_`^ has changed nick to nortti.
17:51:36 <mindlessDrone> a german comedian once sayed "maybe he was just buying water" because in german buying and walking are rhyming
17:53:28 -!- WeThePeople_ has joined.
17:57:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
18:00:39 -!- nortti has changed nick to ^[.
18:00:51 <shachaf> nortti has escaped the dungeons of doom.
18:01:25 <zzo38> Many electronic piano/synthesizer have only a few fixed settings and cannot be changed much, sometimes there are a few possibilities.
18:01:35 -!- WeThePeople_ has quit (Read error: Connection reset by peer).
18:02:00 <shachaf> zzo38: http://ampnoise.com/mp3/MusicOnThePDP-1X_Pinafore.mp3
18:02:25 -!- ^[ has changed nick to [-].
18:02:36 -!- [-] has changed nick to ^[.
18:02:52 <zzo38> I wrote on paper some 32 byte registration of digital synthesizer, including FM section, additive section, square section, saw/triangle section, organ section, percussion section, and global section.
18:04:10 -!- ^[ has changed nick to nortti.
18:06:16 <zzo38> And then you can have multiple manuals, each with their own registration, and pedalboard, as well as other pedals and other controls
18:07:16 -!- oklopol has joined.
18:12:45 <ais523> hmm, I think I hit my personal record for getting a Slashdot post modded up to +5
18:12:48 <ais523> it was less than 5 minutes
18:12:56 <ais523> (second post on an article about a court case, linking to the verdict)
18:17:34 <ais523> wow, I'm already old enough to have difficulty comprehending just how fast computer storage is increasing
18:17:49 <ais523> you can get a 64GB SD card for a reasonably affordable price, for insance
18:18:20 <ais523> I grew up with floppy disks (5¼" were the most common when I started using computers, but 3½" were the first I really started using)
18:19:09 <shachaf> I never ued a 5¼" floppy disk. :-(
18:19:24 <ais523> that was before I started using PCs
18:19:24 <shachaf> But I remember 3½" fondly, of course.
18:19:33 <fizzie> SD cards don't freak me out as much as microSD cards. Aren't those up to at least 32G now too?
18:19:58 <ais523> PCs were quite common when I was young, but didn't have anywhere near the market share they do nowadays
18:20:03 <shachaf> It used to be in my phone but now my phone doesn't have a microsd slot.
18:20:05 <fizzie> That gives me the shivers.
18:20:36 <shachaf> fizzie: You can get 64GB microsd these days.
18:20:53 <fizzie> That's, like, double-shivers.
18:21:04 <fizzie> It's the size of a fingernail.
18:21:08 <ais523> my primary school used primarily Acorn computers, together with some BBC Micros
18:22:24 <fizzie> The "parallel class" (not sure what's the term; same grade, a different group) in primary school had a PC. We were kinda jealous.
18:22:27 <zzo38> I don't like SD card much, though, especially the small ones which don't have a write protect switch.
18:22:40 <fizzie> (On the other hand, we took more class trips.)
18:23:01 <fizzie> Their PC ran Windows 1.02; this was in the higher grades.
18:23:21 <shachaf> Hmm, 32gb microsd is down to $20.
18:23:29 <ais523> the computers in my secondary school were PCs, mostly running Windows 95; some were on Windows 3.11, and they upgraded to 98 after a while
18:23:53 <fizzie> They also had a directory with "high-ascii" (sorry for the misnomer) characters in it, with Leisure Suit Larry 1 (I think) and some other games hidden in it.
18:24:07 <fizzie> See, the teachers couldn't get in there.
18:24:31 <elliott> i used a bbc micro in playschool
18:24:33 <elliott> pretty sure it was obsolete then
18:24:39 <ais523> elliott: it probably would have been
18:24:41 <fizzie> You had to memorize the numbers to type with alt-NNN. One of them was the empty space, too.
18:24:43 <elliott> since this was like late 90s-early 2000s :P
18:24:47 <ais523> about the time I finished secondary school, they decided to get rid of their BBC Micros
18:24:54 <ais523> so they sold them to their students for £20 each
18:25:03 <elliott> in year 1 or so we had an acorn(!!)
18:25:04 <ais523> we bought one and played with it for a while; I learned 6502 asm on it
18:25:14 <shachaf> BBC Micro? That sounds like the future.
18:25:21 <ais523> the B and Y keys were broken, but that wasn't impossible to deal with
18:25:31 <ais523> because function keys were rebindable
18:25:33 <fizzie> Then they installed that Windows 1, and the MS-DOS Executive let you navigate to any directory. It was a problem.
18:25:51 <ais523> you could get the B via copying-and-pasting from the "BBC" tagline it printed when it loaded
18:25:57 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds).
18:26:10 <ais523> for Y you had to write a short BASIC program
18:26:15 <elliott> oh right, I presumably even knew the Micro was obsolete, since I got a computer before then...
18:26:27 <ais523> shachaf: it wouldn't be a very good one
18:26:32 <elliott> (did you know: windows 3.11 is not very good)
18:26:47 <Gregor> Windows 3.11 is awesome.
18:26:50 <ais523> elliott: I actually enjoyed 3.1, it did what it was intended to do quite well
18:26:50 <elliott> ais523: how long did it take you to relearn how to type on a keyboard with b and y where they are rather than on the fkey row
18:26:57 <shachaf> http://upload.wikimedia.org/wikipedia/en/c/c4/Interface_age_scan_nov_1983_p30_bbc_micro_ad.jpg
18:26:57 <ais523> elliott: not very long, actually
18:27:07 <ais523> I'm quite used to keys changing places when I move to a different keyboard
18:27:08 <fizzie> Same school where I was called to the principal's office, which was a bit worrisome, but then they just had printer problems.
18:27:10 <elliott> Gregor: i used windows 3.11 when i was 3, i'm the expert
18:27:19 <shachaf> elliott: I did too, I think!
18:27:24 <ais523> fizzie: heh, I only got called to the headteacher's office when they wanted to reward me
18:27:29 <ais523> the punishment was mostly done by other people
18:27:44 <elliott> shachaf: that sounds unlikely
18:27:50 <elliott> shachaf: well I guess you aren't that much older than me
18:27:59 <elliott> and also windows 95 had been out for a few years by the time i got that thing anyway
18:46:12 -!- mindlessDrone has left.
18:59:36 <fizzie> Also remember not to SMARTDRV your Windows 3.1 system disk, because it will cause the loader to just eat a chunk of the Windows logo and choke.
18:59:58 <fizzie> What's the online disk compression tool.
19:01:03 <fizzie> (You can certainly SMARTDRV it.)
19:02:36 <fizzie> Apparently it's a valid configuration if you jump through the right hoops.
19:02:39 <fizzie> Didn't work out for me, though.
19:04:23 -!- AnotherTest has quit (Quit: Leaving.).
19:04:38 -!- AnotherTest has joined.
19:04:43 <olsner> smartdrv was the disk cache thing?
19:05:53 <fizzie> Doublespace played all kinds of weird tricks with hidden volumes called h: and whatnot.
19:07:43 <fizzie> Also loadlin, that's so nifty. My first dual-boot box had its dual-boot done by keeping DOS in the MBR, then using the fancy DOS 6 [menu] menuitem boot menu things to automagically blarp with loadlin.
19:08:22 <fizzie> And umsdos, isn't that even niftier? I think I had a slackware umsdos installation.
19:09:23 <fizzie> It's the thing that lets you put Unixy things like uids and gids into a plain directory of a FAT filesystem, so that you can have your root in C:\LINUX.
19:09:55 <fizzie> It puts the extra data into a FAT file called --LINUX-.---.
19:10:09 -!- epicmonkey has joined.
19:10:23 <fizzie> Then you can go peek at your /etc as C:\LINUX\ETC\ in DOS land.
19:10:36 <fizzie> And of course ruin everything if you mess with things there too much.
19:11:16 <fizzie> Goes well with loadlin: no partitioning, no boot loader messing-up-with, no nothing. You just enter the drag^HLinux from dos.
19:11:40 <fizzie> I suppose compared to ext2 there might have been some slight performance issues maybe.
19:15:42 -!- copumpkin has quit (Ping timeout: 255 seconds).
19:25:15 <ion> Try Jumping http://youtu.be/VSttd3edW98
19:29:11 <nortti> fizzie: drag^HLinux = draLinux?
19:30:19 <fizzie> (Though "draLinux" doesn't sound like an unreasonable name for a distribution.)
19:30:22 <nortti> I was trying to find info on this draLinux on google
19:30:28 -!- AnotherTest1 has joined.
19:30:42 <fizzie> The rules state you must now make it.
19:31:10 -!- AnotherTest has quit (Read error: Connection reset by peer).
19:31:39 <nortti> fizzie: good. I had no name for my distro
19:33:21 <nortti> fizzie: should I use 2.4 kernels so I could use umsdos?
19:38:47 -!- AnotherTest1 has quit (Quit: Leaving.).
19:39:14 -!- pikhq has joined.
19:39:20 <fizzie> I, uh. I wouldn't, but you are certainly free to.
19:40:11 <nortti> ok. I'm going to use mastodon linux as a starting point
19:40:44 <ais523> hmm… YouTube top comment is a warning not to read the rest of the comments
19:40:49 <ais523> YouTube's self-awareness is scary sometimes
19:41:04 <ais523> I read the first page of actual comments, they mostly just said that the comments were fine again now
19:42:04 -!- AnotherTest has joined.
19:42:37 <ion> Don’t you dare offer free education to our residents! http://chronicle.com/blogs/wiredcampus/minnesota-gives-coursera-the-boot-citing-a-decades-old-law/40542 Meanwhile: http://www.startribune.com/business/164349766.html
19:45:35 <nortti> I wonder how well modern linux software will work with gcc 2.95 and libc4
19:46:06 <pikhq> Depends on the program.
19:46:15 <pikhq> Some stuff will work just fine, some stuff depends on C99.
19:46:51 <elliott> if you are using gcc 2.95 and libc4 then presumably you are enough of a neo-luddite to not want to use modern linux software
19:47:15 <pikhq> Linux 2.6.0 is the first (official, stable) version of Linux where you can have correct pthreads.
19:47:29 <pikhq> And 2.4.0 is the first where you can have threads that almost work if you squint.
19:47:56 <pikhq> (pssst, you want to use musl)
19:48:38 <fizzie> LinuxThreads/libc5 was a working combination for threads, at least, pre-NPTL. I don't quite know about libc4 and threads.
19:48:51 <pikhq> fizzie: Very non-conformant though.
19:48:58 <nortti> and musl doesn't build with 2.95 if I remember correctly
19:49:14 -!- copumpkin has joined.
19:49:46 <olsner> as if any of the programs using threads are correct enough that you could tell that the thread implementation is broken
19:50:17 <nortti> I am still not sure if I want to make draLinux a serious distro or not
19:50:36 <pikhq> fizzie: Each thread in LinuxThreads has a different pid.
19:50:50 <pikhq> This isn't a *subtle* non-conformance error, it's a Big one.
19:51:41 <nortti> wait. is thread implementation part of kernel or part of libc on linux?
19:52:00 <pikhq> Part of libc, *but* with some support needed from the kernel.
19:52:22 <pikhq> 2.4 doesn't support the flag for clone that indicates the new process needs the same PID as the parent.
19:53:04 <kmc> ksplice it
19:53:10 <zzo38> Can we make the Imakuni?'s card in Dungeons&Dragons game?
19:53:21 <nortti> should it be hard to fix? I have not really poked anything newer than linux 0.2
19:53:39 <pikhq> Red Hat 9 backported it.
19:53:52 <pikhq> You could probably just filch their patch.
19:53:58 <kmc> what about RHEL3?
19:54:16 <nortti> I always read RHEL as RHELL
19:54:22 <pikhq> RHEL3 was derived from Red Hat 9.
19:54:22 -!- ais523 has quit (Remote host closed the connection).
19:54:25 <kmc> yes that's how it's often pronounced too
19:54:36 <kmc> ksplice never worked on 2.4 to my knowledge
19:54:44 -!- ais523 has joined.
19:54:59 <pikhq> Well, yeah. 2.4 to 2.6 involved Huge Changes.
19:55:26 <pikhq> nortti: Anyways, you should use musl because it is the Best Libc Ever. :P
19:55:56 <nortti> pikhq: ok. If I can get it to compile with something ancient I'll give it a shot
19:56:02 <kmc> well so does 2.6.9 to 3.4 and ksplice supports that whole range :)
19:56:07 <pikhq> nortti: Builds with PCC.
19:56:17 <kmc> going back to 2.4 would be a bigger deal still
19:56:31 <nortti> pikhq: isn't pcc c89 only?
19:56:40 <pikhq> No, it's been updated to C99.
19:57:09 <nortti> linux 2.4+toybox+pcc+musl
19:57:38 <zzo38> Should the Haskell programs in their own pages in esolang wiki to use literate Haskell format so that you can download the file and then it will work?
19:58:20 <pikhq> GCC 2.95 however is C89-only. ;)
19:58:40 <pikhq> Fair warning, you cannot build Linux with PCC.
19:59:07 <kmc> are you a bad enough dude to build linux with pcc
19:59:18 <nortti> I probably need both pcc and tcc and patches for linux or gcc 2.95
20:00:08 <nortti> that would be rational
20:00:51 <nortti> when I'm going to use linux 2.4 and coreutils without cp why not use ancient/obscure compilers
20:01:45 <nortti> and it will of course use umsdos and loadlin
20:02:13 <pikhq> The better option would be to pay landley to do qcc.
20:02:58 <nortti> but wouldn't it have the same problem as pcc (lack of gcc specific stuff)?
20:03:24 <pikhq> What he wants to do with it is make it usable as the only compiler in his Aboriginal Linux project.
20:03:38 <pikhq> (and he considers it a regression if he can't build Linux From Scratch using that)
20:04:05 <nortti> now to find out where and how I can send the money
20:04:23 <pikhq> And realize that paying a guy to do something fulltime for a few months is pricy. :P
20:05:26 -!- AnotherTest has quit (Quit: Leaving.).
20:05:35 <nortti> so qcc was tcc frontend bolted to qemy code generator, right?
20:06:07 -!- AnotherTest has joined.
20:07:47 <pikhq> And then the frontend boosted like crazy.
20:07:50 <pikhq> And then binutils.
20:08:08 <pikhq> Because, in short, "fuck GNU"
20:08:55 <nortti> I also hope toybox gets cp and mv soon
20:08:56 -!- AnotherTest has left.
20:09:16 <nortti> using sash for those things in my minidistro is getting annoying
20:09:38 <elliott> does it really not have cp and mv
20:09:59 <pikhq> On landley's todo list up there with "get email working".
20:10:04 <nortti> it does have those but those are broken
20:10:09 <pikhq> elliott: Nah, it's a relatively new project.
20:10:28 <pikhq> And landley's spent the past year unable to work on it as much as he'd like.
20:11:16 <zzo38> For Dungeons&Dragons game (and for Icosahedral RPG) I could make up the "Imakuni?'s" spells like the Imakuni?'s cards, and I could make up the "Kjugobe's" psionic powers like the psionic powers that would be made up by my character.
20:12:58 -!- atriq has joined.
20:13:16 <ais523> zzo38: why would anyone bother to memorize an Imakuni?'s spell?
20:13:23 <ais523> (also, why would anyone embed a question mark in their name?)
20:14:53 <zzo38> ais523: In case you are strange you would do those things, I suppose.
20:15:33 <zzo38> But it may occasionally find useful as you would any spells, so you might want to write on the scroll to use as a scroll.
20:18:20 <atriq> I wrote a dupdog interpreter because I was bored
20:18:24 <atriq> And I've no idea if it works
20:26:54 <atriq> "ॐኙ┯䩛钳𥋃*** Exception: Prelude.chr: bad argument: 1218051"
20:27:05 <atriq> That's meant to say "Hello, World!"
20:27:15 <ion> Close enough.
20:27:17 <atriq> I think my program is wrong
20:32:16 <fizzie> 1218051 is *so close*, it's almost a characer. I mean, relatively speaking. They do go up to 1114111.
20:36:25 <shachaf> ion: U+006D LATIN SMALL LIGATURE RN [m]
20:41:55 <elliott> @remember shachaf U+006D LATIN SMALL LIGATURE RN [m]
20:42:29 <ion> Why do they call them like U+006D instead of U+6D?
20:43:19 <ion> On the other hand, now that we have U+1F773 ALCHEMICAL SYMBOL FOR HALF OUNCE, why isn’t it U+0006D?
20:44:08 <fizzie> It's some kind of a thing that it's max(4, needed) characters.
20:45:51 <fizzie> (We do sort-of have U+100000 <Plane 16 Private Use, First> too, so maybe it should be U+00006D.)
20:45:51 <lambdabot> Couldn't match expected type `GHC.Types.Int'
20:46:38 <fizzie> It's the let-definitions file, isn't it?
20:46:52 <fizzie> Possibly some sort of a race condition. Normally it's a very transient error, though.
20:47:10 <fizzie> (Full disclosure: I did nothing to fix it.)
20:47:38 <lambdabot> "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\S...
20:47:48 <lambdabot> " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefg...
20:47:57 <fizzie> I like how it has the ASCII control character names.
20:48:04 <lambdabot> "\DEL\128\129\130\131\132\133\134\135\136\137\138\139\140\141\142\143\144\1...
20:48:51 <lambdabot> "\255\256\257\258\259\260\261\262\263\264\265\266\267\268\269\270\271\272\2...
20:49:01 <FreeFull> It's not going to print them, is it
20:49:48 <fizzie> It doesn't look that way.
20:50:06 <fizzie> Works as input, though.
20:51:04 -!- Vorpal has quit (Ping timeout: 246 seconds).
20:51:05 <fizzie> From what I recall, it disallows unallocated code points in string literals, if not escaped, due to some reason related to not getting the lexical information about the characters from the unicode character database.
20:51:35 <lambdabot> lexical error in string/character literal at chara...
20:51:52 <lambdabot> lexical error in string/character literal at chara...
20:51:58 <lambdabot> lexical error in string/character literal at chara...
20:52:04 <ion> iOS6 maps? http://i.imgur.com/aaVkk.jpg
20:52:09 <lambdabot> lexical error in string/character literal at chara...
20:52:12 -!- nys has joined.
20:52:23 <fizzie> ion: Maybe they're just resting.
20:52:42 <fizzie> > "\x0342" -- maybe what you wanted?
20:53:51 <fizzie> Anyway, there are control character names (maybe slightly less standard) for 0x80..0x9F, IIRC, they could've added those names too, is what I was supposed to say after trying the 127.. thing.
20:56:10 <kmc> http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth lambda the ultimate
20:58:28 <fizzie> > sqrt (-1) == sqrt (-1) -- the nans strike again
20:58:58 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
20:59:22 <FreeFull> Ok, multiplying by zero doesn't get rid of it
21:00:07 <fizzie> > sqrt ((-1) :+ 0) == sqrt ((-1) :+ 0)
21:00:33 <fizzie> > sqrt ((-1) :+ 0) -- because
21:04:34 -!- atriq has quit (Ping timeout: 240 seconds).
21:04:44 <fizzie> Data.Complex should do type Zomplex = Complex Double (or however that's written).
21:06:19 <fizzie> Hey, there's a BLAS.C.Zomplex Haskell module.
21:06:48 <fizzie> It defines things that operate on Ptr (Complex Double).
21:08:01 <fizzie> There's such delightful signatures like zgbmv :: CBLASOrder -> CBLASTrans -> Int -> Int -> Int -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> IO ().
21:10:33 <kmc> it's haskell so i can tell right from the type what that does
21:10:34 <fizzie> (It does y = a*A*x + b*y, or y = a*A^T*x + b*y, or y = a*A^H*x + b*y, where a, b are scalars, x, y are vectors, A is a matrix, A^T is its transpose, and a^H its conjugate transpose, depending probably on the CBLASTrans.)
21:10:58 -!- boily has quit (Quit: Poulet!).
21:11:03 <fizzie> (And it does it FAST, because it's BLAS, and you have a BLASt.)
21:11:11 <kmc> whence the name "Zomplex"
21:11:25 -!- Phantom_Hoover has joined.
21:11:55 <Phantom_Hoover> <ais523> my primary school used primarily Acorn computers, together with some BBC Micros
21:12:11 <fizzie> It's the double-precision complex, I think for the blas/lapack single-letter names that go S for single-precision, D for double-precision, C for single-precision complex and Z for double-precision complex.
21:12:20 <fizzie> I'm thinking they just couldn't think of a suitable letter.
21:12:59 <fizzie> Also, SGI's math library uses 'complex' and 'zomplex' with the same difference. Not sure who was first there.
21:15:08 -!- augur has quit (Remote host closed the connection).
21:16:27 <fizzie> Actually I was slightly inexact there, A needs to be a general band matrix, i.e. only some amount of its diagonals are stored. You can (obviously) tell from the GV.
21:16:56 <fizzie> It would of course be ZGEMV for the general matrix-vector operation.
21:20:32 <fizzie> "General" to distinguish it from Hermitian (regular, band, packed-storage), orthogonal (regular, packed), Hessenberg (upper, upper-generalized), symmetric (regular, tridiagonal, packed), positive definite (regular, band, packed, tridiagonal), triangular (regular, packed, bad, generalized), trapezoidal, unitary (regular, packed), diagonal or bidiagonal matrices which all have their own ...
21:20:39 <fizzie> ... optimized storage formats and function versions. (List not exhaustive, I just got bored typing.)
21:20:42 <fizzie> Numeric programming must be such fun.
21:21:03 <fizzie> That one "bad" should've been "band".
21:21:17 <fizzie> There's no special version/format for bad triangular matrices.
21:21:35 <fizzie> In fact, I'm not sure what makes a triangular matrix bad. Maybe it has just one or two elements on the other side?
21:23:05 -!- epicmonkey has quit (Remote host closed the connection).
21:23:25 -!- epicmonkey has joined.
21:35:07 -!- monqy has joined.
21:56:31 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:00:12 -!- augur has joined.
22:10:50 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
22:11:58 -!- Phantom_Hoover has joined.
22:19:07 <Max00355> What is brainfuck useful for exactly?
22:20:23 <elliott> Max00355: proving other languages turing complete and not much else
22:21:30 <ais523> it has some interesting derivatives, and a lot more really boring derivatives
22:21:31 <Max00355> Hmm, but what I don't understand is how a self-interpreter could be made than.
22:21:42 <ais523> elliott: I'd actually say that proving other languages TC is not that useful a use
22:21:53 <ais523> minsky machines or tag/cyclic tag machines are normally easier to implement
22:22:09 <elliott> any turing-equivalent language admits a self-interpreter
22:22:18 <ais523> elliott: unless it can't take input
22:22:26 -!- copumpkin has joined.
22:22:27 <elliott> ais523: well, then you just need to encode it in initial state, or whatever
22:22:29 <ais523> (not being able to produce output isn't a problem)
22:22:38 <ais523> I guess it depends on your definition of interpreter
22:22:49 <coppro> I find myself agreeing with elliott here, repeatedly
22:23:04 <elliott> hmm, does any TC language admit a self-interpreter? even if it's super-Turing?
22:23:23 <elliott> seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself
22:23:36 <elliott> like a halting oracle where you have to embed the program to check in the source code, or something
22:24:04 <ais523> superturing isn't normally considerd tc
22:24:13 <ais523> would you consider BF to be a PDA?
22:24:22 <elliott> fair enough, but you know what i mean
22:25:15 <ais523> <Anonymous Coward> Any webhamster who specifies pt (or cm, for that matter) for a non-print layout (that is any non-fixed-size layout) should go to jail for no less than double the font size (measured in football fields, of course).
22:25:50 <ais523> elliott: so would you say curly-L is strictly weaker than TC?
22:25:57 <ais523> or do you think it's pointing out that TC is poorly-defined?
22:28:01 <ais523> she shouldn't use pronouns on the internet
22:29:47 <elliott> <ais523> elliott: so would you say curly-L is strictly weaker than TC?
22:29:47 <elliott> <ais523> or do you think it's pointing out that TC is poorly-defined?
22:29:58 <elliott> <elliott> hmm, does any TC language admit a self-interpreter? even if it's super-Turing?
22:29:58 <elliott> <elliott> seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself
22:29:58 <elliott> <elliott> like a halting oracle where you have to embed the program to check in the source code, or something
22:30:01 <elliott> <ais523> superturing isn't normally considerd tc
22:30:03 <elliott> <ais523> would you consider BF to be a PDA?
22:30:13 <ais523> elliott: it's vaguely related
22:30:28 <ais523> curly-L is the class of languages that can interpret some TC language, right?
22:30:47 <ais523> so it's a case of establishing bounds either way
22:30:57 <ais523> but I just realised I wasn't really thinking
22:31:07 <ais523> hmm, are all super-turing languages also TC?
22:31:13 <elliott> fwiw, s/TC/capable of implementing a UTM etc./ in my statement
22:31:18 <elliott> if you want it unambiguous
22:31:21 <ais523> I'd imagine that a language that was, say, /just/ a halting oracle wouldn't be
22:31:51 <elliott> well... you can implement a UTM emulator with that, sort of
22:31:58 <elliott> TC if you can write a program that halts iff UTM, right?
22:32:04 <elliott> TC if you can write a program that halts iff UTM halts, right?
22:32:09 <elliott> you can write a program that prints 1 iff UTM halts and 0 if not
22:32:28 <ais523> although not vice versa
22:32:43 <ais523> it's reminiscent of curly-L but in a different way
22:32:54 <elliott> if you have halts(p) and ifnot (bool) stmt and loop_forever() then you can do
22:33:01 <elliott> ifnot (halts(...)) loop_forever()
22:33:28 <ais523> whilenot (halts(...)) ;
22:33:38 <elliott> ais523: until (halts(...));
22:33:48 <ais523> elliott: you said "ifnot", not "unless"
22:33:55 <ais523> elliott: so I was just copying your style
22:34:14 <ais523> Arc_Koen: push-down automaton
22:34:15 <elliott> ais523: well, you're a joke
22:34:30 <elliott> Arc_Koen: personal digital assistant
22:34:32 <ais523> you know how languages with two stacks are usually turing-complete, unless they have weird flow control issues?
22:34:39 <elliott> Arc_Koen: public display of affection
22:34:44 <ais523> if you take one of those but give it only one stack, you usually get a push-down automaton
22:34:47 <elliott> Arc_Koen: pricy dice access
22:34:57 <elliott> Arc_Koen: pillar-dancing anemone
22:35:01 <ais523> elliott: he asked an on-topic question, can't he get an on-topic answer?
22:35:08 <elliott> Arc_Koen: park drive automobile
22:35:13 <Arc_Koen> well personal digital assistant I knew
22:35:18 <elliott> then i gave him lots of off-topic answers
22:35:21 <Arc_Koen> but somehow I figured that's not what brainfuck was
22:35:37 <ais523> Arc_Koen: a simple example is a modification of BF where all tape cells to the right of the pointer instantly get set to 0
22:35:57 <ais523> anyway, my point was that BF is at least as powerful as a PDA, but it's not normally considered a PDA because it's /also/ TC
22:36:55 <Arc_Koen> the set of brainfuck programs is strictly larger than the set of pda programs
22:37:00 <ais523> you could replace < with [-]<
22:37:05 <ais523> and get the same effect
22:37:07 <Arc_Koen> (larger than in the sense of inclusion)
22:37:14 <ais523> anyway, PDA is one of the few interesting sub-Turing computational classes
22:37:23 <ais523> and you can write some real programs in it, sometimes
22:37:33 <Arc_Koen> the set of rectangles is strictly larger than the set of squares
22:37:33 <ais523> (primitive recursive is another, and there are not nearly enough esolangs that use it)
22:37:43 <Arc_Koen> and yet rectangles are not normally considered squares
22:37:58 <ais523> (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive)
22:38:06 <Arc_Koen> I've never really know the definition of primitive recursive
22:38:23 <ais523> Arc_Koen: the simplest definition is that for all loops, you need to be able to cap the number of iterations before you start looping
22:38:31 <elliott> <ais523> (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive)
22:38:33 <ais523> this obviously implies that the program necessarily halts eventually
22:38:37 <elliott> all the cool languages are total
22:38:54 <ais523> elliott: I strongly considered that but it turned out that making it total syntactically disallowed interesting things
22:39:01 <ais523> so I decided static analysis for totality made more sense
22:39:03 -!- nys has quit (Quit: quit).
22:39:10 <ais523> and hey, if you really want to write an infinite loop, you can, but it's a little nontrivial
22:39:14 <elliott> what does it disallow that you want?
22:39:48 <ais523> elliott: most notably, tail-recursion (specifically recursion, don't really want general tail-calls for this) that simply mutates the input parameters
22:40:00 <ais523> you can refactor that into a version that doesn't but it's a lot of annoying boilerplate
22:40:13 <ais523> like, see C-INTERCAL's optimizer for an example
22:40:14 <elliott> ais523: um, I think Agda allows that
22:40:20 <elliott> so maybe your checking sucks :p
22:40:24 <ais523> it can't allow it /in general/
22:40:31 <elliott> but monqy probably knows more than me there
22:40:39 <ais523> what specific restrictions does it put on it to keep it total?
22:40:48 <elliott> but for instance, foo (S n) = foo n is obviously OK
22:40:52 <ais523> because clearly if you don't mutate the parameters, you get an infinite loop
22:40:54 <elliott> since you know it can't keep taking that path forever
22:41:15 <ais523> elliott: Anarchy can do that too without the warning
22:41:28 <ais523> I'm thinking more along the lines of foo (x, y) | x > y = foo y x
22:41:43 <ais523> let me not muddle curried and uncurried versions of things
22:41:45 * elliott finds that definition dubious anyway
22:42:25 <ais523> well of course it's dubious
22:42:57 <ais523> it'd be nice to be able to automatically resolve a bunch of those and determine whether it definitely halts, or whether the compiler isn't sure whether it definitely halts or not
22:43:09 <ais523> and thus only a warning, in case the compiler fails to solve the halting problem in that particular case
22:44:32 <Arc_Koen> how about a language with a halting oracle to which you give a pair (p, n) where p is a pointer to the beginning of a program (in that language) and n the length of the program
22:44:48 <Arc_Koen> this means you can feed the halting oracle the program it's in
22:45:20 <ais523> Arc_Koen: that just defies the laws of physics
22:45:29 <ais523> if you can conditionally run an infinite loop
22:45:39 <elliott> ais523: anyway, I think you can do something like that
22:45:43 <elliott> but you need to use something stronger than booleans
22:46:07 <ais523> elliott: anarchy's type system is already straining at the edges of credibility anyway
22:46:10 <Arc_Koen> funnily enough we get the same paradoxes as with time travel
22:46:13 <ais523> I can implement it, but not in a compositional way
22:46:19 <ais523> Arc_Koen: see http://esolangs.org/wiki/TwoDucks if you haven't already
22:46:20 <elliott> ais523: that's very very bad
22:46:29 <ais523> elliott: it may be implementable compositionally too
22:46:37 <ais523> but really this is for ease of use rather than mathematical purity
22:46:46 <ais523> "warning: code is dead, cannot typecheck it"
22:47:41 <ais523> elliott: well it probably annoys mathematicians, and Haskell fans in particular
22:47:53 <ais523> and anyone who's listened to me talk to my boss will know how much I insist on things generally being compositional
22:47:57 -!- epicmonkey has quit (Ping timeout: 276 seconds).
22:48:02 <ais523> but it seems like a small price to pay for a language this great to use
22:48:10 <ais523> I wouldn't have invented Anarchy if I didn't really badly want to use it
22:49:12 <Arc_Koen> imagine I have a language X_n defined as { p in {brainfuck programs} such that the deepest level of loop-nesting in p is n }
22:49:26 <ais523> hmm… not counting efficiency/computational complexity, in pure total programs, call-by-name and call-by-value are observationally indistinguishable, right?
22:49:28 <Arc_Koen> so for instance X_0 is brainfuck without [ ], X_1 is brainfuck without nested loops, etc.
22:49:33 <elliott> ais523: I think that's because you only think about the Anarchy programs you want to write
22:49:37 <elliott> not the ones you'll miswrite by mistkae
22:49:56 <ais523> Arc_Koen: if the question is "what's the first that's TC", I've wondered that myself
22:50:38 <ais523> Arc_Koen: it's widely believed to be either 2 or 3
22:50:44 <ais523> but I don't think it's ever been settled conclusively
22:51:11 <Arc_Koen> ok, new question then: what about qdecl?
22:51:40 <Arc_Koen> if I limit the number of nested loops to, say, 200 or something, do you expect it would still be TC?
22:51:52 <zzo38> Perhaps does anyone know how to make a quine with FurryScript? I have not figured it out by yet.
22:52:26 -!- Phantom__Hoover has joined.
22:53:02 <ais523> Arc_Koen: well put it this way, you can write a BF self-interpreter, right?
22:53:20 <ais523> and you can bundle a self-interp with an input program, because you can do ++++>++>+++++>++>++++++> or whatever at the start of the program with no loops at all
22:53:33 <ais523> so the question boils down to "what BF self-interpreter has the least deeply nested loops?"
22:54:23 <Arc_Koen> that sounds clever but I actually have no idea what your mean
22:54:57 <kmc> xmodmap: please release the following keys within 2 seconds: Control_L (keysym 0xffe3, keycode 66)
22:55:07 <kmc> i like to read this as a threat
22:55:22 <ais523> suppose we extend BF with a command that interprets the input tape as a BF program
22:55:27 <shachaf> kmc: I hate it when that happens. :-(
22:55:39 <ais523> first, Phantom_Hoover replaces our brain with a brick
22:55:39 <shachaf> kmc: I'm too lazy to fix my things, so I run while true; do xmodmap -e 'remove Lock = Caps_Lock' -e 'keysym Caps_Lock = Escape'; disable-capslock; sleep 2; done
22:55:47 <ais523> second, we can compile any BF program into one that uses no loops
22:55:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
22:56:01 <ais523> because it doesn't require any loops to put the program on the tape
22:56:11 <ais523> and so we can just put the program on the tape, then run our new command
22:56:16 <ais523> do you understand that far?
22:56:23 <olsner> but how will you do complete the second step when your brain is a brick?
22:57:01 <ais523> Arc_Koen: now, suppose that in order to avoid inferring the wrath of Phantom__Hoover, instead of adding this new command to BF, instead we write a BF program that interprets the tape as a BF program and runs it
22:57:24 <Arc_Koen> yes, I get it, ++++>++>+++++>thing was filling the cells with a brainfuck program
22:58:18 <ais523> well, with a different instruction encoding, but there's no need to use ASCII
22:58:27 <zzo38> Do you like this psionic power for Dungeons&Dragons game???? http://zzo38computer.org/dnd/options/Kjugobe_Psionic_Hack.p
23:03:23 <ais523> Arc_Koen: anyway, I'm not sure if anyone's seriously tried to write a two-nested-loop selfinterp, or even a three-nested-loop selfinterp
23:04:20 <Arc_Koen> I was wondering because I wanted to prove Emmental TC
23:04:27 <Phantom__Hoover> ais523, i'm only a short train ride from birmingham, remember
23:04:29 <Arc_Koen> and I think I can convert Qdecl programs into Emmental
23:04:43 <Arc_Koen> except I need a distinct symbol for every nested loop
23:04:58 <Arc_Koen> and there are only 256 symbols soooooo
23:05:04 <olsner> the minimum nesting has to be finite because otherwise any TC interpreter written in BF would have to be infinite
23:05:12 <olsner> it's probably small too
23:06:19 <Arc_Koen> hmmm though I'm wondering if I only needed a distinct symbol for nested loops... for instance consider a program like BEGIN BEGIN END BEGIN END BEGIN END END
23:06:28 <Arc_Koen> (with actual code inside of all those loops)
23:06:37 -!- Jafet has quit (Quit: Leaving.).
23:07:44 <ion> http://www.comedycentral.com/video-clips/5a1dsd/key-and-peele-bling-benzy---da-struggle
23:11:13 -!- copumpkin has changed nick to brony.
23:11:16 -!- brony has changed nick to copumpkin.
23:22:07 <Gregor> copumpkin: Ahhh, other-channel-/nicking.
23:22:12 <Gregor> copumpkin: Always fun.
23:49:17 <elliott> ais523: huh, did you know that Debian changed official desktop environments?
23:49:45 <elliott> Xfce; http://anonscm.debian.org/gitweb/?p=tasksel/tasksel.git;a=commitdiff;h=2a962cc65cdba010177f27e8824ba10d9a799a08
23:50:37 <Gregor> “This ensures that the desktop will fit on CD#1, which gnome currently does not.”
23:51:08 <elliott> Gregor: suspect that's code for "I don't like GNOME 3 and thought of a decent technical excuse" :p
23:52:30 <Gregor> If it were my call, I'd have just made the commit message “Switched the default WM to XFCE, because Gnome is fucking terrible.”
23:53:02 <elliott> if only xfce was actually godo rather than just not being gnome
00:01:47 -!- nooga has quit (Ping timeout: 244 seconds).
00:32:08 -!- augur has quit (Remote host closed the connection).
00:32:57 -!- augur has joined.
00:34:00 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
00:49:28 -!- DHeadshot has joined.
01:14:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:14:51 -!- DH____ has joined.
01:22:25 <Arc_Koen> "If the queue is empty, any instruction that would normally use a value from the queue instead uses 0."
01:31:56 <Arc_Koen> after a few corrections the hello world program finally outputs "he???????e>?"
01:34:32 <Arc_Koen> and after a few more corrections "hell?η?wE?"
01:34:54 <Arc_Koen> also the number of characters is now wrong, which probably means I should go to sleep now
01:35:54 <Arc_Koen> (for the record I have no idea what the heck this η thing is doing there - my shell has never supported anything else than ascii 0-127 before
01:39:32 -!- DH____ has quit (Read error: Connection reset by peer).
01:39:37 -!- DHeadshot has joined.
01:50:05 <kmc> that's more a matter of the terminal than the shell
01:51:04 <kmc> have you actually tried non-ascii characters before?
01:51:53 -!- Jafet has joined.
01:56:10 <kmc> it's not really surprising that it would work out of the box on a modern OS
01:56:26 <kmc> amazingly, some people speak languages other than english, and want to use computers
01:56:39 <kmc> i know, right?
01:56:51 <elliott> kmc: Some people just speak English.
01:57:05 <elliott> kmc: it didn't suddenly lose accents and so on just because ASCII defined an arbitrary subset in the 60s
01:57:16 <elliott> not to mention punctuation
01:57:43 <kmc> i don't understand what point you are making
01:59:13 <elliott> That you could be more confusing about your sarcasm!
01:59:20 <elliott> (I wasn't disagreeing at all.)
01:59:34 <elliott> (Just saying that you don't need to go to foreign languages to see ASCII's inadequacy.)
01:59:57 <kmc> english does have some diacritic marks, yes
02:00:10 <kmc> and confounding hyphen with minus with en dash with em dash is annoying
02:00:29 <elliott> Quotes, too, though nobody cares about that any more.
02:00:41 <kmc> wikipedia doesn't use fancy quotes?
02:00:46 <kmc> i know someone who uses them in IM
02:00:49 <elliott> Specifically recommended against in their MOS.
02:00:59 <elliott> yes, random nerds who do it to be pedantic don't count :p
02:00:59 <kmc> on what grounds
02:01:18 <elliott> kmc: far simpler to input, basically universal, work just fine
02:01:18 -!- Jafet has quit (Ping timeout: 255 seconds).
02:01:26 <elliott> and I think causing fewer display issues with crappy fonts etc.
02:01:44 <elliott> it's not a bad justification as far as input goes... random editors would hardly bother with that
02:01:45 <kmc> i use fancy quotes in latex and pretty much nowhere else
02:01:56 <elliott> anyway I am going to sleep now
02:02:13 <kmc> high-class online publications still use them
02:02:28 <kmc> newspapers etc
02:03:38 <kmc> but then again The New Yorker still writes coöperate and such
02:03:43 <kmc> The Sha Chafer
02:05:44 <kmc> but hungarian is cooler: it has o, ó, ö, and ő
02:06:13 -!- elliott has quit (Ping timeout: 246 seconds).
02:08:41 <Arc_Koen> and german uses some weird fancy-but-reversed quotes
02:09:04 <Arc_Koen> like they confused the beginquote and endquote
02:12:32 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:19:31 -!- TodPunk has quit (Read error: Connection reset by peer).
02:19:45 -!- TodPunk has joined.
02:26:41 -!- Jafet has joined.
02:27:45 <kmc> hey hey smoke weed everyday
02:27:57 <copumpkin> is that what you do these days, kmc?
02:28:25 <kmc> smoke weed a measure zero subset of days
02:28:34 <kmc> i mostly do boring things like work and eat pasta
02:28:41 <kmc> i am growing mushrooms in my house, but the non-psychoactive kind
02:28:58 <kmc> though the spores came from a sketchy website that included a baggie of opium poppy seeds as a "free gift"
02:29:43 <zzo38> Do you like music "Funiculi Funicula"?
02:31:25 <copumpkin> wouldn't say I particularly like it though
02:32:05 <copumpkin> where all techies get their drugs these days
02:32:07 <zzo38> (In case you forgot, I mean the music only; disregard the words)
02:32:45 <kmc> are you still mining bitcoins copumpkin?
02:33:24 <copumpkin> nah, stopped mining pretty quickly
02:33:31 <copumpkin> I still deal in them a fair amount though
02:34:56 -!- amca has joined.
02:43:02 <zzo38> I had idea of pieces in chess variant, such as the "opposer", which after moved, you can change any of adjacent pieces to opponent's pieces.
02:44:57 <zzo38> I use fancy quotes mostly with TeX only writing ``...'' it prints using starting/ending quotation mark
03:08:21 -!- ais523 has quit.
03:19:53 -!- ais523 has joined.
04:47:16 -!- zzo38 has quit (Remote host closed the connection).
05:15:40 -!- FreeFull has quit.
05:25:02 -!- ais523 has quit.
05:31:17 -!- ais523 has joined.
05:33:23 <ais523> oh wow, anagolf has malbolge now
05:44:29 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:44:49 -!- DHeadshot has joined.
06:07:33 <ais523> coppro: golf.shinh.org
06:07:59 <ais523> the site's way more complex and better-run than it looks from the appearance
06:08:10 <ais523> basically, shinh is a really good programmer but not so great at graphics design skills
06:10:15 -!- ais523 has quit.
06:16:26 <fizzie> But I thought those skills *always* go hand-in-hand.
06:40:55 -!- copumpkin has quit (Ping timeout: 260 seconds).
06:42:47 -!- copumpkin has joined.
07:06:43 -!- DHeadshot has quit (Ping timeout: 246 seconds).
07:11:34 -!- epicmonkey has joined.
07:35:31 <mroman> But currently it's broken I think. (It worked earlier)
07:36:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:38:39 <mroman> It seems to work again.
08:20:12 -!- atriq has joined.
08:21:42 <atriq> Well, I've started using emacs
08:21:49 <atriq> It's going better than I expected
08:27:31 <fizzie> What did you use before you started using emacs?
08:27:34 -!- fungot has quit (Ping timeout: 246 seconds).
08:31:42 -!- nooga has joined.
08:39:48 -!- epicmonkey has joined.
08:46:20 -!- Zerker has joined.
09:28:20 -!- Zerker has quit (Remote host closed the connection).
09:39:42 -!- mindlessDrone has joined.
09:45:43 <atriq> `welcome mindlessDrone
09:45:54 <HackEgo> mindlessDrone: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
09:46:36 <atriq> mindlessDrone, two questions
09:46:42 <atriq> First, are you in Finland?
09:47:20 <fizzie> atriq: I think we already did the welcome bit.
09:47:32 <atriq> fizzie, are you in Finland?
09:47:33 <fizzie> Maybe also the Hexland/Finham bit, I'm not sure.
09:47:44 <atriq> Are you in Hexham?
09:48:21 <mindlessDrone> ya you did the welcome thing ..im neither in finland nor in hexham
09:49:36 <atriq> Are you in Metzingen?
09:50:33 <atriq> Baden-Wrttemberg, apparently
09:50:36 <atriq> It's twinned with Hexham
09:52:16 <atriq> I don't think anyone here lives in Metzingen
09:52:31 <atriq> Even though it's statistically more likely than living in Hexham
09:53:32 <fizzie> Espoo is apparently twinned with Esztergom, Gatchina, Irving, Køge, Mumbai, Kongsberg, Kristianstad, Nõmme, Sauðárkrókur, Shanghai and Sochi.
09:53:39 <fizzie> I don't know if that actually means anything.
09:54:00 <fizzie> (But Sauðárkrókur is a fancy name.)
09:54:00 <atriq> Basically, they get to put on their signs "Twinned with Espoo!"
09:54:32 <fizzie> "Sauðárkrókur is a town in Skagafjörður."
09:55:40 <atriq> I was just reading it phonetically
09:56:15 <atriq> Although if I was translating the name I would call it Sodamouth
09:57:01 <atriq> Sometimes I can't follow me
09:59:23 <fizzie> atriq: "Directly translated to English the name would be 'Sheep-river-hook'."
09:59:47 <atriq> Yeah, but that's ridiculous
10:00:12 <fizzie> I don't know, krókur sounds very hooky to me.
10:00:35 <atriq> Sheepcrook, maybe?
10:18:27 -!- Arc_Koen has joined.
10:21:15 -!- monqy has quit (Quit: hello).
10:22:06 <Arc_Koen> well I had a driving lesson and for some reason I set my alarm clock but forgot to turn it on
10:22:19 <Arc_Koen> so I was waken up by someone ringing at the door
10:22:30 <Arc_Koen> and yesterday I went to bed at 4am
10:22:54 <Arc_Koen> the driving lesson was... different from usual
10:24:34 <Arc_Koen> at some point I stopped at a light
10:24:45 <ion> Cool. They have taken 11-word sequences from Wikipedia, taught an appropriate neural network using them and used the t-SNE algorithm to make a map of the most common words that tries to group words with similar feature vectors together. http://www.cs.toronto.edu/~hinton/turian.png
10:25:02 <Arc_Koen> after one minute he asked me why I was stopping... the light was GREEN
10:26:45 <ion> The neural net’s output in this case.
10:26:55 <Arc_Koen> is it like grouping chemical elements according to the molecules they can form?
10:27:38 <ion> If you can make a neural network figure that out by itself, then i guess so.
10:51:04 -!- mindlessDrone has left.
10:52:05 -!- mindlessDrone has joined.
10:55:59 <fizzie> Kinda reminds me of the good old WEBSOM.
10:57:34 <fizzie> Dimensionality reduction is a funny topic.
10:57:59 <fizzie> There were people fiddling with NeRV around here, I think.
10:58:21 <fizzie> http://research.ics.aalto.fi/mi/software/dredviz/ these guys.
10:58:43 <fizzie> I even wanted to NeRV something up, but by now I've completely forgotten what it was.
11:36:08 -!- mindlessDrone has left.
11:43:04 -!- nooga has quit (K-Lined).
11:54:17 -!- amca has quit (Quit: Farewell).
12:41:27 -!- ogrom has joined.
12:45:56 -!- Jafet has quit (Ping timeout: 255 seconds).
12:46:33 -!- Jafet has joined.
13:21:34 -!- elliott has joined.
13:22:46 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:30:13 <elliott> Sgeo: why do you keep objecting to your deregistration and then not doing anything
13:30:13 <lambdabot> elliott: You have 2 new messages. '/msg lambdabot @messages' to read them.
13:30:20 <elliott> I guess that contract thing but you did it before then too
13:31:26 -!- Taneb has joined.
13:32:13 -!- atriq has quit (Disconnected by services).
13:32:16 -!- Taneb has changed nick to atriq.
13:41:18 -!- elliott has quit (Remote host closed the connection).
13:42:10 -!- copumpkin has joined.
13:42:23 -!- copumpkin has quit (Client Quit).
13:43:37 -!- elliott has joined.
13:45:52 -!- copumpkin has joined.
13:46:25 -!- pumpkin has joined.
13:47:16 -!- copumpkin has quit (Disconnected by services).
13:47:17 -!- pumpkin has changed nick to copumpkin.
14:24:41 -!- boily has joined.
14:53:06 -!- AnotherTest has joined.
15:09:03 -!- epicmonkey has quit (Ping timeout: 244 seconds).
15:44:33 <Sgeo> Is codeeval.com a good way to look for a job?
15:46:16 <mroman> Browsing through Burlesque's Language Reference seems to take longer and longer :D
15:46:31 <mroman> Which means I'm on the right path :P
15:51:17 <Sgeo> Meh. I'm going to do it
15:51:22 <Sgeo> And have a honking good time
15:51:29 <Sgeo> ...that last line was weird
15:53:22 -!- mindlessDrone has joined.
15:55:17 <boily> Sgeo: the only proper way to honk is in by being zen doing python.
15:57:12 <mroman> AnotherTest: It has more features than I can remember having implemented ;)
15:57:54 <AnotherTest> mroman: remember not to forget referring to microsoft, as this was their amazing idea
15:58:01 <mroman> That's why it has a documentation.
15:58:33 <mroman> I'm going to assume that in every not small software project you have implemented more stuff than you could possibly remember without the documentation.
15:59:04 -!- Vorpal has joined.
15:59:41 <mroman> at least I don't know every sideeffect of any command in Burlesque
16:00:01 <mroman> So when I golf in it on anagol I have to consult the documentation often :)
16:00:44 <mroman> Of course, the documentation can't tell you which sideeffect you need
16:00:57 <AnotherTest> Do you already have support for complex numbers?
16:01:02 <mroman> so you just randomly read something and judge if it is useful
16:01:21 <mroman> but you are welcome to implement it ;)
16:02:01 <mroman> I'm no haskell pro either.
16:02:32 <mroman> I know the things one needs to know to get most things done in it.
16:02:37 <AnotherTest> Well, I have never written anything big in haskell. And I didn't learn how to use important features of the language such as types yet.
16:03:44 <mroman> It's surprisingly easy at the lower levels
16:03:56 <mroman> and surprisingly freaking complicated at the higher levels ;)
16:04:34 <mroman> Especially since haskell is nowhere near my field of study.
16:05:15 -!- boily has quit (Read error: Operation timed out).
16:05:48 <mroman> My field of study is... well...
16:06:57 <mroman> It's a mix of finance, physics, communication technology, mathematics, economy, law
16:07:41 <mroman> it's called information technology ;)
16:07:41 <atriq> The legal implications of communication technology in an ideal economic system
16:08:00 <mroman> I'm not privileged enough to study at a university
16:08:23 <AnotherTest> I'm not even old enough to study at a university!
16:08:44 <mroman> which means I don't have the right credentials to study at a university
16:08:49 <mroman> because I learned a job ;)
16:08:58 <AnotherTest> Well, maybe I were if I was invited or something - which will most likely not happen :(
16:09:12 <AnotherTest> I wrote a paper... maybe if they see that?
16:10:39 -!- augur has quit (Remote host closed the connection).
16:10:55 <AnotherTest> mroman: Can't everyone go to university if they want to?
16:12:38 -!- FreeFull has joined.
16:21:42 -!- boily has joined.
16:30:46 <Sgeo> Apparently Pythonistas hate reduce()
16:32:02 <Slereah_> C people do not like me either because sometimes I use goto
16:32:53 <elliott> python 3 lacks reduce iirc
16:34:46 <FreeFull> Slereah_: Sometimes goto is the cleanest way to do something
16:34:55 <FreeFull> That's why the linux kernel has goto in places
16:36:09 <Sgeo> This codeeval challenge says this company prefers solutions in Python
16:36:22 <Sgeo> But this makes me want to do it in Clojure
16:36:50 <FreeFull> Then they won't know what the hell
16:37:09 <Sgeo> I don't think codeeval even accepts Haskell
16:37:22 <Sgeo> I think this was weighing on my mind a bit when I started liking Clojure over Haskell
16:37:40 <elliott> good criteria to like a language by
16:46:56 <mroman> AnotherTest: No, you can't.
16:47:06 <mroman> Universities obviously don't accept everybody.
16:47:24 <mroman> So there is a very complex bureaucratic system which describes who they accpet.
16:47:50 <mroman> Obviously in the form of restrictions.
16:48:00 <mroman> There restrictions are different from where you come.
16:48:30 <mroman> If I were to take the entry exam they would require me to have knowledge in chemistry
16:48:41 <mroman> even if I'm going to study something which has nothing to do with chemistry.
16:48:47 <mroman> (obviously this is bullshit)
16:49:05 <mroman> however, if I waste three years at some other school (which does not have chemistry) I get a free pass
16:49:23 <mroman> so If I come from a different school they suddenly don't require me to have chemistry knowledge.
16:50:42 <mroman> also the way we study is completely flawed too.
16:51:07 -!- augur has joined.
16:51:20 <mroman> It's actually the university who tells you what you have to study
16:51:43 <mroman> Of course they hide that fact well behind bureaucracy.
16:52:07 <mroman> also students have a different set of pre-knowledge
16:52:36 <mroman> some study-courses require specific pre-knowledge while others don't.
16:53:01 <mroman> To study computer science at a university of applied sciences (so not a real university) you are not required to know ANYTHING.
16:53:16 <mroman> so obviously the first course in your studies is "how does a fucking browser work"
16:53:32 <mroman> which is completely bullshit for people who already know much.
16:53:49 <mroman> right now I'm in the third semester and we're being teached assembler.
16:54:03 <mroman> Obviously I already know how to do that.
16:54:33 <mroman> But I can't just say "I'm not going to learn anything for the exam"
16:54:44 <mroman> because they don't test if you know how to do stuff in assembler
16:54:55 <mroman> they test if you know how to do it in their specific setting
16:55:19 <mroman> so they use a custom assembler with a different syntax
16:55:52 <mroman> which means you have to learn the differences in the syntax from the assembler you know and the one they customly manipulated.
16:56:20 <mroman> also you have to write programs for a specific processor which means you have to study that processor.
16:57:00 <mroman> Not that it's hard to do that, but it costs time of course you could be spending learning completely new interesting things.
16:58:16 <mroman> Next semester we are going to have "operating systems"
16:58:19 -!- augur has quit (Remote host closed the connection).
16:58:33 <mroman> sounds interesting but it's at such a low level it's completely bullshit
16:58:54 <mroman> Oh. You don't say? There's multitasking? NO WAY! <- like that
17:00:58 <AnotherTest> mroman: there is no entry exam for computer science where I live
17:01:23 <AnotherTest> and I'm pretty sure that if you know the required basis of maths, that it's feasible to succeed
17:01:42 <mroman> In Switzerland you have to come from specific schools to be accepted or pass a standardised general entry exam
17:01:56 <mroman> (which tests also knowledge you will never use during your study)
17:02:20 -!- augur has joined.
17:02:40 <mroman> "So, you are good at math and wan't to study math? Let me just check how good you are in geographie, chemistry and french"
17:02:49 <mroman> (yes, in switzerland they test french)
17:02:56 <mroman> if you don't know french, you can't study anything.
17:03:09 <mroman> even if you don't actually need french for your field of study
17:03:20 <mroman> but that's how the system runs.
17:03:51 <mroman> and nobody needs french for their field of study unless they are studying languages or french itself.
17:04:41 <mroman> I spent 8 years of learning french just to be able to be at the point of study I currently am.
17:05:40 <mroman> Of course, I never had to actually use it so I actually I don't know any french any more ;)
17:05:42 <fizzie> There's a mandatory Swedish exam in Finland that's required to get a master's degree out of the "technical university" schools.
17:05:56 <mroman> And that just pisses me off.
17:06:12 <mroman> It's a waste of thousands of hours for nothing.
17:06:32 <kmc> fizzie: http://en.wikipedia.org/w/index.php?title=File:Pois_pakkoruotsi.svg
17:07:00 <mroman> I mean, yes you can argue that "having once learnd a foreign language is good if you want to learn some other language later in your life
17:07:10 <mroman> but that's so far fetched
17:07:30 <AnotherTest> Well we learn french and english at school here as a second language
17:08:10 <mroman> The only important foreign language today is english.
17:08:19 <mroman> And actually schools teach english at third grade
17:08:27 <mroman> which is ~at an age of 9.
17:09:18 <mroman> and you are literally going to have a hard time finding an adult who still knows french
17:09:23 <mroman> even if he had to learn it for 8 years.
17:09:52 <AnotherTest> well, we have to learn French and Dutch (since these are the most used languages here). I though French is one of the languages in Swiss?
17:09:57 <mroman> because there is just no use for french.
17:10:05 <fizzie> We learn Swedish in primary/secondary education schools (grades 1-12 counting numerically), and there's a lot of debate whether that's useful or not, but at least those are sort of more or less generic schooling; having to pass a Swedish exam as part of the tertiary education is IMO kinda stupef.
17:10:06 <mroman> AnotherTest: So are two other languages ;)
17:10:31 <fizzie> I was under the impression the language areas are rather strictly geographically split in Switzerland.
17:10:38 <mroman> There are 4 official languages in switzerland
17:10:48 <mroman> and more non official languages of course.
17:11:13 <Arc_Koen> AnotherTest: isn't the "call" in "stmnt := literal stmnt | call stmnt | ε" a little redundant?
17:11:28 <Arc_Koen> since then you define "literal := int | real | string | char | call"
17:11:32 <fizzie> At least everything went from French to German when we took a train from Geneve to Bern.
17:11:55 <mroman> On they way from Geneve to Bern you are crossing one of the language borders.
17:12:54 <mroman> Which means there are 3 parts of switzerland where I can't understand my fellow countrymen :)
17:13:06 <fizzie> Incidentally, we'll be passing through Switzerland (Geneva-Visp-St. Moritz-Tirano-Lugano-Milan; okay, so there are some dips into Italy) next summer.
17:13:15 <mroman> If I still knew french then it would only be two parts
17:13:22 <Arc_Koen> mroman: isn't it mandatory when you leave in a multiple-languages country to learn all of those languages?
17:13:36 <AnotherTest> Arc_Koen: You can remove the call stmnt production indeed
17:14:05 <mroman> That would require you to know 4 languages
17:14:10 <fizzie> Depends on the country in question.
17:14:20 <fizzie> Swedish is mandatory here, but then again we only have two.
17:14:34 <Arc_Koen> mroman: note that by "mandatory" I'm not talking about law or anything
17:15:00 <mroman> Learning 4 languages is hard
17:15:34 <mroman> So it's not really practically possible to understand everybody
17:15:36 <AnotherTest> Unless of course they happen to be programming languages :p
17:15:51 <Arc_Koen> well, one of them is already your mothertongue
17:16:12 <Arc_Koen> also you might want to include english as well
17:16:13 <mroman> Arc_Koen: We don't actually speak german here ;)
17:16:45 <fizzie> I think 4 is probably the most common number of languages "learned" (as in, at least a couple of years of it in school) in Finland; Finnish, Swedish and English to (practically) everyone, and then one other that's most commonly French or German.
17:17:04 <mroman> it's 3 completely foreign languages one would have to learn here.
17:17:12 <mroman> and one somewhat foreign language.
17:17:55 <Arc_Koen> can't you deduce roman from french and italian?
17:18:03 <mroman> and you have to learn different dialects
17:18:16 <mroman> Probably the same way you can deduce english from other languages
17:18:36 -!- nvt has quit (Ping timeout: 246 seconds).
17:18:55 <Arc_Koen> hmm the opposite would feel more natural for me
17:18:55 <mroman> it's helps you a little but it's still going to be hard.
17:19:43 <mroman> We deduce german from swiss german ;)
17:19:45 -!- ogrom has quit (Quit: Left).
17:19:50 <mroman> Which doesn't work all the time
17:20:05 <mroman> because the grammar and vocabulary is not exactly the same.
17:20:08 <AnotherTest> Arc_Koen: I have corrected the redundant production
17:20:43 <Arc_Koen> so basically stmnt is a string of literals
17:21:15 <mroman> Does anybode of you know somebody who works for youtube?
17:21:29 <mroman> If so, kick his ass ;)
17:21:31 <AnotherTest> Technically "call" isn't an actual literal but OK
17:21:46 <AnotherTest> and call is indeed a list of ids, separated by dots
17:22:05 <mroman> Everytime I jump back in time it reloads the whole video.
17:22:13 <mroman> which means I have to download it yet again
17:22:48 <mroman> and with my poor bandwidth this really sucks like hell
17:23:05 <mroman> Arc_Koen: Wait for it to buffer for 2 minutes
17:23:10 <mroman> then watch the first two minutes
17:23:24 <mroman> then in the timebar let's say you wan't to rewatch minute 01:00 - 02:00
17:23:38 <mroman> assuming that's it's going to play that from what you already downloaded
17:23:44 <mroman> it's going to restart the download
17:28:24 <mroman> now I don't have a linux ghc build environment anymore :(
17:33:18 <fizzie> You should just youtube-dl anything you're going to watch.
17:34:23 <kmc> my youtube-dl stopped working :/
17:36:27 -!- nvt has joined.
17:37:00 -!- atriq has quit (Quit: dinner).
17:40:14 <fizzie> One has to keep updating it every now and then. (Disclaimer: haven't youtube-dl'd anything in a while.)
17:48:28 <mroman> AnotherTest: How are things going with HELP?
17:48:35 <mroman> Does it have an include yet?
17:48:59 <AnotherTest> I seem to have lost interest in help a bit
17:49:15 <mroman> That's one of the most interesting features about a pre-processor I think.
17:49:20 <AnotherTest> But I have not a lot of time to work on esoteric things
17:50:02 <AnotherTest> If I have free time, I usually work on this networking applications I'm creating
17:50:28 <mroman> I'm planning to write something bigger in Burlesque
17:50:39 <mroman> and an include would have been nice :)
17:50:46 <mroman> I just use my own preprocessor
17:53:40 <mroman> It doesn't have really a lot of features, but it has include, ifdef, ifndef and define
17:53:52 <mroman> and was written while I was learning haskell.
17:55:21 <mroman> peer pressure has won.
17:55:27 <mroman> kmc: I rather shoot myself.
17:55:34 <kmc> i can't tell if m4 sucks or if it's just associated with things people hate (sendmail, autoconf)
17:55:37 <kmc> I think the answer is "both"
17:55:48 <AnotherTest> mroman: I just finished a part of the other thing
17:56:00 <olsner> kmc: I'd also guess "both"
17:56:12 <kmc> but my opinion of autoconf actually improved as a result of using it in earnest
17:56:16 <kmc> so i'm probably some kind of freak
17:56:25 <mroman> You are writing a paper about it?
17:56:33 <AnotherTest> The IEEE guy said it was good but I needed to give more quantitative stuff
17:56:46 <AnotherTest> mroman: about the networking thing, not about HELP (of course)
17:57:04 <shachaf> kmc: You missed edwardk's lens talk in SF!
17:57:49 <olsner> I wonder what m4 was supposed to be used for ... when do you want a macro language?
17:59:00 <AnotherTest> The paper might actually have been published directly if I had won a noble price I think
17:59:37 <boily> olsner: your hardware is just not powerful enough to do anything more demanding than macro substitution?
17:59:52 <fizzie> olsner: "Its primary use has been as a front end for Ratfor for those cases where parameterless macros are not adequately powerful."
18:00:26 <mroman> kmc: I actually can literally shoot myself with M4.
18:01:12 <fizzie> olsner: (Second sentence of the abstract of Brian W. Kernighan and Dennis M. Ritchie. The M4 macro processor. Technical report, Bell Laboratories, Murray Hill, New Jersey, USA, 1977.)
18:01:36 <kmc> "1972 - Dennis Ritchie invents a powerful gun that shoots both forward and backward simultaneously. Not satisfied with the number of deaths and permanent maimings from that invention he invents C and Unix."
18:01:48 <fizzie> "It has also been used for languages as disparate as C and Cobol -- is particularly suited for functional languages like Fortran, PL/I and C --"
18:02:14 <fizzie> Ah yes, the well-known functional languages Fortran, PL/I and C.
18:02:47 <fizzie> It continues "-- since macros are specified in a functional notation."
18:02:48 <kmc> they have functions!
18:03:00 <fizzie> It's a kind of different "functional language" there.
18:03:16 <fizzie> Either Ritchie or Kernighan. It doesn't exactly say which one.
18:03:27 <mroman> and lips looks functional.
18:03:43 <fizzie> It didn't say anything about how "functional" M4 is, though.
18:04:53 <fizzie> Ratfor seems to have been the primary use case, though.
18:06:36 <fizzie> There was a point of time where C's preprocessor didn't have macros with arguments either.
18:07:14 -!- atriq has joined.
18:07:28 <fizzie> ("Many other changes occurred around 1972-3, but the most important was the introduction of the preprocessor -- Its original version was exceedingly simple, and provided only included files and simple string replacements: #include and #define of parameterless macros. Soon thereafter, it was extended, mostly by Mike Lesk and then by John Reiser, to incorporate macros with arguments and ...
18:07:35 <fizzie> ... conditional compilation." (Dennis M. Ritchie. 1993. The development of the C language. SIGPLAN Not. 28, 3 (March 1993), 201-208. DOI=10.1145/155360.155580 http://doi.acm.org/10.1145/155360.155580)
18:07:47 <AnotherTest> mroman: just a warning, HELP is actually much worse :p
18:08:15 <mroman> I don't have a cpp build environment anyway
18:46:30 -!- elliott has quit (Read error: Connection reset by peer).
18:47:09 -!- elliott has joined.
18:47:10 -!- elliott has quit (Changing host).
18:47:10 -!- elliott has joined.
18:54:37 <FreeFull> fizzie: It's hard to do good macros with any language that actually has syntax =P
19:12:44 -!- AnotherTest has quit (Quit: Leaving.).
19:16:02 -!- ais523 has joined.
19:29:04 <ion> Some Finns received empty MMS messages timestamped at 1970 after a telecom operator did a software update. A newspaper interviewed the company’s Chief [roughly “mobile plan business”] Officer about it. He said “the testing of the messaging technology started already in the 1970s. Messages may have been left to the phone network back then.”
19:29:06 <ion> http://www.hs.fi/kotimaa/Aamulehti+Saunalahden+asiakkaat+saivat+viestej%C3%A4+70-luvulta+j%C3%A4rjestelm%C3%A4virheen+takia/a1305608399534
19:30:53 * kmc wonders whether to take FreeFull's bait
19:31:32 <kmc> you know, C has no syntax, a program is just a sequence of characters
19:31:35 <kmc> that is the only syntactic form
19:31:49 <kmc> what those characters *mean* when juxtaposed is of course a semantic question
19:32:16 <olsner> ion: good thing they upgraded their system to get rid of all those unsent messages then
19:32:32 <FreeFull> kmc: Then nothing has any syntax?
19:32:58 <kmc> apparently the reason the TTL field was added to IP is that in older internetworks, as time approached infinity, traffic consisted entirely of packets caught in routing loops
19:33:43 <kmc> FreeFull: it's reducto ad absurdum from the ridiculous "Lisp has no syntax" claim
19:33:43 <elliott> <ion> Some Finns received empty MMS messages timestamped at 1970 after a telecom operator did a software update. A newspaper interviewed the company’s Chief [roughly “mobile plan business”] Officer about it. He said “the testing of the messaging technology started already in the 1970s. Messages may have been left to the phone network back then.”
19:33:59 <kmc> <elliott> <ion> Some Finns received empty MMS messages timestamped at 1970 after a telecom operator did a software update. A newspaper interviewed the company’s Chief [roughly “mobile plan business”] Officer about it. He said “the testing of the messaging technology started already in the 1970s. Messages may have been left to the phone network back then.”
19:34:03 <elliott> <kmc> <elliott> <ion> Some Finns received empty MMS messages timestamped at 1970 after a telecom operator did a software update. A newspaper interviewed the company’s Chief [roughly “mobile plan business”] Officer about it. He said “the testing of the messaging technology started already in the 1970s. Messages may have been left to the phone network back then.”
19:34:25 <kmc> TTL=255 <elliott> <kmc> <elliott> <ion> Some Finns received empty MMS messages timestamped at 1970 after a telecom operator did a software update. A newspaper interviewed the company’s Chief [roughly “mobile plan business”] Officer about it. He said “the testing of the messaging technology started already in the 1970s. Messages may have been left to the phone network back then.”
19:36:04 <FreeFull> kmc: Lisp does have syntax though =P
19:36:19 <olsner> TTL=254 <kmc> <elliott> <kmc> <elliott> <ion> etc
19:36:21 <FreeFull> Not as much as many other languages, but it does
19:37:01 -!- standa_ has joined.
19:37:07 -!- standa_ has quit (Client Quit).
19:37:11 <kmc> yeah that's my point
19:37:48 <kmc> and my other point is that things like (let (x 2 y 3) ...) vs (let ((x 2) (y 3)) ...) are basically syntactic questions
19:37:57 <kmc> or at least, it is not unreasonable to call them syntactic questions
19:38:15 <kmc> ultimately words are arbitrary and the participants in a discussion should just agree on what they mean
19:38:36 <kmc> then i'm not sure if Kernel has syntax besides s-expressions :)
19:38:54 <kmc> (or besides s-expressions plus a trivial rule for the syntactic form of a combination)
19:39:08 -!- zzo38 has joined.
19:40:27 <kmc> o'shachaml
19:46:15 <ion> !rot13 ocaml
20:01:17 <Sgeo> In a dynamically-typed language, if I'm getting wrong but sensible looking results, is it at all plausible that it's a type error, or is logic error far more likely?
20:01:23 <Sgeo> Such as, getting 4 instead of 5
20:01:47 <Sgeo> Because the Python program I wrote is giving wrong answers, but I feel like if I screwed up at all, it's type-related
20:10:52 <Arc_Koen> I think one problem with Emmental is that its instruction-rewriting system cannot be rewrited
20:12:09 <Arc_Koen> well, you can overwrite it with something else to stop being able to rewrite, but you can't write a different system since the instructions you create can only be sequences of instructions that already exist
20:13:11 -!- epicmonkey has joined.
20:14:01 <zzo38> Then do you have to make up a new one which includes the instruction to rewrite the instruction-rewriting system?
20:14:27 <Arc_Koen> well yes, you can do that, but it won't introduce anything new
20:18:31 -!- ais523_ has joined.
20:19:08 <zzo38> That is what I thought
20:19:55 -!- ais523 has quit (Ping timeout: 260 seconds).
20:20:18 -!- ais523_ has changed nick to ais523.
20:22:46 <Sgeo> A bit of printing helps me find my error
20:22:51 <Sgeo> \n was getting into some of the strings
20:24:12 <Sgeo> Ok, so I'm still getting wrong results
20:30:11 <Sgeo> I'm actually getting _more_ wrong results
20:32:18 <olsner> hmm, I guess you've made the code more wrong then?
20:33:19 <Sgeo> Not necessarily.
20:38:51 <Arc_Koen> you probably corrected a mistake that was cancelling out another
20:40:40 <olsner> if two bugs are cancelling each other out that's less wrong than having either of those on its own uncancelled by the other
20:41:04 <Sgeo> olsner, not if they only happen to be cancelling each other out in one test case
20:51:29 <mroman> If two bugs are cancelling each other out is that even a bug?
20:54:06 <mroman> Maybe one can consider it a skill introducing two bugs which are cancelling each other out on purpose.
20:54:13 <olsner> no, it's not a bug - it's two!
20:54:25 <mroman> If there is no problem, is there a bug?
20:55:26 <mroman> Technically such a bug is not observable until you actually introduce a bug by removing the cancellation?
20:56:50 <olsner> there may be other ways to trigger either bug - let's say in 90% of cases both trigger and you're fine
20:57:13 <olsner> but some cases might only trigger one of the bugs, requiring it to be fixed
20:59:42 <atriq> If there are two bugs that cancel eachother out all the time, you've discovered a new algorithm
21:01:12 <mroman> I just wanted to troll about the definition of it being a bug if there is no observable problem ;)
21:01:37 <olsner> yeha, how can the code be wrong if it works?
21:02:11 <olsner> (was supposed to be "yeah", but I guess you can read it yeeehaw if you like)
21:02:15 <mroman> Technically if it works it can't be wrong :)
21:02:23 <Sgeo> I'm beginning to hate Python
21:02:29 <mroman> (If it really works in 100% of the time)
21:02:44 <mroman> If anything it's bad ugly messy code.
21:04:42 <fizzie> !c int a, b; a, b = 4, 5; /* look, ma, Python-style unpacking assignment */ printf("a = %d, b = %d", a, b); /* whoops */
21:05:00 <fizzie> I'd like to know how many Python programmers have tried that.
21:05:15 <mroman> I wish haskell had forward declarations
21:05:24 <Sgeo> It doesn't need it
21:05:48 <kmc> i,i .hs-boot
21:06:22 <mroman> It's one of these cases where A needs B and B needs A
21:06:36 <mroman> which in C(++) you can resolve with forward declaration
21:06:47 <mroman> the guys in #haskell told me
21:06:54 <mroman> "just merge the shit into a single file"
21:07:20 <fizzie> !c int a, b; a, b = (4, 5); /* maybe it works if I make it more like a tuple */ printf("a = %d, b = %d", a, b); /* whoops again */
21:07:20 <mroman> now it's a huge file with a lot of stuff in it :)
21:07:39 <mroman> https://github.com/FMNSSun/Burlesque/blob/master/Burlesque/Eval.hs
21:07:46 <mroman> ^- see. I would like to categorize builtins
21:07:55 <mroman> so I can put them into files by category
21:08:05 <mroman> but some builtins require functions from other categories
21:08:18 <mroman> which yields to this circular dependency (or whatever you guys call that)
21:08:49 <mroman> and apparently according to #haskell there is no way to do it without merging all into a single file :(
21:09:21 -!- atriq has quit (Quit: Leaving).
21:09:23 <mroman> also the case matching is kinda messy
21:09:30 <mroman> but I guess there is no better way to do it.
21:09:46 <mroman> and haskell tidy removes comments
21:09:54 <mroman> (which totally sucks btw.)
21:10:02 <Sgeo> Oh, I didn't notice that this thing counts y as a vowel
21:10:13 <mroman> it cleans up your indentation and stuff, but it throws away all the comments.
21:10:30 -!- Phantom_Hoover has joined.
21:10:40 <mroman> (Not that there actually are lots of comments in the code :) )
21:15:53 -!- mindlessDrone has left.
21:16:05 <mroman> It's funny how little the actual eval function is :)
21:16:54 <mroman> And I should probably switch to a Map of some sort instead of the linear tupel lookup
21:17:52 <FreeFull> I wonder what the smallest lisp written in haskell is
21:19:17 <Sgeo> Two test-cases working
21:19:21 <mroman> http://sources.defmacro.org/blaise/src/
21:19:25 <mroman> ^- probably not the smallest
21:21:55 <mroman> Let's write the smallest lisp interpreter in haskell then shall we
21:22:46 <mroman> One could actually do some regex hacks
21:22:54 -!- epicmonkey has quit (Ping timeout: 264 seconds).
21:22:57 <mroman> (:+ (:- 3 2) (:- 2 2))
21:23:15 <mroman> then one declares a data with a Data Constructor :+ and :-
21:23:33 <mroman> and just let deriving Read do the work
21:24:26 <mroman> (writing parsers is for fools if you can just let ghc generate one for you :D)
21:28:46 <mroman> that only works for infix
21:32:24 <FreeFull> You could use a regex hack to replace * - + with (*) (-) (+)
21:32:36 <FreeFull> Except you'll have to special-case negative numbers =
21:38:44 <mroman> http://codepad.org/EhQMqj7Z
21:38:50 <mroman> not quite how I imagined
21:39:06 <mroman> but it works so it can't be wrong :P
21:39:43 <mroman> also since this is PythonLisp whitespaces matters :D
21:39:56 <mroman> if you don't put enough whitespaces in there it's gonna crash.
21:40:33 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
21:45:12 -!- boily has quit (Quit: Poulet!).
21:49:01 <mroman> http://codepad.org/F3WR4M98
21:49:57 <mroman> not really lisp of course
21:50:12 <mroman> You'd have to treat defun and stuff.
21:51:01 <mroman> At least writing a simple lisp interpreter is actually very easy.
22:00:56 <kmc> where by "lisp" we mean "a vaguely lisp-like language intended to be easy to implement"
22:01:07 <kmc> actually implementing Common Lisp, Scheme, or Clojure is not easy :)
22:02:23 <kmc> (R5RS Scheme is not horrifically hard, either, but I wouldn't call it easy)
22:02:47 <FreeFull> Scheme and Clojure are closer to the "Lisp-spirit"
22:03:17 <kmc> i wonder what's the hardest part of R5RS to implement
22:03:20 <kmc> maybe dynamic-wind
22:04:02 <kmc> though maybe that's secretly easy in a CPS transform or something
22:04:04 <kmc> i haven't thought about it
22:06:56 <olsner> uh oh, the first hit for r5rs dynamic-wind is an oleg article :/
22:07:30 <elliott> kmc: call-with-current-continuation + dynamic-wind are A Fun Pair
22:07:43 -!- sivoais has quit (Ping timeout: 260 seconds).
22:07:57 <kmc> olsner: danger danger high voltage
22:08:06 <kmc> inherit the dynamic-wind
22:10:19 <olsner> "Fortunately, delimited control operators let application programmers write dynamic-wind themselves; that function is no longer a primitive, is no longer hard-to-explain, and no longer has to be provided by the implementation."
22:13:42 <Sgeo> Fuck yourself with a rusty rake
22:14:18 <Sgeo> One of the challenges is "Email Validation "
22:14:20 <olsner> (followup question: what are these delimited control thingies?)
22:14:31 <Sgeo> "You are given several strings that may/may not be valid emails. You should write a regular expression that determines if the email id is a valid email id or not. You may assume all characters are from the english language."
22:14:43 <kmc> lol "no longer hard-to-explain"
22:15:39 <olsner> if it wasn't hard, what's it doing on oleg's site in the first place?
22:15:42 <kmc> http://www.ultrapico.com/Expresso.htm
22:18:48 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:22:30 <olsner> Sgeo: i.e. this? http://ex-parrot.com/~pdw/Mail-RFC822-Address.html
22:23:38 <olsner> a correct answer might be that the language of valid email addresses is not regular and cannot be matched by a regexp
22:25:06 <kmc> that kind of fancy book-learnin' will get you nowhere
22:35:51 <elliott> <olsner> (followup question: what are these delimited control thingies?)
22:38:55 -!- Nisstyre-laptop has joined.
22:41:53 -!- copumpkin has joined.
22:42:25 -!- heroux has quit (Ping timeout: 252 seconds).
22:42:34 -!- heroux has joined.
22:44:02 -!- sivoais has joined.
22:51:37 <ion> http://soundcloud.com/g3ksan/troll
23:09:19 <ion> This recording is hilarious. :-D
23:09:49 <shachaf> ion: Are you using Control.Lens yet?
23:10:33 <ion> shachaf: I haven’t written any real code that uses it but i have it in my .ghci
23:10:56 <shachaf> Is "over both" the right way to do it?
23:11:34 <shachaf> I'll probably need to painstakingly learn the operators one by one.
23:11:53 <shachaf> toListOf (both.both) ((1,2),(3,4))
23:12:35 <ion> Well, its type is right and it does the right thing. :-P
23:12:50 <ion> shachaf: Btw, i added a bunch of ….Lens imports. https://gist.github.com/3909552
23:12:52 <shachaf> Sure, but maybe there's another way of doing it?
23:13:03 <shachaf> ion: I should probably do that...
23:13:24 <shachaf> Wasn't your .ghci about 10 lines before?
23:14:09 <ion> This is what i posted first. https://gist.github.com/3909552/fb2dd963e317571249d29f5c4d305dc3c233b707
23:15:06 <ion> diff -u0 <(curl -s https://raw.github.com/gist/3909552/a92d0b0506154300baaf2be86b011213bfc458cf/.ghci) <(curl -s https://raw.github.com/gist/3909552/170990e52c4499158f45d1738cdf10796f32513f/.ghci)
23:20:04 <Sgeo> http://blog.sigfpe.com/2006/12/evaluating-cellular-automata-is.html is this likely to be a good explanation of comonads?
23:20:37 <shachaf> ion: So have you figured out the zipper business?
23:20:48 <ion> Nope, haven’t even looked at it yet.
23:21:01 <elliott> Sgeo: everything sigfpe writes is good
23:21:47 <shachaf> zipper ("hello","world") % down _1 % fromWithin traverse % focus .~ 'J' % rightmost % focus .~ 'y' % rezip
23:22:08 <ion> But that’s the only thing i’ve looked at wrt. them.
23:24:45 <shachaf> kmc: Are you going to accept typos for the mosh bug bounty?
23:28:16 <kmc> maybe $0.01
23:28:23 <kmc> didn't you get some money mining typos in tarsnap?
23:28:28 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
23:28:53 <shachaf> kmc: $20 for running a spellchecker on the codebase.
23:28:54 <ion> I’m in tears laughing at this recording. :-D
23:29:05 <shachaf> I got $30 more for "minor bugs"!
23:29:27 <shachaf> kmc: Man, you guys are cheap. Tarsnap gives you a whole $1 per typo!
23:33:46 * ion switched from tarsnap to s3ql + S3
23:36:53 <shachaf> kmc: That's because C is as "close to the hardware" as it gets, right?
23:44:17 <ion> Thanks, Hanks. Thanks. http://youtu.be/-C2h6JSnM-E
23:49:59 -!- Phantom_Hoover has joined.
23:51:16 <kmc> shachaf: I learned how to type ő with Compose!
23:51:18 <kmc> Compose = o
23:51:33 <shachaf> I was just wondering the other day.
23:51:54 <shachaf> I settled for copying it from https://en.wikipedia.org/wiki/Paul_Erdős
23:52:04 <kmc> it works for u as well
23:52:24 <shachaf> kmc: Presumably it works for anyone who's using the default Compose layout.
23:52:28 <kmc> i wonder if other vowels with that mark exist in unicode (without combining characters i mean)
23:53:28 <shachaf> 04F3 CYRILLIC SMALL LETTER U WITH DOUBLE ACUTE [ӳ]
23:53:49 <shachaf> That's it, though, I think.
23:54:20 <shachaf> kmc: You should get a Unicode search thing! That way you can look things up easily.
23:54:31 <shachaf> I have a file with all of Unicode that I search with less +R
23:59:16 <kmc> ӳ is used in... Chuvash, a language I have never heard of
00:05:09 <shachaf> "Therefore if F' is right-Lobachevsky then |Σ| ≅ ℵ₀. By Newton's theorem, if Darboux's criterion applies then I < Γ'. So ζ is conditionally Erdős."
00:05:50 <shachaf> http://thatsmathematics.com/blog/archives/102
00:09:04 -!- Nisstyre-laptop has quit (Ping timeout: 246 seconds).
00:15:56 -!- Nisstyre-laptop has joined.
00:39:59 -!- DHeadshot has joined.
00:55:01 <Sgeo> My program needs to run efficiently. My program is running more efficiently than I expect with my algorithm, which is horribly inefficient. My program is giving wrong results some, but not most, of the time.
00:55:47 -!- Phantom_Hoover has quit (Remote host closed the connection).
01:00:18 -!- Vorpal has quit (Ping timeout: 276 seconds).
01:06:21 <Sgeo> Fixed the code to be in line with my mental algorith,
01:06:29 <Sgeo> Getting out of memory errors
01:11:27 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:12:58 <Sgeo> Figured out a new algorithm
01:13:09 <kmc> perhaps bonghits will fix your out of memory errors
01:16:03 * shachaf must be missing something there.
01:19:03 <Gregor> The Looney Tunes Show 1x22 finally gets to Looney Tunes levels of drag.
01:21:21 <kmc> missing what
01:21:26 <kmc> why does Gregor have voice
01:21:32 <kmc> i thought #esoteric was a classless society
01:21:48 <shachaf> kmc: Looks like it's a reference to a git commit involving Radeon?
01:22:20 <kmc> it's a reference to http://www.jerkcity.com/jerkcity490.html
01:22:56 <Gregor> kmc: I have +v because I'm SPECIAL.
01:23:07 <Sgeo> Dangit, it's not fast enough, I think
01:25:25 <Sgeo> It's annoying that using an iterable in Python permanently mutates/consumes it
01:27:51 <kmc> http://goatkcd.com/1123/sfw nsfw
01:29:28 <shachaf> kmc: I've yet to click on any of these links.
01:29:45 <shachaf> I'm vaguely curious what happens to a one-panel comic, but not enough to click.
01:30:09 <kmc> what happens in what sense
01:30:49 <shachaf> http://blog.ezyang.com/2012/10/duality-for-haskellers/
01:32:23 <kmc> Sgeo: it is annoying; on the other hand, reasoning about space usage would be harder were it not the case, I think
01:33:04 <shachaf> It's already harder with lists in Haskell!
01:33:43 <Sgeo> writing... code... is harder
01:34:13 <Sgeo> I think I may have screwed up my ability to write imperative code.
01:34:53 <kmc> that sucks
01:35:01 <kmc> writing imperative code is an important skill in any language
01:35:47 <kmc> whether it's important depends not on the language but on the problem you're trying to solve
01:36:38 <Sgeo> The problem I'm trying to solve tends to be the language not supporting functional idioms sufficiently
01:44:00 <kmc> i don't believe you
01:44:26 <kmc> unless you are just doing toy functional programming exercises, you will need imperative style some of the time
01:44:57 <kmc> i like Haskell not because it's OMG HARDCORE PURE FP, but because it actually supports imperative programming in a good way, a way which makes sense to people who understand FP too
01:45:26 <kmc> but you know for every person who understands the IO monad there are 50 beginners talking about how pure the factorial function is and how it's going to destroy imperative programming next year
01:45:30 * kmc semi-coherent rant
01:45:48 <elliott> i don't understand why you are making lots of assumptions about what i meant
01:46:30 <kmc> i'm not assuming
01:46:36 <kmc> i'm ranting off what Sgeo said
01:46:40 <shachaf> Isn't "coalgebroid" a great word?
01:46:56 <elliott> i thought you were replying to my statement
01:47:07 <shachaf> kmc: What about "iggrammatical"?
01:47:09 <kmc> that the only reason he needs imperative programming is "the language not supporting functional idioms sufficiently"
01:47:12 <elliott> anyway I disagree with "<kmc> unless you are just doing toy functional programming exercises, you will need imperative style some of the time", at least philosophically
01:47:28 <kmc> well it is a pragmatic statement, not a philosophical one
01:47:48 <elliott> well i sort of disagree with it pragmatically too
01:47:49 <kmc> see also: FRP still doesn't work
01:47:58 <elliott> there are FRP libs that are mature enough for doing fairly involved stuff
01:48:00 <shachaf> A pragmatist in our midst!
01:48:02 <kmc> well maybe it started working in the past year and nobody told me
01:48:08 <elliott> depends what you mean by "doesn't work"
01:48:09 <Sgeo> kmc, well, I don't have an issue when I need to write imperative code to handle imperative things, it's just imperative code when I know more functional languages have function idioms for those htings
01:48:15 <elliott> do you know of any major problems with reactive-banana/reactive-banana-wx?
01:48:21 <kmc> that makes more snense
01:48:24 <Sgeo> (And I understand those idioms and their use sufficiently well)
01:48:25 <kmc> elliott: no, i haven't used them at all
01:48:29 <elliott> I don't know of any semantic glitches it has, performance seems good...
01:48:38 <kmc> i never tried doing FRP because everyone talked about how half-baked it was
01:48:41 <kmc> but that may be out of date
01:48:42 <elliott> what *doesn't* work is one frp framewotk to rule them all, yet
01:49:04 <Sgeo> Not entirely comfortable with the idea of monad transformers to represent an entire running program's state+everything
01:49:10 <elliott> but, I still think you can write a good amount of stuff without resorting to imperative programming right now
01:49:15 <Sgeo> So more willing to do that stuff imperatively
01:49:19 <shachaf> elliott: You know who's "cool"?
01:50:23 <shachaf> I think part of kmc's point is that "resorting to imperative programming" assumes that "imperative" is always the worst way to express something.
01:50:33 <shachaf> Whereas in practice it can the clearest way to express your intent.
01:50:47 <shachaf> (But I'm not kmc so I shouldn't say what his point is.)
01:51:39 * elliott likes to be militantly anti-imperative as a general policy; that means I have to try hard to show to myself that imperative programming *isn't* the best way to express any given thing.
01:51:44 <elliott> Which is good, because the results are sometimes insightful.
01:51:48 <elliott> (Okay, only occasionally.)
01:52:30 <shachaf> elliott: Right, sometimes "your intent" is the thing that's misguided, and learning to "figure out what your intent really is" is one of the values of learning Haskell and such things.
01:53:41 <kmc> i think "functional" and "imperative" is a bad choice of terms
01:53:45 <elliott> shachaf: I think imperative programming often seems like the right choice just because of the baggage of the systems we use (like Unix)... obviously that means it *is* the right choice in practice, but I think it tends to not be inherent to the problem.
01:53:51 <kmc> i think things should be more "denotational"
01:53:56 <elliott> See also: strings as a nearly-useless data type.
01:53:56 <kmc> and maybe "declarative"
01:53:58 <elliott> (Booleans too, to some degree.)
01:54:05 <kmc> imperative programming could be made more denotational and declarative
01:54:12 <kmc> haskell is a small step in that direction
01:54:28 <elliott> I forget if I decided strings have any value.
01:54:35 <kmc> @quote stark
01:54:35 <lambdabot> AlanPerlis says: The string is a stark data structure and everywhere it is passed there is much duplication of process. It is a perfect vehicle for hiding information.
01:54:47 <Sgeo> elliott, what's wrong with strings and booleans?
01:55:04 <lambdabot> http://existentialtype.wordpress.com/2011/03/15/boolean-blindness/
01:55:05 <lambdabot> Title: Boolean Blindness « Existential Type
01:55:07 <shachaf> @google string sightlessness
01:55:08 <lambdabot> http://legal-dictionary.thefreedictionary.com/strike+sightless
01:55:08 <lambdabot> Title: strike sightless legal definition of strike sightless. strike sightless synonyms ...
01:55:09 <elliott> Sgeo: The former is useless; the latter is harmless.
01:55:14 <elliott> Sgeo: The former is useless; the latter is harmful.
01:55:18 <elliott> Also the former is often harmful too.
01:55:26 <shachaf> elliott: Is [Bool] useless or harmful?
01:55:29 <elliott> http://existentialtype.wordpress.com/2011/03/15/boolean-blindness/ is a good description of the problems with booleans, yes.
01:58:02 <elliott> Anyway I guess booleans are better than strings.
01:58:10 <elliott> You can take them as configuration and that's not as bad as it could be.
01:58:21 <elliott> And even configuration usually wants its own types.
01:58:43 <shachaf> elliott: I prefer the strings "true" and "false".
01:59:51 <shachaf> kmc: Did you see the lens slides?
01:59:56 <shachaf> Or elliott, or whoever else.
02:00:05 <shachaf> Sgeo: Does Clojure have lenses?
02:00:08 -!- Nisstyre-laptop has quit (Quit: Leaving).
02:00:46 <Sgeo> Erm. I wanted to write a lens library once. But whenever I try to describe them to #clojure, they don't see the value.
02:00:48 <shachaf> https://groups.google.com/d/msg/bahaskell/YifnIpEu2OY/kddoyuvdCOMJ
02:02:28 <shachaf> Phantom_____Hoover: I define a new language as follows:
02:02:40 <shachaf> A program is composed of the character < > - + [ ] , .
02:02:44 <shachaf> Any other character is illegal.
02:02:52 <shachaf> The characters < > - + [ ] , . are all nops.
02:08:53 <Jafet> An interpreter in your new language: ++[->.<<[-,<+>++]]
02:09:34 -!- copumpkin has quit (Ping timeout: 240 seconds).
02:09:59 <shachaf> Jafet: I guess I should introduce v2.0 of the language.
02:10:06 -!- copumpkin has joined.
02:10:08 <shachaf> v2.0 disallows the []s to be balanced.
02:11:46 <elliott> <shachaf> A program is composed of the character < > - + [ ] , .
02:11:50 <Jafet> Is my quine legal in v2.0?
02:12:22 <Jafet> I met < > - + [ ] , . once. Great character.
02:12:50 <shachaf> elliott: It is in UNICODE VERSION 7
02:13:55 <Jafet> They should make a unicode glyph that consists of a table of all unicode glyphs.
02:18:20 <Sgeo> Including itself, obviously.
02:21:03 <zzo38> An idea is programming using the linear logic, with additive conjunction, multiplicative conjunction, additive dusjunction, multiplicative dusjunction, and other stuff like "!" and so on, you can encode intuitionistic logic in linear logic using "!" so perhaps if you have a category, you can make "!" like a comonad for using ordinary functions? (Like you use "Cont" monad in Haskell to make continuations)
02:21:30 <shachaf> zzo38: cmccann in #haskell is all about linear logic, I hear.
02:25:55 -!- Max00355 has quit (Read error: Connection reset by peer).
02:37:22 -!- copumpkin has quit (Ping timeout: 245 seconds).
02:37:56 -!- copumpkin has joined.
02:42:17 -!- augur has quit (Remote host closed the connection).
03:14:42 -!- augur has joined.
03:27:48 <Sgeo> https://www.destroyallsoftware.com/talks/wat
03:28:11 <ion> Yeah, that talk is brilliant.
03:32:00 <elliott> pikhq: do you know how wayland+xwayland compares in binary size to x11 right now
03:32:04 <elliott> i have actual reasons for asking this
03:35:27 <ion> I wonder what causes the overhead when running OpenGL programs with Compiz? They run much smoother without compositing. One would think a single extra pass through render-to-texture wouldn’t cause anything noticeable by itself.
03:36:00 <ion> I suppose Wayland is more efficient at that.
03:39:09 -!- ogrom has joined.
03:42:45 <ion> jafet: Another OpenGL compositor on X.org might not have the issue?
03:43:58 <Jafet> Is there any other?
03:44:31 <ion> A hypothetical one
03:44:51 <ion> I.e. are you saying the problem is in Compiz, not X.org?
03:46:41 <Jafet> I don't know. Compiz has many problems.
04:00:57 <zzo38> How do you tell Mozilla to load the entire text first before loading images and CSS?
04:48:36 -!- Nisstyre-laptop has joined.
04:52:58 <kmc> colon colon one y'all
04:53:42 <kmc> - if ((request.META['REMOTE_ADDR'] != '127.0.0.1')
04:53:42 <kmc> + if ((request.META['REMOTE_ADDR'] not in ('127.0.0.1', '::1'))
04:54:12 <shachaf> kmc: Did you know you can drop octets from an IP address and it fills them in according to some complicated pattern?
04:55:21 <shachaf> (d can be a number up to 256^2, in which case it also works for c.)
04:55:45 <shachaf> Also you can use 0x or 0 for any octet.
04:58:43 <myndzi> anybody happen to know what a "two-way server" is?
04:59:03 <myndzi> far as i can tell it's an obscure term for either dual core or dual processor
05:01:04 <myndzi> ahh, it's offline still
05:05:16 <kmc> yeah people say "four-way SMP" and such
05:05:28 <kmc> it probably does not distinguish dual core and dual socket
05:05:45 <myndzi> i'm pretty sure he meant multi processor specifically
05:05:53 <myndzi> the usage was real weird
05:06:03 <kmc> well in some cases "multi processor" might also include multi core
05:06:06 <myndzi> also apparently if you replace a dual-core system you should get a new dual-core system
05:06:29 <kmc> when you first said "two-way server" i thought of http://www.supermicro.com/products/nfo/1UTwin.cfm
05:06:53 <myndzi> ah, just editing some technical articles
05:07:00 <kmc> which is two independent servers in a 1U case
05:07:08 <myndzi> unfortunately the guy doing the writing here ... apparently doesn't know jack
05:07:11 <kmc> and they also have 4 servers in a 2U case
05:07:17 <myndzi> like i said.. it's offline, sorry
05:07:24 <shachaf> Oh, that's what you meant.
05:07:35 <myndzi> shachaf: yeah, my work comp and laptop are up atm
05:07:39 <myndzi> but not my home desktop
05:10:18 <kmc> that's not quite as dense as blades, but it's probably a better deal if you only need a few of them
05:13:33 <kmc> according to smartctl, my hard drive has spent 20 billion years with the head flying
05:14:56 <shachaf> 20 billion years isn't cool, though.
05:15:18 <kmc> what about 20 trillion years?
05:15:28 <kmc> apparently seagate drives just report nonsense to smartctl for fun
05:15:29 <kmc> http://www.users.on.net/~fzabkar/HDD/Seagate_SER_RRER_HEC.html
05:15:36 <Jafet> FLYING THROUGH SPACE AND TIME
05:15:40 <shachaf> I,I 32-bit integers aren't cool. You know what's cool? 42-bit integers.
05:16:48 <pikhq> Bah. N-bit integers where N is a non-integer computable is cool.
05:17:04 <elliott> kmc: i think you could get a good 3 to 4 rants out of this tweet https://twitter.com/ryah/status/258634435161899009
05:17:19 <elliott> good to know node.js has such a sound engineer behind it
05:17:30 -!- monqy has joined.
05:17:36 <elliott> (haha @ implication that "C/C++" (haha @ that too) isn't "legacy bullshit" also)
05:17:47 <Sgeo> Uh. By "interesting" do they mean "interesting + likely to be widely used"?
05:17:55 <pikhq> elliott: Well, technically C++ is "interesting".
05:18:16 <elliott> https://twitter.com/ryah/status/258635644681728000
05:18:17 <pikhq> It teaches how not to design a programming language by example.
05:18:26 <elliott> https://twitter.com/ryah/status/258635662587199489
05:18:26 <elliott> https://twitter.com/ryah/status/258635676726218752
05:18:52 <Sgeo> No reason given. At all.
05:18:58 <monqy> hey sgeo how's your clojure without lexical scoping going
05:19:02 <kmc> yeah this is such transparent trolling
05:19:05 <pikhq> I'll give him a very slight bit of credit: Rust actually appears interesting.
05:19:13 <kmc> i can't really work myself up over it
05:19:32 <kmc> elliott: i heard C++ is for fat people
05:19:36 <Sgeo> monqy, on hold while I try to determine if it actually would be better than Kernel
05:20:08 <Sgeo> You could accomplish more or less the same thing with Kernel's eval, I think
05:20:15 <kmc> i hope that sometime near the end of The Office (US), the characters suddenly become aware of the fact that Kevin has gradually developed a severe cognitive impairment over the past decade, and find this profoundly disturbing
05:20:24 <Sgeo> Well, not the same exact thing, but similarish enough, I think
05:20:54 <Sgeo> kmc, does Kernel have quasiquoting? I vaguely remember "no", but not sure.
05:21:10 <kmc> i don't remember
05:21:14 <Sgeo> And if the answer is "no", who do I have to slap
05:21:17 <kmc> are you asking about the `(a b) concrete syntax
05:21:33 <kmc> or about the quasiquote special form
05:21:46 <kmc> presumably quasiquote wouldn't be a sepecial form, just an operative you can define yourself
05:21:57 <kmc> and it's not super useful for the kernel way of doing things
05:21:59 <Sgeo> Well, `(a b) concrete syntax would be nice, preferably translating into a particular set of operatives
05:22:12 <kmc> i assume `x would be sugar for (quasiquote x) as in scheme
05:22:17 <kmc> and ,x for (unquote x)
05:22:38 <Sgeo> Distinctly different from the Common Lisp style things of not actually having a concrete translation
05:22:42 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ,@x: not found
05:22:52 <kmc> anyway quasiquote is not that useful for writing operatives, but it might sometimes be useful to use traditional lisp-ish macros in kernel
05:23:01 <kmc> i think it should be easy to implement defmacro as an operative
05:23:15 <kmc> i wonder if there is some kind of "quasieval" syntax you could define, to make writing operatives nicer
05:24:12 <Sgeo> kmc, well, I more wanted to emulate Tcl-style commands, but with quasiquoting, since Tcl doesn't have nice quasiquoting syntax built-in and that sucks
05:24:46 <kmc> (define list (vau xs env (if (nil? xs) nil (quasieval env (cons ,(car xs) ,(cdr xs))))))
05:25:09 <kmc> => (define list (vau xs env (if (nil? xs) nil (cons (eval env (car xs)) (eval env (cdr xs))))))
05:25:29 <kmc> awkward to use ` because you need to put the env parameter somewhere
05:27:34 <elliott> http://twitter.com/ryah/status/258665167934611457
05:27:55 <elliott> good to know his problem is uninteresting
05:29:13 <elliott> monqy: ais523: you might like: http://www.ioccc.org/2012/tromp/hint.html
05:29:23 <Sgeo> He could at least acknowledge that without PL research, he'd be stuck writing code in .... I'm not even sure
05:29:24 <kmc> elliott: stop trolling by proxy
05:29:45 <shachaf> kmc: My friend said that trolling by proxy is fun but I don't believe him.
05:29:45 <kmc> hey guys my cousin's barber says haskell causes aids
05:29:51 <shachaf> How can I show him the error of his ways?
05:30:41 <Sgeo> He should write all his code in 0s and 1s from now on.
05:31:00 <elliott> kmc: what is #esoteric fo rthen
05:31:16 <shachaf> Silly elliott. #esoteric is for trolling directly, not by proxy.
05:31:23 <shachaf> But we shouldn't troll kmc, or he might leave. :-(
05:31:30 <kmc> programming community full of anti-intellectual blowhards; film at 11
05:31:41 <kmc> actually though i have violated my own rule about the word 'community'
05:31:42 <elliott> it is art to dismiss list but talk about scheme-relative JS as interesting and innovative and not legacy crap
05:31:45 <kmc> i'm not sure what to call that community
05:31:59 <elliott> if i was trying to rile plt people up i couldn't do it so well
05:32:01 <kmc> hacker news jackoff community
05:32:23 <shachaf> Then I'll be stuck either looking for bugs in Mosh or not talk to kmc!
05:32:47 <kmc> i dread the day when the startup i'm working for now gets posted to hacker news
05:33:04 <shachaf> kmc: Is it still a secret what it does?
05:33:17 <kmc> but it's not the interesting kind of secret
05:33:37 <kmc> we're making a useful product, but it's not like ksplice where it's going to blow your mind that it's even possible
05:33:44 <shachaf> kmc is working on stealth bombers.
05:33:55 <shachaf> That's why his startup is in Stealth Mode.
05:33:57 <elliott> kmc: ksplice didn't really surprise me
05:34:29 <kmc> i'm not really surprised that it worked as a research project
05:34:45 <elliott> then you send it off to the engineers
05:34:56 <kmc> but i am very impressed that they managed to make a commercial product that was deployed on 200,000+ machines and crashed almost none of them
05:35:13 <kmc> of course there were 2 years of work in between those two stages
05:35:43 <shachaf> I,I deployed on ℵ₁ machines and crashed almost none of them
05:35:54 <kmc> is that alef or math alef?
05:36:10 <shachaf> The other one puts you in RTL mode, which is annoying.
05:36:13 <kmc> or blackboard bold script italic math alef
05:36:36 <shachaf> (But on the other hand I have to type in the codepoint instead of switching my keyboard to Hebrew mode.)
05:36:51 <shachaf> kmc: whoa, dude, Unicode has codepoints for letters + nikud!
05:36:56 <shachaf> I thought it just had combining nikud.
05:36:57 <zzo38> I want to make up a chess variant having googolplex number of kind of pieces. I already wrote of some idea of such things.
05:37:13 <zzo38> shachaf: There are various things I dislike about Unicode
05:37:15 <kmc> is there continuouschess
05:37:23 <kmc> continuous chess*
05:37:27 * kmc should get a new spacebar
05:37:29 <elliott> continuous chess got made up in here once
05:37:35 <Sgeo> kmc, "almost"?
05:37:38 <kmc> what was continuous
05:37:42 <kmc> piece position or also identity?
05:37:52 <elliott> mostly the problem is that you can't express the moves you want to make
05:37:54 * Sgeo should try continuous chess
05:37:56 <shachaf> 1EE00 ARABIC MATHEMATICAL ALEF [<U+1EE00>]
05:38:02 <elliott> kmc: i think the pieces might have been continuous too
05:38:05 <elliott> honestly i do not remember
05:38:05 <shachaf> There's an ARABIC MATHEMATICAL ALEF but no HEBREW MATHEMATICAL ALEF?!
05:38:29 <kmc> did rooks and bishops have a facing direction
05:38:38 <zzo38> Another idea is to make up a description of googolplex number of variants all at once
05:38:43 <Sgeo> This isn't it, is it?
05:38:43 <Sgeo> http://www.chessvariants.org/other.dir/continuouschess.html
05:38:47 <Sgeo> It says created 2001
05:38:51 <shachaf> "Chess" played on a Go board.
05:38:58 <elliott> yes Sgeo we made up continuous chess in this channel in 2001
05:39:02 <elliott> then put it on some random chess variants website
05:39:24 <Sgeo> Hence me thinking that that isn't it.
05:39:25 <shachaf> A "piece" is any 3×3 square that contains at least one of your Go pieces and none of the enemy's.
05:39:41 <zzo38> I do know Gess too
05:39:46 <shachaf> The 8 outer stones are bits that decide in which direction your "piece" can go.
05:40:02 <shachaf> The inner stone says whether it can move just one step or as far as it wants.
05:40:21 <shachaf> Your "queen" is 9 pieces, and your "king" is a ring. You lose when you have no ring.
05:40:30 <shachaf> (You can make additional kings if you're careful.)
05:40:48 <kmc> and moves are by 1 rather than 3?
05:40:50 <shachaf> You can make strange new pieces that can only move in a particular direction.
05:41:07 <kmc> this is like go + chess + game of life
05:41:32 <shachaf> Ah, there's a Wikipedia article. https://en.wikipedia.org/wiki/Gess
05:41:36 <shachaf> It says it can move up to 3.
05:41:53 <kmc> in that it depends on identifying and cataloguing formations that are bigger than the 'physics' of the game, and can form out of other things
05:42:11 <elliott> kmc: going to "troll" you with this too https://plus.google.com/u/0/115212051037621986145/posts/HajXHPGN752
05:42:26 <elliott> "abstractions are slow in python so if you want to write fast python don't use them" -- gvr
05:42:51 <shachaf> elliott: Did you see bos's slides?
05:43:03 <zzo38> What if you make continuous chess where your moves are limited to rational numbers, or to algebraic numbers, or allowing rationals and quadratic surds
05:43:08 <shachaf> http://bos.github.com/reaktor-dev-day-2012/reaktor-talk-slides.html
05:43:25 <zzo38> And have a minimum movement
05:43:52 <shachaf> elliott: Guido was at ekmett's lens talk yesterday.
05:44:28 <elliott> I can make fun of people even if they attend edwardk talks
05:44:53 <shachaf> Python's going to get lenses now, that's all I'm sayin'.
05:45:32 <Jafet> A go variant where you can't see the opponent's stones
05:45:54 <Jafet> And if you place a stone on an occupied place, the stone disappears
05:46:23 <kmc> i'm just so burnt out on caring about people being wrong on the internet about programming languages
05:46:31 <kmc> i did a tour of duty in /r/programming and two in #haskell
05:46:39 <shachaf> kmc: It's a sign you're getting old.
05:46:48 <kmc> maybe not that one
05:47:00 <elliott> kmc: you should join #haskell again for the good times
05:47:08 <kmc> is it good now
05:47:16 <shachaf> They were arguing about whether Lisp has syntax an hour ago.
05:47:26 <shachaf> (To be fair, you get that in here too.)
05:47:40 <Jafet> Someone linked to paulgraham.com an hour ago
05:47:44 <shachaf> Also someone was asking whether Haskell was used in any real-world projects and refusing to read any links.
05:48:54 <shachaf> Is there a channel that's like #haskell, except for all the bad parts?
05:48:59 <elliott> <shachaf> Also someone was asking whether Haskell was used in any real-world projects and refusing to read any links.
05:49:02 <elliott> who was this i wanna read it in the logs
05:50:00 <Jafet> You can find it quickly by searching for "real-world", because that phrases comes up infrequently there
05:50:08 <shachaf> kmc: I went to a talk about graph coloring and the birthday problem and variations.
05:50:43 <elliott> Jafet: There's only one result for "real-world" and one for "real world" in today's log. :(
05:50:44 <shachaf> Did you know that a pretty good approximation for "number of people you need in a room to have a 50% chance that two share the same birthday" is 1.2√c, where c is the number of days in a year?
05:51:53 <shachaf> Also coloring graphs is hard. :-(
05:54:37 <Jafet> I knew all those children's books had sinister intentions.
05:57:06 <shachaf> Orwell did not invent the term "two minutes hate"; it was already in use in the First World War.[1] At that time, British writers satirised the German campaign of hatred against the English, and imagined a Prussian family sitting around the kitchen table having its "morning hate".[2]
05:59:29 <Sgeo> Hmm. Well, if using a field and using getter/setter had the exact same syntax, with no oddities, I don't see any problems with using fields directly.
05:59:54 <Sgeo> C# that's not the case, fields can be used in ways that properties (getter/setter combinations) cannot
06:00:08 <zzo38> There is also leap years though
06:00:24 <Sgeo> So better to start off with properties rather than using fields, then needing to convert to getter/setter and finding that it breaks some code.
06:00:54 <shachaf> zzo38: Leap years don't influence it much.
06:01:03 <shachaf> In fact, even actual birth statistics don't influence it much.
06:01:45 <shachaf> Did you know that in the US, there are 20% fewer births on weekends?
06:03:35 <shachaf> kmc: Did you know that Compose v / makes √?
06:03:56 <zzo38> No, I didn't know that there are 20% fewer birth on weekend in US.
06:06:37 <shachaf> 20% of labor is induced and doctors don't like to work on weekends, or something along those lines.
06:07:28 <shachaf> Cæsarean sections, too, I guess.
06:11:58 <kmc> makes sense
06:13:09 <ion> 20 % of labor is mathematically induced.
06:14:10 <kmc> A friend who's in liquor production
06:14:10 <kmc> Owns a still of astounding construction.
06:14:11 <kmc> The alcohol boils
06:14:11 <kmc> Through old magnet coils;
06:14:11 <kmc> She says that it's "proof by induction."
06:14:24 <ion> > cycle "HA"
06:14:25 <lambdabot> "HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA...
06:16:33 <kmc> not a true limerick as it lacks a dirty joke
06:16:40 <kmc> that's like a haiku without a seasonal reference
06:17:24 <ion> I have an incomplete song with a (5+7+5)/8 rhythm.
06:18:52 <shachaf> kmc: Have you read some of Lear's limericks?
06:20:18 <ion> Preview from a crappy General MIDI export http://codu.org/webmidi/gen/924563928975/924563928975.ogg
06:20:33 <shachaf> elliott: Have you seen the way edwardk "overloads function application"?
06:21:46 <zzo38> Did you write this music?
06:22:05 <ion> It’s unfinished.
06:22:13 <shachaf> kmc: I changed some scenery but it didn't really help.
06:22:14 <zzo38> When, and what software?
06:23:26 <kmc> for what problem?
06:23:31 <kmc> and which scenery?
06:23:45 <zzo38> I wonder the same thing
06:23:46 <ion> zzo38: I made a score in Lilypond (<http://johan.kiviniemi.name/music/haiku.pdf>) in 2011-01. You also get a crappy General MIDI file out of it almost for free.
06:28:40 <elliott> <shachaf> elliott: Have you seen the way edwardk "overloads function application"?
06:28:41 <zzo38> Are there any simpler versions of Lilypond which will generate DVI output and do not require so many source files and that stuff?
06:29:03 <shachaf> elliott: I mean isomorphism.
06:29:23 <shachaf> inc :: Num a => a -> a <-> a; inc = isomorphic (+1) (subtract 1)
06:29:29 <zzo38> Lilypond even requires Python and Scheme and all that stuff too
06:30:10 <ion> zzo38: You generally use just one source file with Lilypond.
06:32:18 <Sgeo> How is that <-> legal? Language extension?
06:32:38 <Sgeo> I think I get it but I don't get the types
06:35:31 <shachaf> elliott: Oh, maybe I got the type wrong?
06:35:35 <zzo38> And the syntax sometimes changes.
06:36:00 <shachaf> elliott: Anyway, inc acts like a function when you apply it, but you can also get the other part of the isomorphism from it.
06:36:12 <zzo38> For example it requires Unicode
06:37:31 <shachaf> Who said anything about encodings?
06:37:58 <Sgeo> shachaf, I should note that I didn't look at the type that closely
06:39:18 <elliott> <shachaf> elliott: Anyway, inc acts like a function when you apply it, but you can also get the other part of the isomorphism from it.
06:39:57 <lambdabot> Occurs check: cannot construct the infinite type: t = t -> t1
06:39:59 <shachaf> class Category k => Isomorphic k where isomorphic :: (a -> b) -> (b -> a) -> k a b
06:40:07 <shachaf> isntance Isomorphic (->) where isomorphic = const
06:40:36 <shachaf> data Isomorphism a b = Isomorphism (a -> b) (b -> a); instance Category Isomorphism; instance Isomoprhic Isomorphism
06:40:45 <shachaf> type a <-> b = forall k. Isomorphic k => k a b
06:40:51 <shachaf> from (Isomorphism a b) = isomorphic b a
06:42:54 <shachaf> elliott: "pretty crazy huh"
06:45:09 <lambdabot> Overlapping instances for GHC.Show.Show (t -> t)
06:45:23 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
06:45:29 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
06:50:42 <zzo38> Is there a version of LilyPond which generates DVI output and does not require Freetype, Ghostscript, Guile, Python, Pango, Unicode, etc?
07:00:03 <zzo38> Or similar program?
07:18:48 <ion> Depends on how you define similar. The major feature of Lilypond is how much they have made effort over the years to make the output look non-computer-ish.
07:19:08 <ion> Is your floppy disk running out of space?
07:21:33 <zzo38> No, I am using a hard disk.
07:24:26 <zzo38> Couldn't it be done with just one source-file (other than fonts), and then use ATLAST for extensions (also just one source file), and have macro files (just one for standard notation; others for specialized), use MCK-like syntax, output to DVI?
07:25:20 <zzo38> FreeFull: No, it is 200GB
07:29:05 <zzo38> I can understand why they would make effort over the years to make the output look non-computer-ish it is good idea. However, I don't think they should need many source files and all that other stuff to do that.
08:00:26 <zzo38> How difficult would it be to take the LilyPond source files, remove half of the stuff, change some of the stuff, and have it compile without anything more than the C++ compiler and no extra libraries?
08:04:39 <zzo38> I looked at the source files and it appears to be way too complicated.
08:05:38 <FreeFull> Most source does on first look
08:09:27 <zzo38> Many source files are not very large, but there are a lot of them, in a big mess, in multiple programming languages (including PostScript), a huge number of other files, too many external files needed, etc
08:10:49 <zzo38> Ideally nothing else should be needed except a DVI driver, and METAFONT (if you want to compile the fonts).
08:15:41 <zzo38> It even has a lot of makefiles, many files in Scheme, C++, Python, why does it need to be????
08:16:34 -!- epicmonkey has joined.
08:24:32 <zzo38> Even if there is one that does not make the output look non-computer-ish, is there one which will make DVI format output and which does not use Unicode?
08:25:07 <ion> I sincerely don’t see what’s wrong with Unicode.
08:25:28 <ion> A score-writing system that heavily restricts the languages you can use for the lyrics would be strange.
08:25:49 <zzo38> And which requires only one programming language instead of five?
08:26:22 <ion> I don’t think using only one programming language prevents you from using Unicode.
08:27:43 <zzo38> ion: You don't need to restrict the languages you can use for the lyrics just because Unicode won't work. Just do it the way TeX does it
08:28:17 <ion> Yeah, writing Chinese in the variants of TeX that don’t support UTF-8 is nice.
08:29:43 -!- mekeor has joined.
08:30:02 <zzo38> Actually it is possible to write a macro in Plain TeX which will parse UTF-8 or other encodings you might use; I have done this. So you can write macros for the encoding you want.
08:30:52 <ion> I thought the goal was to be simple, with just a couple of files of source code. Now we’re going to have turing-complete macros?
08:31:32 <zzo38> Well, you should have some extension engine whatever it is; I suggested ATLAST.
08:31:57 <zzo38> (Which is a single C source file and a header file, as far as I can tell)
08:32:55 <zzo38> Problem with Unicode (for any uses, really) is the complicated stuff like character properties, changing text directions, and various other things
08:33:34 -!- monqy has quit (Quit: hello).
08:34:06 -!- mekeor has quit (Remote host closed the connection).
08:37:03 -!- monqy has joined.
08:41:41 <zzo38> Even if you do use Unicode, it shouldn't need to use a list of character properties and that stuff.
09:02:59 <zzo38> Program such as TeX works fine with just one source file, one macro file, and a few fonts. Same with METAFONT, LodePNG, TeXnicard, Famitile, and others.
09:04:32 -!- zzo38 has quit (Remote host closed the connection).
09:17:41 -!- MoALTz has joined.
09:52:48 -!- copumpkin has quit (Ping timeout: 244 seconds).
09:53:23 -!- copumpkin has joined.
09:56:50 -!- monqy has quit (Quit: hello).
09:58:50 -!- elliott has quit (Ping timeout: 255 seconds).
10:39:16 -!- barts has joined.
10:49:52 -!- Vorpal has joined.
11:00:27 -!- Phantom_Hoover has joined.
11:11:06 -!- MoALTz has quit (Quit: Leaving).
11:43:55 -!- ogrom has quit (Quit: Left).
12:02:52 -!- carado has joined.
12:09:46 -!- hagb4rd has quit (Read error: Operation timed out).
12:20:11 -!- coppro has quit (Read error: Operation timed out).
12:20:18 -!- coppro has joined.
12:20:30 -!- mindlessDrone has joined.
12:50:14 -!- copumpkin has quit (Ping timeout: 240 seconds).
12:50:49 -!- copumpkin has joined.
13:18:11 -!- atriq has joined.
13:47:38 <atriq> Well, I have new shoes
13:54:45 <fizzie> The new shoes! Is it the 2012 model?
13:56:29 <atriq> I think they're the 2012 model
14:00:50 -!- Frooxius has joined.
14:01:59 <atriq> olsner, I dunno, other factors are holding it back
14:02:03 <atriq> mindlessDrone, Nike
14:02:08 -!- carado has quit (Ping timeout: 252 seconds).
14:07:31 -!- atriq has quit (Ping timeout: 244 seconds).
14:09:34 -!- jix has quit (Ping timeout: 240 seconds).
14:23:08 -!- ogrom has joined.
14:28:18 -!- ogrom has quit (Quit: Left).
14:48:11 -!- hagb4rd has joined.
15:24:40 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
15:27:17 -!- TheJimmyJames has joined.
15:30:45 -!- TheJimmyJames has quit (Client Quit).
15:37:56 -!- Phantom_Hoover has joined.
15:40:48 -!- AnotherTest has joined.
16:09:06 -!- atriq has joined.
16:09:38 <HackEgo> 2010-07-04.txt:14:15:08: <alise> please obliterate this feature
16:09:43 <atriq> > iterate (<|> " Hello!") mempty
16:09:44 <lambdabot> [""," Hello!"," Hello! Hello!"," Hello! Hello! Hello!"," Hello! Hello! Hell...
16:12:29 -!- impomatic has joined.
16:21:20 -!- epicmonkey has quit (Remote host closed the connection).
16:21:36 -!- epicmonkey has joined.
16:35:36 <fizzie> Obliterate literate iterators.
16:42:11 -!- impomatic has quit (Quit: http://BASICcomic.com).
16:42:20 -!- ogrom has joined.
16:42:36 -!- ogrom has quit (Client Quit).
16:43:16 <lambdabot> Overlapping instances for GHC.Show.Show (a -> [a])
16:43:23 <lambdabot> [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
16:53:47 -!- elliott has joined.
17:13:32 <Vorpal> why didn't myndzi react to that?
17:13:52 <Sgeo> http://www.reddit.com/r/ProgrammerHumor/comments/11rcrl/google_has_their_own_version_of_chuck_norris_joke/
17:14:20 <elliott> is there any conceivable reason why i would click that link
17:15:18 <Sgeo> Because they're slightly humorous?
17:15:33 <kmc> oh boy /r/ProgrammerHumor
17:15:43 <kmc> i'm sure this won't at all make me want to murder everyone
17:17:03 <Phantom_Hoover> hey guys there's this little-known comic called xkcd, it's really funny
17:17:49 <ais523> Phantom_Hoover: actually, I find xkcd more insightful than funny
17:17:55 <ais523> although some of the side material is hilarious
17:18:43 <ais523> and randall munroe seems to be really good at apocalyptic overthinking
17:19:17 <elliott> kmc: something called /r/programmerhumor is one thing
17:19:22 <elliott> kmc: the chuck norris part worries me more about that url though
17:19:24 <kmc> Phantom_Hoover: i only like obscure nerdy things, like video games, and movies based on superhero comics
17:19:24 <Phantom_Hoover> his only weakness is his inability to draw 3-a-week comics
17:20:30 <ais523> he's also good at aggregating data into vaguely surprising results
17:21:25 <atriq> ais523, have you seen the tumblr insane theory that Randall Munroe is Andrew Hussie?
17:22:51 <atriq> On the basis that they don't seem to know eachother and they are both friends with Ryan North
17:23:03 <pikhq> whatif.xkcd.com is actually fairly entertaining.
17:23:20 <kmc> a lot of people have been saying for a long time that he should do something like whatif
17:23:32 <pikhq> Yeah. It plays very well to his strengths.
17:23:37 <kmc> unclear if he can make money off it though
17:23:52 <pikhq> In "recent" xkcd, the various info things are all that have been more than "meh".
17:24:11 <kmc> i like a few of the jokes from recent years
17:24:13 <kmc> but not that many
17:24:22 <elliott> kmc: can't he just make money off it the same way he's been doing
17:24:24 <kmc> people don't generally agree on which of the jokes are funny
17:24:39 <atriq> http://kawaii-yaois.tumblr.com/post/26879203396/a-case-study-randall-munroe-andrew-hussie
17:24:43 <kmc> elliott: well he makes money off the comic by making one huge poster comic per month
17:24:46 <elliott> i feel like xkcd might be gradually transitioning into a state of being underrated
17:24:53 <elliott> since it seems to have been getting consistently better for a while now
17:24:56 <kmc> which every nerd is then contractually obligated to buy for their dorm room
17:24:57 <pikhq> I'm pretty sure the plural of "yaoi" is "yaoi".
17:25:05 <elliott> i guess it's impossible for it to be underrated
17:25:06 <kmc> and then he phones in the other 11 comics for that month
17:25:08 <elliott> since it has a huge fanbase
17:25:21 <kmc> elliott: do you think the comic is getting better, or just side projects?
17:25:45 <kmc> i think the comic has reached a very consistent level of mediocrity
17:25:50 <atriq> pikhq, I'm pretty sure that isn't relevant
17:25:53 <elliott> the comic; i think if you look back to how it was fairly recently (like a year or so) it's been improving
17:26:04 <elliott> obviously it is not as good as it once was but i think it is getting less bad than it became
17:26:17 <kmc> every new joke is a rehash of some joke he's already done, but worse
17:26:46 <kmc> it is rarely offensively terrible, but it's hitting the same dozen themes over and over and wringing all the funny out of them
17:26:48 <atriq> http://xkcd.com/7/ was the last actually funny one
17:26:53 <pikhq> kmc: Which is still better than "insert nerdy reference here" sadly.
17:27:18 <pikhq> Man. It's really funny his art quality has gone *down* over the years.
17:27:40 <elliott> ugh arch upgrade fucked with my stuff
17:27:44 <elliott> why are links opening in firefox now
17:27:51 <kmc> arch deluxe
17:27:56 <pikhq> Firefox is best browser
17:28:39 <atriq> One of my friends upgraded from Safari to Internet Explorer and the speed increase was so great he's too afraid to go to any quicker browser
17:29:43 <Phantom_Hoover> i left my computer for 3 weeks and now pacman scares me
17:30:03 <atriq> elliott, apparently, Safari is really awful?
17:30:15 <elliott> i guess on windows modern ie > safari
17:30:25 <pikhq> Doesn't it include a partial port of Cocoa on Windows?
17:30:28 <elliott> Phantom_Hoover: i will derive intense satisfaction from your inability to handle the systemd transition and subsequent breaking of your installation
17:31:09 <kmc> i can't really fault xkcd's art style
17:31:34 <kmc> i mean nobody is reading it for the amazing art, but it's a consistent and recognizable look which is not terrible
17:31:36 <elliott> Sugar. Javascript Sweetened. (sugarjs.com)
17:31:44 <elliott> trying to imitate apple marketing
17:31:55 <kmc> compared to other stick figure comics on the internet which mostly look like they were drawn using the ellipse tool in ms paint
17:32:04 <elliott> AND ALSO: programmers can we stop talking about JS
17:32:10 <atriq> kmc, it's better than most of MegaTokyo's art style, which I think is cluttered
17:32:18 <kmc> stop imitating apple? then we would have to, like, think of original ideas
17:32:33 <kmc> a more relevant criticism of xkcd is that most of the jokes just don't need to be visual
17:32:42 <kmc> the prototypical bad xkcd strip is two unmoving stick figures exchanging dialogue
17:32:50 <elliott> "Is Sugar available for Node.js? Yes!"
17:32:59 <elliott> but if this thing extends javascript does it count as an interesting language??
17:33:02 <atriq> I liked the latest xkcd's art
17:33:03 <elliott> sounds like it might be legacy garbage
17:33:07 <kmc> panel 1: setup line which nobody would possibly ever say in real life
17:33:14 <kmc> panel 2: mildly amusing tweet-worthy observation
17:33:16 <pikhq> Javascript: the new C.
17:33:49 <kmc> panel 3: unnecessary post-punchline dialogue (e.g. "we live in the future", "<anything> is weird, man", "i like science a whole lot can i please be in your club guys")
17:34:35 <kmc> i wonder if any people at MIT hate RM on appropriationist grounds
17:34:44 <kmc> most of the people i've talked to who know him seem to like him
17:36:11 <kmc> randall munroe
17:37:24 <pikhq> Yeah, my experience with him (admittedly limited and via IRC) suggests he's a decent guy.
17:37:37 <elliott> kmc: did you know i've been on an old version of mosh for MONTHS???
17:37:40 <elliott> because the AUR package got renamed
17:37:50 <elliott> this is offset by the fact that I don't use mosh though
17:37:58 <kmc> you should upgrade to the just-released 1.2.3
17:38:09 <elliott> kmc: afaict there's only mosh-git
17:38:14 <elliott> gotta live on the bleeding edge
17:38:23 <elliott> there is mosh in the community repos
17:38:28 <elliott> you're Officially a Program now
17:38:51 <elliott> here by "you" I mean "mosh"
17:41:09 <kmc> https://github.com/keithw/mosh/commit/029e8bbde5e53b2e3454241143050cef27705cbe#L0R1018
17:41:12 <kmc> security is hard :(
17:41:34 <kmc> before anyone starts ranting about "rolling your own crypto", this is a third party crypto library bundled with mosh and written by professional cryptographers
17:42:35 <elliott> i think it's really interesting how "optimisations" like memcmp bailing out early are insecure
17:43:14 <kmc> i also think a Sufficiently Smart compiler would be allowed to optimize my constant_time_memcmp into something that bails out early anyway
17:43:43 <elliott> current infrastructure is just totally fucked for writing secure programs
17:43:57 <elliott> but what secure programs want is so at odds with what you want in general
17:44:04 <elliott> like my regular programs would like memcmp to be fast pls
17:44:08 <kmc> writing programs without timing side channel leaks probalby requires a domain specific language
17:44:19 <kmc> and even then you will have to be careful about cache effects, etc
17:44:40 <elliott> I guess in the end the ideal would be having all security code packaged up in libraries written in languages that are very precise about timing and so on
17:45:08 <kmc> written by a small number of experts, exposing APIs which are hard to mis-use
17:45:22 <kmc> which is how we saw ocb.c
17:45:27 <elliott> ha, an API is that is hard to mis-use
17:45:35 <kmc> a very self-contained "decrypt this packet and tell me if it's authentic" function
17:45:38 <kmc> but even experts make mistakes
17:46:35 <kmc> and yeah, it will always be possible to misuse APIs
17:46:45 <kmc> especially when we have preconditions like "never use the same nonce twice"
17:47:04 <kmc> but there is also a lot that can be done to improve this
17:47:42 <elliott> clearly linearly-typed nonces
17:49:01 <kmc> perhaps linearly-typed nonces will fix my crypto API
17:50:46 <kmc> <KeithW> As the saying goes, Britain and America are two nations divided by a common charset.
17:50:52 <kmc> atriq: http://mosh.mit.edu/
17:51:20 <kmc> that's nosh
17:51:31 <kmc> now he's telling users who can't get it to run to read his academic paper
17:51:36 <kmc> you'd think this was haskell software or something
17:52:14 <atriq> I need to find a way of running Skype from the command line
17:53:46 <hagb4rd> have some hard times trying to get these knockout.js observables to work with jquery based plugins.. thousand lines of workaround-js-code.. a nightmare
17:54:01 <kmc> atriq: yeah
17:54:11 <kmc> i switched to command line irc and aim/xmpp clients because of mosh
17:54:29 <kmc> i run them on ec2 and my sessions follow me wherever i go
17:56:25 <kmc> also it works on a lot of very marginal connections where the IRC protocol (or anything else TCP-based) is completely unusable
17:57:46 <elliott> okay so who wants to tell me how to fix links opening in firefox thanks
17:58:07 <atriq> Change your default browser
17:59:10 <atriq> Maybe you open your browser of choice and click the button that says "make this your default browser"
17:59:42 <elliott> Chromium cannot determine or set the default browser.
18:00:01 <atriq> Then you're using an obscure operating system
18:00:05 <elliott> also does anyone have email client recommendations
18:00:41 <pikhq> I personally am using Claws ATM, but I'll note that it's a little rough. And if you find something better let me know.
18:01:01 <kmc> use gmail like a normal human being
18:02:05 <pikhq> My university's email is on fucking outlook.com. I'm not using that straight.
18:02:08 <elliott> kmc: i do and am vaguely sick of it
18:02:32 <elliott> maybe i should just use mutt, 10 billion linux nerds can't be wrong
18:02:43 <elliott> even if threaded discussion sort of sucks
18:03:02 <kmc> http://twitter.com/1990sLinuxUser
18:03:13 <kmc> wish this was still updating
18:05:13 <pikhq> "Why has systemd deprecated support for /usr on a different filesystem!!"
18:05:43 <pikhq> My sensibilities run vaguely close to "90's Linux User", but I applaud that of systemd. Except that it didn't go far enough.
18:05:56 <pikhq> ln -s / /usr is the only right way
18:06:06 <kmc> what. could. go. wrong.
18:06:16 <pikhq> In my testing, nothing at all.
18:06:20 <kmc> seriously?
18:06:34 <kmc> you a crazy motherfucker
18:06:36 <pikhq> And it's even FHS conformant.
18:07:07 <pikhq> About the only weirdness is you get a few more directories in /
18:07:14 <pikhq> e.g. /x86_64-unknown-linux-musl
18:08:05 <elliott> i have come to prefer separate /usr
18:08:29 <kmc> i guess anything that traverses directories already needs to understand symlink loops
18:08:37 <elliott> there seems to be enough semantic distinction between what is in /usr and e.g. the stuff in /var
18:08:48 <elliott> and i don't think having a read-only /usr is inherently an unreasonable idea
18:09:07 <pikhq> Also, I see nothing wrong with /run at all.
18:09:22 <kmc> i kind of want to compress /usr
18:09:30 <kmc> for my ssd
18:09:32 <atriq> Because I AM BLIND ALL ALONG
18:09:45 <elliott> speaking of 1990s linux users
18:09:45 <pikhq> Makes perfect sense to merge run-time transient state into a single dir.
18:09:46 <atriq> (disclaimer: I'm not blind)
18:09:49 <elliott> did I ever get X11 working on that floppy linux distro
18:10:18 <atriq> pikhq, what's you're reaction to me, elliott, and Phantom_Hoover all being from the 90's
18:10:20 <elliott> i managed to get the latest kernel and a crappy shell and some vaguely crappy standard utilities (written in asm) working, I know that much
18:10:27 <olsner> kmc: all modern file systems have transparent compression
18:10:30 <elliott> uh i think pikhq was born in the 90s too
18:10:36 <atriq> THE MYSTERY DEEPENS
18:10:37 <elliott> oh and by "working " I mean "in qemu"
18:10:38 <pikhq> I was born in 1990, so yes.
18:10:59 <atriq> I'm 18 in two weeksz
18:11:00 -!- atriq has quit (Quit: Leaving).
18:11:09 <pikhq> elliott: You're not getting a (recent-ish) build system in that space, sadly.
18:11:09 <elliott> oh right that's why i asked thingy
18:11:13 <kmc> olsner: really?
18:11:13 <elliott> pikhq: you know about wayland right
18:11:23 <pikhq> Best I was able to do was an 11M squashfs.
18:11:30 <pikhq> elliott: Only vaguely.
18:11:30 <kmc> olsner: do you mean automatically or with some command per-file
18:11:40 <pikhq> I have no idea if it + xwayland is larger or smaller than X11.
18:11:52 <kmc> http://en.wikipedia.org/wiki/Ext4 says "no" for ext4
18:11:54 <olsner> btrfs has a mount flag for compression, zfs lets you set it per file system
18:11:54 <pikhq> Though, bootstrap-linux currently static links all the binaries.
18:11:56 <elliott> i fell asleep at one point so if you did
18:12:02 <pikhq> elliott: I didn't.
18:12:08 <kmc> http://www.ohloh.net/p/e4z
18:12:11 <elliott> i suspect it'd probably be larger
18:12:20 <elliott> just because wayland depends on fancy kernel graphical stuff that i turned off
18:12:31 <kmc> btrfs has it though
18:12:38 <pikhq> (I'm just too lazy to get the crosscompiler build scheme done "right", so it can actually do dynamic linking)
18:12:39 <elliott> anyway maybe i would be satisfied with two floppies
18:12:43 <elliott> one with X and a build chain and one with everything else
18:12:58 <pikhq> GCC's fucking huge.
18:13:03 <elliott> but I think it'd be really cool if you could get a Linux system that's fully "bootstrapped" in that it comes with everything you need to download and rebuild itself in a graphical environment in 1.4 megs
18:13:04 <kmc> (bak later)
18:13:16 <elliott> with some ridiculous compression and brutal feature trimming
18:13:30 <elliott> pikhq: are the patches to compile the kernel with tcc kept up-to-date
18:13:43 <pikhq> bootstrap-linux is currently 31M...
18:14:21 <pikhq> At some point in the next year I anticipate landley actually getting tcc (well, more like qcc) functional, at least.
18:14:34 <pikhq> Though toybox probably comes first.
18:14:54 <elliott> <pikhq> bootstrap-linux is currently 31M...
18:15:03 <elliott> I think I got my kernel down to like 300-500 kilobytes compressed
18:15:11 <elliott> as in, it actually booted in qemu and ran the stuff
18:15:19 -!- zzo38 has joined.
18:15:27 <pikhq> 3.1M but I have *not* cleaned up the kernel config at all.
18:15:30 <elliott> also I had no filesystems except in ram
18:15:42 <elliott> i just used the embed-a-directory-tree-directly-into-the-kernel stuff
18:15:48 <elliott> so it got compressed with the kernel image and loaded into ram
18:16:01 <elliott> in fact I think the kernel had no idea how to load floppies at all
18:16:09 <elliott> it just relied on the bootloader loading everything it needed or whatever
18:16:33 <elliott> arguably it would be better to try and stuff floppy support into the kernel
18:16:46 <elliott> so that you could boot it, recompile the sources from scratch (given a copy of them), and then write a new floppy with it
18:17:50 <pikhq> Hmm, the cpio.xz is a mere 7.9M...
18:18:34 <elliott> it gets something like exponentially harder to get things smaller as you go
18:19:27 <pikhq> I'd probably do well to switch on dynamic linking.
18:19:33 <elliott> pikhq: do you think the basic X11 protocol is simple enough that I could implement a tiny X server that outputs to the framebuffer without wanting to kill myself or spending a year on it
18:19:55 <elliott> not sure dynamic linking would help... you'd include unused library functions, and compression should already handle most of the redundancy, right
18:20:04 <pikhq> Removing the kernel from the cpio and some documentation got it down to 4.3M
18:21:23 <elliott> anyway probably this would be a lot easier with some like 2.4 kernel
18:21:53 <pikhq> Major benefit of dynamic linking is that binutils has a *lot* of programs which use libbfd...
18:25:41 <olsner> are there no smaller alternatives for binutils?
18:25:51 <Sgeo> I think I found my singing voice
18:26:32 <pikhq> olsner: Not really.
18:26:43 <pikhq> And I even went and beat a lot of bloat out of it with a giant stick.
18:27:03 <pikhq> -ffunction-sections -fdata-sections -Wl,--gc-sections
18:27:20 <Sgeo> Why does elliott need a tiny X server?
18:28:28 -!- epicmonkey has quit (Remote host closed the connection).
18:28:44 -!- epicmonkey has joined.
18:28:56 -!- epicmonkey has quit (Remote host closed the connection).
18:29:24 -!- epicmonkey has joined.
18:29:30 -!- epicmonkey has quit (Remote host closed the connection).
18:30:50 -!- epicmonkey has joined.
18:36:46 <olsner> pikhq: I'm not sure that's the "giant" stick, but definitely a start
18:37:05 <pikhq> olsner: From some binutils binaries it removes nearly a meg.
18:40:32 <pikhq> Also did some more autoconf fighting to convince it not to install libiberty.
18:41:05 <pikhq> (if you don't install the headers, you don't get to install the damned library!)
18:41:50 <pikhq> (libiberty is only installed as a .a anyways, meaning you don't even get the excuse of "it's a utility library all binutils needs")
18:44:26 -!- jix has joined.
18:58:26 <elliott> pikhq: imo rewrite binutils
19:00:54 <pikhq> GCC's a bit more important to rewrite IMO.
19:01:09 <pikhq> binutils is bloated. GCC is bloated and stupidly fragile.
19:01:25 <FreeFull> Or you could use a different compiler
19:01:29 -!- atriq has joined.
19:01:36 <pikhq> Name one that builds Linux.
19:08:50 <fizzie> Hasn't clang been used to compile a "working" kernel already?
19:09:00 <olsner> does clang fit on a floppy?
19:09:27 <elliott> fizzie: Needs patching, I think. Like icc.
19:10:04 <zzo38> GNU stuff tends to be bloated
19:13:18 -!- monqy has joined.
19:13:45 <fizzie> There's a BOM in my UTF-8 file.
19:16:15 <pikhq> clang's *larger* than GCC.
19:16:22 <barts> olsner: depends how you define "to flop"
19:16:32 <pikhq> Though GCC will probably catch up, and that quickly.
19:17:03 <pikhq> The only advantage GCC has over clang in binary size is that GCC is in C, and GCC isn't in C anymore.
19:17:34 <pikhq> And clang has the (decent) excuse of being a full on C static analysis tool that happens to have a code generator attached.
19:17:46 <olsner> anyway, is the whole compiler and toolchain required to be on the floppy as well?
19:17:47 <zzo38> GCC isn't in C anymore?
19:18:03 <pikhq> zzo38: They switched to requiring C++ in git recently.
19:18:19 <pikhq> GCC 4.8 will be C++.
19:18:45 <zzo38> OK, but they should still compile C codes as well as C++ codes too
19:19:01 <pikhq> It does still function as a C compiler.
19:19:07 <pikhq> It's just written *in* C++ now.
19:19:28 <zzo38> GCC also supports some targets that LLVM does not support, though, such as MMIX
19:21:13 -!- AnotherTest has quit (Quit: Leaving.).
19:25:38 -!- heroux has quit (Read error: Operation timed out).
19:30:21 -!- heroux has joined.
19:35:48 -!- shubshub has joined.
19:39:36 <elliott> pikhq: do you know anything about ncurses
19:40:29 -!- hagb4rd has quit (Read error: Operation timed out).
19:41:55 <fizzie> Nwitches cast ncurses.
19:42:35 -!- hagb4rd has joined.
19:42:36 <kmc> the BOM is also a zero-width non-breaking space
19:42:45 <kmc> though there's now a different codepoint you're supposed to use for that
19:45:56 <fizzie> Well, it's immediately at the start of the file, there's no real reason for a zwnbsp, and (I think; haven't verified) it's confusing mplayer's srt subtitle parser because it expects "1", not "\ufeff1", at start. (Or possibly it's not autoloaded for some other reason.)
19:46:41 <pikhq> All Microsoft's fault.
19:47:32 <pikhq> (Notepad expects and emits a UTF-8 BOM for UTF-8 text)
19:48:03 <fizzie> "Failed to open subtitle demuxer", it says, if I explicitly -subfile it. (VLC is happy with it though.)
19:51:20 <fizzie> This was from the Finnisn national broadcasting company's web thing (YLE Areena), though I'm really not sure if it's their fault, or the YLE-specific rtmpdump script+plugin's fault.
19:51:35 <fizzie> urllib.urlretrieve(url, subtitlefile.encode(enc, 'replace'))
19:51:38 <fizzie> self.add_BOM(subtitlefile)
19:51:44 <fizzie> Okay, that's quite clear.
19:52:21 <fizzie> I'm assuming some player or another is using the BOM to go all "hey, these subs are in UTF-8 and not in our legacy 8-bit encoding".
19:54:58 <Sgeo> pikhq, Microsoft has done some good though. Isn't XMLHttpRequest from IE?
19:54:59 <fizzie> Also I think the web thing used to have burned-in subtitles in the RTMP video stream, it's kind of nice that they've switched it to an external SRT file presumably loaded by the official Flash player.
19:55:09 <kmc> heh, that seems likely
19:55:39 <kmc> btw python urllib sucks ass
19:55:43 <kmc> 'requests' is a much nicer library
19:55:53 <Sgeo> Aren't you supposed to use urllib2?
19:56:10 <kmc> someone probably thinks so
19:56:14 <kmc> but requests is nicer than urllib2
19:56:30 <Sgeo> I meant over urllib
19:59:48 <fizzie> Sgeo: It imports urllib and urllib2.
20:00:34 <fizzie> I seem to recall you used some things from the old one. But I haven't used it much. (It wasn't a nice library.)
20:02:27 -!- shubshub has quit (Remote host closed the connection).
20:03:30 <fizzie> yle-dl changelog, 1.99.7: "Add byte order mark into subtitle files. Some players don't show umlaut characters correctly without it."
20:04:44 <zzo38> How fast would CPU having an internal memory and an external memory, where the internal memory is partially ROM and partially RAM and also includes the external address bus and data bus as locations in the internal memory, it execute instructions from the internal memory using VLIW instructions and those are used like microcodes to execute external instructions?
20:37:37 -!- MoALTz has joined.
20:37:44 * Sgeo is poking a giant gaping hole in the Clojure bot's sandbox in #clojure
20:37:52 <Sgeo> Although someone else discovered the hole, I'm exploring it
20:42:34 -!- epicmonkey has quit (Ping timeout: 240 seconds).
20:46:06 -!- carado has joined.
20:50:38 <zzo38> Now I figured out how to beat the demon in Dungeons&Dragons game, I think, although we need to beat the chancellor first just because it is more important.
20:50:50 <zzo38> We need to somehow tilt the demon's castle.
20:51:37 <zzo38> Like how Kaiji managed to tilt the entire casino in order to win at a pachinko game.
20:52:27 <atriq> Like in New Super Mario Bros Wii?
20:52:41 <atriq> It may or may not have happend in New Super Mario Bros Wii
20:52:45 <atriq> I'm only on world 2
20:53:14 <zzo38> I don't know if it happens in New Super Mario Bros Wii, I have not played that game.
20:53:56 <lambdabot> forall a b. (a -> b -> b) -> b -> [a] -> b
20:54:02 -!- carado has quit (Ping timeout: 255 seconds).
20:54:03 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: :t: not found
20:59:16 <zzo38> When I was in the castle last time, I found that it was not tilted, and there is also water on the ceiling. If I use anti-magic in there (I know where to get such a device), the water might fall down and flood everything. Or maybe it is even artificial gravity and something will go wrong with that too...
21:00:47 <atriq> Do you have any manipulate water spells?
21:01:03 <zzo38> I can't use those in a anti-magic field!
21:01:16 <atriq> ...manupulate water prayers?
21:01:30 <zzo38> I can't use those in a anti-magic field either!
21:01:43 <atriq> A very large sponge?
21:01:54 <olsner> erect an anti anti-magic field field
21:02:23 <zzo38> No, my plan was to tilt the building so that all the water would go to one side
21:02:35 <zzo38> So that it is shallow on one side and deep on one side
21:02:40 <atriq> One day I may actually play D&D
21:03:12 <zzo38> What character do you prefer to play?
21:03:31 <atriq> Probably a cleric type
21:03:40 <elliott> *Main> :kind! Foldr Pair Unit (Map Show '[Int, String])
21:03:40 <elliott> Foldr Pair Unit (Map Show '[Int, String]) :: Constraint
21:03:40 <elliott> = Pair (Show Int) (Pair (Show [Char]) ())
21:03:54 <zzo38> I do happen to know the demon's age if that ever becomes important (I know by psychic impressions on a chancellor's guard's sword)
21:03:59 <elliott> (class (a, b) => Pair a b; instance (a, b) => Pair a b); type family Unit :: Constraint; type instance Unit = ())
21:04:39 <zzo38> atriq: There are different versions of D&D game; I am playing D&D 3.5 edition. One day I may complete the writing of Icosahedral RPG rules; much of what I have in my mind I have not typed.
21:04:56 <atriq> I've got the 4th ed player's handbook
21:05:18 <zzo38> I don't really like 4th edition, many other people also don't like it
21:05:42 <atriq> I dunno, I've never actually played it
21:05:49 <atriq> Or 3.5 or any other D&D
21:06:00 <atriq> I've also got the Diana: Warrior Princess book
21:06:53 <zzo38> I also happen to know that the demon's magic powers are less powerful the farther away he is from his castle (I know this from the illithid savant's "lore" class feature); my idea initially was to try to lure the demon to the opposite side of the Earth.
21:07:15 <atriq> That'd take a while
21:07:26 <atriq> It might be quicker to move his castle
21:07:28 <zzo38> Yes I know, that is one reason why I won't do it
21:08:41 <elliott> (while trying to write mapElimH :: (All c ts) => (forall a. (c a) => a -> r) -> HList ts -> [r])
21:09:45 <zzo38> I know a shortcut to the inside of the castle, which only works at nighttime, though. I may need a team to come in this way, exit through the door or something, and weaken the foundation, to tilt the castle.
21:14:42 <zzo38> But at first I need to get rid of the assassins, and I have some plan related to the phase of the moon and pretending to be trapped by the illithid haters society and miscast a spell intending to communicate with someone else, so they will believe me and try to kill me, but it is a illusion so that way I can trap them.
21:14:58 <zzo38> And then after that, I somehow need to trap the chancellor too, and rescue the king.
21:16:08 <zzo38> I cannot enter the king's castle because only the chancellor's guards are seen at the entrances; the king's guards are no where to be seen. So instead we just try something else, such as, sending messages secretly to the royal scribes and so on.
21:16:26 <zzo38> Hopefully the chancellor's guards have not infiltrated them too!
21:20:05 <atriq> How much do you know about the Chancellor?
21:20:15 <atriq> And how much does he know about you?
21:21:34 <elliott> allThrough :: (All p (x ': xs)) => (forall ys. (All p ys) => rep ys -> r) -> rep xs -> r
21:21:36 <elliott> even this isn't helping :(
21:32:19 -!- mindlessDrone1 has joined.
21:33:40 -!- mindlessDrone has quit (Ping timeout: 268 seconds).
21:33:51 -!- nys has joined.
21:36:26 <zzo38> I know a few things about the chancellor and he knows a few things about me. I do happen to know the chancellor is evil and I know his age too, but I do not know his location. The chancellor probably knows a few things about me or at least his guards do; they hired an assassin to kill me.
21:36:37 <zzo38> And I know exactly how much money they got paid for that job, too.
21:37:09 <atriq> Could you outbid the assassin?
21:37:24 <kmc> shachaf: Did you get your Stripe web CTF shirt yet?
21:39:03 <shachaf> I was thinking it was just me, since they never managed to get it to me last time.
21:39:09 <kmc> yeah, not just you
21:39:14 <kmc> i should bug gdb about it
21:39:24 <kmc> or perhaps i could... de-bug gdb?!?!?
21:39:50 -!- mindlessDrone1 has left.
21:41:06 <shachaf> Occasionally I go to their various events, so I might bug him then.
21:45:33 <zzo38> atriq: I have not enough money to outbid the assassin.
21:45:57 * kmc is currently mashing four potatoes
21:46:01 <kmc> shachaf: what are their events like?
21:46:01 <zzo38> Even if I did have enough, I do not know where the assassin's guid is.
21:46:58 <atriq> Do you know where there's a thieves' guild?
21:49:11 <elliott> *Main> mapElimH' showTo (HCons 1 (HCons "abc" HNil))
21:49:44 -!- atriq has quit (Remote host closed the connection).
21:50:20 <zzo38> I don't know a thieves' guild either but I don't think I need one of those.
21:50:53 <FreeFull> elliott: is HCons like Lisp's cons?
21:51:19 <kmc> whatever it is, i'm sure lisp's is better because it's lisp
21:51:39 <kmc> these are type level lists right
21:51:47 <kmc> except that you've used some insane GHC 7.4 black magic
21:51:54 <kmc> or am i totally off base
21:52:31 <elliott> it's actually 7.6 black magic at this point
21:52:57 <elliott> kmc: http://sprunge.us/BJHh
21:53:10 <elliott> took the Show thing from an SO answer and modified it and am trying to get it to use mapElimH
21:54:52 -!- Nickname_ has joined.
21:55:40 <elliott> next up: toListH :: (Homogeneous ts a) => HList ts -> [a]
21:56:02 <Sgeo> GODDAMNNIT APPARENTLY THERE"S NO SUCH THINGS AS HEADPHONES THAT WON"T BREAK IN MY CARE
21:56:11 -!- MoALTz has quit (Quit: Leaving).
21:56:11 <kmc> that is my experience as well
21:56:14 <kmc> it is a matter of when, not if
21:56:16 <elliott> maybe i want something more like
21:56:22 <kmc> but all things decay Sgeo
21:56:34 <zzo38> If atriq is ever come back on let them to read the recent text on my Dungeons&Dragons game if interested, or anyone else read if interesting perhaps you comment on my plans too
21:56:38 <elliott> toListH :: HList ts -> Maybe () [] (Homogeneous ts)
21:56:46 <Sgeo> Oh, I think it was the video, not the headphones
21:56:53 <elliott> oh I actually do want a typeclass I think
21:56:54 <zzo38> Or even complain about spelling and grammatical errors if you want to
21:57:59 <kmc> alcohol tobacco and firearms
21:58:05 <elliott> uhh what's the simplest way of writing a foldr that checks all elements of a list are equal
21:58:05 <kmc> essential ingredients for haskell programming
21:58:12 <olsner> kmc: ... and explosives, nowadays
21:58:26 <olsner> http://en.wikipedia.org/wiki/Bureau_of_Alcohol,_Tobacco,_Firearms_and_Explosives
21:59:02 <zzo38> What type family do you need?
21:59:47 <elliott> something along the lines of toListH :: (Homogeneous ts) => HList ts -> [Elem ts]
22:00:29 <elliott> that doesn't work because HNil is polymorphic
22:01:24 -!- Nickname_ has quit (Quit: Alt-F4).
22:02:07 <elliott> toListH :: (All ((~) a) ts) => HList ts -> [a]
22:02:34 <elliott> toListH :: (All ((~) a) ts) => HList ts -> [a]
22:03:02 <elliott> so now just to separate mapElimH' and toListH
22:03:56 <elliott> toListH :: (All ((~) a) ts) => HList ts -> [a]
22:03:56 <elliott> toListH (HCons x xs) = x : toListH xs
22:03:57 <zzo38> One thing Haskell doesn't have but would be like is classes with automatic instances, you cannot define your own instances you can only use the instances made automatically. Typeable should be made into such a class. But I have wanted to make other classes having this feature too.
22:04:03 <elliott> Constraint Constraint Pair () (Map Constraint * (* ~ a) ts)) =>
22:07:05 <shachaf> kmc: You were at one of them, weren't you?
22:07:06 <lambdabot> shachaf: You have 1 new message. '/msg lambdabot @messages' to read it.
22:15:20 <kmc> yeah i was at the first ctf wrapup
22:24:47 <mroman> zzo38: Why would you want that?
22:29:00 <zzo38> mroman: It would be useful sometimes, when you want to indicate that certain features of the type are available, as part of a constraint, Typeable is one example of such thing, although there are others, such as types belonging to another class but without exposing its methods, etc
22:30:53 <olsner> "Seriously, what moron in this day and age is not familiar with the limitations of aclocal and the best practices to use system-wide m4 macros?" :D
22:31:42 <kmc> http://www.nytimes.com/2012/10/20/us/in-silicon-valley-perks-now-begin-at-home.html
22:31:58 <kmc> let's feed our programmers and do their laundry and clean their rooms and make sure they don't have to be capable of functioning as adults in any way
22:32:44 <kmc> programmers are children right, it would be crazy to just give them money and expect them to spend that money in ways they see fit
22:33:12 <zzo38> Not all programmers are children. Some may be.
22:34:18 <elliott> I need a way to eliminate via iso here
22:34:32 <kmc> i think there is a learned helplessness aspect too
22:34:55 <kmc> when all your daily needs are met by The Company and all your friends and housemates work for The Company and all your social events are organized by The Company, it makes it that much harder to quit
22:36:57 <zzo38> That is why you need to quit.
22:37:11 <Sgeo> elliott, Phantom_Hoover monqy mapdate
22:49:45 -!- ais523 has quit.
23:30:41 -!- Vorpal has quit (Read error: Operation timed out).
23:36:25 -!- Nisstyre-laptop has quit (Ping timeout: 246 seconds).
23:38:35 -!- Nisstyre-laptop has joined.
23:40:27 -!- monqy has quit (Quit: hello).
23:41:51 -!- monqy has joined.
23:51:57 <shachaf> kmc: Have you had strawberries with balsamic vinegar?
23:54:03 <shachaf> copumpkin: I don't think I've had that.
23:54:35 <kmc> everything is good with balsamic
23:58:17 <elliott> test :: ((forall a. (Show a) => a -> String) ~ (Int -> String)) => ()
23:58:30 <elliott> (a ~ String -> String, a ~ Int -> String)
23:58:38 <elliott> and a = forall a. (Show a) => a -> String
00:04:46 <kmc> i haven't had strawberries with balsamic though
00:04:48 <kmc> but i hear it's good
00:05:21 <shachaf> kmc: Well, now you have a mission in life!
00:10:43 <Phantom_Hoover> when i was little i tried balsamic vinegar with balsamic vinegar
00:11:58 * Sgeo is watching The Myth of the Genius Programmer
00:12:23 <Phantom_Hoover> you need an entire video to tell you that genius is bullshit?
00:14:27 -!- Arc_Koen has joined.
00:17:37 -!- Phantom_Hoover has quit (Remote host closed the connection).
00:18:27 -!- Frooxius has quit (Ping timeout: 276 seconds).
01:02:27 <elliott> <elliott> test :: ((forall a. (Show a) => a -> String) ~ (Int -> String)) => ()
01:02:27 <elliott> <elliott> why is this not ok
01:02:27 <elliott> <elliott> is there a ~ that means
01:02:27 <elliott> <elliott> "can unify with"
01:02:28 <elliott> <elliott> (a ~ String -> String, a ~ Int -> String)
01:02:30 <elliott> <elliott> and a = forall a. (Show a) => a -> String
01:02:57 <shachaf> I don't know if there's such a thing. It seems kind of weird.
01:13:17 <shachaf> elliott: Oh no, race condition!
01:13:30 <shachaf> What if someone sent you a good message right before the @clear-messages?
01:16:06 <shachaf> @tell monqy what have you done?!
01:16:41 <lambdabot> monqy: You have 1 new message. '/msg lambdabot @messages' to read it.
01:17:07 <Arc_Koen> uh, oh, can you put comments in urls?
01:17:21 <Arc_Koen> like, using '.' inside of the url and everything after it is ignored
01:17:37 <shachaf> I bet lambdabot is doing edit distance in UTF-8 bytes. :-(
01:28:42 -!- Arc_Koen has quit (Quit: Arc_Koen).
01:43:50 <zzo38> I also think "can unify with" might sometimes be useful and the automatic classes I suggested could be used to make it, I think.
01:47:32 <zzo38> Automatic classes if used in Ibtlfmm (instead of only Haskell) could do other things too, including, check if it is not a specific type, trex records, whatever, but in any case they could only be used with the class is specified in the constraint that your function is using it
02:11:12 <shachaf> kmc: I was reading a book that denoted the empty set by □.
02:23:22 <elliott> shachaf: It's because you forgot to quantify the "a".
02:24:14 <shachaf> elliott: For some reason I thought it would be "scoped" from the "data" but that's a bit silly.
02:24:31 <elliott> yeah, GADT headers are weird
02:24:35 <elliott> you can just put a kind signature there instead
02:24:40 <elliott> Coq actually "scopes" it like that
02:25:20 <shachaf> I remembered that there was a difference between "data Foo (n:Nat) : * -> *" and "data Foo : Nat -> * -> *" or "data Foo (n:Nat) a : *" or something.
02:25:25 <shachaf> But i guess that was in Agda.
02:28:45 <shachaf> elliott: So did you know 18:49 <Saizan> Either x y = exists b. if b then x else y; (x,y) = forall b. if b then x else y
02:29:27 <elliott> shachaf: Sure, that makes perfect sense.
02:29:44 <shachaf> I didn't say it doesn't make sense.
02:30:21 <elliott> Well, I mean... what is there to know?
02:31:44 <elliott> data To' p f = To' (forall a. (p a) => a -> f a)
02:31:44 <elliott> mapH :: (All p ts) => To' p f -> HList ts -> HList (Map f ts)
02:31:54 <elliott> shachaf: What can I do here if I want to set p = Show, and map show over the list?
02:32:05 <elliott> But what I want is (Const String), but you can't do that.
02:32:13 <elliott> Since type Const a b = a can't be partially applied.
02:32:22 <elliott> shachaf: Can you think of a decent way to generalise the type of mapH so this works?
02:32:38 <elliott> data To'' p = To'' (forall a r. (p a r) => a -> r)
02:32:45 <elliott> mapH' :: ??? => To'' p -> HList ts -> HList ???
02:32:54 <elliott> class (Show a, r ~ String) => Shoe a r
02:33:03 <elliott> instance (Show a, r ~ String) => Shoe a r
02:33:11 <elliott> but I don't see how that would work.
02:33:15 <Sgeo> Yes, I'd say that it's certainly the most thoughtful and intelligent traffic signal I've ever met.
02:33:17 <elliott> As in I don't know what the ???s would be.
02:33:20 <elliott> And anyway it feels wrong.
02:34:43 <elliott> Well, if you think of any, let me know.
02:35:00 <elliott> (I know I can just do newtype Const a b = Const { getConst :: a } and do To' (Const . show) instead, but that leads to problems later.)
02:35:08 <elliott> (Since then I want to use toListH :: (All ((~) a) ts) => HList ts -> [a].)
02:35:12 <elliott> (But Const a b and Const a c don't unify.)
02:36:35 <shachaf> 19:36 <copumpkin> I just don't see the point
02:36:39 <shachaf> (Referring to HLists, I'm sure.)
02:37:56 <elliott> shachaf: This isn't about HLists, though.
02:38:14 <elliott> It's about figuring out how this kind of stuff can be used at the type-level.
02:40:28 <elliott> <ion> nooodl: 1, 1, …? Everyone knows the Fibonacci sequence begins with 89, -55.
02:41:16 <elliott> shachaf: If I could somehow specify that I want p to have the fundep a b | a -> b, then I think
02:41:17 <elliott> <elliott> data To'' p = To'' (forall a r. (p a r) => a -> r)
02:41:17 <elliott> <elliott> mapH' :: ??? => To'' p -> HList ts -> HList ???
02:41:28 <elliott> shachaf: But you can't do that. But that's what type families are.
02:41:28 <ion> > fix ((89:) . (-55:) . zipWith (+) <*> tail)
02:41:29 <lambdabot> Couldn't match expected type `a1 -> a' against inferred type `[t]'
02:41:42 <ion> > fix ((89:) . (-55:) . (zipWith (+) <*> tail))
02:41:44 <lambdabot> [89,-55,34,-21,13,-8,5,-3,2,-1,1,0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,6...
02:41:44 <elliott> shachaf: But an associated type family doesn't work, because then you have to pass the associated type family as a type argument to To''.
02:41:53 <elliott> shachaf: And then you're trying to partially-apply it.
02:41:59 <elliott> So you run into the same problem.
02:42:23 <ion> elliott: Just a joke inspired by the debate about whether the sequence begins with 1 1 or 0 1.
02:43:39 <shachaf> fix ((-1:) . (-1:) . (zipWith (+) <*> tail))
02:43:50 <shachaf> > fix ((-1:) . (-1:) . (zipWith (+) <*> tail))
02:43:52 <lambdabot> [-1,-1,-2,-3,-5,-8,-13,-21,-34,-55,-89,-144,-233,-377,-610,-987,-1597,-2584...
02:43:55 <shachaf> > fix ((0:) . (0:) . (zipWith (+) <*> tail)) -- maximally correct
02:43:57 <lambdabot> [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,...
02:44:37 <ion> > fix ((1:) . (0:) . (zipWith (+) <*> tail))
02:44:39 <lambdabot> [1,0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,109...
02:45:27 <shachaf> > fix ((1:) . (((sqrt 5 + 1)/2):) . (zipWith (+) <*> tail)) -- this is actually the right one
02:45:29 <lambdabot> [1.0,1.618033988749895,2.618033988749895,4.23606797749979,6.854101966249685...
02:46:34 <shachaf> > (phi + 1 :: CReal) / phi == phi / 1
02:47:05 <shachaf> > (phi + phi + 1 :: CReal) / (phi + 1) == (phi + 1) / phi
02:48:22 <kmc> "It was a dotfile virus (communicated via infecting workstations) to advertise a fraternity party"
02:49:09 <elliott> shachaf: You gonna stand up and take that from Nereid???
02:50:03 <shachaf> elliott: I sure showed that Nereid, eh?
02:50:28 <Jafet> shachaf is fibbing.
02:53:31 <elliott> I can make a type family indexed by constraints.
02:53:44 <zzo38> Correspond is one of my useful spells it can be used for various things including to determine your longitude.
02:53:54 <zzo38> Let's see if you understand how I might beat the assassin with the Correspond spell and the phase of the moon.
02:54:13 <zzo38> elliott: What is that useful for, though?
02:57:06 <elliott> *Main> toListH (mapH' showTo'' (HCons 1 (HCons 2 HNil)))
02:57:17 <elliott> *Main> toListH (mapH' showTo'' (HCons 1 (HCons "abc" HNil)))
02:58:28 <elliott> Do I win the "oversimplify the example" game?
02:59:17 <ion> > let fibs = (go (-) 1 (-1), 0, go (+) 1 1) where { go f a b = fix ((a:).(b:).(zipWith f<*>tail)) }; right (ls,x,r:rs) = (x:ls,r,rs); left (l:ls,x,rs) = (ls,l,x:rs); iterateN n = appEndo . Data.Foldable.foldMap Endo . replicate n in ((\(_,_,rs) -> rs) . iterateN 10 right . iterateN 20 left) fibs
02:59:20 <ion> > let fibs = (go (-) 1 (-1), 0, go (+) 1 1) where { go f a b = fix ((a:).(b:).(zipWith f<*>tail)) }; right (ls,x,r:rs) = (x:ls,r,rs); left (l:ls,x,rs) = (ls,l,x:rs); iterateN n = appEndo . Data.Foldable.foldMap Endo . replicate n in ((\(_,_,rs) -> rs) . iterateN 10 right . iterateN 20 left) fibs
02:59:22 <lambdabot> [34,-21,13,-8,5,-3,2,-1,1,0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,...
02:59:30 <elliott> *Main> :t \to -> toListH . mapH' to
02:59:35 <elliott> (Map Constraint * (* ~ a) (MapResult p ts)),
02:59:37 <elliott> Foldr Constraint Constraint Pair () (Map Constraint * p ts)) =>
02:59:57 <shachaf> type Constrain't = Constraint -> Void
03:00:37 <elliott> I think this type is going to make something like no sense at all.
03:00:44 <monqy> what are you doing.................
03:00:56 <elliott> monqy: toListH :: (All ((~) a) ts) => HList ts -> [a]
03:01:00 <shachaf> monqy: something "pretty cool"
03:01:09 <elliott> monqy: HList '[String, String, String] is an ok input to toListH.
03:01:13 <elliott> monqy: but HList '[String, Int] isnt'.
03:01:29 <elliott> instance (a, b) => Pair a b
03:01:29 <elliott> type family Unit :: Constraint
03:01:29 <elliott> type All p xs = Foldr Pair Unit (Map p xs)
03:01:32 <elliott> monqy: "that's the definition of All"
03:01:36 <ion> Longcat is long. https://sphotos-a.xx.fbcdn.net/hphotos-ash3/557771_483841354969839_129064845_n.jpg
03:01:44 <elliott> Pair is just (,) on constraints and Unit is just () on constraints but
03:01:50 <elliott> it doesn't work if you do that
03:01:53 <elliott> so I have to redefine them
03:02:24 <elliott> shachaf: (() :: Constraint) works but just () doesn't
03:02:25 <zzo38> What if you use type instead to define it?
03:02:26 <shachaf> It thinks it's the wrong kind?
03:02:32 <elliott> and ((,) :: Constraint -> Constraint -> Constraint) doesn't work at all
03:02:37 <elliott> apparently only (a, b) is overloaded, not (,) itslef
03:02:46 <elliott> <elliott> type family Unit :: Constraint
03:02:46 <elliott> <elliott> type instance Unit = ()
03:02:48 <elliott> this is because you can't do
03:02:52 <elliott> type Unit :: Constraint = ()
03:02:58 <elliott> it's the only way to give a type synonym a kind signature
03:02:59 <shachaf> type Unit = (() :: Constraint)
03:03:12 <shachaf> You need the parentheses on the right side, though.
03:03:29 <zzo38> Why did they make like that? It ought to work.
03:03:36 <lambdabot> forall a b. (a -> b -> b) -> b -> [a] -> b
03:04:05 <elliott> foldrH :: (All p ts) => (forall a. (p a) => a -> b -> b) -> b -> HList ts -> b
03:04:08 <elliott> ok so this works but it's obviously not ideal
03:04:13 <elliott> we want a fold on the type-level ts
03:04:33 <elliott> so foldrH :: ??? -> HList ts -> Foldr f z ts
03:05:21 <elliott> I guess (forall a. (p a) => a -> b -> f a b)
03:05:34 <elliott> I guess (forall a b. (p a) => a -> b -> f a b)
03:05:37 <elliott> though that fails to express that the "b" comes from the fold :/;
03:09:23 <elliott> shachaf: Hey, isn't this just induction?
03:09:29 <elliott> monqy: You use Coq a lot, right?
03:09:36 * shachaf wasn't paying many attentions.
03:09:39 <elliott> monqy: What type does Coq infer for induction on the standard cons list type?
03:09:48 <elliott> (Or the general recursion scheme, I guess; practically the same for my purposes.)
03:10:06 <elliott> copumpkin: How's yours definde?
03:10:13 <elliott> copumpkin: Mine doesn't involve any typeclasses!
03:10:22 <elliott> copumpkin: Just type families with results that are used as constraints.
03:10:29 <elliott> It's worked out just great so far.
03:11:03 <monqy> elliott: list_rect
03:11:03 <monqy> : forall (A : Type) (P : list A -> Type),
03:11:03 <monqy> (forall (a : A) (l : list A), P l -> P (a :: l)) ->
03:11:04 <monqy> forall l : list A, P l
03:11:28 <monqy> is that what you wanted?
03:11:38 <elliott> monqy: time to write that in haskell..........
03:12:05 <elliott> copumpkin: if i close my eyes and pretend hard enough it will be agda
03:13:50 <elliott> monqy: foldrH :: (All p ts) => (forall a us. (p a) => a -> f us -> f (a ': us)) -> f '[] -> HList ts -> f ts
03:14:51 <elliott> it would be nice to represent the ordering somehow rather than having it be as vague as (All p ts)
03:15:05 <elliott> would need more indexy types for that I guess
03:17:34 <kmc> i wish i were cool enough to use ZFS
03:18:06 <shachaf> are you cool enough to use btrfs
03:18:15 <kmc> is btrfs fully baked yet?
03:18:22 <shachaf> I know someone who lost three filesystems to btrfs.
03:18:49 <shachaf> Problems ranging from data corruption to kernel deadlock, or something like that.
03:18:53 <elliott> kmc: I use JFS. Is that cool?
03:18:55 <kmc> i'm trying to figure out the best way to stack encryption, LVM, and RAID on my new server
03:19:14 <kmc> and my understanding is that ZFS handles this all together in an integrated sexy way
03:19:35 <elliott> kmc: I think by "integrated" that means "in its own separate universe to everything else, with its own version of everything".
03:19:45 <elliott> (I don't think it does LVM; I think it has its own implementation of what LVM does. No?)
03:19:49 <kmc> that's what i mean
03:20:21 <kmc> like, i wouldn't need LVM because i could just have a single RAID-Z partition which spans multiple drives of different sizes
03:21:22 <elliott> I think I need unsafeCoerce to do this one.
03:21:40 <kmc> are you a bad enough dude to use unsafeCoerce
03:21:49 <shachaf> unsafeCoerce enables quite a lot of type hackery
03:22:02 <shachaf> Has anyone told Oleg about it?
03:22:24 <elliott> shachaf: You can't spell unsafeCoerce without fun and saeCoerce.
03:22:49 <monqy> 20:21:22 <elliott> I think I need unsafeCoerce to do this one.
03:22:52 <monqy> ........................................
03:23:10 <elliott> monqy: hey, usually I bring out unsafeCoerce much before this!!!
03:23:20 <monqy> ........................................
03:23:37 <shachaf> > ((==) `on` (sort . map toLower . filter isAlpha)) "unsafeCoerce" "cancerous fee"
03:23:46 <zzo38> I know there are some things that can be done with unsafeCoerce I think my extensible product types library use unsafe
03:24:09 <elliott> data Foldy p = Foldy (forall a us. (p a) => a -> FoldR p us -> FoldR p (a ': us))
03:24:09 <elliott> type family FoldR (p :: * -> Constraint) (xs :: [*]) :: *
03:24:09 <elliott> foldrH :: (All p ts) => Foldy p -> FoldR p '[] -> HList ts -> FoldR p ts
03:24:09 <elliott> foldrH foldy@(Foldy f) z (HCons x xs) = unsafeCoerce (f x (unsafeCoerce (foldrH foldy z xs)))
03:24:18 <zzo38> O, it is a anagram?
03:24:25 <elliott> monqy: foldy named in honour of 4.1 loopy
03:25:21 <monqy> im very upset about this unsafecoerce
03:25:58 <elliott> monqy: feel free to write a patch removing it
03:26:08 <elliott> monqy: Remember that time I got unsafeCoerce into an edwardk library?
03:26:27 <monqy> im upset about that too
03:26:33 <monqy> im upset about both unsafecoerces
03:26:36 <shachaf> elliott: Did you know 1.8% of Hackage is edwardk libraries?
03:26:39 <kmc> basically i don't want to have to think about stacking all these different kinds of virtual block device
03:26:51 <kmc> i just wanna say "here are some drives, make sure my shit is redundant and also encrypted, thx"
03:26:52 <elliott> monqy: one day you'll grow up to be as old as me and then you'll appreciate unsafeCorece
03:26:53 <shachaf> kmc: That's why you buy a sysadmin!
03:27:02 <elliott> kmc: well I think LVM is bad and people shouldn't use it
03:27:16 <kmc> why specifically
03:27:18 <elliott> I guess that also means I think people shouldn't encrypt their drives
03:27:20 <elliott> or align their blocks on SSDs
03:27:24 <elliott> kmc: well have you seen it
03:27:28 <kmc> you don't need LVM to do either of those things
03:27:28 <elliott> it's the messiest piece of crap I've ever seen
03:27:33 <elliott> numbers blocks and stuff differently from the kernel
03:27:48 <kmc> if I wanted to avoid LVM i suppose I could do a RAID0 of my two RAID5 devices
03:27:57 <kmc> except no i can't
03:28:04 <kmc> because they will be different sizes
03:28:06 <elliott> kmc: btw how do you do the alignment thing without lvm on linux
03:28:14 <elliott> iirc it was required ages ago
03:28:45 <kmc> elliott: it seems like LVM would *hurt* there
03:28:51 <kmc> it's another layer of metadata to mess up the alignment
03:29:16 <kmc> you would just make sure your partition is aligned
03:29:21 <kmc> and then tell your mkfs to align shit
03:29:29 <kmc> (they support this originally for RAID performance)
03:29:31 <elliott> type instance FoldR ((~) a) xs = [a]
03:29:31 <elliott> toListH' :: (All ((~) a) ts) => HList ts -> [a]
03:29:48 <elliott> i can't believe this shit works
03:30:01 <kmc> shachaf: SSDs erase data in big blocks; for performance you want these to be aligned with filesystem blocks
03:30:14 <kmc> by "erase" I mean "write"
03:30:15 <shachaf> kmc: Right, but what does that have to do with LVM?
03:30:26 <kmc> yeah that's what i'm wondering too ;)
03:30:32 <shachaf> I think RethinkDB had a post on their weblog about doing this once.
03:30:34 <kmc> if you want to use LVM, it's another layer on which you have to get the alignment right
03:30:42 <shachaf> But it looks like they replaced their site with a "launching soon" page.
03:31:05 <shachaf> (On the other hand maybe they'll be launching soon!)
03:31:21 <kmc> they weren't already launched
03:31:29 <monqy> elliott: i can't believe that shit works either
03:31:38 <elliott> shachaf: did rethinkdb "pivot"
03:31:38 <shachaf> If you can pull of launching a second time, why not?
03:31:49 <kmc> they make pies now
03:31:51 <elliott> pivot, n. making a new business except it has the same name and people
03:31:55 <kmc> artisinal local gluten-free pies
03:31:59 <elliott> because you didn't have a business model for the previous one
03:32:03 <elliott> (business model for the new one not required either)
03:32:05 <kmc> pies that celebrate craftsmanship
03:33:00 <shachaf> kmc: They added a word! https://addons.heroku.com/
03:33:08 <shachaf> Now it's "Fast, elegant full-text search that celebrates your craftsmanship."
03:33:39 <kmc> but is it awesome?!?!?!?!?
03:33:55 <kmc> i must know if this software is awesome, minimalist, suckless, and "done right"
03:34:05 <shachaf> kmc: Does $KMCCOMPANY have fulltext search?
03:34:11 <shachaf> Your customers expect fast and accurate keyword search, autocompletion menus and inputs, faceted browsing, spatial search and so much more.
03:34:13 <kmc> that's classified
03:34:38 <shachaf> data Kmc = Kmc; instance Company Kmc
03:35:04 -!- augur has quit (Read error: Connection reset by peer).
03:35:24 -!- augur has joined.
03:35:59 <elliott> shachaf: Is there a Void :: Constraint?
03:36:08 <shachaf> elliott: What would that be?
03:36:17 <elliott> shachaf: A constraint that is never satisfied.
03:36:22 <elliott> (Int ~ String) works but ew.
03:37:18 <shachaf> At least do (False ~ True) or something.
03:37:36 <shachaf> Or data Blah = A | B; (A ~ B)
03:38:59 <elliott> I have a Foldr and FoldR that are two different things.
03:45:43 <shachaf> elliott: do you have a foldR
03:47:01 <shachaf> http://okmij.org/ftp/cpp-digest/toy_OS.txt
03:50:00 <elliott> monqy: http://hpaste.org/76553
03:53:58 <monqy> something tells me haskell wasn't made to do this!!!!!
03:54:38 <elliott> monqy: they should have thought of that before they invented GHC extensions!!
04:27:34 <hagb4rd> how do i get a specific element out of a tuple in haskell? lets say x out of (x,y,z)
04:28:16 <ion> 0) Tuples may be the wrong thing to use if you need that; 1) f (x,y,z) = x
04:28:42 <ion> or: f (x,_,_) = x
04:29:51 <elliott> (But probably you want to pattern-match directly in your function, rather than defining f and using it.)
04:30:14 <ion> yourFunction (x,_,_) = doSomethingWith x
04:31:10 <hagb4rd> just want to know how to address a value of a tuple.. lets have an example (and please i'm not out to reinvent the whell, just try to get an idea of it)
04:31:13 <hagb4rd> let v2len va vb = sqrt(((vb!!0) - (va!!0))^2 + ((vb!!1)-(va!!1))^2)
04:31:40 <hagb4rd> how to make it happen with tuples
04:31:54 <hagb4rd> !!<element> works only for lists
04:32:42 <elliott> you probably shouldn't use (!!) either btw
04:32:56 <hagb4rd> thats exactly what im asking
04:33:12 <ion> v2len (ax,ay,az) (bx,by,bz) = sqrt ((bx-ax)^2 + (by-ay)^2 + (bz-az)^2)
04:33:24 <elliott> -- was typing what ion was writing, yeah.
04:33:28 <elliott> ion: Wait, why do you have three values there?
04:33:34 <elliott> The lists are two elements long in hagb4rd's example.
04:33:46 <ion> He was talking about a 3-tuple at first.
04:35:47 <hagb4rd> @let matrix = ((1, 0, 0), (2, 4, 4), (0, 0, 0))
04:35:55 <lambdabot> forall t t1 t2 t3 t4 t5 t6 t7 t8. (Num t, Num t1, Num t2, Num t3, Num t4, Num t5, Num t6, Num t7, Num t8) => ((t, t1, t2), (t3, t4, t5), (t6, t7, t8))
04:36:32 <elliott> hagb4rd: FWIW if you have a tuple of more than two elements you usually want to define your own data type.
04:36:53 <elliott> data Row a = Row a a a; data Matrix a = Matrix (Row a) (Row a) (Row a) and then use Matrix Integer, or whatever.
04:38:38 <ion> Don’t do this, you don’t want to use lists as geometrical vectors, but here’s a toy example of computing the length between two lists of arbitrary length (assuming both have the same length). I just thought it might be educational wrt. avoiding (!!). f as bs = (sqrt . sum . map (^2)) ds where ds = zipWith (-) as bs
04:40:23 <ion> Another thing that is wrong with it is the unchecked assumption that the lists have the same length.
04:41:06 <elliott> ion: I don't understand why you use where where there instead of just inlining it, possibly using ($).
04:41:56 <ion> I thought giving a (somewhat descriptive) name to the intermediate list would make it clearer for a newbie.
04:42:03 <hagb4rd> okay, i guess there are already some functions for playing arond r2, r3..how would you implement transformation matrices (lets say sth like a rotation in R2 :)
04:44:28 <hagb4rd> i would like implement a R3->R2 transformation (display 3D on 2D screen) for some very basic geomatrical figures (vertices, lines).. that would be nice :)
04:45:54 <hagb4rd> i guess the z-values need to be moved towards the vanishing point in some way
04:47:55 <hagb4rd> (so the further away you get, the more they get moved towards viewcenter)
04:48:17 <kmc> wrong window
04:48:29 <kmc> is this #haskell now
04:48:57 <elliott> kmc: join #haskell and talk about esolangs
04:49:09 <kmc> 420 join #haskell every day
04:49:37 <kmc> sleep, 'night
04:49:41 <ion> Let’s think of a simple case where you only implement the multiplication of a 3×3 matrix with a 3-vector. Using elliott’s Row and Matrix types and also defining
04:49:50 <ion> data Vector a = Vector a a a
04:50:01 <ion> how would you multiply a single Row with a Vector?
04:50:03 <hagb4rd> i guess haskell would be a very efficient way to implement such calculations in a few lines of code :)
04:51:14 <barts> http://www.youtube.com/watch?v=vSTJL1ikxXY
04:54:25 <barts> i wonder if that was rethinkdb's thinking
04:55:00 <zzo38> To prevent people from downloading the newest games, Black and White, a "no experience" security patch was added. This *encourages* downloading the newest games, if you want to use this, isn't it?????
05:01:33 <ion> hagb4rd: Feel free to ask if you’re not sure.
05:03:01 <hagb4rd> yea, i will readmy self on through some docs first.. but cool thank you
05:03:28 <ion> I mean, we can go through the implementation right now.
05:03:50 <ion> if you want
05:10:43 <hagb4rd> guess i better try to catch up some of the basic ideas of haskell-typing first..
05:11:03 <hagb4rd> don't want to waste your time with this
05:11:33 <hagb4rd> but we can speak lateron if you like. i would be glad too :)
05:19:51 <hagb4rd> but we could discuss the algorithm on how to solve the (z-transformation/that thing with the vanishing point).. pseudo code/math/whatever
05:25:03 <barts> is z-transformation an esolang
05:25:19 <hagb4rd> an implementation of it might be
05:25:25 <ion> hagb4rd: You might find this useful. http://www.scratchapixel.com/lessons/3d-advanced-lessons/perspective-and-orthographic-projection-matrix/perspective-projection-matrix/
05:25:52 -!- nys has quit (Quit: quit).
05:30:23 <elliott> kmc: exciting ipwn update: it's just "on hiatus".
05:31:08 <hagb4rd> barts: also i admit trying to creep some scope from you handsome people ;)
05:33:05 <elliott> "TWO-THIRDS of Scots would back independence if they believed it would make them £500 better off, according to a poll."
05:33:17 <elliott> in other news, a third of Scotland would knowingly vote against their own interests
05:33:44 <elliott> loaded questions, the finest art
05:34:29 -!- ogrom has joined.
05:51:49 -!- TodPunk has quit (Read error: No route to host).
05:52:44 -!- TodPunk has joined.
06:02:13 -!- ogrom has quit (Quit: Left).
06:10:03 <elliott> shachaf: Did you know if you d othis
06:10:07 <elliott> data Foldy p = Foldy {friend::forall a us. (p a) => a -> FoldR p us -> FoldR p (a ': us)}
06:10:14 <elliott> The accessor doesn't type.
06:10:32 <shachaf> I get a "FoldR not in scope" error
06:10:44 <zzo38> Has anyone win at Iter Vehems ad Necem with zero contrast? Has anyone win with maximum contrast?
06:11:39 <monqy> but I've gotten "pretty dang far" and then died and then gotten bored
06:17:56 <elliott> Expected type: a -> FoldR p us -> FoldR p ((':) * a us)
06:17:56 <elliott> Actual type: a -> FoldR p us0 -> FoldR p ((':) * a us0)
06:19:02 <barts> i heard ghc was the worst compiler ever
06:19:45 <monqy> this must be penance for your unsafecoerce shenans
06:20:05 <elliott> barts: i heard barts smells
06:20:14 <elliott> who knows the real trutrths in the world...........................
06:20:38 <elliott> monqy: ps this is me trying to undo said `shenans'
06:25:19 <barts> sacrifice a virgin compiler
06:28:20 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.18045
06:28:26 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6290
06:29:23 <elliott> `run ls -lh $(which pastelog)
06:29:27 <HackEgo> -rwxr-xr-x 1 5000 0 602 Oct 21 06:29 /hackenv/bin/pastelog
06:31:28 <elliott> data Foldy p = Foldy (forall a us. (p a) => a -> FoldR p us -> FoldR p (a ': us))
06:31:28 <elliott> data Foldy' p = Foldy' (forall a us. (p a) => HList us -> a -> FoldR p us -> FoldR p (a ': us))
06:31:38 <elliott> shachaf: Can you write a function to convert between these two types without using unsafeCoerce at all?
06:31:45 <elliott> Declare type family FoldR (p :: * -> Constraint) (xs :: [*]) :: *
06:31:51 <elliott> and data HList :: [*] -> *
06:32:11 <elliott> Foldy p -> Foldy' p is what's desired.
06:33:05 <shachaf> elliott: @paste or something, I can't read IRC lines like this.
06:34:42 <elliott> shachaf: http://sprunge.us/iPBU
06:34:52 <elliott> shachaf: The only change between the two types is the inclusion of a dummy parameter at the front.
06:34:55 <elliott> Your conversion can ignore it entirely.
06:35:04 <elliott> It's only there to unify the type argument of the HList with the us elsewhere.
06:35:15 <elliott> i.e., in spirit, you want convert (Foldy p) = Foldy' (\_ -> p).
06:35:18 <elliott> (But you'll find that won't work.)
06:36:07 <shachaf> That doesn't even compile.
06:36:30 <shachaf> I guess you need to import GHC.Prim or something.
06:36:39 <elliott> Yes, you need to import that for Constraint.
06:38:31 <shachaf> elliott: whoa, dude, convert (Foldy p) = Foldy' (\_ -> p) doesn't work.
06:39:14 <elliott> Can you think of a way to fix it?
06:39:37 <elliott> Note that Foldy' (\_ -> unsafeCoerce p) does work, I think. It just refuses to unify for some reason.
06:40:32 <shachaf> Can you simplify this a bit?
06:40:41 <shachaf> I bet the whole HList thing isn't necessary.
06:41:22 <shachaf> And even foo (Foldy p) = Foldy p doesn't type-check.
06:41:58 <elliott> shachaf: http://sprunge.us/EFQX
06:42:04 <elliott> (Plus the relevant extensions.)
06:42:07 <elliott> Then write Foo a -> Foo' a.
06:42:14 <elliott> (Note: I haven't tested that this has the same problem, but I'm virtually certain it does.)
06:42:38 <elliott> shachaf: data Foo a = ... should just be data Foo = ...
06:43:18 <hagb4rd> can you recommend a haskell gui?
06:43:39 <elliott> there's leksah if you really want an ide
06:45:31 <hagb4rd> yea i installed leksha but i already _hate_ it
06:45:59 <shachaf> elliott: type family Hi a; data Foo = Foo (forall a. Hi a); conv (Foo x) = Foo x
06:47:54 <elliott> shachaf: I take it that doesn't work?
06:47:57 <elliott> shachaf: That doesn't really bother me though.
06:48:01 <elliott> I know you can't just write it as identity.
06:48:06 <elliott> shachaf: (And BTW I think that is intentional behaviour.)
06:48:25 <shachaf> elliott: If that doesn't work, why do you expect your more complicated case to?
06:48:34 <elliott> shachaf: Because you have to do it differently.
06:48:39 <elliott> But I bet you can use the forall somehow.
06:54:30 <shachaf> foo :: (forall a. Hi a) -> (forall b. Hi b)
07:01:57 <shachaf> elliott: "NB: `Hi' is a type function, and may not be injective"
07:02:01 <shachaf> What if you just use a data family instead?
07:02:30 <elliott> shachaf: That would defeat the whole point.
07:02:38 <elliott> The only reason I have a type family is so that it can be a type synonym family.
07:04:00 <shachaf> hate the synonym not the syn
07:25:13 <shachaf> elliott: What if you just write some instances?
07:29:55 <elliott> shachaf: What kind of instance?
07:30:13 <shachaf> Presumably this family has instances?
07:31:03 <elliott> Adding an instance doesn't change anything.
07:37:09 -!- epicmonkey has joined.
07:53:10 <hagb4rd> how would i just have these few lines of code executed everytime i start ghci?:
07:53:11 <hagb4rd> data Vector4 a = Vector4 a a a a; let p1 = 0.0 0.0 0.0 0.0;
07:55:44 <hagb4rd> fuck this can't be so complicated.. modules imports omg.. do i need all this shit? just want to exec this 2 lines.. nothing more. please help
07:56:31 <hagb4rd> data Vector4 a = Vector4 a a a a; let p1 = Ve0.0 0.0 0.0 0.0;
07:56:41 <hagb4rd> data Vector4 a = Vector4 a a a a; let p1 = Vector4 0.0 0.0 0.0 0.0;
07:57:04 <hagb4rd> damnit sry.. the last version works.
07:57:48 <hagb4rd> but howto run as a scipt/batch?
08:00:45 <hagb4rd> @data Vector4 a = Vector4 a a a a;
08:00:56 <hagb4rd> >data Vector4 a = Vector4 a a a a;
08:16:38 <barts> #!/usr/bin/env runhaskell
08:42:35 -!- Phantom_Hoover has joined.
08:49:25 -!- Nisstyre-laptop has quit (Ping timeout: 246 seconds).
08:57:33 -!- MoALTz has joined.
09:13:59 -!- monqy has quit (Quit: hello).
09:16:54 <zzo38> Confucius say too much. -- Recent Chinese Proverb
09:17:23 <elliott> `addquote <zzo38> Confucius say too much. -- Recent Chinese Proverb
09:17:33 <HackEgo> 871) <zzo38> Confucius say too much. -- Recent Chinese Proverb
09:28:52 <elliott> shachaf: Does Rust support dynamic loading?
09:32:23 -!- zzo38 has quit (Remote host closed the connection).
09:32:37 <barts> why does #esoteric only talk about mainstream computer languages today
09:34:34 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
09:44:32 -!- Phantom_Hoover has joined.
09:47:06 <elliott> barts: you are welcome to supply discussion of esolangs
09:47:19 <elliott> failing that the channel is more people who like esolangs talking about random crap than actually a channel about esolangs
09:48:13 <mroman> Except in clear help channels usually there are just people having the same interestst
09:48:30 <mroman> but that does not mean they talk about what the name of the channel would suggest :)
09:51:17 <mroman> but to change the topic into a random direction
09:51:34 <mroman> what about an esolang only accepting a bunch of differential equations as programs?
09:52:55 <mroman> what about an esolang only accepting equations which are wrong .
09:53:47 <mroman> what about an esolang where you are only allowed to work on monids
09:54:11 <mroman> essentially that means you only have one 'instruction'
09:54:19 <elliott> you ruined the pattern mroman
09:54:31 <mroman> what about an esolang where you must die?
10:00:00 <mroman> what about an esolang which is so esoteric it can't possibly exist.
10:11:31 -!- barts_ has joined.
10:12:24 -!- nooga has joined.
10:12:28 <nooga> https://github.com/smtlaissezfaire/bcompiler whaaa
10:15:09 -!- barts has quit (Ping timeout: 276 seconds).
10:42:53 -!- carado has joined.
10:49:43 -!- Jafet has quit (Quit: Leaving.).
10:51:55 -!- epicmonkey has quit (Remote host closed the connection).
10:52:17 -!- epicmonkey has joined.
10:52:29 -!- Jafet has joined.
11:02:19 -!- Jafet has quit (Quit: Leaving.).
11:14:46 -!- ogrom has joined.
11:15:01 -!- ogrom has quit (Client Quit).
11:17:55 -!- nooga has quit (Ping timeout: 260 seconds).
11:32:40 -!- Phantom_Hoover has quit (Remote host closed the connection).
11:50:35 -!- nooga has joined.
12:20:27 -!- nooga has quit (Ping timeout: 260 seconds).
12:57:54 <hagb4rd> @tell ion [hagb4rd.geometry.transformation.haskell] i've got some (very basic) work done now.. guess this would be a good point to start from: http://pastie.org/5093143
12:59:37 <lambdabot> <no location info>: parse error on input `='
13:00:01 -!- carado has quit (Ping timeout: 246 seconds).
13:00:22 -!- Jafet has joined.
13:12:19 -!- nooga has joined.
13:12:32 -!- carado has joined.
13:18:45 -!- nooga_ has joined.
13:21:35 -!- nooga has quit (Ping timeout: 246 seconds).
13:29:10 -!- nooga has joined.
13:31:54 -!- nooga_ has quit (Ping timeout: 240 seconds).
13:38:17 -!- Frooxius has joined.
13:42:38 -!- nooga_ has joined.
13:45:47 -!- nooga has quit (Ping timeout: 252 seconds).
13:58:27 -!- hagb4rd has quit (Read error: Connection reset by peer).
14:13:20 -!- Vorpal has joined.
14:26:20 -!- hagb4rd has joined.
14:42:30 -!- nooga has joined.
14:45:14 -!- nooga_ has quit (Ping timeout: 240 seconds).
14:47:36 -!- ogrom has joined.
14:50:04 -!- nooga has quit (Ping timeout: 246 seconds).
14:50:36 -!- nooga has joined.
15:02:08 -!- nooga has quit (Ping timeout: 255 seconds).
15:15:48 -!- ogrom has quit (Quit: Left).
15:17:15 -!- AnotherTest has joined.
15:18:44 -!- Arc_Koen has joined.
15:25:47 <elliott> sorry we actually hate you
15:25:55 <elliott> just having a chorus of hellos and you happened to drop by
15:28:36 <Arc_Koen> oh, now I understand why that tinkerbell guy felt rejected
15:28:54 <Arc_Koen> he must have dropped by in the middle of a go out chorus, or something
15:29:43 <AnotherTest> no that's just because we're all completer asses
15:30:54 <AnotherTest> Well maybe the go out chorus was a consequence of that
15:45:15 <kmc> #include <completer_asses.h>
15:51:46 <kmc> you're not using the normal C preprocessor?
15:54:06 <Arc_Koen> no, he's using a parallel version
15:57:25 -!- atriq has joined.
15:58:58 <kmc> that's an esolang?
15:59:01 <atriq> I think I might stop using Ubuntu
15:59:10 <atriq> BUT I DON'T KNOW WHAT TO SWITCH TO
15:59:14 <kmc> it's pretty easy to invoke the regular C preprocessor
15:59:24 <kmc> though it will make some assumptions, like removing C comments
15:59:30 <kmc> that might be unsuitable for some languages
15:59:48 <kmc> GHC Haskell uses CPP in some circumstances and it's kinda gross
16:01:25 -!- copumpkin has quit (Ping timeout: 248 seconds).
16:01:59 -!- copumpkin has joined.
16:02:38 -!- atriq has quit (Quit: Leaving).
16:02:54 <AnotherTest> atriq: I switched to Debian some time ago. I find it better than ubuntu was when I stopped using it
16:03:10 <AnotherTest> @tell atriq I switched to Debian some time ago. I find it better than ubuntu was when I stopped using it
16:04:45 <kmc> i've been happy with Debian since forever
16:06:18 -!- atriq has joined.
16:08:46 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
16:09:08 <atriq> AnotherTest, okay, I'll keep Debian in mind
16:11:11 <kmc> Debian is maintained by competent, careful people
16:12:04 <atriq> Does WINE work on Debian? (I'm guessing yes)
16:12:13 <kmc> they don't change everything every six months in order to chase some half-baked imitation of Apple products
16:12:25 <kmc> there's very little open-source Linux software that is distro-specific
16:12:32 <kmc> and yes Debian has packages for WINE
16:12:36 <atriq> In the Future will Steam work on Debian (I'm still guessing yes)
16:13:01 <kmc> i mean, someone will almost certainly figure out a way
16:13:04 <kmc> debian and ubuntu are pretty close
16:13:10 <kmc> they use the same package manager
16:13:16 <kmc> sometimes you can install ubuntu packages on debian as-is
16:14:24 <AnotherTest> I'd rather say debian packes on ubuntu as-is
16:14:37 <AnotherTest> Not sure if ubuntu has their own package managing system
16:15:04 <kmc> that's not relevant to the question of whether steam will work on debian
16:15:11 <atriq> Valve said that Steam on Linux is being released as a closed external beta some point in October, which is Valve time for around about Christmas
16:15:25 <kmc> yes, ubuntu uses .deb packages, installed with dpkg and apt and such
16:15:34 <kmc> ubuntu releases are distributed as apt repositories
16:15:45 <kmc> it is much the same infrastructure as debian
16:16:00 <kmc> but e.g. an ubuntu package might depend on a version of libc which doesn't exist in debian's repositories
16:16:10 <kmc> which is why it doesn't always work
16:16:41 <kmc> commercial linux software is often statically linked or bundled with its own libraries in order to avoid such problems
16:17:06 <kmc> even if not, you could set up an ubuntu chroot to run steam, it's not too hard
16:18:08 <pikhq> Or manually unpack the .deb
16:18:25 <kmc> that won't get you the libc version you need
16:18:33 <kmc> or do you mean, unpack the ubuntu libc .deb
16:18:36 <kmc> and all the other dependencies
16:18:46 <kmc> and then wire them all up in a subdirectory
16:19:16 <kmc> you could do that, but setting up a proper ubuntu chroot is probably easier
16:19:24 <kmc> debian/ubuntu have good tools for creating and managing chroots
16:20:13 <pikhq> kmc: In theory, the libc version should be ABI compatible, apt just doesn't know that.
16:21:12 <pikhq> That is, if you just *unpack* Ubuntu packages on Debian, and manually make sure the dependencies are installed, it'll mostly work.
16:21:20 <kmc> yeah, perhaps
16:21:33 <kmc> glibc does break ABI compatibility from time to time though
16:21:39 <pikhq> Some of the other libraries might have ABI issues though.
16:21:43 <kmc> but still, this probably works for current debian vs. current ubuntu
16:27:06 <atriq> How easy is it to install Debian over Ubuntu?
16:27:16 <kmc> by "over" you mean "instead of"?
16:27:42 <kmc> not much harder
16:28:14 <atriq> I mean, "over" as in "I've got Ubuntu now, and I want to go to Debian"
16:28:31 <kmc> can you back up the files you care about and do a clean reinstall?
16:32:30 -!- augur has quit (Remote host closed the connection).
16:44:32 <lambdabot> Local time for barts_ is Sun Oct 21 18:44:18 2012
16:44:44 <atriq> It's not morning for either of us
16:46:36 <barts_> there is a script which you can run as root on any linux and it makes it into a debian
16:46:56 <lambdabot> Local time for atriq is Sun Oct 21 17:46:56
16:47:24 <atriq> I thought this was already established
16:47:34 <HackEgo> Hexham is a European town. There are nine people in Hexham, and at least two of them are in this channel. Taneb looks after the ham.
16:47:55 <atriq> But yes, I'm one of the thousands of people living in Hexham
16:48:31 <Arc_Koen> I'll come to your kingdom for new year's eve
16:49:26 <atriq> To see the queen's speech?
16:49:42 <atriq> I think you can watch the queen's speech from outside the UK
16:49:54 <atriq> And I think it's on at Christmas, not New Years
16:51:08 <Arc_Koen> because my last few new year's eves in france sucked
16:51:20 <Arc_Koen> because last yeat in london was greate
16:51:27 <Sgeo> http://www.reddit.com/r/ProgrammerHumor/comments/11u0rx/you_all_have_probably_already_seen_these_but/
16:51:33 <Sgeo> I might be slightly easily amused
16:51:47 <atriq> Arc_Koen, is this the girl mentioned on your user page?
16:52:04 -!- carado has quit (Ping timeout: 246 seconds).
16:52:21 <atriq> Don't you think restricting by gender is close-minded?
16:53:06 <Arc_Koen> well I'm guessing if that restriction turns out to be wrong my mind will blow out open
16:53:55 <fizzie> I just deleted a gigabyte's worth of recording of the Queen's Diamond Jubilee Concert of 2012.
16:54:14 <fizzie> They sent it out in Finnish tellyvision.
16:54:23 <fizzie> I don't know about any yearly speeches, though.
16:56:05 -!- MoALTz has quit (Quit: Leaving).
17:03:37 -!- augur has joined.
17:04:42 -!- carado has joined.
17:26:04 <Sgeo> Wait. There's a patent on John Titor's time travel machine?
17:26:19 <Sgeo> Hmm, just the theory
17:27:29 <Sgeo> That's still... erm
17:28:26 <Sgeo> Can I patent a process for making a turing machine that solves the halting problem?
17:28:35 <Sgeo> Maybe I could get a patent on a way to make 1+1=3
17:29:23 -!- atriq has quit (Ping timeout: 246 seconds).
17:32:34 <kmc> there are many patents on impossible things
17:32:41 <kmc> there are patents on algorithms to compress any file by at least one byte
17:35:13 <Sgeo> I have to know what those claim about compressing the 0-byte file
17:35:22 <Sgeo> Actually, I'm curious to see one in general
17:35:46 <Sgeo> (And yes, I know compressing the 0-byte file isn't the biggest problem. Although I don't know if it might be connected)
17:36:07 <fizzie> Removing a byte from a 0-byte file *is* not exactly easy.
17:36:25 <fizzie> But it's not like patents need to make sense.
17:37:13 <kmc> yeah, i'm not sure it's actually a problem that people can patent impossible things
17:37:19 <Sgeo> http://gailly.net/05533051.html
17:37:51 <fizzie> Oh, it's just one bit.
17:38:20 <fizzie> There was a Finnish nonsense compression thing around few years back.
17:38:26 <fizzie> Something to do with repeated compression.
17:38:38 <fizzie> There were lots of arguments on the tubes, as usual.
17:38:54 <Sgeo> "Of course, this does not take into account any overhead registers or other "house-keeping" type information which must be tracked. However such overhead tends to be negligible when processing the large quantities of data typically encountered in data compression applications."
17:38:54 <fizzie> I think they also claimed something about compressing every file.
17:39:13 <shachaf> kmc: Presumably it's a special case of something that is a problem, though.
17:39:33 <kmc> also i like the old DOS "compression" utilities where "compress" is actually just delete, and "decompress" recovers your file from the free blocks on the hard drive
17:39:57 <kmc> shachaf: the patent system?
17:40:14 <shachaf> Well, that people can patent things that patent examiners don't know whether are possible or not.
17:40:29 <kmc> is that actually their job, though?
17:41:25 <kmc> i might prefer a system where the government's role in the patent system is minimized and instead you incentivize private companies to take down bad patents
17:42:13 <fizzie> Bleh, I can't recall the name of the company involved. As I recall, they were doing something completely different, and then their resident genius programmer just figured out the ultimate compression algorithm.
17:42:18 <Sgeo> Well, it's easy to make a compression algorithm that in the worse case expands the data by 1 bit.
17:42:58 <shachaf> Sgeo: That's nothing. I can make a compression algorithm that in the *best* case expands the data by 1 bit.
17:43:21 * kmc invests in shachaf's company
17:43:40 <Sgeo> What do you call an algorithm that takes an algorithm as input?
17:43:52 <kmc> an algorithm
17:44:11 <kmc> unless you are guido van rossum then you call it "oh god what is that get it away from me"
17:44:15 <shachaf> Yes, stop being so racist, Sgeo.
17:44:28 <fizzie> Maybe it was a setup for a joke, though?
17:45:40 <fizzie> Aw, the company's website has disappeared.
17:46:49 -!- elliott has quit (Ping timeout: 272 seconds).
17:48:16 <fizzie> Anyway, the idea was that you can just rerun it over and over again to compress everything to the "theoretical limits".
17:48:58 <fizzie> And the company was an ad agency "for reals", they just happened across the ultimate secret.
18:02:41 <mroman> http://uncyclopedia.wikia.com/wiki/Haskell <- the f*?
18:04:59 <FreeFull> kmc: Compress is delete? Now that's lossy compression
18:09:04 -!- carado has quit (Ping timeout: 246 seconds).
18:11:28 -!- AnotherTest has quit (Quit: Leaving.).
18:33:09 -!- hagb4rd has changed nick to hagb4rd|afk.
18:33:11 <hagb4rd|afk> >retro music tip .. beautiful deep black female voice.. https://docs.google.com/file/d/0BzorK_eWYM0-bXJ1b3hWcmJxOTA/edit
18:36:17 <Sgeo> "Scala has a lot of upside because it is extensible and Clojure has a lot of upside because it is an easy language to learn."
18:36:44 <Sgeo> Well, I mean, I imagine Clojure being easier to learn than Scala, but um, how is Scala more extensible?
18:49:44 -!- MoALTz has joined.
18:54:56 <Arc_Koen> Sgeo: the smaller it is, the more you can extend it!
18:57:16 <mroman> What does extensible even mean for a language?
18:58:44 <kmc> it means whatever you need it to mean in order to prove the point you're making
18:58:51 <kmc> like every other adjective applied to programming languages
18:59:50 <Arc_Koen> can "programming" be considered an adjective?
19:00:56 <FreeFull> Well, there are programming books, so I suppose so
19:01:30 <Sgeo> The programming language known as English
19:02:21 <Sgeo> I'm sure it was linked recently, http://www.osmosian.com/
19:04:43 -!- Arc_Koen has quit (Ping timeout: 246 seconds).
19:05:30 <FreeFull> Sgeo: The problem is that there is no compiler for English
19:05:57 <Sgeo> Isn't there an implementation? Not sure what it is though
19:06:43 <FreeFull> But it's not a proper one. Won't work for all imputs
19:07:42 <kmc> natural language would be a *terrible* programming language
19:07:56 <kmc> English is terrible for specifying precise instructions
19:08:01 * Sgeo meant of Osmosian Order's language
19:12:22 -!- Arc_Koen has joined.
19:15:15 <Arc_Koen> honestly did any of you learn lojban?
19:16:15 <Arc_Koen> it sounded very interesting, but at the same time learning a language that no one actually speaks seems kind of a waste when there are so many useful languages
19:17:37 <Sgeo> I've looked at it before
19:17:55 <Sgeo> There are lojban IRC channels
19:38:35 <Arc_Koen> so I've made this emmental program
19:39:53 <Arc_Koen> it's very "destructive" as it redefines all of char 3-255 to mean "subtract 3 and try again" and char 0 to mean "output '0'", char 1 to mean "outout '1'", char 2 to mean "output '2'"
19:40:17 -!- augur_ has joined.
19:40:22 <Arc_Koen> problem is, once you've defined everything like that, you cannot actually begin the last "loop" of -3 decrements
19:40:42 <Arc_Koen> because you have no char left to be the triggering instruction!
19:41:37 <Arc_Koen> so I only redefined chars 3-254, and before doing so, I defined char 255 to mean "redefine yourself to mean the same as the others, then take a char from input, then execute the char taken from input"
19:41:56 -!- augur has quit (Ping timeout: 252 seconds).
19:42:16 <Arc_Koen> so once I've redefined everything else, I can still use char 255 to begin
19:42:30 <Arc_Koen> I DON'T HAVE A CHAR 255 ON MY KEYBOARD
19:43:11 * Sgeo thinks its neat that Clojure will yell at you for at least one sort of attempted unhygienic macro
19:43:15 <Sgeo> http://ideone.com/PgiIQd
19:44:16 <Arc_Koen> hmm, the compilers I use most often have the habit of halting when there are too many inconsistencies
19:45:08 <Arc_Koen> but this is ridiculous: I have to substitute a printable char for char 255
19:45:49 <Arc_Koen> and printable char are in the middle of all that, so I can't make a pseudo-for loop "push chars 4 to 254 on the stack"
19:49:58 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: chr: not found
19:51:49 <tswett> Arc_Koen: I've studied Lojban some, but I stopped... over a year ago, I think.
19:52:53 <Arc_Koen> tswett: Lojban does sound very attractive but seriously didn't you think learning a language that might connect you with your neighbours would be better?
19:53:27 <tswett> Above all, Lojban is an experiment.
19:53:44 <Arc_Koen> (though I realize that's a pretty odd consideration to have in the channel for esoteric programming languages)
20:02:36 <kmc> it would be interesting to see what lojban becomes if it had some actual native speakers from birth
20:02:44 <kmc> i bet a lot of the logical purity goes right out the window
20:09:41 <Arc_Koen> this is one of the reason I'd like to be immortal
20:11:34 <Arc_Koen> maybe after so many hundreds of years, and raising many many children, it eventually becomes enough of a routine thing that you start spicing it up with experiments of this kind
20:12:33 -!- zzo38 has joined.
20:13:58 <Arc_Koen> ok, so, the program works properly when input is congruent with either 0 ro 2 modulo 3
20:14:17 <Arc_Koen> but when it's congruent with 1 it complains the stack is empty
20:17:20 <Arc_Koen> a logical conclusion would be that there's a difference between the definition of 1 and the definitions of 0 and 2
20:18:20 <Arc_Koen> ohhhhhh or there is a problem with the definition of 4
20:33:36 -!- hagb4rd|afk has quit (Quit: hagb4rd|afk).
20:36:43 -!- monqy has joined.
21:00:17 <ion> @tell hagb4rd Some suggestions wrt. the code: 0) The semicolons are redundant, i’d remove them. 1) Run hlint against the code, it will give some good suggestions. 2) After seeing how that implementation will be nicer to read with hlint’s suggestions, switch from record accessors to pattern matching. That will make it even nicer.
21:04:02 <ion> @tell hagb4rd You can use “data Vector4 … = … deriving (Eq, Read, Show)” to get default Show etc. instances.
21:06:31 -!- augur_ has quit (Remote host closed the connection).
21:13:31 <ion> @tell hagb4rd Also, when you feel you’ve learned everything you can from writing your own vector and matrix math implementation, i’d suggest switching to HMatrix or REPA. They are mature, optimized libraries.
21:18:22 -!- Nisstyre-laptop has joined.
21:27:11 -!- augur has joined.
21:32:18 -!- nortti has quit (Ping timeout: 252 seconds).
21:32:59 -!- aloril_ has quit (Ping timeout: 260 seconds).
21:34:10 -!- nortti has joined.
21:41:50 -!- aloril_ has joined.
22:00:30 <kmc> it's kind of terrifying when your javascript code grows from 10 lines in a <script> tag to 2000 lines in 12 files and then you're like "oh, this is a program, we should probably have some abstraction and encapsulation and data types and stuff"
22:06:19 <shachaf> I'd rather be programming in JavaScript than in bash, though.
22:13:14 <kmc> it happens in python too
22:13:34 <kmc> it's easy to just keep adding code to a python file and forget that the language has, like, classes and modules
22:30:58 <zzo38> Well, JavaScript is not really such a bad programming language, and there are a few programs which use it: Mozilla XUL Runner (both for application and document), Synchronet (for door programs and HTTP server side scripts and other purposes), I think maybe even OpenOffice has?
22:31:24 <kmc> there are a few programs which use javascript
22:32:05 <zzo38> And most web browsers use them in HTML documents.
22:32:25 <zzo38> Windows also has a command-line JavaScript "cscript.exe" program to run standalone JavaScript programs
22:32:44 <zzo38> I don't think it is the best programming language, but it is better than some.
22:33:31 -!- FreeFull has quit (Quit: Sleep).
22:39:51 -!- MoALTz has quit (Quit: bed).
22:41:17 <Sgeo> zzo38, what do you think is the best programming language, if any?
22:44:41 <Sgeo> The more I understand Clojure's behavior with ` the more I like it
22:44:44 <Sgeo> (The behavior, I mean)
22:48:03 -!- Phantom_Hoover has joined.
22:52:00 <kmc> what is the behavior
23:00:27 -!- ais523 has joined.
23:00:44 <Sgeo> `+ becomes the symbol clojure.core/+
23:00:48 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: +: not found
23:01:27 <Sgeo> The end result is that when you use ` to make code to return from a macro, all of the symbols are namespace-qualified
23:01:41 <Sgeo> And, for example, let doesn't allow namespace-qualified symbols
23:02:07 <Sgeo> Preventing lexically binding core functions in a let, for example, from interfering with proper operation of expanded macro code
23:02:32 <Sgeo> This is safe, for example
23:02:45 <Sgeo> (defmacro f-macro [x] `(f ~x))
23:03:03 <Sgeo> (let [f 5] (f-macro 10))
23:05:04 <kmc> i think common lisp also namespaces symbols this way
23:09:47 <Sgeo> Apparently it worked
23:09:53 <Sgeo> http://ideone.com/meqZ4t
23:10:01 <Sgeo> Slightly confused as to why though
23:10:18 <Sgeo> Oh, right, different namespace for functions
23:10:29 <kmc> they're namespaced to packages or whatever
23:10:32 <kmc> not to individual macros
23:11:21 <Sgeo> Let's try something else
23:12:16 <Sgeo> http://ideone.com/jpMzYT
23:14:08 <Sgeo> vs http://ideone.com/48IlsM
23:16:51 <Sgeo> Clojure symbols, unlike Common Lisp symbols, aren't given namespaces by the reader
23:26:32 <Arc_Koen> I was used to XChat coloring users in different colors, but this client displays everyone in yellow... and since your two nicks are approximately the same length (well they're both short), it took me some time to realize Sgeo wasn't having a monologue
23:26:48 <kmc> sometimes he does
23:28:37 * Sgeo just delivered a lengthy explanation in #clojure
23:28:42 <Sgeo> I hope it's not too inaccurate
23:29:16 <olsner> Arc_Koen: we're all just #esoteric having a monologue
23:29:40 <Arc_Koen> I feel like I'm part of something
23:30:22 -!- nortti_ has joined.
23:30:36 -!- nortti has quit (Ping timeout: 246 seconds).
23:34:14 <Sgeo> Phantom_Hoover, monqy tswett there will be an update in a few hours.
23:35:08 -!- monqy has quit (Ping timeout: 246 seconds).
23:35:47 -!- monqy has joined.
23:49:51 <zzo38> Sgeo: I do not think any programming language is the best one; other one may be good for different purpose, and more can be invented
23:51:25 <zzo38> It is not invented yet, but in my opinion it would probably be best one for those kind of things like Haskell and so on, if it is invented.
23:54:20 <kmc> @ is the best one
23:54:36 <zzo38> Maybe; I don't know much about it.
00:05:16 <quintopia> (there should be an esolang called zzo38's brain)
00:16:05 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
00:26:38 <Sgeo> Oh, Phantom_Hoover: I recommend deciding nowish if you're going to check update tonight or tomorrow
00:26:45 <Sgeo> From what I've heard, it's really long
00:27:51 <Phantom_Hoover> it's half one and i have a nine o'clock lecture tomorrow
00:28:19 <kmc> there is a cellular automaton called Brian's Brain
00:28:50 <kmc> it has lots of spaceships
00:29:02 <olsner> I guess Brian is a scifi fan
00:30:29 -!- sirdancealot7 has joined.
00:33:53 <shachaf> Maybe olsner is a pokémon who evolves into oerjan.
00:34:37 <olsner> I don't think I'm a pokemon
00:34:51 <shachaf> if evolution is true why are there still olsners
00:34:56 <olsner> @ask oerjan Are you a pokemon?
00:35:30 <Phantom_Hoover> most patterns explode, and most of the things that don't explode are spaceships
00:36:26 <coppro> Phantom_Hoover: is that a theorem?
00:36:48 -!- AnnApolis has joined.
00:37:35 <AnnApolis> despite the fact i do CS i don't know anyone who knows haskell so i'm hoping you guys can help me out:
00:38:03 <AnnApolis> if i write a song called "my love has side-effects" and release it under the name "mona d. and the funk-tors", that totally works, right?
00:38:43 <AnnApolis> "ooh, babe, my love has side-effects/if you want something purely functional i'll go with no regrets" etc
00:40:50 <lambdabot> lambdabot says: <chessguy> sorry, this is the bird book: http://www.amazon.com/Introduction-Functional-Programming-2nd-Bird/dp/0134843460/sr=8-6/qid=1159309594/ref=pd_bbs_6/104-1423720-3100708?ie=
00:40:51 <lambdabot> UTF8&s=books <lambdabot> http://tinyurl.com/root7
00:41:02 <Jafet> @quote monochrom 007
00:41:02 <lambdabot> monochrom says: 007 titles for haskellers. fromForeignPtr withCString. You Only lift Twice. Bottoms Are Forever. The Monad with the Pure Function. For Your Types Only. A view to A seq. Licence
00:41:02 <lambdabot> to killThread. iterate Never Dies. unsafePerformIO Is Not Enough.
00:41:57 <Jafet> Its proof seems pretty strained.
00:42:21 <AnnApolis> it involves a lot of syntactic sugar?
00:50:05 <zzo38> I have question of Curry-Howard, is, loops which might or might not halt?
00:50:48 <coppro> halting has nothing to do with curry-howard
00:51:26 <zzo38> I know loops are normally not allowed to make the proof but I don't know if in some cases there is no other choice?
00:52:18 <zzo38> Are you asking for an example? I don't know, which is why I asked.
00:53:56 <zzo38> I wonder if there is anything related to Curry-Howard which involves the halting problem somehow?
00:54:17 <coppro> Curry-Howard is just an equivalence
00:55:07 <zzo38> Yes I know of that
01:06:15 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
01:10:03 <Phantom_Hoover> halting does map to a property of logics through curry-howard though
01:10:26 <zzo38> What kind of property?
01:13:59 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:15:29 * kmc nominates AnnApolis for Employee of the Month
01:38:01 -!- kmc has set topic: A button to touch, a dial to turn, a key to hold | http://phantom-hoover.tumblr.com/ | http://codu.org/logs/_esoteric/.
01:40:31 -!- monqy has quit (Quit: Lost terminal).
01:40:50 -!- monqy has joined.
01:44:41 -!- AnnApolis has left.
01:56:46 -!- Nisstyre-laptop has joined.
02:18:22 -!- Arc_Koen has quit (Ping timeout: 246 seconds).
02:23:38 -!- drc has joined.
02:31:57 -!- drc has quit (Quit: Leaving).
02:33:39 -!- augur has quit (Remote host closed the connection).
02:36:43 -!- hagb4rd|afk has joined.
02:41:49 <coppro> I am not sure which is more disturbing
02:42:13 <coppro> What Damara's saying, or that Google Translate can accurately translate the vulgarity
02:48:39 <zzo38> I was on #haskell channel I was asking why guards cannot be used in a do-notation, such as do { y@(PartPin z _) | z == x <- p; [y]; } do you think guards should be allowed?
02:49:18 <hagb4rd|afk> the ones looking terrbible on mondays must have had an awesome weekend
02:49:19 <shachaf> "fail" if the guard condition is false?
02:49:24 -!- hagb4rd|afk has changed nick to hagb4rd.
02:50:00 <lambdabot> hagb4rd: You have 3 new messages. '/msg lambdabot @messages' to read them.
02:50:01 <shachaf> zzo38: There's already the function "guard".
02:51:06 <zzo38> I know there is already the function "guard" for MonadPlus (although it should be for Alternative), but it would still seem to me that it should be allowed guard on a pattern in a do-notation like you can fail with other not matching patterns the same way.
02:53:24 <shachaf> zzo38: It should be for MonadZero, or the applicative equivalent.
02:54:04 <zzo38> Well, whatever it should be for, doesn't matter here.
02:54:27 <HackEgo> 2009-05-23.txt:00:06:16: <AnMaster> <ehird> pikhq: Slereah_: A step-by-step demonstration that the anti-kludge Plain English is basically a rearrangement of a small subset of C: http://pastie.org/486940.txt?key=y7p297kilxy4kj0kelcig
02:55:37 <HackEgo> 2012-10-22.txt:02:55:13: <hagb4rd> `log .*hagb4rd.*pastie.*
02:56:13 <hagb4rd> `log .*hagb4rd.geometry.*pastie.*
02:56:29 <HackEgo> 2012-10-22.txt:02:56:13: <hagb4rd> `log .*hagb4rd.geometry.*pastie.*
02:58:02 <zzo38> You should change it to omit display of lines starting with ` unless you explicitlyr request it
02:58:35 <zzo38> Also should allow to specify date/time range
03:04:15 <pikhq> God, Plain English.
03:04:53 <coppro> Sgeo: have you read Damara's translated text yet?
03:05:16 <Sgeo> Through Google Translate, yes
03:05:22 <Sgeo> Is there a better translation?
03:05:55 <coppro> I'm sure someone will post one on the forums soon
03:06:07 <pikhq> I need to read that sometime.
03:06:09 <coppro> pikhq: recent updated included a character speaking in Japanese
03:06:24 <coppro> I didn't know Google could translate such vulgarity correctly
03:06:37 <pikhq> I could try my hand at it without context, though. :P
03:06:50 <coppro> http://www.mspaintadventures.com/scraps2/damaramegido.html
03:11:29 <coppro> pikhq: enjoying yourself yet?
03:17:36 <Sgeo> coppro, you're aware you can reach Aranea's booth as Damara?
03:19:03 <Sgeo> coppro, nope. Deliberate.
03:19:13 <Sgeo> Easter egg ish
03:19:48 <coppro> I knew I missed something earlier
03:20:20 <Sgeo> Also, Karkat has a room, I missed that earlier
03:20:28 -!- augur has joined.
03:20:36 <Sgeo> Once I'm done with late game Damara, I'll go check it out as I actually forgot her name
03:28:21 <Sgeo> Oh, you should absolutely visit Karkat's room as Damara
03:29:31 <coppro> (going through the conversation with the booth now)
03:32:21 <Sgeo> Oh crud there's even more I didn't do
03:32:47 <Sgeo> Supposed to talk to Karkat as Dave and Rose apparently
03:32:50 <Sgeo> This is too much
03:33:35 <hagb4rd> *laugh* where did you say have you found this dialogue? (damara->menah)
03:34:18 <hagb4rd> the google jap translation works even better than for example english-german
03:34:18 <coppro> Sgeo: I like his description of cronus
03:35:18 <hagb4rd> really nice.. i should learn japanese and reduce
03:36:10 <hagb4rd> my output here to this dirty oxford by using the translater
03:36:24 <coppro> hagb4rd: that's the first foreign language to appear in any quantity
03:36:32 <coppro> *any noticeable quantity
03:37:06 <coppro> http://mspaintadventures.com/
03:37:35 <hagb4rd> okay. thanks so far.. need to read through this first *g
03:37:44 <Sgeo> The Japanese text in question was made through Google Translate
03:38:14 <hagb4rd> spare my illusions o dear sgeo
03:42:01 -!- Nisstyre-laptop has quit (Ping timeout: 246 seconds).
03:43:15 -!- TeruFSX has joined.
03:44:41 -!- Nisstyre has quit (Ping timeout: 272 seconds).
03:51:23 <zzo38> Do you like feat/spell I make on Dungeons&Dragons game?
03:59:32 -!- Nisstyre has joined.
04:06:06 -!- Nisstyre-laptop has joined.
04:10:58 <Sgeo> With the IO monad, you assemble an action that will later get executed. With Lisp macros, you assemble code that will later get executed.
04:11:09 <Sgeo> Just a thought
04:11:38 <zzo38> OK, but I don't know a lot about Lisp macros, but I think they are different.
04:11:41 <Sgeo> Also, there's a thing called expansion-passing style
04:11:45 <shachaf> what if you wrote lisp code *TO ASSEMBLE THE IO MONAD* dude
04:12:02 <shachaf> like, multiple levels of assembly
04:12:40 <Sgeo> That reminds me. Someone should make an esolang where the only way to .. do things is to monkeypatch
04:13:00 <zzo38> Write them on list of ideas
04:15:40 * Sgeo gives up trying to log in
04:18:18 <Jafet> Exception-passing style
04:19:38 <Sgeo> Gagnam-passing style
04:20:04 <Sgeo> *Gangnam-passing styl
04:23:43 <kmc> http://opalang.org/gangnam.style.html
04:25:25 <Jafet> I hope that catches on.
04:26:26 <coppro> Sgeo: doesn't that apply to any language whose memory is its own code
04:27:07 <Sgeo> coppro, hmm. Guess I wasn't thinking of it in those terms
04:27:47 -!- Frooxius has quit (Ping timeout: 256 seconds).
05:22:22 -!- Vorpal has quit (Ping timeout: 265 seconds).
05:32:35 <Sgeo> I should get around to writing blog posts
05:33:02 <Sgeo> ...why do I have 103 pageviews when I only actually posted one thing and it was nonsense?
05:34:10 <Sgeo> http://sgeoster.blogspot.com/
05:55:26 -!- hagb4rd has changed nick to hagb4rd|afk.
06:02:35 <ais523> Sgeo: how many are search engine crawlers?
06:08:33 -!- zzo38 has quit (Quit: !!!).
06:41:32 -!- ais523 has quit.
06:42:39 -!- sirdancealot7 has quit (Ping timeout: 256 seconds).
07:15:47 <Sgeo> I found myself googling something and vaguely agreeing with a post I saw, then saw it was by someone I'm not especially fond of
07:15:56 <Sgeo> Although maybe I'm a bit too angry at the person
07:17:49 <Sgeo> I should stop hating people I perceive as incompetant.
07:18:44 <Sgeo> I don't perceive elliott as incompetant.
07:19:00 <Sgeo> And I think I'm spelling that word wrong. I think the last vowel is either a or e but not sure which.
07:20:52 <Sgeo> @tall shachaf hi shechef
07:22:00 <shachaf> monqy: remember when you said hi
07:22:17 <shachaf> all your friends are doing it monqy
07:22:40 <shachaf> come on say hi once for old times sake :'(
07:22:57 <monqy> my quit message is "hello" is that good enough
07:23:18 <shachaf> and not a quit message but a privmsg message
07:23:48 <fizzie> A public privmsg message.
07:24:05 <shachaf> public static privmsg message(hi monqy);
07:25:11 -!- Nisstyre-laptop has quit (Ping timeout: 260 seconds).
07:26:34 -!- epicmonkey has quit (Remote host closed the connection).
08:04:07 -!- ion has changed nick to ION.
08:07:40 -!- glogbackup has quit (Ping timeout: 265 seconds).
08:29:26 -!- epicmonkey has joined.
08:52:18 <ION> IT’S CAPS LOCK DAY.
08:52:36 -!- shachaf has changed nick to SHACHAF.
08:53:05 <SHACHAF> ION: PLEASE TO ADD WIKIPEDIA ENTRY FOR "CAPS_LOCK_DAY"
08:54:31 <ION> HTTP://EN.WIKIPEDIA.ORG/wiki/Caps_Lock_day
08:54:51 <ION> HTTP://EN.WIKIPEDIA.ORG/wiki/Caps_lock_day
08:55:03 <SHACHAF> ION: PLEASE MAKE AN UPPERCASE ONE thanks
08:57:50 <fizzie> HTTP://EN.WIKIPEDIA.ORG/wiki/Special:Search/CAPS_LOCK_DAY goes to the same place and has a bit more lock of caps.
08:58:26 <SHACHAF> fizzie: I KNOW, THAT'S HOW I FOUND Caps_lock_day
08:58:54 <SHACHAF> {-# GHC IS ALREADY CAPSLOCKDAY-COMPLIANT #-}
09:00:18 -!- Crystal has joined.
09:00:18 -!- Crystal has quit (Client Quit).
09:00:56 <ION> Some flags have not been recognized: -XOVERLOADEDSTRINGS
09:10:19 -!- SHACHAF has changed nick to shachaf.
09:34:22 -!- sirdancealot7 has joined.
10:11:35 -!- barts has joined.
10:14:35 -!- barts_ has quit (Ping timeout: 255 seconds).
10:18:09 -!- glogbackup has quit (Ping timeout: 252 seconds).
10:38:35 -!- MoALTz has joined.
10:42:24 -!- Azzy has joined.
10:43:35 -!- Azzy has left.
10:50:22 -!- glogbackup has joined.
10:53:54 -!- oklopol has quit (Read error: Connection timed out).
10:54:19 -!- oklopol has joined.
10:55:32 -!- monqy has quit (Quit: hello).
11:06:40 <fizzie> Incidentally, a funny story: Netflix landed in Finland last week, and already got caught getting their Finnish subtitles from "DivX Finland", a fansubbing kind of site, due to not remembering to remove their at-the-start-of-the-subtitles ad.
11:07:52 <fizzie> They're "investigating" how that happened to happen.
11:13:43 -!- ais523 has joined.
11:15:19 -!- TodPunk has quit (Read error: Connection reset by peer).
11:15:28 -!- TodPunk has joined.
11:26:10 -!- Phantom_Hoover has joined.
11:38:06 -!- ais523 has quit (Ping timeout: 244 seconds).
11:51:16 -!- carado has joined.
11:51:51 -!- ais523 has joined.
11:57:47 -!- Frooxius has joined.
12:06:05 <Jafet> Due to not remembering to remove the annoyingly conspicuous self-plug from fansub groups
12:07:39 <Jafet> I learned the (aptly named) ASS format to edit out some of those
12:13:33 <fizzie> I've only ever edited SRT files, which don't really have that much to learn.
12:18:45 <fizzie> Though I did have to perl -pe 's/^(\d+)(\s*)$/($1-432).$2/e;' or something a file from which I removed the first 432 subtitles.
12:24:08 -!- Arc_Koen has joined.
12:28:00 -!- boily has joined.
12:38:52 -!- Jafet has quit (Quit: Leaving.).
12:38:55 -!- carado has quit (Ping timeout: 246 seconds).
12:54:51 -!- ais523_ has joined.
12:56:49 -!- sirdancealot7 has quit (Read error: Operation timed out).
13:14:20 -!- elliott has joined.
13:23:10 -!- MoALTz has quit (Read error: Connection reset by peer).
13:23:48 -!- MoALTz has joined.
13:25:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:37:43 -!- ais523 has quit (Ping timeout: 246 seconds).
13:40:42 <elliott> That `cast` statement corresponds to the IO constructor from our IO newtype:
13:40:42 <elliott> IO :: (State# RealWorld -> (# State# RealWorld, a #)) -> IO a
13:40:42 <elliott> This constructor hides the underlying stateful representation behind the opaque IO newtype.
13:46:13 -!- copumpkin has joined.
13:48:49 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
13:50:51 -!- pumpkin has joined.
13:51:11 -!- copumpkin has quit (Disconnected by services).
13:51:12 -!- pumpkin has changed nick to copumpkin.
14:05:21 -!- Phantom_Hoover has joined.
14:10:12 -!- Phantom__Hoover has joined.
14:13:44 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
14:39:11 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
14:39:30 -!- Phantom__Hoover has joined.
14:59:06 -!- FreeFull has joined.
14:59:31 -!- sirdancealot has joined.
15:00:17 <HackEgo> sirdancealot: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
15:01:22 <ais523_> note: the underscored version of me, when it's not due to connection problems, is typically either bored or busy
15:01:47 <ais523_> and can change between the two suddenly
15:05:30 <ais523_> whereas ais523 is a little less under tension
15:07:06 <ais523_> elliott: gah, this channel has conditioned me to the stage where, especially from you, I can only interpret "hi" as a threat
15:07:14 <ais523_> made worse because I don't even know what it's threatening
15:07:20 <ais523_> and yet I don't mean it like that when I use it myself
15:07:26 <ais523_> unless it's a non sequitur, in which case I do
15:16:55 -!- atriq has joined.
15:21:08 -!- augur has quit (Remote host closed the connection).
15:21:34 -!- augur has joined.
15:24:12 -!- augur_ has joined.
15:25:05 -!- AnotherTest has joined.
15:25:33 -!- atriq has quit (Ping timeout: 255 seconds).
15:25:34 -!- augur has quit (Ping timeout: 240 seconds).
15:26:16 <kmc> it has some good moments though
15:27:12 <AnotherTest> I found that the "technical descriptions" were actually OK, unlike in many other movies
15:28:27 <kmc> well the dialogue / voiceover in the early scene where he's scraping the various dorm websites is mostly lifted directly from zuckerberg's livejournal
15:28:51 -!- augur_ has quit (Ping timeout: 276 seconds).
15:30:50 <kmc> i generally don't care when fiction gets irrelevant details of technology wrong
15:31:21 <kmc> neal stephenson named the OS in Cryptonomicon "finux" instead of "linux" to avoid beardos bombarding him with annoying complaints
15:31:56 <kmc> it's different if people are using computers to do fundamentally impossible things, like rotate the objects in surveilance footage from a single camera
15:32:23 <AnotherTest> and sometimes makes it impossible to take a movie serious
15:32:49 <kmc> http://www.avclub.com/articles/hackers-may-have-been-of-its-time-but-it-was-also,72249/
15:35:30 <AnotherTest> kmc: Can you believe their was an article in a Belgium newspaper about some kid that claimed to "own" the internet?
15:36:06 <ais523_> AnotherTest: someone claiming to own the internet can be newsworthy even if you don't believe them
15:36:14 <ais523_> depending on how high-profile a claim it is
15:36:33 <ais523_> put it this way: Al Gore didn't even claim to invent the internet, and yet /that/ made the news
15:37:20 <ais523_> Phantom__Hoover: are you planning to add more to your tumblr, than just bitching about a BF derivative?
15:37:39 <AnotherTest> ais523_: His name had to remain anonymous, nor did the journalist even know who he was
15:38:13 <ais523_> AnotherTest: atriq's tumblr has phantom-hoover in the URL?
15:38:21 <ais523_> I hadn't actually considered that possibility
15:39:58 <ais523_> does Ihybrid actually have any flow control at all?
15:41:27 <barts> i never got to that part of cryptonomicon, it was so boring
15:42:03 <ais523_> barts: is that a non sequitur, or am I just missing how it's relevant?
15:45:19 <ais523_> elliott: idea! create a projectspace page that redlinks to deleted spam pages with interesting titles
15:45:28 <ais523_> then leave the links there if/when the languages are created
15:46:07 <barts> ais523_: i was replying to the last thing said about cryptonomicon.
15:47:08 <ais523_> if I'm being incoherent or incorrect, ignore me
15:47:33 <ais523_> huh, zzo38 has a BF derivative?
15:47:39 <ais523_> http://esolangs.org/wiki/Cufrab
15:49:23 <barts> Koen has several new ones
15:50:38 <ais523_> Cufrab is what you get if you zzo38ise BF, which is pretty much expected
15:50:56 <ais523_> (zzo38 derivs don't /exactly/ suck, but they take things in a direction nobody else envisaged or wanted, typically)
15:51:09 <barts> ais523_: does it use pokemon cards as code
15:51:44 <ais523_> that /is/ the sort of thing he would do
15:51:48 <ais523_> but he didn't in that language
15:52:16 <ais523_> (note: he'd only use cards from the Pokémon Trading Card Game for the Game Boy, not the printed cards)
15:52:17 -!- augur has joined.
15:53:22 -!- Vorpal has joined.
15:55:23 <barts> http://esolangs.org/w/index.php?title=Special%3ASearch&profile=default&search=pokemon&fulltext=Search
16:04:14 <Arc_Koen> barts: I sincerely apologize for any bf derivative I might have accidentally spawned
16:08:54 -!- DerFuehrer has joined.
16:08:54 -!- DerFuehrer has left.
16:34:52 -!- barts has quit (Read error: Operation timed out).
16:36:20 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
16:40:45 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
16:41:02 -!- Frooxius has joined.
16:45:14 -!- carado has joined.
16:48:28 -!- ais523_ has quit (Quit: Page closed).
16:52:37 -!- barts has joined.
16:55:23 <barts> Arc_Koen: i forgive you.
16:55:40 <Arc_Koen> that makes me feel so much better
16:58:37 <barts> don't thank me, thank moloch
17:00:09 -!- AnotherTest has quit (Quit: Leaving.).
17:00:16 -!- AnotherTest has joined.
17:14:52 -!- barts has quit (Ping timeout: 245 seconds).
17:19:15 -!- carado has quit (Remote host closed the connection).
17:19:36 -!- TodPunk has joined.
17:24:26 -!- carado has joined.
17:26:29 -!- barts has joined.
17:30:32 -!- zzo38 has joined.
17:32:23 -!- barts has quit (Ping timeout: 268 seconds).
17:33:02 -!- barts has joined.
17:37:17 -!- augur has quit (Remote host closed the connection).
17:43:25 <Arc_Koen> does anyone understands this? http://esolangs.org/wiki/Lo%27reran
17:44:18 <Arc_Koen> I'm tempted to mark it as a stub :(
17:44:44 -!- augur has joined.
17:45:49 <zzo38> Despite having only 14 players, my team is still the best winner at 45 wins out of 51 games.
17:45:56 <zzo38> All the other teams have 16 players.
17:47:34 <elliott> Arc_Koen: nice useless spec
17:47:35 <zzo38> Perhaps due to, we have a lot of more energy
17:53:06 <AnotherTest> Arc_Koen: do that, we need to mark more articles as a stub
17:54:18 <zzo38> Yes, I think some articles have not enough description.
17:57:44 -!- Cryovat has quit (Ping timeout: 260 seconds).
17:58:26 -!- kmc has quit (Ping timeout: 252 seconds).
18:00:44 -!- AnotherTest has quit (Quit: Leaving.).
18:00:58 -!- AnotherTest has joined.
18:02:03 <zzo38> I am trying to make FamicomHDL, which is a set of Haskell functions for making a DotFami mapper codes. But maybe the binary format should be changed too, although it seem OK for now.
18:02:34 <zzo38> And then all the iNES mappers should be written in FamicomHDL/DotFami format too.
18:02:55 -!- atriq has joined.
18:05:32 * Sgeo undergoes Reddit deprivation
18:05:33 <lambdabot> Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it.
18:05:50 <lambdabot> shachaf asked 10h 45m 20s ago: hi Sgao
18:05:58 <Sgeo> atriq, did you see updoot?
18:07:00 -!- AnotherTest1 has joined.
18:08:21 -!- AnotherTest has quit (Ping timeout: 256 seconds).
18:10:43 -!- epicmonkey has quit (Ping timeout: 246 seconds).
18:13:08 -!- AnotherTest1 has quit (Ping timeout: 248 seconds).
18:22:31 -!- sivoais has quit (Ping timeout: 256 seconds).
18:29:30 <olsner> does inception become better or worse the second time you see it?
18:29:42 <atriq> I've only seen it one
18:31:25 <Arc_Koen> olsner: what do you mean "worse"? it's not bad!
18:31:49 <Arc_Koen> though I seem to recall it was better the first time
18:32:05 <olsner> worse than not bad is either bad or (less not) bad
18:32:37 <olsner> fsvo of 'not', 'bad' and 'worse'
18:33:12 <Arc_Koen> in french saying "A is worse than B" implies that B was bad already
18:33:31 <atriq> French is a silly language, then
18:33:36 <atriq> Or at least different to English
18:33:41 <atriq> Which is kind of a given
18:39:17 -!- sivoais has joined.
18:40:23 <Arc_Koen> well, "A is worse than B" means "A is more bad than B"
18:41:17 <Arc_Koen> (note that in french, we do have a words for "worse", "worst", "best", "better", but almost all other adjectives do not have comparative versions and use "more" and "most")
18:41:40 <Arc_Koen> how can "A is more xxx than B" be logically correct if B is not xxx?
18:42:37 <atriq> -9 is more big than -1838 even though -1838 isn't very big at all
18:42:49 <Arc_Koen> are you saying "nothing" is more big than -9 ??
18:43:28 <Arc_Koen> but, see, "-1838 isn't very big"
18:43:37 <Arc_Koen> you didn't say "-1838 isn't big"
18:44:01 <lambdabot> cannot mix `GHC.Real./' [infixl 7] and prefix...
18:44:38 <lambdabot> <no location info>: parse error on input `='
18:44:54 <Arc_Koen> what, haskell doesn't have an equal operator?
18:45:10 <FireFly> Yes it does; it's the same as in e.g. C
18:45:28 <atriq> Haskell has an everything statement
18:46:31 <Arc_Koen> that means (-0) is not completely equal to 0
18:46:46 <atriq> Haskell is the only language I can think of where (+=) does roughly what you expect but it's a normal operator in a pretty new library
18:46:51 <Arc_Koen> well either that or /'s arguments are evaluated after /
18:46:54 <atriq> That isn't installed by default
18:47:17 <atriq> Arc_Koen, that's a symptom of the standard Double type
18:47:46 <atriq> It's an IEEE standard
18:59:10 <FireFly> atriq: what's (+=)'s type?
18:59:48 <atriq> (MonadState a m, Num b) => SimpleSetting a b -> b -> m ()
18:59:50 -!- atriq has quit (Quit: Leaving).
19:00:10 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
19:00:45 -!- carado has quit (Ping timeout: 260 seconds).
19:06:10 <fizzie> I should maybe bind some kind of a two-digit window-swapping keybinding.
19:06:18 <fizzie> They only go up to 19 now.
19:06:29 -!- augur has quit (Remote host closed the connection).
19:06:47 <olsner> how do you get the ones above 9?
19:07:03 <fizzie> Corresponding to the number mostly-above.
19:07:19 <fizzie> alt-p ought to be 20, but it's "prior"/pageup instead.
19:07:50 <fizzie> (Assuming qwerty here.)
19:08:14 <olsner> ah, that makes sense I guess
19:08:41 <fizzie> Fortunately, #esoteric is in 17, so the important ones are covered.
19:08:58 <fizzie> Unfortunately, I think my wife is in 28.
19:09:06 <fizzie> (But that's just because I've sorted it channels first.)
19:09:15 <olsner> you have SIXTEEN channels more important than us?
19:09:27 <fizzie> No, it's not sorted in order of importance.
19:09:34 <fizzie> Just that all the important ones are <= 19.
19:10:33 <fizzie> Among those 19 are at least four channels on which there's approximately one comment per year; two where I'm the only one on.
19:11:03 -!- atriq has joined.
19:12:35 <fizzie> On #5 the last actual privmsg was in 6th of August, 2011.
19:13:23 <fizzie> (Someone called "thecakeisalie" joined, said "hi", waited two minutes and twenty-two seconds, then left; I said "Bye" about eleven minutes later.)
19:14:16 <fizzie> (The one before that was May 22nd, 2010, somebody saying (paraphrasing) "Fizzie I suppose this channel is dead too?", then left.)
19:15:16 <atriq> FireFly, this expands to Num c => ((c -> c) -> a -> a) -> c -> State a ()
19:15:44 <atriq> (for the plain ol' State monad)
19:18:18 <atriq> So if you have myFst f (a, b) = (f a, b); myFst += 1 turns a state of (n, x) to (n + 1, x)
19:18:51 -!- Phantom__Hoover has joined.
19:20:55 -!- epicmonkey has joined.
19:22:22 -!- augur has joined.
19:27:47 <zzo38> Continuation are normally made by Peirce's law, but perhaps it might be made with law of excluded middle, and/or with double negative elimination, maybe in some cases some parts of a program works better in this way?
19:29:18 <atriq> LawOfExcludedMiddle :: (a, a -> Void) -> Void?
19:29:38 <zzo38> Law of excluded middle allows to go back when a result is available
19:30:56 <Sgeo> atriq, a -> Void means not a?
19:30:59 <zzo38> atriq: Well you need continuation
19:31:12 <zzo38> Since it does not apply in intuitionistic logic
19:33:37 -!- augur has quit (Remote host closed the connection).
19:34:38 -!- augur has joined.
19:35:00 <atriq> zzo38, could you explain how it would work, in practise?
19:36:48 <zzo38> callCC (return . Right . (. Left)) is what I had.
19:37:08 <zzo38> And it does work; I tried it. Its type is ContT r m (Either a (a -> ContT r m b))
19:37:41 -!- augur has quit (Remote host closed the connection).
19:37:43 <atriq> copumpkin, ah, so it is
19:37:48 <copumpkin> and is provable in intuitionistic logic
19:38:02 <atriq> LawOfExcludedMiddle :: Either a (a -> Void)
19:39:22 <zzo38> But I made something similar, you can make the function to go back when the result is available
19:40:45 <atriq> doubleNegativeElimination :: ((a -> Void) -> Void) -> a
19:40:58 -!- sivoais has quit (Quit: leaving).
19:41:13 <copumpkin> it's actually kind of fun to implement LEM from Peirce
19:41:38 -!- sivoais has joined.
19:41:40 <atriq> pierce :: ((x -> y) -> x) -> x
19:41:54 <barts> zzo38: have you heard about this bf clone based on pokecard classic gameboy?
19:41:56 <copumpkin> (forall x y. ((x -> y) -> x) -> x) -> Either a (Not a)
19:42:07 <zzo38> barts: No, I have not heard. What is it?
19:42:10 <barts> zzo38: you have made it in 2015.
19:42:22 <zzo38> Well, then that is why I have not heard of it yet.
19:47:16 <atriq> Does EgoBot have logs?
19:47:35 <elliott> barts: hi cheater, why are you ban-evading?
19:50:51 <Sgeo> It occurs to me that Lisps are heavy with syntax sugar
19:51:02 <Sgeo> After all, (a b c) is really (a . (b . (c . ())))
19:51:15 <Sgeo> And that sugar is used pervasively
19:51:44 <Arc_Koen> so, imagine I have a pseudo-random number generator that works as follow: you seed it with Random.seed(<arbitrarily large integer>), and you generate a number with Random.f()
19:52:21 <Arc_Koen> and it is such that the sequence [Random.f(), Random.f(), ...] is always the same if it has been seeded just before the first term of the sequence and the seed is always the same
19:52:22 <atriq> That is how many PRNGs work
19:52:45 <Arc_Koen> now imagine I look into how numbers are generated
19:53:24 <Sgeo> elliott, did you see the Homestuck update?
19:53:42 <Arc_Koen> and since it is deterministic and if I am very very smart, is it possible to consider that random number generator a language?
19:53:56 <Arc_Koen> where a program is an arbitrarily large integer
19:54:40 <elliott> Sgeo: I haven't kept up with Homestuck in the last forever, so no.
19:54:40 <Arc_Koen> and then it would even be possible that it be turing complete or something
19:55:08 <atriq> Arc_Koen, there's an esolang like that, I'm sure
19:55:31 <Arc_Koen> something like http://esolangs.org/wiki/NULL?
19:55:35 -!- barts has quit (Ping timeout: 272 seconds).
19:56:23 -!- barts has joined.
19:56:47 <elliott> probably that message came in after you pinged out, so:
19:56:48 <elliott> barts: hi cheater, why are you ban-evading?
19:59:50 <Arc_Koen> atriq: well, if there is, it's not in the Zero-dimensional catgory
20:00:04 <atriq> That refers to data structure, I think
20:00:15 <Arc_Koen> though I guess it would be quite easy to build such a generator
20:01:26 -!- barts has quit (Remote host closed the connection).
20:03:26 <Arc_Koen> for instance you have a bijection p : {boolfuck programs} -> N, and Random such that after "Random.seed(p(boolfuck program)) Random.f() Random.f()..." etc. with n iterations of Random.f(), the next Random.f() will result in an integer representing the state of the tape after executing n instructions
20:03:45 <Arc_Koen> wait that does not match the description I gave above
20:03:48 <elliott> apparently he is not so talkative about this topic
20:04:33 <Arc_Koen> anyway, that was my random thought of the moment
20:05:37 <atriq> elliott, barts is ban-evading because he's a cheater
20:07:40 -!- barts has joined.
20:08:34 <zzo38> Trying to make this hardware description language, I have like this is it OK? andGate :: Mapper LogicGate; andSignal :: [Pin] -> Mapper Pin; orGate :: Mapper LogicGate; orSignal :: [Pin] -> Mapper Pin; notSignal :: Pin -> Mapper Pin; and so on for other logic gates
20:09:31 <atriq> What's the definition of Mapper?
20:09:40 <zzo38> type Mapper = ContT [Command] ((->) Int);
20:10:35 <zzo38> andGate = logicGate 0; andSignal = logicSignal 0; notSignal = nandSignal . return; logicGate x = LogicGate <$> addPart (LogicPart x); and so on.
20:13:02 <zzo38> The module Language.FamicomHDL defines most stuff, and then I have Language.FamicomHDL.Logic for logic gates, and then I can add Language.FamicomHDL.Cartridge, Language.FamicomHDL.Audio, Language.FamicomHDL.Memory, and so on
20:13:07 <Sgeo> Do something to make money, or write Clojure bindings for a crappy AW clone?
20:13:10 <Sgeo> Decisions, decisions
20:13:11 -!- barts has quit (Ping timeout: 245 seconds).
20:13:34 <Sgeo> Although with the former, I'd be working in the blub of a language known as LSL
20:14:14 * Sgeo vaguely wonders what the LoperOS person would think of Tcl
20:14:39 <atriq> Sgeo, write a Clojure to LSL compiler
20:15:52 <zzo38> atriq: Do you think these definition are OK?
20:16:47 <atriq> I've never thought of it, really
20:17:03 <atriq> It's not what I would do, but I'd probably do loads, then realise what I'm doing is impossible, then give up
20:20:18 -!- Cryovat has joined.
20:22:59 <atriq> I'm gonna pretend "uo" is an emoticon
20:23:04 <atriq> Oh no it's down again
20:23:20 <atriq> Must have been my browser cache
20:26:37 -!- barts has joined.
20:31:59 -!- augur has joined.
20:32:41 -!- TodPunk has quit (Read error: Connection reset by peer).
20:32:55 -!- TodPunk has joined.
20:33:31 <Sgeo> atriq, I think it was briefly back up
20:33:42 <Sgeo> I accidentally got to a subreddit that I haven't been in before
20:39:42 -!- barts has quit (Ping timeout: 264 seconds).
20:40:02 -!- barts has joined.
20:45:31 -!- barts has quit (Ping timeout: 260 seconds).
20:46:29 -!- TodPunk has quit (Read error: Connection reset by peer).
20:46:57 -!- barts has joined.
20:49:16 -!- TodPunk has joined.
20:58:50 -!- TodPunk has quit (Ping timeout: 252 seconds).
21:01:44 -!- atriq has quit (Quit: Leaving).
21:26:23 -!- boily has quit (Quit: Poulet!).
21:31:33 -!- Vorpal has quit (Ping timeout: 276 seconds).
21:41:50 -!- monqy has joined.
21:43:38 -!- barts has quit (Ping timeout: 244 seconds).
21:44:41 -!- barts has joined.
21:44:54 -!- Por_Gammeer has joined.
21:46:30 -!- Por_Gammeer has quit (Client Quit).
21:55:10 <tswett> atriq: "uo" is a Lojban interjection expressing completion.
21:55:52 -!- TodPunk has joined.
22:22:59 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:36:27 -!- kwertii has joined.
22:42:57 -!- sirdancealot has quit (Read error: Connection reset by peer).
22:43:24 -!- hagb4rd|afk has quit (Read error: Operation timed out).
22:44:26 -!- copumpkin has joined.
22:45:19 -!- epicmonkey has quit (Ping timeout: 260 seconds).
22:47:04 -!- sirdancealot7 has joined.
23:10:19 -!- barts has quit (Read error: Operation timed out).
23:10:32 -!- barts has joined.
23:22:57 -!- hagb4rd|afk has joined.
23:24:28 -!- augur has quit (Remote host closed the connection).
23:40:05 -!- TodPunk has quit (Ping timeout: 255 seconds).
23:43:18 -!- Phantom_Hoover has joined.
23:45:28 -!- Phantom__Hoover has quit (Ping timeout: 246 seconds).
23:50:20 -!- TodPunk has joined.
23:56:19 -!- ION has changed nick to ion.
00:16:51 -!- kmc has joined.
00:18:08 <kmc> damn you ec2
00:22:33 -!- augur has joined.
00:28:02 <Sgeo> Dangit, I don't understand BitCoin enough to elaborate on my thoughts on http://www.loper-os.org/?p=988
00:29:06 <elliott> people still read loper-os for anything but yuks?
00:29:40 -!- Arc_Koen has quit (Quit: Arc_Koen).
00:29:51 <Sgeo> He has some interesting thoughts on Bitcoin, I think
00:30:07 <Sgeo> Actually, I find Loper-OS to be interesting rather often, if not perfect
00:35:33 <tswett> There is no computable set of axioms that uniquely defines the natural numbers.
00:39:33 -!- kwertii has quit (Quit: kwertii).
00:44:51 <hagb4rd|afk> lucky as i am.. i don't undestand the consequences of this theorem
00:56:14 <tswett> Eh, his incompleteness theorems are nothing special.
00:56:45 <tswett> They state, roughly, that there are things we will never know. Big whoop.
00:56:55 <tswett> His *completeness* theorem is something else, though.
00:57:15 <tswett> It implies that there is no computable set of axioms that uniquely defines the natural numbers.
00:57:26 <tswett> *No computable set of axioms that uniquely defines the natural numbers.*
00:57:46 <monqy> no computable set of axioms that uniquely defines the natural numbers
00:57:59 <tswett> Yeah! Tell me about it!
00:58:25 <tswett> There is no computable set of axioms that uniquely defines the natural numbers.
00:59:01 <tswett> You'd think that there'd be a computable set of axioms that uniquely defines the natural numbers.
00:59:09 <tswett> But no, there is no computable set of axioms that uniquely defines the natural numbers.
00:59:44 -!- copumpkin has quit (Remote host closed the connection).
01:19:41 -!- zzo38 has quit (Remote host closed the connection).
01:23:15 -!- Phantom__Hoover has joined.
01:26:55 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
01:35:28 -!- hagb4rd|afk has quit (Read error: Connection reset by peer).
01:37:46 -!- barts has quit (Remote host closed the connection).
01:38:00 -!- barts has joined.
01:58:36 -!- copumpkin has joined.
01:58:57 -!- copumpkin has changed nick to Guest14165.
01:59:07 -!- Guest14165 has quit (Client Quit).
01:59:25 -!- pumpkin has joined.
01:59:49 -!- pumpkin has changed nick to copumpkin.
02:20:39 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
02:41:41 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
02:55:27 -!- TodPunk has joined.
04:02:37 -!- Frooxius has quit (Ping timeout: 268 seconds).
04:14:25 -!- zzo38 has joined.
06:20:06 -!- sivoais has quit (Quit: Lost terminal).
06:34:29 <shachaf> I neither agree or disagree.
06:53:16 -!- MoALTz_ has joined.
06:54:16 -!- zzo38 has quit (Remote host closed the connection).
06:55:14 -!- MoALTz has quit (Ping timeout: 240 seconds).
07:09:58 -!- epicmonkey has joined.
07:11:30 -!- MoALTz has joined.
07:13:31 -!- MoALTz_ has quit (Ping timeout: 246 seconds).
07:24:38 -!- epicmonkey has quit (Read error: Operation timed out).
07:33:13 <Sgeo> Remind me never to tutor for money without a lot of documentation.
07:33:22 <Sgeo> Person is now trying to defraud his government, I think.
07:33:59 <Sgeo> He paid me, but is asking me to sign his sheet for reimbursement for far more money than he gave me
07:35:18 <monqy> what did you do..........................
07:35:58 <Sgeo> Tutored someone. He paid me. He is expecting to receive money back. I delayed on the paperwork. Now he's giving me paperwork to sign, but it says I tutored for more hours than actuality.
07:52:19 -!- FreeFull has quit.
08:25:36 <Sgeo> Whatever. I wrote down and signed for the amount of tutoring paid for, although I have no idea if the actual list of sessions is accurate or not
08:36:21 -!- epicmonkey has joined.
08:50:33 -!- hagb4rd|afk has joined.
09:13:05 <mroman> There is no computable set of axioms that uniquely defines the natural numbers?
09:15:06 -!- carado has joined.
09:25:43 <shachaf> kmc: Is there a way to write foo :: (a -> b) -> a -> Identity b which doesn't eta-expand without unsafeCoerce?
09:27:11 <Sgeo> elliott, monqy something
09:30:01 <shachaf> (Strictness-wise, that is.)
10:21:22 -!- barts_ has joined.
10:22:44 -!- Arc_Koen has joined.
10:24:57 -!- barts has quit (Ping timeout: 268 seconds).
10:35:44 -!- barts_ has quit (Ping timeout: 255 seconds).
10:41:50 -!- barts has joined.
10:43:18 -!- barts_ has joined.
10:46:14 -!- barts has quit (Ping timeout: 256 seconds).
10:56:20 <elliott> Deewiant: Did CCBI 2 ever become a thing?
10:57:22 <Deewiant> Yes? http://iki.fi/matti.niemenmaa/befunge/ccbi.html
11:00:30 <elliott> Deewiant: I mean, a thing more than the thing it was.
11:00:33 <elliott> I remember there being some un-thinginess.
11:01:43 <Deewiant> Well, I'm working on the C library version of its funge-space right now and at some point I intend to convert/rewrite the interpreter itself in C as well. Does that count?
11:03:19 -!- monqy has quit (Quit: hello).
11:05:10 -!- hagb4rd|afk has quit (Ping timeout: 244 seconds).
11:05:55 <elliott> Deewiant: Oh, you're still writing that fungespace?
11:07:05 -!- hagb4rd|afk has joined.
11:07:42 <Deewiant> More "began working again a week ago" than "still", but yes. I'm doing some stuff related to it as part of a data structures course.
11:08:54 <elliott> Deewiant: Oh no, is it getting even fancier.
11:09:09 <Deewiant> Nothing that wasn't in the works anyway.
11:10:39 <elliott> Deewiant: So have you finally given up on D?
11:10:42 <Deewiant> I'm hoping to be able to throw out the hash table fallback in favour of using a decent spatial data structure for the boxes, and the course work is essentially trying that out and seeing if it's any good.
11:11:54 <Deewiant> Kinda-sorta. For this C makes the most sense IMO since I'm trying to stay as low-level as possible for performance. :-P C++ might be a better idea, but, well, it's C++.
11:12:25 <Deewiant> And my higher-level language of choice is Haskell so there isn't room for D.
11:12:44 <elliott> Deewiant: I guess shiro 2 will just have to beat you with Haskell then!!
11:12:49 <elliott> Even though C is totally cheating.
11:12:55 <elliott> Maybe I can write Shiro 2 in Rust.
11:12:57 <Deewiant> The main thing here is that D1 is totally deprecated, so if I have to convert my code to D2 I might as well convert it to C instead.
11:13:03 <elliott> That sounds sort of pleasant.
11:13:08 <elliott> Deewiant: I thought it was D2 already.
11:13:39 <shachaf> elliott: Did you know about GitHub's : pictures. :-(
11:13:40 <Deewiant> Hence good luck getting it to compile anywhere nowadays. :-P
11:14:22 <elliott> Deewiant: I needed good luck to compile it anywhere when D1 wasn't deprecated...
11:14:57 <shachaf> elliott: When you're editing text and press :
11:15:37 <elliott> Deewiant: Anyway CCBI 2 isn't going to have a scrubber-based debugger, is it?! Therefore Shiro is better.
11:16:17 <Deewiant> fizzie: Now that I ended up talking about this stuff: what's the most funge-space-allocation-intensive stuff fungot does and (how) can I easily make it do only that? I could use a 'ready-made' 'real-world' benchmark.
11:16:35 <elliott> Deewiant: You know, scrubbers like you have to seek around in media players.
11:16:40 <elliott> Deewiant: Except this one seeks in TIME.
11:16:53 <elliott> So you get to see the funge-space animated with all your IPs dancing around while you drag the scrubber along.
11:16:57 <elliott> And get the stack in a sidebar and so forth.
11:17:05 <elliott> Not exactly sure how that will work with TRDS, admittedly.
11:17:13 <Deewiant> Yeah I wanted to do that back when we were talking about the Funge debugging protocol thing.
11:17:34 <Deewiant> (Not in CCBI but in the external debugger program.)
11:18:03 <fizzie> I think Microsoft Visual Funge 2012 has that, right?
11:18:03 <Deewiant> I think I got approximately as far as drawing a triangle in an opengl frame with gtkhs.
11:18:39 <Deewiant> (That's pretty much what usually happens when I try to program something non-CLI.)
11:19:43 <Deewiant> elliott: With TRDS you just need to drag along executed ticks, not in-Funge ticks.
11:20:31 <Deewiant> Or then you can execute everything once and draw only the last executed tick matching the corresponding in-Funge tick, but that doesn't seem useful for a debugger.
11:25:37 <elliott> <Deewiant> elliott: With TRDS you just need to drag along executed ticks, not in-Funge ticks.
11:25:50 <elliott> Right, but it'd be cool if you somehow made the scrubber have a topology whereby it linked up with the previous ones and stuff.
11:25:58 <elliott> But I guess TRDS is too leaky for that anyway.
11:26:02 <Deewiant> Well yeah, you can make it fancy if you want.
11:33:17 -!- carado has quit (Ping timeout: 256 seconds).
11:50:18 -!- Jafet has joined.
12:02:58 -!- sivoais has joined.
12:05:31 <fizzie> Deewiant: Oh, right, I forgot to answer. Um. My guess would be that it's the Underload interp that does the most funge-space manipulation. (Though it does it all with STRN, if that matters.)
12:06:48 <fizzie> Of the "major modules" (eh, heh), the babbling doesn't write much at all because it's all about FILE-seeking around and reading four-to-five byte things, and the Brainfuck has a 1000-cell tape that it manipulates (plus a few cells of state) and that's it.
12:07:45 <fizzie> The Underload, though, has the stack (and sometimes the program) both growing to negative X direction. (Though I suppose optimally you'd then need a "real-world" Underload benchmark to run in it.)
12:08:14 -!- fungot has joined.
12:10:41 <Deewiant> You should load the babble stuff into Funge-Space instead of using FILE. :-P
12:15:11 <Deewiant> But, thanks for the info. That's what I suspected anyhow; I recall messing with that Underload interpreter at some point.
12:15:29 <fizzie> There's that standalone copy of it somewhere too.
12:15:34 <fizzie> Easier to run than fungot.
12:15:35 <fungot> fizzie: ( and that's where your coding skills come into play?
12:15:52 <Deewiant> I have an underload.b98 which is probably it.
12:16:56 -!- Frooxius has joined.
12:17:25 <fizzie> Also, having the babble stuff in fungespace would be such a memory-waster. (Admittedly, though, it'd then at least do the silly base-128 number-parsing only once.)
12:17:58 <fizzie> I was about to say "and I don't have that much memory to waste, anyway", but apparently fungot's box has (-/+ buffers/cache) 128M used, 872M free.
12:17:59 <fungot> fizzie: ok, what's next? fnord? yow! it's some people inside the wall!
12:18:26 <Deewiant> How much does it take up on disk?
12:18:52 <fizzie> The 'irc' style (which is the largest) is 195659600 + 1042812 bytes.
12:19:32 <fizzie> 627M for the whole chroot dir it runs in.
12:19:33 <Deewiant> Binary-loading that into a 32-bit fungespace would nicely eat up most of that 872M.
12:20:22 <fizzie> Given that with buffers/cache it's 888M used, 113M free, there's a reasonable change a large amount of it is already "in memory" in a sense anyway.
12:20:27 <Deewiant> In CCBI2, that is. In the hash table interpreters I guess you should something like double that.
12:58:45 -!- ais523 has joined.
13:02:12 -!- epicmonkey has quit (Ping timeout: 268 seconds).
13:07:07 -!- Phantom_Hoover has joined.
13:10:20 -!- epicmonkey has joined.
13:10:43 <Arc_Koen> a language that doesn't have any form of conditonal statements
13:10:55 <Arc_Koen> that's basically an automaton, right?
13:12:51 <Arc_Koen> or don't we have a computational class for those
13:13:35 <Jafet> Your statement is conditional on what a conditional statement is
13:14:12 <Arc_Koen> well, I'm reading http://www.esolangs.org/wiki/Beebles
13:14:24 <Arc_Koen> basically it has 13 simple commands to manipulate two stacks
13:14:44 <Arc_Koen> but none of those commands can retrieve information from the stack
13:15:32 <Arc_Koen> oh wait it does have "if the top item of the stack is not 0" on the jump command
13:16:26 <Jafet> It could have unconditional computed goto
13:16:49 -!- epicmonkey has quit (Ping timeout: 245 seconds).
13:19:01 <Jafet> If there is a fork command, you could also make the interpreter angry in the branch that you don't want to run.
13:19:02 <Arc_Koen> I'm pretty sure the "pop" commands pops and discards the top item
13:19:55 <Arc_Koen> well it does have a "kill" command so making the interpreter angry shouldn't be necessary
13:21:35 <Jafet> But without a conditional operator, you can't exercise discretion on killing the program
13:22:04 <Arc_Koen> as far as I know you can't exercise discretion on making the interpreter angry, either
13:22:43 <Jafet> You can push some numbers that happen to be prime if a condition is met
13:23:13 <Arc_Koen> ok, but it's limited to 30 numbers on the stack anyway
13:33:48 <Arc_Koen> @tell AnotherTest well apparently you were right, zzz is not strictly-speaking equivalent to brainfuck... see cpressey's comment on zzzzzz!
13:34:32 -!- epicmonkey has joined.
13:36:09 <shachaf> elliott: who is a doctor right
13:44:22 <ais523> hmm, writing comments in BF is annoying
13:44:31 <ais523> the only punctuation mark you can normally use is the semicolon
13:44:40 <ais523> so you use it in all sorts of contexts it'd otherwise be inappropriate
13:44:50 <Jafet> y u no type lik this lol?
13:44:58 <shachaf> Or write them like telegrams.
13:45:14 <ais523> you can't use () in BF Joust
13:45:20 <ais523> which is where I mostly write BF comments
13:46:05 <shachaf> https://en.wikipedia.org/wiki/Telegram_style
13:46:46 <Jafet> There is a telegram exchange consisting of "?", followed by "!"
13:48:05 <shachaf> It's mentioned on that page.
13:48:16 <shachaf> «In 1843, a school girl remarked that General Charles James Napier on his having conquered the Indian province of Sindh, should have sent the telegram peccavi, Latin for "I have sinned", as used in the confessional.[2]»
13:48:42 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:49:04 <elliott> <ais523> so you use it in all sorts of contexts it'd otherwise be inappropriate
13:49:11 <elliott> ais523: you already do that though! :)
14:00:30 -!- boily has joined.
14:08:58 -!- copumpkin has joined.
14:08:59 -!- elliott has quit (Read error: Connection reset by peer).
14:11:16 -!- augur has quit (Remote host closed the connection).
14:12:02 -!- elliott has joined.
14:15:07 -!- hagb4rd|afk has quit (Read error: Operation timed out).
14:16:53 -!- hagb4rd|afk has joined.
14:41:08 -!- Phantom__Hoover has joined.
14:41:26 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
14:42:44 -!- augur has joined.
14:47:43 -!- kmc has quit (Quit: leaving).
14:48:18 -!- AnotherTest has joined.
14:48:23 <lambdabot> AnotherTest: You have 1 new message. '/msg lambdabot @messages' to read it.
14:48:29 <lambdabot> Arc_Koen said 1h 14m 41s ago: well apparently you were right, zzz is not strictly-speaking equivalent to brainfuck... see cpressey's comment on zzzzzz!
14:48:35 -!- kmc has joined.
14:48:54 <Arc_Koen> yeah, "zz" is a command and "zzz" is another
14:49:02 <Arc_Koen> so parsing might turn out to be somewhat difficult
14:49:18 <AnotherTest> The author probably thought it was a good idea
14:51:31 <AnotherTest> "Intended brainfuck equivalent, but failed"
14:52:11 -!- Phantom_Hoover has joined.
14:53:06 -!- Phantom__Hoover has quit (Ping timeout: 240 seconds).
14:55:25 -!- lifthrasiir has quit (Ping timeout: 244 seconds).
15:01:42 <Arc_Koen> AnotherTest: I'm starting to think we should have a category for that :p
15:03:57 -!- atriq has joined.
15:03:59 <kmc> is there an esolang whose syntax consists entirely of invisible unicode characters?
15:04:33 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
15:04:38 <kmc> zero-width as well, i mean
15:06:55 <Arc_Koen> well you can start an Emmental program by renaming all instructions \0, \1, etc.
15:07:44 <kmc> soft hyphen is a fun invisible character
15:08:01 <kmc> as are the various bidirectional overrides/embeds
15:08:24 <Jafet> What happens when you use a combining mark next to an invisible character?
15:10:00 <Jafet> You know, if you create this language and use it to implement itself, it would probably be the first unicode aware self-interpreter
15:12:54 <kmc> hm I guess the prevalence of brainfuck equivalents is a corollary of Wadler's Law
15:13:58 <atriq> I knew someone called Wadler.
15:14:03 <atriq> I wonder how he's doing
15:14:40 -!- lifthrasiir has joined.
15:17:11 <ais523> Jafet: I think I wrote a partial Underlambda interp which was Unicode-aware for no obvious reason
15:17:16 <ais523> but it wasn't a self-interp
15:17:17 <barts_> you can name things with utf word characters in php. is php an esoteric language?
15:18:18 <Jafet> No, PHP lacks even that redeeming quality
15:18:37 <Jafet> Also, it's not really unicode aware
15:18:50 <Jafet> https://bugs.php.net/bug.php?id=18556
15:19:18 <Jafet> I guess it is unicode aware, it just becomes aware that it can break things in more ways
15:19:24 <ais523> huh, I recognise the email address of the reporter
15:19:26 <ais523> but am not sure from where
15:19:44 <barts_> i remember you were able to use non-breaking spaces in names
15:20:24 <Arc_Koen> hey is there a "random" service on google ?
15:20:25 <barts_> in another life, you were a php developer
15:20:29 <Arc_Koen> like, show me random pages from the internet
15:20:33 <ais523> Jafet: it looks like it's using the current locale to parse identifiers
15:20:50 <Jafet> A good approximation is to search for porn
15:20:58 <ais523> anyway, in Turkish, lowercase I is ı, capital i is İ
15:21:02 <Jafet> And throw in random words
15:21:13 <ais523> Jafet: I doubt it, porn is one of the most heavily seo'd of industries
15:22:21 <Arc_Koen> also, how the hell does the "I'm feeling lucky" button work? as soon as you start typing you're redirected to the search page
15:23:37 <ais523> Arc_Koen: it automatically goes to the first result
15:23:49 <Arc_Koen> ais523: my point is it cannot be pressed
15:23:54 <ais523> the name is because if you're lucky, the first result will be what you want
15:24:05 <ais523> Arc_Koen: well it probably only works if you have instant results off
15:24:30 <elliott> so I'm feeling lucky is now a button that exists just to be there
15:25:00 <Jafet> I bet Clint Eastwood uses it.
15:25:04 -!- barts_ has quit (Ping timeout: 252 seconds).
15:25:09 <Arc_Koen> (also, if I hover the mouse over it, it starts spinning
15:25:19 -!- barts has joined.
15:25:42 <ais523> Arc_Koen: it's in the options somewhere
15:25:52 <Arc_Koen> and is replaced by random stuff like "I'm feeling hungry" or "I'm feeling stellar" (which redirects to results for "restaurants" or image results for "nebulae", respectively)
15:25:55 <ais523> elliott: it's probably like the upvote/downvote counter on Reddit
15:26:01 <ais523> the numbers are actually entirely made up
15:26:04 <Arc_Koen> ais523: recently I haven't even be able to get google in english
15:26:20 <elliott> IIRC Google did studies that said people would be super mad if they got rid of I'm feeling lucky
15:26:26 <elliott> even though nobody actually /used/ it
15:26:29 <Arc_Koen> other than manually typing google.com/search?hl=en&q=(query here)
15:26:36 <ais523> but apparently user feedback was that they preferred blatant lies to removing the values entirely
15:26:46 <ais523> elliott: yes, I thought it'd be similar to the reddit situation
15:26:58 <kmc> what's the reddit situation
15:27:04 <ais523> every now and then someone asks why there are so many downvotes on what looks like an uncontroversial post, and someone has to explain
15:27:30 <ais523> Arc_Koen: well I dislike Google, and typically preferred other search engines
15:27:32 <kmc> Arc_Koen: haha, I never noticed the spin before
15:27:41 <ais523> I used Wikia Search back when it existed
15:27:48 <kmc> the numbers are entirely made up?
15:27:54 <ais523> (note: I started hating Wikia some time after it stopped existing, so there's no real contradiction there)
15:27:55 <Arc_Koen> ais523: well I'm seriously considering using something else
15:27:56 <kmc> then what is it based on
15:28:07 <ais523> nowadays I use DuckDuckGo
15:28:23 <Arc_Koen> wasn't that just a proxied google?
15:28:28 <ais523> it's just upvote and downvote numbers that add up to the right thing
15:28:34 <ais523> Arc_Koen: it's mostly a proxied Bing, acutally
15:28:41 <kmc> but the net upvotes - downvotes is real?
15:28:55 <ais523> Jafet: sorry about the misping
15:29:14 <elliott> ais523: I think it is actually based on the real numbers.
15:29:19 <elliott> They're just so heavily fudged it's meaningless.
15:29:35 <ais523> that would seem strictly inferior just to making it entirely fudged
15:42:35 -!- ogrom has joined.
15:43:17 <ais523> Jafet: anyway that PHP bug you linked seems to be a demonstration of the fundamental problem that it's impossible to be case-insensitive in every language at once
15:43:43 <ais523> the only backwards-compatible solution I can think of would be to insist that PHP identifiers are case-insensitive in English, regardless of what language is being used to process data
15:44:02 <ais523> meanwhile, the PHP devs are trying (and failing) to solve every possibility at once, which is ofc impossible
15:44:30 -!- atriq has quit (Ping timeout: 244 seconds).
15:45:41 <elliott> ais523: it's perfectly possible to fail at that
15:46:15 -!- Vorpal has joined.
15:46:25 -!- atriq has joined.
15:49:54 <ais523> elliott: not sure I understand
15:50:06 <ais523> you intentionally misparsed my sentence
15:50:24 <tswett> Well, it's possible to be case-insensitive in every language at once. Simply make no distinctions at all.
15:50:46 <kmc> the PHP developers are trying and failing so hard at so many things
15:50:53 <tswett> The downside is that this means that there is only one usable identifier.
15:51:27 <tswett> Anyway, what happens if you try to be case-insensitive in every language at once? Can you show that if you do that, then two "obviously different" identifiers end up being the same?
15:52:45 <Jafet> How would one be case-insensitive in chinese
15:53:15 <tswett> Chinese makes no case distinctions. I'd say it's impossible *not* to be case-insensitive in Chinese.
15:55:00 <Jafet> So you can be case-sensitive and case-insensitive at the same time
15:55:43 <tswett> Well, if you define "case-sensitive" as "sensitive to at least one case distinction", and "case-insensitive" as "not sensitive to any case distinction"...
16:02:20 -!- AnotherTest has quit (Ping timeout: 260 seconds).
16:09:35 <Sgeo> How soon after a job fair will employers typically contact you if they're interested
16:10:56 <Jafet> You could ask them
16:18:45 -!- ogrom has quit (Ping timeout: 255 seconds).
16:20:10 -!- ogrom has joined.
16:23:34 -!- Phantom_Hoover has joined.
16:26:29 -!- zzo38 has joined.
16:29:01 -!- FreeFull has joined.
16:29:45 <Arc_Koen> Sgeo: did he say "we'll be contacting you" or something?
16:30:42 <Sgeo> One of them said if you don't hear back from us, let me know. I don't remember about the others
16:32:23 <Arc_Koen> the logical answer to that would be to let him know immediately, and then if in the future when you hear back from them, use your time machine to stop yourself from letting them know
16:37:23 <atriq> I'm sure xkcd has made that joke before
16:38:55 <Jafet> I don't remember that. Perhaps Munroe thought it was trite and went back in time to erase it.
16:53:20 <zzo38> Does Famicompo Mini have a maximum song duration rule?
17:02:37 <kmc> that's like the law of the excluded middle
17:04:13 -!- barts has quit (Ping timeout: 255 seconds).
17:05:55 -!- barts has joined.
17:07:19 -!- carado has joined.
17:09:53 -!- atriq has quit (Quit: Leaving).
17:13:47 -!- ogrom has quit (Quit: Left).
17:16:32 -!- elliott has quit (Ping timeout: 265 seconds).
17:17:47 <kmc> Sgeo: i don't think there's a circumstance where it hurts to try to contact them again
17:18:36 <kmc> not to be like "WHY WON'T YOU TALK TO ME?!?!?!!?" but just "I enjoyed talking to everyone at the job fair, and I'm excited to hear back about the next steps"
17:19:40 <Sgeo> kmc, well, that one employer gave a time frame
17:20:06 <kmc> even then I don't think it would hurt to send them an email
17:21:32 <kmc> companies like to see that you are excited
17:22:31 <Jafet> SO ARE YOU GOING TO GIVE ME A PAYCHECK OR WHAT
17:22:42 <kmc> is the company actually called shankly
17:34:46 -!- Jafet has quit (Quit: Leaving.).
17:38:01 -!- AnotherTest has joined.
17:46:09 -!- epicmonkey has quit (Ping timeout: 256 seconds).
18:07:22 <zzo38> Or, is that the name of the people whose job it is to give you a paycheck?
18:08:06 <zzo38> kmc: What are you saying is like law of excluded middle?
18:10:06 -!- ais523_ has joined.
18:10:16 -!- ais523 has quit (Disconnected by services).
18:10:18 -!- ais523_ has changed nick to ais523.
18:13:30 <kmc> 'let him know immediately, and then if in the future when you hear back from them, use your time machine to stop yourself from letting them know'
18:14:03 <kmc> it is like the proof of excluded middle using call/cc i.e. peirce's law
18:15:18 <Sgeo> Here, have some absolutely disgusting gross and, worst of all, useless Clojure code that I wrote
18:15:19 <Sgeo> http://ideone.com/BTJxYN
18:15:56 <zzo38> O, so that is how it is. I don't entirely see how it is like that, but I guess it may be. (I think I made a law of excluded middle by call/cc)
18:16:02 <kmc> "p is false! what, you claim p is true and provide a proof? let me just steal your proof and go back in time and claim that p was true all along!"
18:16:09 <kmc> ^----- this is what classical logic actually believes
18:16:16 -!- Jafet has joined.
18:18:55 <zzo38> O, I suppose that is sort of like law of excluded middle with call/cc, although classical logic is not about time like this
18:19:29 <zzo38> Since I have once made the law of excluded middle from call/cc you may have seen before on this channel.
18:19:41 <zzo38> And it is somewhat like how you described.
18:19:42 <kmc> it's not entirely fair and accurate way to interpret classical logic
18:19:44 <kmc> but it is amusing
18:21:02 <kmc> (call-cc (lambda (cont) (Left (lambda (proof-of-p) (cont (Right proof-of-p))))))
18:21:30 <kmc> shankly would be a good name for a social network devoted to swapping information about how to shank people in prison
18:21:35 <kmc> http://achewood.com/index.php?date=01142005
18:23:02 <zzo38> Mine was Haskell, but OK
18:26:54 <AnotherTest> What syntax highlighting schemes do you all use in vim? I'm sort of trying vim out for the first time, but I dislike the white background and yellow colors when I do :syntax on
18:28:24 <boily> AnotherTest: I use an old revision of lucius, slightly tweaked to fit with a transparent darkish background.
18:28:41 <kmc> i use the default but my terminal is white on black
18:29:02 <AnotherTest> Debian seems to have black on white as a default
18:30:37 <FreeFull> AnotherTest: White background? Are you using gvim? =P
18:31:05 <AnotherTest> No, the debian terminal seems to have white as the default background
18:32:20 <AnotherTest> FreeFull: the same with in another profile (gnome-terminal)
18:37:40 <FreeFull> You could just close the current file with :q too
18:37:44 <FreeFull> But then you can't come back to it
18:52:19 -!- epicmonkey has joined.
19:01:09 <kmc> there are trapdoors that you can't come back from
19:06:11 -!- carado has quit (Ping timeout: 244 seconds).
19:06:37 <zzo38> Also my law of excluded middle in Haskell put Left and Right the other way around but basically that is what it was
19:15:24 -!- AnotherTest has quit (Quit: Leaving.).
19:24:47 -!- Master7 has joined.
19:27:02 -!- Master7 has quit.
19:27:44 -!- Master7 has joined.
19:36:15 -!- barts has quit (Ping timeout: 276 seconds).
19:45:44 <zzo38> How do you tilt an underground cave?
19:55:26 -!- ais523 has quit.
19:59:10 <quintopia> also, by replacing once side of it with neutronium
20:04:36 <zzo38> I don't think we have any of those things.
20:12:12 <zzo38> To gain an advantage in fighting the demon who owns it.
20:13:12 <zzo38> I already realized some things: I have an amulet which can negate magic, which I think will cause the water on the ceiling to fall down, extinguishing the candles, but it is probably not enough to cause much of a flood.
20:14:01 <zzo38> This antimagic will still help a lot, though, since they will not be able to cast any spells at us.
20:15:46 <quintopia> is there another way to get advantage (besides the usual stuff)?
20:16:49 <boily> flanking, partial/complete cover, and the maneuver that shall not be named.
20:33:26 <zzo38> Sure those are some ways, but I think tilting the floor will help a bit, and so will the anti-magic. One thing that can be done with the anti-magic is cause the water to fall down, so we can pick it up and extinguish the candles which are lit around that room.
20:34:30 -!- augur has quit (Remote host closed the connection).
20:41:07 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: seen: not found
20:52:53 -!- ais523 has joined.
20:58:38 -!- Vorpal has quit (Read error: Operation timed out).
21:02:25 <Sgeo> Arrow's theorem sucks. (As in, the implications suck, not as in I think that it's incorrect)
21:04:27 -!- Master7 has quit.
21:10:29 -!- epicmonkey has quit (Read error: Operation timed out).
21:10:52 -!- Master7 has joined.
21:14:19 <Arc_Koen> ais523: imagine I had created a wiki page for an "esolang" and was especially ashamed of it
21:14:39 <Arc_Koen> because it is a derivative of an already existing esolang, and doesn't bring anything new or interesting at all
21:15:02 <Arc_Koen> could I blank the page or something?
21:29:37 <Sgeo> Arc_Koen, you could just ask Phantom_Hoover to kill you
21:30:13 <Arc_Koen> hey! it's not even a brainfuck derivative!
21:30:30 <olsner> to people tend to survive getting their brain replaced with a brick?
21:31:06 <Arc_Koen> he threatened someone to have his brain repeatedly replaced with a brick then replaced with the brain again
21:31:59 <olsner> for the brick or for the person?
21:32:26 -!- hagb4rd|afk has quit (Quit: hagb4rd|afk).
21:43:34 -!- ais523_ has joined.
21:43:47 -!- ais523 has quit (Disconnected by services).
21:43:49 -!- ais523_ has changed nick to ais523.
21:44:02 <zzo38> Maybe you know why, in this Dungeons&Dragons game, that I need a wig and nail clipper and facial hair trimmer? (Hint: I don't use them on myself! Also, the wig has two purposes and the others only one.)
21:44:18 <zzo38> Probably you don't know because I haven't told you, but you can try to figure out.
21:44:46 -!- hagb4rd|afk has joined.
21:55:29 -!- augur has joined.
21:59:36 -!- augur has quit (Ping timeout: 244 seconds).
22:05:52 <Sgeo> Based on the hearts surrounding it when it was briefly shown in one of the videos, I think http://blog.cgpgrey.com/politics-in-the-animal-kingdom/ likes Schulze voting
22:06:27 <Phantom_Hoover> wooo i got my first letter from tv licensing trying to extort me
22:09:07 <zzo38> What are they writing?
22:09:07 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:09:15 -!- Zuu has joined.
22:10:01 -!- Zuu has left.
22:14:10 <Phantom_Hoover> you need to pay for a license to watch live tv on any device
22:14:36 <Phantom_Hoover> and the attitude of the agency that collects it is that the onus is on you to prove that you don't have to pay
22:14:37 <zzo38> O, yes, in England yes I read that somewhere. I still don't know exactly how they work, though.
22:14:53 <zzo38> How can you prove that you don't have to pay?
22:15:54 <Phantom_Hoover> even if you never do that they'll still assume you're a freeloader and try to intimidate you
22:18:43 -!- augur has joined.
22:19:10 <zzo38> I think I read somewhere, you can watch it later, you don't have to pay, and that if it is black and white you still have to pay but not as much as colors?
22:19:34 <zzo38> Is that how it works?
22:22:18 * Sgeo vaguely wonders if it would be possible to have a voting system where voters submit functions.
22:23:06 <zzo38> Do you have to pay for audio? I think I might have read somewhere that you don't but I am unsure.
22:23:07 <Sgeo> As in, apparently one criticism of IRV is that voters can't actually change where their "next" vote goes based on who lost, so multiple rounds gives more flexibility.
22:23:15 <Sgeo> But maybe a function that ... hm
22:25:04 <zzo38> Could they encrypt the broadcasts and then broadcast the key afterward, so that if you don't pay you are forced to watch after you can decrypt the recording you have made?
22:32:48 <Sgeo> http://www.youtube.com/watch?v=A9rk-JTCCck
22:33:31 <coppro> Sgeo: possible, certainly
22:33:34 <coppro> worth it? probably not
22:39:41 -!- MoALTz has quit (Quit: Leaving).
22:51:22 -!- boily has quit (Quit: Poulet!).
22:52:21 -!- sivoais has changed nick to cooljj_21.
22:52:39 -!- cooljj_21 has changed nick to sivoais.
22:54:32 -!- monqy has joined.
23:04:33 -!- Arc_Koen has quit (Quit: Arc_Koen).
23:21:49 -!- Master7 has quit.
23:25:24 <Sgeo> I should play Alchemy
23:25:48 <Sgeo> I actually bought the standalone version a long time ago
23:26:02 <Sgeo> I want to say PC version, but the flash version runs on PCs, so..
23:28:57 -!- ais523 has quit.
23:29:09 <zzo38> Many programs can run on PCs.
23:29:29 <kmc> git log --pretty=%s | grep ^[A-Z] | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 10
23:29:38 <zzo38> Whether it is native codes, running standalone, by an operating system, or an emulator, it may run.
23:31:45 -!- copumpkin has joined.
23:32:15 -!- SimonRC has quit (Ping timeout: 260 seconds).
23:33:29 <Sgeo> Yeah, but what's the best way to distinguish between the Flash version of a game and a version that's a .exe?
23:34:49 <Sgeo> Hmm, it seems to actually be Java not Flash
23:35:28 <zzo38> If it is a Windows .exe file then call it the Windows version.
23:36:48 <zzo38> I think it should only be called software for PC if it is meant to run on the PC with only the hardware and BIOS not needing operating system and so on. That way, you can distinguished more easily you can say specifically what operating system/programming language/whatever if it is for some specific system.
23:37:23 <Sgeo> After having watched a video of some expert playing Alchemy, I realized I have no idea of basic Alchemy strategy
23:37:53 <Sgeo> The person discarded runes that could have been placed
23:37:57 <Sgeo> Rather often, actually
23:38:57 -!- SimonRC has joined.
23:44:15 -!- monqy has quit (Quit: hello).
23:52:34 -!- Slereah_ has quit (Ping timeout: 246 seconds).
23:53:35 -!- Slereah has joined.
00:20:50 <kmc> our CEO sent himself an email last night with one word in the subject and no body
00:21:02 <kmc> and today nobody (including him) can figure out what it means
00:33:03 <Sgeo> Oh great, now I have a new programming language/environment to be interested in
00:33:08 <Sgeo> http://www.ciaohome.org/
00:37:06 <Sgeo> "This produces an executable called hello in Un*x-like systems and hello.cpx under Win32 systems."
00:45:54 -!- Bike has joined.
00:48:47 <Sgeo> Oh, I think it's executables just for where Ciao is installed
00:48:56 <Sgeo> Hi Bike. You're a #lisp native, right?
00:50:11 <Bike> I suppose I must be.
00:53:53 <kmc> shachaf: Rosebud
00:54:01 <kmc> not really
00:54:11 <kmc> on another note http://www.nietzschefamilycircus.com/
00:54:34 <Bike> «Surface is the disposition of woman: a mobile, stormy film over shallow water.» ergh.
00:54:45 <Bike> Don't be like that, Billy.
00:58:39 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:37:25 -!- hagb4rd|afk has quit (Ping timeout: 248 seconds).
03:05:14 -!- hagb4rd|afk has joined.
03:44:42 <zzo38> Someone asked what the government does with the hour they take from us when daylight saving time is on.
03:45:51 <shachaf> zzo38: Did you read _Momo_?
03:53:53 <zzo38> But anyways daylight saving time does eventually is off too
04:03:32 <kmc> 'The drama “SEAL Team Six,” about the raid that killed Osama bin Laden, was edited to give a starring role to the president. It will be shown on television two days before the election.'
04:03:36 <kmc> that is classy
04:04:49 <zzo38> Do you know why (in Dungeons&Dragons) game I want the evil chancellor to be sunburned?
04:08:06 <zzo38> Same reason why I need the nail clippers and facial hair trimmer, and one of the two reasons I need the wig.
04:10:03 <zzo38> Can you make any guess?
04:21:59 -!- centrinia has joined.
04:25:34 -!- monqy has joined.
04:26:01 <kmc> "Learning Ruby if you know Python is like learning Spanish if you know French. It's not going to stretch your brain, but it will help you talk to half of San Francisco."
04:30:54 <zzo38> I also want to know, where is that from?
04:31:18 -!- zzo38 has quit (Quit: If you don't know my question, OK, you will figure out eventually when I write on my computer).
04:34:25 -!- Nisstyre has quit (Ping timeout: 256 seconds).
04:42:23 <Sgeo> Eh, Ruby is more functional than Python
04:46:13 <kmc> shachaf: a quote from a friend, paraphrased
04:46:17 <shachaf> Sgeo: but is it more of a lisp than python?
04:46:32 <kmc> i'm not sure that Ruby the language is actually more functional, but the Ruby community is less fearful and misunderstanding of FP
04:46:33 -!- Nisstyre has joined.
04:46:42 * Sgeo thwacks shachaf
04:47:06 <shachaf> I'm not the one who should be thwacked here!
04:47:16 <Sgeo> Although, Ruby is more amenable to using the same forms to change definitions than Python is, if that counts for anything whatsoever
04:47:38 <Sgeo> class C: <stuff>
04:47:47 <Sgeo> someinstance = C()
04:47:52 <Sgeo> class C: <newstuff>
04:48:08 <Sgeo> That won't change instances already made.
04:48:24 <Sgeo> It will instead make a new class called C, and the old class isn't referred to by C anymore
04:50:09 <Bike> anything like update-instance-for-redefined-class?
04:50:38 <Sgeo> You can modify classes, just not with the class syntax
04:50:52 <Sgeo> And the instances will behave as by the changed class
04:51:03 -!- hagb4rd|afk has quit (Ping timeout: 244 seconds).
05:10:42 <shachaf> kmc: Sigh, this Wikipedia article uses italic N to mean something completely different from bold N.
05:11:13 <shachaf> Well, not completely different. I guess N is an element of the image of N, or something.
05:15:47 <tswett> So guys, you know how there's no computable set of axioms that uniquely defines the natural numbers?
05:16:25 <kmc> yeah what does that mean
05:16:28 <shachaf> How do you catch a unique definition of the natural numbers?
05:16:36 <tswett> Yeah. Like, there are computable sets of axioms that the natural numbers satisfy.
05:16:49 <tswett> But for all such sets, there are also things other than the natural numbers that also satisfy the same axioms.
05:16:51 <kmc> up to isomoprhism? how are we defining isomorphisms in our metatheory?
05:17:29 <tswett> According to their definition?
05:17:39 <kmc> i'm confused
05:17:47 <tswett> Two monoids are isomorphic if there exists a bijection between them that commutes with the monoid operation.
05:18:09 <kmc> well i'm not too impressed with isomorphisms in the metatheory, as it's not formal
05:18:43 <tswett> I suppose the tricky question is: how are we defining the phrase "the natural numbers" so that we can talk about them?
05:19:05 <kmc> well it's not so important which one is "the natural numbers", just that there are two non-isomorphic things satisfying these axioms
05:19:23 <Bike> before you keep going, can I just ask if "uniquely" was actually important to what you said?
05:19:55 <tswett> Well, yes, it is. Like I said, it's possible to come up with a computable set of axioms that is satisfied by the natural numbers.
05:19:55 <tswett> For example, the natural numbers are a model of the Peano axioms.
05:20:00 <tswett> But there are also other models of the Peano axioms.
05:20:25 <Bike> ok, just checking.
05:21:21 <kmc> can you easily describe another model of PA?
05:21:40 <kmc> http://en.wikipedia.org/wiki/Peano_axioms#Nonstandard_models perhaps
05:21:56 <kmc> oh there's an *upward* Löwenheim–Skolem theorem??
05:23:35 <kmc> "there is no countable nonstandard model of PA in which either the addition or multiplication operation is computable"
05:24:06 <shachaf> How many models of Palo Alto are there?
05:31:39 <kmc> you know there is all this consternation over the fact that things with mediocre design (UNIX, PHP, x86) get popular while their better-designed competitors languish in obscurity
05:31:47 <kmc> and much theory built around "worse is better" and such
05:31:55 <kmc> but i just realized what the simplest explanation is
05:32:05 <kmc> popularity is random, and most things are poorly designed
05:32:07 <kmc> that's all
05:32:21 <Bike> but can you sell a book with that premise
05:32:36 <kmc> well i can but whether it becomes a best-seller is a crapshoot
05:33:12 <kmc> popularity doesn't even have to be that random for this to hold
05:33:26 <kmc> because the degree to which most things are poorly designed is overwhelming
05:33:50 <kmc> though PHP is not so much poorly designed as not designed at all
05:39:32 <tswett> So, just how *do* you define "natural number", anyway?
05:39:43 <Jafet> Go with your heart.
05:40:03 <kmc> what is natural number, baby don't hurt me, don't hurt me, no more
05:40:04 <tswett> I guess it's easy if you have a definition of "set".
05:40:50 <shachaf> http://www.macroeducation.org/wp-content/uploads/2012/07/calvin-hobbes-imaginary-numbers-and-calculus.gif
05:40:59 <tswett> And the notion of "set" seems perfectly intuitive.
05:41:09 <Bike> 'seems', how tricky
05:41:32 <tswett> Sets are those things such that, for every collection of thingies, there's a set containing precisely those thingies.
05:41:50 <Bike> doesn't that just move the definition to 'collection'?
05:44:29 <Jafet> Except the collection of all sets
05:45:12 <shachaf> The collection of all sets that do not contain Jafet.
05:45:55 <coppro> Bike: ZFC's handling of 'classes' requires inelegant circumlocution in the metatheory
05:47:06 <Jafet> I am the set of all things that contain Jafet.
05:47:09 <tswett> Jafet: well, not all sets are thingies.
05:47:30 <coppro> Bike: NBG is a conservative extension of ZFC that has proper classes
05:47:46 <coppro> but does not allow the use of arbitrary quantification over all classes, only over all sets
05:47:58 <coppro> however, this restriction is sort of arbitrary, really
05:48:32 <coppro> so if you allow quantification over all classes, you get MK
05:48:42 <coppro> unfortunately, that only works out with inelegant circumlocution in the metatheory
05:48:56 <Bike> Sorry, what did I say to prompt this?
05:49:34 <coppro> 01:41:50 < Bike> doesn't that just move the definition to 'collection'?
05:49:41 <kmc> 'inelegant circumlocution in the metatheory' sounds like a The Mars Volta song title
05:50:11 <Jafet> Theorem: any sufficiently advanced set theory requires inelegant circumlocution in the metatheory.
05:50:54 <Jafet> A The Mars Volta sounds like a Mothers of Invention song title
05:55:15 <kmc> "He would throw away a radio that was on without turning it off first."
05:57:08 * coppro likes NBG and things it should replace ZFC
05:57:45 <coppro> Because it has classes as actual objects
05:57:54 <coppro> some branches of math (like category theory) effectively work in NBG
05:57:59 <coppro> although this hasn't really trickled down
05:58:24 <coppro> also NBG has a wonderful axiom that implies global choice
05:58:38 <Bike> What's global choice?
05:59:50 <tswett> I like NFU and think it should replace NBG.
06:01:24 <tswett> Then again, maybe category theory doesn't work so well in NFU?
06:01:26 <coppro> Bike: Regular choice except it applies to all classes, not just sets
06:01:52 <Bike> That is pretty cool.
06:02:12 <coppro> tswett: stratified formulas? ewwww
06:03:08 <tswett> C'mon, stratified formulas are great.
06:03:48 <tswett> I've completely forgotten why anyone would ever want a non-stratified formula.
06:04:15 <tswett> You know what, I'm really sleepy and I should go to bed *right now*. I'm not even going to bo
06:06:01 <coppro> `addquote < tswett> You know what, I'm really sleepy and I should go to bed *right now*. I'm not even going to bo
06:06:08 <HackEgo> 872) < tswett> You know what, I'm really sleepy and I should go to bed *right now*. I'm not even going to bo
06:09:18 -!- centrinia has quit (Quit: Ex-Chat).
06:12:00 <oklopol> you computer scientists always have such massive boners for set & category theory
06:13:40 <oklopol> i mostly wonder why mathematicians usually don't have equal boners for these things
06:13:58 <Jafet> I also blame reductionism
06:14:08 <coppro> oklopol: I am a mathematician
06:14:49 <oklopol> i'm mostly going by what i've seen in cs conferences versus what i've seen among mathematicians in our department
06:15:06 <coppro> oklopol: deparments are not necessarily representative
06:15:10 <oklopol> which is a somewhat silly comparison yeah
06:15:12 <coppro> I don't think my school has a set theorist
06:15:19 <coppro> and we have an entire faculty of mathematics
06:15:30 <coppro> (we do, however, have several logicians, and perhaps they count
06:16:49 <oklopol> i guess just cellular automata, combinatorics on words, analytic number theory, functional analysis and coding theory
06:16:59 <oklopol> maybe ten more i just didn't come up with
06:17:01 <coppro> my school is kinda big on graph theory
06:17:47 <coppro> and other combinatorics stuff
06:17:50 <oklopol> oh right one guy in our dep wrote a book on two structures which are basically graphs (although perhaps you study slightly more coding-y stuff)
06:18:09 <coppro> actually there's a bit of hilarious history there
06:18:15 <coppro> you've heard of bill tutte?
06:18:25 <oklopol> well i've heard of tutte's formula
06:18:46 <coppro> so he was at the University of Toronto
06:19:57 * Sgeo pokes Bike into #clojure
06:20:21 <coppro> in the first major hiring coup of the Department of Combinatorics and Optimization, UW successfully managed to get Tutte to come over
06:20:23 <shachaf> Can you poke the Clojure out of this channel and into #clojure while you're at it?
06:20:33 <coppro> 5 years before the department (or even the faculty) existed, mind you
06:20:53 <Bike> sgeo was responding to me about another channel, sorry
06:21:18 <coppro> yeah, I'm at *that* UW
06:21:33 <shachaf> how does it feel to be at the wrong uw
06:21:38 <coppro> the department was basically founded to get Tutte
06:21:47 <coppro> shachaf: I am at the right one
06:22:04 <shachaf> coppro: I thought you were at the east one.
06:22:29 <shachaf> The east one is the wrong one.
06:22:46 <coppro> oklopol: University of Waterloo
06:22:54 <shachaf> coppro knows which UW I'm talkin' about.
06:23:26 <shachaf> "In matroid theory he discovered the highly sophisticated homotopy theorem"
06:23:32 <shachaf> Is that different from the regular homotopy theorem?
06:25:04 <coppro> C&O recently hired Bill Cook, a graduate of the department (of like 20 years ago) who researches some piddly little problem about vagabond merchants
06:25:31 <oklopol> what's the regular homotopy theorem?
06:26:05 <shachaf> But I bet it's not as sophisticated.
06:26:08 <oklopol> in any case presumably matroid stuff is rather different from "usual stuff" since matroids are finite objects
06:27:06 <oklopol> i don't know of a homotopy theorem
06:27:17 <oklopol> pointcare's theorem is a kind of homotopy theorem ofc
06:27:56 <oklopol> it states that if you're homotopy equivalent to the boundary of a 3-dimensional ball then you're homeomorphic to it
06:28:41 <oklopol> (homeomorphic being the usual topological equivalence, homotopy equivalence is somewhat more crazy, but easier to compute supposedly)
06:44:11 -!- Frooxius has quit (Ping timeout: 256 seconds).
06:49:44 -!- epicmonkey has joined.
06:52:11 <oklopol> matroids are awesome, you have paths in a finite set and shit
06:53:07 -!- monqy has quit (Quit: Lost terminal).
06:53:25 -!- monqy has joined.
06:53:46 <coppro> oklopol: yeah, matroid theory is pretty sweet
06:53:53 <coppro> Taking a course in it this summer
06:53:56 <oklopol> i guess you do in graph theory as well but i'm used to that
06:54:19 <coppro> *I'm sort of sad it's a grad student teaching it though
06:54:57 <coppro> I have one of the department's eminent matroid theorists as a prof this term in graph theory (and second-year optimization, oddly) and he's quite good; I was hoping he'd be doing the matroid course too :(
06:55:02 <oklopol> we have a course on hyperreals starting next week :P
06:55:20 <oklopol> and nonstandard analysis in general
06:56:40 <oklopol> i talked to the prof about it, he said he decided this year that he's finally old enough to teach it.
06:57:51 <fizzie> Are there some kind of legal age limits, then?
06:57:51 <coppro> that should be pretty sweet
06:58:07 <coppro> I've touched on nonstandard arithmetic; it's cool
07:00:15 <oklopol> he quoted "All Hope Abandon Ye Of Career Development Who Enter Here" to me
07:00:37 <oklopol> which apparently is a saying among people who do nonstandard analysis.
07:02:08 <oklopol> that's not on divine comedy's wp page so i wonder if it's considered the best line in the book in the english world.
07:04:37 <oklopol> what i know about the book is 1. it has a finnish version of "All Hope Abandon Ye Who Enter Here" 2. it's really boring and eww 3. some ridiculous shit about afterlife
07:05:47 <oklopol> not only am i planning to do nonstandard analysis, i'm planning to do CA theory using it.
07:06:16 <oklopol> because CA theory is just not unpopular enough.
07:08:29 -!- epicmonkey has quit (Ping timeout: 244 seconds).
07:11:26 <ion> http://sphotos-h.ak.fbcdn.net/hphotos-ak-ash4/416836_4715798089966_820576442_n.jpg
07:18:56 <shachaf> kmc: Did you know Hackage 2 upgrades the Hackage authentication mechanism? Instead of "salted DES: perl crypt", they use "md5 (username ++ ":" ++ realm ++ ":" ++ password)".
07:20:28 <Jafet> Modernization at its best.
07:20:46 <ion> Also, is there a reason to choose MD5 for anything nowadays?
07:20:49 <shachaf> ion: I'm not sure that's as big of a concern as the "md5" bit.
07:21:13 <shachaf> I mean, username+realm is probably nearly as good as a salt at the sorts of things a salt is supposed to prevent?
07:23:16 -!- Tod-Autojoined has joined.
07:23:36 <shachaf> As far as I know neither of those mechanisms is very good.
07:23:57 <shachaf> ion: I use md5 to verify checksums of .isos sometimes.
07:25:19 -!- TodPunk has quit (Read error: Connection reset by peer).
07:38:33 -!- barts_ has joined.
07:44:53 -!- barts_ has quit (Ping timeout: 248 seconds).
07:48:23 -!- FreeFull has quit.
08:24:39 -!- Bike has quit (Quit: sleep).
08:30:18 -!- epicmonkey has joined.
09:14:29 -!- Jafet has quit (Quit: Leaving.).
09:33:57 -!- Jafet has joined.
09:36:55 -!- barts_ has joined.
10:24:51 -!- hagb4rd|afk has joined.
10:29:23 -!- ais523 has joined.
10:30:52 <ais523> why does email not have a "reply to multiple emails" option
10:31:12 <ais523> for when you get emails from more than one person asking much the same thing, who'd benefit from seeing each other's questions and your joint answers
10:33:06 -!- Jafet has quit (Ping timeout: 240 seconds).
10:40:11 -!- Jafet has joined.
10:46:34 -!- ais523 has quit (Ping timeout: 240 seconds).
10:58:47 -!- Jafet has quit (Quit: Leaving.).
10:59:30 <ion> Should have used Bill once again. “EXT4 Data Corruption Bug Hits Stable Linux Kernels” http://www.phoronix.com/scan.php?page=news_item&px=MTIxNDQ
11:04:50 -!- monqy has quit (Quit: hello).
11:18:37 -!- Jafet has joined.
11:48:04 -!- impomatic has joined.
11:55:28 -!- ais523 has joined.
12:00:43 -!- Nisstyre has quit (Ping timeout: 246 seconds).
12:16:01 -!- Nisstyre has joined.
12:16:08 -!- Arc_Koen has joined.
12:21:28 -!- boily has joined.
12:24:03 -!- carado has joined.
12:32:34 -!- AnotherTest has joined.
12:43:32 -!- ais523 has quit (Remote host closed the connection).
12:44:46 -!- ais523 has joined.
12:47:00 -!- impomatic has quit (Quit: http://BASICcomic.com).
12:51:02 -!- ais523 has quit (Ping timeout: 244 seconds).
12:51:38 -!- barts_ has quit (Ping timeout: 268 seconds).
12:53:17 -!- nortti_ has changed nick to nortti.
12:58:07 -!- elliott has joined.
13:08:29 -!- Phantom_Hoover has joined.
13:22:06 -!- ais523 has joined.
13:25:05 -!- FreeFull has joined.
13:55:10 -!- mindlessDrone has joined.
13:58:14 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:04:28 -!- Frooxius has joined.
14:12:27 -!- MoALTz has joined.
14:17:16 -!- krofna has joined.
14:19:04 -!- copumpkin has joined.
14:28:12 -!- elliott has quit (Ping timeout: 260 seconds).
14:30:21 -!- elliott has joined.
14:52:08 -!- hagb4rd|afk has quit (Quit: hagb4rd|afk).
15:19:57 -!- mindlessDrone has left.
15:23:56 -!- ais523 has quit.
15:32:42 -!- AnotherTest has quit (Quit: Leaving.).
15:43:23 -!- epicmonkey has quit (Ping timeout: 246 seconds).
15:46:34 -!- krofna has quit (Quit: Leaving).
15:50:44 -!- Vorpal has joined.
16:08:31 -!- Frooxius has quit (*.net *.split).
16:08:36 -!- sirdancealot7 has quit (*.net *.split).
16:08:36 -!- heroux has quit (*.net *.split).
16:08:56 -!- heroux has joined.
16:09:11 -!- Frooxius has joined.
16:09:21 -!- sirdancealot7 has joined.
16:13:13 -!- Bike has joined.
16:14:22 -!- ais523 has joined.
16:19:16 -!- augur has quit (Remote host closed the connection).
16:47:09 <Arc_Koen> Phantom_Hoover: and yet there are but so many derivatives/equivalents awaiting for their well-deserved brick
16:52:46 -!- augur has joined.
16:54:26 -!- zzo38 has joined.
17:31:15 -!- zzo38 has quit (Remote host closed the connection).
17:35:43 -!- carado has quit (Ping timeout: 244 seconds).
17:36:05 -!- epicmonkey has joined.
17:43:51 -!- rapido has joined.
17:46:47 <rapido> are there any 'spreadsheet' like esoteric programming languages?
17:48:43 <rapido> i've created one but i want to know about prior art
17:49:11 <FreeFull> I think Excel is turing-complete
17:49:19 <FreeFull> Someone made a 3D engine in Excel
17:49:23 <ion> rapido: loeb :: Functor f => f (f a -> a) -> f a
17:49:31 <rapido> without an escape to Visual basic i believe not
17:49:38 <rapido> excel is not turing complete
17:49:58 <ion> Related: http://youtu.be/_whSnPErl7c
17:50:21 <rapido> ion: cool - but it doesn't resemble a spreadsheet
17:50:29 <FreeFull> If you're going to have a 2D gridthing language, I prefer something like Befunge over spreadsheets
17:50:42 <kmc> rapido: http://blog.sigfpe.com/2006/11/from-l-theorem-to-spreadsheet.html
17:51:43 <elliott> loeb is in fact spreadsheety
17:53:06 <rapido> ah, cool - thanks for the pointer to loeb
17:53:50 <rapido> i've come up with another spreadsheet language which i believe is original
17:54:01 <rapido> i'm sure you guys will know if that's the case
17:54:39 <rapido> i call it the SPREAD language
17:54:52 <rapido> this name isn't taking yes - which surprised me
17:55:19 <rapido> SPREAD introduces three new concepts to a spreadsheet
17:56:05 <rapido> 1) Instead of one single value, a cell can have more alternative values: a Set of values
17:56:11 <boily> didn't https://groups.google.com/forum/?hl=en&fromgroups=#!topic/comp.lang.misc/USKSdYN_uHk introduce the concept of using a spreadsheet?
17:56:17 <rapido> 2) Next to Numbers, Strings, Dates, etc, we have an additional cell type: the 'Spreadsheet'
17:56:44 <rapido> A cell can be named or 'Labeled' with anything - Numbers, Strings, Dates and …… spreadsheets
17:57:06 <rapido> such spreadsheet is called a higher-order spreadsheet
17:58:45 <rapido> i've written about it on my blog http://oercode.blogspot.nl/2012/10/higher-order-spreadheets.html
17:59:25 <rapido> i'm pretty sure it is an original idea - at least google doesn't show anything
18:00:22 -!- Arc_Koen has quit (Quit: Arc_Koen).
18:00:49 <rapido> i've also creating a algebra of streams - which i may or may not include in SPREAD
18:00:50 <rapido> http://oercode.blogspot.nl/2012/10/stream-algebra.html
18:01:08 <rapido> hopefully this will give you guys food for thought
18:02:01 -!- augur has quit (Read error: Connection reset by peer).
18:02:13 -!- augur has joined.
18:02:40 -!- augur has quit (Read error: Connection reset by peer).
18:03:06 -!- augur has joined.
18:06:00 <rapido> i guess SPREAD is not esoteric enough
18:14:56 <rapido> i think higher-order spreadsheets are not turing complete
18:15:28 <rapido> but higher-order spreadsheets are certainly much more powerful than ordinary spreadsheets
18:18:45 <rapido> i still have a connection
18:19:05 <rapido> colloquy is not always showing that
18:20:28 <rapido> does anyone care to comment on the 'higher-order spreadsheet' idea?
18:31:51 -!- barts_ has joined.
18:35:10 <FreeFull> rapido: Now have a cell that embeds a spreadsheet that has a cell that embeds the original spreadsheet
18:35:23 <rapido> you cannot express that
18:37:02 <rapido> sure, but it is impossible to construct it - given the fact that spreadsheets are values (immutable), just like immutable lists
18:37:30 <rapido> (btw, spreadsheet are not lazy values)
18:37:44 <rapido> s/spreadsheet/spreadsheets
18:38:46 <rapido> there is no tying the loop - as in a lazy functional language
18:41:04 <rapido> I also believe SPREAD can be seen as a total functional language
18:42:26 <rapido> the evaluation of a spreadsheet is lazy though (demand driven)
18:42:46 <rapido> or can be made demand driven
18:44:44 <rapido> there is no way a spreadsheet can refer to itself - it would create a cycle
18:46:25 <rapido> but it is an interesting idea to allow it
18:50:46 -!- augur has quit (Remote host closed the connection).
18:53:55 -!- oerjan has joined.
18:55:41 <rapido> enchilada is definitely esoteric
18:57:30 <oerjan> The _whole_ enchilada?
18:58:16 <rapido> oerjan: do you know about http://www.enchiladacode.nl ?
18:58:44 <rapido> i chose the name enchilada exactly to make that pun 'the whole enchilada'
19:00:54 <rapido> i've also created the syrup language - 'a language that sticks'
19:01:03 <oerjan> tape -> tap seems an unlikely typo correction for esolang...
19:01:14 <rapido> (because it is transactional)
19:03:40 <rapido> and most recently the SPREAD language: 'get a taste of SPREAD'
19:04:03 <rapido> i still need to find a better pun for the SPREAD language
19:04:28 <rapido> naming a programming language can be difficult
19:05:07 <oerjan> i don't know, does it have condiments?
19:05:56 <rapido> SPREAD! A tasteful language
19:06:30 <oerjan> it has no deadlocks, although it does have jams
19:12:09 -!- oerjan has quit (Quit: Later).
19:21:14 -!- augur has joined.
19:28:57 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
19:33:48 -!- rapido has quit (Remote host closed the connection).
19:34:10 -!- rapido has joined.
20:02:02 -!- augur has quit (Remote host closed the connection).
20:11:04 -!- augur has joined.
20:18:05 -!- ais523 has quit.
20:18:18 -!- ais523 has joined.
20:23:37 -!- lowtax has joined.
20:26:10 -!- boily has quit (Quit: Poulet!).
20:28:23 -!- Araq has joined.
20:28:59 <Araq> so this channel actually exists ...
20:29:03 -!- Araq has left.
20:32:58 <coppro> it sounds to me like we're legendary or something
20:33:55 <HackEgo> lowtax: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
20:40:40 -!- impomatic has joined.
20:41:51 <impomatic> I want one of these to play with! http://www.ebay.co.uk/itm/MAXIMITE-computer-/170924771749?pt=UK_VintageComputing_RL&hash=item27cbe909a5
20:42:13 -!- augur has quit (Remote host closed the connection).
20:44:49 -!- bjelleklang has joined.
20:52:22 -!- bjelleklang has quit (Quit: Ex-Chat).
21:00:01 <Sgeo> http://www.coderanch.com/t/580590/java/java/Laptop-battery-level-indicator-Java
21:00:27 <Sgeo> My brain just melted at the second post.
21:01:28 <kmc> http://www.wired.com/threatlevel/2012/10/dkim-vulnerability-widespread/all/
21:02:07 <kmc> tl;dr: Dude receives sufficiently incompetent recruiting email from Google that he thinks it's a puzzle, guesses that the puzzle is that google.com's 512-bit DKIM key is crackable, proceeds to crack it, spoofs email from Larry Page
21:07:42 <Sgeo> Seems like it's easy to fix, at least, just generate stronger keys
21:07:48 <Sgeo> And revoke the weak ones
21:08:40 <kmc> don't know if this is one of the applications where key revocation actually works
21:09:27 -!- impomatic has quit (Quit: http://BASICcomic.com).
21:12:55 <elliott> <kmc> tl;dr: Dude receives sufficiently incompetent recruiting email from Google that he thinks it's a puzzle, guesses that the puzzle is that google.com's 512-bit DKIM key is crackable, proceeds to crack it, spoofs email from Larry Page
21:13:07 <elliott> kmc: i got a recruiting email from google once!
21:13:45 <kmc> me too elliott
21:14:39 <elliott> kmc: apparently i am good at "haskell programming and build systems"
21:14:56 <elliott> i think the latter is because i changed ninja's configure script once to work on arch
21:16:39 <kmc> are you a ninja ninja?
21:16:45 <kmc> or are you more of a ninja rockstar
21:17:45 <elliott> kmc: there has to be someone who uses jquery who is in a rock band
21:17:54 <elliott> kmc: and who also does martial arts stuff
21:17:56 <elliott> a true jquery ninja rockstar
21:18:11 <kmc> isn't that like 50% of san francisco
21:18:27 <elliott> kmc: close... those don't count as people
21:19:01 -!- augur has joined.
21:19:36 <kmc> unfortunately "rockstar" and "ninja" are higher standards than "in a band" and "does martial arts stuff"
21:20:23 <kmc> Christos Papadimitriou is a famous computer scientist and also wrote a graphic novel and is in a band
21:21:06 <elliott> "At UC Berkeley, in 2006, he joined a professor-and-graduate-student band called Lady X and The Positive Eigenvalues."
21:21:11 <elliott> that does not even count as a band, sorry kmc
21:23:53 -!- monqy has joined.
21:27:20 <shachaf> Did you know there's a computer scientist called "Nikolaos Bourbakis"?
21:32:38 <kmc> an actual one?
22:18:42 -!- Arc_Koen has joined.
22:34:52 -!- Vorpal has quit (Ping timeout: 244 seconds).
22:49:44 -!- Nisstyre has quit (Quit: Leaving).
22:57:06 -!- Nisstyre has joined.
22:58:13 * ais523 sees misleading ad on YouTube, reports it to Google
22:58:17 <ais523> just for fun, really, I don't expect much to happen
22:59:48 <ais523> Hello, Thanks for sending feedback about an ad that violates AdWords policies. Although we won't be able to respond to your feedback personally, we'll make sure it reaches the appropriate team and, if necessary, take the appropriate action.
22:59:59 <ais523> I even checked the policies to make sure it was against them
23:07:32 <shachaf> youtube is promoting automatic differentiation?!
23:09:09 <elliott> shachaf: does lens support partial lenses
23:10:35 <elliott> shachaf: probably (a -> Maybe (b, b -> a))
23:11:47 <kmc> whose ad was it?
23:12:06 <shachaf> One must differentiate between conal-style ad and edwardk-style ad.
23:13:03 <shachaf> elliott: You could turn that into (a -> (Maybe b, b -> a))
23:13:16 <shachaf> I wonder whether that would be dishonest.
23:13:19 -!- Phantom__Hoover has joined.
23:14:28 -!- rapido has quit (Quit: rapido).
23:14:57 -!- Nisstyre has quit (Quit: Leaving).
23:17:00 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
23:18:10 -!- rapido has joined.
23:18:38 -!- rapido has quit (Client Quit).
23:20:40 <Sgeo> I believe ais523 once said something about JVM being a better runtime?
23:20:40 <Sgeo> http://www.reddit.com/r/netsec/comments/11xt71/challenging_oracle_in_a_different_way_how_hard_it/
23:26:05 <elliott> <shachaf> elliott: You could turn that into (a -> (Maybe b, b -> a))
23:26:09 <elliott> That's the other kind of partial lens.
23:26:21 <elliott> shachaf: It's dishonest when you have PartialLens (Either a b) a.
23:26:33 <elliott> data Foo a = Foo a String | Bar Int
23:26:42 <elliott> And try to put an Int into a Foo constructor.
23:28:26 <elliott> Sgeo: your comment seems to ignore the word "seem".
23:32:29 <Sgeo> elliott, feel free to reply on Reddit? I feel weird saying something in public and only being criticized in private
23:33:06 <elliott> also I haven't posted on reddit in a whole month
23:33:09 <elliott> that's a streak to keep up
23:36:08 <kmc> i haven't posted on reddit in like a year
23:36:08 <coppro> it takes effor not to get dragged into the shitty reddits
23:36:14 <kmc> but today i told some random person off on stack overflow
23:36:17 <kmc> so it balances out
23:36:17 <coppro> (note: the shitty reddits are not shitty)
23:36:18 <shachaf> elliott: You should ask edwardk.
23:36:20 <Sgeo> http://www.reddit.com/r/netsec/comments/11xt71/challenging_oracle_in_a_different_way_how_hard_it/c6rauet
23:36:31 <kmc> the swan and paedo
23:36:52 <Sgeo> coppro, o.O /r/netsec is shitty?
23:38:12 <Sgeo> I just claimed that elliott commented on Reddit.
23:38:17 -!- epicmonkey has quit (Ping timeout: 272 seconds).
23:38:47 -!- Phantom_Hoover has joined.
23:39:15 <elliott> coppro: all the reddits are shitty
23:39:17 <coppro> Sgeo: examples of good reddits include /r/shittyaskscience and /r/lolphp
23:39:24 <elliott> except /r/haskell is ok sometimes and /r/roguelikes too
23:39:25 * Sgeo loves /r/lolphp
23:39:37 <Sgeo> coppro, what's wrong with /r/askscience ?
23:40:11 <coppro> stackexchange sucks, I've learned this
23:41:17 -!- Phantom__Hoover has quit (Ping timeout: 245 seconds).
23:42:08 * Sgeo now has the MST3k theme in his head
23:42:26 <elliott> stackexchange doesn't suck imo
23:42:30 <elliott> very useful for a certain subset of problems
23:44:41 <shachaf> elliott: edwardk is in #haskell
23:45:28 -!- Frooxius has quit (Ping timeout: 252 seconds).
23:46:24 <elliott> type Lens a b c d = forall f. Functor f => (c -> f d) -> a -> f b
23:46:38 <elliott> forall f. Functor f => (c -> f c) -> a -> f a
23:46:43 <Sgeo> I should probably watch that talk on lenses
23:46:58 <elliott> (c -> Maybe c) -> a -> Maybe a
23:47:04 <elliott> but then you can't compose it properly I gues
23:47:26 <shachaf> You're using Maybe as your f?
23:49:57 <shachaf> elliott: What if you used Either, though?
23:50:41 <elliott> but don't the lens utilities set f to various things
23:50:47 <elliott> so it doesn't work if you use one that isn't universally-quantified
23:50:54 <elliott> type Traversal a b c d = forall f. Applicative f => (c -> f d) -> a -> f b
23:50:57 <elliott> what if you use traverse on Maybe
23:51:01 <shachaf> Well, the way you quantify it depends on what the f is.
23:51:17 <elliott> i guess i will ask edwardk in a minute
23:51:26 <shachaf> If you want just a setter you use Identity, if you want just a getter you use Const.
23:51:45 <Sgeo> elliott, :( sorry
23:52:15 <Sgeo> edwardk left immediately after finishing talking to me
23:53:29 <Sgeo> You could @ask him
23:54:08 -!- Tod-Autojoined has quit (Quit: This is me, signing off. Probably rebooting or something.).
23:54:19 -!- TodPunk has joined.
23:54:25 <elliott> shachaf: "This isn't *quite* a legal lens." :(
23:54:55 <shachaf> Otherwise, this is a perfectly cromulent Lens.
23:54:56 <Jafet> You can't bring this lens across state lines.
23:55:09 <shachaf> elliott doesn't know what a state is
23:55:40 <Sgeo> elliott, well, at least because of me you now have a link to the slides from the recent talk if you didn't before
23:56:16 <Sgeo> Also, going to need to follow @PLT_Borat
23:57:35 <elliott> shachaf: you're a state :(
23:57:58 <shachaf> Sgeo: I think I already posted those slides.
23:59:28 <shachaf> elliott: What are "f"s that make sense other than Identity and Const?
23:59:41 <shachaf> You can use Writer to do Foldable-style things.
00:01:02 <shachaf> toListOf (both.traverse) :: Traversable t => (t a, t a) -> [a]
00:02:30 <shachaf> Applicative f => (a -> f b) -> (a,a) -> f (b,b)
00:02:56 <shachaf> I charge 14 pence per ghci query from now on.
00:03:12 <shachaf> Do they still have pence in wherever-you-are?
00:05:00 <shachaf> elliott: Does a Lens (Either a a) a make sense?
00:06:19 <elliott> shachaf: Traversal (a, a) a also makes sense
00:06:27 <shachaf> Hmm, choosing :: Functor f => LensLike f a b c c -> LensLike f a' b' c c -> LensLike f (Either a a') (Either b b') c c
00:07:08 <shachaf> Except I wrote it out for some reason.
00:11:29 <shachaf> elliott: Did you see my GHC bug report?
00:14:41 -!- copumpkin has joined.
00:16:55 <shachaf> http://hackage.haskell.org/trac/ghc/ticket/7364
00:17:48 <elliott> shachaf: more reasons _|_ is bad
00:17:58 <shachaf> _|_ is terrible. That's why I use ⊥.
00:18:08 <shachaf> elliott: Anyway remember how I kept getting confused about semantics of that sort of thing?
00:19:01 <elliott> shachaf: isn't cutting off compiler optimisations for bad semantic reasons great!
00:19:04 <elliott> especially when nobody likes _|_s anyway!
00:33:42 -!- Nisstyre has joined.
00:40:37 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:46:18 -!- Nisstyre has quit (Ping timeout: 260 seconds).
00:50:31 <shachaf> 17:48 <gianp> λx.x is equivalent to λy.y up to alpha-conversion, in the same way that your startup is equivalent to a startup with a good name, up to alpha-conversion.
00:52:09 <monqy> is this about how all startups are the same and badly named
00:52:16 <monqy> I'm not in the know!!
01:27:13 <kmc> http://amoffat.github.com/sh/ is so cool
01:31:18 -!- elliott has quit (Ping timeout: 264 seconds).
01:35:12 <Sgeo> monqy, arpderp
01:35:20 <Sgeo> tswett, you too
01:39:34 <kmc> i'm hoping this is the magic library that makes python actually pleasant for shell scripty things
01:42:06 -!- Nisstyre has joined.
01:59:36 -!- Nisstyre has quit (Ping timeout: 240 seconds).
02:04:31 <pikhq> kmc: Looks like it.
02:04:53 <kmc> already hit a few snags
02:05:06 <kmc> like apparently i can run foo-bar as sh.foo_bar(), but not git ls-files as git.ls_files()
02:05:19 <kmc> even though subcommands like git.show() are supported generally
02:05:27 <kmc> still, pretty nice
02:10:45 <pikhq> It's a freaking shell FFI.
02:14:17 -!- Nisstyre has joined.
02:16:23 <kmc> it's like ctypes for shell
02:16:48 <kmc> but more useful because "everything is a string" is a better universal type lie than "everything is a machine word"
02:18:26 <kmc> but ctypes is useful too
02:18:46 <kmc> sometimes i want to make nearly raw system calls, but do so from a language with real data types and abstractions
02:18:54 <kmc> *cough* kernel exploits *cough*
02:57:27 -!- Canaimero-f560 has joined.
02:59:06 -!- Canaimero-f560 has left.
03:16:11 -!- Nisstyre has quit (Read error: Operation timed out).
03:24:41 -!- Nisstyre has joined.
04:32:31 <kmc> oh jesus, nested heredocs
04:45:30 * pikhq did not realize those "see no evil, hear no evil, speak no evil" monkeys were the result of a Japanese *pun*.
04:47:02 <pikhq> "See no, hear no, speak no" in moderately archaic Japanese is "mizaru, kikazaru, iwazaru". And "seeing monkey, hearing monkey, speaking monkey" can be "mizaru, kikazaru, iwazaru".
04:48:40 <Bike> I thought most everything in Japanese was a pun.
04:49:15 <pikhq> Though wordplay isn't exactly unusual in Japanese.
05:11:27 -!- hagb4rd|afk has joined.
05:12:30 -!- hagb4rd|afk has changed nick to hagb4rd.
05:34:20 <hagb4rd> an astronaut on nasa tv: "th most important thing we have the discovered on the moon is the earth"
05:58:51 -!- FreeFull has quit.
06:23:53 <Sgeo> Maybe the Common Lisp quine will help me understand quines
06:24:15 -!- oklopol has quit (Ping timeout: 256 seconds).
06:24:26 <Bike> what's to understand?
06:25:23 <Bike> backslashes. ruined
06:26:19 <Sgeo> That one's actually more understandable
06:26:21 <shachaf> > text$ap(++)show"text$ap(++)show"
06:26:29 <shachaf> Sgeo: Pretty much all quines work that way.
06:26:39 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b
06:26:56 <Bike> «(#1=(lambda (x) `(,x ',x)) '#1#)» i hope this has been enlightening
07:01:11 -!- epicmonkey has joined.
07:20:29 -!- Bike has quit (Quit: there is no).
07:26:42 -!- epicmonkey has quit (Ping timeout: 260 seconds).
07:29:24 -!- Frooxius has joined.
07:37:01 -!- ais523 has quit.
07:45:10 -!- Phantom_Hoover has joined.
08:07:58 -!- carado has joined.
08:27:29 -!- carado has quit (Ping timeout: 244 seconds).
08:40:57 -!- carado has joined.
08:48:30 -!- epicmonkey has joined.
08:51:12 -!- ais523 has joined.
09:12:19 -!- sivoais has quit (Quit: Lost terminal).
09:53:27 -!- ais523 has quit (Read error: Connection reset by peer).
09:53:40 -!- ais523 has joined.
10:01:34 -!- ais523 has quit (Read error: Connection reset by peer).
10:01:38 -!- ais523_ has joined.
10:13:47 -!- monqy has quit (Quit: hello).
10:29:01 -!- epicmonkey has quit (Remote host closed the connection).
10:29:20 -!- epicmonkey has joined.
11:01:58 -!- ais523_ has quit (Ping timeout: 244 seconds).
11:16:40 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
11:45:36 -!- sivoais has joined.
12:53:30 -!- Arc_Koen has joined.
12:59:46 -!- boily has joined.
13:02:51 <Arc_Koen> what's the opposite of verbose?
13:03:18 <Arc_Koen> for instance how 'd you call a language where there are only symbols and no text at all
13:03:29 <fizzie> "Quiet" is quite often used in terms of command line arguments.
13:03:36 <fizzie> But a "quiet language" sounds a bit silly.
13:03:59 <fizzie> ion: TERSE is a trademark of JimNeiL, you can't use it.
13:04:18 <fizzie> (Though possibly only when spelled uppercase like that.)
13:04:20 <Arc_Koen> "terse" seems to imply you're using words, but no more than the right amount
13:04:43 <fizzie> (And I have to admit I couldn't actually find these trademark registrations in any databases.)
13:13:45 -!- carado has quit (Ping timeout: 268 seconds).
13:24:54 <fizzie> Perhaps "APLy", to coin an adjective.
13:26:00 <ion> Better not use APL, Apple will sue you.
13:41:51 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:42:08 -!- elliott has joined.
13:58:34 -!- Phantom__Hoover has joined.
13:58:59 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
14:01:16 -!- copumpkin has joined.
14:20:30 -!- copumpkin has quit (Ping timeout: 264 seconds).
14:25:51 -!- copumpkin has joined.
14:29:01 -!- pumpkin has joined.
14:30:26 -!- copumpkin has quit (Ping timeout: 255 seconds).
14:30:26 -!- pumpkin has changed nick to copumpkin.
14:45:23 <tswett> I just took a psychological survey. The question it asked was kind of amusing.
14:45:33 -!- epicmonkey has quit (Remote host closed the connection).
14:45:39 <tswett> You see, there's this runaway trolley.
14:45:44 -!- epicmonkey has joined.
14:45:59 <tswett> On the track in front of a trolley, there are five oak branches. If the trolley hits the oak branches, the branches will be destroyed.
14:46:38 <tswett> However, there is a footbridge above the track that has one large oak branch on it. You can push the branch off the bridge and onto the track.
14:47:29 <tswett> If you do, the one large oak branch will be destroyed, but it will stop the trolley, causing the other five oak branches to remain intact.
14:47:34 <tswett> Is it morally acceptable to do this?
14:49:07 <elliott> is the joke that the oak branches are people
14:51:26 -!- augur has quit (Remote host closed the connection).
15:01:06 <mroman> Why the fuck does burlesque have no binary shifts!
15:01:53 <mroman> *2 should do the trick.
15:02:22 <Arc_Koen> tswett: well that depends, aren't you concerned that stopping the trolley might be too big a side-effect?
15:02:46 <tswett> I guess it may be, yeah. I didn't think about that.
15:04:23 <Arc_Koen> well I'll let you think about it, see you later
15:04:37 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
15:10:13 -!- atriq has joined.
15:12:34 <atriq> I need to say more stupid things in #haskell
15:12:56 <atriq> Or be less of an attention seeker
15:16:46 <atriq> I've had one quote on the Haskell Weekly Blog, ever
15:17:41 <elliott> clearly i am a better person than you
15:18:20 <atriq> I'm gonna find that list of stupid things I've said
15:22:45 <HackEgo> 2012-08-18.txt:16:48:55: <atriq> The one in New York'd be my guess
15:25:46 <Phantom__Hoover> (That thing actually has an onboard microprocessor to calibrate and alternate the engine voltage because that's very slightly lighter than mechanical alternatives.)
15:27:14 -!- augur has joined.
15:27:36 <atriq> Having ice cream for lunch was either a very good or a very bad idea
15:28:38 <lambdabot> The operator `GHC.Base.$' [infixr 0] of a section
15:31:32 <kmc> ice cream for lunch, bonghits for dinner
15:43:22 -!- oerjan has joined.
15:52:55 <oerjan> it's been on a long hiatus
15:53:11 <oerjan> also, http://www.drivecomic.com/
15:54:06 <atriq> TVTropes just used "whom" incorrectly
15:54:31 <atriq> It's the case of the subjunctive clause, not the main cause, that decides whether it's "who" or "whom"
15:54:43 <atriq> ...says the person who never ends a sentence with a full stop
15:55:39 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
15:55:56 <pikhq> atriq: And in many idiolects, it's just "who".
15:56:23 <atriq> pikhq, the fact that they're using the word "whom" implies they are not using one of those idolects
15:58:15 <oerjan> we should not tolerate whomsoever would do such a horrible thing
15:58:47 <elliott> oerjan: did you ever see my awful haskell horror
15:59:21 <elliott> oerjan: http://hpaste.org/76553
16:01:54 <oerjan> i still think we should not tolerate whomsoever would do such a horrible thing
16:02:14 <atriq> I've edited the article in question
16:02:39 <atriq> (Must Have Caffeine, in the entry for the Big Bang Theory)
16:08:45 -!- mindlessDrone has joined.
16:09:18 <oerjan> ah i've been having an opportunity to watch tv recently, which has finally brought me in contact with that series.
16:09:42 <oerjan> i have far too many similarities to Sheldon. not the lack of empathy, but otherwise...
16:10:51 <oerjan> does "all" refer to just this channel, or most people...
16:11:04 <kmc> that show is so bad
16:12:44 <kmc> Big Bang Theory is really bad
16:14:09 <kmc> hey let's make an unfunny laugh track multicamera sitcom except we base it around nerd stereotypes instead of racial stereotypes and gay people stereotypes and NOW NERDS LOVE US
16:14:30 <kmc> nerds don't act that way
16:14:32 <kmc> people don't act that way
16:14:53 <kmc> that type of sitcom is really just a vehicle for delivering one liner jokes
16:15:05 <kmc> i could just watch standup comedy instead and be infinitely less annoyed
16:15:24 <oerjan> but are your reasons for hating it themselves nerdy? *ducks*
16:15:38 <elliott> kmc: it wouldn't even be so objectionable if it was, you know, actually funny
16:15:39 <kmc> who gives a shit
16:16:26 <kmc> i have watched a fair amount of BBT and also a fair amount of two and a half men (same creater)
16:16:34 <kmc> and then one day i was just like "why?????"
16:16:36 <oerjan> next you'll tell me you also hate phineas & ferb, the other show i've just started watching
16:16:50 <kmc> i've never seen phineas & ferb, and i have no opinion on it
16:17:00 <kmc> i mean if you enjoy BBT, then go ahead and watch it, don't let me tell you not to like something
16:17:23 <kmc> it's not like i didn't ever laugh while i was watching it
16:18:24 <oerjan> i did get a glimpse of two and a half men too, and i didn't like that
16:20:27 <atriq> Trivia: Big Bang Theory doesn't actually have a laugh track
16:21:12 <elliott> clearly we have differing definitions of laugh track.
16:21:29 <atriq> It's filmed in front of a live audience
16:21:43 <kmc> these things are technically different, but you take my meaning
16:21:47 <elliott> that's still a laugh track
16:21:59 <elliott> it exists for the purpose of putting laughs in because that makes people laugh more
16:22:10 <kmc> either way it completely changes the pacing of the show
16:22:14 <elliott> and i suspect most "live audiences" are directed when to laugh, or at least mixed misleadingly
16:22:32 <kmc> the characters will say something and then just stand there for 1-2 seconds while people laugh
16:22:36 <elliott> there are good sitcoms with laugh tracks
16:22:54 <elliott> it probably wouldn't lose much if it didn't have the laugh track though
16:23:01 <kmc> That Mitchell and Webb Look has a laugh track and is very good, but it's sketch comedy
16:23:27 <kmc> i think Peep Show doesn't
16:23:31 <kmc> can't recall
16:25:26 <Robdgreat> though it's amazing how little attention I pay to things like that
16:32:19 -!- FreeFull has joined.
16:37:44 <oerjan> ^ul (((1)S:^)(!(0)S:^)):^(^!^!^^!^^^!^)^
16:38:30 <oerjan> ^ul (S:):((x)~^(y)~^(z)~^)^
16:38:51 <oerjan> ^ul ((:a~*(x)):a~*(x))(~^S~:^):^
16:38:51 <fungot> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...too much output!
16:39:12 <oerjan> ^ul (((x))(!(y))(!!(z)))^!^S
16:39:29 <oerjan> ^ul (((9)S)(!(8)S)(!!(7)S)(!!!(6)S)(!!!!(5)S)(!!!!!(4)S)(!!!!!!(3)S)(!!!!!!!(2)S)(!!!!!!!!(1)S)(!!!!!!!!!(0)S))^(!)(::*:**)^^^
16:42:28 <oerjan> Excellent, the examples all work
16:43:29 -!- Vorpal has joined.
16:43:48 -!- oerjan has quit (Quit: Supper).
16:45:14 -!- atriq has quit (Quit: Leaving).
16:49:19 <lambdabot> "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx...
16:51:13 <fizzie> Which examples were those?
16:51:24 <fizzie> Oh, there isn't an oerjan any more.
16:58:19 -!- barts__ has joined.
17:01:38 -!- barts_ has quit (Ping timeout: 260 seconds).
17:10:11 -!- Phantom__Hoover has joined.
17:16:54 -!- epicmonkey has quit (Ping timeout: 264 seconds).
17:35:35 <Gregor> pikhq: How does Go implement interface method dispatch when interfaces are entirely implicit? PICs.
17:36:03 <Gregor> Straight from Rob Pike.
17:36:42 <kmc> meaning what?
17:37:00 -!- lowtax has left ("Leaving").
17:37:24 <Gregor> Polymorphic inline cache. It inlines particular addresses to dispatch to based on particular types.
17:40:34 <elliott> Gregor: what's the context here
18:28:22 <tswett> > let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMap (\x -> [x,x]) xs)
18:28:23 <lambdabot> not an expression: `let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMa...
18:28:26 <tswett> > let xs = 0 : zipWith (\x y -> 1 + x + 3*y) xs (concatMap (\x -> [x,x]) xs) in xs
18:28:27 <lambdabot> [0,1,2,6,10,17,24,43,62,93,124,176,228,301,374,504,634,821,1008,1288,1568,1...
18:29:47 -!- epicmonkey has joined.
18:31:15 -!- Gregor has quit (Excess Flood).
18:31:23 -!- Gregor has joined.
18:37:10 -!- Nisstyre has quit (Read error: Operation timed out).
18:37:30 <tswett> I'm pondering a notion of "bigness" of numbers. Let's define the number 3 has having a bigness of 1, 3 -> 3 as having a bigness of 2, 3 -> 3 -> 3 as having a bigness of 3, 3 -> 3 -> 3 -> 3 as having a bigness of 4, and so on.
18:38:00 <tswett> Graham's number must then have a bigness between 3 and 4. So what should its bigness be, exactly?
18:39:15 <tswett> Well, that's the same as... 2 -> 6 -> 4, I think? So it looks like its bigness is around 3.
18:40:37 <tswett> It's 2 ^^^^ 6, or 2 ^^^ 2 ^^^ 2 ^^^ 2 ^^^ 2 ^^^ 2. I'm reasonably sure its bigness is greater than 3, then, since 3 -> 3 -> 3 is only 3 ^^^ 3.
18:42:23 -!- mindlessDrone has left.
18:51:23 <elliott> @tell ais523 tavern isn't run by the devs
18:51:28 <tswett> TREE(3) could very well have a very large bigness.
18:53:17 <olsner> what happened to oerjan?
18:54:35 <fizzie> A very long supper, based on the quit message.
18:54:53 <fizzie> Actually I suppose it's been only two hours so far, that's not so long.
19:16:22 * tswett ponders what's between 3 -> 3 -> 3 -> 2 and 3 -> 3 -> 3 -> 3.
19:16:54 <tswett> What's a simple number that's subjectively midway between them?
19:17:02 * copumpkin wonders what the first decimal digit of TREE(3) is
19:17:12 <tswett> The way that 3 -> 3 -> 3 -> 2 is subjectively midway between 3 -> 3 -> 3 -> 3 and 3 -> 3 -> 3 -> 1.
19:19:00 <copumpkin> or even the first digit of graham's number
19:19:50 <coppro> tsethat's a silly definition
19:19:59 <coppro> *tswett: that's a silly definition
19:20:16 <tswett> It's not a definition at all; it's an example.
19:20:21 <coppro> 4 has bigness 2 and 1 by your def
19:21:21 <tswett> You're overgeneralizing. This definition of bigness is only for numbers of the form 3 -> 3 -> ... -> 3 -> 3.
19:22:27 <coppro> then Graham's number has no bigness
19:22:34 <tswett> FreeFull: Wikipedia says that's (2 -> 103 -> 98) - 3.
19:22:39 <tswett> Well, its bigness is, so far, undefined.
19:25:49 -!- augur has quit (Remote host closed the connection).
19:26:10 <tswett> Lessee. If you define E(n) as 3 -> 3 -> (n) -> 2, then 3 -> 3 -> 3 -> 2 is E(3) whereas 3 -> 3 -> 3 -> 3 is... E(E(27)), I guess. And 27 = E(1).
19:26:29 <tswett> What's subjectively midway between E(3) and E(E(E(1)))? I dunno. E(E(2))?
19:27:44 -!- augur has joined.
19:28:23 -!- Bike has joined.
19:31:26 <tswett> If I could just think of a function that takes 3 to 3 -> 3, 3 -> 3 to 3 -> 3 -> 3, 3 -> 3 -> 3 to 3 -> 3 -> 3 -> 3, and so on...
19:31:45 -!- Nisstyre has joined.
19:37:09 <FreeFull> Unless you mean 3 -> 3 becomes 3 -> 3 -> 3 -> 3 -> 3
19:52:26 <fizzie> FreeFull: That's not how -> works.
19:53:24 <fizzie> See http://en.wikipedia.org/wiki/Conway_chained_arrow_notation#Interpretation
19:56:46 <fizzie> 2 -> 3 -> 2 is not 2 -> (3 -> 2), nor is it (2 -> 3) -> 2.
19:59:08 <Bike> fast growing function, then.
20:09:33 -!- augur has quit (Read error: Connection reset by peer).
20:09:59 -!- augur has joined.
20:21:10 -!- copumpkin has changed nick to john_smith.
20:23:17 -!- john_smith has changed nick to copumpkin.
20:29:38 -!- epicmonkey_ has joined.
20:29:47 -!- epicmonkey has quit (Ping timeout: 244 seconds).
21:17:49 -!- carado has joined.
21:24:07 -!- monqy has joined.
21:25:01 <shachaf> hi monqy, elliott, monqy, shachaf
21:25:35 -!- carado has quit (Ping timeout: 244 seconds).
21:29:09 -!- boily has quit (Quit: Poulet!).
21:41:38 -!- epicmonkey_ has quit (Ping timeout: 260 seconds).
21:52:25 -!- Arc_Koen has joined.
21:53:33 -!- Vorpal has quit (Ping timeout: 276 seconds).
22:02:07 -!- FreeFull has quit (Quit: Sleeep? Sleep! ???).
22:02:22 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:19:18 -!- augur has quit (Remote host closed the connection).
22:23:35 -!- copumpkin has joined.
22:41:10 <tswett> Hm. Conway's chained arrow notation makes sense for ordinal numbers.
22:42:28 <tswett> Let w = omega. Then w -> w is simply w^w. w -> w -> w is... I guess we have to say it's the limit of w -> w -> n for natural numbers n.
22:42:47 <coppro> tswett: any extension of arithmetic does, pretty much
22:43:34 -!- Phantom__Hoover has quit (Ping timeout: 240 seconds).
22:44:50 <tswett> Which... let's assume that it still corresponds to up-arrow notation; that means w -> w -> w is the limit of w ^(n) w for natural numbers n, where ^(n) is n up-arrows.
22:46:53 <tswett> w ^(2) w is epsilon_0, isn't it? Then I have no idea what w ^(3) w is, and w ^(w) w must be really, really big.
22:47:27 -!- augur has joined.
22:49:22 -!- Phantom_Hoover has joined.
22:51:04 <tswett> Yeah. http://en.wikipedia.org/wiki/Epsilon_nought
23:49:51 <kmc> http://phpmanualmasterpieces.tumblr.com/
23:54:01 <kmc> Tex Wasabi Rock-N-Roll Sushi BBQ
00:04:43 -!- Frooxius has quit (Ping timeout: 260 seconds).
00:15:40 -!- Arc_Koen has quit (Quit: Arc_Koen).
00:22:00 -!- MoALTz_ has joined.
00:25:06 -!- MoALTz has quit (Ping timeout: 255 seconds).
00:35:54 <kmc> http://phpmanualmasterpieces.tumblr.com/post/33023415508/when-does-one-byte-equal-four-kilobytes
00:38:51 <coppro> tswett: isn't w ^(3) w just epsilon_omega?
01:11:54 -!- Nisstyre has quit (Ping timeout: 240 seconds).
01:22:47 <Sgeo> Oh sweet Jesus don't use this in real code
01:22:50 <Sgeo> http://briancarper.net/blog/449/clojure-reader-macros
01:24:09 <Phantom_Hoover> kmc, http://phpmanualmasterpieces.tumblr.com/post/33239208258/drop-the-ball
01:24:39 <Phantom_Hoover> for allowing me to know that someone thought this was a good idea
01:25:58 <Phantom_Hoover> http://www.matthewdaocs.co.uk/blog/2012/10/21/Life-Lessons-Stage-2-12.aspx
01:26:33 <Bike> Sgeo: "this is a bad idea. but how do we do it?"
01:26:44 <Sgeo> Bike, I love it
01:26:51 <kmc> i think PHP has absolutely no culture of "What Are You Really Trying To Do"
01:27:22 <kmc> beginners often come up with unreasonable strategies for accomplishing reasonable goals
01:27:35 <Sgeo> I might declare war on Redditor cljlover
01:27:47 <kmc> #clojureteric
01:33:37 <Sgeo> Phantom_Hoover, a number of months, I think
01:33:43 <Sgeo> Hmm, maybe since beginning of September or so?
01:33:49 <Sgeo> But I've played with it a little before that
01:33:53 <Sgeo> It's always fascinated me
01:34:30 <monqy> why are you declaring war. have you used closure for anything. why does it fascinate you. i'm fascinated.
01:34:33 <elliott> it's good that we get to hear about sgeo's adventures with clojure
01:34:41 <elliott> for the benefit of many in the channel
01:34:45 <elliott> such as sgeo, sgeo and sgeo
01:34:52 -!- madbr has joined.
01:35:02 <monqy> don't forget about me, monqy
01:35:12 <madbr> hmm, I wonder how broken Swing is
01:35:15 <elliott> monqy: i know someone who would never forget about you, monqy
01:35:26 <Phantom_Hoover> i've let the O(log_32 n) thing run its course by now haven't i
01:35:33 <elliott> monqy: do you want a hint as to who it is
01:35:50 <Sgeo> monqy, because this person is clueless about Clojure yet thinks he can teach it
01:36:03 <monqy> that was my second guess
01:36:12 <monqy> Sgeo: do you have the clues
01:36:15 <monqy> maybe you can help him!
01:36:19 <elliott> you only get one guess, monqy
01:36:36 <monqy> the peace is teaching clj lover about the thing he loves
01:37:10 <Sgeo> Oh hey maybe this person did get a clue
01:37:25 <elliott> im upset wrt how only one of monqys questions got answered
01:38:32 <monqy> Sgeo: what sort of a clue did he get. what sort of a clue did he lack. how does one truly understand clojure.
01:38:46 <monqy> these are more questions btw
01:39:11 <Sgeo> Haven't used Clojure for anything yet.
01:39:23 <Bike> perhaps you could indicate your questions with some kind of specialized marker. just put "question" after every sentence
01:39:36 <Sgeo> It fascinates me because it's a reasonably functional Lisp with a decent sized community.
01:40:09 <monqy> Bike: do you pronounce your name bike or baik
01:40:34 <Bike> yes, and I'm not sure of the distinction.
01:41:25 <HackEgo> BiKe: WeLcOmE To tHe iNtErNaTiOnAl hUb fOr eSoTeRiC PrOgRaMmInG LaNgUaGe dEsIgN AnD DePlOyMeNt! FoR MoRe iNfOrMaTiOn, ChEcK OuT OuR WiKi: HtTp://eSoLaNgS.OrG/WiKi/mAiN_PaGe. (fOr tHe oThEr kInD Of eSoTeRiCa, TrY #eSoTeRiC On iRc.dAl.nEt.)
01:41:26 <elliott> Bike: where did you come from & is it good
01:41:33 <Sgeo> monqy, after he had an utterly wrong explanation of doseq vs for, I explained it, and now he seems to be explaining it that way
01:41:52 <Bike> that's quite some capitalization; nowhere; no
01:42:00 <Bike> I browse the wiki sometimes and decided I may as well drop by.
01:42:03 <monqy> the essence of clojure enlightenment
01:42:11 <monqy> the essence of clojure
01:42:12 <Bike> and then I stayed because people were talking about math I don't understand.
01:42:14 <monqy> the essence of enlightenment
01:42:43 <elliott> i thought you were a clojure person or something
01:42:47 <elliott> at least i vaguely remember something like that in the logs
01:42:50 <elliott> but remembering things is hard
01:42:58 <Bike> I taked with sgeo about clojure a bit yesterday.
01:43:36 <Bike> talked*. we moved it to #clojure because it wasn't wanted here.
01:43:44 <Sgeo> And wasn't wanted in #lisp
01:43:49 <monqy> ugh i keep pronouncing bike [bike] in my head and it's so silly sounding i have to readjust to [baik]
01:44:09 <Bike> I don't think I've ever pronounced it out loud. do as you please
01:44:21 <elliott> monqy: what is the different. im not ipa
01:44:38 <monqy> a bug and a letter vs a thing u ride on
01:44:39 <elliott> real question is what is #lisp. what is Sgeo. what is #esoteric. what is ipa
01:44:56 <Bike> I didn't know there was a bug by this name.
01:45:25 <elliott> ok well i just read it as bike
01:46:09 <Bike> picture a bike constructed out of bees. there you go
01:46:16 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:46:29 <monqy> can you ride on the bike
01:46:32 <monqy> will it hurt the bees
01:46:46 <Bike> Only one way to find out.
01:46:51 <monqy> no...........................
01:47:49 <monqy> Sgeo: btw did you answer my question about truly understanding clojure & do you truly understand clojure
01:47:55 <monqy> i'm all questions..
01:48:19 <Sgeo> I understand Clojure better than this person does.
01:48:35 <monqy> but what does that mean...........................
01:49:03 <Sgeo> It means I actually understand the distinction between doseq and for, and understand that for, doseq, and loop are not functions.
01:49:07 <Bike> what does anything mean, truly
01:49:37 <monqy> you sound like you know a lot about clojure can you teach me a lot about conjure can you teach me clojure
01:59:01 <kmc> Sgeo: what are the 5 stupidest things in the design of clojure
02:00:33 <Sgeo> In my opinion, you mean?
02:03:36 <monqy> alt. no in my opinion alt. i can't think of any more alts
02:05:25 <kmc> Sgeo: yeah
02:05:50 <kmc> and i don't mean things like "it's too awesome for this world" or "people are too stupid to learn how brilliant it is"
02:05:59 <kmc> actual bona fide flaws in the language (or its standard libraries)
02:06:29 <Sgeo> Hmm. Early on, I had some tastes that this thing was bad or that thing was bad, but my tastes have actually started to vary.
02:06:51 <monqy> does this mean clojure is perfect
02:07:03 <Bike> how about macroexpand-all sucking ass
02:07:12 <Sgeo> Bike, that was originally a contrib thing.
02:07:42 <Sgeo> But yes, the macroexpand-all mentioned on the clojuredocs website that now seems to come with Clojure should not be used under any circumstances.
02:08:55 <Sgeo> Something I thought of before Bike reminded me of that: Sets are a function, given an argument they return.... the argument if it's present in the set, and nil if it's not.
02:09:48 <Sgeo> Which means that if you often write code using sets as functions to test presence in the set, if nil is in the set and you try to test for nil's presence, you will likely wrongly assume that nil is not in the set
02:10:16 <Sgeo> The really bad thing is that using sets in this manner is somewhat encouraged on clojuredocs.org
02:13:01 <kmc> this is a common flaw in data structures like that
02:13:48 <kmc> it's a pitfall of "dynamic typing" i.e. having a single, global, ad-hoc sum type
02:14:06 <kmc> i,i "0 but true"
02:14:52 <shachaf> kmc: Well, C doesn't really have a solution either.
02:15:03 <shachaf> Other than using a pointer, I guess.
02:15:15 <Sgeo> Not difficult to imagine a dynamic language that does not assign truthiness or falisity to things other than true or false.
02:15:32 <shachaf> Unless you're thinking of a different problem from the one I'm thinking of.
02:15:34 <Bike> that doesn't matter, the same problem would come up any time you tried to get the false value.
02:15:36 <Sgeo> The if structure could just throw an error at runtime if given something other than true or false
02:15:54 <kmc> shachaf: sure, dynamic typing is neither necessary nor sufficient to have this problem, it just encourages it
02:16:21 <kmc> you can emulate Maybe in Python easily enough
02:16:25 <Bike> how does static typing help?
02:16:26 <kmc> Nothing is None and (Just x) is (x,)
02:16:57 <shachaf> Most languages, dynamically or statically typed, have pretty terrible support for "sum types".
02:17:06 <kmc> it's not really about static typing at all
02:17:08 <kmc> that's true
02:17:31 <kmc> a dynamically typed language could still encourage people to think of "Nothing vs. Just" rather than "Nothing vs. anything else"
02:17:45 <kmc> but mostly they don't
02:17:51 <Sgeo> At any rate, the documentation should encourage people to use contains? instead
02:17:53 <kmc> the (x,) idiom is fairly common in python i think
02:17:58 <shachaf> The nice thing about Maybe is that it distinguishes Nothing from Just Nothing.
02:18:14 <kmc> but Maybe# doesn't!
02:18:16 <Bike> is (None,) not distinguished from None?
02:18:41 <kmc> but the standard in python is "return None or x", not "return None or (x,)"
02:18:57 <Bike> ah, yes. but that's not really a dynamic typing thing, yeah.
02:18:58 <shachaf> Which is admittedly very convenient.
02:19:19 <kmc> statically typed languages tend to push much further in the Maybe direction, though
02:19:26 <kmc> because they don't give you this global sum type to fall back on
02:19:39 <shachaf> Except for the whole "null" thing.
02:19:41 <Bike> Couldn't they?
02:20:02 <kmc> you can have things like Haskell's Dynamic
02:20:14 <kmc> but it's still apparent in the function signature when you're using them
02:20:24 <kmc> and it's not the usual thing to do
02:20:34 <Bike> I just mean hypothetically.
02:21:05 <kmc> well, if you allow a function to return values of either of two completely unrelated types, without some kind of boxing / tagging, what is the type of that function
02:21:16 <kmc> it can return the maximally useless existential type
02:21:40 <kmc> or it can return the union of all types, if you have a subtyping system
02:21:44 <kmc> in Java you would return Object
02:21:58 <Bike> can't you just establish a union type...?
02:21:59 <kmc> so yeah, Java does sort of have this implicit global sum type
02:22:15 <kmc> Bike: then you're not falling back on the implicit global sum type
02:22:19 <Bike> other than unboxed values not being Objects I guess.
02:22:21 <kmc> you're introducing your own sum type
02:22:44 <Bike> oh, as long as I'm asking dumb questions about types. is TAPL the thing to read?
02:22:50 <kmc> TaPL is a good thing to read
02:26:23 <Sgeo> Here's another flaw, although there's a library that ... eh
02:26:43 <Sgeo> The Clojure ecosystem seems to encourage doing command-line stuff and restarting the REPL quite a bit
02:26:46 <shachaf> kmc: Wouldn't it be "nice" if in C you could use the pointer value 1 as well as the pointer value 0, for a second level of invalid pointers?
02:26:59 <shachaf> Since that whole page isn't used for anything anyway.
02:27:03 <Sgeo> Making a new project with Leiningen involves issueing command line stuff
02:27:38 <Sgeo> Adding libraries to a project involves restarting the REPL, atlhough there are things that try to work around that
02:28:35 <Sgeo> (I should note that that's Leiningen, not Clojure, but Leiningen's the only real major... thing in the Clojure space for these purposes)
02:29:12 <Bike> what does that name mean
02:29:20 <Sgeo> I have no idea
02:36:49 -!- Mavrick has joined.
02:37:05 <HackEgo> Mavrick: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
02:39:29 <kmc> shachaf: http://lxr.linux.no/linux+v3.6.3/include/linux/err.h#L8
02:40:56 <kmc> negative small errno value == pointer into last page of memory
02:41:06 -!- Mavrick has quit (Ping timeout: 245 seconds).
02:41:33 <madbr> elliott: sub standard gui managers?
02:41:54 <elliott> i don't know what you mean by that term but i am 99% sure that is not why linux is gross
02:42:23 <kmc> operating systems are like sausages
02:42:35 -!- Nisstyre has joined.
02:43:12 <Bike> you don't want to see how they're made, or something like that
02:43:46 <madbr> elliott: it's just one of the things
02:44:36 <Bike> is this an in-joke
02:44:58 <monqy> ask shachaf about it
02:45:12 <elliott> it's not a joke and asking shachaf won't be helpful
02:45:26 <monqy> hey elliott should i introduce Bike to feather
02:45:36 <Bike> gosh, I don't know what to do with all this conflicting information.
02:45:38 <pikhq> Bike: It's an in-thing but not a joke.
02:45:49 <madbr> linux is used by the kind of people that use the console for as many things as possible
02:46:13 <elliott> madbr: my mother uses linux.
02:46:21 <elliott> are you sure you're not stuck in the 90s wrt how user-friendly linux is
02:46:34 <Bike> are you sure your mother isn't a console cowboy?
02:46:57 <madbr> elliott: well, that's the linuxians I know
02:47:19 <elliott> is console cowboy a thing people say
02:47:25 <elliott> petition for it to not become a thing people say
02:47:32 <elliott> that's my petition anyone want to sign it how about monqy
02:47:56 <Bike> It's a thing people who don't really exist said in the 90s (80s?).
02:47:58 <monqy> i bet you're saying that because you want to hide your identity as being/not being a console cowboy because you are ashamed
02:48:15 <madbr> a lot of ppl I know are, like, musicians, so they don't use linux
02:48:38 <Bike> are you implying puredata isn't the most beautiful interface you've ever seen
02:48:51 <elliott> i know of musicians who use linux
02:49:10 <elliott> Bike: well it is basically max/msp with less antialiasing and that is sort of popular :p
02:49:11 <madbr> bike: can you link to a good song composed with PD or supercollider? :D
02:49:18 <elliott> though i suspect pure data has less functionality
02:49:21 <elliott> i don't really know anything about it
02:50:09 <Bike> max has more library code, far as I know
02:50:09 <madbr> elliiott: what program do they use
02:50:45 <elliott> madbr: i understand there is a relative plethora of programs
02:50:55 <elliott> though certainly none were as polished as windows/os x stuff last time I checked polish is just one thing
02:51:45 <Bike> they just cat to /dev/dsp, no doubt.
02:52:00 <monqy> a console cowboy would have it no other way
02:52:10 * Sgeo reads about Typed Clojure
02:52:29 <madbr> monqy: they don't compose 4 minutes of music per hour either
02:52:34 <kmc> reference for console cowboys: http://www.youtube.com/watch?v=BNtcWpY4YLY
02:52:43 <monqy> elliott: btw im making console cowboy a thing people say
02:52:53 <Bike> Sgeo: like typed racket, or
02:53:11 <Sgeo> Bike, some inspiration from Typed Racket, I think
02:53:24 <elliott> madbr: is this some kind of interrogation whereby i fail if i don't answer your question satisfactorily. idk i don't get this vibe, esp. the weird condensing of the plural into a "they" / missing distinction of "know" vs. "know of"
02:53:26 <elliott> people do things and stuff
02:53:32 <kmc> typed racket: anyone using a model m keyboard
02:53:33 <Sgeo> It's definitely mentioned, but I think it does other things. Typed Racket does cool things that Typed Clojure doesn't, and visa versa
02:53:44 <Sgeo> http://cloud.github.com/downloads/frenchy64/papers/paper.pdf
02:53:44 <Bike> kmc: gosh, I was starting to be afraid I was the only one who'd seen ghostwriter
02:54:03 <madbr> elliott: my point is that there are no good music programs on linux
02:54:06 <elliott> `addquote <kmc> typed racket: anyone using a model m keyboard
02:54:10 <HackEgo> 873) <kmc> typed racket: anyone using a model m keyboard
02:54:34 <kmc> http://www.youtube.com/watch?v=oJagxe-Gvpw
02:54:46 <elliott> madbr: i find that dubious for a whole host of reasons but i suspect you would find my counterarguments uncompelling
02:55:21 <madbr> elliott: what are the good music programs for linux?
02:55:37 <elliott> kmc: i hope this video doesn't contain relevant information in the audio track which got muted in two seconds
02:55:46 <kmc> it's just that song from portal
02:56:15 <kmc> i actually like that song again but i don't blame you
02:56:28 <madbr> elliott: like, I can easily name a dozen of good programs for music on windows
02:56:52 <kmc> it was really annoying for a year when everyone was constantly referencing and quoting portal
02:57:00 <kmc> now it has died down a bit and i do enjoy me a portal reference from time to time
02:57:12 <madbr> yeah now it's ponies
02:57:14 <elliott> kmc: that's just because you're a console cowboy
02:57:16 <elliott> monqy: am i doing it correctly
02:57:18 <kmc> by the way i discovered the secret to better replay value on portal co-op:
02:57:46 <elliott> kmc: ok i am starting to suspect this was staged with this downloading a windows service pack thing
02:57:49 <Bike> bash: sudo: command not found <-- work of art
02:57:56 <kmc> yes AS ROOT
02:58:04 <pikhq> madbr: Personally, I'm using Ario and mpd.
02:58:22 <pikhq> madbr: If elliott recommends Quod Libet, beat him.
02:58:31 <kmc> elliott: yeah it might be staged, but i really have no trouble believing people this stupd / drunk do exist
02:58:36 <monqy> what makes a music program good by the way
02:58:41 <madbr> pikhq: that's a player no?
02:58:47 <pikhq> It seems awesome, until you realize it's using more RAM than my god damned web browser and actually causing me to swap.
02:59:07 <pikhq> Yeah, Quod Libet is a music player.
02:59:20 <pikhq> Which is mostly awesome, but it leaks memory worse than god damned Firefox.
02:59:26 <madbr> yeah I mean music producing programs
02:59:33 <pikhq> I have no recommendations.
02:59:37 <madbr> players are a lot easier to code :D
03:00:01 <madbr> monqy: once you have good plugin and recording systems going, ergonomy
03:00:18 <pikhq> Linux programs tend to be the result of scratch-your-own-itch...
03:00:23 <kmc> elliott: http://www.youtube.com/watch?v=T7DKSao0ndI
03:00:27 <pikhq> And there's not that many programmer-musicians out there.
03:00:43 <pikhq> So you're not likely to get good music producing programs.
03:00:55 <elliott> "THIS IS A EXPERIMENT .. THERE IS A HACKING GOING ON BUT THE ANTI VIRUS IS FIGHTING THE HACKER .. DUMB FUCK"
03:00:59 <pikhq> Same reason why on the art end all we've got is Gimp, which also sucks.
03:01:15 <kmc> eh it's pretty decent
03:01:18 <kmc> elliott: i have no idea
03:02:04 <madbr> pikhq: yeah... which is why I use windows :o
03:02:06 <monqy> In the video above, the server is shown on the left, where the accounts of the people signed up to make calls are represented by blue bubbles. A hacker's attack comes from the right, launching small white and red bubbles that represent scans from a malicious computer program. The battle that plays out is slowed down by 25 per cent.
03:02:45 <monqy> If the hacker's scans connect with the blue bubbles, they may be able to compromise the server, gathering the passwords of account holders and ultimately letting the hacker control other people's phone activity.
03:02:45 <elliott> If you missed last week's "Born to be viral" video, watch a fireproof suit as it resists 1000˚C flames.
03:02:48 <monqy> To protect itself against the attack, the server releases green honeypots: disguised data released to trap the intruding scans. But the hacker then increases the number of scans in an attempt to overwhelm the honeypots. In the end, the server wins the battle.
03:03:12 <Bike> so what does the middle space represent
03:03:17 <Bike> why is there gravity
03:03:38 <monqy> the gravity represents the gravity of the situation
03:03:43 <kmc> hackers hate gravity
03:03:53 <kmc> that's why in neuromancer they had to go into space to hack
03:03:53 <Bike> yeah it does seem pretty serious, I mean look at all those honeypots.
03:03:58 <kmc> and meet up with the space rastafarians
03:04:14 <elliott> kmc: you know things about kernel right
03:06:08 <monqy> i wonder if i ever knew things about kernel though
03:06:41 <elliott> monqy: maybe you can learn from Sgeo
03:07:20 <monqy> sgeo teach me if i ever knew things about kernel please
03:07:40 <elliott> kmc: anyway why doesn't thingy
03:07:44 <Sgeo> Grep the logs?
03:08:26 <shachaf> kmc: I know about that from having called mmap with ptrace.
03:09:10 <shachaf> It'll always return a page-aligned pointer, anyway, so it works unless you have way too many errnos.
03:09:22 <kmc> ETOOMANYERRNOS
03:10:20 <kmc> i need a clever halloween costume which is also extremely low effort
03:12:45 <elliott> that is kmc's natural state though
03:12:55 <elliott> kmc: how about console cowboy
03:12:58 <elliott> i hear it's the hip new thing
03:13:49 <kmc> maybe i could boost the VT220 from SIPB
03:15:54 <shachaf> elliott: You should help with rwbarton's lazy map thing!
03:16:41 <elliott> shachaf: those unsafeCoerces look unjustifiable
03:17:05 <shachaf> elliott: You don't think you can coerce between a strict boxed field and an unstrict boxed field?
03:17:19 <shachaf> The point of this is to figure out whether you can do that.
03:17:57 <kmc> elliott: that reminds me of Dance Dance Immolation
03:18:19 <kmc> which is like Dance Dance Revolution except that it shoots flames at you when you miss a step
03:18:32 <kmc> you wear a fireproof suit
03:18:40 <kmc> it was a thing at Burning Man and elsewhere
03:19:48 <elliott> kmc: this sounds of questionable safety
03:20:18 <kmc> safety third!
03:24:24 -!- madbr has quit (Quit: Radiateur).
03:41:05 <Sgeo> Is firewalking unsafe?
03:42:11 -!- aloril_ has quit (Ping timeout: 260 seconds).
03:55:06 -!- aloril_ has joined.
03:59:57 <elliott> kmc: wasn't i going to ask you about kernel
04:18:48 <elliott> kmc: ok so what if like hygenic kernel
04:21:14 <monqy> hygenic kernel????
04:22:21 <monqy> shachaf calm down cool it chill
04:22:21 <elliott> kmc: i guess i am too tired to explain this properly
04:32:52 -!- hagb4rd has quit (Ping timeout: 244 seconds).
04:36:00 -!- hagb4rd has joined.
04:39:43 <shachaf> "The type named NIL is sometimes confused with the type named NULL, which has one value, namely the symbol NIL itself."
04:40:24 <Bike> bonus: NIL is also in the symbol type.
04:43:59 <Bike> so you have union(symbol,sequence)>nil, I suppose
04:46:24 -!- elliott has quit (Ping timeout: 252 seconds).
04:47:37 <shachaf> ion: I heard it's snowy in Finland.
04:47:58 <ion> It’s all lies.
04:48:26 <shachaf> monqy: I heard it's not snowy in California.
04:48:54 <ion> I already said it’s *all* lies.
04:49:29 <monqy> we get snow in some places but not here
05:16:47 <shachaf> kmc: rot13 "unfunpuns" = "hashachaf"
05:21:25 <quintopia> had no idea that's where that came from
05:22:10 <quintopia> that your nick was a rot13 of funpuns
05:22:23 <shachaf> That's not where the words "fun" and "puns" came from.
05:22:32 <shachaf> They're actually pretty old words.
05:22:53 <quintopia> are you sure you didnt invent those words?
05:23:11 <shachaf> Maybe my parents invented them, though.
05:51:06 <Sgeo> I just forked on GitHub solely to assist me in debugging something
05:52:23 <pikhq> Clearly all IRC nicks are rot13 of something.
05:52:38 <pikhq> See? Gregor's real name is Tertbe. Clearly.
05:53:12 <shachaf> Tertbe nimble tertbe quick.
05:57:07 <pikhq> Now, see, elliott is definitely Welsh.
05:58:10 <Bike> that's at least double welsh
05:58:35 <pikhq> He must be born of man and sheep.
06:27:43 <Sgeo> monqy, did you see the update?
06:28:06 <shachaf> monqy: did you see Sgeo telling you did you see the update?
06:28:19 <monqy> shachaf: what sgeo
06:29:31 <shachaf> no, this one (psst sgeo!!!!!!!!):
06:30:52 <fizzie> "Tertbe Richards" does have a nice ring to it.
07:08:33 -!- epicmonkey_ has joined.
07:25:49 -!- epicmonkey_ has quit (Remote host closed the connection).
08:00:29 -!- Bike has quit (Quit: leaving).
08:18:38 -!- epicmonkey has joined.
09:45:08 -!- heroux has quit (Ping timeout: 246 seconds).
09:52:31 -!- heroux has joined.
10:08:23 -!- MoALTz_ has quit (Quit: brb).
10:08:43 -!- MoALTz has joined.
10:09:06 -!- aloril_ has quit (Ping timeout: 240 seconds).
10:13:57 <shachaf> ion: Any conclusion on those lens slides?
10:14:18 <ion> Which ones?
10:15:15 <ion> Edwarde Kmette’s talke?
10:15:48 <ion> I’d really need to see the talk, not the slides alone.
10:17:24 <shachaf> ion: So if Functor->Lens and Applicative->Traversal, what sort of thing would Monad be?
10:17:53 <ion> Good question. I haven’t thought about that.
10:18:11 <ion> “In practice, it is impossible to specify a complete state for any realistic robot system. A complete state includes not just all aspects of the environment that may have an impact on the future, but also the robot itself, the content of its computer memory, the brain dumps of surrounding people, etc. Some of those are hard to obtain.” –Probabilistic Robotics
10:22:05 -!- aloril_ has joined.
10:28:09 -!- monqy has quit (Quit: hello).
10:42:38 -!- FreeFull has joined.
11:11:14 -!- carado has joined.
11:20:55 <shachaf> ion: type Fold a c = (Gettable f, Applicative f) => (c -> f c) -> a -> f a
11:21:23 <shachaf> Er, I missed the forall f.
11:21:42 <shachaf> It really means type Fold a c = forall m. Monoid m => (c -> Const m c) -> a -> Const m a
11:28:20 <shachaf> Apparently this is what LYAH says about instance Monad (r ->):
11:28:29 <shachaf> The implementation for >>= seems a bit cryptic, but it's really not all that. When we use >>= to feed a monadic value to a function, the result is always a monadic value. So in this case, when we feed a function to another function, the result is a function as well. That's why the result starts off as a lambda. All of the implementations of >>= so far always somehow isolated the result from the monadic value and then applied the function f to ...
11:28:35 <shachaf> ... that result. The same thing happens here. To get the result from a function, we have to apply it to something, which is why we do (h w) here to get the result from the function and then we apply f to that. f returns a monadic value, which is a function in our case, so we apply it to w as well.
11:28:41 <shachaf> No wonder people get confused.
11:29:35 <Jafet> Just pretending that instance is magical has always worked for me
11:32:05 <nortti> that must be the best computer ever: http://www.john-ward.org.uk/personal/john/computers/html/rocket.html
11:32:21 <nortti> it has a pizza oven and kitchen sink included
11:34:00 <Jafet> Embedded pizza oven? That can't be good
11:36:24 <shachaf> My computer doesn't have a pizza oven, although it occasionally feels like one.
11:36:38 <Jafet> (For the user's BMI)
11:38:07 <nortti> shachaf: but does your computer include a kitchen sink?
11:38:50 <Jafet> I tried before. They aren't very good at it.
11:39:58 <nortti> who are not very good at what?
11:40:20 <Jafet> Most computers are pretty bad sinks
11:41:00 <shachaf> nortti: Would a heat sink count?
11:41:07 <shachaf> I once had a computer with ActiveSync.
11:42:37 <fizzie> My former computer had a leftover 5.25" device hole in the front panel, above the optical disc drive. I used it a few times to warm up some food.
11:42:59 <shachaf> ion: ("hello","there")^.both -- "hellothere"
11:43:00 <fizzie> (The disc drive is useful because then things put in the hole don't fall to the bottom of the case.)
11:43:09 <nortti> I usually filled a 5.25" slot with 5" floppy drive
11:44:30 <shachaf> ion: I guess I shouldn't be surprised by that.
11:44:48 -!- alluazad has joined.
11:45:29 <HackEgo> NoRtTi: WeLcOmE To tHe iNtErNaTiOnAl hUb fOr eSoTeRiC PrOgRaMmInG LaNgUaGe dEsIgN AnD DePlOyMeNt! FoR MoRe iNfOrMaTiOn, ChEcK OuT OuR WiKi: HtTp://eSoLaNgS.OrG/WiKi/mAiN_PaGe. (fOr tHe oThEr kInD Of eSoTeRiCa, TrY #eSoTeRiC On iRc.dAl.nEt.)
11:46:14 <alluazad> esoteric is programming language ?
11:51:52 <nortti> alluazad: no. esoteric programing languages form a group of programming languages
11:52:00 <nortti> shachaf: why did you welcome me=
11:52:17 <HackEgo> ALLUAZAD: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
11:52:37 <shachaf> nortti: I thought you ought to feel welcome.
11:52:54 <nortti> why did you use `WeLcOmE?
11:53:03 <alluazad> when i click d link it returns 404
11:53:12 <shachaf> tswett: I thought you should feel WeLcOmEd.
11:53:20 <HackEgo> alluazad: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
11:53:37 <nortti> `run cat `which WELCOME`
11:53:41 <HackEgo> #!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)'
11:54:17 <shachaf> @tell monqy hi!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! monqy
11:54:19 -!- oonbotti has joined.
11:54:38 <nortti> `echo #echo hi shachaf
11:54:58 <nortti> #echo `echo hi shachaf
11:55:26 <alluazad> There is currently no text in this page. You can search for this page title in other pages, search the related logs, or edit this page.
11:55:38 <ion> Loading package distributive-0.2.2 ... [1] 9281 segmentation fault ghci
11:56:07 <ion> Huh, it seems like disk corruption.
11:56:12 <nortti> alluazad: that is on http://esolangs.org/wiki/Main_Page ?
11:56:18 <shachaf> ion: Maybe it's RAM corruption.
11:56:27 <alluazad> There is currently no text in this page. You can search for this page title in other pages, search the related logs, or edit this page.
11:56:46 <nortti> alluazad: are you sure the url has no "." in it?
11:57:06 <ion> Perhaps my SSD is dying or btrfs/dmcrypt is buggy. Or perhaps a RAM bit flip happened when writing to the disk.
11:57:12 <ion> [13577.381731] btrfs no csum found for inode 2648044 start 0
11:57:15 <ion> [13577.382208] btrfs csum failed ino 2648044 off 0 csum 3580763835 private 0
11:57:33 <shachaf> You deserve everything you got.
11:58:13 <Jafet> Is btrfs still marked experimental?
11:58:17 <alluazad> so you people create prog languages right
11:58:47 <nortti> sometimes when we are bored
11:59:18 <nortti> my favorite esoteric language is java created by Gregor
11:59:21 <Jafet> Well, I guess experimental linux features can fail, but non-experimental ones will fail
11:59:34 <ion> shachaf: Well, it might have not been btrfs’ fault, and if that is the case, most other filesystems wouldn’t even have noticed the corruption.
12:01:17 <alluazad> which one is d easiest prog language to learn ?
12:01:45 <Jafet> I started with C++.
12:06:36 <ion> Something other than C++.
12:07:45 <alluazad> once i tried to learn it by book
12:08:13 <alluazad> I learned some visual basic at school :D
12:09:25 <alluazad> man , there are a lot of esoteric langs :O
12:09:33 <ion> Learn Haskell.
12:09:48 -!- Arc_Koen has joined.
12:10:31 <alluazad> Haskell is not listed here http://esolangs.org/wiki/Language_list
12:10:50 <Arc_Koen> alluazad: Haskell is not esoteric
12:11:04 <ion> Haskell’s not the easiest language to learn. Perhaps LOGO or something. :-P
12:11:09 <ion> But i like Haskell a lot.
12:11:35 <alluazad> How can u guys learn more than one prog langs ?
12:11:48 <ion> No, you’re only allowed to learn one.
12:12:03 <shachaf> ion: Unless you get the Advanced Programmer license.
12:12:04 <ion> Learning more languages will make you better in the ones you already know.
12:12:11 <shachaf> But nobody can afford those anymore.
12:13:30 <Arc_Koen> only for those who have already paid!
12:14:03 <alluazad> Then how can one make freewares ?
12:14:26 <Arc_Koen> alluazad: I think they're joking
12:15:32 <Arc_Koen> almost all languages are free - some domain specific languages aren't, but you don't have to use those!
12:15:57 <alluazad> domain specific means OS specific right ?
12:16:32 <Arc_Koen> no, I was thinking more about languages that have been made for one field preciasely, for instance biology, or whatever
12:16:50 <Jafet> David cough Turner cough
12:17:15 <alluazad> err , aren't we talking about programming langs ?
12:20:34 <alluazad> i got a pdf book for learning python
12:20:40 <Jafet> Even biologists are slowly evolving to use computers.
12:22:07 <Jafet> Only biologists bother with pythons.
12:23:50 <Jafet> Well, it's a bit constricting, but much better than ASP.
12:25:32 -!- boily has joined.
12:31:43 -!- alluazad has left.
12:53:42 <FreeFull> I find that learning more languages actually makes things easier for me
13:28:58 -!- Frooxius has joined.
13:32:03 -!- epicmonkey has quit (Read error: Operation timed out).
13:40:46 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
13:40:57 -!- Frooxius has joined.
13:45:32 -!- epicmonkey has joined.
13:49:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:04:30 <Jafet> You'd think so, right.
14:09:14 <boily> when you dabble into metaclasses and magic and whatnot, python can be an esolang.
14:14:01 -!- copumpkin has joined.
14:41:39 <FreeFull> There is an IRC client written in pure bash. No externals
14:42:37 <FreeFull> There is more than one IRC client written in pure bash
14:51:03 -!- elliott has joined.
15:19:46 <Arc_Koen> FreeFull: is there one is that weirdly capitalized batch esolang?
15:23:48 <ion> I accidentally the physics. http://youtu.be/UaUR6u8nHoM
15:24:55 <mroman> Sentence does not compute.
15:38:02 -!- copumpkin has quit (Ping timeout: 255 seconds).
15:38:44 -!- copumpkin has joined.
15:46:15 -!- Phantom_Hoover has joined.
15:52:42 -!- augur has quit (Remote host closed the connection).
16:15:16 -!- AnotherTest has joined.
16:15:18 -!- epicmonkey has quit (Ping timeout: 276 seconds).
16:23:24 -!- augur has joined.
16:26:31 -!- augur has quit (Remote host closed the connection).
16:29:13 -!- augur has joined.
16:31:28 -!- tswett has quit (Read error: Operation timed out).
16:33:53 -!- tswett has joined.
16:38:01 <elliott> pikhq: Is it worth switchingt o one of the non-gzip kernel compression methods these days?
16:38:26 <pikhq> elliott: Largely irrelevant for desktop use.
16:38:42 <pikhq> You might get a slightly faster boot switching to lzo?
16:47:52 -!- Phantom__Hoover has joined.
16:48:40 <mroman> I did not know x86 had "mask registers"
16:48:47 <mroman> I don't even know what they're for
16:50:08 <olsner> what's a mask register?
16:50:34 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
16:51:00 <FreeFull> x86 uses them for controlling interrupts
16:51:43 <mroman> Are they related to PIC?
16:52:57 <FreeFull> The concept of a mask register itself isn't specific to interrupts
16:53:20 <FreeFull> PICs typically have an interrupt mask register
16:53:41 <FreeFull> Which gets used to specify which interrupts should be ignored
16:57:50 -!- barts_ has joined.
17:00:25 -!- Phantom__Hoover has quit (Ping timeout: 255 seconds).
17:01:13 -!- barts__ has quit (Ping timeout: 268 seconds).
17:10:22 <ion> Windows 8: It's Almost Not Terrible http://youtu.be/X0fsyb-ttcw
17:26:30 -!- Vorpal has joined.
17:36:28 -!- augur has quit (Remote host closed the connection).
17:39:05 -!- tswett has quit (Changing host).
17:39:05 -!- tswett has joined.
17:46:34 -!- augur has joined.
18:43:23 <kmc> http://motif.ics.com/article/news motif is now free software!
18:43:35 <kmc> party like it's 1992
18:45:57 <elliott> https://bbs.archlinux.org/viewtopic.php?id=151494 motif innovation
18:46:57 <olsner> oh noes, they should've killed it when they still had a chance to do it
18:47:04 <olsner> now anyone can fork and it will never die
18:52:20 -!- AnotherTest has left.
18:53:11 <Sgeo> What's wrong with Motif?
18:53:30 <Sgeo> I mean, I'm under the impression that appearance-wise, people don't like the appearance as a matter of taste
18:53:33 <Sgeo> But anything else?
18:55:04 -!- carado has quit (Quit: Leaving).
19:01:40 -!- Frooxius has quit (Read error: Connection reset by peer).
19:23:06 <ion> I was going to ask zzo38 whether he uses Motif, but he isn’t online.
19:23:56 <nortti> ion: he updated from plain Xt some time ago
19:25:23 <nortti> yes. he runs x11 on windows
19:26:35 <nortti> actually it is win3.11 running on desqview/x
19:29:35 <FreeFull> Why would you use desqview/x instead of xming?
19:30:49 <kmc> why would you use gopher instead of http
19:31:08 <nortti> FreeFull: desqview/x runs under dos
19:31:34 <nortti> FreeFull: and then windows runs as a x11 app
19:32:01 -!- ais523 has joined.
19:32:05 <nortti> FreeFull: because it is awesome
19:32:15 <olsner> about DESQview/X: "This X-windowing system is X11R5 compatible ..." :D
19:32:24 <olsner> oh well, at least it's X11
19:33:20 <nortti> olsner: want to help me porting X10R4 software to X11?
19:36:31 <fizzie> olsner: At least it's X, not W.
19:37:02 <fizzie> (Come to think of it: does Wayland mean a step back? Shouldn't it be, I don't know, Yayland or something.)
19:37:24 <fizzie> Yayland leads naturally to Zanyland.
19:37:52 <fizzie> I think I've played Zany Golf.
19:38:16 <fizzie> http://www.racketboy.com/retro/zanygolf-1.jpg yes that looks very familiar.
19:38:32 <olsner> or maybe restart at Ayeland
19:38:35 <fizzie> I remember it being lots of funtimes, except when it got hard near the end.
19:38:54 <olsner> and the next version can be Baylando
19:39:05 <fizzie> It had all those fancy animated things that required timing. That burger bounces up and down, and there was a windmill.
19:39:40 <fizzie> "Zany Golf featured a stunning 3D isometric viewpoint --" maybe it doesn't quite qualify as "stunning" any more. (Also I played the PC version.)
19:40:16 <fizzie> Oh, and that candle, it melted.
19:40:58 <olsner> descriptions of graphics features should be timestamped
19:42:48 <fizzie> http://amiga.lychesis.net/year/1988/ZanyGolf_Level1_Map.html seems to have level maps all the way up to level 9.
19:45:01 -!- Bike has joined.
19:48:44 <nortti> but what comes after zayland? åayland?
19:48:54 <ion> > succ 'z'
19:49:41 <nortti> actually that maps to { in swedish-finnish 7bit charmap. what was it called
19:50:31 <nortti> olsner: { is lowercase [
19:51:04 <nortti> that is still part of some irc servers
19:51:45 <olsner> > (toLower &&& toUpper) '['
19:53:51 <fizzie> `run echo '{ayland' | iconv -f iso646-fi -t utf-8
19:55:39 <fizzie> For some reason the letter order of ISO/IEC 646 FI / SFS 4017 is ...ZÄÖÅ even though the alphabet always puts it ...ZÅÄÖ.
19:56:27 <fizzie> Norwegians and danes both have Æ Ø Å in the same, don't know how their "official alphabet" goes.
19:56:41 <fizzie> "The same" meaning their national variants of ISO646.
19:57:37 <olsner> http://en.wikipedia.org/wiki/Danish_and_Norwegian_alphabet
19:57:53 <fizzie> Perhaps it's their fault, then.
20:00:03 <olsner> norwegian and danish keyboards apparently have the opposite placement for æ and ø
20:00:10 <fizzie> I noticed that before.
20:00:21 <fizzie> (There seems to be an "extended Swedish for names" variant that adds é/É and ü/Ü but loses ASCII `/@ and ~/^, respectively.)
20:01:30 <olsner> é is common in swedish names for some reason, though we don't really use it at all in words
20:02:53 <fizzie> olsner: The Danish keyboard also has our §/½ (unshifted, shifted) key in the same place (left of 1), except reversing the two characters.
20:03:17 <olsner> which is stupid because no-one uses either of those characters
20:03:19 <fizzie> (Norwegians apparently have a |/§ there.)
20:03:52 <fizzie> (They don't seem to have anything as the third character of <> where our | is.)
20:04:31 <fizzie> No-one really uses ¤ either, but that's still wasting space as shift-4 too.
20:05:11 <olsner> ah, that one, I don't even know what it is... a sun?
20:05:29 <fizzie> It's the currency sign.
20:05:44 <fizzie> The generic one, that is.
20:06:08 <fizzie> http://en.wikipedia.org/wiki/Currency_(typography) -- really useful.
20:06:35 <fizzie> (Latin-9 / ISO-8859-15 replaces it with the euro sign €, IIRC.)
20:08:34 <olsner> heh, in soviet basic ¤ was used instead of $ as the string variable suffix
20:08:48 <fizzie> No capitalist dollars there!
20:09:38 <fizzie> Apparently ISO-646-FI also replaces $ with ¤.
20:09:53 -!- Frooxius has joined.
20:12:42 <fizzie> `run echo \!'"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' | iconv -f iso646-fi -t utf-8 # that's the all of nonalphanumeric printable ASCII
20:12:45 <HackEgo> !"#¤%&'()*+,-./:;<=>?@ÄÖÅ^_`äöå‾
20:13:26 <fizzie> Not too many changes; $ turns into ¤, there's the äöå thing, and ~ goes to the ever-popular overline.
20:15:59 <fizzie> There's enough left to write digraphs for []{} and trigraphs for \|~.
20:17:51 <fizzie> ??-(a ??! b), aka a nor b.
20:18:47 <fizzie> And, of course, the "Hello, world!??/" string literal.
20:18:58 <kmc> a confused hello
20:19:02 <fizzie> Uh, "Hello, world!??/n", I mean.
20:20:11 <olsner> I love how that makes it look like you flipped the backslash by accident
20:20:34 <fizzie> The Standard's example of trigraphs is the beautiful ??=define arraycheck(a, b) a??(b??) ??!??! b??(a??)
20:20:48 <nortti> what does "Hello, world!??/n" do?
20:20:58 <fizzie> It's just "Hello, world!\n".
20:21:06 <olsner> if I wrote the first part of that line I would also go ??!??!
20:23:31 <kmc> chromium is showing the latency of this http request as "0.0 days"
20:23:33 <kmc> thanks chromium
20:23:58 <fizzie> `run echo -e '??=include <stdio.h> \n int main(void) ??< printf("Hello, world!??/n"); ??>' | gcc -std=c99 -x c - -o /tmp/c && /tmp/c; rm /tmp/c
20:24:40 <fizzie> Sadly, the gnu90/gnu99 standards turn trigraphs off. :(
20:25:38 <nortti> that would be awesome obfuscation for some c programs
20:26:13 <fizzie> The other example from the Standard is printf("Eh???/n");.
20:26:38 <fizzie> (That turns into printf("Eh?\n"); since only ?s that actually begin a trigraph are replaced.)
20:27:25 <olsner> how do you print ??/ then?
20:27:39 <ion> All that syntactic noise for the benefit of parsers instead of humans, but then have rules like that that are unnecessarily difficult to parse? :-)
20:27:44 <fizzie> olsner: printf("??""/"); for example.
20:28:14 <olsner> fizzie: aah, that's a nice workaround
20:28:26 <fizzie> Or "?""?/" maybe, according to taste.
20:29:12 <fizzie> I wonder if somebody, somewhere has entered a C channel asking "why do I get two ?s less" after mistaking the slant of character escapes and writing "huh?????/n".
20:32:20 <olsner> is it common for compilers to actually enable trigraphs by default?
20:33:36 <fizzie> Probably not, but a nonzero number of places do recommend something like "-std=c99 -pedantic" as standard flags.
20:34:24 -!- zzo38 has joined.
20:42:28 <fizzie> olsner: Also, if you happen to be writing C++, you could write it "?\?/" -- they include a \? escape for plain ? that I can't immediately figure out any other reason for than trigraph-breaking. (Or if you don't have \ in your character set, you'd write ??/ as "???/?/", naturally.)
20:42:55 <olsner> trigraph breaking using trigraphs, I like it
20:44:51 <elliott> fizzie: Have you played Frog Fractions? You seem like the kind of person who might have.
20:46:11 <shachaf> elliott: So if Functor->Lens and Applicative->Traversal, Monad->?
20:46:21 <fizzie> `run echo -e '??=include <iostream> \n int main(void) ??< std::cout << "???/?/??/n"; ??>' | gcc -std=c++98 -x c++ - -o /tmp/c -lstdc++ && /tmp/c; rm /tmp/c
20:46:36 <fizzie> (Why do I need -lstdc++ with -x c++ there?)
20:46:48 <olsner> because you're linking with gcc
20:46:48 <zzo38> shachaf: What is this for? Is that something with van Laarhoven lenses?
20:46:51 <elliott> shachaf: Why don't you ask edwardk?
20:46:58 <shachaf> elliott: He's on vacation.
20:47:24 <shachaf> Maybe I should ask van Laarhoven. But what does he know?
20:47:32 <olsner> vacation? that just means he should have all the time in the world to answer questions on irc
20:47:37 <zzo38> You could try anyways
20:47:40 <shachaf> elliott: Isn't it nifty how you can just use a lens as a "mapM"?
20:48:00 <fizzie> elliott: I have not. But it sounds... different.
20:48:36 <elliott> fizzie: I don't know how long it is, but what I've played so far I highly recommend.
20:49:19 <shachaf> kmc: Have you seen all the fancy lens things?
20:49:25 <shachaf> They're pretty neat once you figure them out.
20:50:11 <kmc> not recently
20:50:54 <elliott> fizzie: At least, I haven't played a better point-and-click bullet hell RPG text adventure recently.
20:54:20 <shachaf> kmc: It gives me some faith in the type class Traversable!
20:54:31 <shachaf> Which I was previously very suspicious of.
20:54:36 <elliott> fizzie: Also provides quote of the day: "This is space. Machines aren't "on" and "off" here; machines just are."
20:54:37 <shachaf> I'm still somewhat suspicious of it.
20:54:48 <elliott> shachaf: OK, I have a question in turn.
20:54:50 <shachaf> Well, it decides an arbitrary order.
20:54:59 <shachaf> It's Foldable that I'm suspicious of, really.
20:55:27 <shachaf> What's something which is Foldable but not Traversable, anyway?
20:55:37 <elliott> shachaf: What happens if you use... Align??? (As per https://github.com/isomorphism/these/blob/master/Data/Align.hs.)
20:55:51 <elliott> Align is sort of like Applicative.
20:56:15 <shachaf> How do you catch Align in the Sahara Desert?
20:56:43 <shachaf> elliott: Align is like zip except These?
20:56:59 <shachaf> elliott: Sounds like the devil, if you ask me.
20:57:29 <elliott> shachaf: Look at Crosswalk, too.
20:57:33 <elliott> shachaf: Crosswalk is like Traversable.
20:57:38 <elliott> But instead of Applicative it uses Align.
20:57:47 <elliott> IIRC Crosswalk is actually useful.
20:58:01 <elliott> Wow, I actually defined Bicrosswalk.
20:58:31 <shachaf> kmc: So a Traversal is "like a lens", except for zero-or-more values instead of exactly one value.
20:58:52 <shachaf> You get that by choosing an Applicative constraint instead of a Functor constraint, so you get pure and <*>
20:58:56 <elliott> shachaf: http://pchiusano.blogspot.co.uk/2010/06/alignable-functors-typeclass-for-zippy.html
20:59:08 <elliott> "If you have an Alignable for some f, you can lift Iteratee, Reducer and various other Reducer-like objects to f. Monoids and groups can also be lifted to Alignable. And the version of traverse based on Alignable is more appropriate for some applications."
20:59:24 <elliott> ISTR edwardk dislikes Alignable because he can't think of a good name for it.
20:59:33 <elliott> Oh, he actually comments there.
21:00:00 <zzo38> What if you use something which is not a Functor?
21:00:26 <shachaf> zzo38: I don't know, man! The world is waiting!
21:00:49 <shachaf> elliott: Hmm, if you use (,), do you get both reading and writing?
21:01:18 <zzo38> Such as, instead of Applicative or Monad or Functor, try Plus or Contravariant.
21:01:56 <elliott> shachaf: Use (,) for what?
21:02:12 <shachaf> elliott: Instead of Const or Identity.
21:04:10 -!- derwaffenss has joined.
21:05:20 <HackEgo> zzo38: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
21:05:52 <HackEgo> ZzO38: wElCoMe tO ThE InTeRnAtIoNaL HuB FoR EsOtErIc pRoGrAmMiNg lAnGuAgE DeSiGn aNd dEpLoYmEnT! fOr mOrE InFoRmAtIoN, cHeCk oUt oUr wIkI: hTtP://EsOlAnGs.oRg/wIkI/MaIn_pAgE. (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.)
21:06:03 <zzo38> derwaffenss: We have a lot of bots in here actually
21:06:42 <shachaf> Every last one of us is a bot.
21:07:00 <zzo38> That is what they want you to think!
21:07:16 <nortti> derwaffenss: at least EgoBot HackEgo fungot lambdabot oonbotti
21:07:17 <fungot> nortti: which is rather detrimental to my presence on irc. its annoying. not fascinating. like i said:)) sure, but if you have
21:07:39 -!- boily has quit (Quit: Poulet!).
21:12:44 <olsner> fungot is the game of the year?
21:12:44 <fungot> olsner: i mean from finland)
21:13:13 <nortti> fungot: you mean what from finland?
21:13:13 <fungot> nortti: what's the rational for that? what would that library be like? i've always wondered what the heck i remember it
21:15:29 <olsner> fungot: when will macgyver realize that the gas station attendant with the german accent is a baddie?
21:15:30 <fungot> olsner: isn't srfi 7 nonsense?! what unmitigated fnord!"? so that error reporting gives correct car/ cdr
21:16:37 <zzo38> I try to lead the chancellor into this castle I don't even know where he is, I also need to find and rescue the king, I need to figure out a plan. I can psychically contact the chancellor but he has no obligation to believe what I say or to answer my questions truthfully. I wonder if scrying is available, we can scry the chancellor or the king, if that somehow would help?
21:18:09 <zzo38> A map of this castle might also help.
21:18:12 <nortti> heh: http://www.devttys0.com/2012/10/jailbreaking-the-neotv/
21:18:15 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:22:58 <olsner> what does "moi mukkulat" mean?
21:24:26 <nortti> "moi mukulat" means "hi potato corms" I think
21:24:37 <olsner> disregard spelling obviously
21:25:07 <nortti> but "mukula" can refer to a kid so it might be "hi kids"
21:28:01 <olsner> so it should've been "moi mukula" then? or is the -t a plural suffix?
21:28:48 <nortti> "moi mukula" is either "hi potato corm" or "hi kid"
21:29:12 <shachaf> .............................................................................................................................................................................................................................................................................................................................................................................................................................................................. ...
21:29:18 <shachaf> ... .......................................................................................................................................................................................................................................................................................................................................................................................................................................................... ...
21:29:24 <shachaf> ... .......................................................................................................................................................................................................................................................................................................................................................................................................................................................... ...
21:29:30 <shachaf> ... .......................................................................................................................................................................................................................................................................................................................................................................................................................................................... ...
21:29:36 <shachaf> ... .......................................................................................................................................................................................................................................................................................................................................................................................................................................................... ...
21:29:42 <shachaf> ... .......................................................................................................................................................................................................................................................................................................................................................................................................................................................... ...
21:29:48 <shachaf> ... .........................................................................................
21:30:08 <olsner> looked like it was you
21:30:22 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:24 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:26 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:28 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:30 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:32 <ion> …………………………………………………………………………………………………………………………………………………………………………………………………………………………………………
21:30:48 <shachaf> ais523: You should kick me for flooding.
21:30:58 <ion> My cat learned about the Compose key.
21:31:16 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
21:31:19 <lambdabot> elliott said 1d 2h 39m 55s ago: tavern isn't run by the devs
21:31:25 <ais523> elliott: well they created it
21:31:52 <ion> shachaf: Make sure to ion: stop.
21:33:17 <elliott> ais523: it was started by danr and is hosted on CDO by Napkin, who I think might have a commit bit but is more the CDO admin
21:33:31 <elliott> in fact most of the devs don't even have mod/admin access to it
21:33:51 <ais523> I thought it was CDO who did it
21:34:26 <elliott> Napkin handles maintaining the actual installation AIUI but that's not really "the devs" imo :p
21:42:16 -!- copumpkin has joined.
21:44:59 <ion> shachaf: How do you get the State RealWorld String out of an IO String?
21:46:19 -!- derwaffenss has left.
22:07:56 <shachaf> ion: You mean the State# RealWorld -> (# State# RealWorld, String #) ?
22:08:41 -!- epicmonkey has joined.
22:16:40 <Sgeo> WTF I can't post Web Archive links on Facebook?
22:17:11 <Sgeo> "The content you're trying to share includes a link that's been blocked for being spammy or unsafe:
22:17:11 <Sgeo> http://web.archive.org/web
22:17:11 <Sgeo> For more information, visit the Help Center. If you think you're seeing this by mistake, please let us know."
22:18:00 -!- Phantom__Hoover has joined.
22:21:23 <Arc_Koen> this Isolated language is reaaaaally weird
22:21:40 <Arc_Koen> but there seem to be no obvious way for one cell to "communicate" with another
22:21:51 <Bike> what does that mean
22:22:35 <Arc_Koen> tape based means its only means to store information is an array [x0; x1; x2; ...]
22:22:54 <Bike> like a turing machine
22:23:41 <Arc_Koen> but here, a cell's content can only be directly affected by: its own content, the data pointer, the instruction pointer, and input
22:24:00 <nortti> my webserver log: "1.234.4.16 Requested nortti.dy.fi/w00tw00t.at.blackhats.romanian.anti-sec:)"
22:24:06 <Arc_Koen> and the only means of "branching" are to directly modify the instruction pointer
22:24:22 <Arc_Koen> nortti: I had a very important question about a language you made but I don't remember which
22:24:33 <nortti> Arc_Koen: what is it like?
22:24:57 <Arc_Koen> (what's your user name again?)
22:26:24 <Arc_Koen> there was something I did not understand about its specifications
22:29:08 <Arc_Koen> but I do remember it bothered me a lot!
22:29:57 <nortti> if you remember it hilight me
22:32:57 <nortti> I actually designed it in boring math classes
22:37:04 <Arc_Koen> well when I discovered it it sounded very interesting and I wanted to implement it right away
22:37:31 <Arc_Koen> and then I realized it was not at all what I expected it to be
22:37:46 <Arc_Koen> and then I realized I didn't know what I expected it to be
22:39:06 <Arc_Koen> well somehow I thought the stack was gonna support the lambda calculus the same way stacks usually support reverse-notation mathematics
22:40:52 <Bike> well, stack languages look like rpn, in that 4 6 + usually ends up with 10?
22:41:29 <nortti> I mean like how would it support lambda calculus like rpn?
22:41:59 -!- Nisstyre-laptop has joined.
22:42:33 <nortti> reverse polish lambda?
22:45:57 <Bike> you could do like Joy and just not have variables at all :)
22:46:17 <nortti> Bike: that would be underload
22:46:30 <Bike> that works too
22:47:18 <nortti> hmm. this could be interesting: \x.\y.x ==> 1\\
22:49:24 <elliott> underload is basically a joy tarpit, so
22:49:35 <elliott> albeit without ais523 realising it would be
23:04:20 <Arc_Koen> nortti: well I eventually realized I did not know what it would mean :)
23:05:11 <nortti> "There are two major products that come out of Berkeley: LSD and UNIX. We don't believe this to be a coincidence." - Jeremy S. Anderson
23:05:30 <kmc> often "BSD and LSD"
23:05:41 <nortti> as 2.11BSD user I agree-
23:05:54 <kmc> though LSD was invented in Basel
23:07:38 -!- epicmonkey has quit (Ping timeout: 245 seconds).
23:07:55 <kmc> and unix in... new jersey?
23:09:44 <Gregor> pikhq: I was just surprised that Go is PICing interface dispatch because… well, there is no VM. Seems like it would be difficult to do, even from the stupid bookkeeping perspective of “now either my code has to be writable or I have to make sure this data always lives in cache”
23:10:34 <kmc> writable code everywhere! what could go wrong
23:10:54 -!- Vorpal has quit (Ping timeout: 240 seconds).
23:15:28 <Sgeo> PICing interface dispatch?
23:32:33 -!- Nisstyre-laptop has quit (Read error: Operation timed out).
23:42:16 <Gregor> Sgeo: Go implements interface method dispatch through PICs. I had always wondered how it handled this (its interfaces are structural, its types fairly implicit, so it can't make vtables), so I asked Rob Pike.
23:42:42 <Sgeo> What's a PIC? Last time I saw that term, it was in the context of COBOL
23:43:09 <Gregor> http://en.wikipedia.org/wiki/Inline_cache
23:44:45 <Gregor> (Typically used by virtual machines, not compiled languages)
23:45:16 <Gregor> (Bearing in mind that here I mean “compiled languages” in a sense that excludes, e.g., Java)
23:52:32 <Sgeo> Oh, P as in polymorphic?
23:53:42 <FreeFull> Can't you compile Java if you really want to
23:53:52 <Bike> i feel so illiterate, for thinking of "position independent code"
23:54:26 <FreeFull> I know the GJC can compile Java and Java bytecode to native code
23:55:01 <FreeFull> When I see PIC, I think Programmable Interrupt Controller :)
23:55:12 <Sgeo> Does Clojure work on GJC? Tried it recently, it didn't seem to
23:55:28 <FreeFull> I haven't actually ever used GJC
23:55:30 <Sgeo> When I see PIC, I think COBOL
23:56:03 <FreeFull> GJC doesn't have any news from after 2009 on its website
23:56:04 <Sgeo> "Rather than using types, as these languages do, COBOL uses a kind of "declaration by example" strategy. The programmer provides the system with an example, or template, or PICture of the storage required for the data-item."
23:57:37 <Bike> is that like some strange proto-prototype OO system
23:58:31 <Sgeo> PIC S9999V9999
23:58:53 <Sgeo> That is the PICTURE clause for a signed number with 4 digits before the implied decimal point and 4 digits after
23:59:38 <Bike> 9 = decimal digit?
23:59:50 <Sgeo> http://www.csis.ul.ie/cobol/course/DataDeclaration.htm
00:00:10 <Bike> but how do I specify an unsigned four-digit quater-imaginary number
00:00:51 <FreeFull> I don't think cobol does quarter-imaginary numbers
00:01:16 <Bike> clear deficiency.
00:02:32 <olsner> Sgeo: is that your university doing cobol courses?
00:03:15 <Phantom__Hoover> although ireland would be less rural than Sgeo's university
00:03:39 <Sgeo> Phantom__Hoover, what, just because my school used to literally be an agricultural school?
00:04:01 <olsner> yeah, they don't teach agriculture in cities
00:04:47 <Bike> what's wrong with farming, eh?
00:05:22 <Phantom__Hoover> if you asked me to come up with the most ridiculously agrarian name possible i would think that too blatant
00:17:38 <kmc> 'Formula 1 organisers in India say they are determined to ensure that the track near Delhi is completely "dog proof" ahead of Sunday's race'
00:19:51 <Sgeo> I think I have another criticism of Clojure
00:20:41 <Sgeo> There are several ways to find the value associated with a key in a hash-map. This, in and of itself, is not a problem.
00:21:12 <Sgeo> You can use the hash-map as a function, or use the get or find functions, or use a keyword as a function if the key you want is a keyword
00:21:36 <Bike> wait, like, you have :x as a key in the hash, so you can do (:x hashtable) to get the value?
00:22:21 -!- augur_ has joined.
00:22:26 <Sgeo> Now, the problem I have with this is, what if I want to make my own data structure that fakes being a hash-map. I have to implement both the structure as being funcallable, and the Associative protocol
00:22:39 -!- augur has quit (Read error: Connection reset by peer).
00:22:52 <Sgeo> I think keywords as functions just use the Associative protocol. I might not even have the right name for it
00:24:03 -!- augur_ has quit (Read error: Connection reset by peer).
00:25:02 -!- augur has joined.
00:26:00 <Sgeo> Bike, it seems to be more common than (hashtable :x)
00:41:43 -!- copumpkin has changed nick to Michelangelo.
00:41:52 -!- Michelangelo has changed nick to copumpki.
00:41:54 -!- copumpki has changed nick to copumpkin.
00:43:48 <Bike> i also find that weird, but I'm already used to it.
00:46:41 <Sgeo> And I don't know when (get hashtable :x) is ever used, maybe people who don't realize that the other forms also accept an optional what to return if it's not there parameter the way get does
00:50:40 <shachaf> elliott: A Norwegian word meaning "hi monqy".
00:51:06 -!- hagb4rd has quit (Quit: hagb4rd).
00:51:08 <shachaf> Where's oerjan, by the way?
00:52:32 <Sgeo> <ohpauleez> Sgeo: When your key is not a keyword
00:52:32 <Sgeo> <ohpauleez> or when your collection can be a number of things (all that support get)
00:53:03 <Sgeo> I guess get could also be used with ->
00:53:32 <Sgeo> <Sgeo> ,({1 2 3 4} 1)
00:53:32 <Sgeo> <clojurebot> 2
00:53:32 <Sgeo> <ohpauleez> ,([1 2 3 4] 1 2)
00:53:32 <Sgeo> <clojurebot> #<ArityException clojure.lang.ArityException: Wrong number of args (2) passed to: PersistentVector>
00:53:32 <Sgeo> <Sgeo> ,(get [1 2 3 4] 1 2)
00:53:33 <Sgeo> <ohpauleez> ,(get [1 2 3 4] 6 2)
00:53:35 <Sgeo> <clojurebot> 2
00:53:37 <Sgeo> <clojurebot> 2
00:55:24 -!- copumpkin has changed nick to OMARCOMINYO.
00:59:16 <olsner> shachaf: eating, last I heard
00:59:42 <olsner> but that was a few days ago, may have changed since
01:01:03 -!- OMARCOMINYO has changed nick to copumpkin.
01:05:04 <FreeFull> Does lambdabot do some form of lisp?
01:08:41 <elliott> I'm so glad we have Sgeo here to paste logs from Clojure channels in here.
01:08:45 <kmc> lolololololololol
01:08:50 <elliott> Otherwise we might forget that this is #clojure.
01:09:25 <kmc> yeah in the mainstream programming world, haskell is 'some kind of lisp' and yet the differences between python and ruby are vast and important
01:09:38 <kmc> perspective is a funny thing
01:10:01 <FreeFull> I just wanted to be silly and make a long string using lots of conses
01:10:02 <Bike> FreeFull: judging by @list, not really?
01:10:08 <FreeFull> But the haskell form of that is much shorter =P
01:10:08 <kmc> yes i know olsner was joking
01:10:37 <olsner> kmc: I'm glad you know
01:10:56 <kmc> i'm glad i know you're glad i know
01:10:57 <FreeFull> (cons 'S' (cons 't' (cons 'r' (cons 'i' (cons 'n' 'g')))))
01:11:00 <shachaf> kmc: Why was ε afraid of ζ?
01:11:20 <Bike> man you can't use single quotes like that in lisp, you'll break something
01:11:57 <kmc> shachaf: idgi
01:12:09 <shachaf> kmc: Why was epsilon afraid of zeta? Because zeta eta theta!
01:12:14 <FreeFull> I think int something = 'abcd'; is valid C
01:12:30 <FreeFull> shachaf: Are they consecutive in the greek alphabet?
01:13:10 <shachaf> Hmph. Best try another joke.
01:13:15 <shachaf> kmc: Where does a general keep his armies?
01:13:35 <kmc> that's a popsicle stick joke
01:13:41 <kmc> FreeFull: Strin . g
01:13:52 <ais523> esolang just got an anonymous edit
01:13:53 <olsner> what bothers me about that is that sleevies is (probably) just a made up word
01:14:03 <kmc> it must be aliens from the future
01:14:40 <kmc> are strings lists in any common lisps?
01:15:00 <kmc> i thought haskell was practically the only language where the "built-in" / "default" string type is a linked list
01:15:03 <ais523> elliott: apparently it works
01:15:05 <shachaf> > 'S':'t':'r':'i':'n':'g':"ent"
01:15:05 <olsner> well, common lisps other than haskell then
01:15:10 <kmc> olsner: clearly
01:15:17 <Bike> wait, haskell strings are linked lists, really?
01:15:26 <kmc> type String = [Char]
01:15:36 <FreeFull> kmc: What, you didn't know lisp did strings as linked lists?
01:15:46 <shachaf> Bike: Because Haskell is all about List Processing.
01:16:06 <lambdabot> monochrom says: in retrospect, it seems lisp designers were more interested in list processing than functional programming
01:16:09 <kmc> FreeFull: Common Lisp? Scheme? Clojure? Maclisp? what?
01:16:12 <kmc> "Lisp" isn't a language
01:16:33 <Bike> is that really "in retrospect"
01:16:44 <Bike> in lisp 1.5 you could use lists as functions!
01:16:51 <kmc> Bike: well, it avoids introducing new concepts to the language, if you have lists and chars already
01:16:55 <Bike> processing lists with lists, the way of the future.
01:16:59 <Sgeo> Clojure strings are not lists but you can convert them into.... a list-like thing
01:17:00 <kmc> and it gives you lazy strings in a natural way
01:17:07 <kmc> but it's horribly inefficient
01:17:13 <Bike> yeah that's what I was going to say
01:17:14 <FreeFull> Well I guess strings aren't lists in common lisp
01:17:18 <kmc> if you want to efficiently store text in Haskell, you use Data.Text
01:17:20 <Bike> is there not a type for vectors/arrays/whatever
01:17:22 <olsner> since all existing lisps were designed in the past, anything we say about lisp is in retrospect
01:17:32 <kmc> there are many many array/vector types in Haskell
01:17:35 <elliott> Bike: it's a historical accident
01:17:39 <kmc> it's just that they aren't imported by default
01:17:44 <elliott> kmc: well there are like three
01:17:46 <Bike> elliott: that strings are lists?
01:17:51 <elliott> and one of them is a replacemen tfor one of the others
01:17:53 <FreeFull> olsner: I think you'll find most languages were designed in the past, assuming there is a design
01:17:54 <kmc> Data.Text is the way to go for efficient text storage, afaik
01:17:59 <kmc> unless that's changed again
01:17:59 <shachaf> Data.Text doesn't give you random access. :-(
01:18:00 <elliott> Bike: it made sense in 1992, it doesn't make sense in 2012
01:18:00 <kmc> it uses UTF
01:18:01 <Bike> that's quite the accident
01:18:02 <kmc> -16 internally
01:18:05 <kmc> which is kinda gross
01:18:06 <elliott> shachaf: random access is irrelevant
01:18:16 <kmc> random access to Unicode codepoints isn't too useful
01:18:16 <elliott> Bike: it is actually worse than you think
01:18:21 <elliott> Bike: since haskell has lots of pointers in its linked list
01:18:23 <shachaf> elliott: You can't even mark a point in a string with an index and then index into that point later, though.
01:18:24 <Bike> elliott: made sense in 1992? but lisps that existed in '92 used arrays for strings
01:18:24 <kmc> because codepoints != characters != anything you care about
01:18:32 <kmc> Bike: but they aren't lazy
01:18:44 <kmc> and also Lisp had more pretentions to being real-world useful than Haskell circa 1992
01:18:45 <elliott> it's like 16 bytes to the character or something iirc
01:18:49 <Bike> strange, strange, very strange
01:18:50 <Sgeo> In Haskell you can have an infinitely long String
01:18:52 <Bike> oh I suppose that's true though.
01:19:00 <elliott> actually String is sometimes faster than the alternatives amusingly
01:19:08 <kmc> you have to remember, for the first 10+ years of its life, Haskell was explicitly a language for PL researchers
01:19:09 <Sgeo> > fix ("Honk " ++)
01:19:11 <lambdabot> "Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk Honk...
01:19:14 <lambdabot> "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
01:19:16 <Bike> how very strange to consider
01:20:02 <elliott> kmc: arguably it still is :)
01:20:22 <kmc> but i think before 2000 there were very few people claiming otherwise
01:20:28 <kmc> now there is a large IRC channel full of them
01:20:45 <shachaf> #haskell is pretty bad these days, by the way.
01:20:56 <elliott> i would like to see kmc visit #haskell sometime
01:21:05 <kmc> shachaf: what now
01:21:06 <Bike> what is wrong with #haskell?
01:21:24 <shachaf> #haskell-blah alternates between bad and good, depending on time zone.
01:21:32 <elliott> which timezones are the bad ones
01:21:47 <kmc> Bike: newbie joins, newbie asks standard newbie question, everyone starts shouting out their favorite explanation, then everyone argues about which one is best, then irrelevant tangents
01:21:51 <kmc> newbie is confused
01:21:57 <kmc> nobody actually cares about figuring out the one best way to teach something
01:22:02 <Bike> wait, are you telling me not every speech about programming is like that
01:22:06 <kmc> everyone's too heavily invested in their pet explanation
01:22:14 <kmc> i felt the same way
01:22:16 <kmc> which is why i left
01:22:22 <kmc> after making some halfassed attempt to be better
01:22:23 <kmc> shachaf: no
01:22:57 <kmc> Bike: also they act like a research paper on a topic is equivalent to mature tested packaged software
01:23:23 <kmc> if your problem can't generate an academic paper then it's already solved
01:23:29 <elliott> tbh i don't really see that attitude in #haskell at all
01:23:30 <kmc> it's just a trivial matter of engineering
01:23:35 <elliott> the research paper thing that is
01:23:37 <kmc> i've seen it a few times
01:23:49 <kmc> somebody was like "lol, just write a JVM backend for GHC, problem solved"
01:23:53 <kmc> as though this would be completely trivial
01:24:03 <elliott> the #1 problem is idiots who don't know anything about haskell trying to answer an overly-broad question like "what are monads" that they don't themselves understand
01:24:12 <kmc> that is a bigger problem
01:24:26 <elliott> (and I say idiots only because they decide they are competent enough to educate others, not because they merely don't know)
01:24:32 <kmc> also #haskell has a bunch of dumb inside jokes
01:24:43 <kmc> if you mention monads everyone is like "lolololololololol burritos"
01:24:56 <Sgeo> elliott, now I'm scared that I'm an idiot
01:24:58 <kmc> completely drowning out any attempt at a serious answer (not that such attempts would generally be successful)
01:25:04 <kmc> also lambdabot is a huge inside joke
01:25:18 <kmc> because she implements this bizarre variant of haskell which seems to exist to confuse beginners and entertain experts
01:25:23 <kmc> pretty trollish basically
01:25:28 <shachaf> kmc: You should post that post on what's wrong with #haskell
01:25:49 <elliott> Sgeo: i don't know how to answer that
01:26:02 <kmc> people are always like "lambdabot is a great resource for learning Haskell!!" and then when the learner actually uses it, they have to explain why it thinks functions are numbers or whatever
01:26:08 <lambdabot> forall a b (f :: * -> *). (Functor f) => (a -> b) -> f a -> f b
01:26:11 <lambdabot> forall t t1. (Num (t1 -> t), Num t1) => t
01:26:14 <olsner> and then everyone blames Cale for making lambdabot's haskell weird, and Cale vehemently denies having anything to do with it
01:26:21 <elliott> kmc: btw you are way too cynical about lambdabot, cale obviously feels its variants are useful and helpful for its target audience
01:26:28 <Bike> i seem to have opened up a terrifying line of information here
01:26:29 <elliott> it is unfortunate that it causes problems but i don't think it is really malicious
01:26:37 <elliott> just obviously lambdabot never get updated ever since have you seen its codebase
01:26:40 <shachaf> I don't think there's a whole lot of malice in #haskell
01:26:49 <elliott> (by "cale" here I mean "broadly-approximated cale")
01:26:51 <shachaf> Malice is easier to deal with, usually.
01:26:53 <Sgeo> > (sin + cos) 2
01:26:55 <elliott> (which means "Whoever is responsible for them" or whatever)
01:27:00 <elliott> Bike: welcome to #esoteric
01:27:07 <Bike> hello #esoteric
01:27:08 <Sgeo> > (sin + cos) 0
01:27:19 <Bike> Sgeo: is the same as sin 0 + cos 0, or what
01:27:26 <Sgeo> > (sin * sin + cos * cos) 12345
01:27:38 <Bike> that's kinda cool actually.
01:27:48 <Sgeo> It's not a stanard Haskell thing
01:28:13 <kmc> elliott: i don't think it's malicious, but the fact that it's gone on this long indicates a certain lack of regard for beginners
01:28:17 <shachaf> #esoteric is also a big inside joke.
01:28:28 <Bike> yes I've gotten that impression, shachaf
01:28:31 <kmc> which is incongruous with a community that is constantly patting itself on the back over how friendly it is
01:28:40 <kmc> one of the main things i learned from #haskell is that friendly != helpful
01:29:09 <elliott> kmc: well experts are misserved by lambdabot's other problems
01:29:13 <elliott> like how it keeps crashing
01:29:17 <elliott> and that stupid L.hs nondeterministic thing
01:29:28 <elliott> it is just unmaintained, can't really single out any individual problem imo
01:29:38 <shachaf> Cale "maintained" flip into L.hs
01:29:42 <lambdabot> forall a b c. (a -> b -> c) -> b -> a -> c
01:29:53 <kmc> a lot of IRC channels are too unfriendly to be helpful, but #haskell is too friendly to be helpful
01:29:56 <elliott> kmc: btw i think the patting themselves on the back thing is generally over
01:30:01 <kmc> elliott: oh really
01:30:03 <lambdabot> Overlapping instances for GHC.Show.Show
01:30:12 <elliott> kmc: anyway looks like it's your birthday 'cuz flip looks normal to me
01:30:22 <kmc> but (.) is still weird
01:30:23 <shachaf> I asked Cale to change it back today.
01:30:34 <olsner> flip used to be weird too?
01:30:45 <elliott> olsner: yes, it was strong
01:30:53 <shachaf> Yep, f (b -> c) -> b -> f c
01:30:55 <elliott> strong :: (Functor f) => f (a -> b) -> a -> f b
01:30:59 <elliott> i think edwardk calls it strong
01:31:15 <elliott> it's the proof term that every haskell Functor is a strong functor right
01:31:21 <kmc> shachaf: I got my Stripe CTF shirt today!
01:31:33 <olsner> @djinn (Functor f) => f (a -> b) -> a -> f b
01:31:43 <olsner> djinn doesn't do classes, I guess
01:31:48 <shachaf> elliott: want another proof that every functor is strong??
01:32:14 <lambdabot> data Either a b = Left a | Right b
01:32:17 <lambdabot> class Monad m where return :: a -> m a; (>>=) :: m a -> (a -> m b) -> m b
01:32:20 <lambdabot> class Eq a where (==) :: a -> a -> Bool
01:32:21 <lambdabot> either :: (a -> c) -> (b -> c) -> Either a b -> c
01:32:25 <elliott> olsner: you need to teach it about functor i think
01:32:39 <lambdabot> Generates Haskell code from a type.
01:32:39 <lambdabot> http://darcs.augustsson.net/Darcs/Djinn
01:32:50 <shachaf> djinn is "stupid" about classes
01:32:50 <Bike> it knows about monads but not functors?
01:33:04 <elliott> Bike: so does the haskell 2010 standard :(
01:33:04 <shachaf> @djinn Monad m => a -> m a
01:33:08 <shachaf> @djinn Monad m => b -> m b
01:33:26 <Bike> i'm pretty dumb at haskell but I thought monads were functors?
01:33:39 <Sgeo> Mathematically
01:33:39 <Bike> *haskell, math, life
01:33:51 <elliott> haskell only has a direct monad class
01:33:51 <shachaf> Functor? I 'ardly know 'er!
01:33:56 <elliott> there's a functor class in the standard libraries
01:34:02 <elliott> (and applicative, the "half-way" point in a sense)
01:34:10 <elliott> but they're not superclasses of monad due to -- wait for it -- historical accident
01:34:12 <shachaf> kmc: When are you running the kmc code contest?
01:35:01 <lambdabot> forall a b (f :: * -> *). (Functor f) => (a -> b) -> f a -> f b
01:35:33 <lambdabot> forall (f :: * -> *) a b. (Functor f) => f a -> (a -> b) -> f b
01:35:55 <Phantom__Hoover> you're not an idiot generally since you don't confidently spew bullshit
01:36:39 <shachaf> Phantom__Hoover: pssst, i heard Sgeo made 6 bf derivatives before breakfast today
01:37:33 <elliott> shachaf: Doesn't the Functor (.) upset you?
01:37:37 <elliott> It should use the Category (.).
01:37:59 <olsner> obviously it just predates Category, and no-one's bothered to update it yet
01:38:03 <shachaf> elliott: Maybe it should use the -> .
01:38:16 <elliott> shachaf: No. Prelude should use the Category (.).
01:38:35 -!- hagb4rd has joined.
01:41:07 <kmc> shachaf: it shipped from colorado
01:41:27 <shachaf> elliott: is there a place in the uk called "colourado"
01:49:30 -!- Arc_Koen has quit (Quit: Arc_Koen).
01:52:49 <Sgeo> Phantom__Hoover, what if I make a meta-language to describe BF derivatives
01:53:05 <Bike> can the language describe itself
01:55:49 <shachaf> kmc: Do you have any good train facts for me?
01:56:54 <kmc> just... general train facts?
01:57:55 <shachaf> Specific ones are good too.
01:58:09 <kmc> i mean, are you looking for a specific kind of train fact
01:58:13 <kmc> do you know about gauntlet track?
01:58:32 <kmc> http://en.wikipedia.org/wiki/Gauntlet_track
01:58:37 <pikhq> Trains are actually electric carts. (in CJK)
01:58:46 <kmc> it is a strange kind of arrangement which is useful in many ways
01:59:56 <Sgeo> Why the fuck would the word "arrangement" make me think of Worlds?
02:03:18 <kmc> when a two-track line has to cross a narrow bridge, it's sometimes better to use two overlapping tracks on the bridge, rather than a true single track segment
02:03:25 <kmc> you can still only have one train on the bridge at once
02:03:41 <kmc> but the mechanical bits on either side to go back to two tracks are simpler
02:03:58 <kmc> purely static bits of steel, vs. points that need to move, and might ice up, etc.
02:04:38 <kmc> shachaf: here is another train fact:
02:04:57 <kmc> the New York Subway construction workers use temporary construction lights consisting of five incandescent bulbs mounted together on a board
02:05:17 <shachaf> I've heard that one before, I think?
02:05:22 <shachaf> > 120*5 -- or something like that
02:05:29 <copumpkin> kmc: how many abandoned stations are there in manhattan?
02:05:31 <kmc> they run them off third rail power
02:05:37 <copumpkin> also, have you visited the city hall one?
02:05:44 <kmc> http://www.columbia.edu/~brennan/abandoned/
02:05:55 <kmc> i've been through it on the 6, but i couldn't see much
02:06:00 <kmc> need to bring a powerful flashlight
02:06:09 <shachaf> kmc: Did you hear copumpkin is leaving Boston? :-(
02:06:20 <copumpkin> shachaf: don't tell him, he wouldn't approve
02:06:22 <kmc> you are copumpkin?
02:06:26 <Phantom__Hoover> isn't the new york underground an amalgamation of like 5 different private networks
02:06:36 <kmc> Phantom__Hoover: basically 3
02:06:39 <shachaf> kmc: Oops. I didn't tell you.
02:07:13 <kmc> Phantom__Hoover: a few of the elevated lines might date back to the era when there were more than 3
02:07:14 <shachaf> copumpkin likes category theory more than boston :'(
02:07:20 <kmc> and a few bits of the system used to be LIRR, and stuff like that
02:07:45 <shachaf> copumpkin: What will you be doing in CT?
02:08:32 <kmc> but mainly it was the IRT (today, numbered lines), the BMT (mostly the NQR and JZ), and the city-run-from-the-start IND (the ACE, BDFM, and G)
02:09:05 <kmc> but the city was heavily involved with planning from the start
02:09:17 <kmc> in fact sometimes the city would build the lines on behalf of these private companies
02:09:19 <kmc> but then also compete with them
02:09:33 <kmc> and would impose terms that caused them to go bankrupt
02:09:41 <kmc> and would condemn the structures so they could be bought cheaper
02:09:49 <kmc> it was some kind of really fucked up hybrid public/private system
02:19:11 <shachaf> Is it still that capitaliq thing?
02:21:01 <shachaf> Bah, another finance thing?
02:21:23 <shachaf> Well, I guess you already lost your soul at clarifi anyway.
02:23:17 <kmc> moving to Westport?
02:26:30 <kmc> i don't know what that area is like; is it nice?
02:26:38 <kmc> it's a bit far from NYC but not totally unreasonable for a day trip
02:26:53 <kmc> yeah i bet
02:26:58 <copumpkin> there's a bus from manhattan every day
02:27:14 <copumpkin> kinda posh, apparently, but a lot of that part of CT is
02:27:24 <shachaf> copumpkin: There are buses from Manhattan to Boston more than once a day!
02:27:28 <copumpkin> I'll probably be visiting NY a lot
02:27:35 <kmc> commuting on the bus or train you can at least work or read or sleep
02:27:58 <copumpkin> yeah, but still, being on a bus ~2.5 hours a day isn't my idea of fun
02:28:06 <shachaf> Maybe I should move to NY.
02:28:30 <copumpkin> but it's still within a reasonable distance from boston, too
02:28:50 <copumpkin> and the local airport has direct flights to Tampa :)
02:29:19 <shachaf> copumpkin: Have you considered the other coast?
02:29:42 <copumpkin> I'm not opposed to it in principle
02:30:19 <kmc> what's so great about tampa
02:30:23 -!- Phantom_Hoover has joined.
02:30:48 <Sgeo> shachaf, if you move to NY, you'll be moving closer to me.
02:30:50 <Sgeo> Just a warning.
02:30:52 <copumpkin> my gf lives there and has to stay there for the next 1.5 years
02:31:53 <shachaf> Sgeo: Is NYC now Clojureland?
02:32:31 <copumpkin> there's a big haskell meetup there starting up
02:32:40 <Sgeo> shachaf, I take it you've never seen me obsessed with other languages?
02:32:47 -!- Phantom__Hoover has quit (Ping timeout: 246 seconds).
02:33:10 <shachaf> copumpkin: When do they meet?
02:33:23 -!- augur has quit (Remote host closed the connection).
02:37:31 -!- constant has changed nick to function.
02:37:40 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:41:02 <zzo38> What tvtropes does my Dungeons&Dragons story applies/misapplies/strangeapplies?
02:42:31 <copumpkin> the pics from Cortlandt st. station on that site are kinda eerie
02:47:20 <copumpkin> someone needs to make a post-apocalyptic RPG set almost entirely in the NYC subway system, with occasional glimpses of the destruction above
02:47:53 <Bike> charles barkley: shut up and jam: gaiden
02:48:18 <zzo38> copumpkin: Try it.
02:48:50 <copumpkin> I'd prefer to explore, not make the game :)
02:48:55 <copumpkin> and I don't really get to explore the real thing
02:51:23 <kmc> copumpkin: did you ever play Fallout 3?
02:51:32 <kmc> large parts are set in the DC subway
02:51:36 <kmc> it's a cool game
02:51:47 <kmc> should i play fallout 1/2?
02:51:56 <copumpkin> I love those too, but they have a different feel to them
02:52:08 <copumpkin> good old games has them on sale occasionally, I think
02:52:24 <kmc> i have... copies
02:52:30 <shachaf> kmc: Should you play Psychonauts?
02:52:35 <kmc> playing it's slightly annoying, i think they work in wine
02:52:39 <kmc> shachaf: i tried but it segfaulted :(
02:52:48 <copumpkin> kmc: then yeah :) unfortunatley the low res is the most annoying thing for me
02:53:00 <shachaf> kmc: The Linux version from HB?
02:53:09 <copumpkin> it's still pretty good, if you don't mind the low res
02:54:03 -!- augur has joined.
02:55:15 <kmc> shachaf: yeah
02:55:41 <shachaf> kmc: I don't have hardware acceleration working so I can't test it.
02:57:33 <kmc> DECtalk DTC01 (with a cat for scale)
02:57:37 <kmc> Cat (with a DECtalk DTC01 for scale)
02:57:40 <kmc> http://en.wikipedia.org/wiki/File:DECtalk_DCT01_and_Tink.jpg
03:03:58 -!- Nisstyre-laptop has joined.
03:16:35 <zzo38> In this Dungeons&Dragons game, well, one thing it does have is evil chancellor. Also, what do they call the strange plan, such as my plan involving the afro wig and beard trimmer, nobody seem to know what it is for, do you know what it is for?
03:17:31 -!- hagb4rd has quit (Quit: hagb4rd).
03:26:34 -!- DDR has joined.
03:28:50 <DDR> Hey, just wanted to publicly thank Oerjan for cleaning up my ComeFrom page.
03:29:12 <shachaf> DDR: I think public thanks are more fruitful when the person you're thanking is around.
03:29:23 <DDR> Yeah, can't have everything. :P
03:30:50 <DDR> Anyhow, that about wraps it up for me. See ya.
03:31:11 <pikhq> @tell oerjan 21:28 < DDR> Hey, just wanted to publicly thank Oerjan for cleaning up my ComeFrom page.
03:31:29 -!- DDR has left.
03:34:04 <kmc> `run echo ørjan | iconv -t iso646-no
03:34:07 <HackEgo> iconv: illegal input sequence at position 0
03:34:18 <kmc> `run echo ørjan | iconv -t iso646-no -f utf-8
03:44:25 <kmc> shachaf: did you see http://amoffat.github.com/sh/
03:44:44 <kmc> i used it for a nontrivial project
03:44:46 <kmc> it's pretty nice
03:44:54 <Sgeo> https://www.casascius.com/ pretty. Of course, only interested in prettyness, so can only imagine getting the 0-bitcoin one
03:45:08 <kmc> Sgeo: but what does it have to do with clojure?
03:45:15 -!- lahwran has quit (Excess Flood).
03:45:32 <Sgeo> Erm, better yet, the 25 BTC with no bitcoin value
03:45:36 <Sgeo> That's what I was thinking of
03:45:50 <Sgeo> Why is there a meme of me being Clojure obsessed
03:46:07 <Sgeo> I'm always obsessed with whatever my current language of the minute is, and currently that's Clojure
03:46:12 <Sgeo> It varies over time.
03:47:03 <kmc> Vires in Numeris
03:48:40 -!- lahwran has joined.
03:49:50 <shachaf> droppingWhile p l f = fst . foldrOf l (\a r -> let s = f a *> snd r in if p a then (fst r, s) else (s, s)) (noEffect, noEffect)
04:20:30 <Sgeo> elliott, tswett coppro update
04:31:46 <Sgeo> It's been a while since I've read Ubersoft
04:35:39 <Sgeo> Hmm, Reddit hates Ubersoft
04:35:49 -!- Nisstyre-laptop has quit (Read error: Connection reset by peer).
04:36:24 -!- Nisstyre-laptop has joined.
04:36:55 -!- hagb4rd has joined.
04:40:59 -!- monqy has joined.
04:47:00 <zzo38> Does anyone discovered checkmate with a king move?
04:54:59 -!- Frooxius has quit (Ping timeout: 245 seconds).
05:37:03 <Sgeo> Fight... for the sky......
05:37:08 <Sgeo> waiting for my..............ride
05:50:00 <ion> Flex Mex http://youtu.be/GTwrVAbV56o
05:51:10 -!- zzo38 has quit (Ping timeout: 244 seconds).
06:17:13 -!- hagb4rd has quit (Ping timeout: 245 seconds).
06:37:20 -!- sivoais has quit (Ping timeout: 244 seconds).
06:43:16 -!- sivoais has joined.
06:53:16 -!- AnotherTest has joined.
06:53:56 -!- AnotherTest has quit (Client Quit).
06:54:08 -!- AnotherTest has joined.
06:55:08 -!- shubshub has joined.
06:56:17 <monqy> is it a good language ?
06:56:49 <monqy> oh right you're the batch guy aren't you
06:57:16 <shubshub> This time its Batch modified for making video games
06:57:53 <monqy> how does that work :oi
06:58:16 <shubshub> Using Batch files to make new custom commands
06:58:43 <monqy> what does that mean :o
06:59:29 <shubshub> ldo you jknopw anything about batch?
06:59:53 <shubshub> do you know anything about batch?
07:06:04 <elliott> shubshub: do you know anything
07:07:02 <shachaf> elliott: do you know anything
07:08:26 <monqy> shachaf: do you know anything
07:09:29 <ion> monqy: do 𝖄𝕺𝖀 know anything
07:10:41 <shubshub> elliot: I know evertything about making games in batch
07:11:44 <monqy> everything???? that's a lot of thing!
07:12:42 <ion> monqy: No, just evertything.
07:13:24 <shachaf> is that more or less than eleventy
07:13:29 <shachaf> > compare "everty" "eleventy"
07:13:58 <ion> > compare "everty" "9000"
07:14:16 <monqy> well, eleventything isn't a lot of thing, so that's not saying much
07:46:32 <Sgeo> Chrome doesn't want pages on my HD using geolocation'
07:48:35 -!- Bike has quit (Quit: (but seriously)).
07:49:20 <elliott> shachaf: How does edwardk define iteratees again?
07:50:30 <shachaf> elliott: You mean the pseudo-iteratee "It" thing in Trifecta?
07:50:53 <shachaf> data It r a = Pure a | It a (r -> It r a) ?
07:51:23 <elliott> shachaf: Something like that, yes.
07:51:30 <elliott> I remember some "f" being involved, though.
07:51:36 <elliott> Some "Iterator" type from some earlier thing.
07:53:55 <elliott> shachaf: Anyway, I want the "lens" package of iteratees/pipes/whatever.
07:54:16 <shachaf> elliott: There are too many iteratee packages, so you want another one to solve everything?
07:54:33 <shachaf> Except this one is written by edwardk and he makes it so much better than all the others that they all stop being relevant?
07:54:42 <shachaf> And also it has crazy types.
07:55:05 -!- zzo38 has joined.
07:57:06 <elliott> <shachaf> elliott: There are too many iteratee packages, so you want another one to solve everything?
07:57:11 <elliott> That was the idea of lens, right?
07:57:54 <shachaf> lens also replaced a whole bunch of "unrelated" packages.
07:58:03 <shachaf> What with the whole uniplate/biplate/zipper/etc. business.
07:58:45 -!- shubshub has left.
07:58:57 <elliott> shachaf: Right. So I guess this hypothetical package -- let's call it pipe -- would also replace, um, I don't know, edwardk's package with those other Traversable-type classes.
07:59:06 <elliott> And maybe that reducers package, that seems sort of vaguely marginally related.
07:59:21 <elliott> And yaml. It'll probably have a YAML parser.
08:00:29 <shachaf> elliott: Comment on Rogach's code in #haskell
08:00:31 <elliott> Does the creator of YAML use IRC?
08:00:37 <elliott> (So I can @tell him or her or them that.)
08:00:39 <ion> YAML all the things!
08:00:52 <shachaf> Mention "unlines" and Data.Text and all that.
08:01:07 <ion> Why isn’t the Haskell syntax based on YAML?
08:01:16 <shachaf> elliott: There are three "YAML people"
08:01:44 <shachaf> All of them can be found on IRC occasionally, though the one who wrote the spec is usually not around.
08:02:28 <shachaf> elliott: ((intercalate "\n" output) ++ "\n")
08:03:11 <elliott> shachaf: You know which "YAML person" I mean.
08:04:05 <ion> (++"\n") =<< output
08:11:09 <shachaf> droppingWhile p l f = fst . foldrOf l (\a r -> let s = f a *> snd r in if p a then (fst r, s) else (s, s)) (noEffect, noEffect)
08:14:47 -!- ais523 has quit.
08:20:08 -!- ogrom has joined.
08:24:29 -!- Vorpal has joined.
08:24:39 <ion> @hoogle noEffect
08:25:10 <shachaf> -- | The 'mempty' equivalent for a 'Gettable' 'Applicative' 'Functor'.; noEffect :: (Applicative f, Gettable f) => f a; noEffect = coerce $ pure ()
08:25:48 <shachaf> Do I have to do everything for you?
08:25:57 <shachaf> class Functor f => Gettable f where coerce :: f a -> f b
08:27:01 <elliott> shachaf: (Also ew, that typeclass is just isomorphic-to-Const-x-for-some-x.)
08:27:18 <shachaf> Do you know why he added it?
08:27:31 <shachaf> Also, class Applicative f => Settable f where untainted :: f a -> a
08:28:30 <elliott> <shachaf> Do you know why he added it?
08:28:32 <elliott> For overloading, probably.
08:28:50 <shachaf> If you try to set with a getter or get with a setter, you get a huge ugly unification error.
08:29:00 <shachaf> But if you use these type classes, you get "No instance for (Gettable Mutator)"
08:30:55 <zzo38> I suppose often you don't know what is better name that is why you have bad name
08:31:30 <shachaf> elliott: "pretty cool huh"
08:31:58 <shachaf> elliott: Do you understand the Bazaar business?
08:32:36 <monqy> ????? why did you say my name ???? what is going on
08:34:53 -!- monqy has quit (Quit: hello).
08:40:25 <elliott> maybe type Pipe f i o a b = forall r. (forall r'. (i -> f r') -> (a -> f r') -> f r') -> (o -> f r) -> (b -> f r) -> f r
08:43:18 <shachaf> There must be a Poe's law for crazy types.
08:44:49 <elliott> type Stream f p o a = Stream { runStream :: forall r. (o -> f p) -> (a -> f r) -> f r }
08:44:50 <elliott> type Pipe f i o a b = forall ii oo aa bb. Stream f (Pipe f ii i aa a) i a -> Stream f (Pipe f o oo b bb) o b
08:47:14 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
08:47:48 <elliott> shachaf: (How do you write Pipe f i i a a with that?)
08:50:03 <Sgeo> elliott, [S] update
08:52:27 <Sgeo> shachaf, go read Homestuck
08:52:52 <shachaf> Is that what those updates are about?
08:53:31 <fizzie> I thought they were updates of people on channel. :/
08:53:38 <fizzie> Like, there's a new elliott firmware.
08:53:44 <elliott> they're updates of who sgeo has decided to randomly ping for no reason today
08:53:59 <fizzie> elliott: Are you out of beta yet?
08:54:03 <elliott> like if you had a list whose purpose was to announce updates to itself
08:54:28 <zzo38> Now I have to vs Arizona in the final series. Arizona is the only team I have ever lost against. Alvarez (SF) and Butler (C) are injured, so if Levine (C) or Colvin (SF) gets injured too then I will have none left and I will be out. But maybe if Murray (C on opposing team, and their only good player) gets injured, I might have a better chance.
08:55:13 <Sgeo> Huh, never thought zzo38 would be into Fantasy Sports. Although I have no idea which one that is
08:55:16 <shachaf> Sgeo: http://slbkbs.org/jsgif/ to the rescue!
08:55:20 <zzo38> Well, tomorrow I will know what happened.
08:55:48 <zzo38> Sgeo: Franchise Basketball in X-BIT BBS
09:01:25 <zzo38> Butler is injured for ten games, so therefore you will be out for a long time. Maybe if there are the players available to buy, the first player I buy in next season should be a C position in order to avoid this problem. It might also be a good idea to get a F position since I don't have enough of those either.
09:03:46 -!- ogrom has quit (Ping timeout: 255 seconds).
09:15:29 -!- zzo38 has quit (Quit: zzo38).
09:20:00 -!- Nisstyre-laptop has quit (Quit: Leaving).
11:26:56 -!- Phantom_Hoover has joined.
11:37:20 -!- Arc_Koen has joined.
11:37:54 -!- Taneb has joined.
11:54:29 -!- Taneb has quit (Ping timeout: 255 seconds).
12:06:51 <quintopia> i'm assuming C is catcher and F is fielder?
12:13:48 -!- oerjan has joined.
12:14:26 <lambdabot> pikhq said 8h 43m 13s ago: 21:28 < DDR> Hey, just wanted to publicly thank Oerjan for cleaning up my ComeFrom page.
12:14:43 <oerjan> @tell DDR you're welcome
12:17:10 <elliott> oerjan: btw you realise "I think the main reason the featured languages are currently stalled is that he thinks all of the better current suggestions need editing improvement before promotion." is not really true right :P
12:17:49 <elliott> (the real reason is that I would have to write a good blurb, and i am stupendously lazy)
12:18:16 <Arc_Koen> what if someone else was to write the blurb?
12:18:39 <oerjan> as are we all, except those who have real jobs and therefore cannot find the time.
12:18:50 <elliott> i am a terrible perfectionist though so i would probably still end up editing it to heck
12:19:01 <elliott> possibly we should get someone on board just to do featured language stuff
12:19:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds).
12:26:15 -!- hagb4rd has joined.
12:28:00 <oerjan> Arc_Koen: btw you don't actually need to put <pre> and </pre> in the same line as the neighboring content... an initial or final newline will usually be ignored
12:30:47 -!- Phantom_Hoover has joined.
12:51:12 <Arc_Koen> you have no idea how much time I spend testing different formats after I've edited a page and before I hit save changes :(
12:53:13 <Jafet> You could make one featured language page, then tell people their languages can get featured if the pages for those languages are as good as the featured one.
12:55:16 <Arc_Koen> hey I had an idea for a stack-based language
12:56:39 <Arc_Koen> functions get a copy of the current stack to operate on, and when they are done, the top element from their stack is pushed on the stack
12:57:05 <Arc_Koen> and loop constructs can only appear in the main function
13:00:20 <Arc_Koen> (but the main function has no ways to pop its stack, since functions can only add items to it)
13:00:20 <Arc_Koen> so basically functions can contain instructions or call other functions, and the main function can only use loop constructs and call other functions
13:00:20 <Arc_Koen> and there's an auxiliary stack where data is pushed to make operations reversible
13:00:20 <Arc_Koen> (for instance if you have an instruction "not" that pops the top item and replaces it with 0 if it was nonzero or 1 if it was 0, then it would also push the original number to the auxiliary stack so that it can be reversed)
13:00:20 <Arc_Koen> and there should be some control flow operators that allow to reverse operations
13:00:21 <Arc_Koen> anyway I'll be back later see you
13:03:19 <oerjan> @tell Arc_Koen that doesn't quite fit my intuition of "reversible" as it seems at best injective and not bijective. btw have you looked at Kayak?
13:05:42 -!- function has changed nick to trout.
13:06:11 <oerjan> i find this nick change both fishy and dysfunctional
13:06:49 <fizzie> Good for slappin', tho'.
13:07:59 <oerjan> no, lambdabot, that's the wrong kind of slapping
13:09:49 <lambdabot> Plugin `unmtl' failed with: `Cont ()' is not applied to enough arguments, giving `/\A. (A -> ()) -> ()'
13:12:57 <elliott> oerjan: Isn't it cool how when you have ((Q -> Void) -> Void), you know there must be a Q in there somewhere? But you can't get at it.
13:14:01 <oerjan> or does it really mean that
13:14:15 <elliott> Depends what you mean by mean.
13:14:54 <elliott> oerjan: (It's not quite true; cf. http://r6.ca/blog/20040616T005300Z.html.)
13:15:48 * oerjan swats elliott's final period -----###
13:18:21 <elliott> (The problem is that the Q term (which you must have) can depend on the (Q -> Void) argument it gets.)
13:18:36 <elliott> (So you don't have a standalone Q argument.)
13:19:07 <elliott> (You have a (Q -> Void) -> Q term, though, i.e. not Q implies Q, which is exactly what you need to prove... not not Q.)
13:19:14 <oerjan> ah yes any A which is a boolean tautology but not an intuitionistic one satisfies ¬¬A but not A intuitionistically
13:19:40 <elliott> Still -- when you have ((Q -> Void) -> Void), you know you have (Q -> Void) -> Q, but you can't get at that, either.
13:19:54 <elliott> Plug it into the former, ex falso quodlibet.
13:20:06 <elliott> But it's still cool, even though I don't know what "it" is any more.
13:20:58 <oerjan> the cool that you can understand is not the true cool
13:30:12 -!- oerjan has quit (Quit: etc. etc. etc.).
14:31:11 -!- Frooxius has joined.
14:43:39 <Arc_Koen> oerjan: yes I have. and how would it not be reversible?
14:43:39 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
14:51:52 -!- hagb4rd has quit (Quit: hagb4rd).
14:54:09 <Arc_Koen> elliott: well that's not irreversible! he could just join again
14:55:22 -!- Jafet has quit (Quit: Leaving.).
15:29:11 -!- hagb4rd has joined.
15:33:03 -!- Jafet has joined.
15:54:24 -!- Frooxius_ has joined.
15:56:34 -!- Frooxius has quit (Ping timeout: 260 seconds).
15:56:35 -!- Frooxius_ has changed nick to Frooxius.
16:04:23 -!- Nisstyre-laptop has joined.
16:12:47 -!- elliott has quit (Remote host closed the connection).
16:53:21 -!- zzo38 has joined.
16:59:43 -!- epicmonkey has joined.
17:00:29 -!- barts_ has quit (Read error: Operation timed out).
17:02:49 -!- barts_ has joined.
17:07:07 -!- Phantom__Hoover has joined.
17:09:56 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds).
17:48:11 -!- Bike has joined.
18:37:15 -!- AnotherTest has left.
19:05:56 -!- Taneb has joined.
19:11:47 <zzo38> Do you like this? http://forums.nesdev.com/viewtopic.php?p=101816#p101816
19:14:57 <Sgeo> By "fixed jump" you mean you can't move around mid-jump?
19:15:04 <Sgeo> BZFlag is like that unless you have the Wings flag
19:15:33 -!- Taneb has quit (Ping timeout: 245 seconds).
19:15:58 <zzo38> No, I mean you cannot change the height.
19:23:20 <zzo38> In some games if you release the jump button you fall down but I don't like that much; I prefer if you push jump you cannot stop it unless hitting the ceiling or reached the maximum jump height.
19:23:50 -!- ais523 has joined.
19:25:44 -!- monqy has joined.
19:31:57 <HackEgo> 574) <shachaf> elliott: GHC bug? Come on, it's the parentheses. <shachaf> The more parentheses you add, the closer it is to LISP, and therefore the more dynamically-typed. \ 771) <oklofok> you tell us you're making a lisp interpreter, but you don't mention its polterchrist is c++ templates? <oklofok> isn't that like telling us you're taking a bath and not mentioning you're bathing in a WORLD FULL OF SNAKES
19:49:55 <Sgeo> I still have no idea whether I'm supposed to evacuate
19:50:37 <zzo38> If not, then I think you are not supposed to evacuate.
19:51:35 <Sgeo> zzo38, there's a hurricane heading for.. somewhere vaguely in my area, I think
19:56:38 <Sgeo> It's really not a very agrarian place
19:56:48 <Sgeo> It used to be 100 years ago, but isn't now.
19:57:41 <kmc> yeah i'm gonna get hurricane'd as well
19:57:46 <kmc> i just stockpiled a bunch of water
19:58:10 <kmc> how ironic because hurricanes are made of water, am i rite
19:58:33 <kmc> zzo38: that's right, if you need to evacuate for any other reason, the authorities will come by and set your house on fire so you know
19:58:58 <kmc> http://www.getty.edu/art/gettyguide/artObjectDetails?artobj=1271
20:00:03 <olsner> Sgeo: I thought the hurricane was going for boston, but maybe there are multiple hurricanes
20:00:57 <Sgeo> olsner, I think the entire east coast is vaguely on alert
20:02:25 <Sgeo> Well, not "entire"
20:02:56 <kmc> Phantom__Hoover: that's just a theory
20:03:07 <olsner> apparently I'm about 50km from the east coast, should I be on alert too?
20:03:14 <kmc> i think hurricanes are small and stay in one place and are caused by gay marriage
20:03:15 <Bike> they're also made of clouds, are you stockpiling clouds?
20:03:18 <kmc> teach the controversy!
20:06:52 <kmc> in england east is on the west
20:08:29 <kmc> that's why they drive on the left
20:08:48 <olsner> haven't really noticed before, but in swedish storms are called unweathers
20:13:55 <zzo38> Do you like the other stuff I have written other than the fixed jump?
20:21:55 -!- sirdancealot7 has quit (Ping timeout: 272 seconds).
20:38:13 <kmc> cambridge ma
20:38:43 -!- sirdancealot7 has joined.
20:53:00 -!- augur has quit (Ping timeout: 268 seconds).
20:59:02 -!- augur has joined.
21:05:03 <kmc> from django.utils.crypto import constant_time_compare
21:14:30 -!- TeruFSX has quit (Read error: Connection reset by peer).
21:14:58 -!- TeruFSX has joined.
21:17:45 -!- TeruFSX has quit (Remote host closed the connection).
21:18:17 -!- TeruFSX has joined.
21:25:46 <nortti> http://i1.kym-cdn.com/photos/images/original/000/317/740/011.jpg
21:27:38 -!- epicmonkey has quit (Ping timeout: 245 seconds).
21:28:29 -!- kallisti has quit (Quit: Changing server).
21:41:17 -!- kallisti has joined.
21:45:33 <kmc> what's the actual story
21:46:48 <zzo38> I tried to think of how to make the rules of Magic: the Gathering cards in Haskell. There would be the way to create/destroy objects given timestamps, object references, some command to used for changeable text (such as (textColor Red) and so on, in some monad), call with overridable rules, static with overridable rules, triggers, wait for user input, etc
21:47:14 <olsner> for starters that it's too unrelated arcs, other than that I think they're just made of quite sturdy wood
21:47:39 <zzo38> Actually perhaps you also need to specify with the changeable text function, what object is belongs to
21:48:20 <olsner> kmc: http://www.snopes.com/photos/architecture/nagasaki.asp
21:53:45 <kmc> the braces inside the wieliczka salt mine are mostly made of wood and are many hundreds of years old
21:54:00 <kmc> they are preserved by the super saltiness
21:55:10 -!- zzo38 has quit (Remote host closed the connection).
21:56:31 <kmc> wheeee git commit -am $'foo\n\nbar'
22:34:59 -!- copumpkin has joined.
22:46:10 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
22:46:26 -!- Phantom__Hoover has joined.
22:54:10 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
22:54:26 -!- Phantom__Hoover has joined.
23:20:32 -!- Vorpal has quit (Ping timeout: 246 seconds).
23:49:09 <kmc> the laptop i want is now available on lenovo's australia site, but not the US site
23:49:17 <kmc> of course everything is 40% more expensive on the australia site
23:50:13 <shachaf> The X carbon thing with i7 and 8GB RAM?
23:50:47 <kmc> AU$ 2,299 :X
23:50:53 <shachaf> Demand that they put it on the US website!
23:51:00 <kmc> that's almost 2400 in real dollars
23:51:34 <shachaf> Hmm? It's over 4800 reals.
23:51:42 <kmc> i knew you were going to say that
23:51:56 <kmc> why is everything 40% more expensive in .au
23:52:11 <kmc> it's not enough that it's way too fucking hot and all the plants and animals are trying to kill you?
23:52:23 -!- Phantom_Hoover has joined.
23:52:34 <kmc> cerqvpgwhat?
23:52:42 <kmc> crna gora?
23:54:48 <shachaf> kmc: Do you know that if you have any polynomial with nonnegative integer coëfficients, and you give me its value at one positive integer point, I can ask for its value at one other point and tell you the polynomial?
23:55:06 <olsner> in related news, quantal's version of grub *might* be able to boot my system, how do I figure out whether it actually can without hosing my existing and working grub?
23:55:19 -!- Phantom__Hoover has quit (Ping timeout: 252 seconds).
23:56:54 <kmc> shachaf: hax
23:57:02 <kmc> i seem to remember hearing that but i don't know how it works
23:57:36 <olsner> kmc: was wondering which model "the X carbon thing" was exactly
00:00:26 <kmc> X1 Carbon with i7 processor and 8 GB of RAM
00:00:55 <kmc> due to thinness the RAM is soldered on and can't be upgraded :/
00:01:26 <kmc> on the US site you can get the best CPU or the best RAM but not both at once :(
00:01:53 <shachaf> kmc: Soon Haswell will come out and it won't be the best CPU anymore.
00:02:03 <kmc> true enough
00:02:10 <pikhq> Why can't i just by "the best CPU for all time"?
00:02:47 <kmc> is cerqvpgnoyrchaf a haswell instruction
00:02:55 <olsner> oh, carbon was an actual part of the name, I thought it was generally refering to any carbon fibery lenovo model starting with "x"
00:03:07 <olsner> (which is pretty much all of them)
00:03:08 <kmc> yeah, this one is... more carbon fibery
00:03:19 <pikhq> kmc: Yes, that gzips a buffer.
00:04:46 <pikhq> Well, rep cerqvpgnoyrchaf does. Without the rep prefix it consumes a single byte of the to-be-gzip'd stream (of course)
00:04:50 <kmc> they typically use carbon fiber reinforced plastic, together with magnesium alloy
00:09:54 <olsner> the new keyboard style looks flimsy though
00:11:58 <kmc> everyone who has reviewed it says it's great
00:12:42 <kmc> i literally have not heard a single bad thing from anyone who has actually used it
00:12:52 <kmc> plenty of nerd rage from thinkpad diehards looking at photos, though
00:13:16 <kmc> i don't think you can really tell if it's flimsy from photos
00:13:32 <kmc> i'll also note that the internal mechanism of the beloved 'classic keyboard' changed all the time
00:15:06 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:18:34 -!- monqy has quit (Quit: hello).
00:19:51 -!- monqy has joined.
00:24:16 <kmc> all laptop keyboards hurt my hands; they can't compare to the kinesis
00:25:37 <shachaf> I want a kinesis keyboard for my phone.
00:25:42 <shachaf> You could call it a telekinesis.
00:52:25 <kmc> shachaf: today I actually understood how Django's CSRF protection works
00:52:53 <shachaf> Is it an unusual sort of CSRF protection?
00:52:58 <kmc> i don't know
00:53:06 <kmc> perhaps i actually understood how CSRF protection works in general
00:53:40 <kmc> the server makes up a random value and sets it in a cookie
00:53:52 <kmc> and also arranges that all form submissions will include this value in a hidden <input>
00:54:11 <kmc> when a request comes in, the server doesn't know what the "right" random value is
00:54:18 <kmc> it just checks that the cookie matches the form field
00:54:34 <shachaf> That's CSRF protection in general, I think.
00:54:45 <kmc> i think this is the usual way
00:54:50 <shachaf> What would it mean for it to know the "right" random value? That it would store a value in a database and look it up from your session cookie?
00:55:10 <shachaf> That's still cookie-indexed, so I don't think you gain much.
00:55:11 <kmc> right -- I think in that case there's no point in it being distinct from the session ID
00:55:34 <shachaf> You usually do want to avoid using the session cookie itself as the CSRF token.
00:55:40 <kmc> if you had a system where the session ID is submitted with every request, that would also be safe against CSRF
00:55:49 <kmc> but would be insecure in other ways
00:55:58 <shachaf> Ideally JavaScript doesn't have access to the session ID at all.
00:56:05 <kmc> but i haven't thought through which specifically; it just seems like a bad idea
00:56:08 <kmc> yeah, that's one of them
00:56:54 <kmc> one advantage of it not being part of the session is that you can protect not-logged-in views, including the login page
00:59:57 <kmc> i don't know enough about web security
00:59:59 <kmc> gotta learn more
01:01:10 <shachaf> I found multiple web bugs in a web application that's running on my computer right now. :-(
01:01:26 <shachaf> Including broken XSS protection and pretty broken CSRF protection.
01:01:51 <shachaf> Also, double-free or something. But I didn't have any luck tracking it down last time.
01:02:41 <shachaf> I should probably report it...
01:04:41 <kmc> what is broken about them?
01:05:08 <shachaf> A CSRF token is generated based on a very complicated algorithm seeded with time(NULL).
01:05:22 <shachaf> On a web page that you normally never visit.
01:07:03 <kmc> the significance of the latter is that you keep the same one for a long time?
01:07:07 <kmc> did you report those two problems?
01:09:16 <shachaf> No, because I was hoping to track down the other problem and make them all work together.
01:09:29 <shachaf> Individually they're relatively minor bugs but code-execution-by-visiting-a-webpage-on-a-default-Debian-install would be more fun to have found.
01:10:28 <shachaf> This might be silly reasoning. :-)
01:11:00 <shachaf> Did I mention this is a custom-written C web server that runs as root (and some CGI scripts also written in C)?
01:11:08 <kmc> is it cups
01:11:26 <shachaf> I expected that you'd find it from what I said. :-)
01:11:47 <kmc> it's not remotely accessible by default, though, is it? but I suppose an attacker can always make you visit a link to it
01:12:11 <kmc> the web server only accepts connections on localhost, or no?
01:12:44 <kmc> you should report it
01:13:29 -!- Phantom__Hoover has joined.
01:14:00 <shachaf> They have some XSS protection but it's broken.
01:14:51 <shachaf> I've found at least three real bugs, and know of one more that I haven't managed to track down yet.
01:16:41 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
01:16:54 <shachaf> Hmm, https://cups.org/ has an invalid certificate.
01:19:05 <shachaf> CUPS is an Apple thing, right?
01:21:00 <pikhq> They bought it, yes.
01:24:07 <shachaf> kmc: Did you see http://lcamtuf.coredump.cx/postxss/ ?
02:13:04 <Phantom__Hoover> i think the worst part of living on campus is the random screams piercing the night
02:31:49 <pikhq> Why, precisely, does your campus have random screams piercing the night?
02:33:36 <Sgeo> For the first time in a very long time, I have purchased a book on programming
02:40:43 <Sgeo> >.> The Joy of Clojure
02:42:43 <Bike> how's it compare to The Joy of Sex?
02:47:53 <coppro> Bike: Normally, I'd say it's quite inferior
02:47:56 <coppro> but with Sgeo, I'm unsure
03:03:08 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
03:27:47 -!- copumpkin has joined.
03:28:28 -!- Frooxius has quit (Ping timeout: 245 seconds).
04:28:03 <pikhq> Gregor: Have you heard the news? (perhaps a bit slow, but still)
04:28:33 <pikhq> Gregor: Nov. 10. FiM. Just sayin'.
04:28:41 <Gregor> Yeah, of course I have.
04:29:15 <Gregor> See also: http://www.facebook.com/photo.php?fbid=4008180436991&l=9e2e2cbb5d
04:29:33 <pikhq> I did see that one.
04:29:44 <pikhq> (we *are* "friends" on Facebook)
04:29:56 <Gregor> Sure, but things tend to go unnoticed on FB *shrugs*
04:30:04 <Gregor> Can you guess what the remaining component is? ;)
04:31:06 <pikhq> I sense a distinct lack of horn?
04:31:13 -!- zzo38 has joined.
04:32:24 <Gregor> pikhq: http://www.amazon.com/gp/product/B0070QMUFA/
04:32:30 <Gregor> I shall be what nightmares are made of.
04:33:52 <Gregor> It's even got blue eyes.
04:38:16 <zzo38> So, how do you make nightmares, then?
04:39:54 <Sgeo> Nightmares are made out of him. Meaning, Gregor needs to be ground up into a fine powder, and this powder is then mixed with a dream.
04:41:12 <Gregor> Bugs are boring nightmares.
04:41:15 <zzo38> O, that is how you are going to do it.
04:41:24 <shachaf> zzo38: Do you believe in leap months?
04:42:11 <zzo38> Leap months? I don't think so (although it might depend on the calendar).
04:43:11 <pikhq> I prefer the name "INTERCALARIS"
04:44:01 <pikhq> Which of course belongs between FEBRVARIVS and MARTIVS.
04:45:08 -!- energumeno has joined.
04:45:23 <zzo38> O, so you want 29 Feb to be not called a day of a month, is that what you mean?
04:45:41 <shachaf> zzo38: What if there was a leap month called "Sanctuary".
04:45:50 <pikhq> No, I'm just being silly.
04:46:29 <shachaf> monqy: what if we had 13 months of 28 days each
04:47:11 <zzo38> There are also various other calendar systems, and depending how important you want seasons to line up, what features of days of week, and other things.
04:47:13 <pikhq> Why not 5 months of 73 days?
04:47:34 <zzo38> pikhq: That is the Discordian calendar is it not?
04:47:34 <shachaf> energumenoqy brings up a good point
04:48:15 <Sgeo> Is there any coherence to the current calendar
04:48:28 <Sgeo> As in, any good reason that different months are different lengths?
04:48:31 <zzo38> And then the 29 Feb will be called St.Tib's day, so not belonging to a day of week or to a month.
04:48:57 <energumeno> jung's archetiype is the key to all the abstract concepts
04:49:22 <Sgeo> `welcome energumeno
04:49:26 <zzo38> energymeno: Can you please be more specific?
04:49:33 <HackEgo> energumeno: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
04:49:45 <zzo38> And does 11:11 phenomena have what to do with what?
04:49:56 <zzo38> Let me look it up in Wikipedia.
04:50:14 <pikhq> Sgeo: Only historical: the ancient Roman calendar had irregular months.
04:50:27 <zzo38> "Numerologists believe that events linked to the time 11:11 appear more often than can be explained by chance or coincidence." It is nonsense, as far as I am concerned.
04:50:38 <Sgeo> Why did the ancient Roman calendar have irregualr months?
04:50:48 <zzo38> Sgeo: Good question maybe Wikipedia has that too.
04:50:59 <zzo38> Possibly something to do with the moon?
04:51:00 <pikhq> Possibly because ROMVLVS said so.
04:51:02 <energumeno> the digital programming is a binary sequence
04:51:29 <Bike> i thought it was augustus and julius being arrogant, or is that an urban legend
04:52:01 <zzo38> energumeno: I do not understand what point you are trying to make, although I guess it is correct yes the digital programming is a binary sequence, in computer machine codes, whatever
04:52:12 <energumeno> frequencies are modulating something in our brains
04:52:23 <pikhq> Bike: Nah, Julius was just making a sane modification to already-extant Roman practice.
04:52:46 <pikhq> Replacing an inconsistent intercalary month with a consistent intercalary day.
04:53:10 <Bike> Huh. I didn't know that.
04:53:12 <zzo38> energumeno: Yes I think it is, frequencies are modulating something in everything, I do not understand what you are trying to make.
04:53:18 <pikhq> And changed some month lengths slightly so the year was 365 or 366 days, instead of 355 or 377 or 378 days.
04:53:26 <zzo38> No, I have not seen the 23 film.
04:53:58 <pikhq> (the length of the month Intercalaris varied slightly)
04:54:05 <Sgeo> zzo38, I have a feeling energumeno is exactly the sort of person looking for the other kind of esoteric.
04:54:20 <zzo38> Sgeo: I agree, but I try to answer question anyways.
04:54:54 <zzo38> O, yes, OK, I can see about that film on Wikipedia now.
04:56:16 <Sgeo> Let me know if the number 3 starts appearing everywhere and everyone has a sense of deja vu
04:56:54 <zzo38> "Apophenia is the experience of seeing meaningful patterns or connections in random or meaningless data." Yes this can certainly happen. It is one way to give you ideas, certainly, even though there is not a real objective patterns. It is also synchronicity, I think?
04:57:57 <zzo38> "For example almost every culture has a savior that has come back from heaven or the dead, or reincarnation is a main point of the belief. Jesus for example in the Christian texts and also Buddhists and Hindus have reincarnation as a principal part of their religion, these being principal parts of many religions." These are things I have noticed.
04:57:57 <energumeno> zzo38 apophenia is a compulsive finding about patterns
04:58:02 <Sgeo> A book I read about more than 3 dimensions had a chapter on synchronicity, no idea why. It seemed to buy into that sort of mysterious gunk
04:58:17 <Sgeo> But other than that it was a good book
04:58:27 <zzo38> energumeno: O, yes, OK.
04:58:42 <Bike> zzo38: a life-death-rebirth deity, often linked to farming.
04:59:16 <zzo38> Sgeo: I cannot understand either, it doesn't make much sense. Perhaps a sentence or footnote about synchronicity might go, but (at least without knowing much about the book) it doesn't seem like it ought to have a chapter of it.
04:59:51 <Sgeo> Might not have been a full chapter
04:59:54 <Sgeo> I don't remember
05:02:58 <zzo38> energumeno: What refs specifically? Link some, if we don't like it we can tell you
05:04:59 <zzo38> Well, link some, I don't care. (Maybe others do, but I don't care)
05:05:13 <energumeno> http://en.wikipedia.org/wiki/Synchronicity
05:05:14 <zzo38> And then I will look if I want to.
05:05:19 <zzo38> Yes I read that already.
05:06:32 <zzo38> As far as I can understand, it refers to a subjective grouping of events rather than objective.
05:08:11 <energumeno> mmm not at all. the first lawer of shynchronicity is that phenomena isn't pre-subjetive
05:09:23 <zzo38> Well yes, subjectivity is post-phenomena, but I don't think that violates what I have said.
05:11:53 <energumeno> trouble is: how phenomena is rapping the law of space-time
05:12:45 <zzo38> Again, I do not understand you.
05:15:04 <energumeno> the bug theory (yes the same that computing) is the explanation
05:15:27 <zzo38> No, I have not seen.
05:16:40 <zzo38> I am not sure what a "bug theory" is.
05:17:37 <zzo38> Do you mean Heisenberg's Uncertainty Principle?
05:22:15 <zzo38> Heisenberg's Uncertainty Principle can tell how you cannot know the position and momentum precisely simultaneously.
05:23:06 <zzo38> I know some things about physics, and I like physics and mathematics.
05:23:52 <energumeno> yes, in other words I think, when a person is nearing the true, the true protects itself, the bug, the shynchronicity is the mask
05:33:31 <energumeno> I suffer this phenomena in my life continuosly
05:33:42 <kmc> life-after-death-ville
05:33:42 <energumeno> I don't understand why shynchronicitie often primes about some people
05:33:45 <zzo38> I have interests in philosophy too.
05:33:46 <zzo38> Like the welcome message says, you may have been looking for the other kind of esoteric, which is not known a lot by people on this channel. Nevertheless, we can and do discuss a variety of things in this channel, including things like that possibly.
05:33:48 <zzo38> I am mainly interested in mathematics, physics, computer programming, etc but I know some things about various other topics as well: astrology, religion, linguistics, various others too a few things. I also play Dungeons&Dragons game.
05:34:02 -!- copumpkin has quit (Remote host closed the connection).
05:34:06 <zzo38> energumeno: Probably just because you notice it, I guess.
05:35:08 -!- lahwran has quit (Excess Flood).
05:36:40 -!- lahwran has joined.
05:37:37 <zzo38> Of course I don't know for sure; I just guess.
05:39:20 <zzo38> There are various phenomena that are not yet known. The same applies to mathematics and to physics, and it is even proven.
05:42:43 <energumeno> why people separate mathematics and physics?
05:43:20 <pikhq> Well, math covers a *lot* more than merely physics for one.
05:44:37 <pikhq> That's not the sum total *of* math, but that is one of its use cases, yes.
05:45:30 <kmc> A button to touch, a dial to turn, a key to hold
05:47:10 <zzo38> Yes, math is used for a lot of things. Mathematics can also be studied for just itself too, even if the area studied is not currently being used for something else too.
05:49:13 <energumeno> so I think physics is applied mathematics simply
05:50:01 <zzo38> I think there are others who said the same.
05:52:29 <energumeno> some physicists would want to kill me... jajaja
06:02:50 -!- sivoais has quit (*.net *.split).
06:02:51 -!- lahwran has quit (*.net *.split).
06:03:11 -!- hogeyui has quit (*.net *.split).
06:03:22 -!- zzo38 has quit (*.net *.split).
06:03:22 -!- Nisstyre-laptop has quit (*.net *.split).
06:03:28 -!- tswett has quit (*.net *.split).
06:03:28 -!- MoALTz has quit (*.net *.split).
06:03:28 <pikhq> energumeno: Physics is one instance of applied mathematics, indeed.
06:03:28 <pikhq> Computing is another instance.
06:03:34 <kmc> to infinity and beyond
06:03:34 <kmc> shachaf: how do you feel about x["t"] === x.t
06:03:34 -!- monqy has left.
06:03:34 <energumeno> ok, returning to coincidences' phenomena, i think the key is the "kaos theory" or how microscopical physics is influencing "over" macroscopic physics
06:03:34 -!- ogrom has joined.
06:03:34 <energumeno> how collective thinking is influencing "over" random
06:03:35 <energumeno> http://www.buryl.com/Collective_thought.htm
06:04:49 -!- Nisstyre-laptop has joined.
06:06:30 <energumeno> yes ok, but a instance is a materialized abstraction
06:07:43 <energumeno> so instance is not appropiated for this
06:08:57 -!- zzo38 has joined.
06:08:57 -!- tswett has joined.
06:08:57 -!- MoALTz has joined.
06:09:45 <energumeno> i would say physics or computing are interfaces of mathematics...
06:11:41 -!- sivoais has joined.
06:17:23 -!- augur has quit (Remote host closed the connection).
06:18:34 -!- ogrom has quit (Quit: Left).
06:22:21 -!- energumeno has left.
06:22:32 -!- Nisstyre-laptop has quit (Quit: Leaving).
06:43:07 -!- Nisstyre has quit (*.net *.split).
06:43:21 -!- glogbackup has quit (*.net *.split).
06:43:26 -!- Gregor has quit (*.net *.split).
06:43:31 -!- jix has quit (*.net *.split).
06:43:31 -!- lambdabot has quit (*.net *.split).
06:43:31 -!- Robdgreat has quit (*.net *.split).
06:43:31 -!- mroman has quit (*.net *.split).
06:43:36 -!- Jafet has quit (*.net *.split).
06:43:36 -!- Arc_Koen has quit (*.net *.split).
06:43:36 -!- nvt has quit (*.net *.split).
06:43:38 -!- Bike has quit (*.net *.split).
06:43:57 -!- heroux has quit (*.net *.split).
06:43:57 -!- sebbu has quit (*.net *.split).
06:43:57 -!- myndzi has quit (*.net *.split).
06:43:57 -!- atehwa has quit (*.net *.split).
06:43:57 -!- Cryovat has quit (*.net *.split).
06:43:57 -!- olsner has quit (*.net *.split).
06:43:57 -!- coppro has quit (*.net *.split).
06:43:57 -!- TeruFSX has quit (*.net *.split).
06:43:57 -!- FreeFull has quit (*.net *.split).
06:43:57 -!- yiyus has quit (*.net *.split).
06:43:57 -!- ion has quit (*.net *.split).
06:43:57 -!- kallisti has quit (*.net *.split).
06:43:57 -!- barts_ has quit (*.net *.split).
06:44:24 -!- Slereah has quit (*.net *.split).
06:44:24 -!- Deewiant has quit (*.net *.split).
06:44:24 -!- fizzie has quit (*.net *.split).
06:44:24 -!- Lumpio- has quit (*.net *.split).
06:44:24 -!- trout has quit (*.net *.split).
06:44:24 -!- hagb4rd has quit (*.net *.split).
06:44:24 -!- kmc has quit (*.net *.split).
06:44:24 -!- ssue has quit (*.net *.split).
06:44:24 -!- Sanky has quit (*.net *.split).
06:44:24 -!- quintopia has quit (*.net *.split).
06:44:24 -!- FireFly has quit (*.net *.split).
06:44:24 -!- chickenzilla has quit (*.net *.split).
06:44:59 -!- EgoBot has quit (*.net *.split).
06:58:17 -!- EgoBot has joined.
06:58:17 -!- kallisti has joined.
06:58:17 -!- TeruFSX has joined.
06:58:17 -!- Bike has joined.
06:58:17 -!- barts_ has joined.
06:58:17 -!- Jafet has joined.
06:58:17 -!- hagb4rd has joined.
06:58:17 -!- Arc_Koen has joined.
06:58:17 -!- FreeFull has joined.
06:58:17 -!- heroux has joined.
06:58:17 -!- Nisstyre has joined.
06:58:17 -!- Gregor has joined.
06:58:17 -!- Slereah has joined.
06:58:17 -!- kmc has joined.
06:58:17 -!- Cryovat has joined.
06:58:17 -!- glogbackup has joined.
06:58:17 -!- jix has joined.
06:58:17 -!- coppro has joined.
06:58:17 -!- nvt has joined.
06:58:17 -!- olsner has joined.
06:58:17 -!- FireFly has joined.
06:58:17 -!- Robdgreat has joined.
06:58:17 -!- Lumpio- has joined.
06:58:17 -!- lambdabot has joined.
06:58:17 -!- sebbu has joined.
06:58:17 -!- ssue has joined.
06:58:17 -!- trout has joined.
06:58:17 -!- yiyus has joined.
06:58:17 -!- Sanky has joined.
06:58:17 -!- myndzi has joined.
06:58:17 -!- atehwa has joined.
06:58:17 -!- Deewiant has joined.
06:58:17 -!- mroman has joined.
06:58:17 -!- ion has joined.
06:58:17 -!- quintopia has joined.
06:58:17 -!- fizzie has joined.
06:58:17 -!- chickenzilla has joined.
06:59:03 -!- glogbackup has left.
07:03:13 -!- zzo38 has quit (Remote host closed the connection).
07:32:13 -!- Nisstyre-laptop has joined.
07:42:50 -!- Nisstyre has quit (*.net *.split).
07:43:43 -!- Nisstyre-laptop has quit (*.net *.split).
07:43:43 -!- glogbackup has quit (*.net *.split).
07:43:43 -!- Gregor has quit (*.net *.split).
07:43:43 -!- jix has quit (*.net *.split).
07:43:43 -!- lambdabot has quit (*.net *.split).
07:43:43 -!- Robdgreat has quit (*.net *.split).
07:43:43 -!- mroman has quit (*.net *.split).
07:43:43 -!- Jafet has quit (*.net *.split).
07:43:43 -!- Arc_Koen has quit (*.net *.split).
07:43:43 -!- nvt has quit (*.net *.split).
07:43:43 -!- Bike has quit (*.net *.split).
07:43:43 -!- heroux has quit (*.net *.split).
07:43:43 -!- sebbu has quit (*.net *.split).
07:43:43 -!- myndzi has quit (*.net *.split).
07:43:43 -!- atehwa has quit (*.net *.split).
07:43:43 -!- Cryovat has quit (*.net *.split).
07:43:43 -!- olsner has quit (*.net *.split).
07:43:46 -!- coppro has quit (*.net *.split).
07:43:48 -!- TeruFSX has quit (*.net *.split).
07:43:48 -!- FreeFull has quit (*.net *.split).
07:43:53 -!- yiyus has quit (*.net *.split).
07:43:54 -!- ion has quit (*.net *.split).
07:44:11 -!- EgoBot has quit (*.net *.split).
07:44:11 -!- kallisti has quit (*.net *.split).
07:44:11 -!- barts_ has quit (*.net *.split).
07:44:11 -!- Slereah has quit (*.net *.split).
07:44:11 -!- Deewiant has quit (*.net *.split).
07:44:11 -!- fizzie has quit (*.net *.split).
07:44:11 -!- Lumpio- has quit (*.net *.split).
07:44:11 -!- trout has quit (*.net *.split).
07:44:11 -!- hagb4rd has quit (*.net *.split).
07:44:11 -!- kmc has quit (*.net *.split).
07:44:11 -!- ssue has quit (*.net *.split).
07:44:11 -!- Sanky has quit (*.net *.split).
07:44:11 -!- quintopia has quit (*.net *.split).
07:44:32 -!- FireFly has quit (*.net *.split).
07:44:32 -!- chickenzilla has quit (*.net *.split).
07:45:22 -!- tswett has quit (*.net *.split).
07:45:23 -!- MoALTz has quit (*.net *.split).
07:47:16 -!- fungot has quit (*.net *.split).
07:47:16 -!- pikhq has quit (*.net *.split).
07:53:09 -!- rodgort has quit (*.net *.split).
07:53:09 -!- Sgeo has quit (*.net *.split).
07:53:09 -!- shachaf has quit (*.net *.split).
07:57:11 -!- ais523 has quit.
08:27:49 -!- fungot has joined.
08:27:49 -!- pikhq has joined.
08:27:56 -!- tswett has joined.
08:27:56 -!- MoALTz has joined.
08:31:25 -!- rodgort has joined.
08:31:25 -!- Sgeo has joined.
08:31:25 -!- shachaf has joined.
08:41:02 -!- glogbackup has joined.
08:41:02 -!- Nisstyre-laptop has joined.
08:41:02 -!- EgoBot has joined.
08:41:02 -!- kallisti has joined.
08:41:02 -!- TeruFSX has joined.
08:41:02 -!- barts_ has joined.
08:41:02 -!- Jafet has joined.
08:41:02 -!- hagb4rd has joined.
08:41:02 -!- Arc_Koen has joined.
08:41:02 -!- FreeFull has joined.
08:41:02 -!- heroux has joined.
08:41:02 -!- Nisstyre has joined.
08:41:02 -!- Gregor has joined.
08:41:02 -!- Slereah has joined.
08:41:02 -!- kmc has joined.
08:41:02 -!- Cryovat has joined.
08:41:02 -!- jix has joined.
08:41:02 -!- coppro has joined.
08:41:02 -!- nvt has joined.
08:41:02 -!- olsner has joined.
08:41:02 -!- FireFly has joined.
08:41:02 -!- Robdgreat has joined.
08:41:02 -!- Lumpio- has joined.
08:41:02 -!- lambdabot has joined.
08:41:02 -!- sebbu has joined.
08:41:02 -!- ssue has joined.
08:41:02 -!- trout has joined.
08:41:02 -!- yiyus has joined.
08:41:02 -!- Sanky has joined.
08:41:02 -!- myndzi has joined.
08:41:02 -!- atehwa has joined.
08:41:02 -!- Deewiant has joined.
08:41:02 -!- mroman has joined.
08:41:02 -!- ion has joined.
08:41:02 -!- quintopia has joined.
08:41:02 -!- fizzie has joined.
08:41:02 -!- chickenzilla has joined.
08:41:36 -!- glogbackup has left.
08:45:29 -!- sivoais has quit (Ping timeout: 255 seconds).
08:47:09 -!- sivoais has joined.
09:00:53 -!- augur has joined.
09:00:53 -!- epicmonkey has joined.
09:00:53 -!- lahwran has joined.
09:00:53 -!- hogeyui has joined.
09:08:25 -!- augur has quit (*.net *.split).
09:08:25 -!- epicmonkey has quit (*.net *.split).
09:08:28 -!- lahwran has quit (*.net *.split).
09:08:35 -!- hogeyui has quit (*.net *.split).
09:10:55 -!- Vorpal has joined.
09:10:55 -!- augur has joined.
09:10:55 -!- lahwran has joined.
09:10:55 -!- hogeyui has joined.
09:10:57 -!- Vorpal has quit (Changing host).
09:10:57 -!- Vorpal has joined.
09:11:52 -!- augur has changed nick to Guest30403.
09:14:33 -!- Guest30403 has quit (Read error: Connection reset by peer).
09:14:57 -!- augur_ has joined.
09:34:18 -!- Nisstyre has quit (*.net *.split).
09:35:05 -!- Nisstyre-laptop has quit (*.net *.split).
09:35:05 -!- glogbackup has quit (*.net *.split).
09:35:05 -!- Gregor has quit (*.net *.split).
09:35:05 -!- jix has quit (*.net *.split).
09:35:05 -!- lambdabot has quit (*.net *.split).
09:35:05 -!- Robdgreat has quit (*.net *.split).
09:35:05 -!- mroman has quit (*.net *.split).
09:35:05 -!- Jafet has quit (*.net *.split).
09:35:05 -!- Arc_Koen has quit (*.net *.split).
09:35:05 -!- nvt has quit (*.net *.split).
09:35:05 -!- heroux has quit (*.net *.split).
09:35:05 -!- sebbu has quit (*.net *.split).
09:35:05 -!- myndzi has quit (*.net *.split).
09:35:05 -!- atehwa has quit (*.net *.split).
09:35:05 -!- Cryovat has quit (*.net *.split).
09:35:05 -!- olsner has quit (*.net *.split).
09:35:06 -!- coppro has quit (*.net *.split).
09:35:08 -!- TeruFSX has quit (*.net *.split).
09:35:08 -!- FreeFull has quit (*.net *.split).
09:35:18 -!- yiyus has quit (*.net *.split).
09:35:18 -!- ion has quit (*.net *.split).
09:35:18 -!- EgoBot has quit (*.net *.split).
09:35:18 -!- kallisti has quit (*.net *.split).
09:35:18 -!- barts_ has quit (*.net *.split).
09:35:21 -!- Slereah has quit (*.net *.split).
09:35:24 -!- Deewiant has quit (*.net *.split).
09:35:24 -!- fizzie has quit (*.net *.split).
09:35:24 -!- sivoais has quit (*.net *.split).
09:35:29 -!- Lumpio- has quit (*.net *.split).
09:35:29 -!- trout has quit (*.net *.split).
09:35:31 -!- augur_ has quit (*.net *.split).
09:35:32 -!- hagb4rd has quit (*.net *.split).
09:35:33 -!- kmc has quit (*.net *.split).
09:35:35 -!- ssue has quit (*.net *.split).
09:35:35 -!- Sanky has quit (*.net *.split).
09:35:35 -!- quintopia has quit (*.net *.split).
09:35:54 -!- FireFly has quit (*.net *.split).
09:35:54 -!- chickenzilla has quit (*.net *.split).
09:38:50 -!- glogbackup has joined.
09:38:50 -!- augur_ has joined.
09:38:50 -!- sivoais has joined.
09:38:50 -!- Nisstyre-laptop has joined.
09:38:50 -!- EgoBot has joined.
09:38:50 -!- kallisti has joined.
09:38:50 -!- TeruFSX has joined.
09:38:50 -!- barts_ has joined.
09:38:50 -!- Jafet has joined.
09:38:50 -!- hagb4rd has joined.
09:38:50 -!- Arc_Koen has joined.
09:38:50 -!- FreeFull has joined.
09:38:50 -!- heroux has joined.
09:38:50 -!- Nisstyre has joined.
09:38:50 -!- Gregor has joined.
09:38:50 -!- Slereah has joined.
09:38:50 -!- kmc has joined.
09:38:50 -!- Cryovat has joined.
09:38:50 -!- jix has joined.
09:38:50 -!- coppro has joined.
09:38:50 -!- nvt has joined.
09:38:50 -!- olsner has joined.
09:38:50 -!- FireFly has joined.
09:38:50 -!- Robdgreat has joined.
09:38:50 -!- Lumpio- has joined.
09:38:50 -!- lambdabot has joined.
09:38:50 -!- sebbu has joined.
09:38:50 -!- ssue has joined.
09:38:50 -!- trout has joined.
09:38:50 -!- yiyus has joined.
09:38:50 -!- Sanky has joined.
09:38:50 -!- myndzi has joined.
09:38:50 -!- atehwa has joined.
09:38:50 -!- Deewiant has joined.
09:38:50 -!- chickenzilla has joined.
09:38:50 -!- fizzie has joined.
09:38:50 -!- quintopia has joined.
09:38:50 -!- ion has joined.
09:38:50 -!- mroman has joined.
09:39:08 -!- glogbackup has left.
09:39:21 -!- SimonRC has quit (Remote host closed the connection).
09:39:55 -!- nortti has quit (Ping timeout: 260 seconds).
09:40:24 -!- nortti has joined.
09:41:05 -!- SimonRC has joined.
09:44:34 -!- fungot has quit (*.net *.split).
09:44:38 -!- pikhq has quit (*.net *.split).
09:44:59 -!- tswett has quit (*.net *.split).
09:44:59 -!- MoALTz has quit (*.net *.split).
09:45:21 -!- rodgort has quit (*.net *.split).
09:45:21 -!- Sgeo has quit (*.net *.split).
09:45:21 -!- shachaf has quit (*.net *.split).
09:45:30 -!- Jafet has quit (Quit: Leaving.).
09:48:36 -!- sirdancealot7 has quit (Ping timeout: 240 seconds).
09:54:42 -!- fungot has joined.
09:54:42 -!- pikhq has joined.
09:55:50 -!- tswett has joined.
09:55:50 -!- MoALTz has joined.
09:55:52 -!- sirdancealot7 has joined.
09:56:07 -!- rodgort has joined.
09:56:07 -!- Sgeo has joined.
09:56:07 -!- shachaf has joined.
10:02:48 -!- augur_ has quit (Read error: Connection reset by peer).
10:05:07 -!- augur has joined.
10:35:14 -!- hagb4rd has quit (Ping timeout: 240 seconds).
11:21:47 -!- ineiros has quit (Ping timeout: 244 seconds).
11:56:31 -!- epicmonkey has joined.
12:02:48 -!- Jafet has joined.
12:12:19 -!- Phantom_Hoover has joined.
12:26:16 -!- ineiros has joined.
12:34:31 -!- hagb4rd has joined.
12:53:02 -!- Frooxius has joined.
13:16:56 -!- elliott has joined.
13:24:03 -!- epicmonkey has quit (Read error: Operation timed out).
15:20:22 -!- augur_ has joined.
15:20:23 -!- augur has quit (Read error: Connection reset by peer).
16:03:57 -!- Bike has joined.
16:06:10 -!- Frooxius has quit (Quit: ChatZilla 0.9.89-rdmsoft [XULRunner 1.9.0.17/2009122204]).
16:13:51 -!- Phantom__Hoover has joined.
16:16:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
16:26:09 <kmc> wow they are shutting down the new york city subway for this storm
16:26:29 <kmc> the subway almost never shuts down
16:26:33 -!- epicmonkey has joined.
16:29:27 <elliott> fizzie: You know things about mod files, right?
16:32:17 -!- Slereah has quit (Ping timeout: 252 seconds).
16:34:43 -!- Frooxius has joined.
16:39:06 <fizzie> I don't know about that. I had to learn quite a bit about the .it format when writing that one player, and I've dabbled a bit with some of the others.
16:53:05 -!- atriq has joined.
16:55:20 <elliott> fizzie: I was wondering if you could, like, recommend a player. For Linux.
16:55:45 <atriq> I really need to update Phantom_Hoover's tumblr at some point
16:56:01 <fizzie> I'd like to know a good player myself. I used to like Cubic Player on DOS, but opencubicplayer has underwhelmed. Lately I've just been using xmp.
16:57:18 <elliott> fizzie: I just used this XMPlay thing in Wine. (It was for a purpose.) (It was awful.)
16:58:42 -!- barts__ has joined.
17:01:59 -!- barts_ has quit (Ping timeout: 252 seconds).
17:13:39 -!- atriq has quit (Quit: Leaving).
17:23:38 <coppro> kmc: yeah, I'm annoyed by this storm and I live several hundred k inland
17:23:55 <coppro> going to pull out my winter jacket tomorrow
17:24:30 <elliott> kmc: What's a good language?
17:32:51 <ion> Jim Florentine – Terrorizing Telemarketers 2 – Broken Record http://open.spotify.com/track/1FwqzJruXtMzcvQ0rRBH0v
17:33:24 <kmc> elliott: hungarian
17:49:08 -!- augur has joined.
17:51:06 -!- augur_ has quit (Ping timeout: 264 seconds).
17:53:46 -!- ogrom has joined.
17:53:47 -!- ogrom has quit (Client Quit).
17:54:15 -!- copumpkin has joined.
17:56:55 -!- zzo38 has joined.
17:59:41 <kmc> you should make a programming language called "what"
18:00:11 -!- hagb4rd has quit (Ping timeout: 246 seconds).
18:02:33 <elliott> http://www.kickstarter.com/projects/2083649206/the-d-programming-language-conference-2013-0 i am shocked that there is $15k worth of care for D in the world
18:02:35 <elliott> Deewiant: how much did you donate :P
18:03:22 <Phantom__Hoover> "The D community is a meritocracy comprising talented, ambitious, and opinionated hackers."
18:03:36 <kmc> hahahahaha
18:03:51 <kmc> i love open source "meritocracies"
18:03:56 <kmc> aka shouting matches
18:03:56 <fizzie> It's just the regular sort of cracy.
18:04:01 <elliott> that means we hand out commit bits pseudo-randomly
18:04:14 <elliott> and can shun people without having to justify it
18:04:21 <kmc> in a meritocracy you show your merit by being a huge asshole to everyone, especially on mailing lists
18:04:31 <kmc> if they put up with you, it means your code is good
18:05:06 <kmc> everyone who leaves because the community is full of assholes had no merit anyway
18:05:17 <kmc> (nb: I have no idea what the D community specifically is like)
18:05:53 <kmc> other than that it seems to be 100% white men, from that picture
18:06:04 <fizzie> All the KRYPTONITE SPONSORSHIP levels of the kickstarte are sold. :/
18:06:12 <copumpkin> the word meritocracy was apparently coined sarcastically
18:06:54 <coppro> pikhq: aren't you in range too?
18:07:29 -!- Phantom_Hoover has joined.
18:07:30 <elliott> kmc: i think the D community is fairly good as far as language communities go
18:07:47 <elliott> like walter bright is a smart guy
18:07:51 <elliott> unfortunately their toolchain is shiiiiiiiiiiiiit
18:08:04 <elliott> so the barrier to entry is being able to figure out how the fuck to compile D code
18:08:10 <kmc> copumpkin: heh
18:08:55 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds).
18:09:16 <copumpkin> I think the article in question had similar objections to yours, but I don't remember
18:11:33 <Phantom_Hoover> "KRYPTONITE SPONSORSHIP. Because indeed D gives superhuman abilities!"
18:12:06 <kmc> makes bike locks
18:12:28 <fizzie> It does an incredible variety of things, depending on color.
18:14:10 <fizzie> http://en.wikipedia.org/wiki/Kryptonite#Variations lists 18 variations, many with more than one supposed effect.
18:14:13 <elliott> there has to be some kind of opposite superman that feeds on krypton
18:14:38 <elliott> "In post-Crisis continuity, Mister Mxyzptlk creates what he calls red kryptonite in the "Krisis of the Krimson Kryptonite" story arc"
18:14:43 <elliott> that's the stupidest fucking arc name ever
18:14:58 <elliott> "Blue kryptonite is the Bizarro analogue to green kryptonite. Using Bizarro logic, this, in general, hurts Bizarros while having beneficial effects on ordinary Kryptonians."
18:15:20 <fizzie> The regular green one either gives you (a regular human) cancer, or superpowers.
18:15:20 <pikhq> coppro: In range of what?
18:15:36 <elliott> fizzie: What odds are we talking here?
18:15:39 <elliott> 50% cancer, 50% superpower?
18:15:49 <kmc> what if you already have cancer
18:16:04 <fizzie> I think it depends on where you're from, or something. But I'm no expert.
18:16:07 <pikhq> I'm merely in a cold area, but it's usually cold this time of year! I am evolved to meet the demands!
18:16:16 <zzo38> Can it mean both together or is exclusive?
18:16:32 <kmc> what if it gives you cancer, but also gives you the superpower that you're immune to cancer
18:16:32 <elliott> cancer is not a very good superpower
18:17:40 <zzo38> I don't think you can possibly make kryptonite if krypton is a noble gas.
18:18:25 <pikhq> Krypton can form bonds.
18:18:47 <elliott> guys does nvidia's propeirteirtiertary linux driver support kms
18:18:52 <fizzie> zzo38: Kryptonite is not made out of krypton.
18:19:17 <elliott> Phantom_Hoover: seriously?
18:19:27 <fizzie> zzo38: It's an alloy of "15.08% plutonium, 18.06% tantalum, 27.71% xenon, 24.02% promethium, 10.62% dialium, 3.94% mercury, and 0.57% of an unknown substance."
18:19:45 <elliott> pikhq: what about the open-source ones (are any of them good)
18:19:46 <pikhq> Intel is the only company for which the *official* drivers support KMS.
18:19:49 <nortti> fizzie: where did you get that?
18:20:07 <zzo38> Then "kryptonite" is not a very good name for it.
18:20:07 <pikhq> For ATI, the open source drivers work decently. Lower 3D performance, but higher everything else performance.
18:20:14 <fizzie> nortti: The same Wikipedia page where the variants come from.
18:20:15 <pikhq> Can't tell you about Nouveau.
18:20:27 <Phantom_Hoover> so it's made out of one thing that doesn't exist, a noble gas, and an element with a half-life of at most 17 years
18:20:31 <elliott> pikhq: How much lower 3D performance are we talking here?
18:21:00 <zzo38> pikhq: O, so if you don't want 3D then you ought to use open source drivers. Is that it?
18:21:13 <fizzie> zzo38: It's related to the *planet* Krypton, not the element krypton. I think.
18:21:20 <pikhq> elliott: Maybe a little lower framerate? I've gotten shitty performance for both on my GPU, so.
18:21:55 <nortti> has anyone suggested the theory that superman doesn't actually lose his powers but rather all of it goes to repairing cancer cells?
18:22:06 <zzo38> fizzie: Still that doesn't seem to make it a very good name for it.
18:25:40 <Phantom_Hoover> so has anyone heard about a massive leather surplus in australia around the turn of the millennium
18:25:57 <Phantom_Hoover> it seems to be the only rational explanation for farscape's costumes
18:41:30 -!- Nisstyre-laptop has quit (Ping timeout: 264 seconds).
18:46:09 -!- Nisstyre-laptop has joined.
18:48:45 <coppro> pikhq: the oncoming storm
18:54:12 <pikhq> Colorado is pretty damned far from the east coast.
18:54:31 <coppro> for some reason I thought you were near Michigan
18:54:57 <coppro> the storm warnings say to have 3 days of supplies... I hope that doesn't become necessar
18:55:15 <coppro> I think I will try to hole up in the university rather than my house if bad things happen
18:55:19 <kmc> where are you?
18:55:23 <coppro> (though that seems unlikely)
18:56:29 <elliott> coppro: i read that as waterloo, waterloo
19:16:43 -!- oonbotti has quit (Ping timeout: 260 seconds).
19:26:24 <kmc> shachaf: Apparently Stripe is unlikely to run the "misuse of crypto" CTF
19:26:28 <kmc> but we should do it!
19:38:54 -!- barts__ has quit (Ping timeout: 276 seconds).
19:55:58 <kmc> the spot where i used to live in NYC is under mandatory evacuation
19:56:23 <zzo38> I need to figure out a good plan to progress in this Dungeons&Dragons game; I need to trap the chancellor and rescue the king. I have some ideas, such as somehow telling the chancellor something by psychic communication (I don't know what to say), to try scrying the chancellor and/or king if possible, I have a few other ideas too but I don't konw all else.
19:57:29 <zzo38> I do have other idea what to do afterward, whether interrogation, anti-magic, to even modify my own memory, make fake plans, various ways to trick anyone trying to figure us out.
19:57:40 <zzo38> And then finally we can kill the demon.
19:58:06 -!- oonbotti has joined.
20:00:33 -!- barts_ has joined.
20:00:54 <zzo38> Do you have any better ideas?
20:01:08 <nortti> today I learned: mandrake is a hallusiogenic plant
20:01:15 <zzo38> Perhaps it would help to know some more things about the chancellor and about the king.
20:02:06 <zzo38> nortti: Now you know!
20:02:32 <nortti> it makes me wonder why was mandrake linux named mandrake linux
20:05:01 <zzo38> I don't know either. Maybe Wikipedia will tell you why?
20:06:34 -!- epicmonkey has quit (Ping timeout: 240 seconds).
20:08:17 <zzo38> It doesn't seem to say. I don't see a link tell you why, either.
20:18:19 -!- Nisstyre-laptop has quit (Ping timeout: 260 seconds).
20:25:54 -!- barts_ has quit (Ping timeout: 240 seconds).
20:26:53 -!- barts_ has joined.
20:33:09 -!- monqy has joined.
20:35:19 -!- Sgeo has quit (Quit: Leaving).
20:39:22 <shachaf> kmc: Is this based on new information?
20:41:02 <shachaf> 12:26 <kmc> shachaf: Apparently Stripe is unlikely to run the "misuse of crypto" CTF
20:48:31 -!- Nisstyre-laptop has joined.
20:49:21 <shachaf> kmc: So a "lens" is just a mapM over some arbitrary structure.
20:49:49 <shachaf> If you want to modify you use Identity. If you want to read you use something like Writer to sneak the values out.
20:50:35 <shachaf> It's pretty nifty the way it all works out.
20:53:05 -!- Sgeo has joined.
20:54:44 <kmc> shachaf: someone told me this recently, i think it was nelson but it might have been you
20:55:05 -!- ais523 has joined.
20:55:17 -!- Sgeo has quit (Client Quit).
20:55:36 -!- Sgeo has joined.
20:56:28 <shachaf> I don't think I phrased it that way before?
20:57:00 <shachaf> Anyway, it's actually Applicative-style Applicative f => (a -> f b) -> t a -> f (t b)
20:57:09 <kmc> yeah i think it was nelson
20:57:22 <shachaf> If you restrict it to Functor instead of Applicative, you get an actual lens.
20:57:47 <kmc> shachaf: that's cool
20:57:55 <Sgeo> I have no idea if moving to HexChat was worth it
20:57:58 <shachaf> Because Monoid m => Applicative (Writer m)
20:58:08 <shachaf> Which lets it return zero-or-more values.
20:58:19 <shachaf> Whereas the Functor instance lets it return exactly one value.
20:58:31 <shachaf> It's pretty nifty how it all works out.
20:59:17 <shachaf> (It's actually using Const instead of Writer.)
20:59:37 <shachaf> If you restrict f to Identity or Const, you get read-only or write-only versions.
20:59:40 <kmc> Sgeo: what is it?
20:59:47 <kmc> ok, i can google that
21:00:08 <shachaf> kmc: HexChat is a program that lets you talk to people in Hexham.
21:00:37 <shachaf> I apt-get upgraded chromium and now libpdf.so won't work. :-(
21:00:48 <kmc> shachaf: ah, that makes so much sense
21:01:14 <Sgeo> It's rebranded and new direction for XChat-WDK I think
21:01:30 <Sgeo> And considers itself to be a successor to X-Chat
21:03:18 <Sgeo> ....o...k..... http://www.hexchat.org/home/fakes
21:03:31 * Sgeo is now wondering if he should walk away slowly
21:03:59 <ais523> if I wrote a blog post about monads in brainfuck, do you think it'd get massively upvoted on proggit?
21:04:08 <ais523> I probably can't be bothered to either way, btw
21:07:01 -!- Nisstyre-laptop has quit (Ping timeout: 248 seconds).
21:07:18 <kmc> ais523: i've lost track of where proggit is in the haskell infatuation / haskell backlash cycle
21:07:51 <kmc> i'm not sure what 'monads in brainfuck' would mean at all
21:07:53 -!- hagb4rd has joined.
21:08:06 <kmc> unless it means 'monads in a functional language i've implemented on top of brainfuck'
21:08:16 <kmc> and by "functional" i mean the old definition of "has functions" ;P
21:11:24 <coppro> fun assignment: run the simplex method by hand
21:11:31 <coppro> nothing can go wrong right?
21:11:42 <zzo38> Perhaps if you are going to have monads in brainfuck, first you need a category, so that you can have monads.
21:12:52 -!- barts__ has joined.
21:16:21 -!- barts_ has quit (Ping timeout: 265 seconds).
21:16:42 -!- augur_ has joined.
21:19:14 -!- augur has quit (Ping timeout: 240 seconds).
21:20:36 -!- augur has joined.
21:20:46 <ais523> kmc: nah, you can map the general concept onto BF
21:21:33 <ais523> you just have to evaluate the higher-order functions by hand
21:22:12 <ais523> it's basically things like replacing all < and > by << and >> in order to use the cells in between as working space
21:22:25 <ais523> it's the same sort of idea
21:22:36 <ais523> zzo38: categories generally aren't hard to find
21:24:06 -!- augur_ has quit (Ping timeout: 264 seconds).
21:28:02 -!- rapido has joined.
21:32:12 <kmc> i don't get it
21:32:14 <kmc> can you elaborate?
21:32:35 <kmc> are you saying that "replace < with << and then use the space inbetween somehow" is an example of a monad in BF?
21:35:53 <Arc_Koen> by replacing > with >> you have DOUBLED the infinity... that has to boost one's self-confidence!
21:36:24 -!- guest_81723 has joined.
21:37:13 <kmc> that kind of thing is also very common in computability theory proofs
21:37:19 <kmc> so it would be interesting if there was a connection to monads there
21:38:21 <Arc_Koen> Phantom_Hoover: hey if you feel like writing an article in your/Taneb's tumblr... http://esolangs.org/wiki/CubeCode
21:39:22 <Arc_Koen> brainfuck with FBUDLR instead of ><+-., AND NO LOOPS
21:39:45 <Sgeo> It took two people to make it.
21:39:50 <Sgeo> I think that's the saddest thing of all
21:40:17 <Bike> how many brainfuck derivatives are there? as a power of two. possibly using knuth arrows
21:41:04 <kmc> the example program is pretty great though
21:41:07 <kmc> uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuurf
21:42:01 <kmc> Arc_Koen: when you said that I thought that maybe it's programmed or visualized in some kind of 3D graphical way and that might be a bit novel
21:42:07 <kmc> it's just uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuurf
21:42:18 <Sgeo> It's at least number_of_unicode_codepoints P 8, I think?
21:42:49 <zzo38> I don't think it even has to be Unicode, though
21:42:49 <kmc> somebody had a hack that would record the registers of a program as it runs and make this into sound
21:42:52 <Arc_Koen> yeah, uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuurf pretty much sums it all
21:43:01 <kmc> or is that something i just thought of and then forgot to do and then forgot who invented it
21:43:25 <kmc> i have definitely seen work regarding the actual noise produced by CPUs and what you can infer from it
21:43:50 <Sgeo> Phantom_Hoover, as in, number_of_unicode_codepoints! / (number_of_unicode_codepoints - 8)!
21:44:03 <Bike> get the cubecode people to make a language such that the execution always sounds like "urf"
21:44:07 <zzo38> I have sometimes put a calculator near a radio receiver to make noise
21:44:32 <Bike> Sgeo: i thought that was usually denoted binomial[number_of_underscores, 8] in linear text
21:44:47 <Sgeo> Bike, I have no idea how to denote stuff in linear text
21:45:13 <Bike> how bothersome
21:48:07 <guest_81723> I just found about BFJoust, by changing [a]b for ([a{}]b)%-1 you never reach a ], so there's no looping involved and you could thus play it yourself instead of having to program a complete AI
22:00:19 <elliott> guest_81723: i don't understand
22:02:47 <guest_81723> you can avoid any looping on that game, thus changing [] from "while" to "if...else", thus making you able to play it yourself while the game is going
22:06:11 -!- rapido has left.
22:07:03 -!- sivoais has quit (Ping timeout: 260 seconds).
22:08:06 -!- rapido has joined.
22:08:43 <rapido> has 'exponential' computation like hash-life been explored yet?
22:09:02 <Bike> exponential how?
22:10:39 <Sgeo> What's a good screenshotting tool for Windows?
22:10:48 <rapido> Superspeed - going faster in time - see http://en.wikipedia.org/wiki/Hashlife
22:10:59 <kmc> Phantom_Hoover: infix alphanumeric operators, what is this, Perl?
22:11:00 -!- Vorpal has quit (Ping timeout: 276 seconds).
22:11:11 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
22:11:50 <Phantom_Hoover> i'm sure there's some precise complexity theoretic approach to it, but hashlife can only superspeed a pattern if it's highly ordered
22:11:57 -!- sirdancealot7 has joined.
22:12:06 -!- sivoais has joined.
22:12:17 <rapido> sure - i understand that you need highly ordered structures
22:12:35 <rapido> but i feel it can be generalized
22:13:07 <Phantom_Hoover> most other computational systems don't have the overhead life does
22:13:32 <Phantom_Hoover> languages virtually never do, and when they do it's called optimisation
22:14:39 <rapido> anyway, i've created a data structure that exploits highly ordered patterns
22:15:03 <Bike> don't suppose you're aware of computational complexity theory
22:15:14 -!- barts__ has quit (Ping timeout: 252 seconds).
22:15:16 <rapido> Bike: why do you think that
22:15:57 <Bike> wait, got the name wrong. kolmogorov and so on.
22:16:00 <Arc_Koen> there this mystical temple in the jungle
22:17:01 <Arc_Koen> when you get near the door, a deep, hollow voice would say "ARE YOU AWARE"
22:17:04 -!- barts_ has joined.
22:17:30 <rapido> ok, tell me what you think of this.
22:17:33 <rapido> The Uniquely Represented Two-Way Immutable Sorted Multimap
22:18:02 <Arc_Koen> you could call that structure "the wise turtle"
22:18:03 <rapido> which also happens to be con fluently persistent
22:18:15 <rapido> i call it the Spread data structure
22:18:20 <Arc_Koen> because its acronym is "TURTWISM" and that sound like "TURTLE-WISDOM"
22:18:47 <rapido> Spread: the best thing since sliced bread
22:19:09 <Arc_Koen> also "uniquely represented" doesn't tell me much about what it is
22:19:40 <Arc_Koen> "Sorted"... well, your regular list/array/tree could be sorted as well
22:19:42 <rapido> http://www.cs.cmu.edu/~dgolovin/papers/btreap.pdf
22:20:15 <Arc_Koen> and "Two-Way Immutable"... I have actually no idea what it could mean
22:20:22 <Arc_Koen> except maybe a double-linked list or something
22:20:31 <rapido> it is actually a binary relation
22:20:50 <rapido> you know, a table with two columns
22:20:57 <Phantom_Hoover> you know it must be good because the guy's surname is eastern european
22:21:30 <Phantom_Hoover> i think 3 of my 4 lecturers right now are eastern european
22:21:32 <rapido> so you have a table with two columns that always has the same memory representation
22:21:47 <rapido> but can be changed to create new versions
22:22:04 <rapido> and it can embed the same structure recursively
22:22:47 <rapido> i believe it the most general data structure which subsumes all other structures (graphs even)
22:23:22 <rapido> i'm planning to run a higher-order spreadsheet implementation on top of it
22:23:45 <rapido> maximally reusing computations - hence the reference to hashlife
22:24:02 * Arc_Koen is so not aware of what a b-treap is
22:24:29 <Arc_Koen> so basically it's some kind of binary tree but with several values in each node?
22:24:42 <rapido> yes, like an ordinary b-tree
22:25:21 <rapido> a treap is a randomised data structure
22:26:08 <rapido> but if you do consistent hashing it folds into a unique representation
22:26:27 <rapido> a binary relation is pretty fundamental
22:26:28 <Phantom_Hoover> at best it'd be so pointlessly general as to have no meaningful 'structure'
22:26:58 <rapido> oh, that's good - i like that 'at best it'd be so pointlessly general as to have no meaningful 'structure'
22:27:42 <rapido> a function is a special binary relation
22:27:44 <Arc_Koen> Phantom_Hoover: I have 'the world'
22:27:54 -!- Phantom__Hoover has joined.
22:28:25 <rapido> there is a whole zoo of special binary relations, which have certain special properties.
22:29:00 <Arc_Koen> how general can you want it? or is it like in stargate - "What is this place?" "A confinement room in the infirmary." "Can you be less specific?" "Fine. We're on a planet called Earth."
22:30:14 <olsner> hmm, the latter answer, while (I suppose) less precise, has more useful information for the otherworldly visitor
22:30:54 <olsner> what really bothers me is this though: why aren't all planets named Earth?
22:30:58 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
22:31:37 <Arc_Koen> well in stargate every planet but earth and the first other one they discovered has a name like "P3X986"
22:32:03 <olsner> those are most likely not the native names
22:32:39 <Arc_Koen> well it's a close translation :p
22:33:30 <Arc_Koen> interestingly, people from other planets usually talk "a dialect that resembles ancient mesopotamian/chinese/whatever but is in fact exactly like english"
22:34:10 <olsner> hmm, so we're the odd planet then? what a plot twist
22:34:44 <Arc_Koen> yeah, we're the only planet where not everyone speaks english
22:36:42 <pikhq> Arc_Koen: IIRC those are systematic names derived from the Stargate address.
22:36:51 <pikhq> I will not excuse everything else.
22:37:39 <Arc_Koen> pikhq: yeah I figured so. though I wonder how they can derive 5-digits names from addresses that are 7-symbols long (and there are more than 20 symbols I think)
22:37:54 <Phantom__Hoover> then when the aliens invade we're the only ones who can keep track of where they actually invaded
22:38:16 <Arc_Koen> well other planets are usually no more than one village wide
22:38:34 -!- guest_81723 has quit (Quit: Page closed).
22:38:37 <Phantom__Hoover> hmm, the aliens might have trouble invading such a small target
22:40:12 <pikhq> Arc_Koen: There's also the two letters.
22:40:37 <Arc_Koen> and we have one advantage: the aliens can live for millenia, and thus appear to be very slow at adapting (for instance they still go to war with heavy bodysuits that are completely useless against our "projectile weapons" (actually they are also completely useless against their own "energy weapons")
22:40:47 <Arc_Koen> pikhq: well I'm pretty sure the P stands for "planet"
22:41:30 <Arc_Koen> (they did send a stargate inside of a star once, though)
22:42:20 <Arc_Koen> "What's wrong?" "Nothing, sir. It's just I've never blown up a star before." "... Well. You know what they say. The first one is always the toughest!"
22:42:55 <Arc_Koen> they let go of a stargate inside of it
22:43:18 <Arc_Koen> and I think the stargate was opened on something dangerous
22:43:18 -!- rapido has quit (Quit: rapido).
22:43:30 <Sgeo> I should probably fill a pot with water or something
22:44:21 -!- rapido has joined.
22:44:33 <Phantom__Hoover> or did sgeo just inexplicably say he should fill a pot with water
22:44:42 <Arc_Koen> I had four full drinks of coffee today and yet at 9pm I was already very tired
22:44:44 <olsner> blow up stars => fill pots with water
22:45:06 <Arc_Koen> you know in case the star dehydrates you or something
22:45:28 <olsner> I hear they're quite toasty
22:45:45 <Sgeo> Phantom__Hoover, hurricane
22:45:48 <Phantom__Hoover> wasn't there a stargate that lead into a black hole or something
22:46:07 <Phantom__Hoover> Sgeo, yes i'm sure a single pot of water will save you from dehydration
22:46:16 <Arc_Koen> caused time to slow down a lot
22:46:53 <Sgeo> I don't particularly have many pots
22:47:08 <Arc_Koen> like, "OK I'll go talk to the president and will be back in 17 hours. Hey I'm back!" "It's... been 5 minutes, sir." "But I just spent the whole day in the pentagon!"
22:47:16 <Bike> didn't they do that twice, even
22:47:43 <Arc_Koen> the second time had to be on purpose then
22:49:49 <Phantom__Hoover> time would only slow if the gravity was coming through the stargate too
22:50:03 <Phantom__Hoover> in which case they... would realise something was up rather sooner than that
22:50:55 <Arc_Koen> yeah it's never been clear what could go through the stargate and what couldn't
22:51:23 -!- rapido has quit (Quit: rapido).
22:51:35 <Arc_Koen> so far we only know that men can travel one way (depending on what side dialed to the other), and radio waves can travel both ways
22:53:31 <Arc_Koen> that usually causes at least one man from the other world to make advances, but that aside they should be ok
22:55:24 <Arc_Koen> "You're a very attractive woman." "Yeah, let's just fix your ship's unknown original engine with our McGyver-sponsored nuclear reactor, shall we?" is a plot that comes up every other episode
22:56:45 <Arc_Koen> though the whole point of the stargate seems to be that when someone dials your planet they can invade and there's nothing you can do to stop them because it only works one way
22:59:25 <olsner> well, you can put up that wafer-thin metal iris thingy
23:00:51 <Arc_Koen> yeah they invented that two days after the first time they were invaded
23:01:13 <Arc_Koen> the aliens on the other hand have been using gates for millenia and never thought of that
23:01:51 <Arc_Koen> except in that one episode where they discover *one* planet where the aliens had protected the gate using a forcefield (but it never occurred to the aliens to reproduce that on other planets as well)
23:02:58 <olsner> for some reason I seem to have forgotten most of these episodes
23:05:32 <Arc_Koen> that's because there was no time-travel in those!
23:09:59 <Phantom__Hoover> so wait, do they just invade by marching right through the gate
23:13:57 <olsner> yeah, and do the shiny eyes thing
23:14:36 <Phantom__Hoover> did nobody think to, like, put some sawblades or spikes or some other elaborate deathtrap in front of it
23:15:42 <olsner> of course not, the gates were originally put up by the good guys, no reason to fear them
23:15:43 <Arc_Koen> well sometimes they do try sending nuclear-ish "rays" trough the stargate
23:15:52 <Sgeo> Well, the goa'uld do have ships that they can use to attack any planet that tries to defend their gate
23:16:26 <Arc_Koen> Sgeo: wait, that planet where they discovered Thor for the first time did have an automated weapon aimed at the gate
23:16:50 <Arc_Koen> somehow the goa'uld just figured "we shouldn't go to that planet" and never tried attacking it with a ship
23:16:52 <Bike> the first season finale was about fighting off the goa-uld ship, right?
23:17:10 <Arc_Koen> actually most season finales are about fighting off goa'uld ships
23:17:19 <Bike> they were pretty big.
23:17:36 <Bike> Phantom__Hoover: the earth gate had a thingie in front of it that could stop anybody from coming.
23:17:56 <Arc_Koen> it's like, at the end of every season, one goa'uld remembers he actually owns a whole fleet of ships (every one of which could, alone, destroy the earth) and decides to attack
23:18:13 <Phantom__Hoover> why didn't the gould just show up in their big ship and be like "right turn that off or we glass belgium"
23:18:36 <Bike> they did, like a billion times, but the earthanoids fought 'em off with their protagonist powers
23:19:15 <Phantom__Hoover> there's something about this all that's so dumb i can't even get my head around it enough to mock
23:19:22 <olsner> I guess it takes one season for a goauld to figure that idea out, then they get killed with magic season finale plot powers, and some goauld newbie rises to power and uses the next season to do the same thing
23:19:59 <Arc_Koen> it's kind of a dangerous way to fight a war
23:20:03 <Sgeo> Phantom__Hoover, some sort of "treaty" I think?
23:20:18 <Arc_Koen> the "treaty" was a joke, really
23:20:22 <Bike> actually wasn't belgium specifically threatened, I think I remember that
23:20:46 <Sgeo> Arc_Koen, I thought only in that the Asgard tried to make it look like they would be able to fight, but couldn't
23:20:50 <Arc_Koen> yeah icing belgium rings a bell
23:21:16 <Sgeo> It's been a while
23:21:23 <Arc_Koen> Sgeo: that, and also the goa'uld were basically like "ok, we won't attack you... unless it's a season final"
23:22:16 <Arc_Koen> I mean the simple fact that the asgard would respect the treaty and not just wipe the goa'uld out was kind of admitting they couldn't actually fight
23:23:07 <olsner> to be fair, they might just not want to kill people
23:23:46 <Arc_Koen> yeah the last very-very-advanced people to have such a policy was wiped out
23:23:55 <olsner> yes, they look like small grey roswell creatures
23:24:15 <Arc_Koen> Phantom__Hoover: well you didn't expect the whole galaxy to be filled only with mesopotamians and chinese people did you?
23:24:26 <Arc_Koen> (actually the asgard are not from the same galaxy...)
23:25:43 <Phantom__Hoover> wait were the genocidal precursors who got wiped out called the ancients by any chance
23:26:06 <Bike> you sure you haven't seen this show
23:26:33 <Arc_Koen> one day the earth people discovered there was an eighth button on the stargate's keyboard, that somehow they had manage to not see all this time
23:26:55 <zzo38> What does that do, explode the keyboard?
23:27:07 <olsner> there are lots of buttons, 20-30 ish, it's just the length of the code that is normally 7 but can be 8
23:27:16 <Bike> they're all ripoffs of each other
23:27:28 <Phantom__Hoover> nobody had up to that point thought of pressing 8 buttons in sequence rather than 7
23:28:00 <Arc_Koen> well, yes, there are 20-30 buttons on the dial-thingy, but the "lenght of the code" is represented as seven "chevrons" on the stargate
23:28:21 <olsner> Phantom__Hoover: sure, but the "chevrons" don't "lock" unless you juice up the gate with a "zero point module"
23:28:25 <zzo38> I thought if you do that it would just execute the first seven and then use the last key as the first of another sequence of seven?
23:28:58 <Arc_Koen> well they actually hooked their own computers to the gate so you can define it to do anything you want
23:29:15 <Arc_Koen> (because the keyboard was missing)
23:30:09 <Arc_Koen> (when they're stranded on a random planet with no keyboard, they usually don't have computers, so they instead hook up the nuclear reactor they happened to have in their backpack
23:31:08 <Bike> well for what it's worth, the ancients aren't actually all dead, some of them are ghost angels
23:31:16 <olsner> istr their stargate hacking skills are very plot dependent
23:31:32 <Arc_Koen> also the ancients "are still there somewhere, but have a policy not to interfere in all the wars going on because interfering would be morally reprehensible" (even though there would be no war at all if they hadn't built the gates in the first place)
23:31:56 <coppro> when did this turn into a stargate discussion
23:33:02 <Arc_Koen> I believe we were talking about wise turtles climbing binary trees and then all of a sudden there was a stargate in the conversation
23:34:32 <coppro> there's not enough innuendo in this discussion
23:34:37 <olsner> we were talking about generality, and then planet naming conventions and then ...
23:35:10 <Arc_Koen> oh hey we had the giving-birth class today
23:35:19 <coppro> also for the record the goauld did attack the planet with the defense thing in front of the stargate
23:35:20 <Arc_Koen> unfortunately there was no practice for that class
23:35:42 <coppro> according to the plot it was because the defense thing was blowed up by the protagonists
23:35:44 <Arc_Koen> coppro: the defense thing and the planet had been there for several thousand years
23:36:08 <coppro> they never mention how the goauld figured this out though
23:36:44 <Arc_Koen> maybe there was a spy in the viking people?
23:36:53 <coppro> it's ok, it still makes more sense than the entire premise of universe
23:37:02 <coppro> except for the part where destiny refuels by diving into a star
23:37:28 <Arc_Koen> I tried watching an episode from stargate universe
23:37:32 <coppro> in universe, they decide that they already spawned one spinoff using the 8th chevron
23:37:46 <coppro> but stargates are nonagonal, so clearly there was room for another spinoff
23:38:02 <coppro> but dialing nine chevrons is hard, so they had to get a high school kid to do it
23:38:04 <Arc_Koen> seriously? I never really took a close look at the stargate
23:38:11 <coppro> and with little training he realized the trick
23:38:18 <coppro> to dial the ninth chevron you have to use a button that isn't on the stargate
23:38:26 <Arc_Koen> he just hooked up his pocket nuclear reacotr, didn't he
23:38:41 <coppro> no see every stargate has a unique origin symbol
23:38:52 <coppro> in order to dial to destiny you needed to not use that stargate's origin symbol
23:38:55 <coppro> instead you had to use earth's
23:39:05 <coppro> the logic being that you had to be dialing from earth
23:39:15 <coppro> of course, the earth stargate isn't the original stargate anyhow
23:39:32 <Arc_Koen> I think they destroyed the original stargate once or twice
23:39:36 <coppro> except during seasons four through six, when it was actually the antartic original stargate
23:39:56 <olsner> you've obviously been thinking way too much about this
23:39:57 <coppro> but it still had the same origin symbol because redoing the prop would have been expensive and the unique symbol on the stargate was kind of a symbol of the show
23:40:29 <coppro> Phantom__Hoover: because it makes for good deus ex machina
23:40:42 <Bike> because it's weird and empty (supposedly!!)
23:40:45 <FreeFull> Because everything is under a huge chunk of ice
23:40:52 <FreeFull> Giving a good excuse to why we haven't found it
23:40:53 <Arc_Koen> oh, yeah, that woman who happened to be more than 65 million years old was in the antarctic as well
23:41:01 <FreeFull> Same reason something would be on the moon, or on mars
23:42:05 <Arc_Koen> "but there were supposedly no humans 65 million years ago!" "yeah, and she can't have been brought back through time travel, because it is well-known that time-travel isn't possible"
23:42:27 <Arc_Koen> (even though *we* did do it once or twice during the holidays)
23:42:52 <olsner> you can't have people running around doing time travel outside the time travel episodes
23:43:57 <coppro> also the best line in the entire series
23:44:02 <coppro> "it's my sidearm I swear"
23:44:05 <Sgeo> Refuse to use a time machine to save the entire galaxy, use the time machine to retrieve some power source to help boost a colony's defenses
23:44:58 <Phantom__Hoover> kind of like how the prime directive only applies if disobeying it would save billions
23:45:22 <olsner> it somehow makes sense though, use time travel to change a major event and Bad Things happen to the space-time continuum, use it to save a handful of people and nothing significant will change
23:45:23 <coppro> Sgeo: also to prevent an entire expedition from dying
23:45:38 <coppro> changes to the timeline after the part where you go back in time are okay too
23:45:50 <Arc_Koen> so you're saying the space-time continuum is somewhat elastic
23:46:03 <coppro> also completely nonsensical stable time loops are also permitted
23:46:21 <coppro> when time travel doesn't work like that any other time
23:46:34 <Arc_Koen> they got to play golf in the stargate
23:46:44 <coppro> but I wasn't talking about that
23:46:48 <coppro> I mean in the time travel episodes
23:46:54 <coppro> where time does the many worlds thing
23:47:05 <coppro> except where it's needed to provide deus ex machina so that the guys can make it back through time
23:47:10 <Arc_Koen> I thought you were talking about window of opportunity
23:47:12 <Sgeo> 2010/2001 uses a different model of time travel from 1969
23:47:40 <coppro> not to mention Unending, Morpheus, the Atlantis one, and the movie
23:47:54 <Arc_Koen> is morpheus the one where cody has dreams
23:48:03 <coppro> no it's the one where they go back in time to get the ZPM
23:48:11 <Sgeo> coppro, Mobius
23:48:44 <coppro> near the end of season 8
23:48:48 <Sgeo> Mentioned in SG-1 a few times, more prominent in Atlantis
23:48:51 <Arc_Koen> oh, i'm only in the middle of season 7
23:49:02 <coppro> zpms first show up in the season 7 finale
23:49:13 <Arc_Koen> well then I'd rather not read too much about it
23:49:15 <coppro> which is fucking fantastic and why aren't you watching your way through the rest of the season
23:49:24 <Phantom__Hoover> hmm, wasn't stargate the one that got farscape's actors after it was cancelled as a final "fuck you it's not coming back"
23:49:39 <coppro> also watch season 8 in lockstep with atlantis season 1
23:49:44 <coppro> then watch the rest of atlantis
23:50:05 <Arc_Koen> I didn't understand anything from universe
23:50:14 <coppro> then watch season 1 of universe
23:50:21 <olsner> I failed to do the lockstep thing, it's much too much work to figure out what the proper viewing order is
23:50:24 <Arc_Koen> they were is some kind of ship, somewhere, sometime
23:50:30 <Sgeo> coppro, I thought season 2 was considered to be better
23:50:38 <Sgeo> Although season 1's Time was good
23:50:47 <coppro> time was one of the best stargate episodes of all series
23:50:50 <Arc_Koen> and they arrived in a planet and they said "hey this is a thousand year old" and then "wait the history books are talking about us"
23:50:55 <coppro> air was really good too
23:51:23 <Sgeo> I used to use the music from Air to help me concentrate on homework
23:51:35 <Arc_Koen> anyway I'll watch a couple episodes now, see you later
23:51:40 <Phantom__Hoover> i recall elliott saying universe is the voyager of stargate
23:51:46 <coppro> it's a shame that seasons 9 and 10 are full of random shit because they have some really good episodes
23:52:03 <coppro> like beachead and the pegasus project and unending
23:52:04 <olsner> hmm, and atlantis might be the DS9
23:52:16 <Sgeo> I have yet to finish DS9
23:52:23 <coppro> honestly I think universe is more like the enterprise
23:52:33 <elliott> Phantom__Hoover: i enjoyed watching universe but i also enjoy watching voyager
23:52:39 <elliott> wtf how is sgu still going
23:52:42 <coppro> although I suppose that it is closer to sg-1 seasons 9 and 10
23:52:44 <Sgeo> elliott, it's not
23:52:51 <coppro> elliott: it was killed one season late
23:52:53 <Sgeo> The series finale was a cliffhanger
23:52:55 <elliott> but how did it get two seasons
23:53:01 <elliott> i thought everyone had universally decided it was awful
23:53:08 <coppro> I like the first half season
23:53:15 <Sgeo> elliott, I liked it
23:53:19 <coppro> it started really sucking when they tried too hard to bring earth into it
23:53:30 <coppro> and then the lucian alliance was this big fuckyou to anyone who wanted anything interesting out of it
23:53:36 <coppro> and then the random aliens
23:53:40 <olsner> I think SGU survived only on the hope that it might eventually stop sucking
23:53:53 <coppro> the first half of season 1 didn't have all that random baggage
23:53:55 <Sgeo> And by the time it stopped sucking, it was cancelled
23:54:02 <coppro> and was just 'ohfuckhowdowesurvive' and was sweet
23:54:21 <coppro> did it actually stop sucking near the end?
23:54:41 <Sgeo> Uh, I'm not the best on matters of taste
23:55:07 <Sgeo> It's more 'ohfuckhowdowesurvive' to a good extent, but largely the same threat over those episodes
23:55:50 <coppro> ok actually the one where rush goes all the way back to the planet in air was pretty good to
23:56:19 <Sgeo> How do I convince coppro to finish SGU
23:56:32 <Sgeo> Phantom__Hoover, oh, and as for why I haven't finished DS9: Haven't gotten around to it yet
23:56:34 <elliott> sgu tried to capitalise way too much on ~edgy danger~
23:56:43 <elliott> which was ok for a few episodes but then it was boring
23:56:57 <coppro> Sgeo: busy rewatching sg1 at the moment
23:57:04 <coppro> also yugioh the abridged series
23:57:20 <elliott> let's talk about how no popular scifi tv series has ever lived up to ds9 instead
23:57:26 <elliott> except maybe babylon 5 but i never got around to watching that
23:57:46 <Phantom__Hoover> farscape is pretty good! although i can't make judgements between things i like
23:58:03 <olsner> Phantom__Hoover: you could just watch everything we talk about
00:00:07 <Sgeo> olsner, good idea.
00:00:15 * Sgeo proceeds to talk about Stargate Infinity
00:01:17 <Sgeo> Built by ancients so long ago
00:01:27 <Sgeo> the stargate lay 'till we broke the code...
00:02:00 <Sgeo> Phantom__Hoover, http://www.youtube.com/watch?v=67E-_SQLVRo
00:11:12 <coppro> also bsg is pretty sweet
00:11:46 <Sgeo> Phantom__Hoover, I forgot where I left off and some of the episodes are a bit fillerish
00:12:57 <Sgeo> I don't remember
00:13:09 <Sgeo> But yeah, Vic counts as filler
00:14:49 <shachaf> kmc: So you're going to do a cryptography CTF?
00:17:29 <kmc> probably not
00:18:20 <elliott> Phantom__Hoover: did sgeo really stop watching ds9
00:18:46 <Sgeo> I intend to resume eventually
00:21:47 -!- Nisstyre-laptop has joined.
00:37:29 -!- ais523 has quit.
00:52:15 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
01:21:50 <zzo38> Finally I fixed FamicomHDL. writeCart works now, and Language.FamicomHDL.Logic works now.
01:23:54 -!- hagb4rd has quit (Ping timeout: 240 seconds).
01:38:46 <Arc_Koen> this anubis guy has watched star wars too much
01:39:12 <Arc_Koen> first he has his jedi-sith duel against michael shanks
01:39:42 <Arc_Koen> then they found this darth vader-looking "super soldier"
01:39:54 <Arc_Koen> and then darth vader turns out to be a clone from an army of clones
01:47:24 -!- Arc_Koen has quit (Quit: Arc_Koen).
02:00:54 <Sgeo> I wish I remembered what episode I stopped at
02:12:05 -!- sirdancealot7 has quit (Ping timeout: 248 seconds).
02:29:03 <Sgeo> I definitely saw It's Only a Paper Moon
02:29:22 <quintopia> paper moon was a pretty good movie
02:33:18 <Sgeo> Tempted to paste in a Clojure oddity, but I have a feeling it won't be appreciated
02:33:35 <Sgeo> Actually, hmm, it makes Clojure look like a Lisp-2, if it were shown without any other context
02:47:17 <zzo38> Now I added Language.FamicomHDL.Cartridge
02:48:09 <Sgeo> <Sgeo> ,(let [do 5] (do do))
02:48:09 <Sgeo> <clojurebot> 5
02:48:15 <Sgeo> I consider this behavior to be a Clojure wart
02:48:28 <zzo38> You can write something like (andSignal [ppuRead, ppuWrite] >>= connect irqTrig) makes it trigger an interrupt whenever the PPU attempts to read or write anything. Is that how you would use a hardware description language?
02:48:45 <zzo38> Sgeo: Can you explain it better?
02:49:12 <Sgeo> No, because until just this second, I thought I understood it, but I don't
02:50:58 <Sgeo> Clojure is currently acting like a Lisp-2 where functions share a namespace with lexicals but macros and special forms are in their own little world
02:52:07 <Bike> there's a reason after a while they just call them lisp-n
02:52:29 <Sgeo> Clojure is supposedly a Lisp-1.
02:53:03 <Sgeo> Acting like a Lisp-2 a portion of the time is, as far as I'm concerned, broken behavior.
02:53:27 <Sgeo> Hmm, maybe it's clojail breaking up, lemme see
02:53:40 <Bike> first-class special forms are a recipe for hilarity
02:54:01 <Sgeo> But this behavior is extending to macros too
02:56:16 <Sgeo> (The sandboxing that one of the bots uses. And the other bot is offline)
03:00:59 <Sgeo> Should I summarize?
03:01:21 <Sgeo> Or does no one care?
03:16:43 <zzo38> Maybe someone does care.
03:19:53 -!- hagb4rd has joined.
03:47:18 <Sgeo> zzo38, unless you're one of them, it's unlikely
03:48:24 <zzo38> Maybe someone who read the log will care in future.
03:48:32 <zzo38> Maybe I care too; I don't know.
03:53:54 -!- Sanky has quit (Ping timeout: 240 seconds).
05:00:09 -!- hagb4rd has quit (Ping timeout: 260 seconds).
05:09:23 -!- rapido has joined.
05:14:33 <kmc> "This is my first SF riot. Do we have a VC-funded artisanal coffee shop sponsoring it yet? What’s the hashtag? Where do I park my bike?"
05:25:58 -!- Frooxius has quit (Ping timeout: 245 seconds).
05:28:57 <Sgeo> What's so hard about cache invalidation?
05:35:23 -!- rapido has quit (Quit: rapido).
05:37:23 -!- Nisstyre-laptop has quit (Ping timeout: 255 seconds).
05:44:40 <zzo38> I read about esolang "Muxcomp". Can something like this be made for a VLIW microcode, accessing the internal cache memory?
05:47:43 -!- rapido has joined.
05:53:31 -!- rapido has quit (Quit: rapido).
06:39:49 -!- Nisstyre has quit (Ping timeout: 244 seconds).
06:43:53 -!- Nisstyre-laptop has joined.
06:55:20 -!- Nisstyre has joined.
06:56:29 -!- zzo38 has quit (Remote host closed the connection).
07:04:13 -!- elliott has quit (Read error: Operation timed out).
07:21:48 <Deewiant> @tell elliott I didn't donate. :-P
07:24:38 <shachaf> To D is the D I am going to sleep.
07:24:38 <coppro> two very awesome things:
07:24:56 <coppro> 2) Sibelius' symphony no. 1, movement 3
07:31:15 -!- Nisstyre-laptop has quit (Ping timeout: 260 seconds).
07:34:51 -!- Bike has quit (Quit: blind).
07:35:03 <fizzie> 4) People who can't count
07:48:23 <Sgeo> I think I have enough water for a few days
07:48:28 <Sgeo> 5 soda bottles filled with water
08:21:06 -!- epicmonkey has joined.
08:57:07 -!- epicmonkey has quit (Ping timeout: 260 seconds).
09:15:19 -!- monqy has quit (Quit: hello).
10:00:39 -!- epicmonkey has joined.
10:03:02 -!- ais523 has joined.
11:07:47 -!- ogrom has joined.
11:15:14 -!- ogrom has quit (Remote host closed the connection).
11:36:14 -!- ineiros has quit (Ping timeout: 240 seconds).
11:38:09 <barts_> Sgeo: are you preparing for a nuclear holocaust?
11:42:34 <ion> http://asunnot.oikotie.fi/card/all-media?card_id=7524781
11:46:11 <ion> Linux beats Windows (other)! It’s truly the year of Linux on the desktop! http://en.wikipedia.org/wiki/Usage_share_of_operating_systems
11:50:06 <FreeFull> Linux won't be ready for the desktop for at least 10 more years, unless there is someone who will grab it, twist it into something that people want and put it on machines everywhere
11:55:42 -!- ais523_ has joined.
11:55:49 -!- ais523 has quit (Read error: Connection reset by peer).
11:55:58 -!- ais523_ has changed nick to ais523.
12:12:29 -!- hagb4rd has joined.
12:13:23 -!- ais523 has quit.
12:25:48 <ion> https://fbcdn-sphotos-c-a.akamaihd.net/hphotos-ak-prn1/64582_10151277436123707_560425104_n.jpg
12:37:35 -!- Arc_Koen has joined.
13:09:21 -!- boily has joined.
13:25:00 -!- Frooxius has joined.
13:25:02 -!- Frooxius has quit (Client Quit).
13:25:17 -!- Frooxius has joined.
13:29:07 -!- ais523 has joined.
13:57:12 -!- ogrom has joined.
13:59:55 -!- boily has quit (Read error: Operation timed out).
14:01:42 -!- boily has joined.
14:02:07 -!- ogrom has quit (Quit: Left).
14:07:59 -!- Phantom_Hoover has joined.
15:08:31 -!- atriq has joined.
15:19:25 <Arc_Koen> so there are all those languages which are supposedly "stack-based" but that include instructions like "move top element to bottom" or "move bottom element to top" or "reverse stack"
15:19:44 <Arc_Koen> shouldn't they be in the deque-based category?
15:20:11 <tswett> Well, the data structure they use is *based* on a stack...
15:25:59 <Arc_Koen> (also you could argue that if the reverse instruction has a linear complexity, it's definitely a stack, but if you're actually using a deque you can make it constant time)
15:28:28 -!- elliott has joined.
15:31:18 <Jafet> Complexity? You guys should work toward simplicity
15:32:36 <kmc> no you shuold work towards being awesome
15:32:41 <kmc> it's all anyone talks about these days
15:34:06 -!- elliott has left ("Leaving").
15:35:21 <kmc> shachaf: this django-confirmation library generates an email confirmation key like so:
15:35:23 <kmc> confirmation_key = sha1(str(os.urandom(12)) + str(email_address)).hexdigest()
15:35:25 <atriq> Phantom_Hoover, if you figure out a non-trivial way of having an algorithm that operates in O(awesome) time or space, I will be amazed
15:35:28 <kmc> i cannot figure out why
15:36:18 <atriq> Anything other than renaming "n" to "awesome"
15:37:12 <shachaf> kmc: It's probably not particularly terrible, as such.
15:37:17 <shachaf> I don't see the point of using the email there.
15:38:52 <kmc> i don't think it's worse than a 12 byte random confirmation key
15:39:04 <kmc> which should be enough
15:39:14 <kmc> but it's very cargo-culty :/
15:39:43 <Jafet> Hey, sha1 doesn't really decrease the entropy. Okay, it probably does a little.
15:41:57 <kmc> yeah, the email is like the one piece of information you're guaranteed the attacker knows
15:42:08 <kmc> in a typical "forging a signup from someone else" attack
15:42:28 <kmc> if anything, hashing in the email makes it harder to notice if the other bit breaks somehow
15:42:41 <kmc> like how Debian OpenSSL was throwing the PID into the entropy pot just for laffs
15:42:50 <kmc> and that ended up being the *only* entropy
15:43:19 <kmc> so Debian would only generate one of 2^16 certs, but that's enough that nobody noticed for a while :/
15:44:34 <Jafet> I thought it also used the time
15:49:20 <Jafet> Entropy should be tracked through the type system or something
16:07:29 <kmc> http://research.swtch.com/openssl is a good writeup of that fiasco
16:08:19 <shachaf> kmc: Is something like that included in your CTF?
16:10:12 <kmc> the one i'm not doing
16:10:33 <shachaf> kmc: Well, you wrote up a list of suggestions, right?
16:10:38 <shachaf> Are you just going to let it go to waste?
16:11:01 <kmc> i can send them to you
16:11:56 <kmc> hmm, but including the PID is a good idea if your process is going to fork() and you have no other way of getting separate entropy to each
16:12:03 <kmc> but you should probably that thing I said instead
16:12:43 <kmc> why doesn't OpenSSL on Linux read straight out of /dev/urandom
16:12:57 <shachaf> Ask you to supply randomness?
16:13:28 <kmc> "As a general rule, /dev/urandom should be used for everything except long-lived GPG/SSL/SSH keys"
16:13:35 <kmc> so okay, they would need some way to switch to /dev/random for those
16:13:40 <kmc> and their API might not be expressive enough
16:13:49 <kmc> shachaf: it has its own PRNG seeded from /dev/urandom
16:14:01 <kmc> er actually /dev/random
16:14:11 <kmc> perhaps once upon a time, the kernel PRNG for /dev/urandom was much worse
16:14:16 <kmc> today I think it is considered to be really good
16:14:42 <shachaf> Is it considered really good cross-platform?
16:15:44 <shachaf> I haven't used OpenSSL personally but I hear its API is pretty low-level and bad.
16:16:41 <kmc> so i have heard as well
16:17:03 <atriq> I was going to write a Haskell interface for the Tumblr API at some point
16:17:10 <kmc> hm, maybe the problem is that you can't get entropy estimates out of urandom
16:17:14 <kmc> surely there must be an ioctl for that :)
16:18:14 <shachaf> root can feed entropy to /dev/random
16:20:36 <shachaf> kmc: I'd like to see the CTF thing if you're not going to be doing anything else with it.
16:25:18 <kmc> shachaf: how?
16:25:50 <shachaf> I think just by writing into it.
16:26:32 <Phantom_Hoover> i find it kind of cute when redditors try to justify video game review scores by saying "well it's like at school, 70 is average"
16:26:40 <kmc> but can you say how much entropy was in those bytes
16:26:45 <kmc> you can with the OpenSSL API
16:27:00 <shachaf> but can you say it in the type system
16:27:13 <Phantom_Hoover> because you know, 70% being 'average' isn't just tests being too easy
16:28:39 <kmc> are you talking about raw 70% of questions answered correctly, or about a 70% grade after curving
16:28:50 <kmc> because i don't see why either should mean the tests are too easy
16:29:38 <kmc> why should writing a test where the average student can answer only 50% of the questions instead of 70% produce better educational outcomes?
16:29:51 -!- epicmonkey has quit (Ping timeout: 244 seconds).
16:30:08 <kmc> and the curve is arbitrary, you can put the average wherever you want
16:30:20 <kmc> though i did have a few instructors who used deterministic curves made known to the class ahead of time
16:30:49 <kmc> there were tests in college where the average student got 20%
16:31:17 <Phantom_Hoover> and it's not even a standard thing for most educational systems
16:32:10 <kmc> what i thought this internet thing was just for americans
16:32:13 <kmc> who let all these foreigners on
16:33:41 <Phantom_Hoover> they had to introduce a new grade a while back because an A was worthless and the universities were just ignoring exam results
16:34:33 <kmc> on GCSE? or A-levels or what
16:35:07 <Phantom_Hoover> And GCSE but AFAIK the GCSEs are irrelevant as a qualification, they're that easy.
16:36:14 <Phantom_Hoover> According to the BBC 25% of A-level entries got an A by the end of the 2000's so...
16:36:49 <atriq> I'm pretty sure Oxford ignores them even now
16:37:30 <kmc> so what do you do to impress oxbridge then
16:38:43 <kmc> i took all the AP classes and everyone told me how great it was to get college credit for them
16:38:52 <kmc> and then i went to a college that didn't accept a single fucking one
16:39:23 <shachaf> I should probably apply to university.
16:39:33 <shachaf> I think now is the time to do it.
16:41:17 <kmc> school in the US is too damn expensive
16:41:29 <kmc> though the effect is overblown by foreign commentators
16:41:38 -!- atriq has quit (Ping timeout: 265 seconds).
16:42:10 <kmc> when they say "omg it costs $40,000 a year to go to school in the US" they mean "to go to the most elite private schools, if you get zero financial aid"
16:43:10 <shachaf> Phantom_Hoover: How much does it cost to go to Warwick?
16:43:47 <kmc> i'm not sure it's a bad thing to let the super rich spend a lot of money on education, as long as there's a system of taxation and public schools to ensure everyone gets a good education
16:44:23 <kmc> but it's probably a bad thing that private schools have such a monopoly on the top tier of higher education in the US
16:44:55 <kmc> there's only one public school that competes basically
16:45:21 <kmc> n.b. i have been advised that "private school" means something crazy in the UK, please to substituting for appropriate crazy word, thanks in advance
16:45:38 <shachaf> Phantom_Hoover: I'm an EU citizen, by the way.
16:46:40 <coppro> that's about a thousand pounds more than my school
16:46:45 <coppro> assuming you're counting tuition only
16:47:20 <coppro> I pay about $10500 (canadian) per year
16:47:34 <coppro> maybe closer to $11000
16:47:44 <coppro> I don't like to think about it too much :P
16:49:14 <copumpkin> kmc: the one public school being berkeley?
16:49:42 <shachaf> I could probably go to Berkeley as an in-state student now.
16:49:49 -!- elliott has joined.
16:50:19 <Phantom_Hoover> They don't affect your credit score, you repay like 2% of your income over 21k and if you manage not to pay it off before you retire it gets written off.
16:50:54 <kmc> Phantom_Hoover: this is some silly accounting dodge on the part of the govt right
16:51:08 <kmc> so that they can hand out money for university but keep it on the books as something they are owed back
16:51:13 <elliott> 15:42:41: <kmc> like how Debian OpenSSL was throwing the PID into the entropy pot just for laffs
16:51:19 <elliott> Didn't upstream OpenSSL do this, though?
16:51:25 <elliott> It's just that Debian accidentally disabled all the other entropy sources.
16:51:36 <Phantom_Hoover> Especially funny when they raised tuition fees as part of 'austerity measures' when it just means they end up paying universities more.
16:51:46 <shachaf> elliott: See kmc's link above: http://research.swtch.com/openssl
16:51:52 <kmc> elliott: yeah
16:52:34 <elliott> 16:13:28: <kmc> "As a general rule, /dev/urandom should be used for everything except long-lived GPG/SSL/SSH keys"
16:52:34 <elliott> 16:13:35: <kmc> so okay, they would need some way to switch to /dev/random for those
16:52:44 <elliott> kmc: I thought /dev/urandom was actually recommended for cryptographic stuff over /dev/random?
16:52:53 <shachaf> elliott: *over* /dev/random?
16:52:54 <kmc> well i'm quoting man 4 random there
16:53:10 <elliott> 16:18:14: <shachaf> root can feed entropy to /dev/random
16:53:12 <shachaf> As far as I know when you're not concerned about blocking /dev/random is generally better.
16:53:19 <kmc> man 4 man, man 4 woman, man 4 random
16:53:20 <elliott> IIRC any user can write to /dev/random?
16:53:27 <elliott> It just magically discards the non-random bits or something.
16:53:30 <elliott> Maybe that's /dev/urandom.
16:53:37 <copumpkin> how do you detect which bits are non-random?
16:53:42 <elliott> shachaf: -- also that's what I thought but then I saw someone say that /dev/urandom was recommended or something.
16:53:46 <elliott> It was on LWN so it looked authoritative.
16:53:50 <coppro> copumpkin: compare them to the output of a PRNG
16:53:57 <elliott> copumpkin: Magic, I guess. I don't know how randomness or cryptography or anything works.
16:54:01 <shachaf> elliott: For most things urandom is good enough.
16:54:05 <elliott> But I remember hearing something like that.
16:54:12 <copumpkin> coppro: so you discard everything with overwhelming likelihood? :P
16:54:14 <shachaf> copumpkin: The 0 bits are non-random, the 1 bits are random.
16:54:29 <elliott> shachaf: Why are you repeating yourself? I know, and that's what I thought too, but then I heard someone say otherwise and it sounded like that was a common myth or something. I don't know.
16:54:36 <shachaf> The 2 bits you just discard.
16:54:37 <coppro> copumpkin: no, you compare each successive bit and only keep the random ones
16:54:51 <kmc> coming this summer: Myth or Manpage?
16:55:04 <shachaf> elliott: My imperssion was that /dev/urandom is usually recommended for most cryptographic because it's "good enough".
16:55:12 <shachaf> And you really don't want to block in most cases.
16:55:27 <coppro> so if /dev/urandom gives 0010101010110, and a PRNG gives 0101101011010, you know that the random bits are 01010110
16:55:46 <elliott> Anyway I can write to /dev/random here.
16:56:28 <kmc> so it probably takes your bits, but doesn't increment the entropy estimate
16:57:34 <shachaf> Is there some part of the randomness pool that's reserved for particular users?
16:57:40 <shachaf> So that no one can DoS /dev/random
16:58:47 -!- barts__ has joined.
16:59:57 -!- Vorpal has joined.
17:00:33 <shachaf> kmc: I didn't get to sleep all night. :-(
17:01:10 <barts__> shachaf: down five red bulls
17:01:42 -!- barts_ has quit (Ping timeout: 245 seconds).
17:02:32 -!- Bike has joined.
17:04:01 <barts__> shachaf: if you gaze for long into the abyss
17:04:57 <shachaf> barts__: either say yes or say no
17:05:15 -!- atriq has joined.
17:05:43 <barts__> if i don't, will you freeze forever, stuck on blocking input?
17:06:47 <atriq> elliott, is it too late to change my mind about accepting the responsibility of choosing the featured language?
17:08:03 -!- Sgeo has quit (Read error: Connection reset by peer).
17:08:30 -!- Sgeo has joined.
17:13:07 <ais523> barts__ is definitely cheater, btw
17:13:20 <ais523> no real reason in asking because he/she's just going to dodge the question indefinitely
17:13:53 <kmc> shachaf: why not
17:14:28 <kmc> hey let's all flip out and lose our shit completely because somebody who may or may not be cheater has said three inoffensive things
17:14:42 <kmc> am i winning at #esoteric yet
17:15:12 <elliott> instead we should just let blatant ban evasion be an insult to our intelligence by pretending it's not obvious
17:15:27 * shachaf is not insulted, only amused.
17:15:38 <shachaf> I don't care if cheater is here.
17:15:40 <barts__> i thought this was the channel for whichever subset of ##electronics, #esoteric, and #haskell-blah would put up with me
17:16:19 <Phantom_Hoover> ais523, ban barts__ if you know he's cheater, he was banned for a reason
17:17:10 <barts__> or did i get that wrong, kmc
17:17:12 <ais523> Phantom_Hoover: well he's clearly a past-regular
17:18:04 <atriq> He could be cpressey for all we know
17:18:18 <atriq> (he probably isn't cpressey)
17:18:30 <atriq> Phantom_Hoover, where am I connecting from?
17:18:52 <ais523> if we banned cpressey by mistake, thinking he was someone else, it'd be easy to prove his identity and get him unbanned again
17:20:54 <barts__> the max planck instutute *is* in germany
17:20:55 <ais523> bleh, you answered before I figured it out
17:20:57 <ais523> that was so close, too
17:21:06 <atriq> Specifically, Ibiza
17:21:20 <Phantom_Hoover> i thought he was connecting from spai and was answering in short form to an earlier query
17:21:40 <ais523> specifically, valencia
17:22:07 <ais523> at least, that's where the ISP reports, it can be inaccurate
17:22:30 -!- Sgeo_ has joined.
17:22:55 <atriq> La Presidente Hotel, Portinatx, Ibiza
17:23:05 <atriq> If any of you want to stalk me
17:23:10 <Phantom_Hoover> we were previously talking about cheater and his blatant ban evasion
17:23:27 <barts__> atriq: spagnolo? parli italiano?
17:23:38 <ais523> atriq: if it's a hotel IP, then the other guests in the hotel have been surprisingly well behaved
17:24:07 <atriq> barts__, tu stinko es
17:24:46 <Phantom_Hoover> maybe one of the ops could actually give a damn about channel administration for once
17:25:40 -!- Sgeo has quit (Ping timeout: 260 seconds).
17:26:10 <atriq> barts__, eres infiel_?
17:27:35 <atriq> Usted no va a responder en Ingls, no se contestar en espaol ...
17:27:47 <atriq> Es casi como si tuviera algo que ocultar.
17:35:39 <barts__> scusa atriq, c'e un problem'?
17:38:01 -!- zzo38 has joined.
17:38:16 <barts__> kmc: oh, excuse-me, kmc, have I misquoted you above ?.
17:39:24 -!- rapido has joined.
17:40:31 -!- epicmonkey has joined.
17:43:17 -!- atriq has quit (Ping timeout: 246 seconds).
17:46:05 -!- Sgeo_ has quit (Ping timeout: 260 seconds).
17:57:31 <Arc_Koen> http://esolangs.org/wiki/Most_ever_Brainfuckiest_Fuck_you_Brain_fucker_Fuck
18:01:27 <Jafet> Is that turing complete?
18:03:09 <ais523> barts__: you are indeed still being useless
18:03:13 <ais523> why /shouldn't/ I ban you again
18:03:28 <Arc_Koen> one of the pixels on my screen is MOVING
18:04:57 <ais523> Arc_Koen: are you sure it's a pixel
18:05:01 <ais523> rather than, say, an insect?
18:05:10 <barts__> i made contributions to the esolang wiki.
18:06:03 -!- rapido has quit (Quit: rapido).
18:06:06 <Arc_Koen> up until I noticed it was moving it was a well-behaved pixel
18:06:30 <fizzie> Arc_Koen: Did it change color depending on the contents of your display?
18:06:37 <ais523> barts__: were they useful?
18:06:50 <ais523> also, under what name?
18:06:53 <Arc_Koen> I wasn't paying much attention to it
18:07:10 <barts__> he named his latest language under my suggestion
18:07:26 <Arc_Koen> is that you http://esolangs.org/wiki/User:Arc_Koen
18:07:51 <barts__> i just said under what name the latest contribution was
18:07:56 -!- Phantom__Hoover has joined.
18:08:12 <Arc_Koen> (though http://esolangs.org/wiki/Circlefuck indeed had its name suggested by barts)
18:11:11 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds).
18:13:24 <Arc_Koen> I was thinking about adding an emmental-like instruction-rewriting feature to my circlefuck implementation
18:13:33 <Arc_Koen> then I realized I hadn't implemented it
18:15:21 <barts__> you could then call it "La ronde des fromages"
18:15:31 <barts__> which is "the roundness of the cheese"
18:16:42 <barts__> which plays on your language's topology and where it's derived from.
18:17:16 <barts__> alternatively, "larondedesfromagesfuck".
18:27:12 <Arc_Koen> hey do you guys see any difference between http://esolangs.org/wiki/Braincrash and http://esolangs.org/wiki/Malbrain ?
18:27:53 <Arc_Koen> appart from the fact that one uses +-><.,[] and the other ><+-.,[]
18:33:31 <ais523> Arc_Koen: this reminds me of BrainFuck
18:33:40 <ais523> or was it just Brainfuck, with a capital B?
18:33:50 <ais523> it's a BF derivative that doesn't change any instructions at all
18:33:55 <ais523> the sort of extreme of pointless BF derivatives
18:41:19 <kmc> there's no i in branfuck
18:45:48 <Jafet> I believe, in fact, that there isn't already an 11-dimensional esolang. Or other sort of language for that matter.
18:47:53 <Jafet> With our patented Planck units, creating programs will be as simple as nailing two-by-fours together. Which is to say it's incredibly error-prone and involves manual work.
18:51:34 <kmc> http://hint.fm/wind/ wow this is pretty
18:51:37 -!- Sanky has joined.
18:52:30 <coppro> I'm happy I'm not in NY
18:54:41 <Phantom__Hoover> what's the deal with that big turbulent patch north of charlott
18:58:59 <FireFly> Poorly-timed week-long holiday, this
19:01:05 -!- tinkerer has joined.
19:01:06 <FireFly> Rainy and somewhat windy at the moment, though as I've understood it'll get worse during the evening/night
19:01:39 <kmc> are you in NYC?
19:04:04 <kmc> it must suck that there's no subway
19:05:08 <kmc> they shut it down here too (boston)
19:10:26 <Arc_Koen> kmc: your link is incredibly slow to load :(
19:14:04 <zzo38> "The entire execution unit for muxcomp64 would be extremely small, very close to 16K transistors (not gates, transistors)." I want to buy it please.
19:15:49 -!- AnotherTest has joined.
19:17:10 <Arc_Koen> hey shouldn't we try something similar to corewar but with esolangs?
19:18:25 <EgoBot> Use: !bfjoust <program name> <program> . Scoreboard, programs, and a description of score calculation are at http://codu.org/eso/bfjoust/
19:19:19 -!- rapido has joined.
19:20:30 <Arc_Koen> hrm http://codu.org/eso/bfjoust/breakdown.txt
19:38:44 <ais523> Arc_Koen: BF Joust is awesome, you should play it
19:39:31 <Arc_Koen> EgoBot: Score for Arc_Koen_koen_very_unsubtle_1_bfjoust: 0.0
19:40:01 <Arc_Koen> is there something I did not understand? my program was >>>>>>>>>(++>)*21
19:40:08 -!- Phantom__Hoover has quit (Ping timeout: 256 seconds).
19:43:15 -!- rapido has quit (Quit: rapido).
19:52:45 -!- epicmonkey has quit (Ping timeout: 252 seconds).
20:06:24 -!- AnotherTest has quit (Quit: Leaving.).
20:07:54 -!- Phantom__Hoover has joined.
20:19:41 -!- tinkerer has left ("Already Gone").
20:41:59 -!- rapido has joined.
20:46:48 -!- rapido has quit (Client Quit).
20:52:20 -!- rapido has joined.
20:53:56 <kmc> shachaf: isn't it great how programmers use the term "Unicode" to mean alternately "non-ASCII", "non-ISO-8859-1", "UTF-8", "UTF-8 but not if any of the bytes are less that 0x80", or (very occasionally) "Unicode"?
20:54:08 <kmc> not if all of the bytes are less than*
21:00:14 -!- rapido has quit (Quit: rapido).
21:00:39 <olsner> it also often refers to one of UCS-2 or UTF-16
21:02:20 <kmc> ah yes, in Windows-land and Java-land
21:02:26 <kmc> places to avoid for sure
21:03:54 <olsner> I guess the worst part is that it usually really means "either UCS-2 or UTF-16", without actually knowing which one
21:05:38 <kmc> I may enjoy being pedantic a little too much but I'm also pretty sure that character encoding is one of those areas where you can either be pedantic or get confused all the time.
21:06:07 <kmc> or not be confused but make software which just doesn't work for people who don't speak English
21:07:34 -!- Phantom_Hoover has joined.
21:08:23 <boily> my litmus test when developing is that if japanese goes through without getting garbled, then I shouldn't worry at all about encoding.
21:09:13 <Phantom_Hoover> thus efficiently testing only the japanese section of your encoding
21:09:40 <kmc> eh a lot of existing japanese texts are in weird encodings though
21:09:59 <kmc> your software shouldn't be obliged to support EUC-JP or Shift-JIS
21:10:13 <kmc> Japan moreso than other places has not switched over to the glorious Unicode new world order
21:10:23 <kmc> probably because their shit actually kinda worked before
21:10:24 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds).
21:10:30 <barts__> Jafet: Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck × Circlefuck is 11-dimensional.
21:10:33 <kmc> except if you wanted to send files between Windows and UNIX of course
21:10:36 <boily> that's kinda the point.
21:11:16 <olsner> japanese script should be fairly trivial once you decode it though, and character encoding is just the very first little step
21:11:35 <barts__> japan has single houses with 50 and 60 hz installations in 230 and 120V each, all using the same kind of outlet.
21:12:03 <barts__> they're no fans of standards.
21:12:12 <kmc> yeah that's true olsner
21:12:19 <kmc> no joining, no combining characters, no case (!)
21:12:30 <kmc> probably some normalization though
21:12:57 <olsner> there is that han unification thingy
21:12:58 <kmc> barts__: more like the US is no fans of existing standards when we burn down your country and rebuild it
21:13:11 <barts__> unless you define a kanji to be S.
21:13:45 <kmc> for a while there was talk of making Iraq use CDMA
21:13:54 <kmc> i don't think they actually went through with it
21:13:58 <boily> aren't they on thurayya?
21:13:59 <olsner> i.e. sabotage their communications network?
21:14:47 <kmc> it was considered highly scandalous in the USA that some US govt money might go to systems built by COMMUNIST TERRORIST-APPEASING FRANCE AND GERMANY
21:15:08 <kmc> you know back when were were really upset that they tried to talk us out of shooting ourselves in the foot in the most enormous way possible
21:19:13 <barts__> i am 次次次次次次次次次次次次次次次次0% sure this can be done in japanese
21:20:18 <barts__> even 次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次次0%
21:20:42 <boily> next-next-next-next-next-0% ?????
21:20:56 -!- coppro has quit (Remote host closed the connection).
21:21:11 <elliott> but what does that have to do with anything
21:21:13 * boily is confused as usual, and we're definitely not Friday yet.
21:21:31 <olsner> barts__: japeano numbers?
21:22:29 -!- ChanServ has set channel mode: +o ais523.
21:22:46 -!- ais523 has set channel mode: +b barts*!*@*.
21:22:52 -!- ais523 has kicked barts__ User terminated!.
21:23:54 <ais523> I should really change the default kick message
21:24:36 <ais523> originally, a combination of no useful contribution and harassing a subset of channel regulars
21:24:42 <ais523> later on, for ban evasion
21:24:52 <ais523> but he hadn't been here for a while so I wanted to see if he reformed
21:25:25 <ais523> I don't really understand bad trolls
21:25:35 <ais523> good trolling can be entertaining
21:26:04 <Phantom_Hoover> and he pretends to be a troll to act like he's totally in charge
21:26:26 <ais523> /I'm/ naturally annoying
21:26:29 <ais523> but I try to suppress it
21:26:34 <ais523> rather than revel in it
21:26:37 -!- boily has quit (Quit: Poulet!).
21:26:42 <olsner> you should get "finnished" into the kick message somehow
21:26:55 -!- ais523 has kicked ais523 I don't have a better default kick reason, but if you're being kicked, you should know why.
21:26:59 -!- ais523 has joined.
21:27:08 <ais523> it's a very ais523 kick reason
21:28:02 <ais523> that makes a good non-default kick reason
21:28:08 <ais523> but it'd only work on someone who knew what it meant
21:29:33 <ais523> (short summary for people who don't know: "hi" as a non sequitur is a threat)
21:29:49 <ais523> (or at least, an indication of disapproval)
21:29:59 <olsner> a threat of what? further conversation?
21:30:34 <ais523> it's not a particularly specific threat
21:30:45 <ais523> I think what it usually threatens is more his
21:31:05 <ais523> and possibly a breach of friendship if the offending behaviour happens too long
21:32:08 <ais523> OK, I think that response makes a decent threat, too
21:32:15 <ais523> specifically, the smiley
21:32:21 <ais523> (yes I know it does that for all unrecognised input)
21:33:44 <olsner> the smiley looks a bit like a lop-eyed zombie coming to embrace and devour you
21:34:24 <olsner> (while repeating hi over and over)
21:41:18 -!- sirdancealot7 has joined.
22:06:03 -!- augur has quit (Read error: Connection reset by peer).
22:24:08 -!- augur has joined.
22:29:36 -!- augur_ has joined.
22:32:33 -!- augur has quit (Ping timeout: 244 seconds).
22:33:00 <Arc_Koen> zombie little girls coming at you saying "Hi. Wanna play with me?" and what your really hear is BRAAAAAAINS
22:44:27 -!- Vorpal has quit (Ping timeout: 268 seconds).
22:50:55 <olsner> hmm, I wonder if they have or could release macgyver in HD
22:51:21 <olsner> ... not that it would be worth it or anything
22:57:43 -!- fungot has quit (Ping timeout: 246 seconds).
22:57:48 <olsner> imdb does say it was filmed on "Film"
23:03:30 <kmc> shachaf: Apparently Zephyr uses the same "UTF-8 or maybe ISO-8859-1" encoding that's popular on IRC :/
23:04:26 <kmc> I wonder what the prevalence is in ISO-8859 texts of byte sequences that are also valid UTF-8
23:04:29 <kmc> probably pretty low
23:05:08 <kmc> it helps that half (?) of the UTF-8 continuation bytes are unprintable control characters in ISO-8859 (though not in Windows-1252)
23:11:37 <shachaf> kmc: I've never used Zephyr.
23:12:02 <shachaf> Do you have to be at MIT to use it or something? I couldn't work it out once.
23:12:19 <olsner> it might've been better to use the ascii characters for continuation bytes, to make it more obvious when you're mixing encodings the wrong way
23:13:21 <kmc> that would be a bit less stateless though
23:13:49 <kmc> if you land at a random point in a UTF-8 byte stream, you can recover within one character
23:14:09 <kmc> not so if continuation bytes alias with ASCII characters
23:14:55 -!- epicmonkey has joined.
23:16:30 <kmc> you're right that UTF-8 being a superset of ASCII makes some problems less obvious though
23:16:40 <kmc> especially for programmers of the "i speak English and it works for me" mindset
23:17:05 <kmc> the people who always feel put-upon when others want "crazy characters"
23:17:06 <shachaf> I don't think UTF-8 would be nearly as common if it didn't have that property.
23:17:54 -!- Phantom__Hoover has joined.
23:19:37 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
23:19:40 <shachaf> kmc: Why can't all those weird people just speak English?
23:19:45 <shachaf> It would solve so many problems.
23:19:57 <shachaf> (When I say "weird people" I mean mathematicians, of course.)
23:20:11 <elliott> shachaf: So did edwardk decide yet?
23:20:20 <shachaf> elliott: I didn't talk to him.
23:21:27 -!- epicmonkey has quit (Ping timeout: 244 seconds).
23:29:41 <kmc> it's hurricaning
00:16:47 <kmc> the actual hurricane is in new jersey or something
00:17:51 -!- Bike has quit (Ping timeout: 260 seconds).
00:22:34 -!- Bike_ has joined.
00:26:47 <zzo38> I have failed to even find FPGA-on-FPGA source codes
00:32:51 <zzo38> Unicode is too complicated just use the character set you need
00:36:12 <kmc> no now it's a post-tropical cyclone
00:38:30 -!- Frooxius has quit (Read error: Connection reset by peer).
00:39:14 -!- Frooxius has joined.
00:51:56 -!- monqy has joined.
01:02:24 -!- hagb4rd has quit (Ping timeout: 260 seconds).
01:03:57 -!- hagb4rd has joined.
01:09:57 -!- Phantom__Hoover has quit (Ping timeout: 244 seconds).
01:28:44 -!- Phantom_Hoover has joined.
01:29:03 -!- Arc_Koen has quit (Quit: Arc_Koen).
01:29:33 -!- ais523 has quit.
01:37:30 -!- calamari has joined.
01:40:54 <kmc> i like loops where the last statement is "continue"
01:42:47 <zzo38> What is best one time programmable FPGA?
01:42:59 -!- Bike_ has changed nick to Bike.
01:46:10 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:48:22 -!- Frooxius has quit (Ping timeout: 245 seconds).
01:50:39 -!- coppro has joined.
02:00:10 -!- Frooxius has joined.
02:07:07 -!- Frooxius has quit (Ping timeout: 245 seconds).
02:43:57 -!- DHeadshot has joined.
03:27:35 <pikhq> My body acheth. It shouldn't, but it doth
04:09:47 -!- pikhq_ has joined.
04:10:59 -!- pikhq has quit (Ping timeout: 246 seconds).
04:11:10 -!- pikhq has joined.
04:14:06 -!- pikhq_ has quit (Ping timeout: 240 seconds).
04:37:13 -!- hagb4rd has quit (Quit: hagb4rd).
05:35:07 -!- TeruFSX has quit (Read error: Connection reset by peer).
05:36:25 -!- TeruFSX has joined.
05:41:04 <elliott> does anyone know anything about adom
05:42:10 <elliott> although that was from mikee so it might well be very hard in reality
05:48:08 <pikhq> elliott means "red"
05:48:18 <monqy> elliot means "red"
05:48:55 <pikhq> 赤い means "elliott"
05:52:44 <zzo38> Is LLVM compatible with ARMv2a?
05:54:41 -!- Gregor has quit (Quit: Coyote finally caught me).
07:54:07 -!- esowiki has joined.
07:54:10 -!- glogbot has joined.
07:54:10 -!- glogbackup has left.
07:54:12 -!- esowiki has joined.
07:54:12 -!- esowiki has joined.
07:54:13 -!- glogbackup has quit (Excess Flood).
07:55:00 -!- Gregor has joined.
07:57:26 -!- epicmonkey has quit (Ping timeout: 265 seconds).
08:04:06 -!- rapido has quit (Quit: rapido).
08:06:20 -!- rapido has joined.
08:07:57 -!- AnotherTest has joined.
08:17:24 -!- rapido has quit (Quit: rapido).
08:18:36 -!- zzo38 has quit (Remote host closed the connection).
08:20:16 -!- rapido has joined.
08:28:21 -!- rapido has quit (Quit: rapido).
08:28:53 -!- rapido has joined.
08:39:36 -!- rapido has quit (Quit: rapido).
09:04:48 -!- epicmonkey has joined.
09:13:15 -!- atriq has joined.
09:13:58 <atriq> AnotherTest, your requirements for your list exclude brainfuck
09:14:37 <atriq> "The language may not be convertible to another language by replacing lexemes from one language with lexemes from the other language. Note, this applies only when there is a "one by one" replacement."
09:15:08 <atriq> brainfuck is convertible to Ook! by one-to-one replacement
09:15:26 <atriq> And brainfuck is convertible to Ook!
09:15:31 <atriq> They're isomorphic
09:15:57 <atriq> But that was a computational model for computer science theory purposes, not an esolang
09:15:58 <AnotherTest> You can't convert P'' to brainfuck by one-by-one replacements
09:16:32 <atriq> You can't convert brainfuck to P'' by one-by-one replacements
09:16:35 <atriq> You CAN convert P'' to brainfuck
09:18:01 -!- Arc_Koen has joined.
09:19:14 <atriq> http://esolangs.org/wiki/User:AnotherTest/Notable_Languages
09:19:21 <fizzie> The not-able languages.
09:20:55 <fizzie> Sorry, I guess I should've said "differently abled".
09:22:04 <AnotherTest> I'm not-able to find where I can change the maximum amount of errors displayed in code::blocks
09:35:29 -!- Frooxius has joined.
09:45:34 -!- sirdancealot7 has quit (Remote host closed the connection).
09:49:34 <atriq> Can someone recommend me a tutorial of Nethack so I can get good enough to enjoy it?
09:50:40 <shachaf> You don't need to be good to enjoy it.
09:50:55 <atriq> Yes, but I'm awful
09:51:19 <shachaf> I know, but what does that have to do with NetHack?
09:51:23 <atriq> I'm "You've just eaten poisoned food and died. You killed nothing, prayed for nothing, found nothing, whatever nothing"
09:51:47 <shachaf> OK, well, step 1 is to learn from your mistakes.
09:52:13 <shachaf> Now you know not to eat poisoned food, and not to pray at the wrong time.
09:52:55 <atriq> I appear to have just made a dwarven archeologist
09:53:03 <shachaf> If you want to find out the details of praying and poisoned food, you can look those up.
09:53:09 <shachaf> nethackwiki.com is pretty good.
09:53:14 <shachaf> The spoilers are pretty good.
10:03:06 <atriq> Oh no, I just killed my cat
10:07:15 -!- rapido has joined.
10:08:39 <atriq> BrainCurses isn't a brainfuck derivative at all
10:09:42 <atriq> It's an esoteric single-character-per-instruction language with while loops
10:10:59 <fizzie> "BrainCurses is an ncurses-based clone of the Mastermind game." Yes, that indeed doesn't sound like a brainfuck derivative.
10:14:00 <atriq> Help, I've found a fountain
10:14:09 <atriq> Should I drink from it
10:15:22 <shachaf> atriq: That's lesson #1 of being good at NetHack: Don't drink form fountains.
10:16:05 <FreeFull> I don't think I've gotten lower than 5/6
10:17:02 <fizzie> (http://alt.org/nethack/topdeaths.html #4 "killed by a water moccasin".)
10:18:00 <fizzie> I like the death list.
10:18:02 <fizzie> "killed by a little dog called NOT FOOD, while helpless"
10:18:37 <fizzie> "killed by a leocrotta called HOOOOLY SHIT I'M GONNA DIE!"
10:20:01 <fizzie> Also I like how this GMM-Bayes toolbox prints the log-likelihood diff with %f instead of %g.
10:20:04 <fizzie> log-likelihood diff 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368 on round 1
10:20:14 <fizzie> That's a large difference indeed.
10:20:32 <FreeFull> Why is everything getting automatically picked up
10:21:57 <FreeFull> I'm fine with money getting autopickedup, but not everything else
10:22:34 <fizzie> Perhaps you've smungled your pickup_types.
10:23:02 <fizzie> This toolbox is the bestest.
10:23:04 <fizzie> log-likelihood diff -Inf on round 2
10:23:04 <fizzie> ??? Error using ==> gmmb_em at 161
10:23:04 <fizzie> Probabilities are no longer finite.
10:24:50 <FreeFull> I haven't changed any settings
10:25:33 <FreeFull> Do samurais pick up more stuff automatically or something
10:26:38 -!- rapido has quit (Quit: rapido).
10:27:43 <FreeFull> fizzie: pickup_types was set to all for some reason. I never set it to that
10:28:24 <atriq> Wow, cool, I can dig
10:29:08 -!- rapido has joined.
10:30:35 -!- rapido has quit (Client Quit).
10:31:45 <atriq> Aaah what's a grid bug
10:32:27 <FreeFull> How do I take my dog downstairs? D:
10:32:54 <fizzie> A whistle can be helpful for pet management.
10:33:29 <FreeFull> Pro-tip: Only eat fresh corpses
10:34:17 <fizzie> Helpful rules for corpse-eaters: 1) Learn to recognize poisonous/harmful corpses! 2) Only eat corpses that you recognize.
10:34:27 <fizzie> (I was told these in context of poisonous mushrooms.)
10:34:54 <FreeFull> A lichen isn't ever going to be poisonous, is it?
10:35:30 <fizzie> atriq: If you've verified it's not cursed, you could wear it for a moment to see if you can identify it.
10:38:39 <fizzie> Were you going to EAT it?
10:38:53 <atriq> How do I verify if something isn't cursed?
10:39:08 <atriq> I found it next to a gravestone
10:39:31 <fizzie> atriq: Then it's quite likely to be cursed, I believe.
10:40:03 <fizzie> atriq: Anyway, I don't suppose you've seen an altar yet? Those are the easiest way to test for cursedness.
10:40:27 <FreeFull> Stunned in a 3x3 room with a pit
10:40:37 <fizzie> atriq: Pets can be used for it too, but it's slightly fiddly.
10:40:45 <atriq> I... killed my cat
10:40:57 <fizzie> Well, then that's a no-go too.
10:41:18 <atriq> There's a fountain and a golden potion
10:42:55 <atriq> Help a friendly nome
10:43:12 <fizzie> I generally just carry most unidentified junk with me (or make piles) until reaching the minetown altar for definite blessed/uncursed/cursed-testing, but I'm not exactly a real nethakker.
10:43:22 <fizzie> Wands you can try engrave-identifying, though.
10:45:27 <fizzie> If you don't want to stay alive, though, you can certainly get things done faster by trying everything out.
10:48:19 <fizzie> (And anyway, quaffing from the fountain nets you a wish in about 0.43% of the cases, assuming DL5 and nonnegative luck.)
10:49:40 <atriq> I've found a fortune cookie?
10:50:03 <fizzie> Not much nutrition, though.
10:51:08 <fizzie> You can try taming domesticated animals with it too, if you want a new cat.
10:51:39 <atriq> I've found a statue of a dog
10:51:43 <atriq> I have no idea what I'm doing
10:52:07 <Lumpio-> zap it with a wand, see if it turns alive
10:52:17 <Lumpio-> Maybe you can get a new pet
10:52:33 <fizzie> You could turn it back to a dog if you knew stone to flesh.
10:52:40 <fizzie> Is there even a wand for that?
10:56:47 <fizzie> Why is this (a*b)/(a+b), with a, b >= 0, -0.006 at one point.
10:58:27 -!- Frooxius has quit (Ping timeout: 244 seconds).
11:00:44 -!- atriq has quit (Ping timeout: 252 seconds).
11:02:13 <Arc_Koen> what do you mean "it's not a brainfuck derivative"
11:02:27 <Arc_Koen> it's only means to do arithmetic are to increment or decrement the current cell
11:25:41 <FreeFull> fizzie: Are you sure a and b are actually both greater than 0
11:28:20 <fizzie> FreeFull: Yes, but there was a +c that I had forgotten.
11:30:50 -!- atriq has joined.
11:46:05 -!- benuphoenix has joined.
11:46:25 <benuphoenix> Even though Sgeo is without power, he is safe and [most likely] unharmed.
11:46:32 -!- benuphoenix has left.
11:47:50 <Jafet> http://pbfcomics.com/202/
11:58:18 -!- boily has joined.
12:06:55 -!- atriq has quit (Quit: Leaving).
12:06:58 <fizzie> That statement should've come with a confidence interval.
12:07:06 <fizzie> "Most likely" is so inaccurate.
12:10:37 -!- sirdancealot7 has joined.
12:51:11 -!- carado has joined.
13:04:52 -!- Phantom_Hoover has joined.
13:15:45 -!- coppro has quit (Quit: Lost terminal).
13:36:46 -!- rapido has joined.
13:44:30 -!- sirdancealot7 has quit (Ping timeout: 264 seconds).
13:46:01 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds).
13:46:03 -!- rapido has quit (Quit: rapido).
13:50:23 -!- carado has quit (Ping timeout: 252 seconds).
13:53:38 -!- coppro has joined.
13:57:09 -!- rapido has joined.
14:02:49 -!- rapido has quit (Quit: rapido).
14:05:09 -!- hagb4rd has joined.
14:08:10 -!- Phantom_Hoover has joined.
14:08:58 -!- carado has joined.
14:15:18 -!- rapido has joined.
14:15:23 -!- ogrom has joined.
14:22:52 -!- rapido has quit (Quit: rapido).
14:33:08 -!- rapido has joined.
14:38:03 -!- rapido has quit (Quit: rapido).
14:43:23 -!- calamari has quit (Remote host closed the connection).
14:45:51 -!- impomatic has joined.
15:02:58 -!- copumpkin has changed nick to bunnyrabbit.
15:03:31 -!- bunnyrabbit has changed nick to copumpkin.
15:03:59 -!- sivoais has quit (Read error: Connection reset by peer).
15:04:40 -!- sivoais has joined.
15:05:19 -!- carado has quit (Ping timeout: 260 seconds).
15:10:43 -!- impomatic has quit (Quit: impomatic).
15:18:24 -!- carado has joined.
15:19:29 <Arc_Koen> they already know this palpatine guy has an army of darth vader clones
15:19:59 <Arc_Koen> and now they discover he's in possession of asgardish technology that would allow him to teleport his troops to earth
15:20:28 <Arc_Koen> but "they caught his first lieutenant", so everything is well that ends well and we can go back to sleep reassured
15:23:46 <Arc_Koen> ohhhhh first lines of next episode are epic
15:24:00 <Arc_Koen> "you didn't have your coffee this morning, or what?"
15:24:20 <Arc_Koen> "YOU GAVE UP COFFEE FOR YOUR SYMBIOTE??"
15:48:47 -!- Vorpal has joined.
15:56:01 -!- zzo38 has joined.
15:56:09 -!- Frooxius has joined.
16:10:39 -!- ogrom has quit (Quit: Left).
16:13:10 -!- elliott has joined.
16:32:20 <elliott> AnotherTest: um if you are going to remove a language from the language list for being a joke language then add it to the joke language list...
16:34:33 <elliott> 09:49:34: <atriq> Can someone recommend me a tutorial of Nethack so I can get good enough to enjoy it?
16:34:52 <elliott> @tell atriq nethack doesn't really get more enjoyable the better you are at it
16:34:56 <elliott> @tell atriq nethack doesn't really get more enjoyable
16:35:07 <Jafet> nethack isn't really enjoyable
16:42:36 -!- coppro has quit (Quit: Lost terminal).
16:46:50 <elliott> @tell atriq (you might want to consider starting with a more accessible roguelike, e.g. brogue)
16:47:00 <elliott> @tell atriq (which is excellent by the way)
16:54:18 -!- sirdancealot7 has joined.
16:56:20 -!- coppro has joined.
17:12:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
17:12:51 -!- DH____ has joined.
17:30:08 -!- zzo38 has quit (Remote host closed the connection).
17:41:22 <nortti> wow. http://mina.naguib.ca/blog/2012/10/22/the-little-ssh-that-sometimes-couldnt.html
18:26:24 -!- Bike has joined.
18:27:10 -!- yiyus has quit (Ping timeout: 260 seconds).
18:39:25 -!- epicmonkey has quit (Ping timeout: 260 seconds).
18:39:46 -!- oerjan has joined.
18:40:26 -!- yiyus has joined.
19:29:34 -!- carado has quit (Ping timeout: 260 seconds).
19:35:11 <Vorpal> btw... I do not understand subscriptions on youtube... The front page is completely inaccurate. My RSS reader that I used for this since youtube fails so badly is correct but about 1-2 days delayed (varies between channels).
19:35:59 <Vorpal> I'm probably going to have to write a script to screen scrape the channels or something...
19:42:13 <olsner> nortti: what happens if you send a letter to the moomins?
19:43:44 -!- glogbackup has quit (Remote host closed the connection).
19:48:50 -!- AnotherTest has quit (Quit: Leaving.).
19:51:30 -!- epicmonkey has joined.
19:53:56 <olsner> moomin appears to come from the finnish muumi, but they were originally written in swedish where "mumin" would have a differently pronounced 'u'
19:54:21 <olsner> hmm, unless it's supposed to be read in finland swedish
19:54:58 <pikhq> *grin* "muumi" has a perfectly reasonable Japanese interpretation
19:55:39 <pikhq> "No ocean". Clearly the Finns are Japanese speakers who like Led Zeppelin.
19:56:03 <pikhq> I merged the song titles of two adjacent ones on an album
19:56:05 <pikhq> I need more coffee
19:56:27 <pikhq> "No Quarter" + "The Ocean" = "No Ocean" apparently in my head
19:56:58 <olsner> hmm, wouldn't that be muümi with two adjacent short us rather than a long u?
19:58:08 <olsner> (except for the fact that I've never seen diaereses used like that in romanised japanese)
19:58:55 <pikhq> In typical romanized Japanese the ' would be devoid of meaning.
19:59:10 <pikhq> In mine that'd be a sokuon, and in that context would be interpreted as a glottal stop, if anything.
19:59:23 <pikhq> "mu umi" is how you'd write it if you wanted to indicate it's two separate short u's.
19:59:47 <pikhq> But, Japanese doesn't make much of a distinction between adjacent short vowels and a single long vowel.
20:01:40 <Vorpal> <olsner> hmm, unless it's supposed to be read in finland swedish <-- that does not appear entirely unlikely
20:02:49 -!- oerjan has quit (Quit: Arrividerci).
20:20:26 <elliott> shachaf: how do you format record type definitions in haskell
20:49:30 -!- epicmonkey has quit (Ping timeout: 260 seconds).
20:51:16 -!- sivoais has quit (Quit: Lost terminal).
21:00:58 <kmc> disney bought the rights to Star Wars and is 'making a seventh movie in the "Star Wars" series called "Episode 7," set for release in 2015, with plans to follow it with Episodes 8 and 9 and then one new movie every two or three years.'
21:03:43 <olsner> ooh, hope it has lots of ewoks
21:05:40 <kmc> special musical appearance by Hannah Montana
21:11:06 -!- boily has quit (Quit: Poulet!).
21:48:27 <elliott> well it's all over various semi-reputable news sites on the web
21:48:45 <elliott> http://www.guardian.co.uk/film/2012/oct/30/disney-lucasfilm-star-wars-deal
21:48:47 <elliott> http://www.latimes.com/entertainment/envelope/cotown/la-et-ct-disney-lucasfilm-20121030,0,3821750.story
21:49:17 <Phantom_Hoover> hmm i guess on the bright side lucas doesn't control it any more
21:49:38 <elliott> real headline is George Lucas Gets Last Laugh
21:52:45 -!- Nisstyre has quit (Quit: Leaving).
21:59:37 -!- carado has joined.
22:02:44 -!- Nisstyre has joined.
22:23:02 -!- Vorpal has quit (Read error: Operation timed out).
22:52:37 -!- monqy has joined.
23:03:56 -!- ais523 has joined.
23:04:53 -!- Nisstyre has quit (Quit: Leaving).
23:15:13 -!- Arc_Koen has quit (Quit: that's dr. turing to you, punk).
23:15:55 -!- pikhq_ has joined.
23:18:14 -!- pikhq has quit (Ping timeout: 240 seconds).
23:32:34 <shachaf> elliott: spaces-tabs-spaces for indentation
23:41:34 -!- Nisstyre has joined.
23:42:22 -!- pikhq has joined.
23:45:21 -!- pikhq_ has quit (Ping timeout: 244 seconds).
23:49:34 -!- sivoais has joined.
23:56:29 <elliott> Phantom_Hoover: are u there
00:03:16 -!- Frooxius has quit (Ping timeout: 244 seconds).
00:29:08 -!- lahwran has quit (Excess Flood).
00:36:49 -!- nooodl has joined.
00:37:41 -!- lahwran has joined.
00:38:30 -!- sivoais has quit (Quit: leaving).
00:39:17 -!- sivoais has joined.
00:39:20 <monqy> Gregor: where's hackego
00:39:44 <monqy> I can't welcome this guy without hackego
00:39:57 <elliott> hackego is actually online just not in #esoteric
00:40:44 -!- carado has quit (Read error: Operation timed out).
01:24:04 <Gregor> Sorry, Codu went down 'cause they moved the box, and apparently not everything came up right.
01:24:14 <Gregor> Also, I win Halloween: http://www.facebook.com/photo.php?fbid=4024164996595&l=e0321b07c2
01:24:24 <elliott> its not acceptable fix it thanks
01:25:30 -!- HackEgo has joined.
01:26:08 <HackEgo> noooodl: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
01:26:53 <elliott> `WELCOME NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOODL
01:26:57 <HackEgo> NOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOODL: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.ORG/WIKI/MAIN_PAGE. (FOR THE OTHER KIND OF ESOTERICA, TRY #ESOTERIC ON IRC.DAL.NET.)
01:27:05 <HackEgo> NoOdLe: WeLcOmE To tHe iNtErNaTiOnAl hUb fOr eSoTeRiC PrOgRaMmInG LaNgUaGe dEsIgN AnD DePlOyMeNt! FoR MoRe iNfOrMaTiOn, ChEcK OuT OuR WiKi: HtTp://eSoLaNgS.OrG/WiKi/mAiN_PaGe. (fOr tHe oThEr kInD Of eSoTeRiCa, TrY #eSoTeRiC On iRc.dAl.nEt.)
01:27:13 <Bike> that is a fantastic feature
01:27:24 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WELCOME: not found
01:27:34 <HackEgo> /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: welcome: not found
01:27:42 <HackEgo> ? \ @ \ No \ WELCOME \ WeLcOmE \ addquote \ addquotee \ allquotes \ anonlog \ calc \ define \ delquote \ delquotee \ etymology \ forget \ fortune \ frink \ fuck \ google \ hatesgeo \ joustreport \ jousturl \ json \ k \ karma \ karma+ \ karma- \ learn \ log \ logurl \ macro \ maketext \ marco \ paste \ pastefortunes \ pastekarma \ pastelog \ pastelogs \ pastenquotes \ pastequotes \ pastewisdom \ pastlog \ ping \ prefixes
01:27:54 <monqy> dddid someone remove stupid unicode welcome
01:28:00 <monqy> i miss stupid unicode welcome :(
01:28:47 <nooodl> now i'm curious: what's `No
01:30:09 <monqy> why is there no entry on @ it should be that quote about @. the one with the vapour.
01:30:32 <nooodl> that looks like a great command
01:30:41 <monqy> the `? command is our learndb
01:30:51 <monqy> isn't hatesgeo the one that pings everyone
01:30:53 <nooodl> monqy: i'm glad this exists
01:31:03 <elliott> well it seems to be broken
01:31:08 <monqy> i wonder what my entry is nowadays
01:31:13 <HackEgo> The friendship monqy is an ancient Chinese mystery; ask itidus21 for details.
01:31:34 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
01:32:16 <HackEgo> Sgeo invented Metaplace sex.
01:32:41 <monqy> the most important sgeo info on demand 24/7
01:59:36 <HackEgo> 345) <Sgeo> I was more of a pervert in Metaplace than Utherverse <Sgeo> I invented Metaplace sex >.>
02:09:54 <nooodl> monqy: i've met shachaf
02:10:15 <HackEgo> 2010-10-05.txt:17:49:26: <alise> ais523: http://en.wikipedia.org/wiki/Meta-circular_evaluator
02:11:41 <shachaf> elliott: is nooodl belgian :'(
02:11:54 <nooodl> shachaf: yes i'm sorry
02:13:29 <shachaf> I wonder whether there's a reasonable way to extend the idea of lenses/traversals/folds to imperative languages.
02:13:56 <shachaf> Like first-class lvalues with loops and things.
02:19:28 -!- nooodl has quit (Quit: Leaving).
02:20:00 -!- Phantom__Hoover has joined.
02:23:23 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds).
02:24:39 -!- Phantom__Hoover has quit (Ping timeout: 276 seconds).
02:24:49 <monqy> i dont get it shachaf i dont get it
03:09:05 -!- elliott has quit (Read error: Connection reset by peer).
03:10:29 -!- elliott has joined.
03:54:54 -!- TeruFSX_ has joined.
03:55:06 -!- TeruFSX has quit (Ping timeout: 240 seconds).
03:57:04 -!- DH____ has quit (Read error: Connection reset by peer).
04:42:20 -!- Gregor has quit (Excess Flood).
05:07:36 -!- fungot has joined.
05:10:05 -!- epicmonkey has joined.
05:33:19 -!- epicmonkey has quit (Ping timeout: 260 seconds).
07:10:52 -!- elliott has quit (Read error: Operation timed out).
07:14:45 -!- lambdabot has quit (Remote host closed the connection).
07:48:54 -!- ais523 has quit.
07:51:50 -!- ineiros has joined.
08:03:34 -!- Bike has quit (Quit: leaving).
08:42:14 -!- quintopia has quit (Ping timeout: 240 seconds).
08:47:03 -!- quintopia has joined.
09:07:27 -!- epicmonkey has joined.
09:14:52 -!- ais523 has joined.
09:32:59 <ais523> I was just sent this by one of the other teachers on this Java module:
09:33:01 <ais523> "2) why do the students have to create both a constructor and setters to set the same values ?"
09:33:15 <ais523> OK, I can understand a student asking that because they don't understand Java
09:33:18 -!- AnotherTest has joined.
09:33:26 <ais523> (note: the question isn't really Java-specific)
09:33:35 <ais523> I'm raging at the question "2) why do the students have to create both a constructor and setters to set the same values ?"
09:33:48 <ais523> which was sent to me by someone who's supposed to be helping me teach the course I teach
09:33:58 <shachaf> ais523: Is this teacher suspiciously tall, always seen wearing a coat, and has an unusual number of limbs?
09:34:09 <ais523> and it's a question that's both basic, and shows a lack of understanding of OO principles
09:34:39 <shachaf> ais523: Are there imperative languages with an equivalent of lenses/traversals?
09:34:44 <shachaf> What would that look like?
09:35:10 <ais523> "lenses"? not sure I understand your terminology here
09:35:32 <shachaf> Sometimes called functional references.
09:35:36 <shachaf> They're like first-class lvalues.
09:35:50 <shachaf> A traversal is like a lens that can refer to more than one value.
09:36:16 <shachaf> So you can say world.monsters[0].appendages[1].position.x += 1
09:36:26 <shachaf> But you can say world.monsters[all].appendages[all].position.x += 1
09:37:22 <coppro> ais523: imo the constructor-setter duplication is not really an OO principle, but a fundamental issue with the model of OO that poses no easy solution
09:37:47 <ais523> yeah but anyone teaching OO languages should at least know it exists
09:37:55 <coppro> that I won't disagree with
09:37:57 <ais523> asking why it's necessary from a philosophical point of view is an interesting question
09:38:29 <ais523> one obvious semi-solution is just to get the constructor to call the setters
09:38:44 <ais523> although, in general, initializing something and setting something aren't the same operation
09:38:48 <AnotherTest> "the same values". Initial values != Values you pass to setters?
09:39:14 <ais523> (for instance, initializing is linear, setting isn't unless it returns the old value)
09:40:10 <AnotherTest> but rather creating methods that actually do something more than just setting a value and checking a precondition
09:40:20 <ais523> not creating setters is fine, you just end up with a read-only object
09:40:42 -!- lambdabot has joined.
09:41:22 <ais523> well I was asking for a read-write object in this case
09:41:22 <AnotherTest> But you could have a method that changes some object, but doesn't directly change one field
09:41:23 <lambdabot> AnotherTest: You have 1 new message. '/msg lambdabot @messages' to read it.
09:41:30 <ais523> lambdabot: what about me?
09:41:48 <ais523> also, weird to see you talking about messages because you joined, rather than because the person you're talking to joined
09:43:03 <AnotherTest> For example, if you had a Timer, you could have an "advance" method; it wouldn't directly set a field but rather change a number of fields
09:43:25 <AnotherTest> I think that's probably a better option than just making a lot of setters
09:43:53 <AnotherTest> Furthermore, I think it's a higher level of abstraction
09:45:26 <coppro> ais523: right, that's the problem, the initialization/modification distinction is lame :(
09:46:30 <ais523> coppro: I don't really think so
09:46:41 <ais523> imagine an object that holds a filehandle as a property
09:46:49 <coppro> Sure, it exists for pragmatic reasons
09:46:49 <ais523> and the filehandle is mutable in that you can replace it with another one
09:47:01 <ais523> also, the object is responsible for holding the filehandle open and closing it when it's done
09:47:07 <coppro> but languages with immutable data handle things so much nicer
09:47:09 <ais523> a setter method needs to call close, then open a file
09:47:19 <ais523> an initializer just needs to open
09:47:28 <ais523> perhaps we should move to a paradigm with initializers and uninitializers?
09:47:41 <ais523> then the constructor calls the initializer, the destructor calls the uninitializer
09:47:44 <ais523> and a setter calls both
09:47:59 <ais523> if they're private, then the field is an always-initialized field
09:48:08 <ais523> if additionally the setter is private or nonexistent, then the field is immutable
09:50:35 <coppro> that seems more natural
09:50:54 <coppro> of course, you then have room for optimized setters
09:51:34 <coppro> but those are a derived concept that aren't necessary
09:52:47 <ais523> if you have a sufficiently good type system, you can track the initializedness of the fields in the object statically, btw
09:53:04 <ais523> (Anarchy can do that, probably OCaml can as well but I'm less sure about that)
09:56:10 <AnotherTest> ais523: But what if you want to leave something unitialized on construction?
09:57:06 <AnotherTest> Well, I guess that means your design is bad
09:57:09 <coppro> ais523: you can do this with a poor type system too
09:57:37 <coppro> AnotherTest: I think the intent is that it's like Java, where you cannot use an unitialized field, not where you can't have them
09:57:58 <AnotherTest> What if you want to allocate memory, but not yet on construction?
09:59:06 <AnotherTest> For example, something like C++'s std::vector. In that case "push_back" can allocate memory, and the constructor doesn't have to allocate memory
09:59:59 <coppro> AnotherTest: The idea would be that there are two types of int. Initialized int and uninitialized int
10:00:11 <coppro> so int i; is uninitialized
10:00:19 <coppro> int j = i; is an error because you can't read from an uninitialized type
10:00:45 <Jafet> int i; if(true) i = 1; int j = i;
10:01:10 <coppro> Jafet: that's the problem with that approach
10:01:44 <AnotherTest> int i; if(some condition that depends on input) i = 1; int j = i;
10:01:47 <Jafet> It would have to be checked at runtime, sometimes
10:02:27 <Jafet> You can rewrite the program to something like int i; boolean _init_i = false; if(!_init_i) error(); j = i;
10:02:37 <Jafet> And hope it usually compiles away
10:03:13 <AnotherTest> That would leave you with problematic code though
10:03:43 <coppro> ugh today is going to suuuuuuck
10:09:34 -!- Gregor has joined.
10:16:04 -!- Jafet has quit (Quit: Leaving.).
10:19:54 -!- Jafet has joined.
10:20:27 -!- pikhq_ has joined.
10:20:33 -!- pikhq has quit (Ping timeout: 252 seconds).
10:26:10 -!- pikhq has joined.
10:26:17 -!- pikhq_ has quit (Ping timeout: 255 seconds).
10:31:32 -!- Arc_Koen has joined.
10:31:41 -!- pikhq has quit (Ping timeout: 245 seconds).
10:31:46 -!- pikhq_ has joined.
10:38:21 -!- pikhq_ has quit (Ping timeout: 245 seconds).
10:38:28 -!- pikhq has joined.
10:52:10 -!- pikhq has quit (Ping timeout: 246 seconds).
10:52:19 -!- pikhq has joined.
10:59:59 -!- pikhq_ has joined.
11:00:06 -!- pikhq has quit (Ping timeout: 240 seconds).
11:00:49 <AnotherTest> error: Failure in UniqueIdTest: Expected 1B2M2Y8AsgTpgAmY7PhCfg== but was 1B2M2Y8AsgTpgAmY7PhCfg==
11:01:42 <Jafet> Of course it fails, those were not unique!
11:03:13 -!- sivoais has quit (Ping timeout: 244 seconds).
11:03:34 -!- Robdgreat has quit (Ping timeout: 252 seconds).
11:03:42 -!- Gregor has quit (Ping timeout: 264 seconds).
11:03:43 -!- FireFly has quit (Ping timeout: 246 seconds).
11:04:48 -!- Robdgreat has joined.
11:08:22 -!- Jafet1 has joined.
11:09:11 -!- Jafet has quit (Ping timeout: 245 seconds).
11:09:50 -!- FireFly has joined.
11:10:54 -!- Jafet1 has quit (Client Quit).
11:12:45 -!- pikhq has joined.
11:12:50 -!- pikhq_ has quit (Ping timeout: 246 seconds).
11:12:59 -!- sivoais has joined.
11:13:12 -!- Jafet has joined.
11:19:40 -!- Phantom_Hoover has joined.
11:19:46 -!- atriq has joined.
11:20:05 <atriq> I... don't know why I'm bothering to update Thunderbird
11:20:05 <lambdabot> atriq: You have 4 new messages. '/msg lambdabot @messages' to read them.
11:20:07 <atriq> I have never used it
11:20:40 <atriq> @tell elliott Okay, I'll give that a look
11:27:01 <ion> I transliterated a toy parser library written in Haskell into Python for shits and giggles. It expects splitting a list/string like a = foo[0]; b = foo[1:] is free and it probably also overflows the stack with long inputs, so it’s not useful for anything real. It’s for comparison to the original code for a friend who knows Python and is interested of Haskell. https://gist.github.com/3970500
11:27:43 <Jafet> Python calls them lists too, they must be lists too
12:00:04 -!- ais523 has quit (Ping timeout: 260 seconds).
12:01:49 -!- atriq has quit (Ping timeout: 260 seconds).
13:05:21 -!- boily has joined.
13:18:43 -!- ais523 has joined.
13:19:09 -!- nooodl has joined.
13:21:58 <Phantom_Hoover> http://www.introversion.co.uk/darwinia/extras/adverts/idea%203.jpg
13:22:11 <Phantom_Hoover> oh dear christ, introversion almost used this as an ad for darwinia
13:25:31 <monqy> is darwinia a baby????
13:35:10 -!- esowiki has joined.
13:35:14 -!- esowiki has joined.
13:35:14 -!- esowiki has joined.
13:35:55 -!- esowiki has joined.
13:35:59 -!- esowiki has joined.
13:36:00 -!- esowiki has joined.
13:36:35 -!- esowiki has joined.
13:36:39 -!- esowiki has joined.
13:36:40 -!- esowiki has joined.
13:37:15 -!- esowiki has joined.
13:37:19 -!- esowiki has joined.
13:37:20 -!- esowiki has joined.
13:37:55 -!- esowiki has joined.
13:37:59 -!- esowiki has joined.
13:38:00 -!- esowiki has joined.
13:38:40 -!- esowiki has joined.
13:38:44 -!- esowiki has joined.
13:38:45 -!- esowiki has joined.
13:39:25 -!- esowiki has joined.
13:39:29 -!- esowiki has joined.
13:39:30 -!- esowiki has joined.
13:40:10 -!- esowiki has joined.
13:40:14 -!- esowiki has joined.
13:40:15 -!- esowiki has joined.
13:40:50 -!- esowiki has joined.
13:40:54 -!- esowiki has joined.
13:40:55 -!- esowiki has joined.
13:41:30 -!- esowiki has joined.
13:41:34 -!- esowiki has joined.
13:41:35 -!- esowiki has joined.
13:42:20 -!- esowiki has joined.
13:42:25 -!- esowiki has joined.
13:42:25 -!- esowiki has joined.
13:43:00 -!- esowiki has joined.
13:43:05 -!- esowiki has joined.
13:43:05 -!- esowiki has joined.
13:43:40 -!- esowiki has joined.
13:43:45 -!- esowiki has joined.
13:43:45 -!- esowiki has joined.
13:44:31 -!- esowiki has joined.
13:44:35 -!- esowiki has joined.
13:44:35 -!- esowiki has joined.
13:44:56 -!- esowiki has joined.
13:45:00 -!- esowiki has joined.
13:45:00 -!- esowiki has joined.
13:45:36 -!- esowiki has joined.
13:45:37 -!- glogbot has joined.
13:45:38 -!- EgoBot has joined.
13:45:39 -!- glogbackup has left.
13:45:40 -!- esowiki has joined.
13:45:40 -!- esowiki has joined.
13:57:23 -!- ogrom has joined.
14:06:40 -!- fungot has quit (Ping timeout: 246 seconds).
14:30:06 -!- ais523 has quit (Ping timeout: 264 seconds).
14:34:51 -!- mean has joined.
14:35:04 -!- nooodl has quit (Read error: Connection reset by peer).
14:38:27 -!- nooodl has joined.
15:07:17 -!- pikhq_ has joined.
15:07:27 -!- pikhq has quit (Ping timeout: 260 seconds).
15:12:15 -!- pikhq has joined.
15:12:29 -!- pikhq_ has quit (Ping timeout: 255 seconds).
15:29:44 -!- Slereah has joined.
15:54:27 -!- carado has joined.
15:56:32 -!- ogrom has quit (Quit: Left).
16:21:17 -!- mean has quit (Ping timeout: 240 seconds).
16:26:02 -!- augur_ has quit (Remote host closed the connection).
16:34:05 -!- monqy has quit (Quit: hello).
16:43:57 -!- nooodl has quit (Remote host closed the connection).
17:05:55 -!- Gregor has joined.
17:09:52 -!- Bike has joined.
17:11:54 -!- epicmonkey has quit (Ping timeout: 276 seconds).
17:22:38 -!- augur has joined.
17:29:28 -!- elliott has joined.
17:34:16 -!- augur has quit (Read error: Connection reset by peer).
17:34:42 -!- augur has joined.
17:44:44 -!- Vorpal has joined.
18:09:39 -!- augur has quit (Remote host closed the connection).
18:12:29 -!- augur has joined.
18:17:49 -!- epicmonkey has joined.
18:24:19 <AnotherTest> Arc_Koen: with instruction-redefining, do you also mean the definition of new instructions?
18:25:19 <Arc_Koen> if you take emmental for instance, all 256 'char' symbols are an instruction
18:25:31 <Arc_Koen> except by default all but a few are nops
18:26:10 <Arc_Koen> when thinking about the name of "braincurses" I thought maybe you could have a language named BrainCensored
18:26:16 <AnotherTest> So "instruction redefining" would be a form of extensible programming?
18:26:27 <Arc_Koen> no idea what extensible programming i
18:27:17 <Arc_Koen> in braincensored every time you use an instruction it gets censored - you're not allowed to use it any longer
18:27:22 <AnotherTest> Well, programming to extend the programming language by extending the compiler and run-time environment I guess
18:27:26 <Arc_Koen> and there would be an instruction to define new instructions
18:28:24 <Arc_Koen> so before using an instruction you'd have to define a new instruction to do what the old instruction did (but you'd have to do that for the instruction-redefining instruction too...)
18:28:35 <quintopia> Arc_Koen: doesnt seem difficult to use, just annoying
18:28:57 <Arc_Koen> well I guess if you can find some technique to use it then yes
18:29:11 <Arc_Koen> many esoteric languages aren't actually fun to use, though
18:29:27 <quintopia> you just always keep creating instructions that 1) do the thing you want and 2)create the next instruction like this
18:29:54 <Arc_Koen> but you'd have to do that for the instruction that creates instructions, too
18:30:09 <Arc_Koen> and I don't know yet what semantics it would have
18:30:20 <Arc_Koen> it can be interesting or it can be boring :)
18:30:59 <AnotherTest> Arc_Koen: what about a category "Extensible programming paradigm"
18:31:23 <Arc_Koen> you should propose that on the talk page
18:31:33 <Arc_Koen> I have to go for now but I will look into extensible programming
18:57:44 -!- Jafet has quit (Ping timeout: 260 seconds).
18:57:45 -!- Jafet1 has joined.
19:00:42 -!- augur has quit (Remote host closed the connection).
19:05:38 -!- Frooxius has joined.
19:08:26 -!- ogrom has joined.
19:09:15 -!- ogrom has quit (Client Quit).
19:11:27 -!- augur has joined.
19:40:45 -!- AnotherTest has quit (Quit: Leaving.).
19:40:50 -!- augur has quit (Remote host closed the connection).
19:49:12 -!- Vorpal has quit (Ping timeout: 276 seconds).
19:55:29 -!- DHeadshot has joined.
19:58:08 -!- augur has joined.
19:59:38 -!- augur has quit (Remote host closed the connection).
20:08:15 -!- augur has joined.
20:28:56 -!- epicmonkey has quit (Read error: Operation timed out).
20:29:47 <ion> Codeweavers Crossover for free. http://flock.codeweavers.com/
20:35:00 -!- augur has quit (Remote host closed the connection).
20:46:05 <elliott> If you or your loved ones are affected by Hurricane Sandy, please return to this page (sandy.codeweavers.com) starting on Thursday, November 1, 2012 to learn how to get your FREE copy of CrossOver. We will be maintaining this offer until ConEd gets the lights back on and the trains start running again. We are thinking about you, we hope that you and your loved ones are safe.
20:46:05 <lambdabot> elliott: You have 3 new messages. '/msg lambdabot @messages' to read them.
20:56:02 <Gregor> elliott: Sooooooo, basically, they're offering free copies to anyone NOT affected by the hurricane, since it's online-only and only while the electricity's out.
20:57:32 <elliott> maybe you have to prove you were affected
20:57:35 <elliott> so they are offering 0 copies for free
21:13:25 -!- Arc_Koen has quit (Ping timeout: 246 seconds).
21:13:34 <kmc> "Does your ham contain human genes? You wouldn't know unless it's labeled. Vote for Prop 37"
21:13:37 <kmc> stupid future
21:14:11 <kmc> that is an odd giveaway
21:14:26 <kmc> i mean it's true that many more people in NYC are without trains than without power
21:14:46 <kmc> this is what the subway network looks like tomorrow: http://www.mta.info/sites/default/files/pdf/HurricaneRecoveryMapOct312012.pdf
21:15:11 -!- Arc_Koen has joined.
21:19:17 <elliott> the internet realised it existed about five days before it happened i think
21:20:11 <kmc> "On October 20, the system became better organized, and the U.S. National Hurricane Center (NHC) assessed a high potential for it to become a tropical cyclone within 48 hours"
21:20:30 -!- Bike has quit (Quit: Lost terminal).
21:20:31 <Phantom_Hoover> i wish i knew anything about jersey shore so i could make a topical remark
21:20:33 <kmc> so roughtly a week and a half
21:20:43 <kmc> new jersey sucks but making fun of them now is mean-spirited
21:21:01 <kmc> new jersey is basically one giant freeway interchange
21:22:09 <Phantom_Hoover> although i guess if you go there to look for america now you'll need a snorkel
21:36:35 <elliott> kmc: <fruitFly> what's wrong with this semi colon.. fibCons fib = if (fib.head + fib.tail.head) < 4000000 then (fib.head + fib.tail.head:fib; fibCons fib) else fib ???
21:37:23 <elliott> Gregor: it's like you don't even know haskell
21:44:42 <olsner> to be fair, I have no idea where to put the semicolon in that expression either
21:45:19 <kmc> there's no wrong place to put the semicolon
21:51:48 -!- DHeadshot has quit (Read error: Connection reset by peer).
21:51:53 -!- DH____ has joined.
21:53:26 -!- carado has quit (Ping timeout: 255 seconds).
22:15:53 -!- sivoais has quit (Read error: Operation timed out).
22:17:20 -!- sivoais has joined.
22:22:59 -!- augur has joined.
22:41:47 <elliott> pikhq: is there a better display manager than xdm yet
22:42:49 <elliott> last time i tried lightdm it sort of didn't work
22:43:28 <elliott> i forget what else was bad about it
22:44:27 <elliott> ion: oh right it also depends on gnome-common
22:44:32 <elliott> which makes me a bit unhappy
22:44:52 <kmc> yessssssss xdm
22:44:55 <kmc> party like it's 1992
22:45:18 <elliott> kmc: i actually managed to style xdm to not look terrible
22:45:28 <elliott> kmc: by which i mean it was just grey with a one pixel border and anti-aliased sans fonts
22:45:43 <ion> Hmm. It doesn’t seem to depend on gnome-common directly on my system.
22:45:59 <elliott> which is afaict the only greeter anyone uses
22:46:16 <ion> Depends: libc6 (>= 2.2.5), libcairo2 (>= 1.2.4), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.16.0), libgtk-3-0 (>= 3.0.0), liblightdm-gobject-1-0 (>= 0.9.8), libx11-6, lightdm
22:46:41 <elliott> then why does it try and install gnome-common on arch!!
22:47:33 -!- Phantom__Hoover has joined.
22:47:53 <ion> You should ask for your money back.
22:49:57 <kmc> elliott: nooooo
22:50:42 <kmc> styling xdm
22:50:47 -!- Phantom_Hoover has quit (Ping timeout: 256 seconds).
22:51:15 <kmc> that would be like setting your root window to not a 1px black and white checkerboard
22:51:19 <kmc> (ok even i can't stand that
22:51:28 <elliott> kmc: xdm uses that background by default
22:54:19 <elliott> anyway I guess I will stick to logging in and running startx
22:54:55 <ion> pooping great?
23:01:40 <tswett> Yeah, what's up with those 1px black and white checkerboards?
23:06:49 <olsner> it's the punishment for not setting the background to something better
23:06:55 <olsner> or, not running a program that paints stuff on the root window
23:14:13 <pikhq> elliott: Not really?
23:15:13 <olsner> my first 5-10 years or so of linuxing was logging in as root and running startx :)
23:17:34 <olsner> (but it turned out people on IRC made fun of you if your whois said root, so I stopped doing that)
23:18:21 <ion> So… peer pressure was used for good?
23:18:31 <pikhq> olsner: I vote you fuck with 'em.
23:18:42 <pikhq> Make UID 0 "admin", and your login "root".
23:19:13 <Gregor> Or, make UID 0 "nobody" and your login "root"
23:19:21 <Gregor> That way you fuck with not only IRC users, but yourself.
23:19:52 <olsner> I think for a while I had a differently-named account with uid 0
23:21:06 <pikhq> elliott: I'm pretty sure there's no interest in a new DM because Wayland's coming soon.
23:21:37 <pikhq> I'd bet on a KMS-based getty-ish soon.
23:22:14 <pikhq> Kernel mode-setting.
23:22:35 <pikhq> The fundamental low-level graphics interface on modern Linux.
23:23:58 <elliott> isn't lightdm "new", also?
23:23:58 <elliott> also is X on wayland stable yet, maybe i should be cool and switch
23:24:35 <olsner> I think lightdm is like several years old
23:25:42 <elliott> pikhq: will be "fun" if nvidia/ati never bother implementing kms and hence linux ends up regressing in terms of graphics driver support