←2012-07 2012-08 2012-09→ ↑2012 ↑all
2012-08-01
00:00:04 <itidus21> the hickies made up for it though
00:00:15 <Phantom_Hoover> I looked back and I see itidus21 talking about raspberry fart noises.
00:00:25 <oklopol> made up for what and in what sense_
00:00:26 <oklopol> ?
00:00:34 <itidus21> for how horrible everything else was
00:00:51 <oklopol> Phantom_Hoover: during sex with the 12 yo sister of his friend who he has threesomes with.
00:01:18 <oklopol> itidus21: did everyone think you were cool?
00:01:23 <Phantom_Hoover> ok which words are true there
00:01:25 <Phantom_Hoover> this is important
00:01:36 <oklopol> Phantom_Hoover: sister of his friend
00:01:47 <oklopol> last one i dunno, might be a different friend.
00:02:06 <Phantom_Hoover> Don't scare me like that.
00:02:25 -!- pikhq has joined.
00:02:29 <oklopol> hey i'm still all like wow itidus21 is not a virgin
00:02:44 <kmc> i'm just waiting for zzo to chime in
00:02:50 <itidus21> lol
00:03:05 <oklopol> i mean why does he keep complaining, he has achieved all the meaningful goals in human existence.
00:03:19 <Phantom_Hoover> oklopol, what about climbing Mt. Everest?
00:03:22 <oklopol> oh right
00:03:30 <oklopol> well 50% is still good
00:03:40 <itidus21> what color condoms do you think are best?
00:03:53 <itidus21> do you prefer unprotected sex?
00:04:05 <oklopol> i prefer testing + regular partner
00:04:20 <itidus21> i was guessing what zzo might say
00:04:35 <kmc> heh
00:04:36 <itidus21> :-s
00:04:50 <oklopol> otherwise, transparent. but condoms are horrible deathtraps.
00:04:56 <kmc> how's that
00:05:03 <oklopol> i'm guessing what zzo would answer if this was an alternate universe where he has sex
00:05:21 <oklopol> kmc: they hurt like hell
00:05:23 <kmc> zzo would use some super obscure kind of birth control
00:05:32 <kmc> the gopher:// of birth control
00:05:40 -!- pikhq_ has quit (Ping timeout: 248 seconds).
00:05:48 <kmc> the first time i tried to use one i got it on inside out and it was super uncomfortable and awkward
00:05:51 <itidus21> have you been to santasporngirls.com?
00:06:07 <itidus21> what do you think about using the name santa in a porn website title?
00:06:34 <kmc> i think that there are so many websites like that
00:06:35 <oerjan> just the right thing for a very merry christmas
00:06:38 <kmc> they need to pick some odd names
00:06:42 <oklopol> well sex is about giving. wait let's drop this metaphor.
00:06:46 <mroman> santaporn?
00:06:48 <itidus21> again trying to guess what he might say
00:06:49 <oklopol> i realized who you give to.
00:06:55 <itidus21> but.. i don't mean any offence by it
00:06:57 <kmc> i'm pretty picky about condoms too, but i found a brand which fits well
00:07:03 <itidus21> all in the spirit of the chat
00:07:04 <Phantom_Hoover> itidus21, you've turned the topic of discussion to santaporn.
00:07:05 <Phantom_Hoover> Well done.
00:07:54 <oerjan> now meditate on the design of condoms using category theory
00:08:25 <itidus21> begin with a sheep's intestines
00:08:28 <oklopol> i've tried quite a few, but it gets boring to first hurt like hell for 10 minutes and then lose your erection.
00:08:43 <itidus21> right lads, we're onto something
00:09:44 <oklopol> we are
00:09:52 <oklopol> is that a surjectivity joke
00:10:07 <oerjan> an epic joke
00:10:11 <oklopol> yes
00:10:19 <Phantom_Hoover> Categorically the best.
00:10:56 <Phantom_Hoover> Although oerjan's pun works on a semantic as well as a syntactic basis so I can't really match that.
00:11:08 <oklopol> there must be a lot of puns with epic, no?
00:12:06 <oerjan> yeah they are universal
00:12:12 <oklopol> oerjan's was pretty incredible, but i assume it was not completely original as it is such perfection
00:12:26 <oklopol> :D
00:12:37 <oerjan> D: am i being accused of plagiarism
00:13:21 <itidus21> its better than being accused of being unfunny
00:13:30 <oklopol> suspected.
00:13:31 <oerjan> i guess.
00:13:36 <kmc> gotta sleep now
00:13:42 <kmc> good luck with all your various threesomes
00:13:59 <oklopol> thanks, we'll totally need that
00:15:30 <oklopol> in any case i'm sure it was the best use of epic ever
00:15:51 <oklopol> actually that's such a great exchange i'm going to write a play about it
00:16:26 <itidus21> so this is what happens when there isn't a topic
00:16:39 <oklopol> we might be onto something - epic story about surjectivity
00:16:45 <oklopol> *an
00:17:05 <oklopol> it's about a guy who has sex with his friend and his gf
00:17:19 <oklopol> and a guy who's really into puns and hates clicking
00:17:47 <oerjan> >_<
00:18:01 <oerjan> or was that <_>
00:18:05 <Phantom_Hoover> oklopol, where do I come in?
00:18:08 <oklopol> those are very different
00:18:23 <oerjan> Phantom_Hoover: you're the traumatized bystander
00:18:33 <itidus21> >_< means squinting eyes
00:18:34 <Phantom_Hoover> Oh is this what trauma feels like?
00:18:43 <Phantom_Hoover> BRB heading for the nearest firing range.
00:19:04 <oerjan> ...MAYBE not the best analogy.
00:19:16 <oklopol> >_< is a pretty aggressive smiley
00:19:25 <oklopol> <_> is like okay do whatever you want to me
00:19:54 <oerjan> okay
00:19:54 <itidus21> lmao
00:20:27 <itidus21> you shouldn't let him decide what words mean
00:20:44 <oerjan> smileys are not words
00:21:26 <itidus21> yeah..
00:23:20 <Phantom_Hoover> They're lexemes!
00:26:22 <oklopol> okay i'm going to sleep bye.
00:26:52 <oerjan> to sleep, perchance to scream
00:38:29 -!- Jafet has quit (Quit: Leaving.).
00:41:33 * oerjan realizes from wp frontpage that eastenders is still ongoing
00:42:33 <oerjan> i was younger than most of you when it started!
00:42:52 -!- kwertii has quit (Quit: kwertii).
00:46:55 <oerjan> and most of you weren't born.
00:46:55 <itidus21> your age relative to everyone in the universe pretty much remains constant
00:47:12 <oerjan> *younger than most of you are now
00:47:31 <itidus21> oh
01:26:53 -!- Nisstyre has quit (Read error: Connection reset by peer).
01:28:55 -!- Nisstyre has joined.
01:38:02 -!- oerjan has quit (Quit: leaving).
01:38:55 * Phantom_Hoover wonders why a Norwegian would learn of Eastenders when it launched.
01:39:23 <pikhq> *Really* good TV antenna? :P
01:41:42 <Phantom_Hoover> WTF, Mary Whitehouse got a CBE?
02:01:46 -!- Jafet has joined.
02:37:09 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
02:37:40 -!- david_werecat has quit (Ping timeout: 248 seconds).
02:46:49 -!- pikhq_ has joined.
02:49:56 -!- pikhq has quit (Ping timeout: 248 seconds).
02:58:59 <quintopia> !bfjoust space_hotel http://sprunge.us/hjjg
02:59:11 <EgoBot> ​Score for quintopia_space_hotel: 65.3
03:00:22 <quintopia> !bfjoust a <
03:00:25 <EgoBot> ​Score for quintopia_a: 0.0
03:01:09 -!- []{}\|-_`^ has quit (Read error: Operation timed out).
03:04:56 -!- []{}\|-_`^ has joined.
03:07:35 -!- tswett has quit (Ping timeout: 244 seconds).
03:09:25 -!- tswett has joined.
03:17:08 -!- pikhq has joined.
03:20:30 -!- pikhq_ has quit (Ping timeout: 264 seconds).
03:43:54 -!- kwertii has joined.
03:43:55 -!- kwertii has quit (Changing host).
03:43:55 -!- kwertii has joined.
04:07:54 <Sgeo__> Awesome. Telepathy and some darts helped me catch a and kill a monkey
04:12:06 -!- copumpkin has quit (Ping timeout: 252 seconds).
04:12:39 <Sgeo__> All the rings can either be good or bad?
04:12:44 -!- copumpkin has joined.
04:13:44 -!- MoALTz has joined.
04:13:45 <Sgeo__> Hmm, that might be an oversimplification, the thingy by staff of healing is red, but I assume it could be used on yourself to good effect?
04:14:46 -!- augur has joined.
04:16:20 -!- Jafet has quit (Ping timeout: 248 seconds).
04:16:52 -!- Jafet has joined.
04:27:09 <Sgeo__> Killed by a goblin on level 3.
04:28:21 <Sgeo__> Wondering if I should upload the recording somewhere
04:30:19 <Sgeo__> Ok, recordings are cool
04:31:20 <Sgeo__> There's no way to rewind a recording?
04:31:43 <Sgeo__> Oh, there is, but not using keys to go back one at a time :/
04:32:01 <Sgeo__> Oh, you can, it's just not in the help
04:32:03 -!- MoALTz has quit (Ping timeout: 246 seconds).
04:43:09 -!- augur has quit (Ping timeout: 260 seconds).
05:08:36 -!- Jafet has quit (Ping timeout: 248 seconds).
05:11:32 -!- Jafet has joined.
05:15:53 -!- monqy has joined.
05:31:17 -!- Jafet has quit (Ping timeout: 240 seconds).
05:46:48 -!- Jafet has joined.
05:53:44 -!- Sgeo__ has quit (Read error: Connection reset by peer).
05:56:56 -!- Sgeo has joined.
05:59:08 <Sgeo> lol
05:59:08 <lambdabot> Sgeo: You have 1 new message. '/msg lambdabot @messages' to read it.
05:59:12 <Sgeo> I was playing back a recording
05:59:29 <Sgeo> pressed left arrow
05:59:33 <Sgeo> "You ascend."
05:59:39 <Sgeo> "Unrecognized event type in playback"
05:59:48 <Sgeo> "Playback is out of sync. The file is corrupted."
06:04:03 <quintopia> !bfjoust space_hotel http://sprunge.us/XHid
06:04:09 <EgoBot> ​Score for quintopia_space_hotel: 66.1
06:06:33 -!- Jafet has quit (Ping timeout: 246 seconds).
06:06:36 <quintopia> :\
06:08:44 -!- Jafet has joined.
06:23:01 <quintopia> !bfjoust space_hotel http://sprunge.us/BMSD
06:23:06 <EgoBot> ​Score for quintopia_space_hotel: 66.4
06:23:30 -!- TeruFSX has quit (Ping timeout: 264 seconds).
06:23:50 <quintopia> :'D
06:30:12 -!- tswett has quit (Ping timeout: 248 seconds).
06:34:57 <Sgeo> What does experience and leveling actually do in Brogue?
06:41:20 -!- kwertii has quit (Quit: kwertii).
06:51:33 -!- copumpkin has quit (Ping timeout: 250 seconds).
06:52:12 -!- copumpkin has joined.
06:55:25 -!- asiekierka has joined.
07:07:35 -!- epicmonkey has joined.
07:07:43 -!- tswett has joined.
07:35:48 -!- epicmonkey has quit (Ping timeout: 248 seconds).
07:52:50 -!- Sgeo has quit (Read error: Connection reset by peer).
07:53:22 -!- Sgeo has joined.
08:14:00 -!- azaq23 has left.
08:16:49 <itidus21> Treat corporations like people... and they start acting like people.
08:30:39 -!- pikhq_ has joined.
08:30:44 -!- pikhq has quit (Ping timeout: 248 seconds).
08:39:23 -!- epicmonkey has joined.
08:45:33 -!- nooga has joined.
08:52:55 -!- monqy has quit (Quit: hello).
09:59:33 -!- derdon has joined.
10:24:32 -!- ogrom has joined.
10:25:03 -!- pikhq has joined.
10:25:18 -!- pikhq_ has quit (Ping timeout: 264 seconds).
10:47:28 -!- david_werecat has joined.
10:58:14 -!- david_werecat has quit (Ping timeout: 260 seconds).
11:04:49 -!- monqy has joined.
11:07:19 <kallisti> I have a new goal.
11:07:28 <kallisti> create the most influential esolang in the world
11:07:32 <kallisti> but give it a horrible name
11:07:39 <kallisti> like: cervix
11:07:59 <kallisti> this is essentially what brainfuck is
11:08:04 <kallisti> but I want to take it to the next level.
11:10:16 <monqy> hi
11:42:51 -!- copumpkin has quit (Ping timeout: 246 seconds).
11:43:23 -!- copumpkin has joined.
12:01:39 -!- MoALTz has joined.
12:06:06 -!- Jafet has quit (Ping timeout: 264 seconds).
12:11:40 -!- boily has joined.
12:14:24 -!- Phantom_Hoover has joined.
12:35:20 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
12:59:31 -!- copumpkin has joined.
13:23:26 -!- elliott has joined.
13:43:36 <itidus21> i'm delusional
13:45:11 <monqy> hi
13:45:13 <elliott> hi
13:45:13 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
13:45:48 -!- itidus21 has changed nick to itidus20.
13:47:04 -!- itidus20 has changed nick to itidus21.
13:47:06 <itidus21> hi
13:47:07 <lambdabot> itidus21: You have 1 new message. '/msg lambdabot @messages' to read it.
13:50:59 -!- elliott has left ("Leaving").
14:08:01 <kmc> what's wrong with cervixes
14:08:02 -!- augur has joined.
14:12:37 <fizzie> Most of us wouldn't even be here if it weren't for cervices, presumably.
14:13:22 <kmc> very true
14:13:28 <boily> only "most"? what about the other people?
14:13:32 <kmc> but the same could be said for many other things which would make even worse esolang names
14:14:58 * Sgeo ponders automatic resource management in Tcl
14:15:25 <Sgeo> Current opinion about suckiest thing in Tcl: The lack of said resource management.
14:15:27 <fizzie> boily: Well, for example fungot here has had no direct involvement with one. (Though I suppose indirectly still.)
14:15:28 <fungot> fizzie: literature and fnord fnord
14:15:41 <fizzie> fungot: You're being very cogent there. Congratulations.
14:15:42 <fungot> fizzie: it is not the end of his life. he never willingly read or thought or talked about affairs of state.
14:15:43 <Sgeo> We should have moved on from the days of manual memory management.
14:19:08 -!- elliott has joined.
14:19:13 <elliott> hi
14:19:18 <monqy> wb
14:19:32 <elliott> monqy: i heard Sgeo was giving an impassioned speech & i wanted to be impassioned
14:19:43 <elliott> wanted and also want. my desires remain unchanging
14:20:52 <Sgeo> Anyways, I am mentally going over ideas on how to fix this, beyond the simplistic "make something that behaves like C#'s using", which really isn't helpful in all contexts, only some
14:23:38 <kmc> i'm drinking beer brand beer
14:23:40 <kmc> it's made by lidl
14:24:21 -!- augur has quit (Remote host closed the connection).
14:24:37 -!- augur has joined.
14:40:29 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds).
14:42:34 -!- elliott has left ("Leaving").
14:56:01 -!- augur has quit (Remote host closed the connection).
15:12:01 -!- rvchangue has left ("Leaving").
15:14:54 -!- variable has quit (Ping timeout: 260 seconds).
15:19:54 -!- epicmonkey has quit (Ping timeout: 264 seconds).
15:21:41 <itidus21> working on advanced super mario bros sprite sheet stuff and this freaking sprite sheet lied to me which i was trying to copy off..
15:25:59 -!- variable has joined.
15:25:59 -!- variable has quit (Changing host).
15:25:59 -!- variable has joined.
15:29:23 <mroman> :)
15:29:57 <mroman> You mean sprite sheets with hitboxes, collision boxes and such?
15:32:14 -!- Phantom_Hoover has joined.
15:34:34 <mroman> playing fighting games a little bit more than casual is freaking insane :)
15:43:05 -!- asiekierka has quit (Read error: Connection reset by peer).
15:44:59 -!- asiekierka has joined.
15:48:36 -!- augur has joined.
15:49:37 -!- asiekierka has quit (Ping timeout: 240 seconds).
16:14:06 -!- ogrom has quit (Ping timeout: 255 seconds).
16:16:50 <itidus21> mroman: nah.. i just mean sprite sheets as in a bitmap with multiple sprites presented together
16:22:18 -!- variable has quit (Ping timeout: 264 seconds).
16:49:26 <oklopol> is everyone hating on http://what-if.xkcd.com/ ?
16:50:02 -!- variable has joined.
17:05:46 -!- epicmonkey has joined.
17:09:20 -!- atrapado has joined.
17:25:35 <Gregor> oklopol: I don't hate it.
17:28:56 <oklopol> i found it very entertaining
17:29:07 <oklopol> or have been finding it entertaining so far at least
17:29:44 <mroman> what-if rocks.
17:29:58 <oklopol> why aren't gif animations called videos?
17:30:50 <oklopol> i don't understand the difference
17:33:29 <oklopol> i would understand gif video so that the reader knows it's probably a particularly sucky video
17:38:33 <itidus21> a video has more than one patent per compression scheme
17:39:09 <oklopol> that would be a pretty stupid definition though
17:39:21 <itidus21> in saying this i don't know if gif had multiple patents or not
17:39:33 <itidus21> but maybe
17:40:29 <Gregor> gif no longer has any standing patents.
17:40:47 <oklopol> Gregor: do you have a serious answer to my question?
17:41:01 <oklopol> this is very important, it has been bugging me for at least 5 minutes.
17:41:06 <oklopol> wait 10
17:41:21 <Gregor> “<Gregor> oklopol: I don't hate it.” is my answer.
17:41:43 -!- Gregor has changed nick to MeatyBelle.
17:41:48 <oklopol> to both questions_
17:41:50 <oklopol> ?
17:42:05 <MeatyBelle> What, gif?
17:42:08 <oklopol> yes
17:42:12 <itidus21> im tempted to find out the answer now
17:42:13 <MeatyBelle> Because at some point, somebody decreed that they were called videos.
17:42:14 <MeatyBelle> Erm
17:42:15 <MeatyBelle> *animations
17:42:20 <MeatyBelle> There's no logic to it.
17:42:36 <oklopol> but that's absurd.
17:42:43 <MeatyBelle> *waah*
17:42:59 <oklopol> i can't live in a world where occasionally, things don't make perfect sense but just kind of do.
17:43:27 <itidus21> theres probably a reasonable answer. but its too cold and late to find out
17:44:23 <oklopol> I DON'T UNDERSTAND ARAGHRHGAREHGJAHGJLKRHGASJKDHFSN
17:44:32 <oklopol>
17:45:07 <itidus21> so to recap, it's graphics interchange format, unlike the other formats which are not intended to be interchanged
17:45:43 <MeatyBelle> lol
17:46:02 <mroman> oklopol: Well, that's easy.
17:46:09 <mroman> JA means yes.
17:46:12 <mroman> GAS means gas.
17:46:40 <mroman> REH means deer
17:48:52 <pikhq> itidus21: There were multiple patents on the LZW compression algorithm.
17:49:04 <itidus21> well there goes that theory
17:49:39 <oklopol> does gif do any compression beyond compressing the individual images?
17:49:54 <fizzie> oklopol: The video frames need not be full-frame, that's a form of compression.
17:50:04 <kallisti> True love is like infinite mutual recursion. Unconditional.
17:50:14 <fizzie> oklopol: You can have a mostly empty frame that gets pasted on top of the previous.
17:50:19 * kallisti adds to list of corny things to say to future wife.
17:50:31 <MeatyBelle> s/future/imaginary/
17:50:33 <oklopol> isn't that also a big part of avi's compression
17:50:47 <itidus21> its also how games work!
17:50:48 <oklopol> + the fourier stuff i guess
17:50:53 <fizzie> oklopol: "AVI" is just a container, so that question doesn't have an answer.
17:50:55 <MeatyBelle> “avi's compression”
17:50:56 <MeatyBelle> X_X
17:51:01 <oklopol> umm right.
17:51:08 <oklopol> mpeg i guess
17:51:36 <fizzie> Anyway, "real" video formats do "that kinda thing" too. And stuff like motion compensation, so you can even keep things from moving objects.
17:54:48 <oklopol> right
17:54:53 <itidus21> what i have learned is that the most complex element of an image is the underlying 2d bitmap
17:55:12 <pikhq> oklopol: Which format? The Moving Picture Experts Group does lots of formats. :)
17:55:18 <itidus21> abstract bitmap patterns
17:55:24 <oklopol> by the underlying 2d bitmap of an image, do you mean the image?
17:55:32 <oklopol> pikhq: yeah fuck you :D
17:55:59 <itidus21> i don't know what i mean... i guess that in vector graphics you don't need a bitmap at all
17:56:30 <itidus21> eg.. a mechanical monitor could have a balloon device which fills with a certain amount of air to render a sphere
17:56:44 <itidus21> .. (what?) @_@
17:56:46 <MeatyBelle> MPEG-1 part 2, MPEG-2 part 2, MPEG-4 part 2, MPEG4 H.263, MPEG4 H.264 off the top of my head.
17:57:55 <oklopol> i'm referring to one of those or something else.
17:58:06 <oklopol> obviously.
17:58:06 <itidus21> by mechanical monitor i mean a more generalized attempt at creating an image by using material components
17:58:44 <itidus21> in other words a hollow tv without any glass perhaps with a man hiding behind the curtain
17:59:05 <itidus21> ..... im just gonna let that go
17:59:41 <oklopol> no no i think you're epic with something as your codomain.
18:02:06 <oklopol> i think for each in something there's something in you that has it as its image.
18:02:56 <oklopol> wait that's wrong, since you're the mapping
18:03:05 <fizzie> oklopol: MPEG frames may also depend not only on the previous frame, but the next frame too. (You have some completely individually compressed I-frames here and there; some P-frames that are stored as the diff from the previous (P- or I-)frame after applying motion vectors; and some B-frames which can use both the previous and next (P- or I-)frame as anchors.)
18:03:42 <oklopol> I THINK THAT IF SOMETHING WERE A FULL SHIFT AND YOU WERE A CONTINUOUS SHIFT-COMMUTING FUNCTION THEN THERE WOULD NOT EXIST TWO LEFT- AND RIGHT-ASYMPTOTIC POINTS x AND y SUCH THAT YOU'RE NONINJECTIVE ON THE CARDINALITY 2 SET THEY DEFINE
18:07:04 <oklopol> i think if you were a function on reals such that for each open interval I and point mapping to it there were both a left- and right-open interval around x which which mapped inside I then there would be a preimage for all primes which have 7 digits or more and their negations
18:09:29 <oklopol> why doesn't anyone ever join my math parties :(
18:10:04 <oklopol> i think you're all about surjectivity jokes when i'm not here but when i come it's like shhhhhh let's talk about kernels and shit hahaha
18:10:23 <oklopol> you're mean and i need to go to the shoppe to buy something to live about.
18:11:32 <fizzie> You, uh, know there are public logs that you could use to verify your conspiracy theory?
18:11:50 <oklopol> fizzie: i think i've read about those on an operating systems course.
18:11:53 <MeatyBelle> Unless they're part of the conspiracy.
18:13:08 <oklopol> i think you filter them by ip, when i was looking at them in russia i'm pretty sure i saw some surjectivity jokes, but magically there's none now.
18:15:27 <oklopol> what's the name of the concept in measure theory where you have a result that holds for almost all and you prove the same thing for all? i guess this is mostly for oerjan.
18:15:47 <itidus21> i merely realized i was wrong
18:16:02 <itidus21> and spun off in some mad direction
18:16:31 <oklopol> i don't think you were wrong
18:17:06 <oklopol> INSTEAD I THINK IF YOU WERE AN argh shoppe tyme
18:17:33 <itidus21> well something i'm only recently learning is that objects intended to be rendered can be described without any reference to pixels
18:19:39 -!- asiekierka has joined.
18:22:05 -!- ogrom has joined.
18:25:59 -!- ais523 has joined.
18:27:39 <soundnfury> umm, what on earth is oklopol on about?
18:28:31 <soundnfury> it'd be a lot more comprehensible if he used some notation
18:29:04 <oklopol> okay
18:29:46 <oklopol> so take X = S^Z where S is a finite set with the discrete topology, Z is the integers, and S^Z has the product topology
18:30:05 <oklopol> and let's assume itidus21 is a function from this space to itself with two properties
18:30:09 <oklopol> 1) it's continuous
18:30:13 <soundnfury> um, how can you have a product topology on a power set?
18:30:20 <soundnfury> oh wait I see
18:30:22 <oklopol> it's an infinite product
18:30:28 <soundnfury> the iterated-product topology, sure
18:31:38 <soundnfury> um, isn't that product topology also discrete?
18:31:53 <oklopol> whatever you like to call it, in any case the topology with base "the coordinates n_1, ..., n_k have the symbols s_1, ..., s_k \in S" is a base
18:32:02 <oklopol> it's not! in fact it is perfect
18:32:32 <oklopol> that is, for any point x in there you will find points arbitrarily close (in any open set U around x, you find a point other than x)
18:33:23 <oklopol> this is because an open set is a superset of some finite intersection V of sets of the base, and each such set V contains uncountably many points or none
18:33:36 <oklopol> because you only say something about finitely many coordinates
18:33:47 <oklopol> if x satisfies that, just change the tail however you like.
18:33:57 <oklopol> the right or left tail
18:34:33 <oklopol> 2) let \sigma be the left shift map, that is, \sigma(x)_i = x_{i + 1}
18:34:46 <oklopol> so the ith coordinate of \sigma(x) is the i+1th coordinate of x
18:35:02 <oklopol> then, itidus commutes with \sigma
18:35:40 <oklopol> now, this kind of spoils the fun, but then itidus is just a cellular automaton.
18:36:07 <oklopol> further, we assume that if you take two points x and y with the following properties
18:36:16 <oklopol> well property really
18:36:40 <oklopol> for sufficiently large |i|, we have x_i = y_i, but x != y
18:37:19 -!- atrapado has quit (Quit: Leaving).
18:37:28 <oklopol> we call such points asymptotic (they are "asymptotically" the same both left and right)
18:37:58 <oklopol> we assume that for such points x and y, itidus will map them to distinct points
18:38:01 -!- itidus21 has left ("Leaving").
18:38:07 <oklopol> erm
18:38:45 <oklopol> sorry, this last part, that if two points are asymptotic then they're mapped to distinct points, was not an assumption, i now realize that my point was only to claim that itidus is surjective
18:39:06 <oklopol> so i'm claiming that if itidus were a CA, then he would map two such points to distinct points.
18:39:17 <oklopol> because that's a characterization of surjectivity.
18:40:05 <oklopol> and because we defined the full shift (X) as "something" for the purpose of my claim, itidus is onto something.
18:40:17 <soundnfury> yeah, you know what?
18:40:30 <oklopol> well what?
18:40:36 <soundnfury> this kind of joke isn't funny.
18:41:45 <oklopol> sorry i forgot you were that music dude
18:41:45 <soundnfury> besides, no-one says "onto" these days, we're all Bourbakistes
18:42:10 <soundnfury> hey, I'm a mathmo, I find maths jokes funny
18:42:20 <soundnfury> but that was just too tortured
18:42:37 <oklopol> people don't say onto?
18:42:53 <soundnfury> well, not much
18:44:18 <soundnfury> now, a /funny/ onto/surjective joke would have been something much shorter, like "you have a right inverse with domain something"
18:44:40 <soundnfury> it's still a geeky maths pun, but it doesn't take much effort to get it
18:44:42 <oklopol> three out of five most recent arxiv entries use it
18:45:20 <soundnfury> oklopol: ok so actually I meant "I don't use it and I think it's shite and confusing"
18:45:35 <soundnfury> though it's really the equivalent terms for injective and bijective that are shite and confusing
18:45:51 <oklopol> those are shit, yes
18:46:05 <oklopol> one-to-one map and one-to-one correspondence
18:46:07 <soundnfury> when I hear "injective" I know exactly what it means. When I hear "one-one", fuck knows
18:46:07 <oklopol> yeeeah.
18:46:19 <oklopol> but onto is pretty handy imo.
18:46:40 <soundnfury> "onto" is easy to miss, though, because in natural language it means something else
18:47:08 <soundnfury> if it weren't specifically defined, "a function onto X" would just mean a function with codomain X
18:47:11 <oklopol> i disagree
18:47:41 <soundnfury> and hence it's possible not to notice that someone said their function was surjective
18:48:04 <oklopol> in theory, maybe
18:48:31 <oklopol> hasn't happened to me. and i make more reading errors than you can even imagine.
18:48:44 <oklopol> because onto means surjective
18:49:44 <soundnfury> Is English your native language? "Oklopol" sounds scandinavian, so I'm guessing not
18:50:27 <oklopol> "you have a right inverse with domain something" that's not funny, it isn't even a reference to a theorem
18:50:29 <soundnfury> that might be why you're able to learn technical vocabulary without problems when it conflicts with common usage
18:50:47 <soundnfury> why does it have to be a reference to a theorem?
18:50:53 <oklopol> otherwise it's trivial
18:51:03 <oklopol> a mathematical fart joke
18:51:11 <soundnfury> you know what? I've just stopped caring, because there's some more Olympics on
18:51:23 <soundnfury> ttfn
18:51:27 -!- Taneb has joined.
18:51:37 <Taneb> Hello!
18:52:13 -!- oerjan has joined.
18:52:32 <oklopol> yeah fuck you too
18:52:52 <oklopol> erm, to soundnfury, not to Taneb :D
18:53:09 <Taneb> :D
18:54:19 <soundnfury> lo Taneb
18:54:55 <oklopol> "soundnfury: that might be why you're able to learn technical vocabulary without problems when it conflicts with common usage" yes, that must be why the finnish version was also so easy to internalize. finns are just that much smarter i guess.
18:55:32 <soundnfury> is the finnish word for "onto" a bit longer, perhaps?
18:55:58 <oerjan> <oklopol> what's the name of the concept in measure theory where you have a result that holds for almost all and you prove the same thing for all? i guess this is mostly for oerjan.
18:56:02 <oerjan> no f idea
18:56:15 <oklopol> something about rigidity i think
18:56:17 <oklopol> okay
18:57:05 <oklopol> "<soundnfury> is the finnish word for "onto" a bit longer, perhaps?" it's the -lle suffix
18:57:42 <soundnfury> prepositions are suffices in finnish?
18:57:49 <oerjan> the finnish don't have a word for onto, they have a case, obviously. the suffix is -atukkontiappalaansiessut/-ätykköntiäppäläänsiessyt, depending on vowel harmony.
18:57:55 <soundnfury> (is it grammatical/morphological case?)
18:58:15 <soundnfury> oerjan: haha lol
18:58:38 <oerjan> pay no attention to oklopol's lying grammar
18:58:47 <soundnfury> what, if anything, does that suffix really mean?
18:58:55 <Taneb> Isn't Finnish the one with 20000+ verb forms?
18:58:56 <oklopol> yeah we have mostly cases. oerjan is confusing onto with the case for "having a beer with x in a bar after beating your wife".
18:59:39 <oklopol> soundnfury: -lle means onto something
19:00:08 <oklopol> well often you use just on when we use -lle, it's very common.
19:00:09 <soundnfury> no, I wanted to know what oerjan's atukkontiablablablallantysiliogogogoch meant
19:01:02 -!- ogrom has quit (Quit: Left).
19:01:03 <oerjan> i cannot prove it means anything, although no one can prove i am lying because i followed the vowel harmony rules
19:01:54 -!- epicmonkey has quit (Ping timeout: 264 seconds).
19:01:56 <oerjan> soundnfury: you may want to replace that y with u for the same reason.
19:01:59 <oklopol> also annoyingly enough that's very good pig finnish, i can't point anything impossible out.
19:02:28 <oerjan> *MWAHAHAHAHALAISET*
19:02:54 <oklopol> the citizens of evil laughter.
19:04:18 <oklopol> oerjan: wanna join me in creating great surjectivity comedy
19:04:42 <oerjan> i'm sorry i already have used up my epic quest quota
19:04:50 <oklopol> :(
19:06:59 <oerjan> * Phantom_Hoover wonders why a Norwegian would learn of Eastenders when it launched. <-- it is possible it took a few years to get broadcast here, although i doubt it was more than a couple
19:08:17 <oerjan> 1987, says http://no.wikipedia.org/wiki/%C3%98stkantfolk
19:09:39 <Taneb> "stkantfolk" sounds a lot more awesome than Eastenders.
19:09:55 <oklopol> it says it started broadcasting in finland after 206 seasons.
19:10:04 <Taneb> How's pronounced, again?
19:10:19 <oklopol> as an , obviously
19:10:25 <oerjan> lower front rounded
19:10:32 <oerjan> ipa is /ø/ iirc
19:11:05 <oklopol> basically the "a" in "a silly norwegian letter"
19:11:43 <oerjan> no:Østkantfolk ~ en:East side people
19:12:27 <oerjan> Østkanten is a concept in the norwegian capital Oslo, it's the poorer part with traditionally the industry
19:13:21 <oerjan> i believe this is the same in many cities around the world, because of prevalence of west-east winds and the fact rich people don't like to breathe smog.
19:13:44 <Taneb> Yeah, it's even the case in Hexham :(
19:13:51 <Taneb> (I'm in the east end
19:13:52 <Taneb> )
19:13:57 <oklopol> not in turku, we're too small to have sides
19:15:04 <Taneb> If Hexham can have sides, Turku can have sides
19:15:12 <oklopol> we're smaller
19:15:13 <oerjan> i recently saw a chart of amphetamine use in european cities, i remember the top 3 were Helsinki, Turku and Oslo
19:15:22 <oklopol> woohoo!
19:15:26 <oerjan> not quite sure of the order of the first two
19:15:41 <Taneb> Ahead of Amsterdam, Birmingham, and Glasgow?
19:15:43 <Taneb> Wow
19:16:27 <oerjan> oh this was a chart based on analyzing the sewers and dividing by population
19:17:16 <oerjan> it confused me a bit because the newspaper article then went on to say Oslo was top in Europe
19:17:32 <Taneb> Maybe they thought Finland was in South America?
19:17:37 <oerjan> most likely.
19:18:48 <oerjan> it is not entirely unlikely they didn't check every city
19:19:15 <oklopol> i know a girl 700 up north who's tried it, but i have never even heard of amphetamine use in turku outside statistics
19:19:19 <oklopol> 700 km
19:19:44 <oklopol> so how much is much exactly?
19:19:45 <oerjan> <itidus21> Treat corporations like people... and they start acting like people. <-- *psychopatic people hth
19:23:32 <Taneb> Psychopathic people who never return my christmas cards :(
19:24:55 <oerjan> <mroman> REH means deer <-- REH, a deer, a female deer, DOH, a drop of golden sun...
19:26:39 -!- elliott has joined.
19:26:47 <elliott> fizzie: Deewiant: What's a good C++ source reformatter?
19:26:53 <elliott> Indentation but also things like f( x ) vs. f(x).
19:26:56 <oerjan> i'm suddenly depicting someone getting _very_ confused during the translation of sound of music to/from german
19:27:54 <shachaf> f(\n\tx\n)
19:28:17 <elliott> kmc may also apply.
19:28:25 <elliott> By which I mean: reply.
19:28:41 <oklopol> surely you mean supply
19:31:23 <soundnfury> sed :P
19:34:23 <monqy> : )
19:35:09 * oerjan cannot find any german version of the song :(
19:35:25 <oerjan> i mean, don't the germans dub _everything_?
19:35:46 <oerjan> i guess they might not like the film over there, given the subject.
19:42:15 * oerjan wonders if other people really have as much inner monologue as in today's xkcd
19:43:10 <oerjan> while having conversations, especially
19:46:30 -!- elliott has quit (Ping timeout: 246 seconds).
19:53:29 -!- elliott has joined.
20:15:13 -!- adac has joined.
20:26:06 -!- asiekierka has quit (Quit: Wychodzi).
20:44:03 <Taneb> @ping
20:44:03 <lambdabot> pong
20:44:54 <Taneb> You took your time :(
20:46:16 <elliott> i apologise
20:46:32 <shachaf> helliott
20:47:11 <fizzie> Taneb: As seen from here: 23:44:03 <Taneb> @ping 23:44:03 <lambdabot> pong
20:48:03 <Taneb> The "You took your time :(" was addressed at the pipes between here and Freenode
20:48:14 <Taneb> Specifically, the pipe between my computer and my router
20:55:25 <oklopol> oerjan: do you?
20:56:19 <elliott> `welcome adac
20:56:30 <HackEgo> adac: 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:56:43 <mroman> `welcome mroman
20:56:46 <HackEgo> mroman: 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:56:59 <mroman> I needed that.
20:57:03 <adac> hi elliott :) yeah i was looking for esoterica I guess ;)
20:57:29 <mroman> The only channel named #esoteric where you can't buy books about weird religions.
20:58:19 <elliott> you can buy things on irc?
20:58:33 <mroman> Yeah, sure.
20:58:46 <Taneb> elliott, would you like to buy a copy of Now 76?
20:58:47 <mroman> Just give me your credit card number and the security code for online shopping.
20:59:08 <oerjan> oklopol: i don't think so, no.
20:59:29 <elliott> Taneb: yes
20:59:43 <Taneb> elliott, tough, because I don't own any I can sell you :(
20:59:49 <Taneb> mroman might
20:59:49 <elliott> im sobbing
20:59:58 <Taneb> Go badger mroman
21:00:19 <oerjan> but then i've been training to reduce my inner monologue. although i don't recall doing it during conversations before either.
21:01:04 <Taneb> I think I have an internal monologue
21:01:17 <Taneb> But conversations distract me so I don't hear it then?
21:01:29 <Taneb> But sometimes it gets so loud it comes out my mouth
21:02:28 <mroman> I can sell you MiniSAS-Cables.
21:04:33 <mroman> And why would I have Now 76
21:04:39 <mroman> I have a CD collection though
21:04:43 <mroman> but that's not my style of music.
21:07:54 <mroman> Train is still active?
21:08:32 <Sgeo> I should try writing a general using proc for Tcl
21:09:09 <Taneb> I got a train only two days ago
21:09:12 <mroman> Why are you use "the cacky language"?
21:09:19 <mroman> *ing-form
21:09:26 <mroman> Taneb: The band "Train".
21:10:02 -!- elliott has left ("Leaving").
21:10:04 <Sgeo> It's a language that seems to have the tools to make it into anything I want, but not enough in actual existence of decent stuff
21:10:13 <Sgeo> I think elliott left because of me :/
21:11:16 <mroman> You know... the "tell me did you sail across the sun did you make it to the milky way" kind of train
21:12:16 -!- pikhq_ has joined.
21:12:57 <mroman> Not to be confused with "I took the midnight train"
21:13:04 <mroman> Because taking the midnight train is a journey.
21:15:16 -!- pikhq has quit (Ping timeout: 255 seconds).
21:18:34 <Sgeo> Unlike many languages I look at, I actually wrote a program to do something useful in Tcl.
21:18:46 <Sgeo> Sadly, it's very riddled with global variables.
21:20:49 <kallisti> Sgeo: learn perl. you will have a similar experience
21:20:53 <kallisti> possibly with fewer global variables.
21:21:19 <mroman> Learn Burlesque
21:21:26 <mroman> It doesn't have variables.
21:22:05 <Taneb> I took a midnight train going anywhere
21:22:18 <Taneb> Do not cease to believe!
21:22:27 <mroman> So you're just a small town girl?
21:22:40 <mroman> or Just a city boy?
21:24:04 <Taneb> You're not half wrong
21:24:19 <oerjan> half not even wrong
21:28:57 <Taneb> Is it weird that when people misspell my first name it really annoys me, even though I don't care how they spell my surname that much?
21:30:32 -!- MoALTz has quit (Quit: Leaving).
21:30:42 <kallisti> my first name is Adam. No one misspells that ever. So I just have to pick something else to get mad at, such as misspelling my last name.
21:31:15 <Taneb> My first name is Nathan, which contains a schwa
21:31:26 <mroman> Schwa?
21:31:39 <kallisti> uhhh
21:31:49 <oerjan> thus it can only be spelled correctly in hebrew
21:31:52 <Taneb> mroman, short, lazy vowel sound
21:31:58 <Taneb> oerjan, where it is a verb :(
21:32:01 <coppro> ə
21:32:11 <Taneb> Nath'n
21:32:20 <mroman> So it's not pronounce englishly?
21:32:25 <Taneb> Oh, it is
21:32:36 <coppro> mroman: schwa is the name of the sound
21:32:37 <Taneb> It's actually the most common vowel in speech
21:32:47 <oerjan> this sathan guy is so sensitive to spelling
21:32:48 <mroman> I would pronounce it well
21:32:53 <mroman> neyfn
21:32:53 <coppro> it is denoted ə in linguistics, where every sound needs a distinct notation
21:32:53 -!- augur has quit (Remote host closed the connection).
21:33:01 <mroman> or neythn actually
21:33:21 <Taneb> My surname's obscure even in its native Netherlands
21:34:21 <oerjan> how is the supervillain of bad kerning coming up?
21:34:32 <Taneb> Poorly
21:34:59 <oerjan> yeah doctorates take time
21:34:59 <Taneb> My plan to be elected president is hindered due to the lack of republics I am native to
21:35:00 <coppro> I would pronounce Nathan as neɪðɪn
21:35:14 <Taneb> The doctorate is a long way off
21:35:17 <coppro> Taneb: you ended that sentence with a proposition
21:35:26 <Taneb> Don't get me STARTED with minions
21:35:29 <oerjan> Taneb: you'll just have to get that nice old lady to retire first
21:35:45 <oerjan> i hear she does some mean parachuting
21:36:00 <oklopol> don't get me excited like that, i thought Taneb was talking about his university studies :(
21:36:22 <oerjan> oklopol: oh but he _is_. supervillainy is an advanced subject.
21:36:59 <Taneb> oklopol, I'm beginning to apply for undergrad studies, in Maths and Computer Science.
21:37:21 <oklopol> oh you study supervillainy at university? i thought it was a vocational school kinda thing.
21:37:32 <oklopol> you are? that's awesome which uni
21:38:33 * oerjan locks coppro into a padded cell out of which he will not get
21:38:51 <coppro> yay!
21:39:11 <oerjan> sadly he still has internet access.
21:39:59 <oerjan> Taneb: i suggest starting with onions and building up from there.
21:41:25 <oerjan> maybe you could be a culinary supervillain.
21:42:01 <coppro> Taneb: cool
21:42:53 <oerjan> http://en.wikipedia.org/wiki/Chef#Titles doesn't show up anything really suitable, though
21:44:04 <MeatyBelle> The pants, the pants, I want them all!
21:44:33 <oerjan> argh he's progressed from the hats!
21:45:33 <mroman> I thought that was Gregor?
21:45:33 <oerjan> MeatyBelle: so i take it choosemypants.com is up next?
21:45:47 <mroman> or is he Gregor but disguised?
21:45:48 <Taneb> oklopol, trying for Oxford. Success is unlikely.
21:45:53 <oklopol> how so
21:46:32 <oerjan> invent a supergenius serum first.
21:46:51 <oklopol> i thought about oxford at some point, would've been cool to study in a university people konw.
21:46:53 <oklopol> know
21:47:04 <Taneb> Grade requirements
21:47:13 <oklopol> then i wouldn't have to have good publications, i could just tell people i come from oxford.
21:47:20 <MeatyBelle> oerjan: I've got choosemytie.com !
21:47:28 <oerjan> wow
21:47:58 <oklopol> what kind of grade requirements?
21:48:08 <oerjan> it seems a little under construction.
21:48:24 <coppro> Taneb: you should come across the pond!
21:48:43 <coppro> Taneb: you've got one more year of secondary school?
21:49:03 <oklopol> oerjan: why is it a wow
21:49:34 <oklopol> oh
21:49:36 <oklopol> tie!
21:49:38 <oklopol> not hat.
21:49:45 <oklopol> i was kinda wondering how you didn't know
21:49:46 <Taneb> coppro, yeah
21:49:51 <oerjan> hm how does Tenzo van Doom sound
21:49:54 <coppro> Taneb: what are your grades like?
21:50:22 <MeatyBelle> <oerjan> it seems a little under construction. // I have no intention of actually making it.
21:50:29 <Taneb> A* in maths, further maths, B-A in Latin, Ancient History
21:50:29 <oklopol> i had horrible grades in secondary school
21:50:55 <oklopol> A*?
21:51:02 <Taneb> A*.
21:51:06 <oklopol> what's that
21:51:08 <Taneb> The best grade imaginable!
21:51:33 <coppro> Taneb: you should definitely come here then :P
21:51:41 <coppro> I promise we teach real math
21:51:55 <oklopol> coppro: are you at oxford or what is come?
21:52:12 <Taneb> Yeah, British Government introduced it because too many people were getting A's, Universities and Employers were getting confuzzled
21:52:22 <oklopol> haha
21:52:31 <oklopol> did they know it's a search algorithm
21:52:32 <coppro> university of waterloo
21:52:41 <coppro> Taneb: ...
21:52:51 <coppro> Taneb: your government is brilliant at solving the actual problem
21:53:17 <MeatyBelle> oerjan: I was referring to http://solidcolorpants.com/ by the way, what with pants.
21:53:21 <oklopol> yeah, too many smart people.
21:53:31 <oklopol> they should teach worse instead.
21:53:39 <coppro> they should just grade harder
21:53:48 <coppro> odds are good the system has gotten easy over the years
21:53:52 <coppro> change the failing grade if you have to
21:54:04 <coppro> but the range of available grades should still be representative
21:58:11 <Taneb> Canada...
21:58:12 <Taneb> Hmm
21:58:13 <oklopol> my math average was at most B in secondary school, perhaps closer to C
21:59:01 <Taneb> I had to stop myself saying "eh" instead of "hmm". But the "eh" wasn't meant to be making fun of Canadians or playing on the stereotypes?
21:59:09 <Taneb> I'm sure it's a different eh
21:59:35 <oerjan> just a stray schwa, probably
21:59:47 <Taneb> Nah, this has more stress on it
21:59:54 <Taneb> Closer to an ay
22:01:25 <oklopol> i hear canadians are cool
22:01:37 <oerjan> deep frozen
22:01:58 <Taneb> I'm further north than every major Canadian city except Edmonton, I think
22:02:16 <oklopol> oh well it's useless then
22:03:16 <Taneb> But we get the warm weather from the gulf stream
22:04:42 <Taneb> coppro, what universities do you recommend I look at for Maths?
22:07:59 -!- augur has joined.
22:08:06 <oklopol> come to turku, we can work together :DASASD
22:08:27 <oklopol> why do i keep suggesting that, it's still not really possible.
22:10:29 -!- Taneb has quit (Quit: Leaving).
22:15:17 -!- stanley has joined.
22:31:51 <coppro> Taneb: In Canada? Simon Fraser, Toronto, and Waterloo of course
22:31:54 <coppro> (hint: Waterloo)
22:33:39 * oerjan visited the math department of waterloo in october 1995 or thereabouts
22:34:10 <oerjan> or wait, "fields institute"
22:35:13 <oerjan> hm it says it was relocated to toronto in the same year
22:35:21 <oerjan> s/it/wikipedia/
22:35:45 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:36:02 <oerjan> maybe it was 1994 we went there
22:38:23 <oerjan> also waggie was at the compsci department there. although i doubt any agora players here have been long enough to remember him.
22:39:58 <oerjan> or maybe _that_ was the math department.
22:42:42 <oklopol> why were you there?
22:43:15 <oklopol> 1994 was roughly when i decided to become a programmer
22:43:46 <oklopol> although i will sleep nough.
22:52:10 <oerjan> there was a conference on C*-algebras and stuff
22:53:37 -!- copumpkin has joined.
23:18:39 -!- david_werecat has joined.
23:22:10 -!- itidus21 has joined.
23:23:44 -!- nooga has quit (Ping timeout: 260 seconds).
23:45:01 -!- epicmonkey has joined.
23:53:56 -!- adac has quit (Ping timeout: 248 seconds).
23:55:15 -!- derdon has quit (Remote host closed the connection).
2012-08-02
00:10:46 -!- MeatyBelle has changed nick to Gregor.
00:29:38 <quintopia> :\
00:30:19 <quintopia> david_werecat: hi :\
01:13:56 -!- pikhq_ has quit (Ping timeout: 248 seconds).
01:15:37 -!- ais523 has quit.
01:22:12 -!- oerjan has quit (Quit: Good night).
01:31:54 -!- variable has quit (Ping timeout: 264 seconds).
01:54:05 -!- pikhq has joined.
01:56:14 -!- variable has joined.
02:03:29 -!- Jafet has joined.
02:09:40 -!- epicmonkey has quit (Read error: Operation timed out).
02:11:15 -!- variable has quit (Ping timeout: 240 seconds).
02:41:24 <quintopia> !bfjoust space_hotel http://sprunge.us/UKhG
02:41:36 <EgoBot> ​Score for quintopia_space_hotel: 66.6
02:43:53 <quintopia> still not as high as when i let counterpoke beat me :P
02:45:19 -!- david_werecat has quit (Ping timeout: 244 seconds).
02:47:42 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:05:08 -!- variable has joined.
03:06:34 -!- ssue has quit (Ping timeout: 246 seconds).
03:07:12 -!- Jafet has quit (Quit: Leaving.).
03:07:45 -!- david_werecat has joined.
03:12:14 <david_werecat> quintopia: Wow, the new bfjoust competitor beats everything.
03:33:43 -!- Yonkie has joined.
03:36:55 -!- Jafet has joined.
03:41:25 -!- monqy has quit (Quit: hello).
03:43:42 -!- ssue has joined.
03:48:39 -!- TodPunk has quit (Read error: Connection reset by peer).
03:48:53 -!- TodPunk has joined.
03:55:07 -!- variable has quit (Ping timeout: 240 seconds).
04:25:21 <tswett> Gregor: I figure you might appreciate this. http://soundcloud.com/tswett/cakesnap-wip-1
04:27:42 -!- jix has quit (Ping timeout: 264 seconds).
04:27:48 -!- jix has joined.
05:05:56 -!- pikhq has quit (Ping timeout: 248 seconds).
05:06:01 -!- pikhq_ has joined.
05:10:40 -!- pikhq has joined.
05:10:58 -!- pikhq_ has quit (Ping timeout: 246 seconds).
05:14:35 -!- elliott has joined.
05:14:45 <elliott> kmc: from today's HWN quotes section: "jmcarthur: we calmly talk trolls to death"
05:14:48 <elliott> thought u'd apreciate
05:14:49 -!- elliott has left ("Leaving").
05:30:49 -!- elliott has joined.
05:31:13 <elliott> So I hear Volume 4, Pre-fascicle 6A is out.
05:32:16 -!- variable has joined.
05:39:57 -!- adac has joined.
05:44:04 -!- Phantom_Hoover has joined.
05:46:29 -!- mikel34 has joined.
05:47:04 -!- mikel34 has left.
05:48:19 -!- Jafet has quit (Ping timeout: 252 seconds).
05:48:34 -!- Jafet has joined.
06:02:07 -!- elliott has quit (Ping timeout: 240 seconds).
06:15:07 -!- variable has quit (Ping timeout: 240 seconds).
06:21:50 -!- asiekierka has joined.
06:52:56 -!- ais523 has joined.
06:55:10 <Sgeo> I am going to test something, and to test it requires disconnecting briefly. I am not having network troubles, and I hope this does not bother anyone.
06:57:19 <Phantom_Hoover> oh thank god
06:57:20 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
06:57:45 <Phantom_Hoover> the idea of being without Sgeo for any length of time without knowing why is simply unbearable.
06:58:11 <Phantom_Hoover> also apparently holy shit bill dos died
06:58:29 -!- Sgeo_ has joined.
06:59:06 <Phantom_Hoover> hey Sgeo_, the name bill dos mean anything to you
06:59:34 <Sgeo_> As in "Bill Dos" or "Bill" does mean anything?
07:00:08 <Phantom_Hoover> The former.
07:00:30 -!- Sgeo has quit (Ping timeout: 250 seconds).
07:01:17 <Phantom_Hoover> The only hits on Google are people with the name 'Bill Dos <something>', articles about Bill Gates and one South African "computer academy".
07:01:49 <Phantom_Hoover> Oh hmm it may have been Bill Doss.
07:06:01 <Phantom_Hoover> @tell elliott FFS if you're going to notify me of the deaths of obscure musicians at least spell their names right.
07:06:02 <lambdabot> Consider it noted.
07:12:26 -!- adac has quit (Ping timeout: 244 seconds).
07:20:50 <ais523> `quote expensive health food
07:21:01 <HackEgo> 130) <fungot> ais523: elf corpses are not considered expensive health food. but the most expensive.
07:23:18 -!- Nisstyre has quit (Read error: Connection reset by peer).
07:24:43 -!- adac has joined.
07:26:55 -!- Sgeo_ has quit (Ping timeout: 240 seconds).
07:44:56 -!- Taneb has joined.
07:45:06 -!- Nisstyre has joined.
07:45:07 <Taneb> Hello
07:57:12 -!- Sgeo has joined.
08:05:55 -!- Taneb has quit (Ping timeout: 240 seconds).
08:07:19 <kmc> Ubuntu 12.04 "Mrki Medvjed"
08:19:05 -!- david_werecat has quit (Ping timeout: 244 seconds).
08:19:27 -!- nooga has joined.
08:21:23 -!- Sgeo_ has joined.
08:22:35 -!- Sgeo has quit (Ping timeout: 240 seconds).
08:29:41 -!- epicmonkey has joined.
08:36:22 -!- Taneb has joined.
08:43:12 -!- azaq23 has joined.
08:43:20 -!- azaq23 has quit (Max SendQ exceeded).
08:43:46 -!- azaq23 has joined.
08:46:15 -!- pikhq has quit (Remote host closed the connection).
08:46:31 -!- pikhq has joined.
08:48:03 -!- aloril has quit (Ping timeout: 244 seconds).
08:49:11 -!- aloril has joined.
08:51:42 -!- tswett has quit (Ping timeout: 264 seconds).
08:53:36 -!- tswett has joined.
08:57:07 -!- nooga has quit (Ping timeout: 240 seconds).
08:58:07 -!- nooga has joined.
08:59:23 -!- SimonRC has quit (Ping timeout: 244 seconds).
09:00:43 <Sgeo_> Is it just me, or is the bus factor of the current Common Lisp ecosystem ONE?
09:02:00 <Sgeo_> AFAIK, Xach is the only maintainer of quicklisp
09:08:41 -!- Yonkie has quit (Ping timeout: 244 seconds).
09:10:19 -!- Jafet has quit (Quit: Leaving.).
09:11:19 -!- ais523_ has joined.
09:14:37 -!- esowiki has joined.
09:14:42 -!- esowiki has joined.
09:14:42 -!- esowiki has joined.
09:15:17 -!- esowiki has joined.
09:15:22 -!- esowiki has joined.
09:15:22 -!- esowiki has joined.
09:15:58 -!- esowiki has joined.
09:16:02 -!- esowiki has joined.
09:16:02 -!- esowiki has joined.
09:16:38 -!- esowiki has joined.
09:16:42 -!- esowiki has joined.
09:16:42 -!- esowiki has joined.
09:17:18 -!- esowiki has joined.
09:17:22 -!- esowiki has joined.
09:17:22 -!- esowiki has joined.
09:17:58 -!- esowiki has joined.
09:18:02 -!- esowiki has joined.
09:18:02 -!- esowiki has joined.
09:18:38 -!- esowiki has joined.
09:18:42 -!- esowiki has joined.
09:18:42 -!- esowiki has joined.
09:19:18 -!- esowiki has joined.
09:19:22 -!- esowiki has joined.
09:19:22 -!- esowiki has joined.
09:19:58 -!- esowiki has joined.
09:20:02 -!- esowiki has joined.
09:20:02 -!- esowiki has joined.
09:20:38 -!- esowiki has joined.
09:20:42 -!- esowiki has joined.
09:20:42 -!- esowiki has joined.
09:21:18 -!- esowiki has joined.
09:21:22 -!- esowiki has joined.
09:21:23 -!- esowiki has joined.
09:21:58 -!- esowiki has joined.
09:22:02 -!- esowiki has joined.
09:22:03 -!- esowiki has joined.
09:22:38 -!- esowiki has joined.
09:22:42 -!- esowiki has joined.
09:22:43 -!- esowiki has joined.
09:23:18 -!- esowiki has joined.
09:23:22 -!- esowiki has joined.
09:23:23 -!- esowiki has joined.
09:23:58 -!- esowiki has joined.
09:24:02 -!- esowiki has joined.
09:24:03 -!- esowiki has joined.
09:24:38 -!- esowiki has joined.
09:24:42 -!- esowiki has joined.
09:24:43 -!- esowiki has joined.
09:25:18 -!- esowiki has joined.
09:25:22 -!- esowiki has joined.
09:25:23 -!- esowiki has joined.
09:25:58 -!- esowiki has joined.
09:26:02 -!- esowiki has joined.
09:26:03 -!- esowiki has joined.
09:26:38 -!- esowiki has joined.
09:26:42 -!- esowiki has joined.
09:26:43 -!- esowiki has joined.
09:27:18 -!- esowiki has joined.
09:27:22 -!- esowiki has joined.
09:27:23 -!- esowiki has joined.
09:27:58 -!- esowiki has joined.
09:28:03 -!- esowiki has joined.
09:28:03 -!- esowiki has joined.
09:28:38 -!- esowiki has joined.
09:28:43 -!- esowiki has joined.
09:28:43 -!- esowiki has joined.
09:29:18 -!- esowiki has joined.
09:29:23 -!- esowiki has joined.
09:29:23 -!- esowiki has joined.
09:29:59 -!- esowiki has joined.
09:30:03 -!- esowiki has joined.
09:30:03 -!- esowiki has joined.
09:30:39 -!- esowiki has joined.
09:30:43 -!- esowiki has joined.
09:30:43 -!- esowiki has joined.
09:31:19 -!- esowiki has joined.
09:31:23 -!- esowiki has joined.
09:31:23 -!- esowiki has joined.
09:31:59 -!- esowiki has joined.
09:32:03 -!- esowiki has joined.
09:32:03 -!- esowiki has joined.
09:32:39 -!- esowiki has joined.
09:32:43 -!- esowiki has joined.
09:32:43 -!- esowiki has joined.
09:33:19 -!- esowiki has joined.
09:33:23 -!- esowiki has joined.
09:33:23 -!- esowiki has joined.
09:33:59 -!- esowiki has joined.
09:34:03 -!- esowiki has joined.
09:34:03 -!- esowiki has joined.
09:34:39 -!- esowiki has joined.
09:34:43 -!- esowiki has joined.
09:34:44 -!- esowiki has joined.
09:35:19 -!- esowiki has joined.
09:35:23 -!- esowiki has joined.
09:35:24 -!- esowiki has joined.
09:35:59 -!- esowiki has joined.
09:36:03 -!- esowiki has joined.
09:36:04 -!- esowiki has joined.
09:36:39 -!- esowiki has joined.
09:36:43 -!- esowiki has joined.
09:36:44 -!- esowiki has joined.
09:37:19 -!- esowiki has joined.
09:37:23 -!- esowiki has joined.
09:37:24 -!- esowiki has joined.
09:37:59 -!- esowiki has joined.
09:38:03 -!- esowiki has joined.
09:38:04 -!- esowiki has joined.
09:38:39 -!- esowiki has joined.
09:38:43 -!- esowiki has joined.
09:38:44 -!- esowiki has joined.
09:39:19 -!- esowiki has joined.
09:39:23 -!- esowiki has joined.
09:39:24 -!- esowiki has joined.
09:39:59 -!- esowiki has joined.
09:40:03 -!- esowiki has joined.
09:40:04 -!- esowiki has joined.
09:40:39 -!- esowiki has joined.
09:40:43 -!- esowiki has joined.
09:40:44 -!- esowiki has joined.
09:41:19 -!- esowiki has joined.
09:41:24 -!- esowiki has joined.
09:41:24 -!- esowiki has joined.
09:41:59 -!- esowiki has joined.
09:42:04 -!- esowiki has joined.
09:42:04 -!- esowiki has joined.
09:42:40 -!- esowiki has joined.
09:42:44 -!- esowiki has joined.
09:42:44 -!- esowiki has joined.
09:43:20 -!- esowiki has joined.
09:43:24 -!- esowiki has joined.
09:43:24 -!- esowiki has joined.
09:44:00 -!- esowiki has joined.
09:44:04 -!- esowiki has joined.
09:44:04 -!- esowiki has joined.
09:44:40 -!- esowiki has joined.
09:44:44 -!- esowiki has joined.
09:44:44 -!- esowiki has joined.
09:45:20 -!- esowiki has joined.
09:45:24 -!- esowiki has joined.
09:45:24 -!- esowiki has joined.
09:46:00 -!- esowiki has joined.
09:46:04 -!- esowiki has joined.
09:46:04 -!- esowiki has joined.
09:46:40 -!- esowiki has joined.
09:46:44 -!- esowiki has joined.
09:46:44 -!- esowiki has joined.
09:47:20 -!- esowiki has joined.
09:47:24 -!- esowiki has joined.
09:47:25 -!- esowiki has joined.
09:48:00 -!- esowiki has joined.
09:48:04 -!- esowiki has joined.
09:48:05 -!- esowiki has joined.
09:48:40 -!- esowiki has joined.
09:48:44 -!- esowiki has joined.
09:48:45 -!- esowiki has joined.
09:49:20 -!- esowiki has joined.
09:49:24 -!- esowiki has joined.
09:49:25 -!- esowiki has joined.
09:50:00 -!- esowiki has joined.
09:50:04 -!- esowiki has joined.
09:50:05 -!- esowiki has joined.
09:50:40 -!- esowiki has joined.
09:50:44 -!- esowiki has joined.
09:50:45 -!- esowiki has joined.
09:51:20 -!- esowiki has joined.
09:51:24 -!- esowiki has joined.
09:51:25 -!- esowiki has joined.
09:52:00 -!- esowiki has joined.
09:52:04 -!- esowiki has joined.
09:52:05 -!- esowiki has joined.
09:52:40 -!- esowiki has joined.
09:52:44 -!- esowiki has joined.
09:52:45 -!- esowiki has joined.
09:53:20 -!- esowiki has joined.
09:53:24 -!- esowiki has joined.
09:53:25 -!- esowiki has joined.
09:54:00 -!- esowiki has joined.
09:54:05 -!- esowiki has joined.
09:54:05 -!- esowiki has joined.
09:54:40 -!- esowiki has joined.
09:54:45 -!- esowiki has joined.
09:54:45 -!- esowiki has joined.
09:55:21 -!- esowiki has joined.
09:55:25 -!- esowiki has joined.
09:55:25 -!- esowiki has joined.
09:56:01 -!- esowiki has joined.
09:56:05 -!- esowiki has joined.
09:56:05 -!- esowiki has joined.
09:56:41 -!- esowiki has joined.
09:56:45 -!- esowiki has joined.
09:56:45 -!- esowiki has joined.
09:57:21 -!- esowiki has joined.
09:57:25 -!- esowiki has joined.
09:57:25 -!- esowiki has joined.
09:58:01 -!- esowiki has joined.
09:58:05 -!- esowiki has joined.
09:58:05 -!- esowiki has joined.
09:58:41 -!- esowiki has joined.
09:58:45 -!- esowiki has joined.
09:58:45 -!- esowiki has joined.
09:59:21 -!- esowiki has joined.
09:59:25 -!- esowiki has joined.
09:59:25 -!- esowiki has joined.
10:00:01 -!- esowiki has joined.
10:00:05 -!- esowiki has joined.
10:00:05 -!- esowiki has joined.
10:00:41 -!- esowiki has joined.
10:00:45 -!- esowiki has joined.
10:00:46 -!- esowiki has joined.
10:01:21 -!- esowiki has joined.
10:01:25 -!- esowiki has joined.
10:01:26 -!- esowiki has joined.
10:02:01 -!- esowiki has joined.
10:02:05 -!- esowiki has joined.
10:02:06 -!- esowiki has joined.
10:02:41 -!- esowiki has joined.
10:02:45 -!- esowiki has joined.
10:02:46 -!- esowiki has joined.
10:03:21 -!- esowiki has joined.
10:03:25 -!- esowiki has joined.
10:03:26 -!- esowiki has joined.
10:04:01 -!- esowiki has joined.
10:04:05 -!- esowiki has joined.
10:04:06 -!- esowiki has joined.
10:04:41 -!- esowiki has joined.
10:04:45 -!- esowiki has joined.
10:04:46 -!- esowiki has joined.
10:05:21 -!- esowiki has joined.
10:05:25 -!- esowiki has joined.
10:05:26 -!- esowiki has joined.
10:06:01 -!- esowiki has joined.
10:06:05 -!- esowiki has joined.
10:06:06 -!- esowiki has joined.
10:06:41 -!- esowiki has joined.
10:06:45 -!- esowiki has joined.
10:06:46 -!- esowiki has joined.
10:07:21 -!- esowiki has joined.
10:07:26 -!- esowiki has joined.
10:07:26 -!- esowiki has joined.
10:08:01 -!- esowiki has joined.
10:08:06 -!- esowiki has joined.
10:08:06 -!- esowiki has joined.
10:08:42 -!- esowiki has joined.
10:08:46 -!- esowiki has joined.
10:08:46 -!- esowiki has joined.
10:09:22 -!- esowiki has joined.
10:09:26 -!- esowiki has joined.
10:09:26 -!- esowiki has joined.
10:10:02 -!- esowiki has joined.
10:10:06 -!- esowiki has joined.
10:10:06 -!- esowiki has joined.
10:10:42 -!- esowiki has joined.
10:10:46 -!- esowiki has joined.
10:10:46 -!- esowiki has joined.
10:11:22 -!- esowiki has joined.
10:11:26 -!- esowiki has joined.
10:11:26 -!- esowiki has joined.
10:12:02 -!- esowiki has joined.
10:12:06 -!- esowiki has joined.
10:12:06 -!- esowiki has joined.
10:12:42 -!- esowiki has joined.
10:12:46 -!- esowiki has joined.
10:12:46 -!- esowiki has joined.
10:13:22 -!- esowiki has joined.
10:13:26 -!- esowiki has joined.
10:13:27 -!- esowiki has joined.
10:14:02 -!- esowiki has joined.
10:14:06 -!- esowiki has joined.
10:14:07 -!- esowiki has joined.
10:14:42 -!- esowiki has joined.
10:14:46 -!- esowiki has joined.
10:14:47 -!- esowiki has joined.
10:15:22 -!- esowiki has joined.
10:15:26 -!- esowiki has joined.
10:15:27 -!- esowiki has joined.
10:16:02 -!- esowiki has joined.
10:16:06 -!- esowiki has joined.
10:16:07 -!- esowiki has joined.
10:16:42 -!- esowiki has joined.
10:16:46 -!- esowiki has joined.
10:16:47 -!- esowiki has joined.
10:17:22 -!- esowiki has joined.
10:17:26 -!- esowiki has joined.
10:17:27 -!- esowiki has joined.
10:18:02 -!- esowiki has joined.
10:18:06 -!- esowiki has joined.
10:18:07 -!- esowiki has joined.
10:18:42 -!- esowiki has joined.
10:18:46 -!- esowiki has joined.
10:18:47 -!- esowiki has joined.
10:19:22 -!- esowiki has joined.
10:19:26 -!- esowiki has joined.
10:19:27 -!- esowiki has joined.
10:20:02 -!- esowiki has joined.
10:20:07 -!- esowiki has joined.
10:20:07 -!- esowiki has joined.
10:20:42 -!- esowiki has joined.
10:20:47 -!- esowiki has joined.
10:20:47 -!- esowiki has joined.
10:21:22 -!- esowiki has joined.
10:21:27 -!- esowiki has joined.
10:21:27 -!- esowiki has joined.
10:22:03 -!- esowiki has joined.
10:22:07 -!- esowiki has joined.
10:22:07 -!- esowiki has joined.
10:22:43 -!- esowiki has joined.
10:22:47 -!- esowiki has joined.
10:22:47 -!- esowiki has joined.
10:23:23 -!- esowiki has joined.
10:23:27 -!- esowiki has joined.
10:23:27 -!- esowiki has joined.
10:24:03 -!- esowiki has joined.
10:24:07 -!- esowiki has joined.
10:24:07 -!- esowiki has joined.
10:24:43 -!- esowiki has joined.
10:24:47 -!- esowiki has joined.
10:24:47 -!- esowiki has joined.
10:25:23 -!- esowiki has joined.
10:25:27 -!- esowiki has joined.
10:25:27 -!- esowiki has joined.
10:26:03 -!- esowiki has joined.
10:26:07 -!- esowiki has joined.
10:26:07 -!- esowiki has joined.
10:26:43 -!- esowiki has joined.
10:26:47 -!- esowiki has joined.
10:26:48 -!- esowiki has joined.
10:27:23 -!- esowiki has joined.
10:27:27 -!- esowiki has joined.
10:27:28 -!- esowiki has joined.
10:28:03 -!- esowiki has joined.
10:28:07 -!- esowiki has joined.
10:28:08 -!- esowiki has joined.
10:28:43 -!- esowiki has joined.
10:28:47 -!- esowiki has joined.
10:28:48 -!- esowiki has joined.
10:29:23 -!- esowiki has joined.
10:29:27 -!- esowiki has joined.
10:29:28 -!- esowiki has joined.
10:30:03 -!- esowiki has joined.
10:30:07 -!- esowiki has joined.
10:30:08 -!- esowiki has joined.
10:30:43 -!- esowiki has joined.
10:30:47 -!- esowiki has joined.
10:30:48 -!- esowiki has joined.
10:31:23 -!- esowiki has joined.
10:31:27 -!- esowiki has joined.
10:31:28 -!- esowiki has joined.
10:32:03 -!- esowiki has joined.
10:32:07 -!- esowiki has joined.
10:32:08 -!- esowiki has joined.
10:32:43 -!- esowiki has joined.
10:32:47 -!- esowiki has joined.
10:32:48 -!- esowiki has joined.
10:33:23 -!- esowiki has joined.
10:33:28 -!- esowiki has joined.
10:33:28 -!- esowiki has joined.
10:34:03 -!- esowiki has joined.
10:34:08 -!- esowiki has joined.
10:34:08 -!- esowiki has joined.
10:34:43 -!- esowiki has joined.
10:34:48 -!- esowiki has joined.
10:34:48 -!- esowiki has joined.
10:35:24 -!- esowiki has joined.
10:35:28 -!- esowiki has joined.
10:35:28 -!- esowiki has joined.
10:36:04 -!- esowiki has joined.
10:36:08 -!- esowiki has joined.
10:36:08 -!- esowiki has joined.
10:36:44 -!- esowiki has joined.
10:36:48 -!- esowiki has joined.
10:36:48 -!- esowiki has joined.
10:37:24 -!- esowiki has joined.
10:37:28 -!- esowiki has joined.
10:37:28 -!- esowiki has joined.
10:38:04 -!- esowiki has joined.
10:38:08 -!- esowiki has joined.
10:38:08 -!- esowiki has joined.
10:38:44 -!- esowiki has joined.
10:38:48 -!- esowiki has joined.
10:38:48 -!- esowiki has joined.
10:39:24 -!- esowiki has joined.
10:39:28 -!- esowiki has joined.
10:39:28 -!- esowiki has joined.
10:40:04 -!- esowiki has joined.
10:40:08 -!- esowiki has joined.
10:40:09 -!- esowiki has joined.
10:40:44 -!- esowiki has joined.
10:40:48 -!- esowiki has joined.
10:40:49 -!- esowiki has joined.
10:41:24 -!- esowiki has joined.
10:41:28 -!- esowiki has joined.
10:41:29 -!- esowiki has joined.
10:42:04 -!- esowiki has joined.
10:42:08 -!- esowiki has joined.
10:42:09 -!- esowiki has joined.
10:42:44 -!- esowiki has joined.
10:42:48 -!- esowiki has joined.
10:42:49 -!- esowiki has joined.
10:43:24 -!- esowiki has joined.
10:43:28 -!- esowiki has joined.
10:43:29 -!- esowiki has joined.
10:44:04 -!- esowiki has joined.
10:44:08 -!- esowiki has joined.
10:44:09 -!- esowiki has joined.
10:44:44 -!- esowiki has joined.
10:44:48 -!- esowiki has joined.
10:44:49 -!- esowiki has joined.
10:45:24 -!- esowiki has joined.
10:45:28 -!- esowiki has joined.
10:45:29 -!- esowiki has joined.
10:46:04 -!- esowiki has joined.
10:46:08 -!- esowiki has joined.
10:46:09 -!- esowiki has joined.
10:46:44 -!- esowiki has joined.
10:46:49 -!- esowiki has joined.
10:46:49 -!- esowiki has joined.
10:47:24 -!- esowiki has joined.
10:47:29 -!- esowiki has joined.
10:47:29 -!- esowiki has joined.
10:48:05 -!- esowiki has joined.
10:48:09 -!- esowiki has joined.
10:48:09 -!- esowiki has joined.
10:48:45 -!- esowiki has joined.
10:48:49 -!- esowiki has joined.
10:48:49 -!- esowiki has joined.
10:49:25 -!- esowiki has joined.
10:49:29 -!- esowiki has joined.
10:49:29 -!- esowiki has joined.
10:50:05 -!- esowiki has joined.
10:50:09 -!- esowiki has joined.
10:50:09 -!- esowiki has joined.
10:50:45 -!- esowiki has joined.
10:50:49 -!- esowiki has joined.
10:50:49 -!- esowiki has joined.
10:51:25 -!- esowiki has joined.
10:51:29 -!- esowiki has joined.
10:51:29 -!- esowiki has joined.
10:52:05 -!- esowiki has joined.
10:52:09 -!- esowiki has joined.
10:52:09 -!- esowiki has joined.
10:52:45 -!- esowiki has joined.
10:52:49 -!- esowiki has joined.
10:52:49 -!- esowiki has joined.
10:53:25 -!- esowiki has joined.
10:53:29 -!- esowiki has joined.
10:53:30 -!- esowiki has joined.
10:54:05 -!- esowiki has joined.
10:54:09 -!- esowiki has joined.
10:54:10 -!- esowiki has joined.
10:54:45 -!- esowiki has joined.
10:54:49 -!- esowiki has joined.
10:54:50 -!- esowiki has joined.
10:55:25 -!- esowiki has joined.
10:55:29 -!- esowiki has joined.
10:55:30 -!- esowiki has joined.
10:56:05 -!- esowiki has joined.
10:56:09 -!- esowiki has joined.
10:56:10 -!- esowiki has joined.
10:56:45 -!- esowiki has joined.
10:56:49 -!- esowiki has joined.
10:56:50 -!- esowiki has joined.
10:57:25 -!- esowiki has joined.
10:57:29 -!- esowiki has joined.
10:57:30 -!- esowiki has joined.
10:58:05 -!- esowiki has joined.
10:58:09 -!- esowiki has joined.
10:58:10 -!- esowiki has joined.
10:58:45 -!- esowiki has joined.
10:58:49 -!- esowiki has joined.
10:58:50 -!- esowiki has joined.
10:59:25 -!- esowiki has joined.
10:59:29 -!- esowiki has joined.
10:59:30 -!- esowiki has joined.
11:00:05 -!- esowiki has joined.
11:00:10 -!- esowiki has joined.
11:00:10 -!- esowiki has joined.
11:00:45 -!- esowiki has joined.
11:00:50 -!- esowiki has joined.
11:00:50 -!- esowiki has joined.
11:01:26 -!- esowiki has joined.
11:01:30 -!- esowiki has joined.
11:01:30 -!- esowiki has joined.
11:02:06 -!- esowiki has joined.
11:02:10 -!- esowiki has joined.
11:02:10 -!- esowiki has joined.
11:02:46 -!- esowiki has joined.
11:02:50 -!- esowiki has joined.
11:02:50 -!- esowiki has joined.
11:03:26 -!- esowiki has joined.
11:03:30 -!- esowiki has joined.
11:03:30 -!- esowiki has joined.
11:04:06 -!- esowiki has joined.
11:04:10 -!- esowiki has joined.
11:04:10 -!- esowiki has joined.
11:04:46 -!- esowiki has joined.
11:04:50 -!- esowiki has joined.
11:04:50 -!- esowiki has joined.
11:05:26 -!- esowiki has joined.
11:05:30 -!- esowiki has joined.
11:05:30 -!- esowiki has joined.
11:06:06 -!- esowiki has joined.
11:06:10 -!- esowiki has joined.
11:06:11 -!- esowiki has joined.
11:06:46 -!- esowiki has joined.
11:06:50 -!- esowiki has joined.
11:06:51 -!- esowiki has joined.
11:07:26 -!- esowiki has joined.
11:07:30 -!- esowiki has joined.
11:07:31 -!- esowiki has joined.
11:08:06 -!- esowiki has joined.
11:08:10 -!- esowiki has joined.
11:08:11 -!- esowiki has joined.
11:08:46 -!- esowiki has joined.
11:08:50 -!- esowiki has joined.
11:08:51 -!- esowiki has joined.
11:09:26 -!- esowiki has joined.
11:09:30 -!- esowiki has joined.
11:09:31 -!- esowiki has joined.
11:10:06 -!- esowiki has joined.
11:10:10 -!- esowiki has joined.
11:10:11 -!- esowiki has joined.
11:10:46 -!- esowiki has joined.
11:10:50 -!- esowiki has joined.
11:10:51 -!- esowiki has joined.
11:11:26 -!- esowiki has joined.
11:11:30 -!- esowiki has joined.
11:11:31 -!- esowiki has joined.
11:12:06 -!- esowiki has joined.
11:12:10 -!- esowiki has joined.
11:12:11 -!- esowiki has joined.
11:12:46 -!- esowiki has joined.
11:12:51 -!- esowiki has joined.
11:12:51 -!- esowiki has joined.
11:13:26 -!- esowiki has joined.
11:13:31 -!- esowiki has joined.
11:13:31 -!- esowiki has joined.
11:14:06 -!- esowiki has joined.
11:14:11 -!- esowiki has joined.
11:14:11 -!- esowiki has joined.
11:14:47 -!- esowiki has joined.
11:14:51 -!- esowiki has joined.
11:14:51 -!- esowiki has joined.
11:15:27 -!- esowiki has joined.
11:15:31 -!- esowiki has joined.
11:15:31 -!- esowiki has joined.
11:16:07 -!- esowiki has joined.
11:16:11 -!- esowiki has joined.
11:16:11 -!- esowiki has joined.
11:16:47 -!- esowiki has joined.
11:16:51 -!- esowiki has joined.
11:16:51 -!- esowiki has joined.
11:17:27 -!- esowiki has joined.
11:17:31 -!- esowiki has joined.
11:17:31 -!- esowiki has joined.
11:18:07 -!- esowiki has joined.
11:18:11 -!- esowiki has joined.
11:18:11 -!- esowiki has joined.
11:18:47 -!- esowiki has joined.
11:18:51 -!- esowiki has joined.
11:18:51 -!- esowiki has joined.
11:19:27 -!- esowiki has joined.
11:19:31 -!- esowiki has joined.
11:19:32 -!- esowiki has joined.
11:20:07 -!- esowiki has joined.
11:20:11 -!- esowiki has joined.
11:20:12 -!- esowiki has joined.
11:20:47 -!- esowiki has joined.
11:20:51 -!- esowiki has joined.
11:20:52 -!- esowiki has joined.
11:21:27 -!- esowiki has joined.
11:21:31 -!- esowiki has joined.
11:21:32 -!- esowiki has joined.
11:22:07 -!- esowiki has joined.
11:22:11 -!- esowiki has joined.
11:22:12 -!- esowiki has joined.
11:22:47 -!- esowiki has joined.
11:22:51 -!- esowiki has joined.
11:22:52 -!- esowiki has joined.
11:23:27 -!- esowiki has joined.
11:23:31 -!- esowiki has joined.
11:23:32 -!- esowiki has joined.
11:24:07 -!- esowiki has joined.
11:24:11 -!- esowiki has joined.
11:24:12 -!- esowiki has joined.
11:24:47 -!- esowiki has joined.
11:24:51 -!- esowiki has joined.
11:24:52 -!- esowiki has joined.
11:25:27 -!- esowiki has joined.
11:25:31 -!- esowiki has joined.
11:25:32 -!- esowiki has joined.
11:26:07 -!- esowiki has joined.
11:26:11 -!- esowiki has joined.
11:26:12 -!- esowiki has joined.
11:26:47 -!- esowiki has joined.
11:26:52 -!- esowiki has joined.
11:26:52 -!- esowiki has joined.
11:27:27 -!- esowiki has joined.
11:27:32 -!- esowiki has joined.
11:27:32 -!- esowiki has joined.
11:28:08 -!- esowiki has joined.
11:28:12 -!- esowiki has joined.
11:28:12 -!- esowiki has joined.
11:28:48 -!- esowiki has joined.
11:28:52 -!- esowiki has joined.
11:28:52 -!- esowiki has joined.
11:29:28 -!- esowiki has joined.
11:29:32 -!- esowiki has joined.
11:29:32 -!- esowiki has joined.
11:30:08 -!- esowiki has joined.
11:30:12 -!- esowiki has joined.
11:30:12 -!- esowiki has joined.
11:30:48 -!- esowiki has joined.
11:30:52 -!- esowiki has joined.
11:30:52 -!- esowiki has joined.
11:31:28 -!- esowiki has joined.
11:31:32 -!- esowiki has joined.
11:31:32 -!- esowiki has joined.
11:32:08 -!- esowiki has joined.
11:32:12 -!- esowiki has joined.
11:32:12 -!- esowiki has joined.
11:32:48 -!- esowiki has joined.
11:32:52 -!- esowiki has joined.
11:32:53 -!- esowiki has joined.
11:33:28 -!- esowiki has joined.
11:33:32 -!- esowiki has joined.
11:33:33 -!- esowiki has joined.
11:34:08 -!- esowiki has joined.
11:34:12 -!- esowiki has joined.
11:34:13 -!- esowiki has joined.
11:34:48 -!- esowiki has joined.
11:34:52 -!- esowiki has joined.
11:34:53 -!- esowiki has joined.
11:35:28 -!- esowiki has joined.
11:35:32 -!- esowiki has joined.
11:35:33 -!- esowiki has joined.
11:36:08 -!- esowiki has joined.
11:36:12 -!- esowiki has joined.
11:36:13 -!- esowiki has joined.
11:36:48 -!- esowiki has joined.
11:36:52 -!- esowiki has joined.
11:36:53 -!- esowiki has joined.
11:37:28 -!- esowiki has joined.
11:37:32 -!- esowiki has joined.
11:37:33 -!- esowiki has joined.
11:38:08 -!- esowiki has joined.
11:38:12 -!- esowiki has joined.
11:38:13 -!- esowiki has joined.
11:38:48 -!- esowiki has joined.
11:38:52 -!- esowiki has joined.
11:38:53 -!- esowiki has joined.
11:39:28 -!- esowiki has joined.
11:39:33 -!- esowiki has joined.
11:39:33 -!- esowiki has joined.
11:40:08 -!- esowiki has joined.
11:40:13 -!- esowiki has joined.
11:40:13 -!- esowiki has joined.
11:40:49 -!- esowiki has joined.
11:40:53 -!- esowiki has joined.
11:40:53 -!- esowiki has joined.
11:41:29 -!- esowiki has joined.
11:41:33 -!- esowiki has joined.
11:41:33 -!- esowiki has joined.
11:42:09 -!- esowiki has joined.
11:42:13 -!- esowiki has joined.
11:42:13 -!- esowiki has joined.
11:42:49 -!- esowiki has joined.
11:42:53 -!- esowiki has joined.
11:42:53 -!- esowiki has joined.
11:43:29 -!- esowiki has joined.
11:43:33 -!- esowiki has joined.
11:43:33 -!- esowiki has joined.
11:44:09 -!- esowiki has joined.
11:44:13 -!- esowiki has joined.
11:44:13 -!- esowiki has joined.
11:44:49 -!- esowiki has joined.
11:44:53 -!- esowiki has joined.
11:44:53 -!- esowiki has joined.
11:45:29 -!- esowiki has joined.
11:45:33 -!- esowiki has joined.
11:45:34 -!- esowiki has joined.
11:46:09 -!- esowiki has joined.
11:46:13 -!- esowiki has joined.
11:46:14 -!- esowiki has joined.
11:46:49 -!- esowiki has joined.
11:46:53 -!- esowiki has joined.
11:46:54 -!- esowiki has joined.
11:47:29 -!- esowiki has joined.
11:47:33 -!- esowiki has joined.
11:47:34 -!- esowiki has joined.
11:48:09 -!- esowiki has joined.
11:48:13 -!- esowiki has joined.
11:48:14 -!- esowiki has joined.
11:48:49 -!- esowiki has joined.
11:48:53 -!- esowiki has joined.
11:48:54 -!- esowiki has joined.
11:49:29 -!- esowiki has joined.
11:49:33 -!- esowiki has joined.
11:49:34 -!- esowiki has joined.
11:50:09 -!- esowiki has joined.
11:50:13 -!- esowiki has joined.
11:50:14 -!- esowiki has joined.
11:50:49 -!- esowiki has joined.
11:50:53 -!- esowiki has joined.
11:50:54 -!- esowiki has joined.
11:51:29 -!- esowiki has joined.
11:51:33 -!- esowiki has joined.
11:51:34 -!- esowiki has joined.
11:52:09 -!- esowiki has joined.
11:52:13 -!- esowiki has joined.
11:52:14 -!- esowiki has joined.
11:52:49 -!- esowiki has joined.
11:52:54 -!- esowiki has joined.
11:52:54 -!- esowiki has joined.
11:53:29 -!- esowiki has joined.
11:53:34 -!- esowiki has joined.
11:53:34 -!- esowiki has joined.
11:54:09 -!- esowiki has joined.
11:54:14 -!- esowiki has joined.
11:54:14 -!- esowiki has joined.
11:54:50 -!- esowiki has joined.
11:54:54 -!- esowiki has joined.
11:54:54 -!- esowiki has joined.
11:55:30 -!- esowiki has joined.
11:55:34 -!- esowiki has joined.
11:55:34 -!- esowiki has joined.
11:56:10 -!- esowiki has joined.
11:56:14 -!- esowiki has joined.
11:56:14 -!- esowiki has joined.
11:56:50 -!- esowiki has joined.
11:56:54 -!- esowiki has joined.
11:56:54 -!- esowiki has joined.
11:57:30 -!- esowiki has joined.
11:57:34 -!- esowiki has joined.
11:57:34 -!- esowiki has joined.
11:58:10 -!- esowiki has joined.
11:58:14 -!- esowiki has joined.
11:58:14 -!- esowiki has joined.
11:58:50 -!- esowiki has joined.
11:58:54 -!- esowiki has joined.
11:58:55 -!- esowiki has joined.
11:59:30 -!- esowiki has joined.
11:59:34 -!- esowiki has joined.
11:59:35 -!- esowiki has joined.
12:00:10 -!- esowiki has joined.
12:00:14 -!- esowiki has joined.
12:00:15 -!- esowiki has joined.
12:00:50 -!- esowiki has joined.
12:00:54 -!- esowiki has joined.
12:00:55 -!- esowiki has joined.
12:01:30 -!- esowiki has joined.
12:01:34 -!- esowiki has joined.
12:01:35 -!- esowiki has joined.
12:02:10 -!- esowiki has joined.
12:02:14 -!- esowiki has joined.
12:02:15 -!- esowiki has joined.
12:02:50 -!- esowiki has joined.
12:02:54 -!- esowiki has joined.
12:02:55 -!- esowiki has joined.
12:03:30 -!- esowiki has joined.
12:03:34 -!- esowiki has joined.
12:03:35 -!- esowiki has joined.
12:04:10 -!- esowiki has joined.
12:04:14 -!- esowiki has joined.
12:04:15 -!- esowiki has joined.
12:04:50 -!- esowiki has joined.
12:04:54 -!- esowiki has joined.
12:04:55 -!- esowiki has joined.
12:05:30 -!- esowiki has joined.
12:05:35 -!- esowiki has joined.
12:05:35 -!- esowiki has joined.
12:06:10 -!- esowiki has joined.
12:06:15 -!- esowiki has joined.
12:06:15 -!- esowiki has joined.
12:06:50 -!- esowiki has joined.
12:06:55 -!- esowiki has joined.
12:06:55 -!- esowiki has joined.
12:07:31 -!- esowiki has joined.
12:07:35 -!- esowiki has joined.
12:07:35 -!- esowiki has joined.
12:08:11 -!- esowiki has joined.
12:08:15 -!- esowiki has joined.
12:08:15 -!- esowiki has joined.
12:08:51 -!- esowiki has joined.
12:08:55 -!- esowiki has joined.
12:08:55 -!- esowiki has joined.
12:09:31 -!- esowiki has joined.
12:09:35 -!- esowiki has joined.
12:09:35 -!- esowiki has joined.
12:09:52 -!- glogbot has joined.
12:09:52 -!- glogbackup has left.
12:09:56 -!- HackEgo has joined.
12:16:13 -!- Sgeo has joined.
12:17:19 <nooga> haaa
12:18:49 -!- Sgeo_ has quit (Ping timeout: 252 seconds).
12:24:56 -!- Sgeo_ has joined.
12:27:15 -!- Sgeo has quit (Ping timeout: 252 seconds).
12:28:23 -!- adac has left ("Leaving").
12:32:42 -!- ogrom has joined.
12:34:12 <Taneb> Why does r/picturesofiansleeping exist!?
12:38:59 <Sgeo_> Because someone created it.
12:39:41 <Sgeo_> Woah, ok, it seems to be incredibly popular.
12:39:44 <Sgeo_> THAT's disturbing.
12:40:05 -!- nortti has joined.
12:40:21 -!- derdon has joined.
12:40:28 <Sgeo_> Oh, Ian agreed to it
12:41:02 <Taneb> But why do 7000 people want to see pictures of some guy sleeping?
12:41:50 <itidus21> always the easy questions get people stumped
12:41:55 -!- nortti has quit (Client Quit).
12:42:15 <Taneb> I'm not sure if that's true
12:42:21 <Taneb> I'll demonstrate.
12:42:28 <Taneb> What's 3 times 2
12:42:29 <Taneb> ?
12:42:35 <itidus21> 6
12:42:42 <itidus21> whoa
12:42:43 <Taneb> Wasn't that an easy question
12:42:46 <itidus21> i see what you mean
12:43:06 <Sgeo_> Always the questions that get people stumped get people stumped.
12:43:13 <itidus21> qed
12:43:53 <itidus21> but to get back to the point i was gonna make
12:44:19 <itidus21> someone had to create every last image found on the internet, or used software to generate them
12:44:39 <itidus21> that in itself should be quite depressing
12:45:04 <itidus21> but not really
12:45:12 <itidus21> the pictures tend to be ok in context
12:45:42 -!- Gregor has joined.
12:45:45 <Taneb> Is this heading towards rule 34?
12:45:49 <itidus21> myspace girl discovers camera and proceeds to take 20 photos of herself from extreme angles
12:45:50 <Taneb> Hello, Gregor
12:46:23 <itidus21> flickr user takes 200 low resolution photos of landscapes they visited during travels
12:47:14 <Taneb> Group of people take picture of selves dressed as characters from a webcomic, in a shopping centre, put it on Facebook?
12:47:17 <Taneb> True story
12:47:24 <Taneb> Happened to me once
12:54:16 <Sgeo_> I need to learn how to avoid global variables
12:55:31 <Sgeo_> Whenever I look at Tcl, I keep thinking that I should be looking at Lisp
12:57:53 <Sgeo_> http://wiki.tcl.tk/13410
12:58:34 <Sgeo_> As interesting as most of that is, "OMG YOU DON'T NEED TO CALL ANY FUNCTIONS TO SERIALIZE TCL DATA STRUCTURES" is ... not at all impressive
12:59:08 -!- ais523 has quit.
13:02:47 -!- juhani has joined.
13:03:01 <kallisti> Sgeo_: you don't need to call any functions to serialize bash data structures either.
13:03:08 <kallisti> (actually that may not be true of bash arrays. not sure)
13:03:24 -!- juhani has quit (Client Quit).
13:03:27 <Sgeo_> Bash has arrays? Are they like Tcl's arrays?
13:03:33 <kallisti> I doubt it
13:03:46 <Sgeo_> You do need to call something to serialize Tcl's arrays since they're not first-class
13:03:55 <kallisti> I'm not sure that bash arrays are "first class"
13:03:58 <Sgeo_> Array just a collection of variables named in a certain way, really
13:04:30 <Sgeo_> Fine, here's a good difference between Bash and Tcl: Bash has ``, Tcl has []
13:04:37 <Sgeo_> Which makes more sense for nesting commands?
13:04:56 <kallisti> `` is considered deprecated
13:04:59 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `: not found
13:05:00 <kallisti> you should use $() instead
13:05:02 -!- nortti has joined.
13:05:09 <Sgeo_> Ah
13:06:27 -!- nortti has quit (Client Quit).
13:06:45 <kallisti> I believe $() is a standard Bourne feature as well
13:06:48 <kallisti> and avoids quote hell
13:07:08 <kallisti> a non-standard feature that avoids quote hell: you can put a $ in front a '' literal to get proper escape sequences
13:07:17 <kallisti> ``run echo $SHELL
13:07:20 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `run: not found
13:07:27 <kallisti> `run echo $SHELL
13:07:30 <HackEgo> ​/bin/sh
13:07:38 <kallisti> `run echo $'don\'t'
13:07:41 <HackEgo> don't
13:07:52 <kallisti> without the $ you have to do
13:07:57 -!- nortti has joined.
13:08:01 <kallisti> `run echo 'don'\''t'
13:08:04 <HackEgo> don't
13:08:39 -!- ais523 has joined.
13:09:22 <kallisti> I think programmers should come together and standardize a keyboard character set
13:09:59 <kallisti> not necessarily a standard /layout/, but a new set of characters that you could expect to find on a specialized "programmer's keyboard"
13:10:48 <Taneb> Have you been reading about APL?
13:10:50 <kallisti> so we can have more than 4 kinds of bracket-like symbols
13:10:52 <kallisti> Taneb: no
13:11:41 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:12:03 <Taneb> APL, the language where life←{↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵} can make sense
13:13:24 <kallisti> I suppose you could call it a "keyset"
13:13:39 -!- nortti has quit (Quit: Leaving).
13:13:42 <kallisti> a set of characters that should be conveniently expressable by a programmer's input means
13:13:53 -!- nortti has joined.
13:14:06 -!- nortti has quit (Client Quit).
13:14:15 <kallisti> which is a combination of the physical hardware (such as keyboards), and the capabilities of software (specialized keyboard layouts, emulators, and text editor support)
13:14:27 <Taneb> Beyond extended ascii?
13:14:35 <kallisti> yes
13:15:03 <kallisti> a common point that many languages reach in the design of their syntax is: welp, we've run out of convenient characters
13:15:08 <kallisti> this happens too quickly, imo.
13:15:32 -!- nortti has joined.
13:19:58 <itidus21> this doesn't happen to nikolaus wirth
13:21:10 <itidus21> but on the other hand it can go crazy
13:22:42 <itidus21> at least few languages as yet make commands out of strings of punctuation
13:23:45 <itidus21> such as, &($#, ^*&^, @(@(@, (&$*(*$, !(&(*, ^(&*^$%^$#)
13:26:08 <itidus21> basically, the 1 character per keyword idea
13:26:16 <itidus21> is itself quite a constraint
13:32:29 -!- nortti has left ("Leaving").
13:32:55 -!- nortti has joined.
13:36:31 -!- augur has quit (Remote host closed the connection).
13:39:21 -!- monqy has quit (Quit: hello).
13:42:26 -!- copumpkin has joined.
13:54:40 -!- monqy has joined.
14:12:42 -!- ais523 has quit.
14:26:03 -!- nortti has left ("Leaving").
14:39:15 -!- Taneb has quit (Ping timeout: 252 seconds).
14:40:55 -!- augur has joined.
14:52:08 -!- elliott has joined.
14:55:15 <nooga> aaaaaaaarr
14:55:17 -!- TodPunk has quit (Read error: Connection reset by peer).
14:55:28 -!- TodPunk has joined.
14:55:35 <fizzie> nooga: Are you sure you do not mean "hello" or something. That's conventional.
14:59:22 <Phantom_Hoover> Has anyone here ever heard of Elephant 6 (correct answer is no, elliott need not answer).
14:59:55 <elliott> hi
15:00:02 <fizzie> Phantom_Hoover: Sounds like you've heard of it.
15:00:10 -!- elliott has quit (Remote host closed the connection).
15:00:17 <Phantom_Hoover> CRYPTIC
15:05:32 -!- TodPunk has quit (Read error: Connection reset by peer).
15:05:53 -!- TodPunk has joined.
15:06:13 -!- TodPunk has quit (Read error: Connection reset by peer).
15:11:35 -!- TodPunk has joined.
15:14:32 <Sgeo_> I was under the impression most BF implementations don't allow going past the left edge
15:14:36 <Sgeo_> I guess I was wrong? http://www.reddit.com/r/programming/comments/xiwno/a_file_that_is_a_windows_executable_a_pdf/c5n3rn4?context=3
15:14:45 -!- Vorpal has joined.
15:15:42 <fizzie> Sgeo_: Perhaps you should do a survey and make a table of interpreter properties.
15:15:50 <fizzie> All I've seen on the topic has been mostly guesswork.
15:16:09 <Phantom_Hoover> Sgeo_, if so, most interpreters are crap.
15:16:43 <fizzie> It's not unheard-of not to allow it.
15:18:49 -!- ogrom has quit (Ping timeout: 255 seconds).
15:20:53 <Sgeo_> Eternity's Shylock is still a fantastic song
15:21:26 <Sgeo_> (Note: Googling will likely be Homestuck spoilers)
15:21:51 <fizzie> Speaking of songs, there's a Jeroen Tel concert here tomorrow, some of you might have heard of him.
15:22:52 <fizzie> (And Googling will not be Homestuck spoilers, even.)
15:26:31 <Sgeo_> Non-spoilery way to listen: http://assets.tumblr.com/swf/audio_player.swf?audio_file=http://www.tumblr.com/audio_file/architectural-perfection/28245664979/tumblr_m7wnn9HLah1qm8n2a&color=FFFFFF
15:27:02 <Sgeo_> Well, I assume that the music's non-spoilery
15:27:05 <Sgeo_> Maybe due to motifs?
15:28:50 -!- augur_ has joined.
15:30:03 -!- augur has quit (Ping timeout: 246 seconds).
15:36:28 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
15:36:48 -!- Phantom_Hoover has joined.
15:36:49 -!- Phantom_Hoover has quit (Changing host).
15:36:49 -!- Phantom_Hoover has joined.
15:46:46 -!- ogrom has joined.
16:20:09 <kallisti> Phantom_Hoover: so apparently "Asian" in the UK means south asian?
16:20:15 <Phantom_Hoover> Yes.
16:20:18 <kallisti> and excludes east asians?
16:20:20 <kallisti> huh. interesting
16:20:36 <Phantom_Hoover> No, but if you say 'Asian' the default meaning is south Asian.
16:20:58 <Phantom_Hoover> And you'd probably have to clarify if you meant east asians.
16:21:12 <kallisti> I'm pretty sure most americans don't consider indians and "middle easterners" to be asian.
16:21:19 <kallisti> it mostly means east asian here.
16:22:26 <kallisti> but the census does include indians under the category asian.
16:23:15 <kallisti> "Statistics Norway considers people of Asian background to be people from all Asian countries.[11][12]"
16:23:19 <kallisti> Norway, always the sensible one.
16:24:18 <kallisti> "The Canadian Census' list of Visible Minorities includes "West Asian", "South Asian" and "Southeast Asian".[6] The Canadian government uses "West Asian" in its statistics; however people from the Arab countries are counted in a separate "Arab" category.[7][8]"
16:24:24 <kallisti> why. why do we make these arbitrary cultural categories.
16:28:44 -!- ogrom has quit (Quit: Left).
17:07:48 <fizzie> Spam subject (paraphrasing, accidentally deleted it already): "We care about your Education american education".
17:07:58 <fizzie> So they care about my education, but only if it's an American education.
17:09:57 <Sgeo_> No, clearly, your name is american education.
17:12:45 <fizzie> So... an American education consists only of telling people my name? Well, at least they know how to prioritize.
17:39:56 -!- ogrom has joined.
17:43:41 -!- epicmonkey has quit (Ping timeout: 252 seconds).
17:49:46 -!- Niazi1 has joined.
17:49:55 -!- Niazi1 has quit (Client Quit).
17:58:56 -!- derdon has quit (Remote host closed the connection).
18:26:09 -!- phasyak has joined.
18:26:39 -!- phasyak has left.
18:26:48 -!- phasyak has joined.
18:30:32 -!- phasyak has quit (Client Quit).
18:52:59 -!- epicmonkey has joined.
18:54:33 -!- oerjan has joined.
18:55:31 -!- fizzie has quit (Remote host closed the connection).
18:56:01 -!- ogrom has quit (Quit: Left).
18:57:19 -!- fizzie has joined.
18:57:26 <Sgeo_> Scheme is simple but highly fragmented, and Common Lisp is complex and creeky but has a semi-unified ecosystem
18:57:41 -!- ion has quit (Ping timeout: 244 seconds).
18:58:17 <Sgeo_> Also Lisp has no non-hacky coroutines
18:58:26 -!- azaq23 has quit (Quit: Leaving.).
18:58:53 <shachaf> Nor does Scheme, unless you count continuations-as-coroutines as non-hacky.
19:01:20 <oerjan> <Sgeo_> Is it just me, or is the bus factor of the current Common Lisp ecosystem ONE? <-- bus factor?
19:01:59 <fizzie> oerjan: The amount of people using public transit, like poor people do, as opposed to taxis or limos with drivers or helicopters or such.
19:02:07 <Sgeo_> oerjan, how many specific people who, if hit by a bus, would cause the project to be severely damaged or end
19:02:19 <Sgeo_> http://en.wikipedia.org/wiki/Bus_factor
19:02:41 <oerjan> ah.
19:03:12 <Sgeo_> Well, my actual use-case for coroutines or continuations etc. is just using asynchronous stuff in a synchronous-looking way
19:03:12 -!- asiekierka has quit (Quit: Connection reset by PO).
19:03:44 -!- asiekierka has joined.
19:06:12 <Sgeo_> Obviously, if Xach were hit by a bus, Common Lisp would continue to exist, but afaict, he's the sole maintainer of Quicklisp, which is THE repository that Common Lispers use for all package stuff
19:19:08 <kmc> you know what currency they use in bosnia?
19:19:13 <kmc> the deutschmark.
19:19:37 <oerjan> i find this... unlikely.
19:19:44 <oerjan> surely you mean euro.
19:19:54 <kmc> no
19:20:01 <kmc> http://en.wikipedia.org/wiki/Bosnia_and_Herzegovina_convertible_mark
19:21:08 <kmc> also they have one set of bills for Serbs and another for Bosniaks
19:22:57 <oerjan> naturally.
19:23:12 <fizzie> Do the bills annihilate if they come into contact?
19:23:29 <kmc> it's pegged to the Deutschmark which is pegged to the Euro
19:23:37 <kmc> the former peg is 1:1
19:23:43 <shachaf> heegan
19:23:55 <kmc> i don't remember if deutschmarks are still redeemable for euros, but anyway there are old DM values in contracts
19:24:09 <oerjan> montenegro, otoh, uses euros
19:24:26 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
19:24:28 <kmc> yeah
19:24:35 <kmc> without the permission or approval of the ECB
19:24:40 <kmc> i was just there
19:24:53 <shachaf> You need permission to use Euros?
19:25:10 <kmc> no, montenegro uses them without permission
19:25:17 <oerjan> q.e.d.!
19:25:23 <kmc> yup
19:26:59 <Sgeo_> shachaf, what's your opinion of Tcl?
19:29:24 -!- pikhq has quit (Ping timeout: 248 seconds).
19:29:30 -!- pikhq_ has joined.
19:29:55 <shachaf> I was visiting a friend yesterday and I renamed his cat Simon Marlow.
19:29:56 <kmc> also a lot of people in albanda would take euros
19:30:08 <kmc> and it seemed to be the default for anything over like US$100
19:30:34 <kmc> albania*
19:34:25 <kmc> gotta go to bosnia, bbl
19:55:31 -!- ion has joined.
19:58:03 -!- Vorpal has quit (Ping timeout: 276 seconds).
19:59:44 -!- asiekierka has quit (Remote host closed the connection).
20:03:02 <Phantom_Hoover> bosnda
20:19:55 <Sgeo_> The Prototypes with Multiple Inheritance seems to have broken my brain. I used to like the idea, now I dislike it just because I see its motivation can be fulfilled even without the prototype part
20:20:08 <Sgeo_> I think both of these opinions are not entirely reasonable.
20:31:19 -!- boily has left ("WeeChat 0.3.8").
20:39:13 -!- augur_ has quit (Remote host closed the connection).
20:42:25 -!- MoALTz has quit (Quit: Leaving).
21:07:33 -!- variable has quit (Quit: I found 1 in /dev/zero).
21:18:45 -!- Taneb has joined.
21:18:52 <Taneb> Hello!
21:19:05 <oerjan> eek, a Taneb
21:19:24 <Taneb> The monitor for my desktop has stopped working...
21:19:39 <Taneb> It doesn't turn on and when the power's in it makes a clicking sound
21:20:04 <Taneb> :(
21:21:30 <Taneb> Of course, when we got it, the world trade centre had twin towers
21:21:39 <oerjan> click beetle stuck on the circuit board, that's the only explanation
21:21:53 <Taneb> Of course!
21:22:02 <Taneb> I'll rescue it in the morning
21:22:30 <Taneb> It was one of the best monitors you could get in 2000
21:23:17 <Taneb> 1280 x 1024 px
21:28:34 <Gregor> “I feel stupid. I'm showing up with a gun to an artillery fight. That's like showing up with a rocket launcher to a tactical warhead fight.”
21:31:11 * oerjan shows up with a fork to a knife fight
21:32:39 * Taneb shows up with a spoon to a fork fight
21:33:17 * Gregor shows up with his tongue to a spoon fight
21:34:59 <oerjan> kinky!
21:48:55 -!- epicmonkey has quit (Ping timeout: 248 seconds).
21:49:10 <oerjan> :t state
21:49:11 <lambdabot> forall s a. (s -> (a, s)) -> State s a
21:49:16 <oerjan> :t writer
21:49:17 <lambdabot> forall a w. (a, w) -> Writer w a
21:51:02 <Taneb> @unmtl Writer
21:51:02 <lambdabot> Plugin `unmtl' failed with: `Writer' is not applied to enough arguments, giving `/\A B. (B, A)'
21:51:15 <Taneb> @unmtl Writer [()] Int
21:51:15 <lambdabot> (Int, [()])
21:51:37 <Taneb> @unmtl MaybeT (Writer (Sum Int)) Bool
21:51:37 <lambdabot> (Maybe Bool, Sum Int)
21:51:46 * oerjan is looking at http://stackoverflow.com/questions/11684321/how-to-play-with-control-monad-writer-in-haskell btw
21:51:48 <Taneb> @unmtl ConT (Writer (Sum Int)) Bool
21:51:49 <lambdabot> ConT (Writer (Sum Int)) Bool
21:52:48 <oerjan> it seems lambdabot has the change where Writer and WriterT were merged and separate writer functions were made to replace the olde Writer constructor
21:53:19 <Taneb> @unmtl WriterT (Sum Int) [] Bool
21:53:19 <lambdabot> [(Bool, Sum Int)]
21:53:26 <oerjan> but it does _not_ have the latest change where writer and state were made into methods of the MonadWriter / MonadState classes so you can use them even more generally
21:53:31 <oerjan> :t reader
21:53:33 <lambdabot> forall r a. (r -> a) -> Reader r a
21:53:42 <oerjan> :t asks
21:53:43 <lambdabot> forall r a (m :: * -> *). (MonadReader r m) => (r -> a) -> m a
21:54:12 <oerjan> i'm not sure if reader has been generalized like that, i think it would be just a synonym for asks
21:54:39 <oerjan> (@unmtl probably knows nothing about any of that)
21:54:59 <oerjan> Taneb: *ContT
21:55:05 <Taneb> Heh
21:55:09 <Taneb> @unmtl ContT (Writer (Sum Int)) Bool
21:55:09 <lambdabot> Plugin `unmtl' failed with: `ContT (Writer (Sum Int)) Bool' is not applied to enough arguments, giving `/\A. (A -> Bool (Writer (Sum Int))) -> Bool (Writer (Sum Int))'
21:55:19 <Taneb> @unmtl ContT Word8 (Writer (Sum Int)) Bool
21:55:20 <lambdabot> (Bool -> (Word8, Sum Int)) -> (Word8, Sum Int)
21:56:02 <oerjan> :t cont
21:56:04 <lambdabot> forall a r. ((a -> r) -> r) -> Cont r a
21:56:13 <Taneb> Why is there the split between mtl and transformers
21:56:34 <oerjan> i don't think cont can be made a method
21:57:48 <oerjan> Taneb: iirc transformers contains the part that doesn't require fancy type stuff like functional dependencies
21:58:26 <oerjan> i think there's an alternative to mtl which uses type families on top of transformers instead, for those who like that
21:59:22 <Taneb> Hmm
21:59:46 <Taneb> What extensions are on the cards for becoming part of Haskell proper next report?
22:00:14 <oerjan> i dunno, is there any progress on the next report revision at all?
22:00:46 <Taneb> No idea :(
22:02:23 <oerjan> i'm not following anything other than reddit for haskell news at present
22:03:07 <oerjan> there have been several recent interesting additions to ghc, but they will of course take decades to become official ;)
22:04:08 <Taneb> Maybe when I'm a supervillain
22:04:33 <oerjan> nah, not that soon
22:04:49 <Taneb> Maybe when I'm the evil league of evil
22:05:15 * oerjan isn't sure whether there's an "in" missing there
22:05:27 <oerjan> with supervillains, one can never be sure
22:06:01 <Taneb> Indeed
22:07:18 <Taneb> But maybe when I'm a supervillain, I'll be helping implement the features
22:23:40 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:35:00 -!- nooga has quit (Ping timeout: 248 seconds).
22:35:15 -!- Ngevd has joined.
22:35:24 -!- Ngevd has quit (Client Quit).
22:35:54 <oerjan> the ghost of Tanebs past
22:36:57 <quintopia> the ghost of Tanebs passed :/
22:37:22 <oerjan> that it did
22:39:29 <Taneb> I think that means it's time for me to go to bed, only to be awoken firstly by the ghost of my dead coworker, then three other ghosts representing periods of history, for the purpose of making me a better person
22:39:54 -!- Taneb has quit (Quit: Leaving).
22:42:32 -!- copumpkin has joined.
23:08:46 -!- copumpkin has changed nick to Escrow.
23:18:29 -!- Escrow has changed nick to copumpkin.
23:21:44 -!- variable has joined.
23:21:48 -!- variable has quit (Changing host).
23:21:48 -!- variable has joined.
23:29:56 -!- pikhq_ has quit (Ping timeout: 248 seconds).
23:29:57 -!- pikhq has joined.
2012-08-03
00:03:51 -!- Jafet has joined.
00:37:39 -!- ssue has quit (Ping timeout: 252 seconds).
00:37:54 -!- oerjan has quit (Quit: Good night).
00:39:02 <Sgeo_> "In all honesty and speaking as someone who used C++ professionally for years -- C++ has passed the point of usefulness. I have heard people say that Ada was a language designed by a committee to prove that not all programming languages can be implemented, it is overly complex and difficult to understand, yet it is a model of simplicity and elegance compared to C++, which in its latest incarnation also demonstrates the pristine and readable
00:39:02 <Sgeo_> qualities of APL. Frankly, C++ should have its head cut off and its head and body buried at a crossroad with garlic in its mouth and a stake though its heart. That probably won't kill it, but it should slow it down somewhat. Nowadays I would never start a project in C++ that I ever thought I'd need to finish. I'd rather do it in something simpler and more portable. Like assembler."
00:41:38 <Phantom_Hoover> wow what an original opinion
00:42:28 <Phantom_Hoover> I mean it's not a bad screed, but why did you paste it?
00:42:38 * Sgeo_ thought it was amusing
00:59:48 -!- pikhq_ has joined.
01:00:04 -!- pikhq has quit (Ping timeout: 248 seconds).
01:05:26 -!- copumpkin has quit.
01:06:07 -!- copumpkin has joined.
01:34:18 -!- kubra09 has joined.
01:34:35 -!- kubra09 has quit (Client Quit).
01:58:23 -!- ssue has joined.
02:04:41 -!- zzo38 has joined.
02:09:25 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:16:10 <Sgeo_> What languages have Smalltalk-like IDEs?
02:16:17 <Sgeo_> Smalltalk and Tcl at least
02:16:28 <Sgeo_> Although the Tcl ones probably aren't well-maintained
02:22:57 <zzo38> I don't know
02:46:48 <itidus21> Tcl does.
02:47:17 <itidus21> And Smalltalk itself, by definition has a Smalltalk-like IDE
02:54:30 <zzo38> What does BIG talk have?
02:55:42 <itidus21> `pastelogs big
02:55:49 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.31651
02:56:18 <itidus21> <SamB> X is much bigger then Y -- this really says so much with so few words
02:57:49 <itidus21> ok can do better
02:57:58 <itidus21> `pastelogs big.*big
02:58:31 <HackEgo> No output.
02:58:34 <itidus21> `pastelogs big.*big
02:58:59 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22129
02:59:22 -!- pikhq_ has quit (Ping timeout: 248 seconds).
02:59:24 -!- pikhq has joined.
02:59:28 <itidus21> ... not enough
02:59:37 <itidus21> we must give her all she's got
02:59:45 <itidus21> `pastelogs big.*big.*big
02:59:54 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9313
03:05:05 -!- monqy has quit (Quit: hello).
03:06:58 <itidus21> `pastelogs bigtalk
03:07:05 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.27446
03:07:42 <itidus21> it's probably on a drawingboard somewhere
03:12:00 <itidus21> one of those programming language designers who uses drawing boards
03:15:04 -!- Jafet has quit (Quit: Leaving.).
03:24:34 <zzo38> What assembler features did you like to have in assemblers?
03:32:25 <itidus21> "A man standing at a drawing board with Lets Draw written above" http://image1.masterfile.com/em_w/03/47/29/608-03472993fw.jpg
03:34:28 <itidus21> @google "A man standing at a drawing board with Lets Draw written above"
03:34:31 <lambdabot> http://www.inmagine.com/izs015/izs015555-photo
03:34:31 <lambdabot> Title: A Man Standing At A Drawing Board With Lets Draw Written Above Stock Photos / Pi ...
03:39:40 -!- elliott has joined.
03:39:59 <shachaf> hellio, elliott!
03:40:21 <shachaf> `WELCOME elliott
03:40:27 <HackEgo> ​ELLIOTT: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANG
03:42:28 -!- elliott has left.
04:25:24 -!- ogrom has joined.
04:25:47 -!- ogrom has quit (Client Quit).
04:29:51 -!- fgfd9ou has joined.
04:31:05 -!- fgfd9ou has quit (Client Quit).
05:34:06 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
05:42:30 -!- TodPunk has joined.
05:49:37 -!- augur has joined.
05:51:29 -!- Jafet has joined.
06:12:20 -!- zzo38 has quit (Remote host closed the connection).
07:01:03 -!- asiekierka has joined.
07:45:01 -!- copumpkin has quit (Ping timeout: 246 seconds).
07:45:32 -!- copumpkin has joined.
07:46:53 -!- Jafet has quit (Quit: Leaving.).
07:56:23 -!- epicmonkey has joined.
08:00:38 -!- nooga has joined.
08:21:04 -!- nooga has quit (Ping timeout: 246 seconds).
08:33:23 -!- ogrom has joined.
09:02:35 -!- Taneb has joined.
09:02:43 <Taneb> Hello!
09:02:54 <Taneb> Hang on
09:02:57 -!- Taneb has quit (Client Quit).
09:03:15 -!- Taneb has joined.
09:03:24 <Taneb> Hello!
09:10:12 -!- ogrom has quit (Quit: begone).
09:11:42 <mroman> Hang on.
09:25:02 <kmc> stand by for transmission
09:26:30 -!- epicmonkey has quit (Ping timeout: 246 seconds).
09:27:13 -!- nooga has joined.
09:34:24 -!- azaq23 has joined.
09:34:38 -!- azaq23 has quit (Max SendQ exceeded).
09:35:07 -!- azaq23 has joined.
09:35:42 <mroman> Roger.
09:35:50 <mroman> Can you repeat that? Over.
09:36:28 <kmc> delta oscar november golf sierra
09:39:20 <mroman> Romeo Oscar Golf Echo Romeo
09:43:57 <Taneb> Hotel India
09:44:17 -!- asiekierka has quit (Remote host closed the connection).
09:50:56 <kmc> foxtrot foxtrot foxtrot foxtrot foxtrot foxtrot foxtrot
10:00:26 -!- ogrom has joined.
10:18:05 <ion> uniform uniform uniform uniform uniform uniform uniform uniform
10:19:14 <kmc> c dot c
10:24:44 -!- juhovh has joined.
10:24:56 -!- juhovh has left.
10:31:09 -!- epicmonkey has joined.
10:32:46 -!- asiekierka_ has joined.
10:44:13 -!- pikhq has quit (Ping timeout: 244 seconds).
10:44:27 -!- pikhq has joined.
10:53:45 -!- copumpkin has quit (Ping timeout: 244 seconds).
10:53:45 -!- SimonRC has quit (Ping timeout: 244 seconds).
10:53:47 -!- Sgeo__ has joined.
10:53:54 -!- augur_ has joined.
10:53:56 -!- Taneb has quit (Ping timeout: 244 seconds).
10:53:57 -!- Sgeo_ has quit (Ping timeout: 244 seconds).
10:53:57 -!- lambdabot has quit (Ping timeout: 244 seconds).
10:54:02 -!- augur has quit (Ping timeout: 244 seconds).
10:54:58 -!- copumpkin has joined.
10:54:58 -!- SimonRC has joined.
10:55:02 -!- Taneb has joined.
10:55:13 -!- copumpkin has quit (Changing host).
10:55:13 -!- copumpkin has joined.
11:16:37 -!- mig22 has joined.
11:19:03 -!- monqy has joined.
11:28:32 -!- derdon has joined.
11:31:05 -!- Taneb has quit (Quit: Leaving).
11:31:54 -!- copumpkin has quit (Ping timeout: 248 seconds).
11:32:24 -!- copumpkin has joined.
11:40:04 -!- mig22 has quit (Remote host closed the connection).
11:41:35 -!- Taneb has joined.
11:41:41 <Taneb> Hello
11:42:43 -!- mig22 has joined.
11:55:51 -!- ais523 has joined.
11:55:59 -!- MoALTz has joined.
12:00:14 -!- boily has joined.
12:05:42 -!- Taneb has quit (Quit: Leaving).
12:07:26 <Sgeo__> TclTalk seems fun
12:16:20 <Sgeo__> Ugh, it uses a non-Tcl-standard way of initializing variables in namespaces
12:16:41 <Sgeo__> I mean, it makes sense, because [namespace eval] stuff isn't exactly stored anywhere available for introspection, but still
12:17:48 <Sgeo__> Bluh, the single-dispatchness of Tcl OO systems in general is striking me again
12:20:07 <nooga> does somebody know the name of this constructed script that was based on 3x3 grid of letters
12:20:42 <nooga> and the characters were constructed from the cell edges with longer or shorter lines
12:38:52 -!- ogrom has quit (Quit: begone).
12:40:28 -!- ogrom has joined.
12:45:50 -!- ogrom has quit (Quit: Left).
12:46:14 -!- ogrom has joined.
12:46:21 -!- asiekierka has joined.
12:46:21 -!- asiekierka has changed nick to SoftDodger.
12:46:30 -!- SoftDodger has quit (Remote host closed the connection).
12:47:43 -!- ais523 has quit (Remote host closed the connection).
12:48:04 -!- ais523 has joined.
12:50:50 -!- ogrom has quit (Client Quit).
12:52:48 -!- ogrom has joined.
12:54:38 -!- ogrom has quit (Client Quit).
12:54:59 -!- pikhq_ has joined.
12:55:17 -!- pikhq has quit (Ping timeout: 255 seconds).
12:57:50 -!- ogrom has joined.
13:01:52 -!- Taneb has joined.
13:02:23 <kmc> google maps has very bad coverage in bosnia & herzegovina
13:02:36 <kmc> but (probably not by coincidence) openstreetmaps has exceptionally good coverage
13:02:55 <Sgeo__> Just because I like TclTalk doesn't mean I should start looking at Smalltalk again, does it
13:02:56 <Sgeo__> ?
13:04:18 -!- ogrom has quit (Ping timeout: 255 seconds).
13:04:27 <kmc> make something interesting in whatever language seems appropriate for the job
13:04:34 -!- Phantom_Hoover has joined.
13:05:04 <Taneb> Hello
13:06:48 <kmc> hi
13:07:49 <itidus21> Sgeo__: if you were me, you would only be contented with an IDE which only exists undesigned in your imagination and find everything else has faults
13:08:40 <itidus21> eventually along this train of thought you would realize that any program would be imperfect
13:09:03 <Sgeo__> Smalltalk-like IDEs tend to let you change the IDE while it's running
13:09:22 <Sgeo__> So you could probably make it to your satisfaction
13:09:25 <Taneb> Smalltalk's the really object oriented one, right?
13:09:30 <Sgeo__> Yeah
13:09:33 <Sgeo__> (Class-based)
13:09:38 <Sgeo__> And image-based
13:10:17 <Taneb> Should it be on my list of languages to learn eventually?
13:10:52 <Sgeo__> EVERYTHING should be on your list of languages to learn eventually. Except PHP.
13:11:37 <quintopia> and algol 68
13:11:49 <Phantom_Hoover> And COBOL.
13:12:17 <Taneb> What about NetFuck?
13:12:29 <Sgeo__> Phantom_Hoover, hey, COBOL's fun!
13:12:31 <Sgeo__> </lies>
13:12:54 <Sgeo__> But... it's interesting to see an.... old model for programming
13:13:47 <Phantom_Hoover> Learn FORTRAN then!
13:14:12 <Sgeo__> Although I could describe the thing that sticks out the most to me: ALL variables must be declared in one section of the code. COBOL procedures (I forget what they're called) do not accept arguments, instead, they must look at and modify some of the declared variables.
13:14:14 <quintopia> or algol 60 (which doesnt suck how algol 68 does)
13:19:13 <Taneb> COBOL was the language my parents used
13:19:37 <Sgeo__> Taneb, you should learn Tcl
13:19:56 <Taneb> I thought that was a protocol?
13:20:01 <Sgeo__> That's TCP
13:20:05 <Taneb> Ah
13:20:26 <Sgeo__> http://www.tcl.tk/
13:20:39 <Sgeo__> Note that opinion in this channel does seem to be divided about it
13:21:05 <Taneb> Is Tcl the one with tk?
13:21:16 <Sgeo__> Yes
13:24:02 <kmc> learning about the siege of sarajevo makes me think it might not be such a crazy idea to stockpile years worth of food, medicine, etc.
13:24:50 <kmc> in the USA there is a general tendency to make fun of people who do this
13:24:57 <kmc> i bet that tendency does not exist in bosnia anymore
13:29:02 <Phantom_Hoover> In Bosnia a domestic war was a very likely possibility.
13:29:08 <Phantom_Hoover> In the US? Not so much.
13:29:12 <kmc> more likely than the USA, yeah
13:31:33 <kmc> but how many residents of sarajevo in 1984 -- when the city was hosting the Olympics -- would believe that in 8 years time they'd be under daily attack by artillery and snipers?
13:31:48 <kmc> i don't really know
13:32:20 <Phantom_Hoover> You could say the same thing of Germany in 1936.
13:32:29 <kmc> yeah
13:34:00 <Taneb> How many people in London 1940 would believe that in only 8 years they'd be hosting the olympics?
13:34:11 <kmc> or beirut in the 60's
13:34:32 <kmc> Taneb: heh, i like your reversal :)
13:35:05 <kmc> in early 1940 it was not totally clear that wwii was going to be a big deal
13:35:56 <kmc> i think these things sneak up on people
13:36:05 <Phantom_Hoover> I think if you were discussing the crazy survivalist angle with someone you could make a good case for war reaching Germany being possible.
13:36:15 <kmc> people who are enjoying prosperity for the time being, and who are more concerned with their daily lives than geopolitics
13:38:07 <kmc> this is an instance of the fat tails phenomenon
13:38:23 <kmc> people underestimate the probability of unlikely events
13:38:57 <Phantom_Hoover> Unless they've invested time and resources into preparing for them, in which case they'll overestimate.
13:39:01 <kmc> sure
13:39:47 <Phantom_Hoover> Also I think one reason the survivalists get mocked is because many of them don't have a clue what they're doing (just ask quintopia about his gold reserves).
13:39:54 <kmc> sure
13:39:59 <kmc> many of them are crazy, for sure
13:41:08 <kmc> building a fortified NBC-proof bunker in your backyard is probably crazy :)
13:41:18 <kmc> but stashing away some food and water is not that crazy, or expensive
13:41:25 <kmc> even if you don't expect to use it
13:41:45 <kmc> in disaster-prone areas this is a normal thing to do, but with like 1-2 weeks worth
13:42:14 <kmc> which will not do you much good in a prolonged armed conflict
13:43:25 <quintopia> Phantom_Hoover: i dont have any gold reserves. its still a better idea than bitcoin reserves.
13:43:55 <Phantom_Hoover> That second sentence might make sense if anyone actually stockpiled bitcoins.
13:44:14 <quintopia> funny thing is...some people do
13:44:24 -!- MoALTz has quit (Quit: Leaving).
13:44:25 <fizzie> There's a bitcoin thing-thing here this year.
13:44:48 <Phantom_Hoover> quintopia, if they started doing it earlier, they're richer now than anyone who put it into gold.
13:44:51 <fizzie> You collect hidden QR codes and send something like 0.0005 BTC to each address you find.
13:45:06 <fizzie> Who finds most gets a 5 BTC physical coin-thing (or whatever) and things.
13:45:43 <quintopia> Phantom_Hoover: not necessarily. have you compared the rise in gold prices over the last twenty years?
13:46:39 <Phantom_Hoover> No, but I somehow doubt there's been a 30-fold increase in the span of a year.
13:49:21 <itidus21> i am afraid of bitcoin myself
13:50:03 <Phantom_Hoover> fizzie, is the physical coin thing the necessary cryptographic information on a chip or something?
13:50:09 <Taneb> I've never seen anywhere that takes bitcoin?
13:50:33 <itidus21> i have no desire to help anyone get rich by advancing bitcoin
13:51:06 <Gregor> My greatest fear in gold reserves is that at some point, we'll look at ourselves as a species, and decide it's time to stop worshiping valueless shiny rocks.
13:51:09 <itidus21> and i like currencies which have evolved slowly and found some degree of balance
13:51:24 <Phantom_Hoover> Gregor, invest in tantalum!!!
13:51:46 <Phantom_Hoover> It's shiny but also vital for microelectronics!
13:52:35 <fizzie> Phantom_Hoover: I don't know, but I guess I can check.
13:52:56 <Phantom_Hoover> Or rhodium, which AFAIK is a really good investment because it's incredibly rare and incredibly useful as a catalyst.
13:53:37 <fizzie> Phantom_Hoover: It's just a piece of paper in a "tamper-proof" seal.
13:53:39 <fizzie> https://en.bitcoin.it/wiki/Casascius_physical_bitcoins
13:53:42 <fizzie> One of those.
13:53:46 <Phantom_Hoover> Dammit.
13:53:59 <kmc> isn't energy the best investment?
13:54:05 <itidus21> my view of survivalism, money, reserves and life is that no matter what we do about all of these things, we are always at risk of dying due to some event we cannot predict or control
13:54:06 <kmc> store your wealth by pumping water to the top of a hill
13:54:07 <Phantom_Hoover> I mean, a piece of *paper*?
13:54:16 <Phantom_Hoover> You'd need a big hill.
13:54:34 <kmc> itidus21: that's why i don't wear my seatbelt when i ride in a car
13:54:44 <kmc> i mean, you might die anyway, so there is no point in doing anything to decrease the chance of it
13:54:44 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:54:49 <fizzie> Phantom_Hoover: I've understood people do Bitcoin "paper wallets" to avoid those dastardly hackers.
13:54:57 <itidus21> kmc: oh i go out of my way to decrease the chances of it ..
13:55:35 <itidus21> i have known people who genuinely don't seem to care
13:55:48 <fizzie> The people doing the thing also mentioned the first restaurant in Helsinki to accept BTC just opened recently.
13:56:11 <itidus21> like when i would take my time before crossing a road, he would mention something about that
13:57:14 <itidus21> or i have even been told of by someone when i was younger for wearing seatbelt
13:58:08 <Sgeo__> itidus21, kmc's point is that survivalism is another way of going out of your way to decrease your chances of dying.
13:58:14 <itidus21> hmm...
13:58:25 <itidus21> im also an asshole
13:58:43 <itidus21> its the only explanation
13:59:02 <Sgeo__> I have to admit those "physical bitcoins" are pretty
13:59:19 <itidus21> well.... collecting food is good
13:59:41 <itidus21> someone once suggested to me that at such times the valuable things are food and guns
14:00:38 <Phantom_Hoover> And ammunition.
14:01:09 <itidus21> maybe thats an over simplified view they put though
14:03:24 <itidus21> i keep imagining gold containing chocolate
14:03:39 <itidus21> damn those foil wrapped coins
14:03:50 <Taneb> itidus21, invest in cocoa
14:04:04 <itidus21> it brings mice
14:04:15 <itidus21> at least if its not sealed properly
14:04:24 <kmc> gotta seal ur food
14:04:34 <itidus21> darn it
14:05:39 <Phantom_Hoover> Wrap all your food in gold so that even if someone manages to steal it they'll just discard it as worthless gold.
14:05:53 <itidus21> hmm ok im catching up
14:06:15 <itidus21> so the point of the gold reserves is if the economy crashes you still have something of value
14:06:27 <itidus21> and not implying a war scenario
14:06:54 <Phantom_Hoover> I think it's also because some people still think it has inherent value.
14:07:22 -!- ogrom has joined.
14:07:42 <itidus21> i wonder if it does
14:07:50 <kmc> i think you'd be better off investing in barterable skills
14:08:43 <kmc> even if gold retains some "intrinsic value", there is going to be much less demand and liquidity in gold markets after an economic collapse
14:08:52 <kmc> especially because you lose the infrastructure which makes markets work
14:09:15 <itidus21> women often like tradesmen, they're fit and always find work
14:09:21 <kmc> whereas if you can, say, perform basic medical procedures, or repair automobiles and convert them to run on wood gas
14:09:26 <kmc> then i think you're set
14:10:10 <itidus21> kmc: there is no counter argument.
14:10:18 <kmc> on a barely related note, it seems that about 50% of cars in albania are 90's mercedes
14:10:29 <kmc> i don't know why
14:10:31 <itidus21> whoa
14:10:48 <kmc> maybe during the communist era, the ability to import a german luxury car was a great sign of power and wealth
14:11:11 <itidus21> oh i saw a video about russian video games yesterday
14:11:17 <kmc> and somehow mercedes caught on versus other brands
14:11:22 <itidus21> rather video games sold in russia
14:11:31 <kmc> and now it's easy to get one, but status symbols are sticky
14:11:38 <itidus21> they had super mario bros 1 - 16 for the dendy
14:11:39 <kmc> this is also why everything is covered in bright blue LEDs these days
14:12:30 <itidus21> i wonder why blue is cooler than green
14:13:18 <kmc> "Among the games was the Super Mario Bros. series, which included the three original Mario productions from Nintendo, along with a series of unlicensed Mario games, most of which were just other Famicom games with the main character replaced with Mario sprites."
14:13:41 <kmc> itidus21: blue LEDs were still expensive at a time when red and green LEDs were cheap
14:13:58 <kmc> so they became a signifier of expensive quality electronics
14:14:05 <itidus21> as it turns out, the russians were led to believe that all of these games were actually canonical mario games
14:14:08 <kmc> now they are cheap and are found all over cheap kwality electronics
14:15:07 <itidus21> and on a tv show, when joe and mac was being reviewed they said that joe and mac was merely a pirate copy of super mario 16 with the sprite of a caveman
14:15:49 <kmc> it's the same with laser pointers, except that green is subjectively much brighter at the same output power
14:16:05 <kmc> so i think ludicrously overpowered green lasers are still the main coveted nerd-toy in this area
14:16:12 <Sgeo__> I guess computer programming is not a barterable skill
14:16:21 <kmc> but blu-ray-based purple lasers that can set stuff on fire are also popular
14:16:25 <Sgeo__> Unless somehow we end up in Alpha Complex
14:16:29 <kmc> Sgeo__: it depends but probably not
14:17:06 <kmc> the ability to hack whatever computing equipment is left over after the apocalypse into basic automation stuff would be useful
14:17:14 <itidus21> my understanding of nature isn't good enough to predict how knowledge of computation could be lost
14:17:14 <kmc> also telecommunications
14:17:19 -!- copumpkin has joined.
14:17:21 <kmc> ham radio and maybe long-distance wifi
14:17:29 <kmc> it depends on the type of apocalypse though
14:17:41 <kmc> if most people die off, automation will be valuable
14:17:49 <itidus21> like, predicting the actual future is a super-complex problem
14:17:54 <kmc> if there is a surplus of people, then not so much
14:17:57 <itidus21> yes im making up these words
14:18:11 <Phantom_Hoover> Um, wait.
14:18:23 <Phantom_Hoover> Automation is necessary for large numbers of people, not small ones.
14:18:43 <itidus21> not predicting one event in the future, but predicting the collective events leading to some future moment
14:25:07 <itidus21> albania google maps looks like it was done by people walking along the streets on foot
14:25:22 <itidus21> ^street view
14:27:28 <Phantom_Hoover> maybe google were driving on the pavement
14:27:32 <kmc> it looks to me like they don't have actual street view
14:27:38 <kmc> just geo-tagged photos taken by random people
14:27:52 <itidus21> i like it
14:28:04 <kmc> i don't know where they scrape these from
14:28:56 <kmc> the bus through albania stopped at a truck stop which only had squat toilets
14:29:12 <kmc> this would not be such a problem except that a lot of the people using them apparently did not know how to use squat toilets
14:29:17 <itidus21> i was contemplating the other day that street view must have an enormous fuel budget
14:29:22 <kmc> so there was a lot of shit all over the floor
14:32:01 <itidus21> are these 90's mercedes? https://ssl.panoramio.com/photo/75112590
14:32:45 <kmc> also the mercedes thing was observed mostly in Shkodra so it may not hold in other cities
14:33:08 <itidus21> that looks like a mercedes on the left of that pic at a guess
14:33:23 <kmc> the big one won't load for me
14:33:26 <kmc> maybe it wants frash prugin
14:33:32 <itidus21> me neither
14:33:36 <itidus21> screw it
14:34:03 <itidus21> ill make it happen though via another means
14:34:10 <itidus21> cos clearly i have nothing better to do
14:34:44 <kmc> itidus21: you should check out the pyramid at 41.323411,19.821246
14:36:03 <itidus21> http://oi50.tinypic.com/11lmyjs.jpg
14:36:53 <kmc> it looks much shitter now than most of these photos
14:37:08 <kmc> this one's about right:
14:37:18 <fizzie> Aren't the Google Maps photos from Panoramio? At least that's what I thought.
14:37:29 <kmc> too blurry to tell itidus21
14:37:34 <itidus21> ok
14:37:59 <fizzie> Also they have a walk-around streetview camera, the blog mentioned it.
14:38:01 <itidus21> i did go with jpeg, via microsoft paint, so even if it was a good pic before who knows
14:38:06 <fizzie> Though only for places where you can't drive a car to.
14:38:42 <fizzie> http://i1-news.softpedia-static.com/images/news-700/The-Google-Street-View-Car-Now-Fits-into-a-Backpack.jpg
14:38:45 <fizzie> That thing.
14:39:09 <kmc> reminds me of http://www.pcworld.com/article/241960/throw_this_camera_ball_to_take_a_360degree_panorama.html
14:39:56 -!- ogrom has quit (Quit: Left).
14:40:06 <kmc> "So the ball captures images once reaches its maximum arc because it is almost at a stand still as its velocity and the gravity acting on it are at equilibrium."
14:40:12 <kmc> good job pcworld writer person
14:40:56 <Phantom_Hoover> How can it tell if it's at the top of the arc?
14:41:33 <fizzie> Here's a panorama which I made from a ball that was already there: http://xn--nxa.zem.fi/g2/d/16009-4/p1100262.jpg -> http://xn--nxa.zem.fi/g2/d/16203-2/p1100271-remapped.jpg
14:41:38 <fizzie> Okay, it's not very high-fidelity.
14:41:41 <kmc> i was going to say "accelerometer" but no, it's not that simple
14:41:50 <fizzie> The ball isn't actually spherical, and it's a bit dirty too.
14:41:52 <kmc> because the acceleration on the free ball is constant regardless of its velocity
14:42:13 <fizzie> It has a velocitometer, of course.
14:42:23 <kmc> possible
14:42:40 <fizzie> An heightometer.
14:42:59 <Sgeo__> Well, there's acceleration added by the thrower
14:43:04 <Sgeo__> If you just drop the ball, what happens?
14:43:16 <Sgeo__> Although that too would be detectable, hmm
14:43:25 <kmc> Sgeo__: the initial acceleration is (in theory) instantaneous
14:43:31 <kmc> once the ball leaves your hand, the only acceleration is gravity
14:43:43 <kmc> you could measure the initial acceleration and then dead-reckon the top point from that
14:44:24 <Sgeo__> Is it sad that the reason I know the term dead-reckoning is because of a book on Microsoft Flight Simulator that I had many years ago?
14:44:32 <kmc> no
14:44:33 <Phantom_Hoover> Mm, possibly.
14:44:40 <Phantom_Hoover> Very prone to calibration errors, though.
14:44:59 <kmc> what if you had like a marble inside a hollow chamber in the ball
14:45:07 <kmc> the marble would move to the other side of the chamber when the ball starts to fall, no?
14:45:25 <fizzie> kmc: Why would it?
14:45:31 <fizzie> Both have the same amount of acceleration downwards.
14:45:41 <Phantom_Hoover> Yeah, what fizzie said.
14:45:55 <Phantom_Hoover> The ball is in an inertial frame from leaving your hand to hitting the ground.
14:45:58 <kmc> "are you serious, it' acceleration is not a constant. If it's first derivative(velocity) is 0, then the second derivative(acceleration) HAS to be zero....the derivative of any constant is 0...
14:46:02 <kmc> FAIL...."
14:46:03 * kmc facepalm
14:46:44 <kmc> wish i could find the frikkin paper
14:46:53 <kmc> various people speculate that it integrates acceleration
14:47:37 <kmc> ok "Our camera contains an accelerometer which we use to measure launch acceleration. Integration lets us predict rise time to the highest point, where we trigger the exposure. "
14:47:40 <kmc> from the abstract
14:47:46 <kmc> http://jonaspfeil.de/ballcamera
14:48:29 <Phantom_Hoover> Booooring.
14:48:57 <fizzie> Yeah, it should use laser range-finding to estimate distances from the ground.
14:48:58 <kmc> yeah, it should bounce radio waves off the ground or something
14:49:02 <kmc> -_-
14:49:13 <fizzie> :/
14:49:31 <kmc> probably it doesn't matter too much to get the high point correct
14:49:41 <Phantom_Hoover> It should measure the CMB and calculate its velocity from the Doppler shift.
14:49:42 <kmc> as long as your are shooting daytime scenes with fast shutter speed
14:49:48 <fizzie> There's an app for the N900 (probably other phones too) which measures free-fall times, the idea being that you compete by throwing it into the air; the one who gets longest free-fall time wins.
14:50:08 <fizzie> They held a competition here a year or two back, IIRC.
14:50:13 <kmc> hahaha
14:50:20 <kmc> that is fantastic
14:50:24 <fizzie> It has a lot of disclaimers about the app-makers not being responsible for broken phones.
14:50:39 <kmc> were you allowed to put padding etc around it
14:50:45 <kmc> like the egg drop competitions of high school physics
14:51:00 <fizzie> The phones were supplied by the organizers, I believe.
14:51:17 <fizzie> I suppose you could make a padding-allowed house rule if you were playing it with your friends, though.
14:51:21 <itidus21> i imagine they could also make a variant where the ball records the entire arc and lets you replay it panoramically
14:51:49 <itidus21> maybe that would, like all my ideas, be shit in practice and make people throw up
14:53:24 <Sgeo__> I think I know how to give Tcl CL-style conditions.
14:53:33 <fizzie> http://maemo.org/downloads/product/Maemo5/n900fly/ is the app, I can't recall which year the competition was.
14:53:40 <Sgeo__> Unfortunately, it requires users to list which C-implemented commands can give errors.
14:54:07 <Sgeo__> OR! I could just wrap every single C-implemented command
14:54:08 <Phantom_Hoover> <kmc> like the egg drop competitions of high school physics
14:55:14 <Phantom_Hoover> Phone drop would probably be easier though, since the main thing that damages phones is their shape focusing the impact.
14:56:21 <kmc> sounds like a party Sgeo__
14:56:58 <Sgeo__> Might need to provide a command to tell the library to look for these commands
14:57:55 <Sgeo__> Everyone does agree that CL-style conditions are a good thing, right?
14:58:27 <Phantom_Hoover> Yeah I'm behind it
15:05:33 -!- lambdabot has joined.
15:13:31 -!- aloril has quit (Read error: Operation timed out).
15:16:24 -!- aloril has joined.
15:19:32 -!- Slereah has joined.
15:25:07 <Sgeo__> Maybe I should read up on Dylan's condition system, which apparently was based on CL but does... something different, I forget whar
15:25:08 <Sgeo__> what
15:30:49 -!- Taneb has quit (Ping timeout: 246 seconds).
15:31:58 -!- mig22 has left.
15:44:32 -!- HackEgo has quit (Ping timeout: 255 seconds).
15:44:57 -!- EgoBot has joined.
15:44:58 -!- HackEgo has joined.
15:47:01 -!- zzo38 has joined.
15:57:39 -!- Vorpal has joined.
16:02:48 -!- ogrom has joined.
16:03:13 -!- elliott has joined.
16:07:54 -!- nooga has quit (Ping timeout: 246 seconds).
16:13:33 -!- MoALTz has joined.
16:25:05 -!- Taneb has joined.
16:29:05 -!- nooga has joined.
16:30:36 <Taneb> Hello
16:35:16 -!- epicmonkey has quit (Read error: Operation timed out).
16:42:21 <zzo38> Do you sometimes make useless schematic diagrams?
16:43:00 <Taneb> Probably
16:54:01 -!- ais523 has quit.
17:04:39 <fizzie> Hey, there are Norwegians on the seminar floor.
17:04:43 <fizzie> What foolishness is this.
17:12:33 <zzo38> What is the most difficult sport?
17:12:42 <zzo38> My answer: Pool ball because the balls (including the white ball) are extremely difficult to hit, even though they aren't moving.
17:13:28 -!- Taneb has quit (Ping timeout: 245 seconds).
17:13:36 -!- augur_ has changed nick to augur.
17:14:56 <fizzie> The most dangerous game.
17:17:43 <Slereah> http://www.smbc-comics.com/?id=1488
17:18:01 <fizzie> Is what I was thinking about.
17:20:06 -!- boily has quit (Quit: WeeChat 0.3.8).
17:26:57 <pikhq_> Oh, awesome, there's a *very* useful feature I missed. Linux's seccomp (a very simple sandboxing scheme) got extended somewhat.
17:27:05 <pikhq_> You can now hand it a list of system calls that are permitted.
17:28:00 <pikhq_> Oh, it's a little more complicated than that. You can filter based on the arguments too.
17:28:07 <Vorpal> nice
17:28:15 <Gregor> Yeah, I'm very intrigued.
17:28:35 <Gregor> Probably Google's doing, no doubt :)
17:28:49 <Vorpal> heh
17:28:54 <zzo38> You might sometimes want to override system calls with your own though, too?
17:29:34 <Gregor> Such a system would be considerably thicker even for non-users, so probably isn't going to happen.
17:29:49 <pikhq_> Gregor: It is, indeed, a Chrome dev.
17:29:50 <Vorpal> zzo38, presumably the feature is intended to contain programs written specifically to run under it, as opposed to being a general purpose sandbox mechanism
17:30:08 <Gregor> It's for GNC.
17:30:13 <Vorpal> Gregor, GNC?
17:30:18 <Gregor> Google Native Client.
17:30:21 <Vorpal> aah
17:30:32 <pikhq_> Yeah, they now use it.
17:30:45 <Gregor> They were actually thinking of dropping seccomp, then GNC went “NO NO WANT” and then this happened.
17:30:50 <Vorpal> might be useful for the normal sandboxing that chrome does anyway
17:30:56 <pikhq_> Probably is.
17:31:06 <pikhq_> This actually makes native client-esque things *really easy*.
17:31:55 <fizzie> Wasn't Chrome's plugin thing on the old seccomp or something?
17:32:17 <fizzie> "Chrome 20 On Linux Gives Seccomp Filters For Flash" says Google.
17:32:22 <fizzie> (The search, not the company.)
17:32:54 <Sgeo__> What's done for Windows?
17:33:19 <fizzie> (Also don't they canonically and puntastically abbreviate that thing as NaCl?)
17:33:27 <pikhq_> fizzie: Yes.
17:34:32 <pikhq_> Sgeo__: Segmentation to restrict the address space code can access, an ABI designed so they can statically verify certain things.
17:35:16 <fizzie> I just remember the nop-padding so that all branch targets are divisible by something so that they can guarantee nothing jumps in the middle of an opcode.
17:35:17 <Gregor> fizzie: Yes, they do, but I refuse.
17:35:19 <Gregor> On the grounds that no.
17:35:32 <fizzie> Natrium Client. Native Chloride.
17:35:35 <pikhq_> fizzie: Yeah, that's part of it.
17:35:55 <fizzie> That's for NaCl, though; do they do any sandboxing for the Flash plugin on Windows?
17:36:38 <pikhq_> The Pepper plugin API runs under NaCl, yes.
17:37:08 <fizzie> Ah, it's part of the same thing.
17:37:21 <Gregor> http://blogs.valvesoftware.com/linux/faster-zombies/ Valve sez: OpenGL is faster than Direct3D... even on Windows.
17:37:32 <pikhq_> Gregor: They are using DirectX 9, though.
17:37:48 <fizzie> It's a nice URL.
17:37:52 <pikhq_> Which is Microsoft's old shit that they only keep around for backwards compatibility.
17:38:21 <Gregor> pikhq_: Uh, then why are they using it?
17:38:30 <pikhq_> Gregor: Newer versions don't work on XP.
17:38:36 <pikhq_> Because Microsoft is a bunch of assholes.
17:38:48 <fizzie> There was an "advanced DirectX 11" seminar 30 metres to the left few hours ago, with Smash/Fairlight speaking. It was... popular.
17:38:51 <zzo38> I do have idea make a different kind of computer, there is no operating system but BIOS calls require NMI which also enables the other hardware to be used, or you can move a jumper to always enable the other hardware and disable the security system (which, other than this, is similar to a UNIX security). You can move another jumper to reflash the BIOS ROM if you want to change it.
17:38:59 <pikhq_> (this is the first time they've made a version of DirectX that *doesn't* work on older Windows, FWIW)
17:39:23 <zzo38> What version of DirectX works only on Windows 8?
17:39:57 <pikhq_> Dunno. DirectX 11.1 ships with it, but they might intend to do a release for Windows 7 at some point.
17:40:43 <fizzie> pikhq_: DirectX 9 isn't available for Windows 95; 8.0a is newest. Or so they say.
17:41:18 <pikhq_> fizzie: Oh, look, they broke compatibility with the *oldest* version they could possibly work with.
17:41:52 <fizzie> Well, Wikipedia table implies (though doesn't quite say) that 8.1 is also the best you can get on 98, Me and 2000.
17:41:59 <zzo38> What version of DirectX works only on Windows 9.999?
17:42:19 <pikhq_> I've *used* 9 on 2000.
17:43:03 <fizzie> http://www.microsoft.com/en-us/download/details.aspx?id=35 "Supported operating systems: Windows 7, Windows Server 2003 Service Pack 1, Windows Server 2003 Service Pack 2, Windows Server 2008, Windows Vista, Windows XP Service Pack 2, Windows XP Service Pack 3" (Could be a different download, of course.)
17:43:27 <fizzie> Yeah, it is.
17:43:31 <pikhq_> They did break compatibility with 9.c, yes.
17:44:39 <fizzie> Anyway, even a nitpicky counter-example is still a counter-example. :p
17:44:59 <pikhq_> It does seem you could use older versions of DirectX 9 on Windows 98, though.
17:45:24 <pikhq_> And then they went and made it so you couldn't use DirectX 10 on XP. ... Which, at the time, was the most popular version of Windows.
17:45:35 <fizzie> 98, but maybe not on 95. (Or NT 4.0.)
17:45:43 <pikhq_> And even now is at least significant enough you might well want to support it.
17:45:58 -!- FreeFull has joined.
17:46:07 <FreeFull> So I've been playing with Game of Life rules
17:46:32 <FreeFull> Does anyone know if there is a spaceship possible in B3/S12
17:46:41 <fizzie> Yeah, it doesn't seem like there's anything newer than DirectX 3 for NT 4.0. So there, they've broken it twice, even when looking at major numbers only.
17:46:50 <FreeFull> I did find one in B3/S125 but not in B3/S12 yet
17:48:07 <itidus21> valve is also a bunch of assholes :>
17:48:27 <itidus21> i guess one bunch of assholes can get annoyed by another
17:48:47 <elliott> FreeFull: I think there's a database of whether certain lifelike rules have spaceships.
17:48:49 <fizzie> Next up on the left: "Occlusion culling for the next generation", by someone from Umbra.
17:48:49 <elliott> I don't recall where it is, though.
17:49:52 -!- Taneb has joined.
17:50:10 <FreeFull> The spaceship I found in B3/S125 is pretty neat. It moves at c/6 diagonally
17:50:23 <Taneb> Hello
17:52:20 <Taneb> FreeFull, I don't recognise you. You new?
17:52:52 <FreeFull> Yes
17:53:02 <Taneb> :)
17:53:43 <Sgeo__> `welcome FreeFull
17:53:55 <HackEgo> FreeFull: 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:54:09 <fizzie> fungot: You welcome him too. Learn some manners from the other bots.
17:54:11 <fungot> fizzie: " my beautiful zoe, i live only for glory, but he does not resemble me. you well know, that without the guide and light of sound, well-understood principles, all those evils which are attributed to corruption may, with equal wisdom, provided for the return of the bourbons.
17:54:17 <Sgeo__> Reason I didn't do that earlier is because that's usually used for people who haven't indicted that they're aware that this is not for "the other kind of esoterica"
17:54:23 <fizzie> I, uh... maybe not quite in that way.
17:54:29 <Sgeo__> You've indicated awareness, so it's all good
17:55:32 <FreeFull> I really like the befunge family for some reason
17:55:44 <Sgeo__> fungot is written in befunge
17:55:45 <fungot> Sgeo__: false policy in our war with france or america, the refuge of the oppressed from everywhere ( who can pay fifty dollars' fnord one except a fnord up for human rights everywhere, even helping china let people in free when she wants to collect fifty dollars upon them.
17:55:59 <FreeFull> Impressive
17:56:02 <Taneb> Ver
17:56:03 <Taneb> y
17:56:29 <Taneb> FreeFull, two important questions?
17:56:38 <Taneb> Do you live in Hexham?
17:56:41 <FreeFull> No
17:56:47 <Taneb> How about Finland?
17:56:53 <FreeFull> Nope
17:56:57 <Taneb> Okay
17:57:00 <FreeFull> Why?
17:57:15 <Taneb> They're statistical anomalies in the esoteric world
17:57:18 <fizzie> ^source
17:57:18 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
17:57:23 <fizzie> You can see what makes fungot tick there.
17:57:24 <fungot> fizzie: but there is one member of the committee of public safety. irruption of the mob, one a term of fifty, another a term of twenty-eight years. in ten years.
17:57:27 <FreeFull> I live in High Wycombe
17:58:11 <Taneb> Yeah, that's not really near Hexham nor Finland
17:58:51 <Sgeo__> ^style
17:58:51 <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:58:56 <Taneb> Hexham's a town in Northumberland where at least 1 in 6000 people are in this channel RIGHT NOW
17:58:58 <FreeFull> Does fungot do markov modelling?
17:58:59 <fungot> FreeFull: the following is a list of the fnord of nations. but, it is impossible, sir, this defence is unworthy of a man, and diffident about appearing before legislative bodies, and of manly sincerity for which i have mentioned, have no objection to the " greatest happiness fnord supposition which may be found among its defects.
17:59:50 <Taneb> Finland is similar, but a country that isn't in Northumberland
17:59:54 -!- ogrom has quit (Quit: Left).
18:00:39 <Taneb> (Hexham has population 12000ish)
18:00:42 <FreeFull> 1 in 6000 people in finland are in here?
18:00:54 <FreeFull> The population of Finland is a lot smaller than I thought
18:00:55 <Taneb> Nah
18:01:11 <Taneb> Just about 15% of this channel is Finnish
18:01:14 <Taneb> Including fungot
18:01:15 <fungot> Taneb: " now you talk like a human being who is fnord around and teaching school, and thou must be.
18:01:35 -!- epicmonkey has joined.
18:01:41 <FreeFull> fungot's source link doesn't seem to work
18:01:41 -!- Gregor has set topic: We are fnord around the teaching school | http://codu.org/logs/_esoteric/.
18:01:41 <fungot> FreeFull: a radical war song, a. lincoln. washington. february 3, 1862_ a change. but nowhere has the revolution been more complete and violent than in england.
18:01:42 <FreeFull> It's timing out
18:01:55 <Taneb> ^source
18:01:56 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
18:02:17 <Taneb> Hmm
18:02:44 <Taneb> fizzie, fix it please?
18:02:46 <fizzie> FreeFull: I'd spew out my usual few-hundred-word explanation of fungot babble, but I've done it so many times... but yeah, it technically speaking has the Markov property. It generates by sampling from a variable-length n-gram model, implementation-wise.
18:02:47 <fungot> fizzie: i say, blame him for this? not merely because i had unworthily filled the chair of the house of commons.
18:02:53 <fizzie> Taneb: It works for me. :/
18:02:57 <fizzie> And I'm not even at home.
18:03:16 <Taneb> Has fungot's server's ISP fell out with the UK?
18:03:17 <fungot> Taneb: it is the law.
18:03:27 <Taneb> I'll take that as a yes
18:03:39 <fizzie> Taneb: Seems that it works over IPv6, but not over IPv4. I'll try to get it fixed at some point, but not from here.
18:03:54 <Taneb> Yeah, IPv6 is rare in the UK
18:03:59 <FreeFull> My ISP is shitty and doesn't offer IPv6
18:04:03 <fizzie> In the meanwhile, fungot.b98 is at http://sprunge.us/hGRJ
18:04:04 <fungot> fizzie: if i have anything to do with the question. yet it does somehow happen that this evening, and the hateful institution, like a second deity, fnord to the senate.
18:04:10 * pikhq_ mutters at the objections to NaCl
18:04:19 <pikhq_> "It's not HTML" is an actual objection.
18:04:37 <FreeFull> Javascript isn't HTML either
18:04:46 <pikhq_> Like, people think the HTML/Javascript/bullshit stack is *actually good*
18:04:52 <pikhq_> And Google should focus on improving that.
18:05:22 <pikhq_> *This* is the reason Mozilla doesn't intend to support NaCl.
18:05:36 <Taneb> !!!
18:06:27 <Dovregubben> sodium chloride?
18:06:40 <Dovregubben> Mozilla doesn't support table salt?
18:06:49 <FreeFull> native client
18:06:57 <Taneb> FreeFull, http://hpaste.org/raw/72555
18:07:03 <Sgeo__> It's made of sodium and chloride, therefore it's poisonous
18:07:06 <Taneb> I had it cached
18:07:41 <pikhq_> Incidentally, the whole lack-of-portability aspect in NaCl is going away. Google's currently trying to make it so it works using LLVM bytecode.
18:08:20 <FreeFull> Taneb: fizzie already linked a copy
18:08:23 <pikhq_> And they won't have it on by default in Chrome until that's done.
18:08:24 <FreeFull> fizzie: Impressive
18:08:27 <zzo38> Does that mean you can program it in any programming language which can compile to LLVM?
18:08:37 <Taneb> Aah
18:08:40 <Taneb> Didn't see that
18:08:51 <fizzie> Taneb: Could you retry the original source URL. For some reason, even the v4 access suddenly started to work for me, while I was tcpdumping to find out what's wrong.
18:08:53 <pikhq_> zzo38: Yes.
18:09:08 <Taneb> Yeah, it's up?
18:09:15 <fizzie> The weirdest.
18:09:16 <Taneb> Seems like an ISP problem?
18:09:22 <fizzie> I didn't change any configuration or anything.
18:09:27 <pikhq_> zzo38: I think it might require a few extra bits so it'll comply with the portable NaCl ABI, *but* that seems like a very minor thing.
18:09:41 <fizzie> I don't know, they could be inbound-filtering port 80 but they haven't so far.
18:09:49 <fizzie> Don't see why it'd suddenly start working.
18:09:59 <fizzie> SSHing in worked the whole time.
18:10:22 <Sgeo__> So, Common Lisp in the browser?
18:10:25 <Sgeo__> >.>
18:10:30 <pikhq_> Sgeo__: Yes.
18:10:42 <zzo38> So I think it would include: C, C++, Objective-C, Objective-C++, Haskell, LLVM IR coding, possibly others too, does it include Pascal?
18:10:52 <FreeFull> ^bf +.
18:10:53 <fungot> <CTCP>
18:10:58 <FreeFull> o.o
18:10:59 <pikhq_> zzo38: Quite plausibly.
18:11:00 <FreeFull> Woops
18:11:02 <Sgeo__> Hmm, C can be compiled to LLVM, right? So Tcl?
18:11:08 <pikhq_> Sgeo__: Yes.
18:11:30 <fizzie> FreeFull: You hit my "on the TODO list for the last several months" bug of not filtering CTCP control character (\x01) on the first try. Congratulations.
18:12:03 <pikhq_> Sgeo__: There's already some work on Tcl in NaCl, BTW.
18:12:06 <fizzie> ^bf ,[>,]<[.<]!hello
18:12:06 <fungot> olleh
18:12:09 <Taneb> Also Python?
18:12:21 <fizzie> ^show
18:12:21 <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
18:12:25 <zzo38> I have checked, LLVM now could support the Pascal ranged types, I guess, since you can specify the valid range when loading a value.
18:12:27 <fizzie> Many of those are brainfuck things.
18:12:34 <fizzie> (Many of those are very inane.)
18:13:34 <zzo38> But I have been told that LLVM cannot optimize brainfuck codes very well.
18:13:47 <Sgeo__> pikhq_, cool
18:13:47 <pikhq_> Sgeo__: Also, anything on NaCl has access to the HTML DOM.
18:13:47 <Sgeo__> Tcl > Javascript?
18:14:51 <Taneb> pikhq_, Is there an API for that or something
18:16:41 <pikhq_> Taneb: Yeah.
18:20:12 -!- boily has joined.
18:26:45 <FreeFull> ^bf +.++++ +++[- >++++ ++++< ]>+.+ +.<++ ++[-> ++++< ]>+.< +++[- >---< ]>--.+++++ +.-.< +++++ +[->- ----- <]>-- ----- ---.< +++++ ++++[ ->+++ ++++++<]>+ +++++ .<+++ [->-- -<]>- ----. --..+ ++++. ----- --.<+ ++[-> +++<]>++++ +.<>>>>>+.
18:26:45 <FreeFull> Is it too long
18:28:54 <fizzie> It doesn't look cut off.
18:29:19 <fizzie> Seems to be a netsplit kind of thing.
18:29:36 <fizzie> As seen from the bot's console IRC-rawlog, we all don't exist.
18:30:13 <zzo38> Fix it
18:30:27 <fizzie> I?
18:30:31 <fizzie> I think that's Freenode's job.
18:31:39 -!- Deewiant has quit (Ping timeout: 265 seconds).
18:32:08 -!- atehwa_ has quit (Ping timeout: 265 seconds).
18:32:08 -!- glogbackup has quit (*.net *.split).
18:32:08 -!- FireFly has quit (*.net *.split).
18:32:10 -!- sirdancealot7 has quit (*.net *.split).
18:32:11 -!- boily has quit (*.net *.split).
18:32:12 -!- elliott has quit (*.net *.split).
18:32:12 -!- HackEgo has quit (*.net *.split).
18:32:12 -!- EgoBot has quit (*.net *.split).
18:32:12 -!- monqy has quit (*.net *.split).
18:32:13 -!- SimonRC has quit (*.net *.split).
18:32:13 -!- ssue has quit (*.net *.split).
18:32:13 -!- shachaf has quit (*.net *.split).
18:32:13 -!- comex has quit (*.net *.split).
18:32:14 -!- nooga has quit (*.net *.split).
18:32:16 -!- ion has quit (*.net *.split).
18:32:16 -!- Gregor has quit (*.net *.split).
18:32:16 -!- Yonkie has quit (*.net *.split).
18:32:17 -!- nvt has quit (*.net *.split).
18:32:18 -!- epicmonkey has quit (*.net *.split).
18:32:19 -!- Phantom_Hoover has quit (*.net *.split).
18:32:20 -!- augur has quit (*.net *.split).
18:32:20 -!- Sgeo__ has quit (*.net *.split).
18:32:21 -!- variable has quit (*.net *.split).
18:32:23 -!- sebbu has quit (*.net *.split).
18:32:23 -!- rodgort has quit (*.net *.split).
18:32:24 -!- kmc has quit (*.net *.split).
18:32:24 -!- lahwran has quit (*.net *.split).
18:32:26 -!- copumpkin has quit (*.net *.split).
18:32:26 -!- pikhq_ has quit (*.net *.split).
18:32:27 -!- fungot has quit (*.net *.split).
18:32:27 -!- mtve has quit (*.net *.split).
18:32:27 -!- aloril has quit (*.net *.split).
18:32:29 -!- TeruFSX_ has quit (*.net *.split).
18:32:30 -!- cknz has quit (*.net *.split).
18:32:38 -!- nortti- has quit (*.net *.split).
18:32:43 -!- MoALTz has quit (*.net *.split).
18:32:43 -!- lambdabot has quit (*.net *.split).
18:32:44 -!- azaq23 has quit (*.net *.split).
18:32:44 -!- TodPunk has quit (*.net *.split).
18:32:44 -!- FreeFull has quit (*.net *.split).
18:32:45 -!- []{}\|-_`^ has quit (*.net *.split).
18:32:45 -!- coppro has quit (*.net *.split).
18:32:47 -!- mroman has quit (*.net *.split).
18:32:47 -!- ineiros has quit (*.net *.split).
18:33:45 <itidus21> lol
18:33:59 <fizzie> Hey, freenode people: fix it.
18:34:07 <fizzie> (I'm sure you're sniffing in our private things.)
18:37:15 -!- atehwa has joined.
18:37:15 -!- FireFly has joined.
18:37:15 -!- ineiros has joined.
18:37:15 -!- mroman has joined.
18:37:15 -!- coppro has joined.
18:37:15 -!- []{}\|-_`^ has joined.
18:37:15 -!- TodPunk has joined.
18:37:15 -!- azaq23 has joined.
18:37:15 -!- lambdabot has joined.
18:37:15 -!- MoALTz has joined.
18:37:15 -!- FreeFull has joined.
18:37:15 -!- boily has joined.
18:37:15 -!- epicmonkey has joined.
18:37:15 -!- nooga has joined.
18:37:15 -!- elliott has joined.
18:37:15 -!- HackEgo has joined.
18:37:15 -!- EgoBot has joined.
18:37:15 -!- aloril has joined.
18:37:15 -!- copumpkin has joined.
18:37:15 -!- Phantom_Hoover has joined.
18:37:15 -!- pikhq_ has joined.
18:37:15 -!- monqy has joined.
18:37:15 -!- SimonRC has joined.
18:37:15 -!- augur has joined.
18:37:15 -!- Sgeo__ has joined.
18:37:15 -!- ssue has joined.
18:37:15 -!- variable has joined.
18:37:15 -!- ion has joined.
18:37:15 -!- Gregor has joined.
18:37:15 -!- Yonkie has joined.
18:37:15 -!- sirdancealot7 has joined.
18:37:15 -!- sebbu has joined.
18:37:15 -!- TeruFSX_ has joined.
18:37:15 -!- rodgort has joined.
18:37:15 -!- nvt has joined.
18:37:15 -!- comex has joined.
18:37:15 -!- shachaf has joined.
18:37:15 -!- fungot has joined.
18:37:15 -!- kmc has joined.
18:37:15 -!- mtve has joined.
18:37:15 -!- lahwran has joined.
18:37:15 -!- cknz has joined.
18:37:36 <Taneb> I wonder what happened on the other side of that split
18:37:42 <fizzie> Awesome things.
18:37:44 <zzo38> <CTCP>PING netsplittest<CTCP>
18:38:03 <Taneb> fizzie, I was on your side
18:38:19 <fizzie> Yes, but fungot was on another side.
18:38:22 <fungot> fizzie: " it pronounces that there exists a real, not a blemish upon it; for it seems to be, either a truism or a contradiction in terms; and that difficulty is as complete in the case of a mere majority ( say of one) shall pass with them and with least inconvenience to the litigants. it was pleasant to hear that i am not one of them to know that a salutary change has taken place which makes them ten times as strong as the reas
18:38:44 -!- glogbackup has joined.
18:38:56 -!- glogbackup has left.
18:39:04 <itidus21> one way to find out
18:39:44 <itidus21> darn i was on the log bot's side
18:39:53 <FreeFull> I saw both fungot and fizzie split away from me
18:39:54 <fungot> FreeFull: whilst the inferior people were thus insensibly led into a better order, the foundation of other thrones: they must be just as true for the punjab and the united provinces, that there are
18:40:02 <FreeFull> So seems to be a multi-server split
18:40:13 <zzo38> Some appear to be slow
18:40:50 <FreeFull> fungot: You can just filter any character whose value is below 32
18:40:51 <fungot> FreeFull: in reference to every case, showing the determined and daring character of the men i see at these tables, or how soon our better half of human nature
18:41:04 <FreeFull> I mean fizzie
18:41:11 <fizzie> FreeFull: But then I couldn't have any bold.
18:41:17 <fizzie> (I had it that way originally.)
18:41:22 <fizzie> Currently it only filters 10.
18:42:04 <quintopia> hi FreeFull
18:42:04 <FreeFull> Filters 10 because otherwise someone could take control of the bot?
18:42:11 <FreeFull> Hi
18:42:29 <fizzie> Yes.
18:42:34 <fizzie> It turns into a .
18:42:36 <zzo38> It should filter at least 0x00 0x0A 0x0D and perhaps also 0x01 0x03 0x07
18:42:40 <fizzie> A ., I mean.
18:42:54 <fizzie> I think it might filter 13 too.
18:43:02 <quintopia> show me your previous work FreeFull
18:43:05 <zzo38> It should filter 13 too.
18:43:07 <fizzie> ^bf ++++++++++.+++.
18:43:08 <fungot> ..
18:43:09 <fizzie> It does.
18:43:19 <fizzie> ^bf ++++++++++..>.<..
18:43:20 <fungot> ..
18:43:22 <fizzie> But not 0.
18:43:26 <FreeFull> what does it do for infinite loops?
18:43:31 <fizzie> It just results in a truncated message, though.
18:43:32 <FreeFull> quintopia: I'm afraid I don't have any
18:43:34 <quintopia> times out
18:43:40 <zzo38> It ought to filter 0.
18:43:57 <FreeFull> ^bf [+.]
18:44:05 <FreeFull> ^bf +[+.]
18:44:05 <fungot> .. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ...
18:44:11 <fizzie> zzo38: Actually, it "filters" 0 in that it doesn't output it. It just cuts it at that point.
18:44:22 * itidus21 was like.. wtf was that
18:44:23 <fizzie> FreeFull: It runs something like 30k or 100k cycles of the underlying intermediate bytecode.
18:44:29 <fizzie> ^bf +[]
18:44:34 <fungot> ...out of time!
18:44:38 <zzo38> Filter 0 like that is OK I guess
18:45:00 <FreeFull> ^bf .-.
18:45:05 <FreeFull> ^bf -.
18:45:05 <fungot>
18:45:13 <itidus21> .. !"#$%&'()*+,-./0123456789:;<=>?
18:45:23 <itidus21> nvm
18:45:27 <fizzie> Cells are wraparound with 8 bits, and the tape is 1000 cells and cyclic.
18:46:09 <FreeFull> ^bf +[>+]
18:46:48 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
18:47:16 -!- boily has quit (Quit: WeeChat 0.3.8).
18:47:21 -!- asiekierka_ has quit (Quit: Connection reset by PO).
18:48:38 <FreeFull> ^code
18:48:41 <FreeFull> ^code a
18:48:51 -!- boily has joined.
18:50:12 <Sgeo__> The Google Web Store requirement part is annoying
18:50:38 <Vorpal> 64 GB MicroSD cards are fascinating... That you can fit that much in something so small
18:51:38 -!- nortti- has joined.
18:51:39 <Sgeo__> Oh, apparently that's going to change
18:52:21 <Taneb> Vorpal, imagine how it will be like in 3 years
18:52:27 <Taneb> 256 GB MicroSDs...
18:52:32 <Vorpal> true...
18:52:35 <nooga> i'm trying to procedurally generate sand dunes heightmap
18:53:35 <itidus21> nooga: so.. i know you didn't ask my opinion but, what is under a desert?
18:53:36 -!- Phantom_Hoover has joined.
18:53:48 <itidus21> does what is under a desert affect the shape of the dunes?
18:53:48 <Taneb> itidus21, rock, generally
18:54:21 <itidus21> or can we assume that sand dunes form upon a base of sand? :D
18:54:49 <Taneb> nooga, how's that going?
18:54:51 <itidus21> clearly its better to just let me on my way
18:56:31 -!- kallisti_ has joined.
18:57:29 -!- kallisti_ has quit (Client Quit).
19:05:37 <zzo38> Can you invent any game played using snooker balls or pool balls?
19:07:58 <quintopia> not one better than fantasy classique
19:08:14 <zzo38> What does that mean?
19:09:06 <quintopia> http://en.wikipedia.org/wiki/Artistic_billiards
19:11:20 <itidus21> zzo38: naturally
19:11:22 <itidus21> brb
19:13:09 <itidus21> we begin by adding a cage net around the table
19:13:19 <itidus21> and installing ramps
19:14:01 <itidus21> and placing some of the pockets on the top of cylinders on the table
19:14:23 <zzo38> How can you strike the ball if there is a cage net?
19:14:36 <itidus21> thats a good point
19:14:44 <quintopia> stick the cue through the holes
19:14:45 <quintopia> :P
19:15:03 <quintopia> still not a better game than fantaisie classique :)
19:16:34 <itidus21> hmm you could use a spider i suppose
19:17:50 <itidus21> or.. perhaps something where both players send the balls to smash together
19:18:16 <quintopia> is snooker the one with the mushrooms on the table?
19:18:27 <zzo38> No.
19:18:43 <zzo38> Snooker is the one with fifteen red balls and various other color of balls on the table.
19:18:52 <itidus21> 2 balls, 1 hole, and a countdown after which both players may hit their ball precisely once
19:19:09 <quintopia> oh it's "bar billiards"
19:19:40 <quintopia> oh no
19:19:42 <quintopia> that's not it
19:19:44 <quintopia> hmm
19:19:52 <Vorpal> snooker trick shots can be quite interesting to watch
19:20:03 <itidus21> wow you guys really know a lot
19:20:17 <Vorpal> personally I don't find that type of sport interesting in themselves
19:20:36 <itidus21> still, i feel like i wasted my life by not learning largely useless trivia
19:21:00 <Vorpal> quintopia, snooker is snooker?
19:22:42 <quintopia> aha!
19:22:46 <quintopia> found it: http://en.wikipedia.org/wiki/Bumper_pool
19:23:23 -!- MoALTz_ has joined.
19:23:24 -!- Slereah_ has joined.
19:23:28 <Vorpal> quintopia, no, snooker is played on a much larger board?
19:23:42 <quintopia> Vorpal: i don't know what you are going on about.
19:23:42 <Vorpal> or with smaller balls than that picture
19:23:54 <Vorpal> <quintopia> is snooker the one with the mushrooms on the table? <quintopia> oh it's "bar billiards" <quintopia> found it: http://en.wikipedia.org/wiki/Bumper_pool
19:23:58 <quintopia> but is successfully found the game i was looking for, so you can talk to ourself about it
19:24:00 <Vorpal> quintopia, not the same thread of thought?
19:24:01 <quintopia> *I
19:24:14 -!- Slereah has quit (Ping timeout: 255 seconds).
19:24:36 <Vorpal> quintopia, no?
19:25:41 -!- MoALTz has quit (Ping timeout: 248 seconds).
19:35:40 -!- Phantom__Hoover has joined.
19:39:18 -!- Phantom_Hoover has quit (Ping timeout: 245 seconds).
19:39:53 -!- oerjan has joined.
19:56:59 -!- azaq23 has quit (Quit: Leaving.).
19:58:28 -!- MoALTz_ has quit (Quit: brb).
19:58:46 -!- MoALTz has joined.
20:01:47 -!- pikhq has joined.
20:04:48 -!- pikhq_ has quit (Ping timeout: 244 seconds).
20:11:04 <nooga> alg
20:11:21 <oerjan> o, rithm
20:11:33 -!- TodPunk has quit (Ping timeout: 248 seconds).
20:12:40 <nooga> i c
20:12:48 -!- TodPunk has joined.
20:13:15 <boily> abbage an
20:13:35 <oerjan> d waffle
20:20:45 -!- Vorpal has quit (Ping timeout: 272 seconds).
20:20:59 <Taneb> There are a lot of subreddits...
20:24:35 -!- boily has quit (Quit: WeeChat 0.3.8).
20:27:26 -!- Deewiant has joined.
20:30:00 <Sgeo__> pikhq, what do you think of this? (In #tcl person who'd rather see 8.6 released ASAP even if coredumps occur)
20:37:41 <kmc> confucius say billiards is wrong because man with nine balls cannot walk
20:40:43 <oerjan> confucius smart
20:50:08 -!- epicmonkey has quit (Ping timeout: 245 seconds).
20:53:39 -!- Taneb has quit (Quit: Leaving).
21:15:57 <itidus21> theat
21:16:31 <itidus21> rhythm
21:16:56 <elliott> yes
21:19:02 <itidus21> something is very wrong here: http://www.gamingunion.net/newsimg/theatrhythm-final-fantasy-review.jpg
21:25:20 -!- Sgeo__ has changed nick to Sgeo.
21:33:01 -!- MoALTz has quit (Ping timeout: 246 seconds).
21:34:07 <oerjan> there's a Tardis monad?
21:35:24 <oerjan> https://github.com/DanBurton/tardis it seems
21:35:55 * Sgeo misread monad as command
21:36:01 <Sgeo> So was thinking Tcl instead of Haskell
21:36:20 <oerjan> as punishment you shall have to implement that.
21:42:55 <Sgeo> I'm already trying to get my mind around doing dynamically-scoped variables in the presence of coroutines
21:44:01 <Sgeo> And being told not to try using a seemingly useful Tcl command because it's likely to be buggy, and I might cause a core dump and if that happens, then they'll have to fix it which will delay release
21:46:17 <shachaf> kmc: Apparently lexand__ isn't one of the 5-HT_2A agonist people.
21:46:22 <shachaf> I thought everyone you knew was.
21:46:39 <shachaf> s/_/e_/
21:51:34 -!- heroux has joined.
21:52:00 -!- david_werecat has joined.
22:01:25 <itidus21> `pastelogs <sgeo.*tcl
22:02:00 <HackEgo> No output.
22:02:07 <itidus21> `pastelogs <sgeo.*tcl
22:02:31 <itidus21> i just.. had to
22:02:41 <HackEgo> mkdir: cannot create directory `/hackenv': File exists \ http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23453 \ /hackenv/bin/paste: line 14: /hackenv/paste/paste.23453: No such file or directory
22:03:24 <itidus21> ok. cool.
22:03:39 -!- pikhq has quit (Read error: Operation timed out).
22:04:10 -!- pikhq has joined.
22:15:27 <itidus21> Sgeo: they should just release it with the proviso "don't use this command in this release it's buggy and it may cause a coredump"
22:16:31 <oerjan> `ls .
22:16:34 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom
22:17:04 <itidus21> im glad that my query failed cos it felt kind of abusive
22:17:30 <Sgeo> `pastelogs life
22:17:35 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.331
22:17:44 <Sgeo> Why did the first one not work?
22:25:41 <itidus21> `pastelogs sgeo.*tcl
22:25:51 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.19893
22:26:10 <itidus21> wow
22:26:14 <itidus21> unexpected
22:26:43 <itidus21> little did you know that tcl was embedded in that id
22:27:23 <Sgeo> ?
22:27:47 <itidus21> <sgeo|fsckthaTCLi>
22:28:05 <Sgeo> Ah
22:28:32 <Sgeo> I was vacillating between Lisp and Tcl in February? Really?
22:29:05 <elliott> hi
22:33:02 <FreeFull> Nothing wrong with Lisp, as long as you choose the right implementation
22:33:14 <FreeFull> Racket and Clojure are nice
22:33:27 <itidus21> so, i'm interested in total functions. i think they're wonderful things.
22:33:29 * Sgeo has become a Tcl person.
22:35:17 <itidus21> Sgeo: yes, finally out of the closeTCLoset. but i can't help feeling that my way of discussing it is inappropriate
22:36:12 <itidus21> it's not my business
22:37:54 <Sgeo> Huh, so elliott once wanted to make a Tcl-inspired language
22:37:57 <Sgeo> How did that go?
22:39:30 <elliott> i didn't do it
22:39:40 <elliott> cpressey's new language is tclish
22:39:52 <elliott> btw you're not a tcl person because you won't be a tcl person in N days for some N
22:40:41 <Sgeo> Well, Tcl-liker?
22:41:26 <oerjan> FreeFull: some random seeding with MCell doesn't seem to throw up any spaceships for your CA...
22:42:08 <oerjan> and only few oscillators
22:43:56 <oerjan> and stuff seems to move not very far from the seeded rectangle
22:44:07 <kmc> shachaf: that's stupid that you thought that
22:44:29 <kmc> i'm in a bad mood so i'm not going to try to be nice about it
22:44:30 <kmc> sorry
22:44:58 <Phantom__Hoover> FreeFull made a CA?
22:45:10 <oerjan> well mentioned one
22:45:16 <Phantom__Hoover> We haven't had a good CA discussion in ages (oko doesn't count because he just monologues.)
22:45:28 <oerjan> B12/S3 isn't complicated enough to be unknown
22:45:50 <Phantom__Hoover> Ah
22:45:53 <elliott> kmc: hi :(
22:46:02 <oerjan> which means -> google
22:46:27 <elliott> http://fano.ics.uci.edu/ca/
22:46:28 <elliott> this is it
22:46:38 <Phantom__Hoover> B1 makes all patterns infinitely growing, FWIW.
22:46:42 <elliott> http://fano.ics.uci.edu/ca/rules/b12s3/
22:46:47 <elliott> @tell FreeFull http://fano.ics.uci.edu/ca/rules/b12s3/
22:46:48 <lambdabot> Consider it noted.
22:48:02 <Phantom__Hoover> I note that that website hasn't been updated with Gemini.
22:48:22 <oerjan> Phantom__Hoover: er
22:48:31 <oerjan> *B3/S12
22:49:13 <itidus21> kmc: after visiting the brothel that one time i bought a bottle of pheromones
22:49:30 <Phantom__Hoover> is this real life you're talking about
22:49:33 <itidus21> it eventually leaked into my drawer also somehow
22:49:58 <itidus21> no, lol. that virtual reality which has both brothels and pheromones
22:50:02 <oerjan> elliott: *B3/S12
22:50:06 <Phantom__Hoover> thank god
22:50:13 <Phantom__Hoover> oerjan, 3 gliders according to the site.
22:50:14 <oerjan> which seems harder to google :(
22:50:21 <elliott> @tell FreeFull sorry -- http://fano.ics.uci.edu/ca/rules/b3s12/
22:50:22 <oerjan> Phantom__Hoover: which site?
22:50:22 <lambdabot> Consider it noted.
22:50:26 <elliott> @tell FreeFull so there are gliders
22:50:26 <Phantom__Hoover> Both big, and ungainly.
22:50:26 <lambdabot> Consider it noted.
22:50:30 <itidus21> you don't wanna know about my second life activities
22:50:30 <elliott> oerjan: the one i linked???
22:50:39 <elliott> itidus21: no i do
22:51:11 -!- derdon has quit (Remote host closed the connection).
22:51:29 <itidus21> i have other stories.. but.. thats enough for today
22:52:24 <itidus21> i also saw the episode of bottom where they buy some pheromones and visit a bar
22:52:32 <itidus21> at a later stage
22:53:52 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:54:03 <oerjan> elliott: should we tell itidus21 and Sgeo to get a channel?
22:54:23 <elliott> no i want to keep hearing itidus21's stories here
22:54:29 <oerjan> okay
22:54:34 <itidus21> i am trying to cheer up kmc with that anecdote
22:54:45 <elliott> hahhahah
22:54:59 <Phantom__Hoover> did kmc's pheremone adventures go horribly wrong
22:55:16 <oerjan> never play the theremin on pheromones
22:56:22 <FreeFull> elliott: Thanks
22:56:22 <lambdabot> FreeFull: You have 3 new messages. '/msg lambdabot @messages' to read them.
22:56:25 <Phantom__Hoover> shachaf, wait, what's the relevance of the 5-HT2A receptor?
22:56:38 <elliott> FreeFull: oh, i didn't realise you were still in the channel, sorry :)
22:56:54 <FreeFull> elliott: They are pretty big, no wonder I didn't find them
22:57:05 <itidus21> Phantom__Hoover: a group of people studying and documenting the effects of different stuff if i understand right
22:57:52 <Phantom__Hoover> ...what, all kmc's friends are neurochemists?
22:58:29 <itidus21> .... sorry by studying i meant using.. and
22:59:15 <FreeFull> Phantom__Hoover: I just use golly
22:59:18 <oerjan> Phantom__Hoover: they are "chemists" who do things to neurons, if you catch my drift
22:59:29 <itidus21> i don't think this is helping..
22:59:39 <elliott> this channel.
23:00:15 <Phantom__Hoover> But WP doesn't say 5-HT2A has anything to do with sex!
23:01:03 <FreeFull> http://fano.ics.uci.edu/ca/rules/b3s125/g1.html This is the same glider I found for B3/S125
23:01:58 <oerjan> elliott: wait, do you want me to ban everyone, including myself again?
23:02:24 <elliott> yes
23:02:31 <oerjan> thought so.
23:02:54 <FreeFull> +b *!*@*
23:03:44 * oerjan suddenly wonders if that means something in geek code
23:04:17 -!- itidus21 has left ("With over 150 related products we have the KVM switching solution for you").
23:04:43 <FreeFull> The chanmode +b *!*@* bans everybody
23:05:00 <oerjan> shocking!
23:05:11 <elliott> i think oerjan knows +b :P
23:05:14 <elliott> at least, i hope he does.
23:05:25 <oerjan> he probably has his doubts.
23:05:27 <FreeFull> In what languages other than shell is :(){ :|:&};: legal code?
23:05:45 <Phantom__Hoover> Languages where : is a line comment delimeter?
23:06:11 <FreeFull> I don't know any where that's the case though
23:06:39 <oerjan> maybe you could get that into a pascal program, {} is comments there
23:06:40 <elliott> i think there's one
23:06:50 <elliott> that's valid forth, if you make some predefinitions
23:06:54 <elliott> but that's a rather trivial property
23:06:58 <oerjan> hm ;: probably won't work
23:07:22 <oerjan> is it valid agda? (/me doesn't know agda but has heard rumors)
23:07:39 <FreeFull> It would be valid brainfuck (just treated entirely as a comment)
23:07:49 <FreeFull> But there isn't anything that isn't valid brainfuck
23:08:03 <oerjan> ^bf ] i beg to differ
23:08:03 <fungot> Mismatched [].
23:08:14 <Phantom__Hoover> oerjan, ooh, I think that's a legal Agda token.
23:08:22 <FreeFull> Oh, you're right
23:08:31 <FreeFull> But it would be valid brainfuck in this case
23:08:36 <oerjan> Phantom__Hoover: both of them? or even with the space?
23:08:43 <FreeFull> ^bf :(){ :|:&};:
23:08:48 <Phantom__Hoover> Yeah, both.
23:09:06 <Phantom__Hoover> () has a special meaning but I suspect it needs whitespace for that.
23:11:14 <Sgeo> itidus is an SL person?
23:11:50 <oerjan> Sgeo: there seems to be evidence for that
23:11:52 <zzo38> Phantom_Hoover: : is a line comment delimiter in TeX if you write \catcode`:=14
23:14:34 -!- copumpkin has joined.
23:15:14 <Phantom__Hoover> It's probably legal in Perl with some wrangling beforehand.
23:15:57 <zzo38> Yes maybe. Try it
23:16:27 <Phantom__Hoover> Oi, kallisti, you're the poor fool who thinks perl is a good language.
23:17:45 <Sgeo> It occurs to me that although both Tcl and Lisp could make a good-looking do-like (as in Haskell's do) construct, it would be easier in Lisp because in Tcl you'd have to parse a string if you want it to look the way Tcl code generally looks
23:18:00 <zzo38> Finally I thought of how the macro in Ibtlfmm should be working: There is 2 kind of macros, file macros and module macros. Even module macros there is also 2 kind, open macros and closed macros. And it is possible for some module to import an open macro but export it as closed.
23:18:40 <kallisti> Phantom__Hoover: what are you attempting to do?
23:19:06 <kallisti> : as comment?
23:19:10 <Phantom__Hoover> Make :(){ :|&:};: legal code.
23:19:14 <kallisti> oh
23:19:40 <kallisti> I'll assume source filters is cheating
23:20:18 <kallisti> I don't even know what : does in perl actually
23:20:22 <zzo38> The only way I know how : as comment is in TeX and in Forth if preceded and followed by a space.
23:20:52 <Sgeo> source filters?
23:21:06 <kallisti> you can run perl code on the source files of other perl code before they're compiled
23:21:22 <kallisti> it's used to modify the language syntax.
23:21:37 <Sgeo> That.... does it receive the code as a string?
23:21:41 <kallisti> yes
23:22:11 <Sgeo> That... seems like it could be harder to deal with than Tcl, even though Tcl also sees Tcl code in terms of strings --- Tcl syntax is very simple
23:22:45 <kallisti> there are some modules that abstract over this to make it easy to define specific syntactic constructs
23:23:13 <Sgeo> I'm just going to assume that Tcl is easier
23:23:45 <kallisti> but probably not as flexible
23:24:55 * Sgeo raises an eyebrow
23:25:49 <Sgeo> Well, I guess you'd have some trouble (aka impossible) with whole-code transforms such as turning a bunch of stuff into CPS
23:28:04 <Sgeo> kallisti, how much do you know about Tcl?
23:29:26 <kallisti> enough to know that I'm not interested in this conversation
23:33:04 -!- tswett has quit (Quit: leaving).
23:34:35 -!- pikhq_ has joined.
23:35:07 -!- pikhq has quit (Ping timeout: 240 seconds).
23:36:05 <FreeFull> In lisp, the code is lists, so you can use the same operations you'd use on lists of data to modify the code
23:36:17 -!- augur has quit (Remote host closed the connection).
23:39:50 <Sgeo> In Tcl, the code is strings, and some strings are lists and all lists are strings...
23:40:07 -!- david_werecat has quit (Ping timeout: 240 seconds).
23:40:10 <Sgeo> It's not perfect, not quite like Lisp, but it's workable
23:43:29 <oerjan> in haskell, the code is just a braided ring over a category of prepromorphisms, so you can use the same operations you'd use on braided rings over categories of prepromorphisms to construct a new code
23:45:07 <oerjan> It's not workable, unlike Lisp and TCL, but it's perfect
23:49:07 -!- pikhq_ has quit (Ping timeout: 240 seconds).
23:49:19 -!- pikhq has joined.
2012-08-04
00:01:45 <elliott> Sgeo: btw strings are an awful awful basis for a language
00:02:12 <FreeFull> Hey, I just figured out
00:02:24 <FreeFull> That if you take all odd numbers
00:02:40 * oerjan braces for someone inventing cardinalities
00:02:45 <oerjan> *re-
00:03:01 <FreeFull> Wait
00:03:03 <FreeFull> Let me check this
00:03:30 <FreeFull> nope, nevermind
00:05:16 * oerjan starts breathing again
00:05:26 <elliott> i never breathe
00:05:36 <zzo38> Why?
00:05:38 <oerjan> of course
00:06:19 <Phantom__Hoover> Because you have to breathe the air they want you to breath.
00:09:05 <oerjan> before you know they'll have poisoned you with dihydrogen monoxide
00:09:53 <FreeFull> The air is full of dioxygen, an extremely reactive compound!
00:10:12 <zzo38> O yes you are correct. I forgot.
00:10:51 <Phantom__Hoover> FreeFull, it's both acidic *and* alkaline!
00:10:56 <FreeFull> And don't forget dinitrogen, which when breathed in sufficient amounts with cause loss of consciousness and then death
00:11:19 <FreeFull> Phantom__Hoover: You're thinking of dihydrogen monoxide
00:11:37 <Phantom__Hoover> Ah, of course.
00:11:49 <Phantom__Hoover> I think you mean 'breathed in sufficient concentrations', though.
00:12:16 <FreeFull> I did
00:14:57 -!- copumpkin has changed nick to Chaaaaaang-Noi.
00:15:21 -!- Chaaaaaang-Noi has changed nick to copumpkin.
01:22:56 -!- nooga has quit (Ping timeout: 246 seconds).
01:25:21 -!- glogbackup has joined.
01:25:48 * oerjan looks sternly at glogbackup
01:29:22 <elliott> it's confused :(
02:25:17 -!- pikhq_ has joined.
02:25:18 -!- mig22 has joined.
02:25:30 -!- pikhq has quit (Ping timeout: 250 seconds).
02:30:15 -!- pikhq has joined.
02:30:41 -!- pikhq_ has quit (Ping timeout: 250 seconds).
02:32:29 * Phantom__Hoover -> sleep
02:32:31 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
02:33:20 <Gregor> “I'm on 29th street, in the—no joke—bright yellow house.” “Well, since you were so kind as to warn me, I should warn you. I'm bringing—no joke—bright yellow pants.”
02:34:06 <oerjan> follow the yellow brick joke
02:34:43 <Gregor> 'snot a joke, it's an anecdote.
02:34:56 <coppro> haha
02:35:50 <zzo38> Who told you that?
02:36:06 <Gregor> I am the second speaker.
02:36:19 <oerjan> a reliable man made of straw
02:36:26 <zzo38> Do you have bright yellow pants?
02:36:30 -!- david_werecat has joined.
02:36:37 <Gregor> I do now!
02:36:42 <Gregor> Need to be hemmed though.
02:37:08 <zzo38> Did you buy it after you told them that?
02:37:26 <Gregor> 'course not, the first speaker was the tailor who I'm hiring to hem the pants.
02:38:06 <oerjan> gregor, the man with the larger-than-life pants
02:38:19 <oerjan> also hats
02:38:24 <Gregor> They shipped unhemmed. They're like 36x40.
02:42:10 <zzo38> OK
02:45:24 <zzo38> Is it?
02:50:42 -!- oerjan has quit (Quit: leaving).
02:54:57 -!- pikhq has quit (Ping timeout: 250 seconds).
02:55:04 -!- pikhq has joined.
03:09:23 <zzo38> Have you use unofficial opcodes in 6502 assembly codes?
03:30:10 -!- pikhq has quit (Ping timeout: 244 seconds).
03:30:24 -!- pikhq has joined.
03:47:40 <Sgeo> It occurs to me that, while I do have some problems with Tcl, I don't _think_ they ultimately stem from being string-based.
03:48:08 <Sgeo> One looks like it at first, but it seems like it could have been different while still being string-based
03:48:50 -!- TUX_ has joined.
03:50:41 <Sgeo> `welcome TUX_
03:50:48 <HackEgo> TUX_: 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:50:59 -!- ogrom has joined.
03:51:46 -!- itidus21 has joined.
03:59:16 <Sgeo> Although.... one of the things that makes metaprogramming in Tcl somewhat easy is that commands are lists. They're strings, but they're also lists
03:59:36 <Sgeo> And my problem is that a bunch of commands aren't really lists, they're just... scripts
03:59:45 <Sgeo> (Well, one of my problems)
04:23:04 -!- mig22_ has joined.
04:26:11 -!- TUX_ has quit (Quit: Leaving).
04:26:30 -!- TUX_ has joined.
04:43:37 -!- ogrom has quit (Ping timeout: 272 seconds).
04:44:34 -!- ogrom has joined.
04:57:35 -!- ogrom has quit (Ping timeout: 250 seconds).
04:57:36 -!- ogrom_ has joined.
04:58:12 -!- ogrom_ has quit (Client Quit).
05:04:28 -!- mig22_ has quit (Read error: Connection reset by peer).
05:04:41 -!- mig22_ has joined.
05:07:21 -!- mig22_ has quit (Read error: Connection reset by peer).
05:07:43 -!- mig22_ has joined.
05:09:32 <zzo38> Is mathematics the real reality?
05:10:12 <elliott> YE
05:10:13 <elliott> *ye
05:12:01 -!- mig22_ has quit (Ping timeout: 246 seconds).
05:12:46 -!- mig22_ has joined.
05:12:50 -!- mig22_ has quit (Client Quit).
05:19:26 <zzo38> What is your opinion about this? http://forum.nationstates.net/viewtopic.php?f=20&t=193905 (please read four pages)
05:26:01 -!- TUX_ has quit (Ping timeout: 246 seconds).
05:26:23 <itidus21> zzo38: was mathematics the real reality before humans? is reality real if noone realizes?
05:26:55 <itidus21> i don't think i want the answers
05:27:37 <zzo38> itidus21: Good because I don't know the answers.
05:28:34 <itidus21> of course, one must consider that numbers are not necessary for mathematics
05:29:16 <itidus21> but if numbers are just symbols of measurement
05:29:28 <zzo38> The numbers are just one possible mathematical system, but still very useful to be used with other mathematical systems and other things too.
05:29:35 <elliott> itidus21: can i play the kmc and point out that you have no idea what you're talking about
05:29:49 <itidus21> well.. also representation
05:29:55 <itidus21> infact they are symbols outright
05:30:30 <itidus21> elliott: ok
05:34:31 <itidus21> i guess that one might say i am engaged in (some adjective could fit here) speculation
05:34:53 <itidus21> and that i am gaining very little because of it
05:37:46 -!- ogrom has joined.
05:41:36 -!- monqy has quit (Quit: hello).
06:00:06 -!- pikhq has quit (Ping timeout: 246 seconds).
06:00:12 -!- Vorpal has joined.
06:00:16 -!- pikhq has joined.
06:01:42 -!- ogrom has quit (Ping timeout: 250 seconds).
06:28:07 -!- david_werecat has quit (Ping timeout: 272 seconds).
06:28:13 <zzo38> God *is* the rules. Therefore, how can God not follow the rules of physics?
06:30:14 -!- ogrom has joined.
07:04:25 -!- zzo38 has quit (Remote host closed the connection).
07:08:39 -!- asiekierka has joined.
07:15:44 <Sgeo> It strikes me how easy it is to write bad Tcl code.
07:34:45 -!- MoALTz has joined.
07:39:34 <kmc> itidus21: one might correctly say that all of the time
07:39:49 <Sgeo> Well, I've been called "Sego" by a Clojure person
07:40:33 <Sgeo> http://clojurefun.wordpress.com/2012/08/04/macro-magic-the-xor-macro-38-2/comment-page-1/#comment-7
07:51:59 <elliott> well!
07:58:34 <Sgeo> I don't want to force the users of a library to monkey-patch catch.
07:58:43 <Sgeo> But it almost seems the most correct thing to do
08:12:53 <Sgeo> Tcl has a feature that would enable exactly what I need but it's reportedly very buggy
08:21:09 -!- epicmonkey has joined.
08:24:42 <Sgeo> `welcome epicmonkey
08:24:51 <HackEgo> epicmonkey: 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.)
08:25:04 -!- pikhq_ has joined.
08:25:55 -!- pikhq has quit (Ping timeout: 272 seconds).
08:31:04 <shachaf> kmc: Sorry. :-(
08:38:04 <epicmonkey> It used to be WELCOME TO THE INTERNATIONAL HUB FOR BLA BLA BLA. What has happened? I don't feel rage anymore.
08:38:22 <epicmonkey> `WELCOME epicmonkey
08:38:26 <HackEgo> EPICMONKEY: 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.)
08:38:44 <epicmonkey> yeah, that's way much better.
08:40:41 -!- pikhq_ has quit (Ping timeout: 244 seconds).
08:40:49 -!- pikhq has joined.
09:15:56 <Vorpal> suddenly I have an urge to write a fault tolerant IRC bot... Why...
09:17:17 -!- nooga has joined.
09:17:40 <shachaf> `WELCOME epicmonkey
09:17:43 <HackEgo> ​EPICMONKEY: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOL
09:22:14 <Vorpal> shachaf, what about a lower case double-width one?
09:22:25 <shachaf> Vorpal: Feel free.
09:22:31 <Vorpal> shachaf, too much work
09:29:37 -!- copumpkin has quit (Ping timeout: 240 seconds).
09:29:57 <elliott> Vorpal: You've used astyle, right?
09:30:01 -!- KingOfKarlsruhe has joined.
09:30:51 -!- copumpkin has joined.
09:34:57 <Vorpal> elliott, astyle can do that?
09:35:04 <Vorpal> or was that unrelated
09:35:13 <Vorpal> but yes I used it, was ages ago though
09:35:27 <elliott> Vorpal: Is it any good?
09:35:47 <Vorpal> elliott, Like any such tool for C it has problems with macros containing unbalanced { and }
09:36:08 <elliott> I'm in the market for something to reformat a ~85k-line C++ program.
09:36:13 <elliott> No macro hackery that I know of.
09:36:20 <Vorpal> used it for C, no clue how well it works for C++
09:36:26 <epicmonkey> I wonder if zalgo works...
09:36:29 <elliott> Is it possible to teach it about custom formatting rules for certain functions?
09:36:37 <elliott> for example
09:36:42 <epicmonkey> `̸W̷̸̛E̢L̷͘C҉OM͢͜E̷ epicmonkey
09:36:45 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ̸W̷̸̛E̢L̷͘C҉OM͢͜E̷: not found
09:36:51 <Vorpal> elliott, btw I was debugging a legacy embedded system running Windows CE the other day.
09:36:54 <elliott> there's a function that should be formatted with two parameters two a line
09:36:56 <epicmonkey> no luck
09:37:01 <elliott> rather than just wrapping at 80 cols
09:37:05 <elliott> *two parameters to
09:37:05 <Vorpal> elliott, the CPU of the system was a Pentium MMX
09:37:12 <elliott> do you know if that would be feasible?
09:37:28 <Vorpal> <elliott> Is it possible to teach it about custom formatting rules for certain functions? <-- don't remember
09:37:34 <elliott> :/
09:37:35 <elliott> ok
09:38:30 <Vorpal> elliott, btw I was debugging that system from another similar system that was talking with it it over a CAN bus.
09:39:05 <elliott> that sounds awful
09:39:26 <Vorpal> elliott, well yeah, the system I was debugging had no ethernet, so thus the middle step there
09:41:06 <Vorpal> elliott, anyway, if you think toughbooks are rugged, you haven't seen the hardware I'm working with nowdays.
09:41:33 * elliott is content with the normal kind of machines
09:41:45 <Vorpal> heh
09:42:00 <shachaf> Is "XMM" just "MMX" backwards or is there something more to it?
09:42:33 <Vorpal> shachaf, I believe XMM stands for something in itself. That doesn't mean the abbreviation is a coincidence however
09:43:12 <shachaf> Does SII stand for something in itself?
09:43:22 <Vorpal> shachaf, which SII?
09:43:29 <Vorpal> the samsung phone?
09:44:04 <shachaf> SII = \x -> x x
09:44:12 <Vorpal> oh, right
09:44:23 <Vorpal> shachaf, well it obviously stands for "Something In Itself"
09:44:24 <Vorpal> :P
09:44:54 <shachaf>
09:44:58 <shachaf> (As monqy would say.)
09:45:32 <elliott> Deewiant: Hi.
09:47:10 <Deewiant> Ho.
09:47:53 <elliott> Deewiant: Tell me about code reformatters.
09:48:18 <Deewiant> Humans are the best.
09:48:31 <Deewiant> (Never really used any.)
09:48:40 <elliott> Darn.
09:48:47 <elliott> (I'm not reformatting an 85k-line codebase by hand.)
09:49:06 <elliott> Ooh, I broke this one good:
09:49:07 <elliott> stuff.h: In instantiation of ‘T random_choose_weighted_(int, int, T, Args ...) [with T = int; Args = {scroll_type}]’:
09:49:07 <elliott> stuff.h:121:66: recursively required from ‘T random_choose_weighted_(int, int, T, Args ...) [with T = int; Args = {scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type}]’
09:49:10 <elliott> stuff.h:121:66: required from ‘T random_choose_weighted_(int, int, T, Args ...) [with T = int; Args = {scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type}]’
09:49:14 <elliott> stuff.h:127:59: required from ‘T random_choose_weighted(int, T, Args ...) [with T = scroll_type; Args = {int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type, int, scroll_type}]’
09:49:36 <Deewiant> Why do you have to?
09:49:41 <elliott> Deewiant: It's ugly.
09:49:54 <Deewiant> Most code is. That doesn't mean you need to reformat all of it.
09:50:22 <elliott> It's making me sad.
09:50:29 <shachaf> elliott: indent
09:50:55 <elliott> Does indent even support C++?
09:51:21 <shachaf> I doubt it.
09:51:35 <shachaf> But I've told you everything I know about code reformatters!
09:51:42 <shachaf> Why are you reformatting Crawl's code?
09:52:20 <elliott> It's ugly.
09:52:40 <shachaf> Will they accept your changes?
09:52:49 <shachaf> Did you fork it? :-(
09:52:53 <shachaf> elliotts-crawl
09:54:01 <elliott> error: unable to find string literal operator ‘operator"" EOL’
09:54:02 <elliott> Sigh.
09:54:13 <Vorpal> <elliott> Deewiant: Tell me about code reformatters. <-- There are really good ones for Java and C#. Can't think of any perfect one for C or C++
09:55:12 <shachaf> What about the built-in vim one?
09:55:22 <shachaf> That totally counts.
09:55:40 <Vorpal> not a vim user
09:57:52 <elliott> Hey, I'm about to spam. Fair warning.
09:57:53 <elliott> - T chosen = first;
09:57:53 <elliott> - int cweight = weight, nargs = 100;
09:57:54 <elliott> -
09:57:54 <elliott> - while (nargs-- > 0)
09:57:54 <elliott> - {
09:57:55 <elliott> - const int nweight = va_arg(args, int);
09:57:57 <elliott> - if (nweight < 0)
09:57:59 <elliott> - break;
09:58:01 <elliott> -
09:58:03 <elliott> - const int choice = va_arg(args, int);
09:58:05 <elliott> - if (random2(cweight += nweight) < nweight)
09:58:07 <elliott> - chosen = static_cast<T>(choice);
09:58:09 <elliott> - }
09:58:11 <elliott> Thanks.
10:03:38 <shachaf> A proper formatter would format it to while (nargs --> 0), of course.
10:04:04 <elliott> I rewrote it to use a C++0x template.
10:04:12 <elliott> Although I don't know if we really want to go in the C++0x route.
10:05:21 <KingOfKarlsruhe> i thought C++0x doesn't exist anymore.
10:05:39 <Vorpal> shachaf, XD
10:05:53 <elliott> ok, C++11
10:06:47 <KingOfKarlsruhe> and as i know, C++1y is the next standard
10:07:01 <shachaf> C++0xB
10:07:20 <shachaf> Also known as C++11
10:07:25 <shachaf> Or would that be C++0xD0?
10:10:54 <ion> 2 Gorillas 1 Poop http://youtu.be/9QYeYPYGNdc
10:15:11 <ion> http://www.foddy.net/CLOP.html
10:15:22 -!- azaq23 has joined.
10:15:37 -!- azaq23 has quit (Max SendQ exceeded).
10:16:08 -!- azaq23 has joined.
10:19:08 <KingOfKarlsruhe> ion: hahaha this game is funny
10:25:54 <Vorpal> ion, is it as impossible as qwop?
10:26:09 <shachaf> QWOP isn't impossible. It's easy.
10:27:48 <KingOfKarlsruhe> looool qwop is really cool
10:28:06 <Vorpal> shachaf, riiight? So you mastered it?
10:28:14 <Vorpal> prove it
10:28:28 <shachaf> Vorpal: Well, I can get to the end reliably.
10:28:32 <shachaf> It's boring but easy.
10:28:35 <Vorpal> hm okay
10:29:01 <Vorpal> shachaf, how quickly though?
10:29:11 <shachaf> Very slowly.
10:29:14 <Vorpal> ah
10:29:24 <shachaf> You're supposed to be fast?
10:29:54 <shachaf> There's no timer, just a distance-measuring thing.
10:31:29 <shachaf> I got to the top of the first hill just now.
10:31:36 <shachaf> Seems similarly boring so far.
10:32:05 <shachaf> Well, but less of a flat surface, at least.
10:32:26 <Vorpal> shachaf, well, I seen a speedrun of it?
10:32:31 <Vorpal> I've*
10:33:05 <Vorpal> also I think these games are supposed to be boring
10:33:10 <Vorpal> shachaf, you could try GIRP
10:33:24 <shachaf> Vorpal: Oh, I won using only two keys.
10:33:27 <shachaf> Does that count for something?
10:33:37 <Vorpal> in GIRP?
10:33:44 <shachaf> QWOP
10:33:47 <Vorpal> oh
10:33:51 <Vorpal> no idea
10:33:54 <shachaf> I'm past halfway in CLOP using only two keys too.
10:34:19 <shachaf> This hill is annoying, though.
10:38:32 <shachaf> Yay, I died.
10:38:38 <shachaf> That hill looks impassable using my strategy.
10:38:59 <Vorpal> I tried a couple of gaits and couldn't make it work, then I gave up
10:39:06 <shachaf> On the other hand I think I encountered a bug.
10:39:12 <shachaf> Because the hind legs stopped working completely.
10:39:16 <Vorpal> heh
10:39:17 <shachaf> Or maybe I was just doing it wrong.
10:39:23 <Vorpal> hjkl?
10:39:56 <shachaf> Yes.
10:40:00 <shachaf> Only H and K did anything.
10:40:16 <shachaf> Oh, wait.
10:40:24 <shachaf> That's probably what "Lame Horse Mode" means.
10:40:28 <Vorpal> heh
10:40:30 <shachaf> Yep.
10:49:55 -!- asiekierka has quit (Quit: Connection reset by PO).
10:57:12 <oklopol> is there a second hill?
10:58:20 <shachaf> Yes.
10:58:29 <oklopol> ouch :P
10:58:49 <oklopol> is your strategy to lame your back legs?
10:58:52 <oklopol> or what
10:58:55 <oklopol> i just run
10:58:58 <shachaf> That's what I did, yes.
11:02:40 <oklopol> and i suppose the second hill is bigger
11:04:54 <oklopol> this would be so much easier if the keys made any sense
11:05:28 <oklopol> i can guess the reason but if it's that one, it's still so wrong.
11:05:45 <ion> You could make a custom keyboard layout!
11:09:13 <oklopol> sounds tedious
11:13:36 <oklopol> ...unlike playing this for hours with keys i don't like?
11:18:16 <ion> Random facts about Finnish: there’s a humorous euphemism for puking: speaking in Norwegian or phoning to Norway. In the context of the latter the toilet can be called a phone booth.
11:31:11 -!- Phantom_Hoover has joined.
11:51:53 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
11:58:07 -!- copumpkin has quit (Ping timeout: 240 seconds).
11:58:43 <Vorpal> elliott, you there?
11:58:48 -!- copumpkin has joined.
11:59:11 <elliott> no
11:59:46 <Vorpal> elliott, didn't you mess with cfunge under cygwin ages ago?
11:59:51 <Vorpal> I forgot what the outcome of that was
12:00:15 <elliott> idk
12:00:18 <elliott> i think it worked
12:00:22 <Vorpal> hm okay
12:17:12 <Vorpal> ah yes, the whole thing built save for one small fix
12:18:58 -!- monqy has joined.
12:19:58 <Vorpal> though it gives a spurious BAD
12:19:59 <Vorpal> hm
12:21:30 <Vorpal> okay I switched from Release to Debug and now it fails in a different place
12:22:03 <elliott> monqy: hello
12:22:14 <monqy> .
12:23:10 <elliott> lambdabot: what are you doing
12:23:14 <elliott> monqy: try saying a longer message
12:23:25 <monqy> i already checked my messages
12:23:31 <elliott> o
12:23:31 <monqy> how else would i know about that thing i knew about
12:23:34 <elliott> that's cheating
12:23:36 <elliott> oh right
12:23:38 <elliott> i
12:23:42 <elliott> i'm not very smart sometimes
12:25:11 -!- copumpkin has quit (Ping timeout: 250 seconds).
12:25:41 -!- copumpkin has joined.
12:25:50 <Vorpal> hrrm... clock_gettime is /very/ broken on cygwin
12:36:06 -!- asiekierka has joined.
12:38:05 <Vorpal> also cygwin headers are broken if you use -std=c99 when using _POSIX_C_SOURCE
12:38:19 <Vorpal> they just hide stuff based in __STRICT_ANSI__
12:40:37 <elliott> Vorpal: Can I have access to your Windows box?
12:40:39 <elliott> :(
12:40:43 <Vorpal> elliott, no, why?
12:40:55 <elliott> I need to test some stuff.
12:40:56 <Vorpal> it is windows, I wouldn't trust it to do multi user stuff securely
12:41:10 <Vorpal> elliott, I could compile something not too large under cygwin if you want.
12:41:30 <Vorpal> (remember cygwin is slow at fork()...)
12:42:02 <Vorpal> seriously, what is up with the headers on cygwin, --std=gnu99 didn't show everything
12:42:18 <Vorpal> like, it doesn't show strdup!
12:43:55 <Vorpal> wow, -std=gnu99 does not define _GNU_SOURCE under cygwin... That is so broken
12:44:28 <Gregor> ... uh...
12:44:31 <Gregor> Those are unrelated.
12:44:39 <Vorpal> Gregor, hm, pretty sure they were related?
12:44:40 <Gregor> -std=gnu99 should not define _GNU_SOURCE anywhere.
12:44:51 <Gregor> In fact, -std=gnu99 does NOT define _GNU_SOURCE anywhere.
12:44:53 <Gregor> Not even on glibc.
12:45:00 <Vorpal> pretty sure it used to? Or maybe it was -std=gnu89 that did?
12:45:03 <Gregor> Never.
12:45:13 <Vorpal> hm okayt
12:45:27 <Vorpal> anyway cygwin thinks strdup is _GNU_SOURCE
12:45:30 <Vorpal> it is POSIX dammit
12:45:32 <Gregor> If !STRICT_ANSI, then glibc gives you something like _POSIX_C_SOURCE=somethingerather _XOPEN_SOURCE=somethingerather
12:45:34 <Vorpal> well, XSI
12:46:27 <Vorpal> Gregor, well, I'm using -std=c99 -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600, and that isn't doing the right thing on cygwin
12:46:41 <Vorpal> due to STRICT_ANSI
12:46:54 <Gregor> Yeah, then that's broken :)
12:47:06 <Gregor> But then, it's Cygwin. Broken is the norm 8-D
12:47:27 <Vorpal> well yes
12:47:39 <Vorpal> why do I keep using nano shortcuts in emacs and emacs shortcuts in nano today -_-
12:50:04 <Vorpal> also altgr keeps activating the god damn window-icon menu of windows
12:50:06 <Vorpal> -_-
12:50:49 <Gregor> No good can come of using Windows, Vorpal.
12:50:51 <Gregor> That's just a fact.
12:51:00 <Vorpal> Gregor, true.
12:52:07 <Vorpal> warning: array subscript has type 'char' <-- huh?
12:52:20 <Vorpal> that seems perfectly legit to me as long as you have a small enough array
12:54:08 <Deewiant> The reasoning is that char is sometimes signed, and using plain char you might expect it to be unsigned
12:54:18 <Vorpal> right
12:54:46 <Vorpal> Strange that I don't get that warning on Linux with gcc
12:55:30 <kallisti> sauerkraut is so good.
12:55:44 <kallisti> thought you should know.
12:56:48 <itidus21> x = foo[-50];
12:56:57 <itidus21> weird.
12:57:00 <kallisti> Gregor: I think the reason web apps are so popular is everyone would rather deal with that shit than deal with Windows.
12:57:15 <elliott> Deewiant: You use Windows, right???
12:57:23 <Deewiant> Occasionally.
12:57:23 <elliott> Deewiant: You've used PDCurses, right????????????
12:57:39 <Deewiant> Sometimes.
12:57:42 <elliott> <Vorpal> elliott, I could compile something not too large under cygwin if you want.
12:57:46 <elliott> it's actually non-cygwin i'm concerned about alas
12:58:08 <elliott> Deewiant: Do you want to..... combine these interests????????????????????
12:58:34 <Deewiant> I've only ever used PDCurses on Windows, so I've already combined them.
12:58:38 <Deewiant> What're you after?
12:58:48 <Vorpal> elliott, what is it then?
12:58:57 <Vorpal> elliott, I have Visual Studio 2010 Ultimate as well
12:59:07 <Vorpal> (from MSDNAA)
13:00:27 <elliott> Deewiant: I have this piece of code that has its own awful Win32 code and a POSIXy backend that uses ncurses. I want to see if I can axe the former and simply make the latter happen to not actually depend on POSIX at all, so I can just use PDCurses on Windows. But I don't have access to Windows : - (
13:00:36 <elliott> I might just see if this kind-of-weak machine can support an XP VM.
13:00:39 <elliott> But I doubt it.
13:01:05 <Vorpal> okay wtf, as far as I can tell from the build process it should have TERM, yet it isn't there
13:01:35 <Vorpal> hm
13:02:02 <elliott> Deewiant: Another alternative might be MinGW cross-compilation, but uh... setting up PDCurses in such an environment sounds painful.
13:02:19 <kallisti> set up RDP or teamviewer on someone's windows desktop
13:02:21 <kallisti> to test it
13:02:26 * kallisti has had to do that a couple of times.
13:02:41 <elliott> yes, now all I need is a "someone"
13:03:16 <Deewiant> elliott: What's there to set up, all you need is the library?
13:04:02 <kallisti> elliott: just write the code perfectly the first time. What's the big deal?
13:04:33 <elliott> Deewiant: I don't actually know. Compiling on Windows natively is kind of a weirdly new and baffling experience for me. I'm not at all sure how it works.
13:05:03 <kallisti> elliott: C/C++? VS seems to be the best way to go these days.
13:05:24 <kallisti> it's also a huge pain in the ass to set compile options in a GUI. :(
13:06:27 <kallisti> maybe that's not what you're confused about though..
13:06:35 <elliott> I'd rather use MinGW... dealing with another compiler's foibles seems a bit painful, and I know even less about a non-GNU toolchain.
13:07:06 <kallisti> does MinGW link to the Windows DLLs?
13:07:14 <kallisti> I thought it uses its own.
13:07:19 -!- sirdancealot7 has quit (Ping timeout: 260 seconds).
13:07:42 <Vorpal> it does link to them afaik
13:07:53 <Vorpal> and unlike cygwin it doesn't add a layer in between
13:08:14 <Vorpal> elliott, I found 64-bit XP to be considerably lighter on VMs than 32-bit XP)
13:08:18 <kallisti> oh okay. sure. do that.
13:08:23 <Vorpal> s/)$//
13:08:26 <Vorpal> no idea why
13:08:35 <elliott> Vorpal: huh
13:09:18 <Vorpal> elliott, I think it is because it is based on a server OS (2003 server iirc?) rather than a client OS
13:09:44 <fizzie> It (also AFAIK) does link to the MSVC runtime, yes.
13:10:12 <elliott> I wonder if PDCurses works on Win64.
13:10:14 <elliott> I bet fizzie knows.
13:10:21 <kallisti> right, what I actually meant was "doesn't it link to its own DLL layer"? but apparently it doesn't
13:10:35 <fizzie> I would be surprised if pdcurses didn't, but I can't be absolutely sure.
13:10:58 <fizzie> MinGW also (IIRC) uses kinda hacky header files, there's some kind of GCCified <windows.h> etc.
13:13:35 <Vorpal> hm, stdscr from ncurses is not an lvalue on cygwin
13:14:12 <Vorpal> yet the code looks the same
13:14:17 <Vorpal> (in the header)
13:14:37 -!- augur has joined.
13:14:53 <kallisti> Vorpal: is it a macro? maybe something inside the macro is defined differently
13:15:12 <Vorpal> kallisti, indeed the case, can't find where the macro is defined yet though
13:17:27 <Vorpal> well, I can find the definition on cygwin... but not on linux
13:17:41 -!- Taneb has joined.
13:17:42 <Taneb> Hello!
13:17:49 <Vorpal> kallisti, how can grep -R on /usr/include not find the definition of NCURSES_PUBLIC_VAR
13:17:52 <Vorpal> this makes no sense
13:17:59 <kallisti> Vorpal: because you gave it a bad regex
13:18:04 <kallisti> >_>
13:18:06 <kallisti> or it isn't there.
13:18:18 * kallisti exhausts the possibilities
13:18:22 <Vorpal> kallisti, I can find uses of it
13:18:28 <Vorpal> and I grepped for a plain string
13:18:37 <Vorpal> fgrep -R NCURSES_PUBLIC_VAR /usr/include/
13:18:49 <Vorpal> surely it must be there for the code to compile, since it is used
13:19:04 <kallisti> might be passed in as a -D flag?
13:19:23 <Vorpal> hm
13:19:32 <Vorpal> or it seems it is hidden inside some ifdef
13:19:36 <Vorpal> far away
13:19:37 <Vorpal> oh well
13:20:46 <kallisti> sudo grep -R /
13:21:16 <Vorpal> no, it was a #ifdef way far out
13:21:41 <Vorpal> so that code isn't actually compiled presumably
13:22:31 <kallisti> Vorpal: check makefiles for various -D flags
13:26:57 <elliott> Vorpal: do you know where i can find a completely legitimate copy of winxp x64
13:27:10 <Vorpal> elliott, are you a student at a university?
13:27:13 <Vorpal> then MSDNAA
13:27:24 <Vorpal> elliott, otherwise: no clue
13:28:01 <Vorpal> elliott, anyway, you can run 32-bit programs on win64, so <elliott> I wonder if PDCurses works on Win64. is not really an issue
13:28:45 <elliott> Vorpal: by completely legitimate i mean completely illegitimate
13:28:54 <Vorpal> no idea about that either
13:29:04 <Vorpal> elliott, try the usual locations?
13:29:12 <elliott> yes ok
13:29:25 <elliott> Vorpal: which "edition" do you have
13:29:27 <elliott> corporate?
13:29:32 <Vorpal> elliott, pro I believe?
13:29:46 <Vorpal> I don't know what the corporate edition is
13:29:58 <Vorpal> is it the volume license thingy?
13:30:03 <elliott> "Windows XP Professional 64 bit Corporate Edition"
13:30:04 <elliott> lord knows what it is
13:30:25 <fizzie> They had those things that don't do as much activation nonsense.
13:30:34 <fizzie> Or something. (Is no expert.)
13:30:45 <Vorpal> elliott, it could be that fancy volume license thingy that allows any number of licenses for a given company or so?
13:30:54 <Vorpal> err, any number of installations*
13:32:41 * Sgeo thinks that if Tcl is not going to use [] to surround top-level commands, it should at least have a built-in identity command more concise than return -level 0
13:33:00 <elliott> Vorpal: does virtualbox have drivers for xp x64
13:35:45 <elliott> access to this website has been denied
13:35:45 <elliott> We have been ordered by the High Court to prevent access to this website as it operates unlawfully. This is a legal obligation that we must comply with. The Court has found that the site and its users infringe copyright material in the UK.
13:35:45 <elliott> Orange does not monitor customer's activities nor will we disclose personal details or any information about our customers to any third party unless legally compelled to do so.
13:35:51 <elliott> urhgurhgurghruhgh fuck off you shitbags
13:36:02 <Vorpal> elliott, pretty sure it does yes
13:36:07 <Vorpal> since I used them :P
13:37:11 <elliott> bleh, there seems to be no information on this "Corporate Edition" that i am suspicious of
13:37:34 <Vorpal> hm
13:37:35 <Sgeo> Oh, [lindex] works as id for one argument
13:37:51 <Vorpal> elliott, well, 32-bit XP might run too. Or you could go for 2003 Server
13:39:56 <Vorpal> elliott, german wikipedia has a "corporate edition" page that mentions windows xp, it interwiki links to "volume license key"
13:40:06 <elliott> hmm
13:40:43 <Vorpal> dammit, waybackmachine is broken on one link due to robots.txt
13:47:44 <Vorpal> hm xubuntu installer crashed
13:47:58 <Vorpal> seems it doesn't like either linux software raid or lvm2
13:48:41 <Vorpal> elliott, btw I love my desktop, I can run at least three non-trivial virtual machines without it becoming unresponsive. Haven't tried more
13:49:00 <Vorpal> (one windows 7, one xubuntu and one windows xp 64-bit now)
13:49:51 <Vorpal> (in total they have 8 GB RAM allocated)
13:49:59 -!- ogrom has quit (Quit: Left).
13:51:12 <fizzie> I just "synclient PalmDetect=1"'d and am now wondering why I didn't try it before.
13:52:11 <elliott> What does it do?
13:52:28 <Vorpal> fizzie, you have a Palm?
13:53:44 <fizzie> Vorpal: Yes, my Hand has a Palm.
13:54:08 <fizzie> Vorpal: (And the laptop has a synaptics touchpad which has a palm-detect thing for the "misclicks from your palm when typing" thing.)
13:54:31 <Vorpal> XD
13:54:40 <Vorpal> fizzie, oh, so not a Palm PDA
13:54:56 <Vorpal> it looked like you were trying to sync with it
13:54:58 <Vorpal> or something
13:55:03 <fizzie> Heh. Right, no.
13:55:31 <Vorpal> fizzie, anyway I'm pretty sure I can set the palm detect thing from gpointer-settings or whatever it is called
13:55:43 <Vorpal> I have an ALPS though
13:55:49 <Vorpal> still uses the synaptics driver iirc
13:56:02 <fizzie> This is a xfce thing, the graphical settings things are kind of bare.
13:56:13 <fizzie> I haven't found out a way to enable a Compose key yet. :p
13:56:32 <Vorpal> ah right
13:56:55 <Vorpal> fizzie, think I did it in my .xinitrc by some xkb commands or such
13:57:07 <Vorpal> or I did it from gnome 2 and then it just carried over into xfce
13:57:10 <Vorpal> that is also possible
13:57:24 <fizzie> Possibly.
13:57:25 <Vorpal> I'm currently on a gnome 2 laptop
13:57:26 <fizzie> Speaking of Palm, there's some kind of a Palm Pre(?) compatibility thing for the N900.
13:57:31 <Vorpal> heh?
13:57:32 <fizzie> (They use the same hardware.)
13:57:36 <Vorpal> nice
13:57:45 <Vorpal> same CPU? Or more than that?
13:58:01 <fizzie> Well, same OMAP3 platform, so CPU, GPU and other such things.
13:58:06 <Vorpal> right
13:58:11 <fizzie> Different sensors and whatnot, but anyway.
13:58:19 <fizzie> It doesn't run everything, but apparently it runs many game-like things that only do fullscreen OpenGL ES stuffs.
13:58:37 <Vorpal> did Palm Pre have many of those?
13:58:57 <fizzie> I don't really know. I think it has a couple. Though not really any sort of iOS-grade appcosystem.
13:59:02 <fizzie> (It's like an ecosystem for apps.)
13:59:18 <Vorpal> I was under the impression that Palm was very much a work device, targeted at corporations
14:00:20 <Vorpal> fizzie, btw, do you know if there is any good open source real time OS?
14:00:33 <Vorpal> vxworks is kind of out of my league for hobby projects
14:01:05 <Vorpal> I know there have been various RT versions of linux, but I don't know much about them
14:01:57 <fizzie> I don't know that much about RT either. QNX has been used for soft-ish realtime stuffs.
14:02:06 <fizzie> It's not open source either, of course.
14:02:34 <Vorpal> fizzie, I want hardish real time in this case anyway
14:02:51 <fizzie> And people who work at companies do play games too. :p
14:02:57 <Vorpal> sure
14:03:52 <fizzie> http://www.gamespot.com/palm-webos/games.html?games=popular okay the selection doesn't look too impressive. :p
14:04:15 <Vorpal> indeed
14:05:20 -!- david_werecat has joined.
14:06:18 -!- davidwerecat has joined.
14:06:19 -!- david_werecat has quit (Read error: Connection reset by peer).
14:13:20 -!- sirdancealot7 has joined.
14:26:30 -!- ogrom has joined.
14:51:40 <fizzie> The weirdest, 19 entries in the 1k competition.
14:51:44 <fizzie> It's so popular.
14:53:28 -!- stanley has quit (Quit: ZNC - http://znc.in).
14:54:25 -!- stanley has joined.
14:54:25 -!- stanley has quit (Changing host).
14:54:25 -!- stanley has joined.
14:58:12 -!- ogrom has quit (Quit: Left).
14:59:13 -!- Taneb has quit (Ping timeout: 272 seconds).
15:03:30 <Vorpal> fizzie, oh?
15:03:48 <Vorpal> btw, why is it that designing software is so much more fun than implementing software.
15:08:40 <fizzie> Oldskool kombo had the typical 4 entries.
15:08:54 <fizzie> This year they have a fixed list of platforms, and organizer-provided hardware.
15:09:00 <Vorpal> hm
15:09:01 <fizzie> A fixed and a reasonably short list.
15:09:07 <Vorpal> which event is this?
15:09:21 <fizzie> It's the Assembly one.
15:09:24 <fizzie> "The following platforms are allowed, no exceptions:
15:09:24 <fizzie> Commodore 64 + 1541-II
15:09:24 <fizzie> Commodore Plus/4 + 1551 / 1541-II
15:09:24 <fizzie> Commodore Amiga 500, 1MB Agnus, 512k chip/512k slow, Kickstart 1.3
15:09:24 <fizzie> Atari ST, 1MB, double sided floppy
15:09:27 <fizzie> Atari 130xe + floppy
15:09:29 <fizzie> MSX1 + 3.5" drive
15:09:32 <fizzie> Sinclair Spectrum 128k + tape
15:09:34 <fizzie> Amstrad CPC6128"
15:09:37 <fizzie> That's not long. It doesn't even have the VIC-20.
15:09:45 <fizzie> Or many others you could name, but anyway.
15:09:54 <fizzie> NES or such, for example.
15:09:57 <Vorpal> right
15:10:01 -!- Taneb has joined.
15:10:18 -!- epicmonkey has quit (Ping timeout: 264 seconds).
15:10:19 <Vorpal> fizzie, also no modern systems at all
15:10:28 <Vorpal> fizzie, I could imagine 1K for Arduino or such
15:10:34 <fizzie> Oh, that's not for 1k.
15:10:36 <Vorpal> (or however you spell that)
15:10:47 <Vorpal> fizzie, well 1K would be 1Kb programs? no?
15:10:51 <fizzie> Yes.
15:10:56 <fizzie> But that's for modern platforms.
15:11:14 <Vorpal> oh right
15:11:24 <Vorpal> fizzie, so which platforms is 1k for then?
15:11:27 <fizzie> See, they have an oldschool compo with no size limits (well, except those imposed by those platforms), which had 4 entries, and a separate 1k competition where the compo machine is a modern thing.
15:11:34 <fizzie> There were Linux, Windows and OS X entries.
15:11:39 <fizzie> But the hardware's x86.
15:11:40 <Vorpal> ah
15:11:43 <Vorpal> and this year?
15:11:53 <elliott> Vorpal: how much ram does xp 64 bit want
15:12:07 <Vorpal> elliott, let me see what I give it on the virtual machine on my laptop
15:12:21 <fizzie> What about this year? All I've said applies to this year.
15:12:27 <Vorpal> elliott, on my desktop I usually just throw 2 GB on anything that isn't windows 7 (in which case I throw 4 GB at it)
15:13:07 <Vorpal> elliott, on my laptop with 2 GB RAM I give winxp 64 pro 516 MB RAM
15:13:29 <Vorpal> it isn't super fast, but it is much more responsive than 32-bit windows xp under the same conditions
15:13:43 <elliott> mm
15:13:45 <Vorpal> and no I don't know why it is 516 instead of 512
15:13:46 <elliott> I'll give 512
15:14:05 <elliott> how much storage space did you allocate :P
15:14:38 <Vorpal> 20 GB, dynamic allocated though. No idea how much of that is used
15:14:41 <Vorpal> let me see
15:15:03 <Vorpal> well it doesn't look like I shrunk that recently
15:15:08 <Vorpal> since the disk image is 17 GB
15:15:14 <Vorpal> pretty sure it is less than that though
15:15:22 <Vorpal> elliott, I do have some software installed on it
15:15:23 <Vorpal> so...
15:15:43 <elliott> mm
15:15:49 <Vorpal> oh wait, 17 GB was windows 7
15:15:59 <Vorpal> the winxp image use 8.9 GB
15:16:04 <Vorpal> for the 64-bit one
15:16:09 <elliott> right
15:16:10 <Vorpal> 4.8 for the 32-bit one
15:16:11 <elliott> I'll just assign 20 gigs
15:16:16 <elliott> it's dynamically-allocated anyway
15:16:17 <Vorpal> should be fine yeah
15:16:22 <Vorpal> indeed
15:16:32 <Vorpal> elliott, I did that on IDE
15:16:38 <Vorpal> elliott, because windows xp fails at SATA
15:16:50 <Vorpal> couldn't find 64-bit drivers that worked with XP
15:16:52 <elliott> does it
15:16:53 <elliott> ugh
15:16:56 <Vorpal> during install at least
15:16:57 <elliott> they don't come by default?
15:17:08 <elliott> any other virtualbox configuration i should know about?
15:17:10 <Vorpal> elliott, nope, on xp you had to put in a floppy or something with the SATA drivers
15:17:15 <Vorpal> elliott, even on real machines
15:17:32 <Vorpal> elliott, you might need to install ethernet drivers. They don't come with windows either usually :P
15:17:40 <elliott> : /
15:18:07 <Vorpal> elliott, apart from that, read through the help for the machine config in virtual box and make an informed decision on each one
15:18:09 <Vorpal> :P
15:18:29 <Vorpal> elliott, like you want IO APIC on
15:18:36 <Vorpal> machine clock in UTC off
15:18:48 <Vorpal> not sure about absolute pointing device
15:18:57 <Vorpal> I think my xp install in virtualbox predates that option
15:19:24 <elliott> but it says IO APIC will decrease performance : (
15:19:24 <Vorpal> elliott, for 64-bit you need to activate VT-x (or the AMD equiv)
15:19:31 <Vorpal> elliott, oh okay, does it? Hm
15:19:51 <Vorpal> not 100% sure, but 64-bit might require it
15:19:53 <Vorpal> read the manual
15:20:31 <elliott> which manual : (
15:20:36 <elliott> <Vorpal> elliott, for 64-bit you need to activate VT-x (or the AMD equiv)
15:20:36 <elliott> oh
15:20:37 -!- copumpkin has quit (Ping timeout: 240 seconds).
15:20:39 <elliott> i forgot about this.
15:20:43 <elliott> i do not have hardware virtualisation
15:20:45 <Vorpal> elliott, there is a help button in the config dialogue?
15:20:49 <elliott> gues i'll throw this torrent away
15:20:53 <Vorpal> it opens a manual for me?
15:20:54 <elliott> and i meant virtualbox or windows manual
15:21:02 <Vorpal> virtualbox one
15:21:16 <Vorpal> you are on an Atom or something?
15:21:18 -!- copumpkin has joined.
15:21:21 <Vorpal> or how do you not have VT-x
15:21:30 <elliott> "pentium" which is a rebranded core 2 duo ulv
15:21:40 <Vorpal> elliott, I'm on a core 2 duo and I have VT-x
15:21:42 <elliott> lower-end core 2s don't have thingy
15:21:45 <elliott> virtualisation
15:21:46 <Vorpal> hm
15:21:59 <Vorpal> elliott, I guess 2.26 GHz isn't lower-end then?
15:22:05 <Vorpal> model name: Intel(R) Core(TM)2 Duo CPU P8400 @ 2.26GHz
15:22:12 <Vorpal> flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl aperfmperf pni dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm sse4_1 lahf_lm dts tpr_shadow vnmi flexpriority
15:22:20 <elliott> 1.33 here
15:22:47 <Vorpal> elliott, you might try windows 95. Your system might just be able to handle that
15:23:19 <elliott> very funey
15:23:27 <Vorpal> Actually probably not, I have problems emulating that under virtualbox on this machine
15:23:35 <Vorpal> probably driver issues mostly though
15:23:40 <elliott> i've successfully emulated win 95 in virtualbox
15:23:45 <elliott> with full resolution graphics
15:23:56 <Vorpal> yeah, it just didn't run very fast
15:23:59 <Vorpal> which was strange
15:24:11 <Vorpal> maybe it did something that was bad for VT-x, don't know
15:25:09 <elliott> you need some things to make it run fast
15:25:12 <elliott> thingies
15:25:28 <Vorpal> oh?
15:25:33 <Vorpal> such as?
15:25:36 <elliott> idk
15:25:37 <elliott> it'd been so long
15:25:50 <Vorpal> anyway I don't need it any more, I got planescape running under windows 7 64-bit
15:26:15 <Vorpal> haven't gotten very far though
15:26:56 <Vorpal> the thing that those old games do where it voice acts like a couple of the lines but not most of them throws me off.
15:27:04 <Vorpal> or in the planescape case, a couple of the words
15:28:36 <kallisti> elliott: more programming books should be like Why's Poignant Guide
15:28:56 <kallisti> LYAH is very similar, maybe even a bit better (more to-the-point)
15:29:50 <Vorpal> personally I really don't like that style
15:29:52 <Sgeo> I think my main reason for liking Tcl more than a Lisp-family language is ecosystem worries
15:30:03 <kallisti> Vorpal: this is become
15:30:07 <kallisti> s/become/because/
15:30:09 * Sgeo shuts up
15:30:09 <kallisti> `? Vorpal
15:30:16 <HackEgo> Vorpal is really boring. Seriously, you have no idea.
15:30:36 <Vorpal> kallisti, indeed, I prefer the technical documentation approach
15:30:51 <Sgeo> `? Sgeo
15:30:54 <HackEgo> Sgeo invented Metaplace sex.
15:31:01 <Vorpal> what is metaplace?
15:31:05 <Vorpal> `? kallisti
15:31:09 <HackEgo> kallisti is a former prophet swearing off his pastry deity
15:31:21 <Sgeo> It was a virtual isometric world
15:31:35 <kallisti> I think MUDs invented metaplace sex.
15:31:41 <kallisti> I will let you ponder how this even makes sense.
15:32:08 -!- azaq23 has quit (Remote host closed the connection).
15:33:15 <Taneb> `? Taneb
15:33:18 <HackEgo> Taneb is not elliott, no matter who you ask.
15:33:24 <Taneb> `? Ngevd
15:33:28 <HackEgo> ​.\z/0.\w.tJ/KkV(.Ǘ6.WMSk..,XojKkW..QR1.kEĮ3=.Vp.@.ɛ|*H߼gCy&..jAm.N|E.sm .FBqEK..djKI|.) .M.~vC?L'.v.d!;.ZT..B..֦lM..`q!䇽5ڝՐNr*.(E..8⠤.5
15:33:40 * Sgeo alarums
15:33:58 * Sgeo alarums at his abuse of the word "alarum"
15:34:01 <Taneb> `? Hexham
15:34:03 <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.
15:34:14 <Sgeo> .... or not?
15:34:14 <Sgeo> http://www.thefreedictionary.com/alarum
15:34:28 <Sgeo> I never realized it actually could be related to alarms. Thought it was just a stage thing
15:34:43 <Sgeo> And that my use of "alarum" for "alarm" was therefore amusing.
15:34:50 <elliott> Taneb: it,s storm. help
15:35:05 <Taneb> elliott, get indoors
15:35:26 <elliott> im indors
15:35:26 <elliott> help
15:35:37 <Taneb> Do you have a roof?
15:36:32 <FreeFull> Sgeo: I've been recently learning S-Lang
15:36:38 <Taneb> I'll take that as a no
15:36:43 <Taneb> Get a roof, urgently
15:36:55 <elliott> Taneb: i have a roof
15:36:55 <elliott> help
15:37:02 <Deewiant> Close any open doors and windows
15:37:03 <Taneb> How about walls?
15:37:08 <elliott> done and done
15:37:13 <Taneb> Don't close your IRC window!
15:37:36 <elliott> im not
15:37:42 <Sgeo> FreeFull, uh, this thing? http://www.s-lang.org/
15:38:10 <Taneb> elliott, don't panic!
15:39:11 <FreeFull> Sgeo: Yes
15:39:27 <FreeFull> Some features are actually pretty neat
15:39:29 <Sgeo> It doesn't look very Lisp-like
15:39:46 <FreeFull> It's more C like
15:39:47 <Sgeo> But I didn't look that hard
15:39:54 <FreeFull> I'm just randomly saying stuff
15:39:58 <FreeFull> I'm not suggesting it to you
15:40:05 <Sgeo> I thought you were a Lispy person
15:40:16 <Sgeo> I don't hate Lisp, I hate the ecosystem.
15:41:02 <FreeFull> I actually mostly write software in C
15:41:10 <FreeFull> But randomly do stuff in other languages
15:42:24 <Sgeo> Also CL's lack of coroutines isn't nice
15:42:35 <Sgeo> *non-hacky coroutines
15:42:45 <FreeFull> One cool thing about s-lang is that if you have an array x, and do x++, all members of x will be incremented by one
15:42:57 <FreeFull> And you can do that sort of stuff with more complicated expressions too
15:43:08 <FreeFull> I don't particularly like Common Lisp myself
15:43:52 <FreeFull> I suggest Racket or Clojure if you want a lisp
15:44:23 <Sgeo> Racket -- empty ecosystem, Clojure -- JVM compromises
15:45:02 <FreeFull> In s-lang, you can do something like variable x = sin([0:255]*PI/128.0);
15:45:09 <Sgeo> Although, I think I was recently put off Racket by one measly bad experience when I couldn't find a sprintf-like that fit my needs built-in
15:45:16 <Sgeo> Didn't bother looking for libraries :/
15:45:21 <Sgeo> Instead, just used Python
15:45:57 <FreeFull> Which is equivalent of this in C: double x[256]; int i; for(i=0;i<256;i++) { x = sin(i*M_PI/128.0); }
15:46:57 <FreeFull> Racket is all about libraries and sublanguages
15:47:29 <FreeFull> Python does have good libraries
15:48:23 <elliott> x = map (\i -> sin (i*pi/128)) [0..255]
15:48:29 <elliott> or even
15:48:46 <elliott> x = map (sin . (*(pi/128))) [0..255]
15:48:50 <elliott> might be able to drop some parens there actually!
15:50:27 <FreeFull> elliott: Is this python?
15:50:48 <Sgeo> FreeFull, Haskell
15:51:26 <elliott> haskell
15:51:34 <FreeFull> On the other hand Common Lisp doesn't even have range functionality built in
15:51:37 <elliott> x = [sin (i*pi/128) | i <- [0..255]]
15:51:39 -!- ogrom has joined.
15:51:44 <FreeFull> And ends up with way too many parens
15:51:48 <elliott> cat-skinning ad infinitum
15:52:06 * Sgeo doesn't mind the parens, except for the resulting neccessity of using a good editor
15:52:19 <elliott> what an awful necessity
15:52:24 <Sgeo> Erm, hmm, I think Notepad++ is probably sufficient for that aspect
15:52:28 <FreeFull> Does haskell have a repl?
15:52:42 <elliott> FreeFull: there are haskell implementations with repls, yes
15:52:42 <Sgeo> FreeFull, yes, sort of, but until recently it wasn't really full
15:52:47 <elliott> most importantly GHC, the only one anyone uses
15:53:02 <elliott> Sgeo: that's an inaccurate statement, really -- it is a property of implementations, not the language
15:53:26 <elliott> ghci has at least very well supported the kind of slime-style editor+repl hybrid style popular in lisp communities
15:53:27 <FreeFull> s-lang doesn't really have much functional programming stuff
15:53:31 <elliott> for roughly ever
15:55:13 <fizzie> The thing about VT-x is that you can't really tell from the processor brand, since it's a market segmentation tool.
15:55:17 <fizzie> Some Atoms do VT-x too.
15:56:46 <FreeFull> Checking for vt-x is easy software-wise, but you can only do that once you have the hardware
15:57:29 <fizzie> Well, checking it beforehand is "easy" since you can just look at http://ark.intel.com/Products/VirtualizationTechnology
15:57:35 <Vorpal> you could look up the model number of the CPU too
15:57:40 <Vorpal> before you order the CPU
15:57:48 <fizzie> It's just that you can't tell offhand, if you don't have that list memorized.
15:58:39 <Vorpal> what about AMD, do they do both with and without their virtualisation technology?
15:59:01 <fizzie> That I don't know. Probably, though.
16:07:46 -!- asiekierka has quit (Quit: Connection reset by PO).
16:10:35 * Sgeo wants to destroy all single-dispatch OO systems
16:10:47 <Sgeo> ...ok, so maybe I'm not actually that hate-filled
16:10:56 <Sgeo> But multiple-dispatch makes more sense to me
16:19:26 -!- calamari has joined.
16:22:08 -!- zzo38 has joined.
16:36:37 <kallisti> Sgeo: you are sipping some delicious Tcl kool-aid aren't you?
16:36:58 -!- davidwerecat has quit (Ping timeout: 246 seconds).
16:37:55 <Sgeo> Not sure what preferring multiple-dispatch has to do with Tcl, especially since the various OO systems I've seen for Tcl including TclOO are single-dispatch, although I imagine Clojure-style multiple-dispatch is very easy to do in a hacky way
16:39:14 <kallisti> oh I thought tcloo was multi-dispatch
16:39:23 <fizzie> Vorpal: Continuing on my party report series: "real wild" (i.e. anything that can display realtime graphics; YouScope was here, etc.) had 7 entries, of which 5 were just regular mobile things (iOS, Windows Phone, 3*Android), 1 was a WebGL/browser thing, and the final one was the only interesting one. (It was an otherwise unmodified Apple Lisa except with some custom hardware for sound and DVI ...
16:39:29 <fizzie> ... output, by some folks from http://www.club.cc.cmu.edu/.)
16:40:11 <Vorpal> fizzie, youscope was from assembly?
16:40:11 <Vorpal> nice
16:40:16 <Sgeo> kallisti, I wish
16:40:22 <Vorpal> are you at assembly right now?
16:40:34 <fizzie> Yeah, 2007.
16:40:36 <fizzie> And yes.
16:41:14 <Vorpal> fizzie, this whole weekend=
16:41:18 <Vorpal> s/=/?/
16:41:26 <kallisti> IIUC, multiple dispatch is a lot like typeclasses.
16:41:29 <fizzie> I've been sleeping at home like an old man.
16:41:36 <kallisti> specifically multi-parameter type classes
16:41:42 <fizzie> And probably won't bother coming back on Sunday since nothing interesting is happening.
16:41:44 <[]{}\|-_`^> fizzie: do you have a computer place?
16:41:50 <fizzie> But it's Thu-Sun technically.
16:42:17 <fizzie> []{}\|-_`^: Yeah, O10/5 or something.
16:42:26 <[]{}\|-_`^> O?
16:42:37 <fizzie> It's the oldskool room thing thing.
16:42:43 <[]{}\|-_`^> oh
16:42:54 <[]{}\|-_`^> I am at B16/8
16:46:36 <[]{}\|-_`^> Vorpal: are you at assembly?
16:46:37 <fizzie> The hall is kind of much more Assemblyish than this place. For one thing, it's (for the most part) not dark here at all.
16:46:50 <fizzie> But they hold the ArtTech seminars right next, so I can just sit here and listen to them.
16:49:25 <[]{}\|-_`^> fizzie: is oldskool room thing accesible by anyone?
16:49:42 <Sgeo> "Side note: I considered multiple dispatch for TclOO, but instead went
16:49:42 <Sgeo> for [proc]-like 'args' support as being more Tcl-ish. Can't really have
16:49:42 <Sgeo> both at the same time without the whole complicated business of a type
16:49:42 <Sgeo> system and well again, not Tcl-ish enough."
16:51:45 <fizzie> []{}\|-_`^: At least in practice it is. Probably in theory too.
16:52:03 <fizzie> Some earlier years there's been "vip tickets only" signs, but this year I haven't seen those.
16:52:14 <fizzie> Considering that the seminars are here, that probably wouldn't really work anyway.
16:52:38 <Vorpal> []{}\|-_`^, who are you?
16:52:40 <Vorpal> and no
16:52:51 <Vorpal> oh nortti
16:53:04 <Vorpal> why would I be at assembly, isn't that a Finnish thing
16:53:14 <fizzie> Vorpal: There are quite a few visitors from abroad.
16:53:23 <Vorpal> oh okay
16:53:24 <fizzie> We had some Swedes right next to our places last year.
16:53:38 <fizzie> Though I would guesstimate at least 90% are Finns, still.
16:54:22 <fizzie> Quite a large percentage of not really demoscene people too; they have a gaming-specialized area, and gaming tournaments and so on, too.
16:54:32 <fizzie> I'd be more indignant but I'm currently installing that Death Rally game.
16:54:33 <Vorpal> right
16:54:49 <Vorpal> fizzie, I just watched a video of it. Is that a coincidence?
16:54:52 * kallisti has been working on a hard sci-fi setting for tabletop games.
16:54:56 <Vorpal> the guy said it had no sense of speed
16:55:00 <Vorpal> and very short races
16:55:03 <kallisti> essentially depicting the early early days of human space colonization, within our own solar system
16:55:08 <Vorpal> or is this the original Death Rally?
16:55:16 <fizzie> Vorpal: This is the new one.
16:55:32 <fizzie> Vorpal: Remedy people were giving out Steam codes for free.
16:55:37 <Vorpal> ah
16:55:39 <fizzie> I remember playing the original some, though.
16:55:53 <Vorpal> anyway, it doesn't seem very good
16:56:07 <[]{}\|-_`^> I had very good luck with computers this year. I managed to render my computer unbootable in 2 hours and I got it working again today when I installed mintppc on my mac
16:56:49 <fizzie> Vorpal: Haven't installed it yet. But that's very possible. (Was the video about the PC port? I gather they have mobile versions too.)
16:57:00 <[]{}\|-_`^> so I was without computer whole friday and most of thursday
16:57:13 <Vorpal> I need to unify my music library, every computer and/or device has a slightly different set of music currently, and none is a superset of all the other ones
16:57:20 <calamari> []{}\|-_`^: withdrawals?
16:57:30 <Vorpal> also I believe some computers have the same stuff in flac that other ones have in ogg
16:57:33 <[]{}\|-_`^> calamari: what?
16:57:41 <fizzie> []{}\|-_`^: mooz had a completely broken system for pretty much the entire duration of... Assembly 1999 or so, I think.
16:57:44 -!- azaq23 has joined.
16:57:59 <fizzie> []{}\|-_`^: He spent the whole weekend playing some DOS game from a floppy, if I recall correctly.
16:58:03 <fizzie> Paratroopers or something.
16:58:07 <[]{}\|-_`^> :P
16:58:14 <calamari> []{}\|-_`^: did you experience computer withdrawal?
16:58:23 <Vorpal> fizzie, yes the video was about the port
16:58:27 <[]{}\|-_`^> calamari: no
16:58:35 <Vorpal> fizzie, totalbiscuit, if you know who that is
16:58:55 <fizzie> Vorpal: I think I've heard the name and watched a thing once.
16:59:13 <fizzie> Vorpal: I've been watching ineiros play it for a few minutes now, and it doesn't really seem bad, just mediocre.
16:59:18 <fizzie> But who knows.
16:59:20 <Vorpal> anyway, apparently it was a reasonable port (rebindable keys, resolution options) but it didn't look all that much better than the iOS version, and the gameplay was very much iOS-oriented
16:59:46 <Vorpal> (short laps, like slightly over 1 minute for a 3 lap race, and no sense of speed when driving)
17:00:04 <fizzie> The old one felt quite terribly fast at times.
17:00:10 <fizzie> I guess I could try it out now, though.
17:00:14 <Vorpal> sure, why not
17:00:21 <Vorpal> ineiros, hi there!
17:00:29 <Vorpal> fizzie, well, say hi to him from me
17:00:46 <fizzie> You got a "hi" back.
17:00:49 <Vorpal> nice
17:02:04 <Vorpal> why does the "recommended" bar on youtube have like 10 happy wheel videos... I don't even watch those. I watched like one ages ago and decided it was crap
17:02:19 <elliott> fizzie: Did you refer to him as "that bc x vah guy"?
17:03:21 <Vorpal> elliott, hey you got it wrong :P
17:03:25 <[]{}\|-_`^> Vorpal: I was once sent link to my little pony video. youtube recommended me pony videos for 3 monts
17:03:34 <Vorpal> hah
17:03:47 <Vorpal> also why that terrible nick?
17:04:11 <[]{}\|-_`^> it should be on the logs
17:05:41 <Vorpal> oh well, too much work
17:07:58 <[]{}\|-_`^> 20:28 < nortti> I think that []{}\|-_ are legal but otherwise it must be alphanumeric
17:08:01 <[]{}\|-_`^> 20:29 -!- Taneb is now known as [-]
17:08:04 <[]{}\|-_`^> 20:29 -!- [-] is now known as Taneb
17:08:06 <[]{}\|-_`^> 20:29 < fizzie> nortti: ` and ^ too.
17:08:32 <[]{}\|-_`^> 20:30 -!- You're now known as []{}\|-_`^
17:08:38 <Taneb> I can't remember if I registered [-]. It may have already been done?
17:08:39 <Vorpal> right
17:08:45 <Vorpal> I own _[] and []_ iirc
17:08:51 <Vorpal> don't remember why
17:09:04 <[]{}\|-_`^> Taneb: 20:29 < Taneb> [-] is registered
17:09:09 <Vorpal> that too
17:09:12 <Taneb> Okay, that explains it
17:09:13 <Vorpal> don't own that one
17:19:43 -!- elliott has quit (Quit: See you soon, hi!).
17:31:06 <Gregor> “Pronunciätion” yes/no?
17:33:33 -!- david_werecat has joined.
17:33:50 <fizzie> []{}\|-_`^: Which side of the hall is B16?
17:34:13 <fizzie> I may have accidentally landed near it to watch this short film thing.
17:35:12 <fizzie> Well, apparently I'm watching something else altogether, but still.
17:36:43 <fizzie> Okay, no, I think this is the opposite side.
17:37:36 <FreeFull> 18:37:24 [Freenode] -NickServ(NickServ@services.)- Information on {-} (account sjansen):
17:37:51 <FreeFull> Note that nickserv treats [-] and {-} as the same nick
17:38:31 <Vorpal> well of course
17:38:39 <Vorpal> it follows the old format
17:38:57 <fizzie> Vorpal: It's not "of course", I've seen CASEMAPPING=ASCII around.
17:39:22 -!- impomatic has joined.
17:39:24 * impomatic is implementing the Mouse programming language :-) http://en.wikipedia.org/wiki/Mouse_(programming_language)
17:39:29 <fizzie> Maybe even with freenode's previous ircd.
17:39:47 <Vorpal> fizzie, well yes
17:40:13 <fizzie> Man, Rovio is really wasting my time here.
17:40:26 <Vorpal> fizzie, oh? Angry Birds?
17:40:28 <Vorpal> or what
17:40:33 <fizzie> There's some Angry Birds Space insta-tournament going on.
17:40:44 <Vorpal> Angry Birds tournament?
17:40:44 <FreeFull> impomatic: Reminds me a bit of IBNIZ, but more useful for general use
17:40:47 <Vorpal> how does that work?
17:40:49 <fizzie> And then they throw Angry Birds candy from the stage.
17:40:49 <Vorpal> high scores?
17:40:55 <fizzie> Scores, yes.
17:40:56 <Vorpal> ... seriously?
17:41:10 <fizzie> They throw hundreds of bags of candy.
17:41:13 <Vorpal> there is special candy?
17:41:14 * impomatic looks up IBNIZ
17:41:17 <Vorpal> what
17:41:18 <fizzie> Sure.
17:41:22 <Vorpal> what does it look like
17:41:25 <fizzie> Fazer makes it.
17:41:26 <Vorpal> and what does it taste like
17:41:27 <Vorpal> oh okay
17:41:30 <fizzie> Like birds and pigs.
17:41:31 <Vorpal> so not too terrible then?
17:41:34 <impomatic> Does anyone use Joy?
17:41:52 <fizzie> It's very sort of generic, but not bad.
17:41:57 <Vorpal> ah
17:42:18 <fizzie> Also melts if it's too warm.
17:42:24 <impomatic> There doesn't seem to be a channel for Joy here :-(
17:42:37 <Gregor> There is no joy here.
17:42:39 <Gregor> This is Freenode.
17:43:01 <Vorpal> impomatic, is that a language?
17:43:10 <fizzie> Anyway, short film compo was supposed to start at 20:30 (it's 20:43 approx now) but... Rovio.
17:43:30 <fizzie> They're a main sponsor, I guess they can do what they want.
17:43:34 <Sgeo> Name a Stargate franchise episode for me to watch
17:43:35 <Sgeo> I'm bored
17:43:39 <Vorpal> fizzie, so the thing is delayed?
17:43:57 <fizzie> Yes. But that's very typical.
17:44:02 <Vorpal> ah
17:44:06 <impomatic> Vorpal: yes, looks Forthlike http://en.wikipedia.org/wiki/Joy_(programming_language)
17:44:16 <Vorpal> damn url with parens
17:44:22 <Vorpal> can't click them properly in this irc client
17:44:27 <Vorpal> please url encode them
17:44:30 <Vorpal> (oh well)
17:44:53 <Vorpal> hey firefox url encodes that when I copies it: https://en.wikipedia.org/wiki/Joy_%28programming_language%29
17:45:23 <Vorpal> impomatic, a purely functional, but stack based language?
17:45:27 <Vorpal> how does that even work
17:45:50 -!- asiekierka has joined.
17:46:14 <Vorpal> impomatic, I don't get how a stack based language can be pure
17:46:24 <Vorpal> stack operations look like a side effect to me
17:53:36 <zzo38> I have once made up something in Haskell that the type indicate the stack and the stack operations can be in (->) category so it is pure; although you can also have them in (Kleisli IO) category too and so on
17:54:21 <zzo38> So yes I think it is possible in the right way
17:54:34 <zzo38> (Not specific to Haskell)
17:56:16 -!- ogrom has quit (Quit: Left).
18:04:12 <zzo38> Quit: Right
18:08:47 -!- Taneb has quit (Ping timeout: 250 seconds).
18:36:18 -!- Taneb has joined.
18:36:49 <Taneb> Hello
18:40:30 -!- asiekierka has quit (Remote host closed the connection).
18:57:20 -!- oerjan has joined.
18:59:57 <oerjan> Vorpal: Underload is sort of an esoteric variant of Joy
19:00:44 <oerjan> it is easy to think of it as pure algebra of programs instead of as acting imperatively on a stack
19:00:52 <Vorpal> oerjan, hm okay
19:01:12 <oerjan> e.g. (x)(y)~ = (y)(x)
19:01:18 <Vorpal> oerjan, but then that is just two ways of looking at the same program?
19:01:25 <oerjan> of course
19:01:46 <Vorpal> then the question is, which one is more accurate, if indeed one is
19:01:54 <oerjan> but i recall ais523 saying the first underload implementation was based on algebra, not stacks
19:02:12 <Vorpal> hm okay
19:02:46 <Vorpal> then the question becomes if you can transform the program into a purely functional one I guess
19:03:00 <oerjan> it's just that when you have a single global state (the stack), it is easy to just thread it through the program, like with haskell's State monad
19:03:42 <Vorpal> really, as long as you don't do IO anything can be rewritten into a form which is pure
19:03:58 <Vorpal> well, or have global state
19:04:03 <Sgeo> Hmm, maybe I should try to get into Perl
19:04:06 <Vorpal> hm...
19:04:16 <Vorpal> well you can work around that
19:04:40 <oerjan> yeah. and even if you do IO you can treat the IO system as an algebra you are constructing terms in
19:04:50 <Vorpal> oerjan, by this logic, any C code that performs no IO is basically a transformation of a pure program
19:05:00 <Vorpal> though that statement sounds somewhat insane
19:05:13 <Sgeo> CPAN is tempting
19:05:34 <Vorpal> Sgeo, no need, there is CTAN for TeX?
19:05:42 <Vorpal> (okay, not the same, but still)
19:07:26 <oerjan> any formal semantics of a programming language is pure, being math.
19:10:34 <coppro> hmm
19:10:37 <coppro> is self-modifying haskell code bad
19:11:56 <Taneb> Is self-modifying haskell code possible?
19:12:41 <zzo38> Is there something like the tensor category where: swap . (f *** g) = g *** f seem also similar to having a commutative applicative isn't it? And is that related to what you have written about above? (x)(y)~ = (y)(x)
19:13:01 <zzo38> Taneb: I wouldn't think so but maybe there is if someone know what is the way.
19:13:02 <Vorpal> I presume it is possible in theory using unsafeSomething, probably not easy though
19:15:00 <Vorpal> could you get a pointer to the code and then unsafeCoerce it? Then given that the code isn't RO (can be arranged for with some linker options iirc, or if nothing else, a custom linker script), sure you could replace bits of machine code.
19:15:30 <Vorpal> don't know enough of the low level GHC internals to know if it is possible
19:15:43 <Sgeo> How about a loop that at the end loops by performing the code in some IORef
19:15:54 <Sgeo> Modify the contents of the IORef and you've change the actively running code.
19:18:43 <zzo38> Then perhaps you can use that to make a self-modifying code in Haskell but it would be difficult to self-modify the Haskell codes in that way. Also, it would be specific to the computer if you did that.
19:18:44 <oerjan> i suspect the problem with modifying anything not explicitly a reference type of some kind is that the haskell compiler has every right to assume it hasn't been modified, so you cannot assume the new version will be consistently perpetrated
19:18:48 <Taneb> Something in the GHC hidden modules?
19:19:00 <Taneb> Or Template Haskell
19:20:48 <oerjan> also, self modification is how laziness is implemented under the hood, in case someone didn't know that
19:21:12 <zzo38> Template Haskell is only for compile time, I do not think it can modify stuff at runtime
19:23:10 <oerjan> also the erlang method of just calling the new version tail recursively is much more sane in haskell too.
19:24:36 <oerjan> well i guess that's for self-modifying threads.
19:27:44 <Vorpal> <oerjan> i suspect the problem with modifying anything not explicitly a reference type of some kind is that the haskell compiler has every right to assume it hasn't been modified, so you cannot assume the new version will be consistently perpetrated <-- of course
19:28:25 <Vorpal> <oerjan> also, self modification is how laziness is implemented under the hood, in case someone didn't know that <-- I thought it used thunks?
19:28:35 -!- calamari has left ("Leaving").
19:28:41 <Vorpal> <oerjan> also the erlang method of just calling the new version tail recursively is much more sane in haskell too. <-- well yes, but less fun
19:28:54 <oerjan> yes, but the thunks are replaced with the final result afterwards
19:28:59 <Vorpal> with self modification in code I think of actually writing out new bytecode or machine code to the memory
19:29:07 <Vorpal> oerjan, ah
19:30:56 <oerjan> btw i think the haskell ffi does that kind of writing out in order to export haskell closures as C functions
19:31:17 <Vorpal> heh
19:31:34 <Vorpal> oerjan, can't that sort of stuff be determined at compile time?
19:31:38 <oerjan> because C has no way of creating a new function pointer referring to dynamic data
19:31:59 <oerjan> Vorpal: not if it's a runtime constructed closure...
19:32:22 <zzo38> In C you could make void* and cast to the other pointer but it won't necessarily work or do what is intended it depend on the computer you are implemented it on
19:32:24 <Vorpal> wow the haskell-platform is 422 MB according to aptitude
19:32:50 <Vorpal> well, at least that is how much disk space I will end up using by the new stuff I need to install
19:33:15 <Vorpal> yeah ghc stuff is like 95% of that
19:33:46 <oerjan> basically in C you'd usually implement a closure as something like a struct containing the closure data + a function pointer to a fixed function, but the haskell ffi specification says that an actual C function pointer must be constructed
19:34:10 <Vorpal> hm true
19:34:11 <Taneb> unsafeCoerce :: Vector Word32 -> IO ()
19:35:06 <Vorpal> oerjan, no I would use pikhq's crazy gcc specific thing :P
19:35:17 <Vorpal> which is awesome btw
19:35:36 <Vorpal> now I only want continuations in C
19:35:40 <oerjan> Vorpal: ghc is moving away from gcc to llvm anyway
19:35:44 <Vorpal> that isn't just setjmp/longjmp
19:35:50 <Vorpal> because those are so restricted
19:36:04 <Vorpal> oerjan, I thought it was moving away from it's own native generator to llvm rather?
19:36:09 <Vorpal> and had already dropped gcc
19:36:42 <oerjan> there was a post yesterday in reddit that the new ghc code generator is almost ready to be switched in, although that's for an earlier stage of the pipeline than the llvm/gcc/native decision
19:37:49 <oerjan> Vorpal: well yeah, although gcc is still available for temporary porting. also i vaguely think the ghc runtime is still ghc?
19:37:52 <oerjan> er
19:37:55 <oerjan> *is still gcc?
19:38:03 -!- KingOfKarlsruhe has joined.
19:38:20 <Vorpal> that is the unregistered one iirc?
19:38:23 <oerjan> yes
19:38:30 <Vorpal> which is pure C even?
19:38:32 <Vorpal> no?
19:38:37 <oerjan> yes
19:38:43 <Vorpal> right
19:38:49 <Vorpal> anyway, good night
19:39:16 <oerjan> good night
19:41:13 <Sgeo> Hmm
19:41:26 <Sgeo> SAFECode makes me less.... angry at C and C++
19:41:35 <oerjan> sounds unsafe
19:48:32 <zzo38> Taneb: Sure you can do that but how are you going to know what it is going to do? It might crash.
19:48:45 <Taneb> I'm just throwing ideas about
19:49:14 <Taneb> If you know how Haskell works in the deep, and deepseq the vector, it might be doable
19:51:30 -!- prx has joined.
19:51:34 <prx> Hi
19:51:43 <oerjan> `welcome prx
19:51:46 <HackEgo> prx: 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:52:21 -!- prx has left.
19:56:36 <FireFly> that was a short visit
19:57:00 <oerjan> we shall assume he's continuing his quest at dal.net
19:59:10 <zzo38> People argue about why scorpions are good? Someone write a report about why scorpions are good and then some people argue about it. Including such things as music, statistics, meaning of words "pet" (both the noun and verb), and astrological signs.
20:00:07 <oerjan> a stinging report, no doubt
20:00:43 <zzo38> (My conclusion is that one of the meanings doesn't count becuase it is intransitive.)
20:01:41 <oerjan> never do a tango with a scorpion
20:02:02 <zzo38> Here it is (my messages are labeled "Not a pipe", which is short for "The Free Land of Not a pipe"): http://forum.nationstates.net/viewtopic.php?f=20&t=193916
20:02:09 <zzo38> oerjan: You are probably correct.
20:02:36 <zzo38> They even argue about pictures
20:03:58 -!- Vorpal has quit (Ping timeout: 248 seconds).
20:16:14 <FreeFull> impomatic: What do you think about IBNIZ?
20:16:52 -!- quintopia has quit (Ping timeout: 252 seconds).
20:17:31 -!- quintopia has joined.
20:21:17 -!- epicmonkey has joined.
20:22:02 <zzo38> Do you know the switch of "magic" and "more magic" that has only one wire but still causes the computer to crash if the switch is moved?
20:24:37 <oerjan> i have read this ancient lore, yes
20:24:55 <zzo38> Do you know how the switch works?
20:26:15 <oerjan> no. i think there have been suggestions, though.
20:26:50 <Sgeo> It bothers me that so many Tcl extensions are in C
20:26:55 <Sgeo> Wish they were in Tcl.
20:27:17 <Phantom_Hoover> All the tellings I've seen have used the explanation that the computer's ground and its case had a potential difference large enough to restart it when connected.
20:27:20 <Sgeo> C makes it seem so... impure, like the language itself doesn't quite have the facilies to extend it within itself.
20:27:42 <Sgeo> Maybe it's just an efficiency thing?
20:37:42 <FreeFull> zzo38: It has only one wire but the other terminal is connected to a grounded metal rail
20:38:39 <augur> anyone seen ski?
20:42:05 <zzo38> FreeFull: I think you are correct.
20:45:16 <zzo38> Sometimes I want to do such things as self-modifying codes and and so on but is difficult because I also want to be portable
20:45:51 <FreeFull> Just have a VM
20:47:10 -!- MoALTz has quit (Quit: Leaving).
20:53:06 <impomatic> I'm just playing with this. http://ibniz.asiekierka.pl/ibniz.html :-)
20:55:57 <Sgeo> It was making weird sounds even with the audio checkbox disbaled
20:56:02 <Sgeo> disabed
20:56:04 <Sgeo> disabled
20:57:18 <impomatic> $G 1% N: 2 F: ( N. F. \ 0 > ^ F. 1 + F: ) F. N. < [ F. ! "" #G, N. F. /;] @ ~ Prime Factors in Mouse...
20:59:15 <FreeFull> Asiekierka is a pretty cool guy
20:59:31 <FreeFull> He comes around here
20:59:48 <FreeFull> impomatic: How fast is it?
21:01:45 <impomatic> FreeFull: I haven't implemented an interpreter yet. There are a online in Pascal, C and Z80 asm.
21:08:41 -!- itidus21 has left ("Leaving").
21:15:58 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
21:23:17 -!- Taneb has quit (Ping timeout: 246 seconds).
21:45:13 <zzo38> If you have a .NSF playing library, I would suggest to implement the functions: play(byte accumulator) and poke(int address, byte value)
22:03:06 -!- Taneb has joined.
22:04:32 -!- Taneb has quit (Client Quit).
22:04:52 -!- Taneb has joined.
22:05:43 <Taneb> Hello!
22:05:52 <Sgeo> Hi
22:14:22 -!- epicmonkey has quit (Ping timeout: 246 seconds).
22:21:06 <kmc> butts
22:26:27 <oerjan> iffs
22:27:45 <zzo38> something else
22:34:16 <kmc> cheap beer in 2L plastic bottles
22:34:18 <kmc> what a country
22:36:21 <shachaf> kmc: Looks like the next Stripe CTF thing might be on Aug 22.
22:36:39 <fizzie> Someone told an anecdote about being in Germany, asking for a "big beer" expecting 0.5l (the standard "big" in Finland) but getting a full litre.
22:36:52 <kmc> shachaf: cool
22:36:55 <kmc> coolchaf
22:37:30 <shachaf> koolgan mcoollister
22:47:52 -!- azaq23 has quit (Quit: Leaving.).
22:53:54 <kmc> i will be back in the USSA at that time
22:53:56 <kmc> barely
22:54:09 <Taneb> United Soviet Socialist America?
22:54:19 <shachaf> СССА
22:56:01 -!- Yonkie has quit (Ping timeout: 246 seconds).
22:56:27 -!- Taneb has quit (Quit: Leaving).
23:02:10 -!- Yonkie has joined.
23:29:17 -!- Elive_user62_en has joined.
23:32:42 -!- Elive_user62_en has left ("I ♥ Elive").
23:42:21 -!- Yonkie has quit (Ping timeout: 272 seconds).
23:46:50 -!- Yonkie has joined.
23:57:30 <zzo38> What is "cookness-diamond.volia.net"? I remember they connected to my computer once before, and I don't know what it is.
23:57:56 <zzo38> (The only thing I could find was an FTP service which did not allow anonymous login.)
23:59:32 <oklopol> so did someone finish clop?
2012-08-05
00:03:53 -!- nooga has quit (Ping timeout: 272 seconds).
00:21:25 <augur> oklopol! :D
00:22:16 <Phantom_Hoover> I watched a video of the ending!
00:22:24 <Phantom_Hoover> The virgin turns out to be the guy from the start.
00:35:08 * Sgeo is watching Red vs. Blue
00:35:44 <ion> sgeo: Both Chimays are awesome.
00:37:27 <Sgeo> Uh
00:37:31 <Sgeo> I'm still in season 1
00:49:09 <zzo38> Does LCD monitor sometimes wrong phase even though it was correct yesterday?
00:54:57 <ion> Switch to a digital video interface.
00:54:59 <oklopol> it seems too hard for me to solve manually in reasonable time, at least if i insist on "realistic" running, so i wanted to make a bot for it, but apparently there's no easy way to send keydowns and keyups to the active window so ble.
00:56:05 <Phantom_Hoover> oklopol, what?
00:56:21 <oklopol> when it's me vs IO/API stuff, "not easy" means it's not "import keystuff; keystuff.sendkeydown(key)".
00:56:28 <oklopol> what what?
00:56:55 <Phantom_Hoover> You seemed to say that without context.
00:57:10 <oklopol> oh sorry context was clop
00:57:22 <Phantom_Hoover> ah
00:57:35 <oklopol> see i went to the shoppe between my messages, so no time passed.
00:57:49 <Phantom_Hoover> How would you do it with a bot, make it mash hjk over and over?
00:58:03 <Phantom_Hoover> (Leaving out l makes your back leg act as a stabiliser.)
00:58:26 <oklopol> i'm not sure what i'll do yet, but i certainly won't do anything myself, i will automatize everything and just let it play.
00:59:22 <oklopol> i have ideas but the most sensible solutions would require me to parse the at least the rotation, velocity and rotational velocity of the horse, which sounds tedious.
00:59:57 <oklopol> so i'll probably just have it hill climb the last five seconds of best solutions known sofar and measure the speed at which the horse is moving.
01:00:16 <oklopol> to get a utility function
01:01:01 <Phantom_Hoover> You could decompile the Flash, lay it out on a slab and stick electrodes into it, but that's... very tedious.
01:01:32 <oklopol> looking at the actual data moving around inside the flash thing gets way too IO for me.
01:01:42 <oklopol> i just parse everything from the window atm
01:03:07 <oklopol> where everything = where the horse currently is on the level
01:07:21 <oklopol> luckily there's a little horsie at the bottom of the window, although it's still pretty annoying to do due to the tree.
01:09:57 <zzo38> What is the picture on the list of ideas for?
01:13:57 <oerjan> zzo38: Tektur's edit has the summary "picture of a bit esoteric lamp symbolizing ideas"
01:14:14 <zzo38> OK.
01:14:23 <zzo38> Does any TV set have 16:15 aspect ratio mode?
01:19:40 <zzo38> ion: Digital video interface, well, that doesn't answer my question though.
01:22:02 <zzo38> By discussion with some people I have come up with another kind of digital video interface consisting of eleven pairs and all data in one direction only. It also uses nine bits per channel (27 bits per pixel) due to just how it turns out. The pairs are labeled: RED0, RED1, RED2, GREEN0, GREEN1, GREEN2, BLUE0, BLUE1, BLUE2, CLOCK, SYNC.
01:22:29 <zzo38> The resolution is known by the number of CLOCK signals between two SYNC signals; there are three clocks per pixel and one sync per frame.
01:24:17 <zzo38> (Maybe add a twelvth pair labeled AUDIO which has a mono audio signal. Now it can use 24 pins of DB-25.)
01:57:20 <shachaf> kmc: This person is working on a program called "kmc".
02:01:23 <oerjan> k modular compiler
02:13:54 <quintopia> kickass monkey crawler
02:19:59 <zzo38> What person?
02:38:52 <zzo38> Is it OK? for(x=0;x<16;x+=2) { y=tiles[addr].data[x]; tiles[addr].data[x]=tiles[addr].data[x^7]; tiles[addr].data[x^7]=y; }
02:39:18 <quintopia> looks right
02:56:28 -!- david_werecat has quit (Ping timeout: 246 seconds).
03:10:47 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:16:02 -!- oerjan has quit (Quit: Good night).
03:26:43 -!- monqy has quit (Quit: hello).
03:55:17 <zzo38> What is algorithm for rotating a 8x8 icon of one bit per pixel?
04:09:47 <quintopia> by 90 degrees?
04:10:49 <quintopia> i wrote code that did that with colored bitmaps stored as 1-dim arrays
04:13:04 <quintopia> it was in java (because processing) but you can translate:
04:13:37 <quintopia> public void rotate(PImage in, int times) { int l=in.pixels.length; in.loadPixels(); int h=in.height; int w=in.width; for (int j=0;j<times;j++) { color[] newbuff = new color[l]; for (int i=0;i<l;i++) { newbuff[i]=in.pixels[i%w*h+h-1-i/w]; } in.pixels = newbuff; h=w^h; w=w^h; h=w^h; } in.width=w; in.height=h; in.updatePixels(); }
04:14:02 <quintopia> in.pixels is the original image array, and newbuff is the new image's array
04:14:44 <quintopia> times is an integer that tells it to rotate 90*times degrees
04:14:56 <quintopia> newbuff[i]=in.pixels[i%w*h+h-1-i/w]; is the real work
04:24:53 <zzo38> But in this case it is one bit per pixel, so the array is length 8 (actually 16 because there is two planes, but we can ignore that).
04:35:00 <soundnfury> hmm. How would you rotate an image through 90 degrees in-place? Supposing that all you can do is pixel swaps.
04:35:09 <soundnfury> I'll allow you to assume a fixed size of 8x8 if that helps
04:35:36 * soundnfury thinks he has the answer, but it might not be optimal
04:37:20 <FreeFull> Do you want to rotate it by 90 degrees in a certain direction or by 180 degrees?
04:37:51 <soundnfury> 90 in a certain direction
04:37:58 <soundnfury> 180 is too trivial ;)
04:38:16 <FreeFull> It's actually pretty easy to do
04:38:42 <soundnfury> Fairly easy, yes
04:38:50 <FreeFull> Let's say char x[8]; is the input picture
04:38:56 -!- ogrom has joined.
04:38:57 <FreeFull> and char y[8]; is the output
04:39:08 <soundnfury> you using a bitmask of 1-bit pixels there?
04:39:34 <soundnfury> there may be an efficient trick you can pull in that case, Iunno
04:39:47 <soundnfury> no, no separate output. *in-place*
04:40:48 <quintopia> soundnfury: do the same routine i did above, but with three xors instead of the assignment
04:41:01 <FreeFull> Well, if you do it in place, you end up overwriting the data you want to read
04:41:32 <quintopia> (same as i did for switching the height and width)
04:42:10 <soundnfury> yeah but supposing you have a single "swap pixel (x1,y1) with pixel (x2,y2)" operation
04:42:32 <soundnfury> what pattern of such operations do you use to do the rotate in the fewest ops?
04:42:33 <quintopia> oh right
04:42:47 <FreeFull> Hmm, maybe you could do 90° rotation with two flips
04:42:57 <FreeFull> I thought about it ages ago but I forgot
04:43:02 <quintopia> yeah i think freefull is right
04:43:16 <quintopia> it's like that one nametag swapping puzzle
04:43:21 <FreeFull> You can do any rotation using two flips
04:43:24 <quintopia> should be able to do it in two passes
04:43:28 <soundnfury> FreeFull: you could, but that's inefficient
04:43:33 <FreeFull> But I forget what the flips would be for 90°
04:43:42 <FreeFull> soundnfury: Sure, but it's a starting point
04:43:44 <soundnfury> there's a better way
04:43:55 <soundnfury> don't try to do it with linear algebra, you don't have to
04:44:07 <soundnfury> think in terms of group theory / permutations
04:44:15 <soundnfury> / actions
04:44:24 <quintopia> soundnfury: there's a better way than the two passes of swaps?
04:44:39 <soundnfury> yup
04:44:51 <quintopia> well, there's the one-pass version i guess
04:45:09 <quintopia> just swap them all into the first cell and then back out to where that next one goes
04:45:20 <soundnfury> a quarter of the pixels only get touched once with my method
04:45:40 <FreeFull> What do you mean only a quarter of the pixels?
04:45:59 <soundnfury> well, two flips takes w*h swaps, right?
04:46:03 <FreeFull> If you have a checkerboard image you have to touch all the pixels to rotate it 90°
04:46:18 <soundnfury> quintopia's method takes w*h-1 swaps
04:46:32 <soundnfury> my method takes ¾w*h swaps
04:46:33 <FreeFull> Once you have two flips
04:47:05 <soundnfury> FreeFull: read again. not "only a quarter get touched once", but "a quarter only get touched one".
04:47:09 <soundnfury> the rest get touched twice
04:47:22 <soundnfury> in the two flips method, they all get touched twice
04:47:28 <FreeFull> soundnfury: Shouldn't ½w*h be possible
04:47:29 <quintopia> i dunno
04:47:35 <quintopia> i think freefull is right
04:47:41 <quintopia> i think my original idea does it like that
04:47:47 <FreeFull> quintopia: It doesn't
04:47:56 <quintopia> i didn't explain it
04:48:04 <quintopia> i rejected it too fast
04:48:24 <soundnfury> FreeFull: I don't think ½w*h is possible
04:48:50 <soundnfury> I should make clear that you have to find a general method that works for any image
04:48:54 <quintopia> right
04:48:55 <zzo38> Actually char x[8] is like what we have not the swap pixel operation.
04:48:57 <quintopia> rectangular
04:49:02 <FreeFull> I have a ½w*h+1 method
04:49:09 <soundnfury> quintopia: no, square
04:49:11 <zzo38> I already have mirror, flip, draw rectangle, and format conversion.
04:49:16 <soundnfury> I mean, with a totally black image you need no swaps
04:49:26 <quintopia> soundnfury: then why say w*h
04:49:31 <soundnfury> zzo38: This isn't a practical problem to do with what you're doing, it's just a puzzle
04:49:40 <zzo38> soundnfury: OK
04:49:42 <quintopia> ½L
04:49:42 <soundnfury> quintopia: just because
04:49:48 <FreeFull> You can swap pixels in a circular pattern
04:49:54 <FreeFull> Or rather square pattern
04:49:56 <soundnfury> FreeFull: yes...
04:49:58 <FreeFull> But if you just go clockwise
04:50:02 <soundnfury> you're getting there...
04:50:22 <FreeFull> I need to think of the code though
04:50:40 <quintopia> yeah the spiraling thing does ¾
04:50:53 <zzo38> Is there any better way than swap pixels?
04:50:57 <soundnfury> quintopia: yup. Can you see a way to beat it?
04:51:17 <quintopia> yeah i think
04:51:37 <quintopia> three swaps for every rectangle of pixels
04:51:56 <quintopia> tl with tr, tr with ll, lr with ll
04:52:10 <quintopia> wait
04:52:14 <zzo38> I do happen to have lookup tables "reverse" and "unmingle" but could add a few more if it help a lot
04:52:15 <quintopia> that last one's off :P
04:52:24 <quintopia> tl with tr, tr with ll, tr with lr
04:52:27 <FreeFull> Let's say we have a 2x2 image
04:52:32 <FreeFull> 1001
04:52:40 <quintopia> tl=top left, lr = lower right etc.
04:52:52 <soundnfury> quintopia: just think permutations: (1 2 3 4) = (1 2) (2 3) (3 4)
04:53:53 <quintopia> soundnfury: i said (1 2) (2 4) (2 3). that way no *value* moves more than twice
04:53:54 <FreeFull> I just thought of something that probably isn't very useful
04:54:39 <FreeFull> If you treat the outer rim of the image as a binary number of 28 bits, by rotating it right by 8 you literally rotate it right
04:54:40 <soundnfury> quintopia: do you mean (1 3)(1 2)(3 4)?
04:54:55 <soundnfury> FreeFull: that's quite neat, yes
04:54:59 <FreeFull> But that would be inconvienient to code
04:55:16 <quintopia> FreeFull: also converting the bit array to that number would end up slower than this
04:55:20 <soundnfury> but I don't know how useful it is, unless you actually store your image in taxicab polar co-ordinates
04:55:21 <zzo38> Yes that is true but useless since the picture is not stored in that format.
04:55:44 <soundnfury> which would also be inconvenient as you now have a triangular array to store
04:56:29 <FreeFull> anyway, to rotate a 2x2 image, the way I'm thinking of would have four swaps
04:56:41 <FreeFull> But that's w*h and not the best according to what yous ay
04:56:46 <quintopia> i had an idea to execute soundnfury's method faster
04:57:01 <quintopia> without assuming a swap routine
04:57:57 <quintopia> hmm
04:58:03 <quintopia> but it requires square image
04:58:09 <FreeFull> That's fine
04:58:28 <soundnfury> yeah, no problem. You can't really in-place rotate a non-square image :p
04:58:35 <soundnfury> so what's your idea?
04:58:43 <quintopia> zzo38: your best bet is the loop i said above. it rotates any image (including rectangular) in time linear in the length of the image.
04:58:57 <quintopia> soundnfury: yes you could.
04:58:59 <FreeFull> That's w*h
04:59:26 <quintopia> my method above, with the assignment replaced by three xors would rotate even non-square images in place.
05:00:02 <soundnfury> oh, you mean if you reinterpret the array dimensions?
05:00:25 <FreeFull> Ultimately, you always need to move w*h pixels to a different position
05:00:26 <quintopia> just swapping them is sufficient for a 90 degree rotation
05:01:01 <quintopia> well, i have proven you can rotate any image 90 degrees with 3*l*w bitwise operations. that's something eh
05:01:12 <quintopia> go beat it.
05:01:13 <zzo38> Do you know how it is 1 bit per pixel monochrome?
05:01:36 <quintopia> zzo38: my method doesn't care about your encoding of a pixel.
05:01:50 <zzo38> I am thinking of some other stuff too now
05:01:52 <soundnfury> zzo38: your 1bpp images I still think there should be an efficient trick with bitwise stuff
05:01:53 <quintopia> if you can fetch a bit and move it
05:02:28 <zzo38> quintopia: Sure you can fetch a bit and move it but that doesn't seem efficient, since they are packed in one byte
05:02:35 <FreeFull> You could probably rotate a byte at a time
05:02:51 <zzo38> FreeFull: Yes that is one of my thoughts too.
05:03:08 <quintopia> FreeFull: it is difficult to rotate a byte at a time, since the bits will all end up separated in memory after the rotation
05:03:29 <FreeFull> quintopia: What do you mean?
05:03:55 <quintopia> assume row major ordering on a picture 10 pixels wide.
05:04:10 <quintopia> bits that start next to each other in memory will end up separated by 10 bits
05:04:11 <FreeFull> Yes, row major ordering is the common one
05:04:38 <FreeFull> We are working with a picture 8 pixels wide though
05:04:41 <FreeFull> 8x8
05:04:44 <quintopia> fine
05:04:44 <soundnfury> something like y[0]=((x[0]&0x80)>>7)|((x[1]&0x80)>>6)|((x[2]&0x80)>>5)|...|(x[7]&0x80)
05:04:48 <quintopia> they end up a byte separated
05:05:29 <FreeFull> soundnfury: You said in place
05:05:31 <soundnfury> Or you could use bitfields (in C) and a massive block of assignments, and rely on vectorising compilers
05:05:32 <quintopia> soundnfury: that is essentially the method i give above, rewritten to handle a byte at a time
05:05:47 <soundnfury> FreeFull: I'm talking about zzo38's problem now, sorry
05:06:18 <quintopia> soundnfury: and i think it is the best bet
05:07:10 <soundnfury> Can you cast the char[8] to a uint64_t and do something nifty there?
05:08:03 <zzo38> soundnfury: Maybe not since the endianness might differ
05:08:14 <FreeFull> soundnfury: That would depend on endianness
05:08:18 <zzo38> Although it might be some algorithm that work with any endianness.
05:08:39 <FreeFull> And I don't think it would be useful
05:08:48 <soundnfury> You might possibly be able to condition on #ifdef BIG_ENDIAN
05:09:01 <quintopia> there is a whole thread on this
05:09:02 <quintopia> http://stackoverflow.com/questions/1667591/rotating-a-bitmap-90-degrees
05:09:23 <quintopia> the top answer looks promising
05:09:43 <soundnfury> yeah, it does
05:09:57 <FreeFull> In the first byte, the first bit becomes the last bit
05:10:09 <quintopia> i like that binary search approach
05:10:10 <FreeFull> And the rest of the bits are from the side
05:10:12 <soundnfury> oh nice, it uses octal constants!
05:11:41 <zzo38> I rarely use octal constants but sometimes I find it useful, one purpose is to encode seven-segment displays
05:12:01 <quintopia> zzo38: did you see that solution? it appears to be exactly what you want and is completely in-place
05:12:12 <soundnfury> zzo38: my favourite octal use is chmod
05:12:19 <zzo38> I didn't look yet but maybe I will do so
05:12:38 <soundnfury> though I also like to use octal for backslash escapes, like C does
05:13:25 <soundnfury> that's how I handle escapes in quIRC
05:13:48 <zzo38> chmod is another use of octal numbers. I will also use octals when the number of bits of some field is a multiple of three
05:14:19 <soundnfury> indeed
05:14:38 <soundnfury> also if you are dealing with a 9-bit byte or 36-bit word computer
05:14:51 <zzo38> Yes those are the kind of things I meant
05:15:21 <quintopia> why is it good to use them then?
05:15:27 <quintopia> oh nvm
05:15:32 <quintopia> for storing them
05:16:06 <soundnfury> distinguish the case of "multiple-of-3-bit fields in software" (like chmod) from "multiple-of-3-bit bytes in hardware" (like 36-bit word computers)
05:16:24 <soundnfury> not that there are many of those around these days ;)
05:17:40 <FreeFull> If you're using a 36-bit word computer, you're likely to be using lisp rather than c =P
05:19:57 <FreeFull> I think it'd be cool if there was a modern balanced trinary computer
05:28:38 <soundnfury> FreeFull: one of my secret ambitions is to make one
05:28:54 <soundnfury> I have an engineer friend who thinks it could be done with ECL
05:28:59 <soundnfury> (Emitter Coupled Logic)
05:29:23 <soundnfury> Actually, I say engineer; he's actually a physicist, but he /behaves/ like an engineer.
05:34:11 <soundnfury> what you need are to use signals of GND/+/- for 0/1/A
05:34:40 * soundnfury wonders if esoteric hardware belongs on an esolang wiki
05:35:16 <zzo38> soundnfury: I think yes you can put hardware too there are a few things already about hardware so you could include it.
05:35:24 <soundnfury> cool
05:36:03 <soundnfury> I have a few old sketches of a ternary instruction set
05:36:16 <soundnfury> and a few ideas of how to make ternary logic on this model
05:36:36 <soundnfury> so I think I could put a design together, then emulate it in software
05:44:53 -!- FreeFull has quit (Ping timeout: 248 seconds).
05:46:36 -!- FreeFull has joined.
05:49:00 -!- pikhq_ has joined.
05:49:01 -!- pikhq has quit (Ping timeout: 246 seconds).
05:49:36 <soundnfury> wait a minute... we can do /weighted/ sums in ECL
05:49:46 <soundnfury> since it's basically just op-amps
05:50:05 <soundnfury> this is semi-analogue, freaky
05:55:15 * soundnfury just designed a ternary half-adder using only summing and inverting op-amps
05:55:46 <soundnfury> and because everything runs in the linear region, it'd be very fast (though it'd drink power and get hot!)
06:18:31 <zzo38> Can you convert a program to a Typographical Number Theory string so that the program halt if it is true and no halt if not true? Can it be done the other way around?
06:27:05 <soundnfury> http://esolangs.org/wiki/User:Soundandfury/Ternary_ECL <-- half-adder done
06:31:25 <soundnfury> also, I've invented a new term, "trith table"
06:31:33 <soundnfury> it's like truth table, but for trits ;)
06:32:57 <soundnfury> Oh cock, I've just realised my half-adder is wrong
06:33:34 <soundnfury> I'll get it right /eventually/...
06:37:49 <soundnfury> Fixed it.
06:48:07 -!- impomatic has left.
06:53:00 * soundnfury is now designing an HDL for amplifier logic
06:53:12 <soundnfury> so that I can test these designs properly, and describe them without drawing pictures
06:58:26 -!- Vorpal has joined.
07:03:30 -!- pikhq_ has quit (Ping timeout: 244 seconds).
07:03:42 -!- pikhq has joined.
07:08:25 -!- zzo38 has quit (Quit: O well, my Dungeons&Dragons character did that once, and almost lost...).
07:34:39 -!- nooga has joined.
07:52:37 <Sgeo> WHY WHY WHY would I read blog posts of someone who I determined is an idiot?
08:02:56 <coppro> soundnfury: do you signify anything?
08:03:35 <Vorpal> Sgeo, no idea. You are giving their website extra hits, and depending on if it has ads and if you have an adblocker, extra ad revenue
08:03:42 <Vorpal> so yes that sounds like a very stupid thing to do
08:04:50 <Vorpal> speaking of stupid ideas, lets check if efunge works on windows. I can't see why it shouldn't, though building and starting it may require cygwin (due to a Makefile and a shell script wrapper)
08:06:34 <Sgeo> I don't seem to see any ads
08:09:15 <Vorpal> yeah it seems to work from cygwin as soon as I set up the proper PATH for it to find erlang
08:11:57 <soundnfury> coppro: no, nothing.
08:12:27 <coppro> soundnfury: well told by an idiot
08:12:27 <soundnfury> I am a tale told by an idiot.
08:12:39 <soundnfury> ;)
08:12:56 <Vorpal> is it just me, or does anyone else have problems with the annotations option being off by default on youtube?
08:13:03 <coppro> soundfury: well, at least one of us didn't say tomorrow
08:13:04 <Vorpal> I think the problem started like last week
08:13:09 <coppro> there would have been time for such a word
08:36:35 -!- Taneb has joined.
08:37:32 <Taneb> Hello
08:43:44 <soundnfury> Hello, Taneb
08:43:52 <soundnfury> Good morning to you.
08:43:58 <Taneb> :)
08:46:49 -!- asiekierka has joined.
08:48:56 * soundnfury is inventing ternary computers made of op-amps
08:49:01 <soundnfury> http://esolangs.org/wiki/User:Soundandfury/Ternary_ECL
08:50:08 <Taneb> You using balanced ternary?
08:50:26 <Taneb> (-1, 0, 1 as opposed to 0, 1, 2)
09:17:08 <soundnfury> Taneb: yup
09:17:24 <soundnfury> (sorry, I was reading bitbitjump arguments from 2009)
09:17:51 <Vorpal> soundnfury, can you represent ternary logic in VHDL btw?
09:17:58 <Vorpal> also I don't remember how balanced ternary works...
09:18:23 <soundnfury> Vorpal: only by encoding each trit as two bits. Not natively
09:18:30 <soundnfury> at least, afaik
09:18:31 <Vorpal> hmm
09:18:36 <Taneb> (there's also 0, 1, ?, iirc)
09:18:42 <soundnfury> fairly sure that's the case in Verilog)
09:18:48 <Vorpal> soundnfury, can you represent analogue values in VHDL?
09:18:54 <Vorpal> I don't remember
09:19:00 <soundnfury> I don't think so. But tbh I've only used Verilog
09:19:01 -!- epicmonkey has joined.
09:19:09 <Vorpal> fair enough
09:19:14 <Vorpal> and I only used VHDL
09:27:36 -!- mig22 has quit (Quit: mig22).
09:28:23 <Sgeo> <3 Red vs Blue
09:31:37 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
09:34:16 -!- ogrom has quit (Quit: Left).
09:41:28 -!- ogrom has joined.
09:43:03 <Sgeo> Oh hey, the person edited their blog post and mentioned me
09:43:03 <Sgeo> http://clojurefun.wordpress.com/2012/08/04/macro-magic-the-xor-macro-38-2/
09:43:44 <Vorpal> music cds are such strange beasts.
09:45:33 -!- MoALTz has joined.
09:57:00 <mroman> Defmacro to the rescue!
10:16:04 -!- Phantom_Hoover has joined.
10:17:45 -!- azaq23 has joined.
10:17:53 -!- azaq23 has quit (Max SendQ exceeded).
10:17:58 <fizzie> Vorpal: Whereas DVD-Audio is just a data DVD with an AUDIO_TS directory. (C.f. VIDEO_TS for DVD-Video.)
10:18:26 -!- azaq23 has joined.
10:33:14 -!- ogrom has quit (Quit: Left).
10:46:07 <Vorpal> fizzie, there are DVD-Audio?
10:47:04 <Vorpal> also I almost completely finished sorting my computer based music collection now
10:47:16 <Vorpal> still, I don't think I ever ripped most of the CDs I own...
10:48:53 <fizzie> There's a standard, yes.
10:49:08 <Vorpal> Probably have about 50-70 classical music CDs that I don't have on the computer.
10:49:17 <Vorpal> maybe more
10:49:23 <fizzie> It goes up to 192 kHz 24-bit stereo; or 96 kHz 5.1-surround, officially.
10:49:41 <Vorpal> (basically all the ones I didn't find in musicbrainz and couldn't be arsed to add)
10:50:02 <fizzie> (And you can have multiple versions at different settings.)
10:50:39 <fizzie> Stored as plain old linear PCM, either uncompressed or with Meridian.
10:50:54 <Vorpal> heh
10:51:10 <Vorpal> fizzie, what do you mean "with Meridian"?
10:51:19 <fizzie> MLP.
10:51:20 -!- copumpkin has quit (Ping timeout: 246 seconds).
10:51:27 <fizzie> It's a lossless packing format.
10:51:29 <Vorpal> I see
10:51:31 <Vorpal> never heard of it
10:51:51 -!- copumpkin has joined.
10:51:54 <fizzie> I think it's patented or at least somewhat proprietary.
10:51:54 <Vorpal> anyway, I think I will ditch using flac and go ogg for all of that
10:52:13 <Vorpal> since that is what I'm going to use on the phone
10:52:15 <fizzie> Not that I've probably even seen a DVD-Audio disc anywhere, it's not exactly a terribly popular format.
10:52:20 <Vorpal> and I want a unified music library thing
10:53:13 <Vorpal> btw my phone supposedly supports exFAT. Samsung licensed it or something
10:53:19 <Vorpal> however that didn't work well at all
10:53:20 <fizzie> But you can put both VIDEO_TS and AUDIO_TS folders on the same disc, so a DVD-Audio disc can be compatible with regular DVD players, if you just put the same music into the audio track of some placeholder video.
10:53:48 <Vorpal> I reformatted the 64 GB card to FAT32 after getting "create failed" errors when copying files to it
10:53:57 <Vorpal> works like a charm now
10:54:30 <Vorpal> fizzie, I guess you could do music videos even?
10:54:38 <fizzie> Well, probably.
10:54:59 <Vorpal> still, nothing can play audio DVD that isn't a computer afaik
10:55:10 <Vorpal> so what is the point
10:55:31 <Vorpal> I just wish CDs included metadata about the music
10:55:48 <Vorpal> CD-TEXT isn't very common
10:56:03 <Vorpal> I think I seen it once on a CD-ROM
10:56:05 <fizzie> Oh, I think there are players.
10:56:11 <fizzie> As in, actual DVD-Audio players.
10:56:14 <Vorpal> heh
10:56:53 <Vorpal> fizzie, well DVD-audio would certainly making ripping this 7-CD box less painful
10:57:16 <Vorpal> cdparanoia took about two minutes for the first track on the first CD
10:57:29 <Vorpal> a 13 minute long track though
10:57:32 <Vorpal> so I guess not too bad
10:58:03 <Vorpal> anyway entering stuff into musicbrainz is painful. Especially for classical music
10:59:55 <fizzie> Oh, heh; there's a thing in the DVD-Audio standard that you're not allowed to send the output over an unencrypted digital link, like S/PDIF, unless it's limited to 48 kHz stereo.
11:00:29 <fizzie> So if you want digital audio out of your DVD-Audio player, HDMI's about the only way.
11:01:08 -!- Taneb has quit (Ping timeout: 246 seconds).
11:04:16 <fizzie> Vorpal: Also, to correct a misstatement I made earlier; the laptop doesn't have {HDMI, DVI, VGA}; it just has {HDMI, DVI}. (Though you can of course use a DVI/VGA adapter.)
11:04:40 <fizzie> Could also sort-of explain "why DVI": can't put analogue VGA into a HDMI hole, I don't think it has the right pins for that.
11:04:52 <fizzie> (And "why HDMI" can be explained as a convenience thing.)
11:25:57 <Vorpal> heh
11:26:11 <Vorpal> doesn't explain "why DVI instead of VGA" though
11:26:25 <Vorpal> since VGA is often used for projectors
11:28:38 <Vorpal> bbl
11:32:32 <soundnfury> Hmm.
11:34:06 * soundnfury wonders just how much can be achieved in LOOPY ECLAIR
11:34:19 <soundnfury> and whether it qualifies as an esolang itself
11:36:50 -!- monqy has joined.
11:54:56 -!- ogrom has joined.
12:07:47 -!- KingOfKarlsruhe has joined.
12:11:27 <soundnfury> I need a name for my ECL ternary computer
12:11:44 <soundnfury> preferably something containing the letters 'ECL'.
12:12:21 <soundnfury> so far I've thought of Recluse and Declare, neither of which are great
12:21:18 -!- mig22 has joined.
12:22:52 -!- Taneb has joined.
12:24:50 <Sgeo> Ugh, this video player has an advertisement playing counter that's wrong
12:24:59 <Sgeo> The ad keeps playing even when it says 0 seconds left
12:28:01 -!- Taneb has quit (Ping timeout: 246 seconds).
12:42:46 -!- MoALTz has quit (Quit: Leaving).
12:45:20 -!- MoALTz has joined.
12:51:07 -!- Taneb has joined.
13:16:54 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
13:19:07 -!- Taneb has quit (Ping timeout: 246 seconds).
13:23:12 -!- ogrom has quit (Quit: Left).
13:24:44 -!- elliott has joined.
13:29:01 <elliott> has everyone seen http://esolangs.org/w/index.php?title=Deadfish&curid=2038&diff=33318&oldid=33243
13:30:22 <Sgeo> Now I have
13:30:30 <Sgeo> I need sleep before comprehension though
13:34:14 -!- mig22 has joined.
13:34:46 <FreeFull> fizzie:
13:34:56 <FreeFull> fizzie: My semi-newish laptop still has VGA for some reason
13:34:56 -!- mig22_ has joined.
13:35:01 <FreeFull> VGA and HDMI
13:35:45 <FreeFull> I guess they went "Hey, we have some space here, what do we put in? I know, VGA! People still use VGA sometimes, right?"
13:36:15 <Sgeo> Oh
13:36:17 <Sgeo> I get it
13:37:19 -!- mig22 has quit (Read error: Connection reset by peer).
13:37:21 -!- mig22_ has changed nick to mig22.
13:38:29 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
13:41:41 -!- ogrom has joined.
13:53:56 -!- david_werecat has joined.
14:00:08 -!- ogrom has quit (Remote host closed the connection).
14:00:37 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
14:38:52 <Vorpal> hm I want a distributed offloading thingy. Like distcc but for general tasks
14:39:40 <Vorpal> like... If I ripped a CD and I want to convert it to ogg, then I would normally do echo *.wav | xargs -P4 -n1 oggenc -q4 or so, (where -P4 is the number of cores)
14:39:49 <Vorpal> what if I could use all my computers instead
14:47:23 <elliott> see gnu parallel
14:47:25 <elliott> pretty sure it can do that
14:53:39 -!- epicmonkey has quit (Remote host closed the connection).
14:53:54 -!- epicmonkey has joined.
15:03:16 <FreeFull> Can it?
15:07:03 <elliott> i think so
15:07:22 <Deewiant> "GNU parallel is a shell tool for executing jobs in parallel using one or more computers."
15:11:10 <fizzie> FreeFull: It can be useful if you e.g. need to hook up the laptop to a projector.
15:12:04 <fizzie> At least in quite a few lecture halls I've been in the provided projector cable that reaches the speaker's desk has still been VGA, no matter if the projectors themselves do DVI and HDMI and whatnot.
15:19:27 <soundnfury> Argh, recursively instantiating hardware gives me a headache
15:27:24 <soundnfury> Okay, so. Conclusion: if you supply ecloop with an ECLAIR file that contains recursion, it segfaults because it's trying to instantiate blocks that it doesn't yet have the full definition for.
15:27:54 <soundnfury> But it doesn't segfault until the third recursive call of instantiate(), in the simple case of a block that contains a copy of itself.
15:28:30 <soundnfury> This is because the behaviour of instantiation of incomplete objects is *weird*.
15:29:47 <soundnfury> In related news, you also have to define things before you instantiate them else the instantiator gets confused - it can't handle forward references.
15:29:55 * soundnfury head asplode
15:39:57 -!- Taneb has joined.
15:40:52 <Gregor> Hmm. I put a poll on Facebook to see what color pants I should buy. Orange, hot pink or (normal) pink. Most people voted for orange. My dad voted for hot pink. I come from a weird family.
15:49:59 -!- Taneb has quit (Ping timeout: 250 seconds).
15:51:12 <FreeFull> Gregor: Go for hot pink
16:00:53 -!- ineiros has quit (Ping timeout: 248 seconds).
16:03:24 -!- ineiros has joined.
16:10:26 -!- asiekierka has quit (Remote host closed the connection).
16:12:56 -!- TodPunk has quit (Ping timeout: 250 seconds).
16:20:07 -!- elliott has quit (Ping timeout: 240 seconds).
16:40:54 -!- TodPunk has joined.
16:41:06 -!- zzo38 has joined.
16:43:49 -!- Taneb has joined.
16:45:56 <Taneb> Hello
16:46:11 -!- zzo38 has quit (Remote host closed the connection).
16:48:27 -!- elliott has joined.
16:58:20 <Taneb> Hello, elliott
16:59:00 <elliott> hello
17:00:30 <Phantom_Hoover> helliott
17:01:29 <Taneb> There's a homestuck meetup in Newcastle on Tuesday if you guys want to come
17:03:12 <Phantom_Hoover> which newcastle
17:03:50 <oklopol> the new one
17:04:05 <elliott> hhhhhheh
17:04:18 <oklopol> fuck you elliott that was funny
17:04:21 <elliott> i am fine, thank you for the information
17:04:27 <oklopol> good to know
17:04:28 <elliott> oklopol: that wasn't to you!! in fact that wasn't to anyone
17:04:33 <oklopol> oh sorry
17:04:34 <elliott> maybe it was to lambdabot
17:04:45 <oklopol> oh lambdabot you tell the best jokes :)
17:04:45 <monqy> hi
17:04:57 <oklopol> hi monqy we're being extra friendly today do you want a cookie
17:05:07 <monqy> maybe
17:05:19 <oklopol> well what the fuck kind of half-assed semiresponse is that
17:05:36 <oklopol> and also i don't have cookies :(
17:06:04 <Taneb> Phantom_Hoover, the one both of us can get a train to
17:07:14 <Taneb> So, the old one...
17:17:24 -!- monqy has quit (Quit: hello).
17:24:38 -!- ogrom has joined.
17:28:32 -!- MoALTz has quit (Quit: Leaving).
17:39:23 -!- Taneb has quit (Ping timeout: 246 seconds).
17:54:29 -!- KingOfKarlsruhe has joined.
18:01:30 -!- Taneb has joined.
18:02:03 <Taneb> Hello
18:02:08 <elliott> Is that Microsoft Security Essentials thing any good? I'm trying to set up a Windows VM thing.
18:02:11 <elliott> I bet... Deewiant knows.
18:02:47 <ion> I’m under the impression that it’s good.
18:02:51 <Deewiant> It's decent.
18:03:40 <elliott> Okay then. (Microsoft(TM) Update(R) helpfully offered to install it as, uh, an "update".)
18:03:42 -!- ais523 has joined.
18:04:17 -!- fizzie has quit (*.net *.split).
18:06:02 <pikhq> elliott: As far as I know, it's a functional antivirus program that is low on bloat.
18:06:24 <pikhq> For Windows use, I recommend it heavily over more common bullshit.
18:06:29 <Taneb> Functional as in working, or functional is in written in OCaml?
18:06:33 <pikhq> (Norton can fuck off and die)
18:06:35 <pikhq> Taneb: As in working.
18:08:41 <elliott> Deewiant: What's the name of that new-ish (native) port of bash and grep and awk and make and so on to Windows? ISTR it had a GitHub page for a website.
18:09:14 <Deewiant> Beats me..
18:09:16 <Deewiant> -.
18:09:25 <elliott> Aw.
18:09:29 <elliott> You were doing so well, too.
18:10:04 <Deewiant> I don't use stuff like that barely at all these days.
18:10:30 -!- fizzie has joined.
18:10:44 <elliott> Deewiant: Well, I need to compile this program, which has a Makefile. :/
18:10:59 <elliott> Ugh, I'm going to have to set up PDCurses and everything too.
18:11:00 <Deewiant> MinGW and MSYS :-P
18:11:21 <elliott> Deewiant: Well the idea would be to use those ports as something like MSYS except that isn't a crappy fork of ancient Cygwin.
18:11:29 <elliott> I'll be using MinGW for a compiler, yes.
18:11:50 <Deewiant> Who cares what it is, it works well enough.
18:12:21 <elliott> Well, what's "stuff like that", then?
18:12:27 <elliott> My interpretation would have included MSYS.
18:12:59 <Deewiant> I haven't used it in years, but last time I did it worked fine.
18:16:55 -!- oerjan has joined.
18:17:57 <Vorpal> <elliott> Is that Microsoft Security Essentials thing any good? I'm trying to set up a Windows VM thing. <-- it is okay, and it is pretty lightweight
18:18:25 <oerjan> it certainly reduced my memory footprint when i switched to it from avg
18:19:07 <oerjan> although on the downside, i now have strange delays when starting programs
18:19:48 <Vorpal> I use it on windows, no strange delays unless I'm opening huge installers, but that happens anyway due to checking if the thing is signed or not
18:20:29 <oerjan> i mainly notice it when starting vim
18:20:40 <Vorpal> don't use vim under windows. Or anywhere
18:20:42 <pikhq> I've not really noticed much in the way of program start delay. But, then, Windows has such a ridiculous process spawn cost anyways.
18:20:49 * oerjan swats Vorpal -----###
18:21:04 <Vorpal> oerjan, I use emacs and kate on *nix and notepad++ on windows
18:21:21 <elliott> nobody cares what editor you use
18:21:37 <Taneb> Whether you prefer Rock Band or Guitar Hero however...
18:21:37 <Vorpal> indeed
18:21:49 <elliott> well, except for Vorpal, apparently
18:21:59 <Vorpal> Taneb, I don't play either
18:22:02 <Taneb> :O
18:22:53 <Vorpal> Taneb, don't both require consoles?
18:22:56 <Vorpal> I don't have a console
18:23:13 <Taneb> Nah, guitar hero at least is also arcade!
18:23:19 <Vorpal> very funny
18:23:27 <Vorpal> I don't think there is an arcade for miles
18:23:29 <Taneb> Wasted like 30 on it last week :(
18:24:44 <oerjan> <FreeFull> Let's say char x[8]; is the input picture
18:25:07 <oerjan> there's got to be something clever with shifts and bitmasks for that...
18:25:43 <Taneb> On the plus side, the high scores were really easy to beat, and I am awesome at Belly of a Shark
18:25:57 <Vorpal> FreeFull, what is the size of your char?
18:26:13 <Vorpal> Taneb, what is that
18:26:18 <Taneb> Vorpal, song
18:26:21 <Taneb> It goes...
18:26:25 <Taneb> So here I lie
18:26:27 <oerjan> it's 8 bit, since it's encoding an 8 x 8 icon
18:26:28 <Taneb> In the belly of a shark
18:26:32 <Vorpal> I see...
18:26:33 <Taneb> So fucking cold so fucking dark
18:26:36 <Taneb> So here I lie
18:26:39 <Taneb> In the belly of a shark
18:26:41 -!- elliott has left ("Leaving").
18:26:48 <Taneb> And how the fuck did I get this far
18:26:53 <Taneb> Now all I have to do
18:26:57 <Taneb> Is swim up to you
18:26:59 <Taneb> Convince you
18:27:00 <Vorpal> oerjan, monochrome with 1 bit per pixel then
18:27:02 <Vorpal> hm
18:27:03 <Taneb> To climb in too
18:27:06 <Vorpal> who uses that
18:27:20 <oerjan> Vorpal: ask zzo38 he was asking the original question
18:27:22 <Taneb> It's a nice song
18:27:35 <Vorpal> a TI calculator would be a nice place to use such a compact crazy encoding
18:27:38 <oerjan> <zzo38> What is algorithm for rotating a 8x8 icon of one bit per pixel?
18:28:41 <Taneb> Actually, I'm gonna go play guitar hero now
18:28:44 -!- Taneb has quit (Quit: Leaving).
18:29:38 -!- augur has quit (Remote host closed the connection).
18:32:09 -!- Taneb has joined.
18:32:31 <Taneb> Change of plan...
18:32:38 <Taneb> My brother's on the XBox
18:33:17 <FreeFull> Vorpal: I believe the C99 standard guarantees chars to be 8 bits
18:33:31 <FreeFull> I suppose you could always use uint8_t
18:34:32 <pikhq> It's 8 or more bits.
18:34:44 <pikhq> POSIX guarantees chars to be 8 bits precisely.
18:34:54 <pikhq> (because it requires uint8_t to exist)
18:35:35 <FreeFull> But uint8_t doesn't have to be equivalent to char, does it?
18:35:57 <Vorpal> <FreeFull> Vorpal: I believe the C99 standard guarantees chars to be 8 bits <-- nope
18:36:01 <Vorpal> as pikhq said
18:36:23 <pikhq> No, but it must be without padding if it does exist, and *hugely importantly* all sizes of other types are multiples of char's size in size.
18:36:30 <Vorpal> <FreeFull> But uint8_t doesn't have to be equivalent to char, does it? <-- yeah but nothing can be smaller than a char (except a bitfield)
18:36:47 <Vorpal> (which obviously still is padded to at least a char)
18:37:16 <Deewiant> POSIX requires it to have no padding?
18:37:21 <FreeFull> So you can't have uint8_t in a C implementation with 9-bit chars?
18:37:25 <pikhq> Deewiant: C99 requires it to have no padding.
18:37:28 <pikhq> FreeFull: Right.
18:37:56 <Vorpal> if you have 9 bit chars you can't have unit16_t and so on either I guess
18:38:10 <Vorpal> you could have uint18_t but that isn't standard (still allowed iirc)
18:38:35 <Vorpal> FreeFull, more realistically these days would be a 16 or 32 bit char on a DSP
18:38:41 <Vorpal> 9 bits chars are dead
18:39:33 <pikhq> Yeah, it's not standard but it's in reserved namespace, so a libc could provide it sanely.
18:39:55 <fizzie> Vorpal: uint18_t is "standard" in the sense that it will have all the properties that uint16_t would have. Well, except two more bits, obviously.
18:40:08 <Deewiant> pikhq: AFAICT no padding is only required for the signed integer types...
18:40:11 <pikhq> fizzie: Not really, it would have implementation-defined semantics.
18:40:16 <pikhq> Deewiant: Other way around.
18:40:28 <Deewiant> pikhq: Source.
18:40:49 <fizzie> pikhq: Huh? "The typedef name uintN_t designates an unsigned integer type with width N. Thus, uint24_t denotes an unsigned integer type with a width of exactly 24 bits."
18:41:01 <Deewiant> pikhq: "The typedef name intN_t designates a signed integer type with width N , no padding bits, and a two’s complement representation."
18:41:01 <pikhq> Deewiant: I'm off.
18:41:09 <fizzie> pikhq: There isn't anything special about uint16_t and such except they're required to exist if types like that exist.
18:41:31 <FreeFull> https://tools.ietf.org/html/rfc4042
18:41:37 <pikhq> fizzie: Huh, didn't realise.
18:42:04 <pikhq> But irrelevant, because POSIX requires int8_t, int16_t, int32_t to exist.
18:42:37 <Vorpal> pikhq, POSIX.1-2001 and later you mean
18:42:51 <pikhq> Vorpal: POSIX-actually-relevant and later, right.
18:43:03 <pikhq> Guess what: HTML 1 doesn't have a video tag. But HTML does!
18:43:15 <Vorpal> what is HTML without a qualifier here?
18:43:21 <fizzie> Deewiant: "When typedef names differing only in the absence or presence of the initial u are defined, they shall denote corresponding signed and unsigned types as described in 6.2.5" -- and you can derive from that that there's no padding in uintN_t either.
18:43:26 <Vorpal> HTML4?
18:43:32 <pikhq> Why the fuck would it be?
18:43:34 <pikhq> That's old shit.
18:43:42 <Vorpal> pikhq, I bet HTML4 is still the most common HTML version out there
18:43:49 <Vorpal> not on the top 100 sites, sure
18:43:53 <Vorpal> but globally
18:44:05 <pikhq> Globally, tag soup is the most common HTML version.
18:44:09 <Vorpal> well yes
18:44:20 <Vorpal> but most of them that claim a version is going to claim HTML4
18:44:20 <pikhq> Which can't really be called HTML4.
18:44:31 <pikhq> True but irrelevant.
18:44:47 <Deewiant> fizzie: §6.2.5 requires that corresponding signed/unsigned types have the same amount of padding?
18:45:41 <fizzie> Deewiant: "Each bit that is a value bit shall have the same value as the same bit in the object representation of the corresponding unsigned type", and they have the same width. I'm trying to find out whether there's something that'd prohibit having the sign bit as a padding bit in uintN_t though.
18:45:44 <Vorpal> btw how is C11 support nowdays
18:45:50 <Vorpal> I can't find a GCC status matrix
18:46:00 <pikhq> Vorpal: When those things could not be parsed by an actual HTML4 parser, I'm calling it not-HTML4.
18:46:05 <Deewiant> HTML5 is still under development, so it's somewhat reasonable to not consider it in just "HTML".
18:46:29 <Vorpal> pikhq, fair enough
18:46:44 <Vorpal> so HTML without a qualifier should refer to tag soup
18:46:56 -!- augur has joined.
18:47:00 <Vorpal> also I'm sad XHTML pretty much died
18:47:03 <pikhq> Deewiant: It also happens to be the only spec that describes the behavior web browsers *exhibit*.
18:47:06 <Vorpal> it made more sense than HTML5 IMO
18:48:08 <fizzie> Deewiant: FWIW, C11 has the "no padding" description explicitly also for uintN_t, and you could argue no matter what C99 exactly says, that is the intention.
18:48:20 <Deewiant> fizzie: It requires that they take up the same amount of storage, but does that require bit-level accuracy?
18:48:58 <fizzie> Deewiant: "width of exactly N bits".
18:49:05 <Deewiant> Okay, missed that.
18:49:24 <fizzie> (C11 also no longer mentions the "corresponding type" thing.)
18:49:44 <Vorpal> is there a matching POSIX version for C11 yet
18:49:46 <Vorpal> I guess not
18:49:53 <Vorpal> wonder when the next POSIX is due
18:50:05 <Vorpal> in about 6 years based on the last delay
18:50:24 <Vorpal> hm wait
18:50:25 <Vorpal> no
18:50:39 <fizzie> I think there was a thread about this with people arguing you can still derive the "no padding" thing, but I can't be bothered to figure it out. At least I'm pretty sure the only bit that could possibly be a padding bit (after applying 6.2.5) in uintN_t is the sign bit in intN_t.
18:50:45 <fizzie> comp.lang.c thread, I mean.
18:50:56 <Vorpal> in about 3 years
18:51:15 <fizzie> Or maybe it was one of the C11 comment meeting note things.
18:51:57 -!- zzo38 has joined.
18:52:14 <pikhq> 'Cept there's not a sign bit per se in intN_t.
18:52:20 <pikhq> (it's two's complement)
18:52:26 <fizzie> Sure there is.
18:52:33 <fizzie> One of the bits is called a sign bit.
18:53:03 <pikhq> Is it really called that?
18:53:06 <fizzie> Yes.
18:53:11 <pikhq> ... Well. I guess you can read the sign off of that bit, so.
18:53:23 <fizzie> "For signed integer types, the bits of the object representation shall be divided into three
18:53:26 <fizzie> groups: value bits, padding bits, and the sign bit.
18:53:36 <fizzie> "the sign bit has the value −(2 N ) (two’s complement)
18:53:49 <fizzie> (That's -(2^N) after evince copy-paste.)
18:54:55 <Taneb> zzo38, did you see my message the other day?
18:57:10 <fizzie> Deewiant: Also even in C99, "UINTN_MAX" is defined to be "exactly 2^N - 1", so there's not really any room for padding bits.
18:57:52 <Deewiant> I thought that padding bits are essentially invisible? Of course the _MAX wouldn't be changed.
18:58:11 <fizzie> No, but the "width" of the type includes padding bits.
18:58:22 <fizzie> So if your width is N, you have to spend all N bits as value bits.
18:58:28 <Taneb> Will I get in trouble if I learn the C from 1978?
18:58:45 <fizzie> Or maybe not.
18:59:08 <fizzie> It's hard to remember the definitions of commonplace words here.
18:59:12 <Deewiant> heh
18:59:37 <fizzie> Deewiant: Anyway, here's the defect report which added "no padding" for unsigned types too: http://std.dkuug.dk/jtc1/sc22/wg14/www/docs/dr_269.htm
19:01:10 <Deewiant> Heh, the committee found it too much trouble to change the second bullet
19:02:15 <fizzie> At least they fixed it in C11.
19:02:55 <fizzie> It's not exactly obvious from the document why they didn't stick that change in the Technical Corrigendum already.
19:03:27 <Deewiant> Probably because it wasn't a corrigendum as such.
19:03:34 <Deewiant> I.e. it didn't fix anything, it just clarified.
19:04:23 <fizzie> The existing text is the sort of "can be derived" about which otherwise sensible people can argue for hours, though, and that's something that I think could have been "fixed".
19:05:09 <Vorpal> fizzie, that sentence didn't really parse for me
19:05:11 <Deewiant> Sure, but I guess they want to keep their TCs as small as possible.
19:05:30 <Deewiant> As for why they want to do that, beats me.
19:05:53 <fizzie> Deewiant: Maybe compiler writers are contractually obligated to actually read those, and they don't want to bother them.
19:05:58 <zzo38> Evidently Zoe Smith set a new British record for lifting 121 telegrams!
19:06:22 <zzo38> Taneb: What message what other day?
19:06:39 <Taneb> Prelude.Generalize.choice is the same as Data.Foldable.asum
19:06:43 <Deewiant> fizzie: Yes, I'm sure the one-line diff right next to the other diff would've been a huge mental overload on the compiler writers.
19:06:47 <zzo38> O, yes, I ahve read that.
19:06:49 <Taneb> Which the former already exports
19:07:04 <zzo38> OK
19:07:18 <Taneb> I'm probably the only one who uses Prelude.Generalize...
19:07:23 <fizzie> NASA's "Curiosity" is landing in ten and a half hours, incidentally; let's hope they haven't mixed up imperial and metric units this time.
19:07:27 <zzo38> I do too
19:07:33 <Taneb> Yeah, but you made it
19:07:36 <Vorpal> Deewiant, not that one, but enough of those
19:07:40 <zzo38> OK
19:08:02 <Vorpal> "många bäckar små gör en stor å" (you guys had to learn Swedish idioms in school right?)
19:08:32 <fizzie> There's the one about breaking a camel's back that I think is more global.
19:08:36 <Taneb> Vorpal, what does that mean?
19:08:46 <Deewiant> I doubt they have that many defect reports with clarification opportunities.
19:08:48 <fizzie> Straw that broke the camel's back.
19:08:57 <Vorpal> Taneb, a rough translation is "many small streams make a large river"
19:08:59 <Taneb> fizzie, yeah, we use that here. Origin of phrase "final straw" or "last straw"
19:09:08 <Vorpal> which isn't the same
19:09:27 <Taneb> Like, working together is good?
19:09:30 <Taneb> Or evil?
19:09:37 <Vorpal> could be both ways
19:09:43 <Vorpal> depending on context
19:10:30 <Vorpal> fizzie, the "final straw" thing in Sweden is "droppen som fick bägaren att rinna över" (meaning "the drop that made the cup overflow"
19:10:34 <Vorpal> )
19:10:43 <fizzie> So I saw, at the Wikipedia article about the camel.
19:10:47 <Vorpal> ah
19:11:02 <Vorpal> though google translate thinks bägare means beaker
19:11:05 <Vorpal> well it could mean that too
19:11:08 <Vorpal> I guess
19:11:29 <fizzie> Anyway, I think the camel one sounds more appropriate in this context; I imagine a poor MSVC developer which reads the interminable TC, reaches this particular correction, finally goes mad (well, madder; it's a MSVC developer) and goes on to shoot up his colleagues.
19:12:08 <Vorpal> Taneb, all the phrase "många bäckar små gör en stor å" really means is that many small contributions that are in themselves insignificant can have a huge impact
19:12:32 <Vorpal> it can be used both in a context indicating that is bad, or where that is good
19:12:40 <Taneb> Reminds me of an avalanche?
19:12:45 <fizzie> Vorpal: Oh, we do that one in Finnish, too.
19:12:54 <fizzie> Vorpal: With a pretty literal translation.
19:12:57 <Vorpal> right
19:13:17 <Vorpal> fizzie, dude MSVC don't care about C99 :P
19:13:19 <Vorpal> or anything later
19:13:32 <Vorpal> last I checked C89 was the last supported C version in MSVC
19:14:00 <fizzie> Yeah, they only care about C++11 and such.
19:14:06 <Vorpal> indeed
19:14:15 <fizzie> "Our primary goal is to support "most of C99/C11 that is a subset of ISO C++98/C++11.
19:14:19 <fizzie> We do not plan to support ISO C features that are not part of either C90 or ISO C++."
19:15:56 <Vorpal> heh
19:15:59 <fizzie> "We recommend that C developers use the C++ compiler to compile C code. This is the best choice for using Visual C++ to compile C code."
19:16:06 <Vorpal> ouch
19:16:15 <Vorpal> except that breaks a lot of C code
19:16:29 <Vorpal> int new = old + this;
19:16:39 <fizzie> If you want "real C", they've got that C90 compiler for you, though.
19:16:47 <Vorpal> which doesn't work on C99
19:17:29 <Taneb> I've got a disc with Microsoft Visual Basic 2005 on it, which I keep in my shorts draw
19:17:32 <fizzie> "If you really need either of the following: features in C95/C99/C11 that are not part of ISO C++; or features in C that are in the C++ subset but without also enabling the writing of C++ code; then we recommend that you consider using a different compiler such as Intel or gcc (short-term) and/or pressure your standards committee representatives to have ISO C++ include more of the C standard ...
19:17:38 <fizzie> ... (longer-term)."
19:17:41 <Taneb> I only have two pairs of shorts, I'm not sure why I need a shorts draw
19:17:47 <Taneb> I wear shorts about once a year
19:17:53 <zzo38> If you want to compile a C code, use the GNU compiler or something else
19:18:00 <Taneb> Which I'm planning to make Tuesday
19:18:15 <Taneb> Gregor, did your JIT compile with MSVC?
19:18:23 <fizzie> (It's not exactly clear why pressuring your standards committee representatives helps if you don't want to enable C++ mode.)
19:18:37 <Vorpal> fizzie, where does it say that?
19:19:05 -!- TodPunk has quit (Ping timeout: 252 seconds).
19:19:10 <Vorpal> <Taneb> I wear shorts about once a year <-- why?
19:19:10 <fizzie> It's mentioned as the long-term solution "If you really need -- features in C that are in the C++ subset but without also enabling the writing of C++ code".
19:19:24 <Taneb> Vorpal, don't like shorts. I have hairy legs.
19:19:32 <Vorpal> and?
19:19:34 <Vorpal> so do I
19:19:39 <Taneb> Sometimes I have to wear shorts
19:19:47 <Taneb> But I really do not like shorts
19:19:54 <Vorpal> why
19:20:07 <Vorpal> why 1) do you have to wear them 2) do you not like them
19:20:10 <Taneb> Maybe I'm too used to trousers?
19:20:19 <Taneb> Well, next Tuesday is for cosplay purposes
19:20:27 <Taneb> Sometimes my parents make me
19:20:39 <Taneb> I guess I just don't like them
19:20:45 <Vorpal> I have convertible trousers btw from Fjällräven. There are zippers going around them just above the knees, so you can in about a minute convert between full length and shorts
19:20:46 <Vorpal> very neat
19:20:55 <Vorpal> lots of pockets too
19:21:18 <Taneb> Used to have some
19:21:21 <Vorpal> very durable, as usual for Fjällräven (that brand focuses on people out in nature a lot)
19:21:29 <fizzie> Taneb: Was that last "them" your parents, or shorts?
19:21:41 <Taneb> fizzie, shorts
19:21:41 <Vorpal> https://en.wikipedia.org/wiki/Fj%C3%A4llr%C3%A4ven
19:22:02 <Taneb> When I want pockets, I wear a jacket
19:22:38 <Vorpal> I have regular non-convertible shorts today though
19:22:46 -!- FreeFull has quit (Ping timeout: 246 seconds).
19:22:53 <Taneb> It doesn't really get warm enough to wear shorts here
19:23:00 <Vorpal> come on you are in UK
19:23:02 <Taneb> Britain's summer temperatures are awful
19:23:06 <Vorpal> that is way more southern than Sweden
19:23:32 <fizzie> Sadly, it's not just about latitude.
19:23:37 <Vorpal> Taneb, Today's temperature peaked at about 22 C
19:23:42 <Vorpal> perfect for shorts
19:23:50 <Vorpal> hm 21 C even
19:23:59 <Vorpal> don't claim that is too cold for shorts
19:24:05 -!- FreeFull has joined.
19:24:19 <mroman> What's 411?
19:24:25 <Taneb> Okay, I'm making excuses
19:24:29 <Taneb> mroman, a number
19:24:34 <Taneb> 407 + 4
19:24:41 <fizzie> I don't wear shorts either, even though climate here is pretty close to Sweden.
19:24:43 <mroman> A.
19:24:44 <Vorpal> 406+5
19:24:47 <fizzie> (More or less.)
19:24:53 <mroman> A telephone number for information
19:25:05 <Vorpal> don't think so
19:25:14 <Taneb> You're in... Switzerland, right?
19:25:22 <fizzie> It's that in the states.
19:25:28 <Taneb> I don't think many of us will have access to that number
19:25:39 <Vorpal> fizzie, you have way more lakes, surely you have more mosquitos?
19:26:21 <mroman> If anything, it is a US telephone number, yes.
19:26:25 <fizzie> Vorpal: I'm not sure if that qualifies as "climate", especially when it comes to basic stuff like temperature. But probably, yes.
19:26:38 <mroman> give someone the 411 on something
19:26:44 <Vorpal> fizzie, well it qualifies when it comes to leg protection from said insects
19:26:46 <mroman> American Slang I guess.
19:27:00 <Taneb> Something to do with drugs, I think?
19:27:05 <Vorpal> fizzie, I always understood that the mid-southern part of Finland was pretty much a fractal pattern of forest and lakes
19:27:08 <Vorpal> is that correct
19:27:36 <fizzie> mroman: It's also a subsampling format. You can have YUV411, though things like YUV422 (or is that 420?) are more popular, I guess.
19:27:59 <Vorpal> fizzie, does that determine how many bits each field has?
19:27:59 <mroman> It's a scene in family guy.
19:28:07 <mroman> "yo did y'all check me when that hottie was all up in my
19:28:08 <mroman> coolade, yeah I was looking to break off a little
19:28:08 <mroman> something something but my crew gave me the 411 on that skank
19:28:08 <mroman> that she's all about the bleng bleng."
19:28:56 <Vorpal> fizzie, also I guess assembly is over now, how was it this year?
19:29:49 <fizzie> Vorpal: It's a relative sampling rate thing. 4:1:1, meaning U/V get sampled one quarter as often as Y. (Or Y four times as often as U/V, equivalently.)
19:29:59 <Vorpal> heh
19:30:05 <Vorpal> what is Y now again
19:30:09 <fizzie> Luminance.
19:30:13 <mroman> The second scene in which Chris is talking ghetto style I don't understand a word :(
19:30:17 <fizzie> U/V are the two chroma components.
19:30:20 <Vorpal> ah
19:30:33 <Vorpal> fizzie, which represent what in this case? I don't remember
19:30:38 <Vorpal> blue and red?
19:30:52 <oerjan> <fizzie> NASA's "Curiosity" is landing in ten and a half hours, [...] <-- that late? i was wondering if it had already happened...
19:34:19 <fizzie> Vorpal: It's not exactly very easy to say, but with U=0, the V axis goes from cyan (negative) to red (positive), and with V=0 the U axis goes from a greenish thing (negative) to violet (positive).
19:34:50 <Vorpal> hm
19:34:58 <fizzie> Vorpal: And yes, the lake thing is correct for a suitable value of "mid-southern". The coast areas aren't that lakey.
19:34:59 <Vorpal> that is pretty strange
19:37:03 <oerjan> > 59/88
19:37:04 <lambdabot> 0.6704545454545454
19:37:58 <Vorpal> fizzie, is it pine forest?
19:38:11 <Vorpal> or trees with proper leaves?
19:38:18 <Vorpal> or mixed?
19:40:59 <FreeFull> What is lambdabot written in?
19:41:17 <zzo38> I think it is Haskell
19:41:55 <FreeFull> Haskell isn't very esoteric
19:41:58 <Vorpal> oerjan, what does that ratio signify
19:42:04 <Vorpal> FreeFull, the bot is also in #haskell though
19:42:30 <Vorpal> also EgoBot pertain to esolangs but they are not written in them
19:42:33 <fizzie> Vorpal: Well, there's a reasonable amount of birch and such. The mixture ratios change as you go northwards, though.
19:42:33 <fizzie> Enough birch to make those things that we use to whip ourselves in the sauna, at least. :p
19:42:35 <Vorpal> HackEgo is just cool
19:42:59 <FreeFull> You could also use willow
19:43:01 <Vorpal> fizzie, surely it go back to birch even further to the north?
19:43:15 <Vorpal> Also birch is terrible.
19:43:21 <Vorpal> due to allergy
19:43:37 <FreeFull> Or hazel
19:43:52 <FreeFull> I guess hazel would be bad for allergic people
19:43:55 <FreeFull> Willow migth be too
19:43:58 <Vorpal> no problem with hazel personally
19:44:03 <Vorpal> just birch
19:44:03 <FreeFull> might*
19:44:17 <Vorpal> anyway why would you whip yourself in a sauna
19:44:21 <Vorpal> it sounds very strange
19:44:25 <fizzie> Vorpal: I suppose, but the lake concentration also falls before that. And there's a different kind of birch up north. I don't know the English names.
19:44:33 -!- ogrom has quit (Quit: Left).
19:44:49 <Vorpal> fizzie, I thought they were the same genetically?
19:44:51 <fizzie> http://en.wikipedia.org/wiki/Finnish_sauna#Finnish_sauna_customs "Occasionally one uses leafy, fragrant boughs of silver birch called vihta in West Finland and vasta in East Finland to gently beat oneself. This has a relaxing effect on the muscles and also helps in calming the effects of mosquito bites."
19:44:52 <fizzie> There's a picture tool
19:45:07 <Vorpal> fizzie, The smaller size being a pure environmental thingy
19:45:58 <fizzie> Of the thing, not a person using it.
19:45:58 <fizzie> (And I have a light birch pollen allergy too, but not enough to be really annoying.)
19:46:15 <fizzie> I guess they could be.
19:46:21 <fizzie> There's a different Finnish name.
19:46:38 <fizzie> But of course those were given long before genetics.
19:47:11 <Vorpal> fizzie, "It is usually considered especially rude to swear in sauna, even in company that does not usually shy on swearing." really?
19:47:24 <fizzie> I haven't noticed that. :p
19:47:36 <fizzie> But it could be true somewhere.
19:47:40 <Vorpal> hm
19:47:51 <Vorpal> add citation needed then
19:49:54 <fizzie> I don't hear terribly much swearing anywhere, so I probably wouldn't have noticed.
19:50:03 <Vorpal> "Foreign visitors to Finland often get invited into the sauna. This may even happen after business negotiations and other such events. On these occasions it may be acceptable to refuse, although it may not impress one's Finnish hosts. Such an invitation in a business setting may indicate that the negotiations have gone well and a joint business effort is anticipated." <-- really?
19:50:28 <Vorpal> hm that whole section on the wiki sounds so weird
19:50:40 <fizzie> Well, the first sentence at least is true as far as I know.
19:50:48 <Vorpal> of that quote?
19:50:52 <fizzie> Yes.
19:50:54 <Vorpal> right
19:51:11 <fizzie> And the second too, I believe, though I haven't been part of real business negotiations ever.
19:51:17 <Vorpal> of course, every country try to fool foreign people into trying dubious local customs
19:51:25 <fizzie> I would think it's always acceptable to refuse, though.
19:51:58 <Vorpal> anyway we have saunas in Sweden too (called "bastu") but we don't go so absurd about them
19:52:02 <Vorpal> personally I don't like them
19:52:44 -!- elliott has joined.
19:52:51 <elliott> Deewiant: I believe it was https://github.com/bmatzelle/gow.
19:53:06 <Taneb> elliott, is mcmap alive?
19:53:21 <elliott> Well, uh. That is to say... ask fizzie?
19:53:28 <Taneb> fizzie, is mcmap alive?
19:53:33 <oerjan> Vorpal: mercury's day / mercury's year, see today's iwc annotation
19:53:45 <Taneb> I never realised "fizzie" is shorter than "elliott"
19:53:58 <augur> where is ski! D:
19:54:02 <Vorpal> oerjan, hm?
19:54:11 <Vorpal> haven't been reading IWC regularly since it ended
19:54:17 <Vorpal> also I'm just about to go to bed
19:54:18 <Vorpal> so eh
19:54:33 <Taneb> I still get the RSS :)
19:54:46 <Phantom_Hoover> There's no way it'll be fully compatible with the latest MC, but it might just be a matter of adding new block types.
19:54:57 <elliott> Phantom_Hoover: it will almost certainly be more involved than that
19:55:03 <Taneb> Phantom_Hoover, they've changed the map layout since then
19:55:30 <Phantom_Hoover> Then it will be... difficult.
19:55:34 <Vorpal> is 1.3 out?
19:55:34 <Vorpal> hm
19:55:46 <Taneb> From MCRegion to Anvil
19:55:59 <Taneb> Back in 12w07a
19:56:06 <Taneb> And then 1.2
19:56:09 <Vorpal> as a format anvil is actually pretty reasonable mostly
19:56:13 <Vorpal> unlike some of the old ones
19:56:18 <Phantom_Hoover> Yeah you're probably going to have to rewrite it.
19:56:23 <fizzie> I would also be a bit surprised if someone would actually consider "willingness to go to sauna with me" a relevant criterion when making a business deal.
19:56:50 <Taneb> Everyone wants to go to the sauna with fizzie.
19:57:02 <Taneb> Everyone.
19:57:03 <elliott> Phantom_Hoover: not rewrite
19:57:10 <Phantom_Hoover> Um?
19:57:15 -!- derdon has joined.
19:57:21 <Taneb> elliott, fizzie, what's it written in?
19:57:29 <Phantom_Hoover> If the map has changed format completely that entire part of it will need reworking.
19:57:32 <elliott> Taneb: C
19:57:32 <Phantom_Hoover> Taneb, C.
19:57:34 <elliott> Phantom_Hoover: yes
19:57:38 <elliott> Phantom_Hoover: how much do you know about the mcmap source
19:57:47 <Taneb> Hey, that's a language I meant to learn at some point
19:57:50 <Phantom_Hoover> OK sorry.
19:57:54 <elliott> specifically where do you get the impression the map format parser is a sufficiently large portion of the code that you'd need to rewrite mcmap
19:58:04 <Phantom_Hoover> s/it/the entire map handling code/
19:58:04 <elliott> it's abstracted enough that that would not be necessary at all, probably the changes would be localised to a few files
19:58:08 <Phantom_Hoover> That was bad wording, I admit.
19:58:10 <Taneb> MCRegion and Anvil are quite similar, too
19:58:16 <fizzie> You could even go as far as to say that it would be slightly unprofessional.
19:58:18 <elliott> the main problem would be the larger maps
19:58:49 <fizzie> (I seem to be very lagged here. Like five minutes late, judging from what fungot sees.)
19:58:50 <fungot> fizzie: simon, saint, fnord on the evening of may 14, 1908, to indicate to the public safety suffers any detriment, the state of feeling with regard to such the demands of the people at large, or from one race of men living in that village in more than, two years. this is the way in which lord bacon thus describes the logomachies of the schoolmen. and of a large part of our fnord but i cannot just now touch it. it is this tempe
19:59:39 <Taneb> fungot, tell fizzie to communicate USING THE POWER OF FUNGOT
19:59:41 <fungot> Taneb: after a due interval the wines began to come in; and the volume never appeared. an ancient writer, plutarch, i think, the argument against mr bentham's doctrine is as strong as any sober man would allow himself to use concerning locke or bacon. the westminster reviewer we have quoted from dryden the case is widely different. their connection was close enough to allow of mutual observation and improvement, of the illustra
19:59:53 <Taneb> ^style
19:59:54 <fungot> Taneb: the purpose of turning out and keeping out the whigs. i also wish to thank mr bentham for undertaking his defence, insisted that no speech or motion which he had already begun to operate. who can be more true. barere was, like chloe, false and fickle as he was eleven years ago.
20:00:02 <Taneb> ^style
20:00:02 <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
20:00:06 <fizzie> Hey, now everything came flooding in.
20:00:10 <Taneb> That was odd
20:00:16 <Taneb> fizzie, possible glitch
20:00:29 <fizzie> I also took a look at the new map format once, and the related mcmap changes seemed not terribly impossible, but there was certainly some work involved. I'd be more interested to do it if I actually played any Minecraft.
20:01:09 <Phantom_Hoover> Taneb, I forget, did you use it after elliott added mob and item tracking?
20:01:17 <Taneb> Phantom_Hoover, I think so
20:01:18 <Phantom_Hoover> Because those were awesome.
20:01:31 <oerjan> @tell Vorpal <Vorpal> haven't been reading IWC regularly since it ended <-- oh, there are still annotations (almost) every sunday, big ones. also he adds extra background comments to the currently rerun comics
20:01:32 <lambdabot> Consider it noted.
20:02:19 <fizzie> There was a minecraft clone in Assembly gamedev, except you crafted a spaceship, put in thrusters and whatevers, bound keys to them, and then went on and flew the thing.
20:03:41 <elliott> @tell Vorpal (Not annotations of anything in particular.)
20:03:41 <lambdabot> Consider it noted.
20:04:39 <Taneb> Oh dear god
20:04:44 <Taneb> They're singing Black Eyed PEas
20:04:46 <Vorpal> oerjan, I know
20:04:47 <lambdabot> Vorpal: You have 2 new messages. '/msg lambdabot @messages' to read them.
20:04:49 <oerjan> @tell Vorpal Yeah the new Sunday stuff is more like a popular science blog
20:04:49 <lambdabot> Consider it noted.
20:04:54 <oerjan> oops :P
20:05:02 <Vorpal> @messages
20:05:03 <lambdabot> oerjan said 3m 31s ago: <Vorpal> haven't been reading IWC regularly since it ended <-- oh, there are still annotations (almost) every sunday, big ones. also he adds extra background comments to the
20:05:03 <lambdabot> currently rerun comics
20:05:03 <lambdabot> elliott said 1m 21s ago: (Not annotations of anything in particular.)
20:05:03 <lambdabot> oerjan said 13s ago: Yeah the new Sunday stuff is more like a popular science blog
20:05:04 <Taneb> @tell Vorpal it's got art and culture stuff too, a bit
20:05:04 <lambdabot> Consider it noted.
20:05:14 <Vorpal> very funny
20:05:15 <lambdabot> Vorpal: You have 1 new message. '/msg lambdabot @messages' to read it.
20:05:18 <Vorpal> @messages
20:05:18 <lambdabot> Taneb said 14s ago: it's got art and culture stuff too, a bit
20:05:25 <Taneb> Oh good, they've switched to Queen
20:05:34 <Taneb> But they're the US!
20:05:38 <Taneb> Queen's British!
20:05:56 <Vorpal> oerjan, I said I didn't read it regularly
20:06:00 <Vorpal> not that I didn't read it at all
20:06:27 <elliott> @tell Vorpal HELLO
20:06:28 <lambdabot> Consider it noted.
20:06:31 <elliott> @tell Vorpal WHAT'S UP ?: ? ? ? ? ? ? ? ? ?? ?
20:06:32 <lambdabot> Consider it noted.
20:06:34 <elliott> @tell Vorpal ARE YOU HAVING A NICE DAY
20:06:35 <lambdabot> Consider it noted.
20:06:39 <pikhq> Taneb: However, Queen is well-liked in the US.
20:06:43 <Vorpal> @tell elliott You are being a jerk now
20:06:44 <oerjan> OKAY
20:06:44 <lambdabot> Consider it noted.
20:06:48 <Taneb> That's not the point!
20:06:52 <Taneb> It's the OLYMPICS!
20:06:59 <oerjan> @tell Vorpal Should I ban him?
20:07:00 <lambdabot> Consider it noted.
20:07:13 <pikhq> And the fundamental property of US culture is it's the amalgamation of everyone else's.
20:07:23 <Vorpal> @tell oerjan Can I save that for a time when he is more annoying?
20:07:24 <lambdabot> Consider it noted.
20:07:44 <elliott> @tell Vorpal JOKE'S ON OERJAN I JUST /PART ALL THE TIME ANYWAY
20:07:45 <lambdabot> Consider it noted.
20:07:52 <elliott> @ASK VORPAL I CANNOT BE STOPPED??? ? ?
20:07:53 <lambdabot> Unknown command, try @list
20:07:55 <elliott> @HELP
20:07:56 <lambdabot> Unknown command, try @list
20:07:58 <elliott> @list
20:07:59 <lambdabot> http://code.haskell.org/lambdabot/COMMANDS
20:08:01 <oerjan> @tell Vorpal MAYBE
20:08:01 <elliott> @thanks
20:08:01 <lambdabot> Consider it noted.
20:08:02 <lambdabot> you are welcome
20:08:06 <elliott> haha
20:08:07 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
20:08:08 <elliott> i was not expecting that
20:08:11 <elliott> @messages???
20:08:12 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
20:08:13 <Taneb> No, that's the british culture! Freddy Mercury was born in Zanzibar!
20:08:20 <elliott> @messages
20:08:21 <lambdabot> You don't have any new messages.
20:08:23 <Vorpal> @tell elliott Indeed you part, but I'll use it at some point you don't want to part.
20:08:23 <elliott> WHER,S MY MESAGES
20:08:24 <lambdabot> Consider it noted.
20:08:24 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
20:08:30 <elliott> @tell Vorpal I ALWAYS WANT TO PART
20:08:31 <lambdabot> Consider it noted.
20:08:37 <Vorpal> @messages
20:08:38 <lambdabot> elliott said 2m 10s ago: HELLO
20:08:38 <lambdabot> elliott said 2m 7s ago: WHAT'S UP ?: ? ? ? ? ? ? ? ? ?? ?
20:08:38 <lambdabot> elliott said 2m 4s ago: ARE YOU HAVING A NICE DAY
20:08:38 <lambdabot> oerjan said 1m 39s ago: Should I ban him?
20:08:38 <lambdabot> elliott said 53s ago: JOKE'S ON OERJAN I JUST /PART ALL THE TIME ANYWAY
20:08:40 <lambdabot> oerjan said 37s ago: MAYBE
20:08:41 <Vorpal> hm
20:08:42 <lambdabot> elliott said 8s ago: I ALWAYS WANT TO PART
20:08:55 <Vorpal> highlight spam
20:08:58 <Taneb> /part every day?
20:09:06 <Taneb> OH NO THAT IS BLACK EYED PEAS
20:11:05 <Sgeo> I like Black Eyed Peas
20:11:06 <oerjan> HAN LOVET MEG EN RING I ZANZIBAR; MEN ZANZIBAR, HVOR ER NÅ DET?
20:11:07 <lambdabot> oerjan: You have 1 new message. '/msg lambdabot @messages' to read it.
20:11:12 <oerjan> @messages
20:11:12 <lambdabot> Vorpal said 3m 49s ago: Can I save that for a time when he is more annoying?
20:11:31 <Vorpal> oerjan, lyrics?
20:12:26 <Taneb> @tell SuperTod Nobody even knows who you are here! But I do! This is probably a long time ago!
20:12:27 <lambdabot> Consider it noted.
20:12:52 <Taneb> The odds of SuperTod ever joining a channel with lambdabot in it are slim
20:13:07 <Taneb> The odds of him even being on IRC at any given time are pretty slim, too
20:13:09 <oerjan> Vorpal: yes, some 1960's or so norwegian hit
20:13:19 <Vorpal> I see
20:13:55 <oerjan> hm being a norwegian hit, there's a significant chance it's translated
20:14:19 <Vorpal> from English?
20:15:41 <oerjan> or whereever. hm that 1960 link was a bad one, maybe it's even older
20:17:35 <oerjan> no, it was 1960, http://www.youtube.com/watch?v=i4cgYJH1WHo&feature=related
20:17:55 <oerjan> (at your own risk)
20:19:00 <oerjan> my god that's cheesy
20:20:32 <oerjan> (also, accordion)
20:24:25 <Gregor> I LOVE ACCORDION
20:24:26 <Gregor> *click*
20:24:40 <oerjan> r.i.p. Gregor
20:25:33 <Gregor> Needs moar… something.
20:25:54 <oerjan> ukulele, perhaps?
20:25:55 <ion> For all,,,,,,,“Finns” who,,,,,,,,,enjoy “grammar”: https://www.facebook.com/pages/105-kunnian-P%C3%A4iv%C3%A4%C3%A4-Talvisodan-Sankareille/172253096132410
20:26:10 <fizzie> Vorpal: Oh, right, you also asked about Assembly. Well... the 1k was nice (even if ~all the entries were one effect wonders, understandably), and the 4k/demo quality was sort of generally good, but there was nothing sort of amazingly outstanding like there has been in other years. (Perhaps because ASD didn't compete.)
20:27:35 <elliott> 1k is so bloated.
20:27:39 <elliott> 512 bytes: the ideal??
20:27:49 <fizzie> There have been a few 256b compos, I think.
20:27:54 <elliott> (With no DOS calls, naturally.)
20:27:59 <elliott> (So you can use it as a boot sector.)
20:28:20 <fizzie> pouet has size categories 32b, 64b, 128b, 256b, 512b, 1k, 4k, and so on.
20:28:31 <elliott> The 32b ones are a bit silly.
20:28:49 <fizzie> 25 entries in the 32b category.
20:29:01 <ion> elliott: Yeah, you can’t fit a lot into 4 bytes.
20:29:16 <fizzie> ion: It's a lowercase b for bytes. :p
20:29:54 <fizzie> Oh, sorry, 25 was just first page; there's six pages.
20:30:25 <fizzie> Some of those are 16-byte entries, though.
20:31:01 <Gregor> oerjan: http://www.youtube.com/watch?v=pkV6hX66HO0 It is missing being this.
20:34:59 <oerjan> OKAY
20:37:15 -!- augur has quit (Remote host closed the connection).
20:37:41 -!- augur has joined.
20:37:49 <zzo38> What computers are these being targeting?
20:37:53 <zzo38> And what programs are they?
20:37:59 <Sgeo> Grah, the IRC<->Jabber bridge in #tcl keeps tricking me into thinking people are talking
20:38:26 <FreeFull> Lol
20:39:06 <FreeFull> ^bf +.
20:39:06 <Gregor> Sgeo: Use this simple algorithm to determine instead: Has anyone talked in #tcl? -> No
20:39:06 <fungot> <CTCP>
20:39:41 <Sgeo> Gregor, #tcl is actually rather active sometimes
20:40:10 <elliott> FreeFull: Hey now, you'll summon THE STAFF.
20:40:21 <Sgeo> I didn't mean at this time though, PH
20:40:24 <FreeFull> Woops
20:40:52 <Taneb> What on earth is a CTCP
20:41:00 <Phantom_Hoover> I had absolutely no idea what an IRC <-> Jabber bridge was.
20:41:01 <FreeFull> Should have done that in query
20:41:01 <elliott> it's a ctcp
20:41:03 <Gregor> This channel does not need another STAFF infection.
20:41:05 <elliott> FreeFull: i'm kidding
20:41:06 <Phantom_Hoover> I wanted to find out.
20:41:17 <Taneb> Gregor, has that happened before?
20:41:19 <elliott> FreeFull: one time someone made fungot make a ctcp query and some unknown person complained about it to freenode staff for no apparent reason
20:41:20 <fungot> elliott: the success which has crowned the efforts to weld into one community the peoples of its two great races. our final halting-place was, by fnord this great law in an essential part in true economy. if it had happened, what hope could we have possibly got on, if our troops had exterminated them all, joining fact with theory, and take hold of another.
20:41:25 <Sgeo> Phantom_Hoover, connects an IRC and a Jabber chatroom
20:41:26 <Gregor> !bf +.
20:41:27 <FreeFull> Phantom_Hoover: Jabber is a different messaging protocol
20:41:29 <EgoBot> ​.
20:41:30 <elliott> so they told fizzie to remove it from fungot and then idled in the channel for like months
20:41:32 <fungot> elliott: 2. a lofty power of generalisation, both in their rude, broken, fnord way which, if there was such a state unless he had read it with any attention, he means what is fnord called " first fnord because of their aptitude for it, nor the energy of a monarchy, and every bird of prey, and every part of the town, where the place, where were collected together the wisdom, the moderation, and the savage wilderness, to the serp
20:41:48 <FreeFull> elliott: lol
20:42:01 -!- augur has quit (Ping timeout: 250 seconds).
20:42:07 -!- epicmonkey has quit (Ping timeout: 240 seconds).
20:42:08 <Phantom_Hoover> Sgeo, well that doesn't sound annoying at all.
20:42:25 <Sgeo> Phantom_Hoover, it speaks outloud when someone on the Jabber side joins or leaves
20:45:40 <Phantom_Hoover> elliott, wait why was that objectionable again.
20:46:07 <Phantom_Hoover> Wasn't it something to do with an ancient version of mirc having a potential exploit or something?
20:46:46 <elliott> oh, right, it was that ctcp that made a lot of routers crash
20:46:50 <elliott> except it was fixed by then i think
20:47:07 <Phantom_Hoover> But why is it a problem if bots can be made to do it?
20:47:10 <FreeFull> The DCC 0.0.0.0 0 one?
20:47:33 <Phantom_Hoover> Surely Malicious O'Hackerty is just going to send it by themselves?
20:47:44 <elliott> Phantom_Hoover: yes, this is what i said
20:47:48 <elliott> FreeFull: stopkeylog or something
20:47:52 <elliott> sendkeylog?
20:48:13 <FreeFull> Ah, overzealous antivirus trigger?
20:49:15 <elliott> something like that, yes
20:49:22 <elliott> Deewiant: Of course it seems gow has not gotten a release for like 9 months :(
20:50:55 -!- azaq23 has quit (Quit: Leaving.).
20:51:25 <elliott> Deewiant: What was that alternate terminal thing for Windows?
20:52:17 <fizzie> zzo38: The 32-byte programs? There's quite a variety of platforms; on the first page, DOS, VIC-20, C64, ZX Spectrum, Atari. Later on there's a Windows entry, though it seems to be a cheat.
20:52:37 <Taneb> 32 byte programs?
20:52:59 <fizzie> Taneb: It's a category at pouet, a demoscene archive/forum/etc. site.
20:54:02 <Taneb> 32 bytes makes 8^32 possible programs in an ideal world
20:54:08 <Taneb> > 8 ^ 32 :: Integer
20:54:09 <lambdabot> 79228162514264337593543950336
20:54:47 <fizzie> Uh... don't you mean 256^32?
20:54:59 <Taneb> Yes
20:55:01 <fizzie> Or 2^(8*32) if you want to say it like that.
20:55:09 <Taneb> > 256 ^ 32
20:55:10 <lambdabot> 115792089237316195423570985008687907853269984665640564039457584007913129639...
20:55:24 <Taneb> I think I meant (2 ^ 8) ^ 32
20:56:32 <Taneb> > log (256 ^ 32) / log 10
20:56:33 <lambdabot> 77.06367888997917
20:56:41 <fizzie> > 256**32
20:56:42 <lambdabot> 1.157920892373162e77
20:56:43 <fizzie> The easy way.
20:57:07 <Taneb> I'm not a huge fan of scientific notation
20:57:23 <Taneb> For personal reasons
20:57:35 <Taneb> i.e. it confuses me
21:00:38 <oerjan> elliott: it was EgoBot or HackEgo, not fungot.
21:00:39 <fungot> oerjan: an inspection of the constitution, which we would never have attained the distinction of races. fitness is henceforth to be the boswell of the long line of julian nobles. some violent convulsion is expected."
21:00:54 <oerjan> which is why fungot still allows ctcp
21:00:55 <fungot> oerjan: thus juvenal immortalised the obsequious senators who met to decide the question; and proceeds to settle the order of nature, that procured to them a very wise body. in our judicial, we have in a libel, 1st. the object of our journey, and you will find if you search for it.
21:01:01 <oerjan> ^show
21:01:01 <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
21:01:34 <oerjan> !help
21:01:35 <EgoBot> ​help: General commands: !help, !info, !bf_txtgen. See also !help languages, !help userinterps. You can get help on some commands by typing !help <command>.
21:01:50 <oerjan> !bf_txtgen ACTION
21:01:55 <EgoBot> ​78 +++++++++++[>+++++++>++++++>+++>+<<<<-]>>-.++.<+++++++.>++++++.++++++.-.>-.>-. [817]
21:02:30 <fizzie> I can see where this is going.
21:02:41 * oerjan cackles evilly
21:02:55 <fizzie> Remeber that it has an extra newline after.
21:03:08 <fizzie> (bf_txtgen output, that is.)
21:04:30 <oerjan> ^def me bf +.++++++++++[>+++++++>++++++>+++>+<<<<-]>>-.++.<+++++++.>++++++.++++++.-.>-.,[.,]+.
21:04:30 <fungot> Defined.
21:04:35 <oerjan> ^me is testing
21:04:36 * fungot is testing
21:05:00 <oerjan> that went unreasonably smoothly
21:05:29 -!- Vorpal has quit (Ping timeout: 240 seconds).
21:05:38 <Taneb> ^me is on fire
21:05:39 * fungot is on fire
21:05:57 <Taneb> You were saying?
21:06:26 <fizzie> ^bf +.++++++++++[>+++++++>++++++>+++<<<-]>>-.++.<+++++++.>++++++.++++++.-.>-.,[.,]+.!is testing
21:06:26 * fungot is testing
21:06:28 <oerjan> YOU MANIACS, YOU BLEW IT UP
21:06:35 <fizzie> ^def me bf +.++++++++++[>+++++++>++++++>+++<<<-]>>-.++.<+++++++.>++++++.++++++.-.>-.,[.,]+.
21:06:36 <fungot> Defined.
21:06:41 <fizzie> OMG-optomized.
21:06:46 <oerjan> wat
21:06:58 <fizzie> The fourth cell of bf_txtgen was only used for the newline.
21:07:02 <oerjan> ah
21:07:02 <fizzie> Which happens almost all the time.
21:07:07 <fizzie> Since it's so far from the other characters.
21:11:15 <quintopia> ^me feels like a new bot!
21:11:15 * fungot feels like a new bot!
21:11:34 <fizzie> ^save
21:11:35 <fungot> OK.
21:12:26 <quintopia> where in fungespace do bf macros get written?
21:12:42 <oerjan> ^source
21:12:43 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
21:13:18 <oerjan> something seems not to be loading
21:13:36 <fizzie> oerjan: There's an issue. You can work around it by using IPv6. (Happy to help.)
21:13:44 <oerjan> OKAY
21:14:47 <fizzie> quintopia: Somewhere in the negative rows.
21:15:24 <elliott> <oerjan> elliott: it was EgoBot or HackEgo, not fungot.
21:15:25 <fungot> elliott: i have just described. these schools for both sexes. this, i promise him that, in places where there is no land where paper exists to print on, where it is the scriptural statute of limitations. after that you hang them up to let them season.
21:15:31 <elliott> I am pretty sure it is not.
21:15:41 <elliott> fizzie: You were told to fix the CTCP thing, yes/
21:15:42 <elliott> *?
21:16:03 <quintopia> fizzie: is there any stuff that gets written to columns?
21:16:28 <oerjan> elliott: i am pretty sure it was Gregor who was directly accosted, not fizzie
21:16:39 <fizzie> elliott: No, not by anyone official. People on the channel recommended, after all the hulabaloo about some other bot.
21:16:46 <fizzie> I still haven't managed, though.
21:16:55 <elliott> Hmm.
21:16:58 <elliott> Okay.
21:17:06 <Gregor> I was the one attacked by the STAFF.
21:17:24 <oerjan> fizzie: wait, so the saved state won't show up in the source link?
21:17:54 <quintopia> Gregor: freenode staff? what was misbehaving?
21:17:54 <oerjan> i guess that's for the best, but still.
21:18:19 <fizzie> oerjan: Yes. And it wouldn't, anyway; that's just the version-controlled source. ^save writes a state file (fungot.dat) which is loaded at start time.
21:18:20 <fungot> fizzie: sympathy, on the whole a good or an evil, which is a model in its kind, is painfully diffuse and languid. the animali parlanti of casti is perfectly intolerable. i admire the dexterity of the plot, and the democracies under its protection. it is plain therefore, that the machine of a free commonwealth, who have seen much of the criticism by which their manner has been fashioned. from outrageous absurdity they are preser
21:18:36 <oerjan> aha
21:19:23 <fizzie> quintopia: Uh, well. I mean. Of course some columns are involved, too. But there isn't anything for which space would be allocated in "full columns", so to speak. (And the programs aren't exactly full rows either; it's rows < 0 and columns >= 0, so program storage eats up one quadrant.)
21:19:38 <fizzie> Or maybe it starts a bit higher up than 0. But anyway.
21:21:06 <quintopia> what goes in rows < 0 columns < 0? rows >=0 columns < 0?
21:21:51 <fizzie> Nothing in rows < 0, columns < 0, I think. Very little in columns < 0 at all, except for some isolated rows, like some of the underload interpreter stuff.
21:21:54 <quintopia> rows > fungot length columns >=0?
21:21:55 <fungot> quintopia: i will teach you how it should be discovered to be no better than an old fnord with a fnord skill in expressing them. fnord, who in a few hours hence, the grand security for the rights of the people is against them, more from a wish to become intimately acquainted with the general happiness are even now promoting the general happiness to the very life of such an instrument as this to talk about--i do not say there ar
21:22:08 <elliott> ^style
21:22:08 <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
21:22:21 <Taneb> The ought to be an itidus style
21:22:48 <fizzie> quintopia: Oh no, I'm wrong: in fact the stored commands go to rows >= 2000, columns >= 0. Fungot length is assumed to not grow longer. (Though it's an easy change to bump the starting address up a bit.)
21:23:04 <fizzie> quintopia: There's something in negative rows, though. Something related to the loop avoidance.
21:23:51 <fizzie> Underload stack (on row 9) grows left, starting from column 0.
21:24:08 <fizzie> (Mainly because the STRN ops always read left-to-right, so some things were easier that way.)
21:24:45 <fizzie> The current underload program can also grow to columns < 0, I suppose.
21:24:47 <quintopia> what is the format of fungot.dat? does it write everything as it's actually oriented in space with some kind of marker for where row 0, column 0 is?
21:24:47 <fungot> quintopia: these metaphysic rights entering into common life, are variously mixed and modified, enjoyed in very different accents, fnord by fnord of rights. this circumstance, which is fnord to a ferocious dog. to come into competition with them.
21:25:36 <fizzie> quintopia: No, things get (manually) serialized. It's a text-based, line-oriented format. It only saves the ^def commands and not much more.
21:25:45 <quintopia> oh
21:25:50 <fizzie> (The ^ignore string is not saved, for example; another thing on the TODO list.)
21:25:50 <quintopia> that was my other guess
21:26:01 <quintopia> oops
21:26:22 <fizzie> Oh, and it does save the 'str' entries.
21:26:28 <fizzie> For some strange reason.
21:27:16 <fizzie> So 10 first lines are str:0 .. str:9, then come the programs, with command name on one line, implementation language identifier (0 = brainfuck, 1 = underload) on second, and then the body stored in a language-specific way.
21:28:06 <fizzie> (brainfuck programs with the bytecode as one-ascii-number-per-line terminated by a line with a 0, underload programs as just the program text on one line IIRC.)
21:28:51 <quintopia> why the strange storage method for bf?
21:28:56 <fizzie> Oh, it's the underload program text as one character (as a decimal number) per line, for some reason.
21:29:00 <fizzie> Which is perhaps even stranger.
21:29:16 <quintopia> weird
21:29:21 <fizzie> I suppose I wanted to be ready for people embedding strange characters.
21:29:28 <fizzie> The bytecode itself might have newlines, for example.
21:29:52 <fizzie> +++++++++ turns into cells [X][10] where X is some number from 1 to 6 or so.
21:30:16 <fizzie> 2, apparently.
21:32:19 <fizzie> It uses FILE:G (a fgets, basically) and STRN:V (strtol) to get back to cells.
21:32:38 <fizzie> Easy to implement, not such an efficient format storage-wise.
21:32:46 <fizzie> $ wc -l fungot.dat
21:32:46 <fizzie> 7118 fungot.dat
21:32:47 <fungot> fizzie: it is true or not, the frankness with which i may know to be erroneous, i do not attack the founders of the government, when mr. eng nye, who hadn't any moral sense at all, i never use slang to an interviewer or anybody else concerned had a right to do what we can to have the franchise? all the causes which have created and fostered this spirit, i, for one, a commission in the army, he saw with sorrowful heart the blazi
21:33:32 -!- zzo38 has quit (Remote host closed the connection).
21:38:41 <fizzie> (Can't really have embedded newlines in underload programs, but it's possible I share the serialization/deserialization code for both program types.)
21:39:15 -!- Taneb has quit (Ping timeout: 244 seconds).
21:39:22 <FreeFull> ^style jargon
21:39:23 <fungot> Selected style: jargon (UNIX-HATERS mailing list archive)
21:41:45 <fizzie> I think elliott must've contributed that style.
21:41:53 <fizzie> It's not often used.
21:41:57 <fizzie> fungot: What do you sound like?
21:41:58 <fungot> fizzie: " oh, actually, she said " welcome class of ' em every time that postdates 1982, but
21:42:02 <elliott> fizzie: No.
21:42:09 <elliott> I just told you to replace the Jargon File one with the UNIX-HATERS one.
21:42:12 <fizzie> Oh.
21:42:12 <elliott> So you did, and, uh, kept the name.
21:42:16 <fizzie> Okay.
21:42:24 <fizzie> Well, that's what "replace" means.
21:42:32 <oerjan> tru dat
21:42:33 <fizzie> I was kind of wondering, though.
21:42:58 <fizzie> I just remembered it wasn't entirely my idea.
21:43:08 <fizzie> ^style fisher
21:43:09 <fungot> Selected style: fisher (Fisher corpus of transcribed telephone conversations)
21:43:13 <fizzie> This one doesn't get much use either.
21:43:17 <fizzie> It's kind of boring, though.
21:43:25 <fizzie> fungot: Say "umm" or something?
21:43:26 <fungot> fizzie: no it wasn't turkey if i remember correctly
21:43:51 <fizzie> It has a bit of transcription annotations left in it.
21:44:56 <fizzie> You, too, can own a text about turkeys for just $2000.
21:45:13 <fizzie> (That's the total asking price for both halves of it.)
21:45:21 <fizzie> (It's not all about turkeys.)
21:59:09 -!- Taneb has joined.
21:59:50 -!- monqy has joined.
22:08:56 <Phantom_Hoover> ^style homestuck is the best
22:08:56 <fungot> Not found.
22:09:02 <Phantom_Hoover> Dammit.
22:09:04 <Phantom_Hoover> ^style homestuck
22:09:05 <fungot> Selected style: homestuck (Homestuck pages 1901-4673)
22:09:11 <Phantom_Hoover> fungot!
22:09:11 <shachaf> fungot
22:09:12 <fungot> Phantom_Hoover: what, the last one. wait no, that just made you disappear" and stuff.
22:09:12 <fungot> shachaf: enter name.
22:11:58 <Taneb> fungot: Zoosmell Pooplord
22:11:59 <fungot> Taneb: of what??
22:12:10 <Taneb> fungot: of old Hexham Town, of course
22:12:11 <fungot> Taneb: you will be taking that crowbar though because that was stupid, so he can just button it happen already. i dont see him, but he had already been a mass grave
22:12:32 <Phantom_Hoover> fungot, you're a mass grave!
22:12:33 <fungot> Phantom_Hoover: man. it is just another waste of your talents. t)(ose are your black leanings, much as the moon takes liberty. reason. justice. civility. edification. perfection.
22:13:09 <Phantom_Hoover> I think fungot is being racist but I'm not sure.
22:13:10 <fungot> Phantom_Hoover: your name is john. is that correct??
22:13:28 <oerjan> *GASP*
22:13:34 <oerjan> it's all being revealed
22:14:38 <Phantom_Hoover> fungot, oh shit, my cover's blown!
22:14:39 <fungot> Phantom_Hoover: the modus recognizes the drawing, but there it is, in case he doesn't want you to be my next wild presumption.
22:16:11 <FreeFull> Must be the pictionary modus
22:16:53 <Phantom_Hoover> Probably. This style also has a "that sword alone can't stop" but I forget what it is.
22:17:39 <fizzie> fungot: What causes you to be stuck in homestuck?
22:17:40 <fungot> fizzie: name one, the powerful electromagnets concealed in his gesture in retrospect. heavy-handed.
22:17:48 <fizzie> Not that.
22:18:28 -!- Taneb has quit (Read error: Connection reset by peer).
22:19:23 <FreeFull> ^style
22:19:24 <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:19:27 <FreeFull> ^style c64
22:19:27 <fungot> Selected style: c64 (C64 programming material)
22:19:45 <FreeFull> fungot: What is pie?
22:19:45 <fungot> FreeFull: it is often convenient to use dos support" program by mark niggemann, compute!'s second book of vic memory control register b the default position of the dot it is set by sprite-sprite collision interrupt.
22:20:52 <fizzie> fungot: Quote some tables, will you?
22:20:53 <fungot> fizzie: registers affected: a, x, y
22:20:57 <fizzie> Heh.
22:29:30 <fizzie> fungot: That's pretty much all the registers, really. (Discounting stack and the PC, which probably doesn't count.)
22:29:31 <fungot> fizzie: this line is last for a total of 200 numbers in the
22:33:16 -!- stanley has quit (K-Lined).
22:35:25 -!- nooga has quit (Ping timeout: 272 seconds).
22:35:32 <oerjan> hm that's the second time i've seen stanley k-lined
22:35:50 * oerjan wonders what evil he's up to
22:40:15 -!- mig22 has joined.
22:40:16 -!- mig22 has quit (Remote host closed the connection).
22:40:35 -!- mig22 has joined.
22:43:23 -!- copumpkin has changed nick to farooq.
22:44:11 -!- farooq has changed nick to copumpkin.
22:49:33 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
22:51:01 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
22:51:44 -!- nooga has joined.
22:54:30 -!- Abdela has joined.
22:54:59 <fizzie> K-lines of #esoteric, 2010-2012: http://sprunge.us/JABZ
22:55:56 <elliott> only 2010, eh?
22:56:08 <fizzie> I had those handier.
22:57:06 <fizzie> Also the previous ircd might have printed out something different since I see nothing before 2010-05-16.
22:57:28 <fizzie> Yes, it seems to have printed [K-lined] with a lowercase l.
22:58:33 <fizzie> http://sprunge.us/BIde -- my whole set.
22:58:40 <fizzie> Also some change in log formats.
22:59:20 <elliott> I got k-lined?
22:59:30 <elliott> Maybe it was just an excess flood thing back then.
23:00:03 <fizzie> [2009-01-19 15:25:57] < ehird> WTF @ K-LINE
23:00:26 <fizzie> You sent them an email.
23:00:29 <fizzie> Reportedly.
23:00:40 <fizzie> [2009-01-19 15:36:04] < ehird> I've sent an email to kline@freenode.net.
23:00:40 <fizzie> [2009-01-19 15:36:13] < ehird> Very WTFy.
23:00:45 <fizzie> [2009-01-19 15:49:53] ... ehird [n=ehird@eso-std.org] has quit [K-lined]
23:00:45 <fizzie> [2009-01-19 15:51:46] < fizzie> Maybe they didn't like his tone in the email.
23:01:01 <elliott> ugh
23:01:04 <elliott> i was annoying back then
23:01:09 <elliott> now i'm annoying in better ways
23:02:20 -!- Jafet has joined.
23:03:24 <elliott> Deewiant: This thing's bash is 2.03. :(
23:05:58 <Abdela> H
23:06:06 <elliott> Abdela: h
23:06:15 <oerjan> `welcome Abdela
23:06:28 <HackEgo> Abdela: 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:06:33 <Abdela> Sank
23:08:35 <elliott> Deewiant: And a version of make from 1999. Ew.
23:09:07 -!- augur has joined.
23:11:14 <shachaf> elliott: Am I annoying in better or worse ways than I used to be?
23:12:01 <shachaf> elliott: Also did you see dolio's exciting discoveries on type arithmetic?
23:12:12 <shachaf> doliorgey's, that is.
23:13:30 <elliott> Huh?
23:14:29 <shachaf> I guess not, because it was in #-blah.
23:16:23 -!- nooga has quit (Ping timeout: 244 seconds).
23:22:51 -!- Abdela has quit (Quit: Rooms • iPhone IRC Client • http://www.roomsapp.mobi).
23:33:22 -!- pikhq has quit (Ping timeout: 246 seconds).
23:33:25 -!- pikhq_ has joined.
23:49:40 -!- augur has quit (Remote host closed the connection).
23:51:44 <oerjan> > '\0x40'
23:51:46 <lambdabot> <no location info>:
23:51:46 <lambdabot> lexical error in string/character literal at chara...
23:52:09 <oerjan> (that's a "nope")
23:54:41 <elliott> shachaf: Go on, then.
23:54:42 <elliott> > '\x40'
23:54:44 <lambdabot> '@'
23:54:59 <shachaf> elliott: ?
23:55:06 <oerjan> oh
23:55:15 <elliott> shachaf: <shachaf> elliott: Am I annoying in better or worse ways than I used to be?
23:55:15 <elliott> <shachaf> elliott: Also did you see dolio's exciting discoveries on type arithmetic?
23:55:15 <elliott> <shachaf> doliorgey's, that is.
23:55:19 <elliott> Er, the latter two lines.
23:55:40 <shachaf> elliott: GET YOUR COLOUR OUT OF THIS CHANNEL
23:56:02 <oerjan> WE DON'T LIKE COLOURED PEOPLE HERE
23:56:07 <monqy> i like the thingys that render as H for me
23:56:07 <lambdabot> monqy: You have 1 new message. '/msg lambdabot @messages' to read it.
23:56:10 <monqy> "a nice touch"
23:56:24 <shachaf> elliott: http://slbkbs.org/doliorgey-exciting.txt
23:57:32 <shachaf> monqy: That link was for elliott. :-(
23:58:27 <elliott> Well, that mystified me.
23:58:33 <shachaf> What did?
23:59:08 <elliott> The text.
23:59:33 <shachaf> Which part of it?
2012-08-06
00:00:43 <elliott> All of it.
00:01:15 <shachaf> Oh.
00:20:01 -!- Jafet has quit (Quit: Leaving.).
00:25:53 * oerjan suddenly has the realization that in the first olympic games, getting an olympic record did not require breaking a previous one
00:29:21 <coppro> oerjan: *may* not have
00:29:31 <coppro> the record may have been broken in a later run of the same even
00:29:33 <coppro> *event
00:29:47 <coppro> oerjan: moreover, the same is true of any other Games where a sport is added (and that sport has records)
00:32:34 <oerjan> yes. it's just that in norwegian, we borrow the word "rekord" to mean solely the kind of record which you usually get by beating a previous one, so i hadn't really thought that even this had exceptions.
00:33:01 <coppro> oerjan: so wait, "rekord" doesn't apply to the first setting of the record?
00:33:06 <coppro> that seems... weird
00:33:18 <oerjan> yes it does. it's just that this is a very small fraction...
00:33:51 <coppro> ah ok
00:33:54 <coppro> yeah, it's the same in English
00:34:11 <oerjan> in english the word has other uses, though
00:34:27 <coppro> true
00:34:33 <coppro> but in that sense, it means one thing
00:53:12 -!- derdon has quit (Remote host closed the connection).
01:43:36 <shachaf> kmc: http://www.haskell.org/haskellwiki/HaskellImplementorsWorkshop/2012/Schilling
01:45:22 <oerjan> schilling effects
01:47:23 * oerjan realizes ghc is like the borg
01:59:37 <FreeFull> So I am finally doing some networking software
01:59:52 <FreeFull> Going to write an IRC client :D
02:00:40 <FreeFull> Already have it connecting to a host at a port and printing out everything
02:14:06 <coppro> in what language?
02:14:11 <FreeFull> S-Lang
02:14:43 <FreeFull> Prototyping in s-lang and might port to C later
02:30:42 -!- david_werecat has quit (Ping timeout: 264 seconds).
02:35:11 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:35:20 <elliott> hmm, Jafet apparently has the second-longest game on NetHack public servers
02:35:26 <elliott> Jafet is also apparently not in this channel any more
02:35:47 <oerjan> COINCIDENCE?
02:35:50 <oerjan> DUN DUN DUN
02:36:03 -!- pikhq has joined.
02:38:52 -!- pikhq_ has quit (Ping timeout: 246 seconds).
02:49:45 <Sgeo> Just because a language only became decent to program in recently doesn't mean it's inherently a bad language as it is, does it?
02:52:16 -!- zzo38 has joined.
03:14:07 <shachaf> 17:20 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Quit: Leaving.]
03:14:19 <shachaf> For time zone clarification, 20:14 <shachaf> 17:20 -!- Jafet [~Jafet@unaffiliated/jafet] has quit [Quit: Leaving.]
03:17:37 <shachaf> Wow, this channel is full of logreaders.
03:26:16 -!- Phantom_Hoover has joined.
03:27:37 * Sgeo is somewhat confused as to how a Smalltalk... thingy has a git repo
03:28:20 <coppro> shachaf: most of us know how to use ctcp time
03:28:33 <coppro> Sgeo: ... what
03:28:44 <shachaf> coppro: Yes, but that's a hassle.
03:28:45 <Sgeo> https://github.com/jvuletich/Cuis
03:29:28 <shachaf> git-clone should be called git-get
03:30:13 <zzo38> shachaf: Why do you think it is a hassle?
03:32:29 <shachaf> zzo38: Because you have to make the request.
03:37:27 <FreeFull> Less than two hours till Curiosity landing
03:42:03 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:46:37 <shachaf> elliott: #haskell: Worst channel or worstest channel?
03:46:50 <oerjan> worcester channel
03:47:25 <oerjan> sorry, *worcestershire
03:48:26 <pikhq> Worcester is an actual place too.
03:48:32 <pikhq> It's a city in Worcestershire.
03:48:40 <oerjan> sauce?
04:12:41 -!- oerjan has quit (Quit: leaving).
04:13:15 -!- augur has joined.
04:14:12 <elliott> `quote oklopol.*indentation
04:14:15 <HackEgo> No output.
04:14:17 <elliott> `quote oklopol.*indent
04:14:21 <HackEgo> No output.
04:14:22 <elliott> wtf
04:14:26 <elliott> `quote oklopol.*dynamic
04:14:31 <HackEgo> No output.
04:14:35 <shachaf> `quoklopol dynamic
04:14:35 <elliott> what did you assholes do
04:14:38 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: quoklopol: not found
04:14:38 <elliott> `pastequotes oklopol
04:14:42 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23745
04:15:06 <elliott> `pastlog oklopol.*dynam.*indent
04:15:30 <ion> http://mars.jpl.nasa.gov/msl/multimedia/nasatv/
04:15:40 <HackEgo> No output.
04:15:49 <elliott> what the fuck
04:15:55 <elliott> `pastlog oklopol.*indent.*if they
04:16:12 <shachaf> Content-Type: text/plain; charset="ascii"
04:16:16 <shachaf> shachaf@carbon:~$ HEAD http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.23745
04:16:24 <shachaf> 289) <elliott> ais523: quick, say something funny <oklopol> something funny hagrea:D <oklopol> can'tä sopt laughitn
04:16:27 <HackEgo> No output.
04:16:29 <shachaf> LIAR
04:23:33 -!- david_werecat has joined.
04:30:50 <oklopol> someone removed the O(n) indentation thing?
04:31:32 <oklopol> that's just wrong
04:31:42 <elliott> no
04:31:44 <elliott> it's just oklofok
04:31:45 <elliott> not oklopol
04:31:48 <elliott> `quote oklofok.*indent
04:31:52 <oklopol> alrighto
04:31:52 <HackEgo> 69) <oklofok> i use dynamic indentation, i indent lines k times, if they are used O(n^k) times during a run of the program
04:32:08 <oklopol> that's a pretty crappy indentation scheme though :D
04:33:08 <oklopol> (also should be Theta not O)
04:33:18 <oklopol> (that silly oklofok)
04:33:47 <elliott> oklopol: too late, I already quoted you
04:38:16 -!- Jafet has joined.
04:39:16 <oklopol> o noooooo
04:40:51 <shachaf> elliott: Did you know Data.Text was internally nothing like Data.ByteString?
04:43:28 -!- pikhq has quit (Ping timeout: 246 seconds).
04:43:35 -!- pikhq has joined.
04:45:41 <elliott> Yes.
04:45:58 <shachaf> elliott: Did you know they abandoned UTF-8 Text? :-(
04:46:04 <zzo38> A free world needs no leaders.
04:46:10 <elliott> Yes.
04:46:21 <zzo38> shachaf: What UTF-8 Text is this?
04:46:41 <shachaf> jaspervdj's, I think.
04:47:02 <shachaf> elliott: Also, someone should implement the "3 codepoints per 64 bits" Unicode encoding.
04:47:40 <zzo38> shachaf: I think it would be simple enough. Now it is invented but you should give it a name, such as UTF-64.
04:47:53 <elliott> shachaf: What encoding is that?
04:47:54 <shachaf> UTF-63
04:48:03 <shachaf> elliott: A codepoint is 21 bits. 21 * 3 = 63
04:48:12 <zzo38> O, it is UTF-63. Yes that is better.
04:48:16 <elliott> That seems inefficient.
04:48:21 <elliott> To process, I mena.
04:48:22 <elliott> *mean.
04:48:38 <shachaf> Does it?
04:49:54 <elliott> Yes.
04:50:01 <zzo38> Use the "Linux Zeux encoding" (which is for Linux, not Unicode).
04:50:41 <shachaf> elliott: Why?
04:51:29 <elliott> Because sub-byte-thingy-thing.
04:52:35 <shachaf> Is that really significant?
04:52:41 <elliott> I think so.
04:52:52 <shachaf> Compared to branches for UTF-8/16?
04:53:04 <shachaf> Or ~3 times the memory use for UTF-32?
04:55:48 -!- itidus21 has joined.
04:56:24 <elliott> idk
04:56:28 <elliott> why don't you try it
04:56:45 <soundnfury> shachaf: UTF-8 has the colossal advantage that U+0 maps to an ASCII NUL, so Cstring woo!
04:57:07 <soundnfury> also in fact 7-bit ASCII is all untouched
04:57:15 <elliott> That is not a "colossal advantage", since 0 is a valid codepoint.
04:57:23 <elliott> C strings mangle without exceptions.
04:57:28 <elliott> *exception
04:57:32 <soundnfury> elliott: ... for encoding ASCII NUL
04:57:55 <shachaf> You can encode U+0 non-canonically as 11000000 10000000.
04:58:12 <elliott> shachaf: That's specified invalid IIRC.
04:58:12 <soundnfury> that is what codepoint 0 represents. Just like every codepoint under 128 represents its corresponding ASCII character.
04:58:13 <elliott> soundnfury: What?
04:58:20 <elliott> I know what the codepoint U+0000 represents.
04:58:27 <elliott> It does not necessarily terminate a Unicode string.
04:58:31 <shachaf> elliott: WELL, MAYBE YOU'RE JUST EDUCATED STUPID IIRC!!
04:58:47 <soundnfury> elliott: right, but it is sane for it to terminate a Unicode Cstring
04:58:53 <soundnfury> since NUL terminates a normal Cstring
04:59:02 <elliott> Not really, in that that mangles perfectly valid Unicode data.
04:59:13 <soundnfury> no it doesn't
04:59:16 <elliott> Yes, it does.
04:59:18 <shachaf> elliott's point is that C strings = bad.
04:59:24 <elliott> It has no representation for the Unicode string {U+0000 U+0001}.
04:59:29 <monqy> hey
04:59:33 <monqy> is this an argument happening?
04:59:35 <shachaf> hey monqy
04:59:37 <monqy> can i laugh
04:59:37 <elliott> That's a perfectly valid sequence of Unicode codepoints.
04:59:39 <monqy> should i laugh
04:59:41 <shachaf> monqy: laugh
04:59:42 <shachaf> do it
04:59:44 <elliott> monqy: people being wrong about unicode as always!!
04:59:51 <soundnfury> if you're handling data that may contain NULs, whether they're encoded as ASCII or UTF-8 or Shift-JIS for that matter, you don't use plain Cstrings
04:59:56 <soundnfury> OR you escape the NULs
05:00:18 <soundnfury> elliott: sure it is. It's a Unicode string. But it's not a Unicode Cstring that's the POINT
05:00:20 <monqy> heh heh heh heh heh heh heh heh heh heh heh heh heh heh heh heh heh heh hehh ehheh ehheh heh
05:00:21 <elliott> OK, so since Unicode strings can contain the codepoint U+0000, you don't use Cstrings for representing Unicode; I agree.
05:00:23 <monqy> was that good enough
05:00:27 <shachaf> soundnfury: That's why elliott is saying it's not a colossal advantage.
05:00:27 <elliott> monqy: no
05:00:37 <shachaf> The colossal cave advantage.
05:00:45 <soundnfury> gah!
05:00:59 -!- lifthrasiir has quit (Ping timeout: 252 seconds).
05:01:09 <soundnfury> You use Cstrings with UTF-8 for representing Unicode Cstrings
05:01:21 <soundnfury> that is, Unicode strings that are guaranteed not to have embedded NULs
05:01:22 <shachaf> Unicode CString
05:01:25 <shachaf> UCS
05:01:30 <shachaf> Coïncidence?!
05:01:32 <soundnfury> ahahaha
05:01:42 <soundnfury> ooh, nice diaresis
05:02:54 <shachaf> elliott: What's a good way to do integer division rounding up?
05:03:44 <elliott> soundnfury: I don't believe such a Unicode Cstring has any kind of relevant status, beyond it being an implementation effect of a bunch of programs due to their handling UTF-8 data in C badly.
05:04:14 <elliott> I mean, it doesn't really seem like much of a colossal advantage if all you can do with it is process things that aren't actually the Unicode strings that you're meant to be handling as a Unicode-capable(TM) program.
05:04:33 <elliott> (Especially since C strings are more painful to use than something that tracks length anyway.)
05:04:40 <shachaf> Oh, (x-1)`div`y+1
05:05:12 <shachaf> elliott: I think zoundsnflurry meant things like UTF-8 for path names in UNIX.
05:05:51 <elliott> shachaf: That's a bit of an implementation detail, really, caused by mashing a binary-C-string-thingy-path-name system with the desire to support Unicode.
05:05:57 <elliott> (It's also gross.)
05:06:03 <elliott> But OK, it's useful if you're the Linux kernel.
05:06:04 <shachaf> elliott: I agree.
05:06:12 <elliott> I usually try not to be the Linux kernel.
05:06:39 <soundnfury> I would /love/ to be the Linux kernel
05:06:42 <shachaf> elliott: UTF-8 is a nice encoding for a lot of reasons, though, and several of them have to do with working nicely with software that assumes Unicode doesn't exist.
05:06:45 <soundnfury> because there'd be so many copies of me
05:06:55 <soundnfury> I'd be parallelly indestructible
05:07:10 <elliott> shachaf: UTF-8 is okay. For in-memory representation I tend to prefer UTF-32.
05:07:27 <shachaf> elliott: But just think about UTF-63!
05:09:38 -!- lifthrasiir has joined.
05:53:21 <soundnfury> I've implemented a ternary /WE memory cell, but it's huge and ugly
05:53:37 <soundnfury> http://esolangs.org/wiki/User:Soundandfury/Ternary_ECL#.2FWE_Memory_Cell
05:53:48 <soundnfury> can anyone find a way to improve it?
06:11:47 -!- asiekierka has joined.
06:22:35 <zzo38> Sometimes they do use overlong encoding for U+0000 though, since it might be meaningful.
06:27:37 <shachaf> Why do people call it U+0000 and not U+0000000?
06:27:41 <shachaf> Or U+0?
06:28:25 <Jafet> Overlong encoding.
06:42:36 <elliott> Hey, Jafet!
06:42:47 <elliott> Did you know you have the second-longest game of NetHack on NAO?
06:53:20 <Jafet> You mean someone has wasted more time than I have?
06:53:53 <elliott> Apparently.
06:53:57 <elliott> (This is in turns, I think.)
06:58:21 <Jafet> http://alt.org/nethack/userdata/jafet/dumplog/1286454056.nh343.txt
07:00:30 <elliott> That looks boring.
07:00:55 <Jafet> It was
07:00:59 <Jafet> I probably won't do it again
07:02:06 -!- nooga has joined.
07:04:43 <elliott> You and the woodchuck and the woodchuck and the woodchuck and the woodchuck and the woodchuck
07:04:43 <elliott> went to your reward with 712336180 points,
07:04:43 <elliott> good
07:05:09 <Jafet> Me and the blessed rustproof +12 Excalibur
07:05:19 <Jafet> and the woodchuck and the woodchuck and the woodchuck and the woodchuck
07:21:39 -!- zzo38 has quit (Remote host closed the connection).
07:37:40 <soundnfury> Jafet: how on earth did you get it up to +12?
07:37:50 <soundnfury> without it exploding?
07:41:04 <soundnfury> "Vanquished creatures... 255 black puddings". I suspect you killed many more than that ;)
07:41:27 <Jafet> Hint: obtain a +12 arrow
07:41:56 * itidus21 suddenly remembers theres some story about a magic pudding
07:42:50 <itidus21> "The Magic Pudding: Being The Adventures of Bunyip Bluegum and his friends Bill Barnacle and Sam Sawnoff is an Australian children's book written and [...]"
07:43:16 <soundnfury> Jafet: wait... you polyed the arrow into a longsword then dipped? No, that wouldn't work, you're not Lawful
07:43:41 <Jafet> I might have been
07:43:55 <soundnfury> you... used a HoOA to dip?
07:44:15 <Jafet> Well done
07:44:51 <elliott> very good
07:45:11 <soundnfury> so did you get bored at +12 or is that as far as you can get?
07:45:25 <Jafet> I think I accidentally the last pudding
07:45:29 <Jafet> So that was that
07:45:35 <elliott> what's the theoretical max
07:45:36 <elliott> +255?
07:46:00 <fizzie> +127, I think.
07:46:05 <fizzie> At least those things are so often signed.
07:46:15 <fizzie> Could be +(2^31-1) too.
07:46:30 <fizzie> But I vaguely recall something about a byte.
07:47:26 <soundnfury> I think you're right, +127
08:15:24 -!- epicmonkey has joined.
08:23:53 -!- KingOfKarlsruhe has joined.
08:35:49 -!- epicmonkey has quit (Ping timeout: 272 seconds).
08:36:11 -!- azaq23 has joined.
08:36:23 -!- azaq23 has quit (Max SendQ exceeded).
08:37:21 -!- azaq23 has joined.
08:44:10 -!- zzo38 has joined.
08:51:10 -!- mig22 has joined.
09:07:48 -!- mig22 has quit (Quit: mig22).
09:09:54 -!- Taneb has joined.
09:18:43 <Taneb> Hello
09:19:29 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
09:20:58 <itidus21> spoiler alert
09:21:07 <itidus21> "The original poster stated that they had just accidentally 93MB of .rar files and wanted to know what they should do and if it was dangerous"
09:21:55 <itidus21> "that reminds me of the time i accidently 26KB of pictures, good times"
09:23:57 <itidus21> i want to use that in real life
09:31:58 -!- epicmonkey has joined.
09:52:42 -!- Jafet has quit (Quit: Leaving.).
10:12:05 -!- elliott has quit (Ping timeout: 272 seconds).
10:18:25 -!- Taneb has quit (Ping timeout: 246 seconds).
10:31:22 -!- derdon has joined.
10:38:03 -!- FreeFull has quit (Ping timeout: 272 seconds).
10:38:17 -!- FreeFull has joined.
10:47:30 -!- aloril has quit (Read error: Operation timed out).
10:49:02 -!- ais523 has quit.
10:49:24 <zzo38> Do you have computer program to convert a file to gate ROM if you specify which parts of the file are unimportant?
10:55:18 <shachaf> No.
11:03:07 -!- aloril has joined.
11:09:15 -!- pikhq has quit (Ping timeout: 246 seconds).
11:09:16 -!- pikhq_ has joined.
11:16:33 <zzo38> Do you have any ideas of how to implement such thing?
11:22:56 -!- Taneb has joined.
11:27:01 -!- david_werecat has quit (Ping timeout: 246 seconds).
11:31:35 <Taneb> Hello
11:34:50 <mroman> 'ellow
11:35:33 -!- monqy has quit (Quit: hello).
11:46:47 -!- Phantom_Hoover has joined.
11:52:21 -!- zzo38 has quit (Remote host closed the connection).
11:55:22 -!- Taneb has quit (Ping timeout: 246 seconds).
11:59:34 -!- pikhq_ has quit (Ping timeout: 246 seconds).
12:06:28 -!- boily has joined.
12:20:37 -!- MoALTz has joined.
12:25:26 -!- MoALTz has quit (Client Quit).
12:25:44 -!- MoALTz has joined.
12:27:13 -!- Jafet has joined.
12:27:30 <kallisti> hi
12:28:50 <boily> hi.
12:31:39 -!- Taneb has joined.
12:36:56 -!- pikhq has joined.
13:10:35 <Phantom_Hoover> What was with that notice?
13:16:53 <kallisti> Gregor: because umlbox doesn't allow networking, it's not possible to run the IRC bot within the UML sandbox instead of using the IRC bot to run the sandbox on each command invocation, right?
13:18:10 <kallisti> Phantom_Hoover: freenode staff entered soapbox mode, it would seem.
13:18:18 <Gregor> kallisti: You hardly need networking to run an IRC bot.
13:19:00 <kallisti> sure. but I'm not sure how I would set that up with my perl bot, which I'm pretty sure needs things that resemble network devices.
13:19:32 <Gregor> umlbox has restrictive and partially broken networking support, anyway.
13:22:26 <kallisti> I wonder if I could use unix sockets for this.
13:22:39 <Gregor> Unix sockets don't survive umlbox.
13:23:28 <kallisti> well the umlbox would be running indefinitely in this case.
13:23:36 <kallisti> but I doubt host-to-guest and vice versa would work.
13:24:29 <Gregor> Yeah, that's what's broken.
13:24:35 <Gregor> UML's hostfs doesn't support them.
13:25:07 <Gregor> But like I said, in spite of what you've heard, it DOES have networking support, it's just a bit imperfect because I haven't found the right UML device to represent this stuff yet (I'm using ttys)
13:26:01 <Gregor> Frankly tho, it seems a bit pointless to put a whole IRC bot in umlbox. Why don't you trust ANY component of the bot? That won't help to isolate commands run within the bot from each other anyway.
13:36:35 <Sgeo> Gregor, are Sine and here running different instances of the bot?
13:38:11 <Gregor> Well, yes, in that they're different connections, but they share the filesystem.
13:38:20 <Sgeo> Oh
13:38:27 <Sgeo> `ls bin
13:38:38 <HackEgo> ​? \ @ \ No \ WELCOME \ WeLcOmE \ addquote \ allquotes \ anonlog \ calc \ define \ delquote \ etymology \ forget \ fortune \ frink \ 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 \ qc \ quachaf \ quoerjan
13:38:51 <Sgeo> I don't see it
13:38:57 <Sgeo> Different home folders?
13:38:59 <Sgeo> `run pwd
13:39:02 <HackEgo> ​/hackenv
13:39:09 <Sgeo> `ls /
13:39:12 <HackEgo> bin \ dev \ etc \ hackenv \ home \ lib \ lib64 \ opt \ proc \ sbin \ sys \ tmp \ usr \ var
13:39:22 <Sgeo> I'll take that as a no
13:40:19 <Sgeo> Hmm, maybe just cut off from being too long
13:40:33 <Sgeo> `run echo "puts {hello #esoteric}" | tclkitsh
13:40:36 <HackEgo> bash: tclkitsh: command not found
13:43:12 <Sgeo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.5942
13:43:22 <Sgeo> `run echo "puts {hello #esoteric}" | tclkit
13:43:25 <HackEgo> hello #esoteric
13:44:15 <Sgeo> `run echo "puts [info tclversion]" | tclkit
13:44:18 <HackEgo> 8.5
13:44:26 <Sgeo> `run echo "puts [info patchlevel]" | tclkit
13:44:29 <HackEgo> 8.5.1
13:46:18 <Sgeo> I don't know enough shell scripting to not encounter quoting hell while playing with tclkit like this
13:47:56 <Sgeo> `tclkit puts "Hello"
13:47:59 <HackEgo> couldn't read file "puts "Hello"": no such file or directory.
13:48:04 <Sgeo> :(
13:57:07 -!- Taneb has quit (Ping timeout: 240 seconds).
14:05:04 <FreeFull> Obviously .7z
14:05:10 <FreeFull> Oops, scrolled up
14:05:34 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:14:54 -!- mig22 has joined.
14:16:06 <FreeFull> Sgeo: Maybe they're in different chroots
14:16:41 <FreeFull> `ls /home/
14:16:43 <HackEgo> hackbot
14:16:44 <Sgeo> Well, I fetched and tested tclkit first on the other bot, so no.
14:17:44 <FreeFull> `run mkdir pie
14:17:47 <HackEgo> No output.
14:18:10 <FreeFull> `run echo "Pie pie pie!" > pie/pie
14:18:14 <HackEgo> bash: pie/pie: No such file or directory
14:19:01 -!- pikhq has quit (Ping timeout: 246 seconds).
14:19:19 -!- pikhq has joined.
14:20:44 -!- MoALTz has quit (Quit: brb).
14:20:45 -!- mig22 has quit (Read error: Connection reset by peer).
14:21:04 -!- mig22 has joined.
14:25:15 -!- mig22 has quit (Client Quit).
14:27:08 -!- MoALTz has joined.
14:31:50 -!- aloril has quit (Ping timeout: 250 seconds).
14:33:19 -!- copumpkin has joined.
14:33:55 -!- Taneb has joined.
14:34:14 <Taneb> Hello
14:44:27 <kmc> there seems to be a rule that all metro stations in budapest have 4 guys standing around watching the ticket validation machines
14:44:29 <kmc> they must have a good union
14:44:40 -!- aloril has joined.
14:44:57 <kmc> hi Taneb
14:53:08 -!- copumpkin has quit (*.net *.split).
14:53:08 -!- Jafet has quit (*.net *.split).
14:53:08 -!- epicmonkey has quit (*.net *.split).
14:53:09 -!- atehwa has quit (*.net *.split).
14:53:09 -!- HackEgo has quit (*.net *.split).
14:53:09 -!- EgoBot has quit (*.net *.split).
14:53:09 -!- SimonRC has quit (*.net *.split).
14:53:09 -!- ssue has quit (*.net *.split).
14:53:10 -!- shachaf has quit (*.net *.split).
14:53:10 -!- comex has quit (*.net *.split).
14:53:47 -!- copumpkin has joined.
14:54:42 <Taneb> :)
14:54:55 <soundnfury> splittastic :)
14:55:31 <Taneb> EgoBot, come back!
14:55:33 <soundnfury> freenode (Irc Hum Mal Cha), 225613 points, killed by a netsplit
14:55:35 <Taneb> All you other guys, too
14:55:46 -!- Jafet has joined.
14:55:46 -!- epicmonkey has joined.
14:55:46 -!- atehwa has joined.
14:55:46 -!- HackEgo has joined.
14:55:46 -!- EgoBot has joined.
14:55:46 -!- SimonRC has joined.
14:55:46 -!- ssue has joined.
14:55:46 -!- shachaf has joined.
14:55:46 -!- comex has joined.
14:56:05 <Taneb> A roguelike where IRC server was a playable race...
14:56:32 <soundnfury> It'd be programmed in IRP, of course
14:56:55 <Taneb> Or, slightly more seriously, the mIRC macro language
14:57:35 <soundnfury> Yegods mIRC
14:57:38 <soundnfury> DO NOT WANT
14:58:05 * soundnfury hates Khaled Mardem-Bey with a passion
15:06:34 <Taneb> I keep reading Mars as Mad
15:07:01 <Taneb> As in "Mad Science Laboratory Curiosity has landed safely"
15:10:09 -!- aloril has quit (Ping timeout: 244 seconds).
15:15:40 <Sgeo> I want a language with the functionalness and type safety of Haskell, the flexibility and run-time environment of Common Lisp, and the large ecosystem of Perl
15:16:28 <Taneb> And I want some chocolate
15:16:34 <Taneb> And the weather to hold of tomorrow
15:16:37 -!- azaq23 has quit (Ping timeout: 246 seconds).
15:17:03 -!- TodPunk has joined.
15:18:54 -!- azaq23 has joined.
15:19:01 -!- azaq23 has quit (Max SendQ exceeded).
15:19:46 -!- azaq23 has joined.
15:27:12 -!- aloril has joined.
15:28:24 <FreeFull> Sgeo: The third will be the hardest to find
15:34:33 -!- copumpkin has changed nick to MagicalDwolla.
15:34:55 -!- MagicalDwolla has changed nick to copumpkin.
15:40:32 <Sgeo> Is Strongtalk still dead?
15:40:33 <Sgeo> :(
15:41:42 <Sgeo> I don't think I'll ever quite get over the lack of multiple-dispatch
15:57:00 -!- Taneb has quit (Quit: Leaving).
16:17:57 -!- zzo38 has joined.
16:18:02 <quintopia> hi
16:23:37 -!- epicmonkey has quit (Ping timeout: 240 seconds).
16:25:49 -!- oonbotti has joined.
16:29:02 -!- Vorpal has joined.
16:55:06 -!- monqy has joined.
16:57:35 -!- oonbotti has quit (Ping timeout: 246 seconds).
17:04:25 <zzo38> Do you like this? He's Jim, Dad.-McCoy introduces Kirk to his family.
17:09:46 <Phantom_Hoover> Solid base, delivery needs some work.
17:10:03 <Phantom_Hoover> Introduce the context first, so the punchline is more prominent.
17:10:37 <zzo38> I didn't write it. It is is part of a word guessing game in X-BIT.
17:11:50 <zzo38> But, OK, if you want to move it around, try like this: McCoy introduces Kirk to his family: "He's Jim, Dad."
17:16:28 -!- david_werecat has joined.
17:21:28 <quintopia> hi david_werecat
17:21:47 -!- oonbotti has joined.
17:31:15 -!- epicmonkey has joined.
17:35:42 -!- Taneb has joined.
17:35:44 <Taneb> Hello!
17:35:58 <[]{}\|-_`^> hi
17:36:09 <Taneb> I've just given blood for the first time
17:36:10 <Taneb> :)
17:36:35 <[]{}\|-_`^> http://motherboard.vice.com/2012/8/6/nasa-s-mars-rover-crashed-into-a-dmca-takedown
17:36:47 <Sgeo> Why do new electronics still offer WEP?
17:52:17 <zzo38> What? DMCA takecount? How is it related to that?
17:58:18 <Taneb> Sgeo, legacy reasons?
17:59:11 -!- Eladith has joined.
17:59:19 -!- pikhq_ has joined.
17:59:24 -!- pikhq has quit (Ping timeout: 246 seconds).
18:03:13 <Sgeo> It seems almost too easy to fake Clojure-style multimethods in Tcl
18:03:43 -!- aloril has quit (Ping timeout: 250 seconds).
18:04:21 <Sgeo> Full predicate dispatch is probably better, but I don't even know what that looks like
18:10:41 -!- augur has quit (Remote host closed the connection).
18:17:11 -!- aloril has joined.
18:18:21 * Sgeo wonders if anyone uses Prolog for general programming
18:19:00 <[]{}\|-_`^> I once tried
18:19:19 <[]{}\|-_`^> I think I still have some programs in my old backups
18:19:50 <quintopia> people use datalog for production knowledge systems
18:20:20 <Taneb> The number of conventional programming languages I've attempted to use seriously is...
18:20:27 <Taneb> 7
18:20:44 <[]{}\|-_`^> which ones?
18:21:30 <Taneb> In chronological order?
18:21:53 -!- ogrom has joined.
18:22:02 <Taneb> Visual Basic 2005, C++, Python 3, JavaScript, PHP, Haskell, C
18:22:37 <Taneb> Pre-ANSI C
18:22:51 <[]{}\|-_`^> pre-ANSI?
18:22:53 <[]{}\|-_`^> when?
18:23:07 <Taneb> The textbook was published 1978, I think
18:23:27 <[]{}\|-_`^> oh. so K&R?
18:23:40 <Taneb> I think so
18:24:26 <[]{}\|-_`^> K&R C is still pretty nice
18:29:26 -!- elliott has joined.
18:29:42 <Taneb> It didn't tell me I needed to <include stdio.h> to use printf
18:30:01 <elliott> that's not valid syntax
18:30:09 <elliott> ps if it didn't, then whatever tutorial you are reading is incredibly bad
18:30:13 <[]{}\|-_`^> lets see. I have attempted to use 5 (C90, QuickBasic 4.5, Python 2, Scheme, K&R C)
18:30:15 <elliott> stop reading it or you'll fill yourself with misconceptions
18:30:34 <[]{}\|-_`^> Taneb: it is #include <stdio.h>
18:30:48 <Taneb> Okay, that was the fault of my memory
18:30:56 -!- FreeFull_ has joined.
18:31:09 <Sgeo> WHY am I looking at Prolog as a general programming language right now?
18:32:14 <Taneb> elliott, but it's the textbook of my ancestors!
18:32:24 <elliott> Taneb: it's also shit
18:32:28 <elliott> and probably incredibly outdated
18:32:31 <[]{}\|-_`^> Sgeo: well it is interesting programming language
18:36:05 <Taneb> elliott, but the fourth edition of it is recommended by the website that is recommended by the nice people in ##c!
18:37:21 <oklopol> k i can now consistently go over the first hill, but i have no idea how to tackle the seconed one
18:37:22 <oklopol> second
18:37:29 <oklopol> (clop)
18:37:40 <elliott> Taneb: then get the fourth edition
18:37:45 <Vorpal> Taneb, and which edition do you have?
18:37:47 <elliott> p.s. "nice people" in ##c?
18:37:48 <elliott> ahahahahahahahaha
18:37:52 <pikhq_> Taneb: K&R C is dramatically different from ISO C.
18:37:52 <Taneb> Vorpal, I think it's the first
18:37:54 <elliott> ##c is one of the most toxic channels on the planet
18:37:58 <Vorpal> Taneb, which book is it?
18:37:59 <Taneb> elliott, that involves spending money
18:38:01 <elliott> but yeah i suspect Taneb's book is for K&R C
18:38:05 <Taneb> Vorpal, A Book on C
18:38:09 <elliott> in which case don't read it it will not work, you will melt your mind,
18:38:16 <Vorpal> Taneb, that is the title?
18:38:18 <Taneb> Yes
18:38:22 <elliott> but I distinctly recall already trying to convince Taneb it would be a horrible idea to read this book and he ignored me
18:38:26 <Vorpal> Taneb, never heard of it
18:38:27 <Taneb> Yeah
18:38:27 <quintopia> oklopol: impressive. i can only get halfway up the steps.
18:38:29 <elliott> so maybe I will just not bother
18:38:38 <elliott> and not answer his questions when he inevitably asks them because it's a bad or outdated book
18:38:39 <Taneb> I dunno, I haven't read it in a while
18:38:43 <pikhq_> Taneb: This is a bit like reading a book on the immediate *ancestor* to Haskell to learn Haskell.
18:38:51 <pikhq_> s/the/an/
18:38:56 <Vorpal> elliott, he could read it once he already know modern C well, to find out the history of C
18:38:57 <Taneb> pikhq_, hmm
18:39:01 <Vorpal> but yeah don't start with it
18:39:07 <Taneb> GET ME A BOOK ON THAT LANGUAGE THAT BEGINS WITH M
18:39:13 -!- FreeFull has quit (Remote host closed the connection).
18:39:18 <Taneb> MARADONNA OR WHATEVER
18:39:21 <pikhq_> Like, I don't think it is possible to write valid C99 that's also K&R C.
18:39:25 <Vorpal> Taneb, I can only think of ML
18:39:41 <Taneb> Miranda!
18:39:44 <oklopol> quintopia: the first steps?
18:39:44 <pikhq_> Oh, wait, it's possible, except it is necessarily trivial.
18:39:53 <pikhq_> int main(){return 0;}
18:40:01 <Vorpal> pikhq_, no printf?
18:40:06 <Vorpal> or anything
18:40:06 <oklopol> i can run pretty neatly so i get rather fast to the second hill
18:40:07 <oklopol> usually
18:40:14 <[]{}\|-_`^> pikhq_: main() {}
18:40:21 <pikhq_> []{}\|-_`^: Not valid C99.
18:40:25 <Vorpal> []{}\|-_`^, not valid K&R?
18:40:26 <Vorpal> pikhq_, sure it is
18:40:32 <quintopia> oklopol: i'm fun with running, but the running doesnt work on the hill
18:40:32 <Vorpal> pikhq_, for mainI()
18:40:35 <Vorpal> main*
18:40:42 <Vorpal> well you need int
18:40:46 <oklopol> the first one?
18:40:51 <Vorpal> but you can skip the return from main in C99
18:40:51 <quintopia> i can get up the first little slope and then i fall over backwards
18:40:53 <[]{}\|-_`^> Vorpal: it is int by default
18:40:58 <Vorpal> []{}\|-_`^, not in C99 iirc
18:41:18 <pikhq_> Vorpal: No, calling a variadic function without importing stdio.h in C99 is UB, and I don't *think* they had stdio.h in early K&R.
18:41:23 <oklopol> you can run up the first one, but often i have to use the hkhkhkhkhk cheat, just don't lame the horse or i hear the second hill can't be done.
18:41:29 <Vorpal> pikhq_, hm okay
18:41:29 <oklopol> i assume you have to run up it
18:41:31 <[]{}\|-_`^> Vorpal: well in K&R it is
18:41:39 <pikhq_> (due to essentially everything in it not needing a declaration for K&R C)
18:41:42 <Vorpal> []{}\|-_`^, the thing was it needed to be both valid C99 and K&R
18:41:44 <oklopol> i have gotten pretty far up
18:41:52 <Vorpal> []{}\|-_`^, otherwise it is of no interest to the conversation
18:42:06 <quintopia> what does "lame the horse" mean?
18:42:32 <Vorpal> quintopia, cruelty to animals?
18:42:38 <FreeFull_> pikhq_: What about puts?
18:42:43 <Vorpal> quintopia, or there is a horse called "Lame"
18:42:46 <oklopol> quintopia: press hkhkhkhkhk for some time
18:42:54 <oklopol> r to restart
18:42:55 <Vorpal> oh that game
18:42:56 <Vorpal> right
18:42:59 <quintopia> also my keyboards only seem to be 2-key rollover, so i get aliased if i try to do complicated stuff
18:42:59 <FreeFull_> Oh wait, puts is in stdio.h too
18:43:05 -!- FreeFull_ has changed nick to FreeFull.
18:43:22 <Vorpal> FreeFull, that is the point of "stdio.h"
18:43:50 <Vorpal> if you are doing IO without using POSIX or win32 or whatever you use stdio.h
18:44:20 <Vorpal> pikhq_, you could write a more complex program as long as you passed all arguments in global variables I think
18:44:37 <Vorpal> no recursion thus of course
18:45:17 <quintopia> oklopol: my guess is it stretches the back legs so far back that they break, but i can't test it right now
18:45:19 <pikhq_> FreeFull: Hmm. I *think* the implicit declaration would comply there.
18:45:53 <Vorpal> pikhq_, isn't puts a macro
18:45:57 <Vorpal> pretty sure it is
18:46:08 <elliott> no
18:46:10 <pikhq_> No, it's int puts(const char *s);
18:46:10 <Vorpal> "putc() is equivalent to fputc() except that it may be implemented as a macro which evaluates stream more than once."
18:46:11 <Vorpal> yes
18:46:14 <Sgeo> pikhq_,
18:46:15 <elliott> putc is not puts
18:46:18 <Vorpal> according to my man page
18:46:18 <elliott> are you blind
18:46:19 <pikhq_> Vorpal: *s*
18:46:26 <Sgeo> `run "puts {hello world}" | tclkit
18:46:28 <HackEgo> bash: puts {hello world}: command not found
18:46:30 <Vorpal> oh right
18:46:31 <Vorpal> misread
18:46:34 <Sgeo> `run ech "puts {hello world}" | tclkit
18:46:37 <HackEgo> bash: ech: command not found
18:46:38 <Sgeo> `run echo "puts {hello world}" | tclkit
18:46:45 <HackEgo> hello world
18:46:51 <oklopol> quintopia: something like that, you can't use them after that, or i don't know how to get them to work again.
18:47:10 <Vorpal> extern int fputs (__const char *__restrict __s, FILE *__restrict __stream);
18:47:15 <Vorpal> why do those have restrict
18:47:29 <Vorpal> isn't it only unsigned char* that can alias everything?
18:47:33 <Vorpal> rather than signed char
18:48:45 <Vorpal> extern int fgetpos (FILE *__restrict __stream, fpos_t *__restrict __pos);
18:48:49 <Vorpal> that is just silly
18:48:55 <Vorpal> those can't ever alias each other
18:49:56 <pikhq_> Vorpal: It's char in particular.
18:50:01 <Vorpal> hm
18:50:07 <pikhq_> Vorpal: char* aliases everything potentially.
18:50:09 <Vorpal> okay the second example is silly still
18:50:17 <Vorpal> neither of those are char*
18:50:36 <pikhq_> fpos_t could be in particularly silly systems, as could FILE.
18:51:11 <Vorpal> pikhq_, well, it is a glibc header. I can't see how it could be on glibc
18:53:36 <pikhq_> FILE *restrict is technically different from FILE *
18:53:55 <pikhq_> Oh, derp. C99 doesn't make them restrict pointers.
18:54:16 <Deewiant> POSIX seems to.
18:54:17 <pikhq_> No, wait, yes it does.
18:54:34 <pikhq_> Vorpal: It's restrict because C requires it to be.
18:54:56 <Vorpal> hm okay
18:57:03 <Vorpal> <pikhq_> FILE *restrict is technically different from FILE * <-- really I thought they were just annotations for the compiler?
18:57:15 <pikhq_> They're still technically different types.
18:57:20 <Vorpal> advisory info for the compiler as it were
18:57:22 <Vorpal> hm okay
19:00:21 <Vorpal> # ifdef __REDIRECT
19:00:22 <Vorpal> extern int __REDIRECT (fgetpos, (FILE *__restrict __stream,
19:00:22 <Vorpal> fpos_t *__restrict __pos), fgetpos64);
19:00:24 <Vorpal> that is strange
19:00:39 <Vorpal> for large file IO on 32-bit systems?
19:01:05 <Vorpal> yeah seems so
19:01:08 <pikhq_> It's the result of complying with some terribly bad ideas in the past.
19:01:22 <Gregor> I OWN A SHIRT STAY NOW. DOES THAT MAKE ME COOL?
19:01:42 <Vorpal> pikhq_, well the question is why __REDIRECT rather than doing the thing it does when __REDIRECT is not defined:
19:01:45 <Vorpal> # define fgetpos fgetpos64
19:01:52 <Vorpal> that seems so much cleaner
19:01:57 <Vorpal> why that __REDIRECT nonsense
19:02:22 <pikhq_> Basically fpos_t was 32-bit and no UNIX vendor wanted to break ABI, so instead they added the *64 functions (violating namespace), and then added a preprocessor define so you could have the standard point to the *64 functions...
19:02:35 <Vorpal> right
19:02:36 <pikhq_> Now making it so that off_t isn't the same type in all programs.
19:02:41 <Vorpal> indeed
19:02:42 <pikhq_> i.e. you have two ABIs.
19:02:59 <pikhq_> Except they will randomly link to each other.
19:03:03 <Vorpal> pikhq_, still, what is __REDIRECT possibly defined to I wonder
19:03:10 <pikhq_> If off_t was used more often, this would Break.
19:03:25 <pikhq_> (the correct answer, of course, is *just break ABI once* and have 64-bit off_t)
19:03:31 <pikhq_> Vorpal: Beats me.
19:03:42 <Vorpal> not in /usr/include/bits
19:03:53 <Vorpal> there are some usage of __REDIRECT_NTH and such there though
19:03:54 <pikhq_> I don't try to follow glibc headers.
19:04:08 <Sgeo> Is Prolog better for general purpose stuff than Erlang?
19:04:12 <Vorpal> time for full /usr/include search (this is going to take ages)
19:04:33 <pikhq_> http://git.etalabs.net/cgi-bin/gitweb.cgi?p=musl;a=blob;f=include/stdio.h;h=3d22220f2e7b0a675d0abad4c22872ab7c352279;hb=HEAD This is what stdio.h should look like.
19:05:34 <Vorpal> ah in /usr/include/sys/cdefs.h
19:05:56 <Vorpal> __asm__ ("xyz") is used throughout the headers to rename functions
19:05:56 <Vorpal> at the assembly language level. This is wrapped by the __REDIRECT
19:05:56 <Vorpal> macro,
19:05:59 <Vorpal> [...]
19:06:04 <Vorpal> there it is ^
19:06:11 <Vorpal> # define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias))
19:06:39 <Vorpal> pikhq_, that is missing a lot of the restrict that C99 requires
19:07:01 <pikhq_> Vorpal: Minor issue.
19:07:07 <pikhq_> But, yes.
19:07:08 <Vorpal> pikhq_, still an issue
19:07:34 <Vorpal> pikhq_, also making do format checks on printf() is nice :P
19:07:41 <Vorpal> I do like those useful __attribute__s
19:08:28 <Vorpal> it might do it automatically on printf though
19:08:35 <pikhq_> It does.
19:09:05 <Vorpal> pikhq_, glibc puts __attribute__ ((__format__ (__printf__, 3, 4))) on snprintf, but not the basic pre-C99 printf style routines
19:10:11 <zzo38> Can you make any .NSF music using all 28 channels?
19:22:41 -!- oerjan has joined.
19:26:01 -!- ogrom has quit (Quit: Left).
19:28:21 -!- zzo38 has quit (Remote host closed the connection).
19:28:37 <oerjan> <shachaf> Oh, (x-1)`div`y+1
19:28:58 <oerjan> does that really work in all corner cases?
19:30:11 <oerjan> oh right it should
19:30:59 <Deewiant> @check \x y -> (x-1)`div`y+1 == ceiling (fromIntegral x / fromIntegral y)
19:31:00 <lambdabot> "Falsifiable, after 0 tests:\n1\n-1\n"
19:31:27 <oerjan> i guess negative numbers are not indented
19:31:42 <Deewiant> Lame
19:31:54 -!- Taneb has quit (Ping timeout: 264 seconds).
19:32:14 <oerjan> @check \x y -> x < 0 || y <= 0 | (x-1)`div`y+1 == ceiling (fromIntegral x / fromIntegral y)
19:32:14 <lambdabot> Parse error at "|" (column 25)
19:32:19 <oerjan> oops
19:32:25 <oerjan> @check \x y -> x < 0 || y <= 0 || (x-1)`div`y+1 == ceiling (fromIntegral x / fromIntegral y)
19:32:26 <lambdabot> "OK, passed 500 tests."
19:32:45 <oerjan> @check \x y -> x < 0 || y <= 0 || (x-1)`div`y+1 == -(-x)`div`y
19:32:47 <lambdabot> "OK, passed 500 tests."
19:33:05 <oerjan> shachaf: ^
19:33:10 <Vorpal> oerjan, that doesn't mean it is true
19:33:16 <Vorpal> just that it passed 500 tests
19:33:19 <oerjan> duh
19:33:25 <Vorpal> it could fail in yet another case
19:33:33 <oerjan> but i already convinced myself it is true, anyway.
19:33:42 <Vorpal> right
19:34:33 <oerjan> @check \x y -> y <= 0 || (x-1)`div`y+1 == -(-x)`div`y
19:34:34 <lambdabot> "OK, passed 500 tests."
19:34:50 <oerjan> @check \x y -> y <= 0 || (x-1)`div`y+1 == ceiling (fromIntegral x / fromIntegral y)
19:34:52 <lambdabot> "OK, passed 500 tests."
19:35:01 <oerjan> only y needs to be positive
19:41:13 <Sgeo> Ugh why is GUI stuff in Prolog so ugly
19:42:55 <kallisti> s/GUI //
19:43:29 <oerjan> No.
19:44:15 <Deewiant> @check \x y -> y == 0 || (x`quot`y + fromEnum (x`rem`y /= 0 && (x>0) == (y>0))) == ceiling (fromIntegral x / fromIntegral y)
19:44:16 <lambdabot> "OK, passed 500 tests."
19:45:42 <oerjan> 15:06:34: <Taneb> I keep reading Mars as Mad
19:45:43 <oerjan> 15:07:01: <Taneb> As in "Mad Science Laboratory Curiosity has landed safely"
19:45:56 <oerjan> well he _is_ the evil overlord of bad kerning.
19:46:14 <oerjan> possibly *future
19:46:33 <Sgeo> 7 ?- father(X) = X.
19:46:33 <Sgeo> X = father(X).
19:47:03 -!- augur has joined.
19:49:57 -!- asiekierka has quit (Remote host closed the connection).
19:53:50 -!- Taneb has joined.
19:54:05 <Taneb> Hello
19:58:24 <Sgeo> Hi
19:58:28 <Phantom_Hoover> So Sgeo spent... what, less than a week on tcl?
19:58:49 <Sgeo> `pastequotes Sgeo.*tcl
19:58:53 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22571
19:58:54 <Sgeo> I think over a month
19:59:10 <Sgeo> `pastequotes Sgeo*tcl
19:59:13 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26878
19:59:21 <Phantom_Hoover> You really need to get over your fear of linguistic commitment.
20:00:31 <oerjan> 15:06:34: <Taneb> I keep reading Mars as Mad
20:00:34 <oerjan> 15:07:01: <Taneb> As in "Mad Science Laboratory Curiosity has landed safely"
20:00:42 <oerjan> well he _is_ the evil overlord of bad kerning.
20:01:06 -!- MoALTz has quit (Quit: Leaving).
20:01:14 <Taneb> :)
20:08:30 -!- epicmonkey has quit (Ping timeout: 264 seconds).
20:17:03 <shachaf> oerjan: OK, I guess that works too.
20:17:37 <shachaf> oerjan: Doesn't work with quot, though!
20:19:39 <oerjan> indeed. i'm not sure i would recommend Deewiant's variant.
20:20:41 <elliott> Sgeo: but i thought you were a "Tcl person" now
20:21:08 <Sgeo> Just because I'm looking at Prolog right now doesn't mean I've given up on Tcl yet.
20:21:40 <Sgeo> On the other hand, in theory I'm _still_ planning on doing some Clojure Koans thing.
20:21:45 <elliott> it does tho
20:22:31 <oerjan> what is the sound of one cons cell clapping?
20:23:01 <Sgeo> This (Prolog) feels too much like learning Haskell again.
20:23:31 <Sgeo> Well, no... just the re-treading of stuff like Peano numbers etc
20:24:08 <oerjan> can someone tell me what is happening here (and what is a crescent roll) http://www.sheldoncomics.com/archive/120806.html
20:24:27 <Phantom_Hoover> Possibly because they're both declarative?
20:27:36 -!- Vorpal has quit (Ping timeout: 276 seconds).
20:28:00 <oerjan> that is obviously some kind of common american experience depictured of which i have no clue.
20:28:49 <Sgeo> "But Prolog is not , repeat not , a full logic programming language."
20:28:53 <Sgeo> What languages are?
20:31:23 <Phantom_Hoover> Man, in 2006 multi-core CPUs were a rarity in consumer devices?
20:32:01 <Phantom_Hoover> Wait that can't be right, I'm pretty sure my old family laptop had 2 cores.
20:32:58 <Phantom_Hoover> Oh wait it had a Core 2 Duo and they were mostly released in 2007.
20:33:32 * oerjan waves from his single-core laptop bought in 2006
20:34:19 * []{}\|-_`^ waves from his single-core laptop bought in 2012
20:34:31 <oerjan> fancy
20:34:31 <Taneb> oerjan, a crescent roll is a croissant in a tin
20:34:41 <Phantom_Hoover> 'Bought' does not generally extend to 'found in dumpster', nortti.
20:35:12 <oerjan> Taneb: ok, but ... wtf is happening there
20:35:22 <Taneb> I dunno
20:35:30 <Taneb> Maybe the tins are hard to open
20:36:13 <oerjan> crescent rolls of DOOM
20:45:11 <Sgeo> I was not expecting ?- member(blah,X). to work in a sensible way. It did.
20:46:03 <[]{}\|-_`^> Phantom_Hoover: why are you addressimg me with my old nick?
20:46:17 <Phantom_Hoover> Aesthetics.
20:46:27 <Phantom_Hoover> Sgeo, huh?
20:46:40 <Phantom_Hoover> Is member a built-in predicate, I forget.
20:46:45 <Sgeo> Yes
20:46:58 <Sgeo> But the tutorial I'm reading gives a two whatever definition
20:47:39 <Phantom_Hoover> Also is it member(element, list)?
20:47:53 <Sgeo> Yes
20:48:23 <oerjan> Sgeo: member(X, [X | Y]). member(X, [Y | Z]) :- member(X, Z). ?
20:48:52 <Sgeo> oerjan, not using those variable names, but yes
20:49:37 <Phantom_Hoover> Yeah that's where I actually found Prolog interesting.
21:00:45 <shachaf> []{}\|-_`^: You should really get a more alphanumeric link. :-(
21:00:52 <shachaf> No matter how much fun bugging #plan9 is.
21:01:04 <[]{}\|-_`^> why?
21:01:15 -!- boily has quit (Quit: WeeChat 0.3.8).
21:01:59 <[]{}\|-_`^> shachaf: by the way I have hilight for nortti
21:07:40 -!- []{}\|-_`^ has changed nick to nortti.
21:09:48 * Sgeo sads at no reverse arithmatic
21:11:58 <oerjan> i thought there were some reverse arithmetic predicates, although the general expression evaluating one isn't iirc
21:12:40 <Sgeo> Oh, ok
21:12:55 <Sgeo> Am only up to is/2
21:13:26 <oerjan> yeah that's the general one
21:13:27 <nortti> is/2?
21:13:42 <nortti> does it have something to do with os/2?
21:13:55 <oerjan> no. it's a predicate with 2 arguments.
21:14:03 <nortti> oh
21:14:18 <oerjan> iirc X is 2+2 will make X = 4, etc.
21:14:25 <Sgeo> Yes
21:14:26 <Sgeo> .
21:21:19 -!- nooga has quit (Ping timeout: 246 seconds).
21:39:29 <Sgeo> Actually, I guess it makes sense you can't do 4 is X+2.
21:39:37 -!- Taneb has quit (Ping timeout: 240 seconds).
21:39:51 <Sgeo> Is X = 2? Is X = 1 + 1?
21:40:08 <Sgeo> If things like + were predicates directly it would make more sense
21:45:32 -!- augur has quit (Remote host closed the connection).
21:57:28 * Sgeo vaguely wonders why Mozart/Oz was abandoned
21:58:19 <Sgeo> Ok, so AliceML is also dead.
22:03:07 <fizzie> oerjan: Why are you in a laptop?
22:04:45 <oerjan> a most intriguing question. thank you for asking that question.
22:04:47 <oerjan> ->
22:04:54 <fizzie> SWI-Prolog manual at least does have a plus/3. That's plus(?Int1, ?Int2, ?Int3), it's true if Int3 = Int1 + Int2, and at least two of the three arguments must be instantiated integers.
22:05:53 <fizzie> "[plus and others in the same list] are not covered by the ISO standard, although they are `part of the community' and found as either library or built-in in many other Prolog systems."
22:06:55 -!- zzo38 has joined.
22:08:09 <zzo38> Do you like a magic ring in Dungeons&Dragons game having effect as follows: Any wearer of this ring is allowed to change its color to whatever you want it to be. You can also change it for five minutes after you remove the ring, regardless of where it is.
22:09:52 <Phantom_Hoover> Magic ring which allows the wearer to unmagic the ring at any time.
22:10:27 <Phantom_Hoover> Although isn't that the kind of thing that people tend to actually find a use for?
22:10:49 <zzo38> Yes if there is a use for it then that is good.
22:11:26 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:11:53 <Phantom_Hoover> It'd be a bit of a stretch to turn the colour changing ring into a gamebreaker, though.
22:12:24 <zzo38> Well, yes; it can have use even though not gamebreaker
22:12:29 <oerjan> fizzie: ah.
22:12:34 <Phantom_Hoover> Or indeed any great use.
22:14:05 <Phantom_Hoover> Oh man, I just realised the principle behind the peasant railgun.
22:14:37 <zzo38> I certainly would disallow the peasant railgun
22:14:41 <Phantom_Hoover> I always thought it relied on convincing the DM that the peasants accelerate the projectile each time they pass it forward, but it's way neater than that.
22:14:45 <Phantom_Hoover> zzo38, why would you do that???
22:15:29 <zzo38> Since it cannot work (even if the rules otherwise allow it).
22:17:17 -!- nooga has joined.
22:19:28 <coppro> why is vim so great
22:19:34 <coppro> I keep discovering new cool things about it
22:19:37 <Phantom_Hoover> It's magic, duh.
22:19:43 <coppro> like g/<<<<<</.,/======/d
22:19:57 <zzo38> I almost played Dungeons&Dragons game today but not quite.
22:20:57 <FreeFull> Phantom_Hoover: How does the peasant railgun work?
22:20:58 <zzo38> You can read the last session I have played if wanted to.
22:21:29 <FreeFull> coppro: That was inherited from ed
22:22:02 <Phantom_Hoover> FreeFull, you get a really, really long line of peasants (a couple of miles, say), then give the peasant at one end a slug and tell him to pass it to the next peasant.
22:22:09 <nortti> coppro: what does that do?
22:22:16 <FreeFull> vi and vim basically have ed embedded in them
22:22:26 <nortti> well ex
22:22:28 <FreeFull> Phantom_Hoover: And then?
22:22:43 <nortti> ed is much lighter and better than ex
22:22:49 <Phantom_Hoover> You tell the rest of the peasants to pick it up and pass it on to the next; with some... dubious interpretation of the rules, they can do this in one combat turn which lasts 6 seconds.
22:23:12 <fizzie> FreeFull: You could just read http://1d4chan.org/wiki/Peasant_Railgun for details.
22:23:16 <FreeFull> Wow
22:23:26 <Phantom_Hoover> fizzie, shut up, explaining it is fun!
22:23:42 <Phantom_Hoover> FreeFull, as the slug has now travelled 2 miles in 6 seconds, it is now travelling at...
22:23:54 <Phantom_Hoover> > 3400 / 6
22:23:56 <lambdabot> 566.6666666666666
22:24:05 <Phantom_Hoover> Metres per second.
22:24:22 <Phantom_Hoover> i.e. over Mach 1.5.
22:24:32 <zzo38> That is still not even close to the speed of light, though.
22:24:50 <Phantom_Hoover> It is, however, rather fast for a medieval setting.
22:25:27 <zzo38> Yes. Well, it is fast for moving things by hand regardless of a setting.
22:27:48 -!- olsner has joined.
22:28:51 <oerjan> `frink c * 6 seconds / 40000 km
22:29:02 <HackEgo> 449688687/10 (exactly 4.49688687e7) m^2 (area)
22:29:09 <oerjan> oops
22:29:23 <coppro> nortti: g/foo/cmd means "execute 'cmd' on each line matching the regex 'foo'
22:29:41 <oerjan> `frink c
22:29:44 <nortti> ok
22:29:53 <coppro> .,/bar/ is a range meaning "execute the next command on each line from here (.) to the next match of the regex 'bar' (the /bar/)
22:29:53 <HackEgo> 299792458 m s^-1 (velocity)
22:29:57 <coppro> d means delete the line
22:30:10 <oerjan> something is wrong here
22:30:14 <coppro> the net result is that it deletes all left entries from merge conflicts :)
22:30:17 <oerjan> `frink c * 6 seconds / (40000 km)
22:30:23 <coppro> a similar g/>>>>>>/d will delete the tail line
22:30:28 <HackEgo> 449688687/10000000 (exactly 44.9688687)
22:30:48 <fizzie> Personally I don't even think that exit velocity assessment is well-founded. I mean, just taking distance/time as the final velocity sort of assumes constant speed for the entire track.
22:30:50 <oerjan> there you go, just wind the peasants 44 times around the earth, and you'll be all set
22:33:07 <fizzie> oerjan: And if you do it 45 times, it'll go faster than light?
22:33:24 <oerjan> fizzie: the distance/time is the average, though, which must be at most the maximum
22:33:32 <Phantom_Hoover> fizzie, true, but the velocity's hardly going to start above 500m/s and go *down*, is it?
22:33:38 <oerjan> fizzie: yep!
22:34:51 <Phantom_Hoover> fizzie, depends, is anyone's character Einstein?
22:35:32 <oerjan> ye olde lorentz contracted peasants
22:35:36 -!- stanley has joined.
22:36:38 <oerjan> and stanley is no longer on death row
22:37:01 <Phantom_Hoover> the stanley parable
22:39:20 <oerjan> "...it's actually best if you don't know anything about it before you play it :D" <-- darn
22:44:03 <zzo38> Is your character going to be Einstein?
22:46:25 <oerjan> Zweiundhalbstein
22:58:15 <olsner> Keinstein
23:00:04 <Phantom_Hoover> I don't think Einstein would be very good in combat.
23:09:41 -!- nortti_ has joined.
23:24:53 <FreeFull> I wish there was a s-lang IRC channel
23:32:11 <zzo38> Not all the characters are very good in combat.
23:33:41 <FreeFull> I have a problem right now which prevents me from writing an IRC client, but would still allow me to write a bot
23:35:23 * oerjan guesses the problem is waiting for two input streams at once
23:35:24 <nortti_> why?
23:36:52 <FreeFull> oerjan: Yuup
23:37:07 <oerjan> sadly i don't know how to do that in s-lang
23:37:25 -!- mig22 has joined.
23:37:27 <oerjan> although in C i think one uses the select system call
23:38:04 <oerjan> (and in haskell you just start a thread for each stream to read from)
23:38:46 <FreeFull> Yeah, s-lang doesn't have threading
23:38:54 <FreeFull> It might have select though, let me check
23:38:55 <oerjan> (which ghc cleverly translates into the C version)
23:39:04 <shachaf> I heard threads are the future.
23:39:22 <FreeFull> shachaf: Threads suck, actor model is the future
23:39:33 <shachaf> TWIST: actors *are* threads
23:39:34 <FreeFull> Erlang style
23:39:58 <coppro> +1
23:40:23 <oerjan> (actually i think ghc is using something even more efficient than select that allows many more files)
23:40:39 <elliott> FreeFull: threads are actors tho
23:40:41 <oerjan> on linux, anyway
23:40:47 <elliott> in semantics
23:40:56 <elliott> "threads vs. actors" is confusing semantics for implementation
23:41:07 <elliott> well, more like *actors are threads
23:41:24 <FreeFull> By actors I mean threads that communicate through passing messages and are otherwise independent
23:42:29 <elliott> yes but you can do shared mutable state with actors
23:42:32 <elliott> and message-passing with shared mutable state
23:42:36 <elliott> they are basically equivalent
23:42:48 <elliott> indeed most Haskell threaded programming resembles actor style to a fairly large degree
23:42:54 <elliott> actor model has a whole bunch of problems though, it is not very declarative at all
23:43:16 <shachaf> elliott: Can you write this UTF-8 decoding code for me?
23:43:33 <elliott> shachaf: Is it.. hard? UTF-8 is pretty simple.
23:43:34 <FreeFull> oerjan: I could use slGTK, but I want something non-graphical for my IRC client
23:43:36 <shachaf> thinadvanceelliott
23:43:39 <shachaf> elliott: No, just annoying.
23:43:46 <shachaf> The annoying part isn't the decoding but the encoding, really.
23:44:31 <elliott> What language?
23:44:58 <shachaf> Probably C.
23:45:02 <oerjan> all i know about s-lang really is that back in the 90's there was a rather popular usenet reader slrn written in it
23:45:19 <shachaf> (I don't mean UTF-8 encoding, I mean the other side of UTF-8 decoding.)
23:45:27 <elliott> shachaf: The other side?
23:46:12 <shachaf> Anyway encoding is already working.
23:46:37 <pikhq_> shachaf: What language are you dealing with?
23:46:57 <shachaf> Portuguese, probably?
23:47:08 <pikhq_> shachaf: Programming language.
23:47:13 <pikhq_> Oh, C.
23:47:25 <pikhq_> http://bjoern.hoehrmann.de/utf-8/decoder/dfa/ Thar
23:47:34 <shachaf> Haskell code that calls into C to do the decoding.
23:47:40 <elliott> shachaf: What do you mean by the other side of UTF-8 decoding?
23:47:47 <shachaf> pikhq_: It's already using that code.
23:47:56 <pikhq_> Then, what's the hard part?
23:48:03 <shachaf> elliott: I mean the 63-bit thing.
23:48:20 <elliott> shachaf: What are you implementing this for? Just out of curiosity?
23:48:30 <shachaf> For fun!
23:49:09 <pikhq_> That's got to be the least convenient Unicode representation. Though at least it's also highly compact.
23:49:15 -!- nooga has quit (Ping timeout: 256 seconds).
23:49:21 <shachaf> It's not as compact for ASCII as UTF-8!
23:49:34 <elliott> It's probably more compact than UTF-8 for some texts.
23:49:39 <Gregor> UTF-4096 is best UTF.
23:49:40 <shachaf> Sure.
23:49:55 <shachaf> Anyway it's annoying to write it efficiently.
23:50:05 <nortti_> UTF-1 is the best
23:50:47 <Gregor> nortti_: You just have as many 1 bits as the codepoint, then a 0 bit? :)
23:50:59 <nortti_> yes
23:51:09 <shachaf> Gregor: UTF-1 is actually a thing.
23:51:18 <nortti_> is it?
23:51:22 <shachaf> https://en.wikipedia.org/wiki/UTF-1
23:51:29 <shachaf> Sort of like a worse UTF-8.
23:51:32 <pikhq_> Yes. It kinda sucks.
23:51:52 <Gregor> ...
23:51:58 <Gregor> It's also not named consistently with UTF-EVERYTHINGELSE
23:52:20 <nortti_> that UTF-1 is not as fun as my UTF-1
23:52:25 <Gregor> No.
23:52:31 <pikhq_> It really isn't.
23:56:09 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
2012-08-07
00:15:30 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
01:01:22 -!- derdon has quit (Remote host closed the connection).
01:17:30 -!- pikhq_ has quit (Read error: Operation timed out).
01:19:03 -!- pikhq has joined.
01:22:37 -!- Jafet has quit (Quit: Leaving.).
01:28:29 -!- azaq23 has quit (Quit: Leaving.).
01:30:32 -!- augur has joined.
01:36:14 <elliott> Deewiant: Ping
01:44:29 -!- david_werecat has quit (Read error: Connection reset by peer).
01:44:42 -!- david_werecat has joined.
02:04:13 -!- Jafet has joined.
02:35:52 -!- elliott has quit (Read error: Connection reset by peer).
02:36:34 -!- elliott has joined.
02:43:40 <zzo38> I thought of some rules for a different game played using snooker ball/table.
02:45:07 -!- david_werecat has quit (Ping timeout: 240 seconds).
02:45:51 -!- TodPunk has quit (Ping timeout: 260 seconds).
02:59:07 <FreeFull> oerjan: Due to my problem, instead of being a client it's an IRC bot now
03:00:42 <oerjan> quite so.
03:11:43 -!- pikhq_ has joined.
03:14:07 -!- pikhq has quit (Ping timeout: 240 seconds).
04:01:59 -!- oerjan has quit (Quit: Good night).
04:14:47 <oklopol> why are there like 20 clop videos on youtube where the point is to laugh at the game
04:15:10 <oklopol> why would you upload a video where you suck
04:15:37 <oklopol> well there's the one who actually finishes it but i'd expect *someone* to upload a video where they actually play well
04:17:53 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:51:58 <itidus21> clop as in qwop?
04:53:06 * itidus21 discovers that the google logo game can be played with the mouse alone
04:53:45 * itidus21 discovers that 2+2=4
05:03:00 -!- Jafet has quit (Read error: Connection reset by peer).
05:10:44 -!- Jafet has joined.
05:23:20 -!- TodPunk has joined.
05:48:47 -!- pikhq_ has quit (Ping timeout: 240 seconds).
05:48:50 -!- pikhq has joined.
06:29:15 -!- asiekierka_ has joined.
06:29:24 -!- asiekierka_ has quit (Remote host closed the connection).
06:29:29 -!- asiekierka has joined.
06:49:56 <Deewiant> elliott: Pong
06:51:41 -!- nooga has joined.
06:51:48 <elliott> Deewiant: Too late!
06:52:26 <Deewiant> Okay
06:52:52 -!- asiekierka has quit (Remote host closed the connection).
06:53:04 -!- asiekierka has joined.
06:56:49 -!- epicmonkey has joined.
06:58:19 <itidus21> @google snozzberry
06:58:22 <lambdabot> http://www.urbandictionary.com/define.php?term=snozzberry
06:58:22 <lambdabot> Title: Urban Dictionary: snozzberry
07:13:08 -!- zzo38 has quit (Remote host closed the connection).
07:14:33 <shachaf> nortti: Is oonbotti yours?
07:14:52 -!- Taneb has joined.
07:14:58 -!- Eladith has quit (Quit: Changing server).
07:16:06 <itidus21> <Fry> No, make up some feelings and tell her you have them. *Zoidberg raises his hand. <Fry> Yes? <Zoidberg> Is desire to mate a feeling? <Fry> Ugh, you're not even trying. <Zoidberg> Ohhh, it's all so complicated, with the flowers, and the romance, and the lies upon lies.
07:22:04 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:27:01 -!- Eladith has joined.
07:43:38 -!- nooga has quit (*.net *.split).
07:43:39 -!- soundnfury has quit (*.net *.split).
07:43:39 -!- yiyus has quit (*.net *.split).
07:48:08 -!- nooga has joined.
07:52:55 -!- yiyus has joined.
07:56:29 -!- mig22 has joined.
08:04:16 <Taneb> Hello
08:08:35 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
08:11:45 -!- soundnfury has joined.
08:25:08 <olsner> <oerjan> (and in haskell you just start a thread for each stream to read from) <-- you can do that in C too
08:26:43 <olsner> oh, he's not even here
08:26:49 <olsner> nm then
08:27:33 -!- epicmonkey has joined.
08:28:26 <shachaf> olsner: C DOESN'T HAVE THREADS WHAT ARE YOU TALKING ABOUT
08:28:30 <shachaf> I guess C11 does.
08:48:46 <olsner> I'm not sure, but they might be waterboarding on the olympics now
08:50:41 -!- Phantom_Hoover has joined.
08:53:27 <nortti> shachaf: yes
08:53:42 <nortti> shachaf: why do you ask?
08:58:09 <fizzie> Someone posted an amusing screencap about the Finnish Olympic team's Facebook fan page; it has a standard "non-profit organization" description prominently below the name, except in the Finnish localization that's "voittoa tavoittelematon yhdistys", lit. "an organization which does not try to win", a kind of a defeatist goal for an Olympic team to have. (Finnish "voitto" can mean both profit ...
08:58:15 <fizzie> ... and win/victory.)
08:58:45 <shachaf> nortti: Why not?
08:59:35 <nortti> well what made you ask that?
09:07:01 <itidus21> of all the things my teeth can do.. why toothache.. why now... why not when i am older and i can remove them without scaring away the babes
09:13:46 -!- asiekierka has quit (Quit: Connection reset by PO).
09:22:28 -!- Taneb has quit (Ping timeout: 246 seconds).
09:27:34 -!- itidus21 has quit (Ping timeout: 252 seconds).
09:43:25 -!- Taneb has joined.
09:46:10 -!- itidus21 has joined.
10:04:11 <Taneb> Hello
10:21:05 -!- azaq23 has joined.
10:21:21 -!- azaq23 has quit (Max SendQ exceeded).
10:21:52 -!- azaq23 has joined.
10:27:08 -!- Jafet has quit (Quit: Leaving.).
10:36:38 -!- david_werecat has joined.
10:40:06 -!- derdon has joined.
10:52:26 -!- Ngevd has joined.
11:07:43 -!- soundnfury has quit (Read error: Operation timed out).
11:12:05 -!- ais523 has joined.
11:16:45 -!- Ngevd has quit (Quit: Page closed).
11:21:48 -!- david_werecat has quit (Ping timeout: 245 seconds).
11:22:21 <elliott> Deewiant: Hey, you know lots about Windows file locking APIs, right?
11:22:45 <Deewiant> Not really, no.
11:23:04 <Deewiant> Off the top of my head there's a LockFile function.
11:23:13 <Deewiant> Probably an UnlockFile as well.
11:23:55 <Deewiant> Unless you're talking about opening with exclusive access, which is different.
11:25:33 <elliott> Deewiant: Opening with exclusive access works for me too.
11:25:47 <Deewiant> Use fopen(3), then. :-P
11:26:00 <elliott> Deewiant: There's a flag for that?
11:26:13 <elliott> There must be some reason this code does an fcntl/F_SETLK dance.
11:26:29 <elliott> I mean, there's read locks and write locks here!!
11:27:24 <Deewiant> fopen_s evidently does exclusive access by default.
11:27:54 <elliott> Does that exist on Linux? I sure wish I could avoid an #ifdef of any kind here. :(
11:28:58 <Deewiant> I'm not sure whether fopen(3) opens with sharing or not.
11:29:23 <Deewiant> But in any case, if you want to lock on Linux as well, I'm pretty sure you need an #ifdef.
11:29:47 <Deewiant> glibc adds the "x" flag for fopen, which passes O_EXCL to open(2).
11:30:08 <Deewiant> Including it will probably cause an error on Windows.
11:32:34 -!- epicmonkey has quit (Remote host closed the connection).
11:33:09 -!- epicmonkey has joined.
11:36:21 -!- Taneb has quit (Ping timeout: 248 seconds).
11:41:46 -!- Taneb has joined.
11:42:35 -!- soundnfury has joined.
11:47:40 -!- ogrom has joined.
11:51:46 <elliott> Deewiant: So does that fopen_s thing have a "read lock" vs. "write lock" concept?
11:52:18 <Deewiant> No, it's just "nobody else can touch this"
11:52:36 <Deewiant> Read MSDN's fopen_s page, I think they linked to something with more granularity
11:52:43 <Deewiant> In the end you can always use CreateFile
11:53:25 <elliott> OK.
11:56:35 -!- boily has joined.
11:58:53 -!- Taneb has quit (Ping timeout: 252 seconds).
12:08:13 -!- mig22 has joined.
12:20:54 -!- ogrom has quit (Quit: begone).
12:26:54 -!- mig22 has quit (Quit: mig22).
12:59:25 -!- aloril has quit (Ping timeout: 244 seconds).
13:15:48 -!- aloril has joined.
13:43:17 -!- MoALTz has joined.
14:07:05 -!- copumpkin has joined.
15:13:13 -!- asiekierka has joined.
15:32:23 <Sgeo> It occurs to me that, although I read about Fibers in Ruby once, I don't know the difference between fibers and coroutines.
15:33:26 <Sgeo> Back when I read about them, I thought the difference was that fibers can call yield in a function nested in a function and have it work properly --- but that's a distinction between types of coroutines.
15:33:34 <Sgeo> I only knew of Python generators at the time
15:52:30 -!- aloril has quit (Ping timeout: 244 seconds).
15:52:32 -!- zzo38 has joined.
15:53:21 -!- Vorpal has joined.
16:03:15 -!- sirdancealot7 has joined.
16:03:25 <zzo38> gopher://zzo38computer.cjb.net:70/0textfile/gamerules/00001
16:05:07 <zzo38> What is your opinion of this game?
16:08:52 -!- aloril has joined.
16:09:26 <Phantom_Hoover> poor game, did not load properly in browser
16:10:20 -!- TodPunk has quit (Read error: Connection reset by peer).
16:10:31 -!- TodPunk has joined.
16:12:32 <zzo38> Then load it on a command-line
16:13:43 -!- oklopol has quit (Ping timeout: 252 seconds).
16:14:02 -!- oklopol has joined.
16:15:26 <zzo38> (It is only the text and does not play game by computer)
16:19:23 * Sgeo wonders if Erlang's run-time hot-swapping stuff is overkill for just wanting to develop without stopping the program.
16:27:53 <FreeFull> My IRC bot is looking ok
16:28:02 <FreeFull> Yay debugging using netcat
16:34:00 <oklopol> clop stopped working :(
16:34:07 <oklopol> http://www.foddy.net/CLOP.html is it just me?
16:34:59 -!- pikhq_ has joined.
16:36:44 <olsner> ok, that clop is boring compared to other kinds of clop
16:36:54 <Gregor> *nods*
16:37:58 -!- pikhq has quit (Ping timeout: 244 seconds).
16:38:17 <oklopol> oh um suddenly i can't open youtube either.
16:38:21 <oklopol> couldn't load plogin
16:38:24 <oklopol> plugin
17:04:14 <FreeFull> oklopol: Works for me
17:15:41 -!- epicmonkey has quit (Ping timeout: 246 seconds).
17:29:33 <zzo38> I have made a few changes to that file.
17:29:37 -!- oklopol has quit (Ping timeout: 252 seconds).
17:30:20 -!- oklopol has joined.
17:45:38 -!- Gregor has changed nick to Poniest.
17:52:44 <quintopia> what have you done to become more pony?
17:54:39 <Poniest> I was always the poniest.
17:56:28 -!- asiekierka has quit (Remote host closed the connection).
18:03:32 <FreeFull> Oooh, S-lang has a select module
18:03:36 <FreeFull> So I can write my IRC client after all
18:07:36 <Vorpal> hm the video sync is broken on youtube for me today... How strange
18:07:46 <Vorpal> even on videos that worked fine earlier
18:21:04 -!- epicmonkey has joined.
18:26:58 -!- aloril has quit (Ping timeout: 250 seconds).
18:27:26 -!- cheater has joined.
18:39:57 -!- aloril has joined.
18:44:44 -!- aloril has quit (Ping timeout: 250 seconds).
18:56:32 -!- aloril has joined.
18:58:58 -!- ogrom has joined.
19:21:40 -!- monqy has quit (Quit: hello).
19:24:22 <Poniest> So what should I do for the next IOCCC.
19:24:48 <FreeFull> Poniest: a textmode rotozoomer
19:25:03 <Poniest> So, I should just steal ideas from the last IOCCC then?
19:25:56 <nortti> Poniest: if you want something that has not been done at IOCCC try operating system :P
19:26:45 <Poniest> ... there hasn't been a kernel in IOCCC???
19:27:01 -!- ogrom has quit (Quit: Left).
19:27:34 <nortti> I don't think so
19:28:21 <olsner> do the rules allow a sensible "kernel"? kernels typically aren't very portable
19:28:40 <olsner> not that ioccc stuff has to be completely portable
19:28:48 <nortti> oh. it has been done
19:28:55 <FreeFull> I think I recall there being a tiny OS in the IOCCC
19:29:01 <FreeFull> Might have been some other contest though
19:29:11 <FreeFull> It had mouse support!
19:29:22 -!- oerjan has joined.
19:30:20 <nortti> and windowing system
19:30:51 <oerjan> <olsner> <oerjan> (and in haskell you just start a thread for each stream to read from) <-- you can do that in C too <-- yes, but not without segfaulting on the first six tries.
19:30:57 <oerjan> or so i hear.
19:31:12 <nortti> Poniest: windowing system
19:31:14 <olsner> hmm, here's one that generated a kernel image: http://www.ioccc.org/2004/gavin.hint
19:31:21 <zzo38> They make the programs that segfault on the first six tries if not being good at C programming.
19:31:37 <Poniest> <olsner> do the rules allow a sensible "kernel"? kernels typically aren't very portable // I wrote a JIT ^^
19:31:39 <oerjan> zzo38: NO, EVERYONE. NO EXCEPTIONS.
19:32:48 <olsner> Poniest: yeah, I know :)
19:33:03 <zzo38> oerjan: Are you sure?
19:33:36 <zzo38> Do you know if exist a free and open source clone of Famicom Disk System BIOS?
19:33:42 -!- Taneb has joined.
19:34:10 <oerjan> zzo38: SO I HEAR.
19:35:14 <Taneb> Hello!
19:35:38 <olsner> hi
19:37:13 <nortti> olsner: that os seems pretty awesome. maybe I should use it as my main os :P
19:37:21 <FreeFull> There isn't any info on how you invoke select() from S-Lang. In C, it requires a custom data structure, but that structure doesn't seem to be around in S-Lang
19:39:56 -!- asiekierka has joined.
19:43:58 -!- elliott has quit (Ping timeout: 244 seconds).
19:44:14 <Sgeo> I have vague memories of select() not working the way I wanted it to on Windows
19:54:17 <olsner> would be fun to do some iocccing eventually
19:54:21 <FreeFull> Seems in S-Lang, select() returns two values and takes arrays of file descriptors
19:56:23 <ais523> hmm… it seems that a Lotus Notes marketing guy found a thread discussing it in TDWTF forums, necro'd it, and it's sort-of taken off
19:56:46 <ais523> you can sort-of guess what happened from there
19:57:32 <oerjan> enormous increase in market share?
19:57:45 <ais523> if so, I doubt it's correlated
19:57:53 <olsner> necro'd?
19:57:56 <ais523> you do know what Lotus Notes is, right?
19:58:04 <ais523> olsner: forum term for when you post in a really old thread
19:58:11 <ais523> forums vary a lot on how much it's permitted
19:59:02 <zzo38> I think it ought to be always perferred over making a new thread about the same thing as the other one
19:59:27 <olsner> something being discussed on tdwtf can not be good for whatever being discussed
19:59:49 <olsner> istr that notes is one of those things that ought not have good things happen to it
20:01:24 <ais523> <MatNewman> Don't know how that's relevant to a discussion on Lotus Notes. Ctrl+N in most software gives you a new "*". Since Lotus Notes is a database application, in Lotus Notes it gives you a new Database.
20:01:39 <ais523> (note: Lotus Notes is most commonly sold as / used as an email client, or Outlook-equivalent)
20:01:46 <ais523> this is from the person who's defending it
20:02:22 <olsner> it's important to respect what people *should* use your software for, not what they're actually trying to do
20:03:03 <zzo38> Computer software can be used for other purposes not necessarily only what it is designed for, though.
20:03:18 <olsner> yes, but it's WRONG
20:03:34 <olsner> (note: not really)
20:04:31 <ais523> anyway, TDWTF have been strongly against Lotus Notes for years
20:04:31 <ais523> they're continuing for personal amusement, I think
20:04:38 <ais523> not sure why the marketing person is, possibly the same reason
20:04:54 <ais523> alternatively, there's a theory that it's an exceptionally clever troll
20:05:00 <ais523> but if so, it's fun enough to continue to watch
20:05:05 <olsner> yeah, could be a troll who is slightly more-than-averagely familiar with notes
20:05:11 -!- augur has quit (Remote host closed the connection).
20:05:38 -!- augur has joined.
20:10:29 -!- augur has quit (Ping timeout: 255 seconds).
20:18:03 -!- pikhq_ has quit (Ping timeout: 245 seconds).
20:18:05 -!- pikhq has joined.
20:26:21 -!- asiekierka has quit (Remote host closed the connection).
20:36:45 <olsner> oh, so the reason for the necroing was that notes' feed reader lost the post for 2 months
20:37:03 <oerjan> >_>
20:37:28 -!- Vorpal has quit (Ping timeout: 246 seconds).
20:38:08 <itidus21> good marketing is turning a negative into a positive
20:38:59 <zzo38> Is there a option for GCC to compile a C program file twice with different preprocessor macros?
20:39:42 <nortti> why?
20:40:36 <zzo38> Since there need two versions of this file (including different .o file if it would help)
20:41:15 <nortti> I think you need to compile it twice
20:41:47 <olsner> use the "&& gcc" flag, then repeat the command line for the second file
20:42:14 <oerjan> what happens if you just list the file twice with options to change other things between?
20:42:21 * oerjan is just wildly guessing here
20:42:24 <zzo38> What is option to make a different .o file output?
20:42:33 <nortti> -o
20:42:51 <nortti> gcc -c foo.c -o foo.o
20:43:03 <zzo38> OK
20:43:04 <nortti> gcc foo.o -o foo
20:43:25 <nortti> why with all caps?
20:43:46 <olsner> isn't that how you're supposed to spell ok?
20:44:10 <Poniest> Yes X_X
20:44:10 <zzo38> Why do you and others write with all lowercase, then?
20:44:35 <Poniest> “OK” and “okay” are commonly-accepted spellings. “ok” is not.
20:45:03 <zzo38> Poniest: Unless it is Forth, in which case the prompt should be spelled "ok".
20:46:16 <oerjan> i use the secret all-lowercase font, except when i don'T
20:46:17 <olsner> OK and upper-case ok are ambiguous though, so you can't tell if someone's shouting ok or just saying OK
20:46:32 <olsner> and OK can't be shouted, while ok can
20:46:47 <oerjan> O KAY
20:46:54 <zzo38> If you want to write shouting write !!!!!!!!!!!!!!!!!!!!!!!!
20:47:04 <olsner> ok!!!
20:47:10 <oerjan> how archaic!
20:47:19 <nortti> zzo38: why?!!!!!!!!!!!!!!!!!!!!!!!!
20:47:29 <oerjan> who uses PUNCTUATION for shouting these days
20:47:32 <olsner> btw, today is saturday
20:47:42 <oerjan> right...
20:47:53 * oerjan sidles away from time dilated olsner
20:47:54 <zzo38> It is not Saturday in my country.
20:47:59 <olsner> since I'm not working either today or tomorrow, it is a saturday
20:48:02 <nortti> neither in mine
20:48:13 -!- augur has joined.
20:48:20 <zzo38> I don't think it is Saturday anywhere on Earth because the timezones don't work that way.
20:49:27 <olsner> Saturday has been in effect since July 14
20:49:27 <nortti> well what if someone of us is using time machine modem?
20:50:34 <pikhq> zzo38: Y'mean nobody uses UTC-100? :P
20:51:11 <zzo38> pikhq: I wouldn't think they would use UTC-100, but I don't know everything.
20:51:19 <nortti> zzo38: nowhere on _Earth_. what about other planets
20:52:02 <zzo38> Maybe on other planets they might do so if there are more hours in a day
20:53:14 <oerjan> !haskell import Control.Concurrent; main = foldr ((>>) . forkIO . putChar) (return ()) "time machine modem"
20:53:28 <EgoBot> time machine modem
20:53:36 <oerjan> oops
20:53:41 <oerjan> oh wait
20:55:20 <oerjan> !haskell import Control.Concurrent; main = foldr ((. forkIO) . (>>) . putChar) (return ()) "time machine modem"
20:55:21 <olsner> also, there are actually only 5 days of the week: monday, tu/we/thursday, friday, saturday and sunday
20:55:25 <EgoBot> ​\ /tmp/runghcXXXX5680.hs:1:55: \ Couldn't match expected type `()' with actual type `ThreadId' \ Expected type: IO a0 -> IO ThreadId -> IO () \ Actual type: IO a0 -> IO ThreadId -> IO ThreadId \ In the first argument of `(.)', namely `(>>)' \ In the second argument of `(.)', namely `(>>) . putChar'
20:55:31 <oerjan> argh
20:55:44 <olsner> obviously, most weeks the middle weekday happens three times
20:55:51 <oerjan> !haskell import Control.Concurrent; main = foldr ((. forkIO) . (>>) . putChar) (return undefined) "time machine modem"
20:55:56 <EgoBot> ​\ /tmp/runghcXXXX5739.hs:1:55: \ Couldn't match expected type `()' with actual type `ThreadId' \ Expected type: IO a0 -> IO ThreadId -> IO () \ Actual type: IO a0 -> IO ThreadId -> IO ThreadId \ In the first argument of `(.)', namely `(>>)' \ In the second argument of `(.)', namely `(>>) . putChar'
20:57:07 <oerjan> oh hm
20:57:25 <nortti> 19:59 < Gregor> Poor nortti. IRCing through a time-machine-router.
20:57:40 <nortti> it was time machine router, not modem
20:58:12 <oerjan> <nortti> well what if someone of us is using time machine modem?
20:58:21 <oerjan> THE PAST DISAGREES WITH YOU
20:59:00 <nortti> oerjan: I didn't remeber correctly
21:00:45 <oerjan> !haskell import Control.Concurrent; main = foldl ((. putChar) . (>>) . forkIO) (return undefined) "time machine modem"
21:00:51 <EgoBot> medom enihcam emit
21:00:58 <oerjan> bah :(
21:01:22 -!- epicmonkey has quit (Ping timeout: 265 seconds).
21:02:29 -!- Taneb has quit (Quit: Leaving).
21:02:30 <oerjan> !haskell import Control.Concurrent; main = foldl ((. (forkIO . putChar)) . (>>) . forkIO) (return undefined) "time machine modem"
21:02:35 <EgoBot> ​\ /tmp/runghcXXXX5876.hs:1:74: \ Couldn't match expected type `ThreadId' with actual type `()' \ Expected type: IO ThreadId -> IO a0 \ Actual type: IO () -> IO ThreadId \ In the second argument of `(.)', namely `forkIO' \ In the second argument of `(.)', namely `(>>) . forkIO'
21:03:01 <olsner> I should write down my day-of-week rules somewhere
21:03:10 <nortti> why?
21:03:43 <olsner> so that I have proof when I say it's saturday and you say it isn't :)
21:04:17 <olsner> of course, it might not be saturday for you
21:06:02 <nortti> oerjan: what are you trying to do?
21:06:20 <oerjan> getting a bit of nondeterminism
21:06:22 <zzo38> Astrolog says day of Mercury 1407.60 and day of Venus 5832.24 so once you decide what is UTC, then I suppose you could have UTC-100
21:07:03 <olsner> "The proper medication for a case of Lotus Notes comes in a variety of calibers, and is best applied intracranially."
21:07:12 <olsner> the notes hate runs deep in these waters
21:07:21 <oerjan> !haskell import Control.Concurrent; main = foldl ((. ((>> return ()) . forkIO . putChar)) . (>>) . forkIO) (return ()) "time machine modem"
21:07:27 <EgoBot> me
21:07:36 <oerjan> O KAY
21:09:56 -!- nooga has quit (Ping timeout: 256 seconds).
21:10:50 * oerjan knows why that happened, but gives up anyhow.
21:16:43 -!- augur has quit (Remote host closed the connection).
21:22:01 <olsner> oh, this lotus notes thread mentions an MLP mod for Skyrim
21:22:58 <shachaf> ion: Hey, maybe I can register a .fi domain.
21:23:13 <shachaf> s/y/h/, naturally.
21:23:54 <nortti> shachaf: why?
21:24:42 <shachaf> Why what?
21:25:42 <nortti> why you'd want to register .fi domain?
21:26:21 <shachaf> Because there are so many good ones not taken!
21:26:56 <olsner> that's because finnish domain names need to be valid finnish words
21:27:14 <shachaf> They do?
21:27:17 <nortti> why?
21:27:25 <olsner> to make sure only the bad ones are taken? I dunno
21:27:36 * shachaf didn't see that in the list of requirements.
21:27:37 <nortti> how the hell dy.fi is allowed then?
21:28:26 * olsner is obviously the expert on finnish domain names here
21:28:54 <shachaf> olsner: You don't mean to say that you would -- just make things up? And type them into IRC?
21:29:21 <oerjan> ei dy suomi
21:29:47 <nortti> mitä?
21:29:55 <oerjan> kaksi
21:29:56 <olsner> shachaf: why would I do something like that?
21:30:07 <ion> olsner: You are talking out of your ass. :-P
21:30:18 <ion> shachaf: I suppose you could.
21:30:31 <shachaf> Apparently one needs a Finnish mailing address.
21:30:38 <ion> oh
21:30:46 <shachaf> Also, Finnish domains are expensive.
21:31:05 <olsner> yhdeksän?
21:31:41 <nortti> miksi te kommunikoitte numeroilla?
21:32:00 <olsner> iirc, a hundred euros in finnish would be €sata
21:32:30 <nortti> actually it would be sata euroa
21:33:00 <olsner> ok
21:33:39 <oerjan> meidän pitää laskea
21:33:45 <nortti> miksi?
21:34:32 <oerjan> koska numerot ovat perusta maailmankaikkeuden
21:35:17 <nortti> ovatko? minä luulin että alkeishiukkaset ovat
21:36:14 -!- augur has joined.
21:36:48 <oerjan> what kind of language has maailmankaikkeus be the word for "universe", anyhow
21:37:13 <shachaf> The good kind!
21:37:59 <ion> That translates directly to something like “the entirety of the world”.
21:38:08 -!- augur has quit (Remote host closed the connection).
21:38:31 <olsner> hmm, I kind of want to learn finnish now
21:38:55 <nortti> why?
21:39:05 <olsner> because it's weird
21:39:30 <nortti> also epäjärjestelmällisyydettymyydeltäänkin
21:39:31 <oerjan> technically there is a norwegian word "verdensaltet" that's similar, but everyone outside church services says universet anyhow
21:40:32 <ion> The world salt
21:40:53 <olsner> hmm, or worth salt?
21:41:02 <boily> nortti: because of you, my mouth hurts.
21:41:20 <ion> yliesierikoisapulaisvaravaurioraivausvuorovarausratkaisupäällikkö
21:41:24 <olsner> "Your search - epäjärjestelmällisyydettymyydeltäänkin - did not match any documents."
21:42:40 <ion> epäjärjestelmällistyttämättömyydellisyydellänsäkäänköhän
21:42:42 <nortti> olsner: that is not a common word
21:43:10 <olsner> helpful google translate suggests "Did you mean: epäjärjestelmällisyyde ttymyydeltäänkin"
21:43:17 <olsner> but still can't translate it :)
21:43:32 <nortti> well those two words mean nothing
21:43:38 <oerjan> uncertainty a systematic heaped sell Delta each
21:43:51 <oerjan> i get if i split the first one just right
21:44:06 <nortti> :P
21:44:07 <ion> It can’t be split. It’s not a compound word.
21:44:18 <ion> (The yliesi… is, on the other hand.)
21:45:02 <ion> Well. It is, actually. The words are “epä” and “järjestelmällistyttämättömyydellisyydellänsäkäänköhän”.
21:45:25 <olsner> "taneously from one non-systematic heaped sell Anki"
21:46:02 <ion> Or is it? Epä is a prefix that couldn’t be used on its own.
21:46:32 <ion> I guess it isn’t a compound word after all.
21:47:19 <olsner> anyway, what does any of those long words mean?
21:47:27 <nortti> can someone help me with -täänkin translating postfix?
21:48:03 <oerjan> i cannot get the i in -pulaisvara- to fit into anything translatable :(
21:48:24 <nortti> it is apulaisvara
21:49:02 <nortti> or -apulais- -vara-
21:49:35 <oerjan> ah it knew apulais
21:50:08 <oerjan> ooh it manages all of varavaurioraivausvuorovarausratkaisupäällikkö
21:50:19 <nortti> the base word for apulais is apulainen
21:50:43 <oerjan> over
21:50:43 <oerjan> ancestors
21:50:43 <oerjan> special
21:50:43 <oerjan> Deputy
21:50:44 <olsner> haven't gotten anything out of yliesierikois yet though
21:50:45 <oerjan> Vice-mining damage interactive booking solution manager
21:50:57 <FreeFull> Universe is wrzechświat in Polish
21:51:15 <FreeFull> Which means "all world/worlds"
21:51:25 <olsner> hmm, "more than a special pre-clearance as assistant vice-lesion interaction booking solution manager"
21:51:37 <olsner> (after splitting to yli esi erikois apulais varavaurioraivausvuorovarausratkaisupäällikkö)
21:52:03 <oerjan> olsner: um that's the same as my splitting but a different translation
21:52:09 <olsner> interesting
21:52:34 <oerjan> ah you used spaces instead of newlines
21:52:43 <nortti> actually "more than a special pre-clearance as assistant vice-lesion interaction booking solution manager" would be "enemmän kuin erikoisapulaisvaravaurioraivausvuorovarausratkaisupäällikkö"
21:53:29 <olsner> but I did have "Vice-mining damage interactive booking solution manager" as part of most of my splits
21:56:12 <FreeFull> erikoisapulaisvaravaurioraivausvuorovarausratkaisupäällikkö
21:56:17 <FreeFull> That's almost as long as some German words
21:56:41 <Sgeo> HELO
21:56:43 <Sgeo> HELP
21:56:51 <Sgeo> My computer thinks I'm holding down shift
21:57:05 <nortti> why?
21:57:19 <FreeFull> Sgeo: Press both shift keys and depress?
21:57:26 <FreeFull> And try toggling capslock twice too
21:57:37 <Sgeo> Didn't help
21:57:48 <FreeFull> So if you press 2
21:57:56 <FreeFull> Do you not get the number
21:58:01 <oerjan> toggling capslock _once_ might also help in certain cases >:)
21:58:09 <olsner> wikipedia gave me kumarreksituteskenteleentuvaisehkollaismaisekkuudellisenneskenteluttelemattomammuuksissansakaankopahan ... google translate seems to be entirely stumped
21:58:26 <Sgeo> Weird I can type in here without it thinking that
21:59:19 <oerjan> hm when i have such a problem it usually helps when i go to the irssi session in putty and type something using a genuine shift.
21:59:44 <oerjan> (for some reason other windows don't often work as well)
22:00:17 <olsner> oh wow, "The longest word ever used in Sanskrit literature is:
22:00:17 <olsner> निरन्तरान्धकारिता-दिगन्तर-कन्दलदमन्द-सुधारस-बिन्दु-सान्द्रतर-घनाघन-वृन्द-सन्देहकर-स्यन्दमान-मकरन्द-बिन्दु-बन्धुरतर-माकन्द-तरु-कुल-तल्प-कल्प-मृदुल-सिकता-जाल-जटि
22:00:17 <olsner> ल-मूल-तल-मरुवक-मिलदलघु-लघु-लय-कलित-रमणीय-पानीय-शालिका-बालिका-करार-विन्द-गलन्तिका-गलदेला-लवङ्ग-पाटल-घनसार-कस्तूरिकातिसौरभ-मेदुर-लघुतर-मधुर-शीतलतर-सलिलधारा-निराकरिष
22:00:19 <olsner> ्णु-तदीय-विमल-विलोचन-मयूख-रेखापसारित-पिपासायास-पथिक-लोकान्"
22:00:27 <ion> nice
22:00:58 <olsner> not sure if that got split due to length or because I copy-pasted some line breaks
22:03:47 <olsner> "The longest word in the Swedish language, according to Guinness World Records, is Nordöstersjökustartilleriflygspaningssimulatoranläggningsmaterielunderhållsuppföljningssystemdiskussionsinläggsförberedelsearbeten (130 letters)"
22:04:31 <nortti> olsner: what does that mean?
22:04:57 <olsner> "Northern Baltic Sea Coast Artillery Reconnaissance Flight Simulator Facility Equipment Maintenance Follow-Up System Discussion Post Preparation Work(s)."
22:05:08 -!- Sgeo has quit (Ping timeout: 245 seconds).
22:06:21 -!- Sgeo_ has joined.
22:06:32 -!- Sgeo has joined.
22:06:36 -!- boily has quit (Quit: WeeChat 0.3.8).
22:07:09 -!- Sgeo_ has quit (Client Quit).
22:09:36 -!- MoALTz has quit (Quit: bed).
22:10:46 <olsner> nortti: how about that finnish word?
22:11:35 <nortti> olsner: I'm not sure how to translate that one
22:13:38 <nortti> olsner: well this is one translation for epäjärjestelmällistyttämättömyydellisyydellänsäkäänköhän "Not even with his or her own ability or property of not making other people to make things unorganized, I wonder?"
22:13:48 <FreeFull> Dziewięćsetdziewięćdziesiątdziewięćmiliardówdzięwiećsetdziewiędziesiątdziewięćmilionówdziewięćsetdziewięsiątdziewięćtysięcydziewięćsetdziewiędździesięciodziewięcioletni is a valid Polish word
22:14:17 <FreeFull> It means 9999999999999 years old
22:15:04 <olsner> the obvious problem with longest words is that many languages allow (in principle) infinite combinations, leaving a very arbitrary rule to tell "words" from non-words
22:16:27 <FreeFull> A language should have a really long word that means something simple
22:16:35 <FreeFull> Like aawrfyawiogysoifbysdiofbysoirgyaoiwerfyswfio meaning pie
22:16:40 <nortti> why?
22:16:47 <FreeFull> Because
22:17:30 <olsner> in a country without pie or any knowledge of the concept of pie, that would make sense
22:17:41 <olsner> they have no need for an easily accessible word for pie
22:21:26 <olsner> otoh, they will have no need for a language at all since no-one will live there
22:23:08 <FreeFull> Who would live in a country without pie
22:24:41 <olsner> indeed no-one
22:29:33 -!- soundnfury has quit (Ping timeout: 276 seconds).
22:36:23 <Phantom_Hoover> I could probably deal with it.
22:36:34 <Sgeo> I seem to have made myself half-deaf, hopefully temporarily/fixably
22:37:16 <FreeFull> Sgeo: Maintain as much silence as you can
22:37:24 <FreeFull> It will help the cells in your ear recover
22:37:45 <Sgeo> Recover from either ear wax or being poked?
22:38:10 <FreeFull> Oh, I assumed you made yourself deaf with loud noise
22:39:02 <Phantom_Hoover> Sgeo, pretty sure you can't get serious, permanent hearing damage by poking your eardrum.
22:39:20 <Sgeo> With one of those devices that's supposed to help clear out earwax
22:39:25 <Sgeo> (Not a q-tip)
22:39:47 <FreeFull> Water is good for earwax
22:40:43 <Phantom_Hoover> AFAIK clearing your ear canal itself is a bad idea because there's a risk of blockage or something.
22:41:49 <FreeFull> You won't get blockage if you use water
22:42:16 <olsner> if you do it wrong with the q-tips you might just pack up the ear wax deeper in your ear, rather than clearing any out
22:42:39 <olsner> besides, a proper amount of ear wax is required, and removing too much of it will lead to e.g. swimmer's ear
22:42:42 <itidus21> Sgeo: does it hurt?
22:43:27 <itidus21> i dunno if these sections have pain sensors but can't hurt to ask
22:43:33 <Sgeo> It wasn't an ear wax, it was a ... thing designed for it, a little loop on a little pole
22:43:36 <Sgeo> itidus21, no.
22:44:07 <olsner> a loop on a pole? sounds like you're using the wrong implements
22:44:15 <Phantom_Hoover> Sgeo, did anything hurt like hell.
22:44:38 <Sgeo> Phantom_Hoover, no
22:45:09 <Phantom_Hoover> What actually *happened*?
22:45:16 <Phantom_Hoover> Were you just cleaning your ears and then suddenly, deaf?
22:45:32 <olsner> oh, maybe your headphone cord is just glitchy?
22:46:30 <Sgeo> Phantom_Hoover, yes
22:47:27 <olsner> ears are actually self-cleaning though
22:48:01 <Sgeo> Not going to say completely deaf
22:48:06 <Sgeo> And it's just the one ear
22:48:29 <Sgeo> (The ear that I've come to consider as good, because this sort of thing rarely happens to it)
22:51:59 <oerjan> your lucky ear, check
22:52:46 <itidus21> when it does happen is it during cleaning?
22:53:00 <oerjan> have you tried shutting your nose and mouth and blowing?
22:54:17 -!- azaq23 has quit (Quit: Leaving.).
22:54:47 <Sgeo> itidus21, normally, no, this time, yes
22:54:49 <oerjan> then swallow and/or yawn afterwards
22:55:12 <Sgeo> oerjan, didn't help
22:55:51 <oerjan> oh well
22:56:24 <Sgeo> Hiccupped, it felt weird
22:56:59 <oerjan> ah the TardisT Monad is now official
22:57:14 <nortti> what does it do?
22:57:34 <oerjan> it has both forward and backward travelling state
22:57:34 <Sgeo> Time travels, presumably
22:57:52 <nortti> interesting
22:57:53 <oerjan> http://www.haskell.org/pipermail/haskell/2012-August/023455.html
22:58:06 <Sgeo> And also, wouldn't it be a monad transformer, not a monad?
22:58:14 <oerjan> ...ok
22:59:00 <nortti> that is just awesome
23:00:02 <olsner> if you let the backward and forward state be the same thing, I think you get something like monadfix
23:00:48 <oerjan> olsner: you need to tie them together at the ends anyway.
23:07:19 -!- nortti_ has joined.
23:21:24 <itidus21> the important thing is that dr who fans can expect some new surprises in their google searches
23:22:02 <olsner> does dr who have monads as well?
23:23:45 <itidus21> on second thought i doubt there'll be much google crossover
23:25:43 <itidus21> but there is actually a place in morocco named tardist
23:28:08 <itidus21> and on youtube, tardist subscribed to: MIT 5 months ago
23:29:36 <oerjan> go to mit to get your tardigrades
23:29:49 -!- pikhq_ has joined.
23:31:45 -!- david_werecat has joined.
23:32:01 -!- pikhq has quit (Read error: Operation timed out).
23:41:07 -!- nys has joined.
23:41:29 <oerjan> `welcome nys
23:41:37 <nys> hi :)
23:41:39 <HackEgo> nys: 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:41:56 <nys> oh i've been here before
23:42:12 <oerjan> oh :)
23:42:21 <quintopia> hi
23:42:25 <nys> hi hi hi
23:42:36 <nys> i'm learning perl
23:42:48 <oerjan> mm, perl
23:43:16 <oerjan> my favorite language before i learned haskell
23:43:32 <quintopia> heh
23:43:35 <nys> i haven't managed to wrap my brain around functional stuff yet
23:43:44 <quintopia> hurray for line noise
23:43:50 <quintopia> the world needs more of it
23:44:50 <nys> if i do learn haskell some day it will probably become my favorite
23:45:29 <oerjan> OBVIOUSLY
23:46:20 <nys> it seems like a really logical and consistent language
23:46:35 <nys> i just haven't put in the effort to figuring it out yet
23:47:37 <oerjan> > fix((1:).scanl(+)0)
23:47:40 <lambdabot> [1,0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,109...
23:47:43 <oerjan> oops
23:47:57 <nys> whuh
23:47:58 <oerjan> off by something error
23:48:17 <oerjan> > fix((0:).scanl(+)1)
23:48:19 <lambdabot> [0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946...
23:52:35 -!- pikhq_ has quit (Ping timeout: 246 seconds).
23:52:39 -!- pikhq has joined.
23:52:57 <nys> are there certain tasks which would better suited to perl or haskell just by the nature of them?
23:53:08 <nys> or is haskell just better at everything? :D
23:53:10 <quintopia> sure
23:53:19 <quintopia> interfacing with irssi is better suited to perl
23:53:36 <quintopia> as is modifying and monolithic perl app
23:53:41 <quintopia> *any
23:53:55 <Sgeo> I'd say that Haskell is not especially suited to metaprogramming, but I have a feeling I'll be yelled at for this
23:54:07 <oerjan> WAT
23:54:44 <oerjan> what do you mean by metaprogramming
23:55:21 <quintopia> adding new features to the language itself, usually
23:55:26 <Sgeo> Stuff like macros, introspection, etc. I know Template Haskell exists, but they're a veneer of annoying-to-use and disrespect towards it.
23:57:09 <oerjan> OKAY THEN.
23:57:24 <olsner> I would say that many metaprogramming tasks can be done using regular programming in haskell
23:58:39 <oerjan> dsl's are easy at least, as long as you don't insist on an incompatible syntax
23:58:50 <olsner> ... which would be why metaprogramming in haskell is rarely used (and presumably difficult and irksome)
2012-08-08
00:00:27 <olsner> I've never used TH though, so what do I know
00:08:04 <zzo38> Then fix it
00:09:01 <zzo38> I know, Haskell doesn't do very good thing such as macro and so on.
00:18:34 -!- ais523 has quit.
00:43:06 <Sgeo> I wonder if I should make a Taxicheat language -- a way to write Taxi programs without dealing with the stuff that makes Taxi interesting.
00:43:15 <Sgeo> Compiler written in Prolog of course.
00:43:50 <oerjan> pirate taxi
00:44:33 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
00:48:48 <Sgeo> Either I'm misunderstanding Logtalk, or they actually managed to create an "OO" system that is ZERO DISPATCH
00:48:50 * Sgeo wtfs
00:51:22 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
00:51:55 -!- AlsoFreeFull has joined.
00:52:01 <AlsoFreeFull> So guys
00:52:06 <AlsoFreeFull> My S-Lang IRC client works :D
00:52:16 <oerjan> an imposter!
00:53:14 <FreeFull> It's me
00:53:35 <oerjan> a clone!
00:53:39 <AlsoFreeFull> Yep
00:53:50 <Phantom_Hoover> S-Lang?
00:54:12 <AlsoFreeFull> http://www.jedsoft.org/slang/
00:54:22 <AlsoFreeFull> http://paste2.org/p/2097935 My source code so far
00:54:34 <AlsoFreeFull> A bit ugly but works
00:55:00 -!- pikhq has quit (Ping timeout: 244 seconds).
00:55:03 -!- pikhq_ has joined.
00:55:42 <AlsoFreeFull> I can worry about making it pretty and sparkly later
01:04:32 -!- TodPunk has joined.
01:06:58 -!- AlsoFreeFull has quit.
01:17:37 -!- augur has joined.
01:17:41 -!- derdon has quit (Remote host closed the connection).
01:22:42 -!- rodgort has quit (Quit: ERC Version 5.3 (IRC client for Emacs)).
01:24:44 -!- rodgort has joined.
01:28:04 -!- augur has quit (Remote host closed the connection).
01:31:33 <shachaf> kmc: Where are you these days?
01:32:27 <Sgeo> http://www.reddit.com/r/fivethirtyeight whatthefuck
01:36:38 <oerjan> `frink 2.5 feet -> cm
01:36:49 <HackEgo> 76.2
01:37:51 <Phantom_Hoover> Hey wait guys remember when I said the computer on Apollo 11 had 2800 NOR gates?
01:38:03 <Phantom_Hoover> I just reread the WP article and actually it had 5600.
01:38:34 <oerjan> so i guess you were half right.
01:38:43 <zzo38> Did you read about the game I invented that is using snooker balls? Is there anything wrong with the rules?
01:39:44 <Phantom_Hoover> is it snooker
01:39:50 <Phantom_Hoover> because they already have that
01:41:20 <quintopia> zzo38: link
01:41:24 <zzo38> No, it is a different game, with the same equipment.
01:41:39 <zzo38> gopher://zzo38computer.cjb.net:70/0textfile/gamerules/00001 and http://zzo38computer.cjb.net/textfile/gamerules/00001 are both valid links to plain text
01:41:46 -!- augur has joined.
01:42:19 <quintopia> yeah but no one in this channel except you uses gopher
01:43:15 -!- augur has quit (Read error: Connection reset by peer).
01:43:25 -!- augur has joined.
01:43:58 <shachaf> huintopia
01:45:11 <quintopia> so...http it is
01:45:25 -!- shachaf has changed nick to s.
01:45:31 -!- s has changed nick to shachaf.
01:48:57 <zzo38> You can access them both from the command-line too; they are not HTML
01:49:26 <zzo38> I think the guy to made CLC-INTERCAL uses gopher too
01:49:50 <zzo38> (I think his gopher is IPv6 only)
01:50:24 <quintopia> zzo38: what if a frame never ends
01:51:09 <zzo38> quintopia: Read the rules carefully; I think these rules will ensure that a frame will always eventually end.
01:51:19 <shachaf> 18:49 <zzo38> (I think his gopher is IPv6 only)
01:51:26 <shachaf> I wonder whether that sentence has ever been said before.
01:51:32 <zzo38> (One way it will end is if all the players are out.)
01:51:32 <shachaf> @remember zzo38 (I think his gopher is IPv6 only)
01:51:33 <lambdabot> It is stored.
01:52:13 <quintopia> zzo38: what if the players never get out
01:52:21 <ion> :-D
01:52:35 <quintopia> i mean, pros would be really good at staying in
01:53:09 <zzo38> quintopia: If there is a foul, the players will be out. And if the balls are placed such that they have to be played again, it is a foul. So if the balls have to be played again enough times, there will be enough fouls that you will have to be out eventually.
01:53:27 -!- pikhq_ has quit (Ping timeout: 240 seconds).
01:53:28 -!- pikhq has joined.
01:54:10 <quintopia> zzo38: that isnt what came across in the reading. is there no penalty for that kind of foul?
01:54:35 <zzo38> The penalty is the same for all fouls.
01:55:20 <quintopia> so wouldnt the scores of pros be consistently negative? it seems like you stand to lose more than you stand to gain in a frame
01:58:14 <zzo38> A ball will only be played if it is in the baulk or off the table. And if something causes a ball which is on the table to be moved there, it is a foul. If there are ten fouls total by one player during a game, that player is out. Therefore, a frame cannot last an unlimited number of turns.
01:58:29 <zzo38> I would think that a pro would not foul unless it is deliberate.
01:58:33 <quintopia> and it looks like, since a frame cant end until potentially tons of fouls are made, most of the time all the players but one will end up out of the game before even the first couple of frames have passed
01:58:53 <zzo38> No; a frame ends when there are no more balls to play.
01:59:02 <quintopia> oh
01:59:03 <zzo38> (Although maybe I should change it so that potting a ball belonging to an out player is not a foul.)
01:59:36 <zzo38> So if there are no fouls, then there will be exactly six turns per frame.
01:59:53 <quintopia> oh
01:59:56 <quintopia> yeah
02:00:11 <quintopia> it might help if i knew what the snooker terms meant
02:00:57 <quintopia> so if certain fouls do occur, then the frame goes on longer
02:01:52 <zzo38> Yes, as long as they are the fouls described by this text. (Other fouls, such as touching the balls by hand when these rules do not specify you are allowed to, are grounds for disqualification if done deliberately.)
02:05:16 <zzo38> Hopefully it is understood now? Is there any suggestion about how to adjust it to make the text clearer, if it seems unclear?
02:10:24 <zzo38> I have already made a few changes.
02:13:42 -!- augur has quit (Remote host closed the connection).
02:31:49 -!- david_werecat has quit (Ping timeout: 248 seconds).
02:41:55 <pikhq> Where did that come from?
02:42:11 <pikhq> Somehow, there's 3 more episodes!
02:43:34 <Sgeo> Of?
02:43:49 <pikhq> MLP:FiM
02:44:33 <Phantom_Hoover> no
02:44:35 <Phantom_Hoover> pikhq
02:44:38 <Phantom_Hoover> they got you too
02:45:03 <pikhq> Phantom_Hoover: The emasculation plague is not yet complete!
02:45:07 <pikhq> JOIN US!
02:45:30 <Phantom_Hoover> Sorry no I have to BLOW UP SOME KITTENS WITH A MOTORBIKE
02:56:00 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:01:00 -!- monqy has joined.
03:03:42 -!- Yonkie has quit (Ping timeout: 264 seconds).
03:13:19 <Poniest> pikhq: Uhh, how exactly did you miss three episodes?
03:14:08 <pikhq> Poniest: I don't know!
03:14:19 <pikhq> Somehow I skipped from S1E23 to S2E2 though.
03:14:33 <Poniest> You missed the season opener?!?!?
03:14:38 <Poniest> YOU MISSED ~spoiler~?!?!?!
03:14:39 <pikhq> No, that was a typo.
03:14:46 <pikhq> I skipped from S1E23 to S2E1.
03:15:19 <Poniest> You missed Party of One?!?!
03:15:26 <Poniest> S1's best episode arguably!
03:15:30 <pikhq> I'm watching it presently.
03:15:42 <Poniest> Well then I'll leave you to it!
03:16:36 <pikhq> So, yeah, no worries, I'm rectifying the mistake.
03:16:43 <pikhq> Just WTF how did I do that.
03:17:00 <Poniest> Well at least you didn't miss Equestria's Q.
03:17:13 <shachaf> Poniest: Do you ever have the same nick twice?
03:17:14 <pikhq> Certainly not.
03:17:17 <pikhq> So very Q.
03:17:22 <Poniest> shachaf: I'm frequently Gregor.
03:17:43 <shachaf> Poniest: I know.
03:17:45 <Poniest> And I was consistently Gregor for like two years.
03:17:46 <shachaf> Except not really.
03:17:53 <shachaf> Consistency was good!
03:17:56 <shachaf> What became of consistency?
03:18:01 <Poniest> Ponies.
03:20:15 -!- david_werecat has joined.
03:42:21 <pikhq> Good episode.
03:58:42 <FreeFull> So I've got something that is semi-usable as an IRC client
03:58:48 -!- AlsoFreeFull has joined.
03:58:50 <AlsoFreeFull> Hello
04:00:28 -!- oerjan has quit (Quit: Good bye).
04:03:44 -!- AlsoFreeFull has quit.
04:03:47 -!- pikhq has quit (Ping timeout: 240 seconds).
04:03:58 -!- pikhq has joined.
04:17:22 <zzo38> What things do you mean?
04:19:55 <pikhq> Huh. MLP fails the reverse Bechdel test with regularity
04:20:02 <pikhq> Now *there's* a rarity for you.
04:20:32 -!- Slereah has joined.
04:23:10 -!- Slereah_ has quit (Ping timeout: 248 seconds).
04:32:27 <nys> :-3
04:38:18 -!- mig22 has joined.
04:42:45 -!- asiekierka has joined.
04:53:08 -!- variable has changed nick to constant.
04:57:27 -!- stanley has quit (Ping timeout: 240 seconds).
04:58:13 -!- stanley has joined.
05:03:59 <zzo38> What does that mean?
05:10:39 -!- Yonkie has joined.
05:11:27 -!- augur has joined.
05:13:09 <zzo38> "MLP fails the reverse Bechdel test with regularity".....I fail to understand what that means.
05:13:30 -!- ogrom has joined.
05:14:13 <zzo38> Well, I looked it up in Wikipedia now so I know what Bechdel test means but I still fail to understand your statement.
05:15:05 <nys> reverse Bechdel test would be like the Bechdel test but with men
05:15:21 <nys> or
05:15:22 <nys> reversed
05:15:26 <nys> whatever reversed means
05:26:39 <zzo38> As far as I know I think my recording of the Dungeons&Dragons game fails the Bechdel test (even the non-strict version) despite one of the players being female (her character is a male human).
05:27:44 <zzo38> s/male human/male human fighter/
05:38:32 <zzo38> And Fukumoto's stories rarely have any women at all, mostly because he is bad at drawing women.
05:47:43 -!- Jafet has joined.
05:58:07 <zzo38> In his manga "Akagi", there is only one woman in the entire series who only appears once as the owner of a store selling cigarettes.
06:19:30 <zzo38> What is "Anarcho-Totalitarian"?
06:30:08 -!- nooga has joined.
06:32:35 -!- nvt has quit (Ping timeout: 246 seconds).
06:34:22 -!- soundnfury has joined.
06:40:50 -!- pikhq_ has joined.
06:43:49 -!- pikhq has quit (Ping timeout: 246 seconds).
07:12:57 -!- epicmonkey has joined.
07:16:09 -!- ogrom has quit (Read error: Connection reset by peer).
07:16:57 -!- ogrom has joined.
07:18:59 <Deewiant> https://twitter.com/SarcasticRover
07:32:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:50:06 -!- nvt has joined.
08:06:53 -!- nys has quit (Quit: bed).
08:19:29 -!- ogrom has quit (Quit: Left).
08:20:04 -!- zzo38 has quit (Remote host closed the connection).
08:36:09 -!- epicmonkey has joined.
08:47:02 -!- Sgeo has quit (Read error: Connection reset by peer).
09:08:17 -!- Jafet has quit (Read error: Connection reset by peer).
09:08:50 -!- Jafet has joined.
09:12:42 <shachaf> kmc: Do you know about llvm-mc?
09:16:42 <shachaf> E.g. echo '0xcd 0x80' | llvm-mc -disassemble; echo 'int $0x80' | llvm-mc -assemble -show-encoding; etc.
09:18:16 <shachaf> (It's more of a magic trick if you already have LLVM installed, like I did.)
09:30:56 -!- epicmonkey has quit (Remote host closed the connection).
09:31:06 -!- epicmonkey has joined.
09:50:17 <fizzie> I used to have nasm/ndisasm-based script for that. (It's not as convenient because it refuses to deal with FIFOs.)
09:55:07 <shachaf> I know.
09:55:20 <shachaf> llvm-mc also does a bunch of other useful things.
10:00:28 -!- Taneb has joined.
10:00:30 <Taneb> Hello!
10:16:32 -!- derdon has joined.
10:32:21 -!- david_werecat has quit (Ping timeout: 276 seconds).
10:41:03 -!- ais523 has joined.
11:02:10 -!- azaq23 has joined.
11:02:25 -!- azaq23 has quit (Max SendQ exceeded).
11:03:00 -!- azaq23 has joined.
11:07:56 <Taneb> @ping
11:07:56 <lambdabot> pong
11:11:35 -!- Jafet has quit (Quit: Leaving.).
11:40:06 -!- boily has joined.
11:58:50 -!- Phantom__Hoover has joined.
12:30:12 -!- yiyus has quit (Remote host closed the connection).
12:44:59 <ais523> <Raymond Chen> I followed up: "Well, in that case, why are we asked to evaluate you every year on whether your actions are planful? How can we answer a question that uses a made-up word nobody knows the definition of?"
12:45:22 -!- yiyus has joined.
12:47:40 <Taneb> I think the circle-ellipse problem could be solved with an Oval class
12:47:52 <Taneb> Not ever having done significant amounts of OO programming
12:49:06 <ais523> Taneb: I think the only "correct" solution involves SymmetricalEllipse and NotNecessarilySymmetricalEllipse classes with a common base
12:49:08 <ais523> but that's ridiculous
12:49:35 <Taneb> :)
12:49:45 <Taneb> I'm gonna stick with Haskell for now
12:49:49 <Taneb> It's easy to understand
12:50:15 <Taneb> (that is, I understand it to a level where I can understand new concepts common within Haskell with relative ease)
12:53:04 <Taneb> In other news, I don't think that any companies are inherently evil anymore.
12:53:29 <Taneb> Some are nasty, and some I'd boycott, and some I can't name any good things that they've done
12:53:37 <Taneb> But any company has at least the potential to do good
12:53:54 <Taneb> In other other news, I'm gonna get some lunch, then some guitar hero, then walk my dog
12:57:47 -!- Sgeo has joined.
13:20:18 <Sgeo> XPCE is horrifically ugly
13:20:27 <Sgeo> It's like it's as ugly as Tk used to be.
13:33:19 <nooga> who uses prolog anyway
13:33:24 <nooga> universities?
13:42:00 * Sgeo wants to use Prolog
13:47:48 -!- elliott has joined.
13:49:16 -!- pikhq_ has quit (Ping timeout: 252 seconds).
13:49:22 -!- pikhq has joined.
13:53:36 <Sgeo> Of course Oleg would do Prolog stuff.
13:53:40 * Sgeo reads
14:02:34 -!- lifthrasiir has quit (Ping timeout: 246 seconds).
14:03:34 -!- lifthrasiir has joined.
14:13:23 <fizzie> People who want to annoy Perl programmers by using the same file extension.
14:14:12 <olsner> I think I've set up my vim to highlight perl as prolog
14:14:50 <olsner> luckily, I don't read perl so it took a long while to realize there was a file extension collision
14:15:35 <fizzie> Didn't they write first Erlang implementations in Prolog, or something like that?
14:48:09 -!- DHeadshot has joined.
14:53:11 -!- Poniest has changed nick to Gregor.
14:57:14 <ais523> <olsner> luckily, I don't read perl so it took a long while to realize there was a file extension collision <-- you don't read Perl because it's incorrectly syntax highlighted as Prolog? :P
14:57:31 <ais523> fizzie: Erlang was invented by Prolog fans, so quite likely
14:57:37 <ais523> (it explains the syntax similarities)
15:03:13 <Taneb> Hello
15:18:39 <FreeFull> Hi
15:19:55 <Sgeo> Every single Prolog thread everywhere has someone simple stating either "No." or "Yes.". This statement will be well-regarded.
15:20:00 <Sgeo> *simply
15:21:27 <elliott> hi
15:22:37 <Sgeo> .
15:23:19 <nooga> useless
15:24:23 <olsner> ais523: I don't read perl because perl
15:25:40 <olsner> Sgeo: that would be "No." because a positive reply will come with assignments of variables rather than "yes", and you can get many positive replies
15:26:09 <olsner> (and after the last positive reply, you might see a "No." to say there are no more answers)
15:26:35 <Sgeo> Could have sworn I saw a Yes. once (not in Prolog but as a post)
15:26:47 -!- Taneb has quit (Ping timeout: 240 seconds).
15:26:56 -!- kmc has quit (Read error: Connection reset by peer).
15:27:14 <olsner> that is possible
15:27:53 -!- kmc has joined.
15:28:48 -!- Gregor has changed nick to Poniest.
15:29:33 -!- Poniest has changed nick to Gregor.
15:51:34 -!- Yonkie has quit.
15:51:38 -!- Taneb has joined.
15:53:02 -!- asiekierka has quit (Remote host closed the connection).
15:55:34 <Taneb> Hello!
15:55:48 <Taneb> I swear half the time I just say "Hello" and leave 10 minutes later...
15:56:47 <Gregor> fizzie: If I make a bot that kickbans anyone who says just "hi" or "hello" (plus punctuation), will you op it for me?
15:57:55 <Taneb> Oooh, that sounds fun
16:00:16 <olsner> sounds dangerous
16:01:32 <olsner> oh, and maybe it would be prudent to only do it for regulars... newcomers saying hi would instead be greeted with `welcome (or `WELCOME in case they say HI)
16:02:04 <Gregor> NO MERCY
16:02:05 <olsner> and the welcome text would warn them that further greetings will result in a kickban
16:02:12 <Gregor> Ignorance of the law is no excuse.
16:04:37 <olsner> how long is the ban? permanent?
16:04:58 <Gregor> Retroactive and permanent. They're wiped from the logs and our collective memories.
16:05:04 <Gregor> They're effectively removed from existence.
16:05:10 <oklopol> Taneb: bye bye
16:05:23 <olsner> oh, isn't there a doctor who gadget that can remove people like that?
16:05:25 <Taneb> :'(
16:05:41 <Taneb> olsner, yeah, but it doesn't work
16:09:09 -!- mig22 has quit (Quit: mig22).
16:13:24 -!- mig22 has joined.
16:24:01 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
16:32:27 -!- epicmonkey has quit (Ping timeout: 276 seconds).
16:33:27 -!- cheater has quit (*.net *.split).
16:34:31 -!- cheater has joined.
16:34:56 -!- cheater has quit (Ping timeout: 255 seconds).
16:35:32 -!- cheater has joined.
16:42:57 -!- heroux has quit (Ping timeout: 252 seconds).
16:43:53 -!- heroux has joined.
16:44:23 -!- Sgeo has quit (Read error: Connection reset by peer).
16:44:50 -!- Sgeo has joined.
16:45:12 <Sgeo> :( at spontaneous disconnect
16:45:16 <Sgeo> Was there a netsplit?
16:46:23 <olsner> Sgeo: looks like only you split from the net
16:46:43 <Sgeo> It's only Freenode
16:47:38 <elliott> fizzie: hi
16:48:28 -!- heroux has quit (Ping timeout: 245 seconds).
16:49:17 -!- heroux has joined.
16:51:12 <kallisti> Gregor: umlbox's /dev/urandom is not very random.
16:51:27 <Sgeo> What about /dev/random ?
16:51:32 <kallisti> slow
16:51:47 <Gregor> Hmmmmm, yeah, I suppose it wouldn't b.
16:51:47 <Gregor> *be
16:51:55 <kallisti> my guess is that because it initializes the kernel on each command that /dev/urandom hasn't had enough time to seed from /dev/random
16:52:02 <Gregor> Yeah.
16:52:15 <kallisti> in which case what does it seed with?
16:53:13 <kallisti> if I were /dev/urandom and didn't have a random seed, I'd use system clock.
16:57:07 -!- Taneb has quit (Ping timeout: 240 seconds).
16:58:42 <oklopol> woohoo i reached the canyon
16:59:45 <FreeFull> olsner: Instead of a gadget you can just destroy the universe and throw them into a time crack
17:13:35 -!- Taneb has joined.
17:16:51 <Taneb> Is Gregor's new bot here yet
17:32:44 -!- cknz has quit (Read error: Operation timed out).
17:34:14 -!- boily has quit (Ping timeout: 244 seconds).
17:34:31 -!- boily has joined.
17:34:43 -!- constant has quit (Ping timeout: 245 seconds).
17:37:25 -!- epicmonkey has joined.
17:42:24 -!- Nisstyre has quit (Ping timeout: 240 seconds).
17:42:28 -!- cknz has joined.
17:45:42 -!- Nisstyre has joined.
17:47:34 -!- boily has quit (Ping timeout: 260 seconds).
17:48:06 -!- heroux_ has joined.
17:51:41 -!- Phantom__Hoover has quit (Ping timeout: 245 seconds).
17:52:17 -!- boily has joined.
17:53:34 -!- Nisstyre has quit (Ping timeout: 246 seconds).
17:55:08 -!- heroux has quit (*.net *.split).
17:55:09 -!- jix has quit (*.net *.split).
17:55:09 -!- yorick has quit (*.net *.split).
17:58:02 -!- jix has joined.
17:58:02 -!- yorick has joined.
18:00:08 -!- zzo38 has joined.
18:01:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
18:01:49 -!- DH____ has joined.
18:08:19 -!- Nisstyre has joined.
18:21:15 -!- variable has joined.
18:23:21 -!- cheater_ has joined.
18:25:33 -!- derdon has quit (Ping timeout: 276 seconds).
18:26:38 -!- cheater has quit (Ping timeout: 246 seconds).
18:31:29 -!- boily has quit (Quit: Poulet!).
18:35:29 -!- derdon has joined.
18:40:30 -!- oklopol has quit (Ping timeout: 276 seconds).
18:49:28 -!- Phantom__Hoover has joined.
18:50:47 -!- derdon has quit (Remote host closed the connection).
19:10:57 -!- KingOfKarlsruhe has joined.
19:12:27 <Taneb> You know what annoys me?
19:12:36 <zzo38> Do you know?
19:12:40 <Taneb> The most common abbreviation for the cosecant function
19:12:44 <Taneb> "cosec"
19:12:50 <Taneb> All the others are three letters!
19:12:55 <Taneb> Why does cosec have to be special!
19:13:06 <zzo38> I have used "csc" for cosecant
19:13:18 <Taneb> I've used "cec"
19:13:41 <Taneb> I'll switch to "csc" because consistency is the father of utility
19:13:43 <Taneb> Or something
19:16:26 <Sgeo> Why is Mozart/Oz dead?
19:17:12 <Sgeo> csc(x) = 1/sin(x)?
19:17:15 <Taneb> Yeah
19:17:24 <Sgeo> Why call that cosecant and not secant?
19:17:53 <Taneb> Because it's the categoric dual to the inverse of the categoric dual of sine?
19:17:55 <Taneb> I dunno
19:18:10 <Taneb> Is category theory even relevant here? I don't think it is
19:18:27 <Taneb> Because edwardk named them?
19:18:43 <fizzie> I have seen "csc" somewhere.
19:19:09 <fizzie> "The cosecant csc(A), or cosec(A)", says Wikipedia, sort-of implying that csc is more common, since it's first.
19:19:45 <Taneb> I was basing what I view as common as what my text books and my teachers use, even after I complained?
19:19:51 <Taneb> So, small sample size
19:19:54 <Taneb> Perhaps of 1
19:20:25 <zzo38> Would you know how to emulate ZZT percussion sound on NES/Famicom?
19:20:34 <fizzie> Consistency-wise, though, you could also argue that since "sin", "cos", "tan", "sec" and "cot" are all directly the first three letter, the same kind of scheme must extend to the cosecant, and since "cos" is already taken, more letters are needed.
19:20:35 <Taneb> Simple answer, no
19:21:03 <Taneb> ^ @zzo38
19:21:17 <Taneb> fizzie, that's what my teacher said
19:21:18 <zzo38> I have always used "csc" for cosecant
19:23:02 <Taneb> It's also annoying how the internet seems to decline latin nouns in a different order to me
19:23:31 <Taneb> I do Nom, Voc, Acc, Gen, Dat, Abl. Wiktionary etc do Nom, Gen, I lost interest
19:29:47 <elliott> Deewiant: You said fopen_s can do locking, right?
19:30:18 <Deewiant> elliott: http://msdn.microsoft.com/en-us/library/z5hh6ee9%28v=vs.80%29.aspx
19:30:25 <elliott> Deewiant: I'm already reading that. : (
19:30:42 <Deewiant> It's all I know.
19:30:56 <elliott> But there's nothing about locking on that page at all. :/
19:31:21 <elliott> (Hmm, wait, doesn't Windows lock all opened files, or something?)
19:31:44 <Deewiant> "Files opened by fopen_s and _wfopen_s are not sharable. If you require that a file be sharable, use _fsopen, _wfsopen with the appropriate sharing mode constant (for example, _SH_DENYNO for read/write sharing)."
19:32:29 <elliott> Oh.
19:33:34 -!- TodPunk has quit (Read error: Connection reset by peer).
19:33:47 -!- TodPunk has joined.
19:34:14 <elliott> I wonder if this fcntl locking thing is at all portable.
19:41:36 <FreeFull> fizzie: What about arctangent?
19:42:05 <FreeFull> Or hyperbolic trigonometric functions?
19:42:25 <Taneb> acosech
19:42:59 <FreeFull> arccotangent
19:43:34 <Taneb> Wouldn't the c's crash flailingly into eachother and merge?
19:43:38 <fizzie> FreeFull: The abbreviations for those that I've seen (arcsin, arccos, arctan, arccot, arcsec, arccsc) are still first-letters based. (Well, except for the 'csc' in arccsc.)
19:44:08 <fizzie> (Admittedly sometimes it's just the 'a'.)
19:44:11 <Taneb> And I've been taught to use cot^-1
19:44:15 <Taneb> :(
19:44:29 <zzo38> Or use something like $\rm csc^{-1}$
19:44:55 <FreeFull> arctan is useful when you want to create a textured tunnel
19:45:37 <Taneb> arctan is useful when you want to work out x in 0.2 = tan(x)
19:47:09 <FreeFull> You use arctan to get the x coordinate of the texture
19:47:23 <FreeFull> And 1/sqrt(x*x+y*y) for the y coordinate
19:47:29 <FreeFull> Bam
19:53:04 -!- ogrom has joined.
19:54:25 -!- oerjan has joined.
20:13:19 <nortti> http://aiju.de/up/catabuse.png
20:17:18 <olsner> things I will never understand: how to build debian packages
20:20:27 <oerjan> nortti: sometimes those are different when a program treats pipes and files differently, though.
20:21:01 -!- Taneb has quit (Quit: I HUNGER).
20:21:16 <olsner> once I managed to build a debian package with an added patch, but I guess what happened was just that my RAM got corrupted in the form of a set of working .deb files
20:23:29 -!- nys has joined.
20:25:35 -!- KingOfKarlsruhe has quit (Read error: Connection timed out).
20:28:36 <oerjan> <olsner> Sgeo: that would be "No." because a positive reply will come with assignments of variables rather than "yes", and you can get many positive replies
20:28:47 <oerjan> what if you have a query without variables?
20:29:02 <oerjan> maybe Yes. is used then.
20:29:38 <Sgeo> SWI-Prolog seems to go with true and false, not Yes and No :(
20:29:50 <oerjan> although theoretically you could still backtrack into it...
20:30:17 <oerjan> it might also distinguish if there are no backtracking points, i guess.
20:30:57 <olsner> there could be side effects that you want to backtrack past
20:31:25 <FreeFull> Yay printf debugging
20:31:52 <oerjan> i recall Mercury has an entire set of declarations for whether predicates have single or multiple possible output, and in which directions data can flow.
20:31:52 <Sgeo> Prolog needs a purity thing, similiar to.... hmm, Mercury has a mechanism, but Mercury's too static-y for my tastes
20:32:00 <FreeFull> nortti: With grep, just grep "something" files
20:32:09 <FreeFull> No < necessary
20:33:46 <FreeFull> nortti: Also sometimes you do cat something, see that it's too much data, and attach grep at the end because it's less typing than erasing the line and typing in the "proper" command
20:37:39 -!- ogrom has quit (Quit: Left).
20:38:06 <Sgeo> I'd like Mercury a lot if it were more interactive
20:45:04 -!- epicmonkey has quit (Ping timeout: 246 seconds).
20:53:53 -!- boily has joined.
21:15:41 -!- nooga has quit (Read error: Connection reset by peer).
21:15:42 <Sgeo> Is it really that unreasonable to want to make programs in Prolog that don't especially appeal to Prolog's strengths?
21:23:21 <Sgeo> I still don't _quite_ get how you can make an executable header such that you can just concatenate it and data that it supports to get another executable.
21:23:38 <Sgeo> But Prolog does it, and SBCL does it.
21:23:43 <Sgeo> erm, SWI-Prolog
21:24:09 -!- pikhq has quit (Ping timeout: 244 seconds).
21:24:11 -!- pikhq_ has joined.
21:25:59 <oerjan> Sgeo: well assuming the header needs only to refer to the _beginning_ of the data part, its position would be known...
21:27:47 * Sgeo wonders if PrologNomic would be interesting.
21:27:50 <oerjan> alternatively, the executable part might just reread the original file
21:28:08 <Sgeo> "A SWI-Prolog runtime executable is a file consisting of two parts. The first part is the emulator, which is machine-dependent. The second part is the resource archive, which contains the compiled program in a machine-independent format..."
21:28:23 <Sgeo> http://www.swi-prolog.org/pldoc/doc_for?object=section(1,'10',swi('/doc/Manual/runtime.html'))
21:29:25 <oerjan> i guess it might even use either option, dependent on what the format of the machine supports
21:30:36 * Sgeo throws a red cut at oerjan
21:31:08 <oerjan> all that's really required is some way to have an executable ending with an unknown length part without influencing the previous ones
21:33:27 <oerjan> if the loader puts it somewhere convenient, it can get loaded directly, but if it just ignores such a part, you can use the second method and reread the file.
21:33:43 -!- jix has quit (Ping timeout: 252 seconds).
21:33:58 <Sgeo> SBCL does it too iirc
21:34:48 * oerjan might be more authoritative if he actually knew any executable formats.
21:35:13 -!- jix has joined.
21:35:21 -!- soundnfury has quit (Ping timeout: 276 seconds).
21:35:57 <oerjan> oh and does it really say that the parts are just concatenated? otherwise you may have better options.
21:36:32 <Sgeo> "These two parts can be connected in various ways. The most common way for distributed runtime applications is to concatenate the two parts. This can be achieved using external commands (Unix: cat, Windows: copy), or using the stand_alone option to qsave_program/2. The second option is to attach a startup script in front of the resource that starts the emulator with the proper options. This is the default under Unix. Finally, an emulator can
21:36:32 <Sgeo> be told to use a specified resource file using the -x command-line switch."
21:37:47 * oerjan assumes the startup script refers to the #! method
21:52:56 <elliott> <nortti> http://aiju.de/up/catabuse.png
21:53:00 <elliott> this is dumb btw
21:53:11 <elliott> for a start, the two are different, semantically
21:53:30 <elliott> for a non-starter, "cat foo | f | g | h" maintains the same direction of data flow in the pipeline
21:53:32 <elliott> unline "f <foo | g | h"
21:53:53 <elliott> "useless use of cat" is something people get worked up about for no real reason, there's nothing wrong with it
21:55:36 -!- DH____ has quit (Read error: Connection reset by peer).
21:55:51 -!- DHeadshot has joined.
21:56:07 <fizzie> I'm pretty sure in the case of SWI-Prolog it just rereads the executable file, skips the ELF (or whatever the platform uses) executable part, and loads the Prology part(s). (If you do "swipl-ld -v" you can see the executable part comes directly out of GCC and the Prolog part is just appended to it.)
21:56:32 <fizzie> http://www.swi-prolog.org/pldoc/man?CAPI=PL_initialise "Special consideration is required for argv[0]. On Unix, this argument passes the part of the command line that is used to locate the executable. Prolog uses this to find the file holding the running executable. The Windows version uses this to find a module of the running executable. If the specified module cannot be found, it tries the ...
21:56:38 <fizzie> ... module libpl.dll, containing the Prolog runtime kernel. In all these cases, the resulting file is used for two purposes: See whether a Prolog saved state is appended to the file. --"
22:03:10 -!- DH____ has joined.
22:03:11 -!- DHeadshot has quit (Read error: Connection reset by peer).
22:05:11 <Sgeo> That seems almost inelegant
22:15:52 -!- nortti_ has joined.
22:22:19 <Gregor> PAAAAAAAAAAAAAAAAAAAANTS!
22:24:10 <quintopia> hi gregor
22:24:12 <olsner> Gregor: congratulations
22:24:31 <olsner> I too have pants
22:24:35 <quintopia> i also
22:24:53 <Gregor> olsner, quintopia: My pants are better.
22:25:01 <quintopia> i can one up that since i have tasty beverage
22:25:11 <Gregor> I have birch beer!
22:25:22 <Gregor> AND better pants!
22:25:25 <quintopia> i have...beer
22:25:31 <quintopia> birch beer is good
22:25:34 <quintopia> beer is better
22:25:53 <Gregor> Lies.
22:25:55 <Gregor> Filthy lies.
22:25:57 <quintopia> and i'm sorry you find my khakis unattractive
22:26:07 <quintopia> but my belt and pants and socks and shoes do match
22:26:09 <quintopia> so
22:26:17 <quintopia> you're probably the only one
22:26:36 <quintopia> chances are...
22:26:41 <quintopia> your pants...
22:26:44 <Gregor> My pants are bright yellow.
22:26:47 <quintopia> are not as fancy as the pair...
22:26:59 <quintopia> of very fancy pants that mister fancy pants will wear...
22:27:06 <Gregor> MY PANTS.
22:27:10 <Gregor> THEY ARE BRIGHT YELLOW.
22:27:13 <quintopia> when everybody's marching in the fancy pants parade...
22:27:30 <quintopia> hhe's gonna past the test
22:27:33 <quintopia> he's gonna be thhe best
22:27:37 <quintopia> the best in terms of pants
22:29:58 <Gregor> Oh, you're done?
22:30:00 <Gregor> Point is, no.
22:30:03 <Gregor> My pants: They are better pants.
22:30:19 <olsner> my pants are merely adequate
22:31:13 <olsner> but I am fine with having not-best pants
22:31:56 <quintopia> my beer is better beer and my tie is flowerier too so i win
22:32:21 <olsner> Gregor: how flowery is your tie?
22:32:27 <Gregor> Most of my ties are solid colors.
22:32:43 <olsner> the rest are all clop-themed ties?
22:32:58 <Gregor> I have no pony ties.
22:33:09 <Gregor> (Tragically)
22:33:36 <olsner> yes, that is a tragedy
22:38:57 <zzo38> What color of ties?
22:39:47 <quintopia> gray and blue and orange
22:40:59 <Gregor> So, loser colors.
22:41:23 <Gregor> I have ties in green and pink and orange and blue and rainbow and red and purple and… well, not grey is the point.
22:41:25 <fizzie> Sgeo: Looking for argv[0] in PATH is arguably closer to inelegant than just "almost inelegant", but there's not much more you can portably do.
22:41:38 <quintopia> i have all those colors too
22:41:45 <Sgeo> What does SBCL do?
22:41:52 <quintopia> but this one is silvery gray with blue and orange flowers
22:42:09 <Gregor> Sgeo: http://codu.org/projects/stuff/hg/index.cgi/file/tip/whereami.c
22:42:30 <zzo38> fizzie: Is better having a include file which makes it compile what is necessary for the target platform?
22:43:18 <fizzie> Gregor: But that's exactly just looking for argv[0] in PATH.
22:43:29 <Gregor> I'm not claiming that it's not.
22:43:36 <Gregor> It's just portable and has all the necessary hacks.
22:43:54 <fizzie> Gregor: Are you claiming it's what SBCL does, then?
22:44:15 <Sgeo> I think Gregor just had bad timing.
22:44:38 <fizzie> Or perhaps I just felt like complaining without cause.
22:44:43 <fizzie> That's always possible.
22:44:45 <Gregor> No, I'm offering it as a useful snippet of code.
22:45:18 <zzo38> It should not look for argv[0] in PATH if there is the better way.
22:46:17 <Gregor> There's not, portably. You can readlink /proc/self/exe if that option is viable.
22:46:30 <fizzie> You can GetModuleFileName on Windows.
22:46:53 <fizzie> And there are other suitable /proc files on other systms.
22:47:25 <kmc> hichaf
22:47:31 <Gregor> This ends up being portable by means of a bunch of ifdefs per platform.
22:47:32 <zzo38> I know there is not better way portably; you should use preprocessor macros to determine which way to use for the target platform, and use argv[0] in PATH if none of the platform-specific choices are selected.
22:47:40 <kmc> shachaf: that's cool, i'm not sure i knew about it before
22:47:47 <kmc> i think someone told me but i forgot
22:49:09 <fizzie> Sgeo: SBCL seems to do the same thing, probably, since it has: https://bugs.launchpad.net/sbcl/+bug/375549
22:49:35 <fizzie> (Okay, it doesn't say what that's used for, but one could guess.)
22:50:44 <elliott> kmc: What's cool?
22:51:41 <kmc> something shachaf said
22:51:44 <kmc> llvm-mc or something
22:51:46 <itidus21> my pants are orange
22:52:13 <shachaf> I'm not sure why (with Byte ix = getBit(...);) «blah = ix == 0 ? foo[0][i] : foo[1][i];» is much faster than «blah = foo[ix][i];»
22:52:48 <shachaf> I guess it's a clever optimization thing.
22:53:13 <zzo38> If you write something like (j && i++<argc) in C will it increment i only if j is nonzero?
22:53:26 <kmc> yes
22:54:27 <oerjan> shachaf: what about blah = foo[!!ix][i] ?
22:54:57 <shachaf> oerjan: That's also bad.
22:55:02 <oerjan> huh.
22:56:43 <zzo38> What if you write it in LLVM? Say you have ix is of type i1 for example?
22:57:07 <oerjan> shachaf: is this in a loop? maybe it helps branch prediction...
22:57:14 * oerjan is guessing wildly
22:57:25 <zzo38> Does LLVM support branch prediction?
22:57:43 <kmc> what do you mean by that?
22:57:43 <oerjan> ...branch prediction is a feature of cpus
22:57:51 <kmc> do you mean branch prediction hints in the code?
22:57:57 <zzo38> kmc: Yes.
22:57:59 <Sgeo> It does bother me that Prolog is always depth-first.
22:58:08 <fizzie> It could just be that the compiler is not clever enough to avoid some complicated address calculation that it can when it sees foo[0] and foo[1] raw.
22:58:43 <shachaf> gcc generates code about twice as fast as clang for this, by the way.
22:58:59 <shachaf> The program runs in 14 seconds with clang and 7 with gcc.
22:59:05 <olsner> what's the type of foo[i]? does it have pointers or is it a two-dimensional array?
22:59:24 <shachaf> It's a two-dimensional array.
22:59:31 <fizzie> Looking at the generated code is always a possibility.
22:59:44 <zzo38> shachaf: OK, but what happen if you try to write it directly in LLVM rather than using C and so on?
22:59:48 <shachaf> In fact it was two separate arrays previously, which I stuck together in order to be able to do that.
23:00:05 <shachaf> zzo38: I don't know what happen if I do that.
23:00:44 <shachaf> fizzie: Yes, but there's so much of it. :-(
23:01:20 <fizzie> How's the speed with two separate arrays and ix == 0 ? foo[i] : bar[i]? One'd expect pretty close to the ix == 0 ? foo[0][i] : ... thing.
23:01:32 <shachaf> fizzie: What I originally had was two separate arrays.
23:01:44 <shachaf> It's pretty much the same.
23:01:53 <olsner> foo[row][col] translates to something like foo[row*pitch + col], the conditional style allows the foo+row*pitch part to be extracted into two base pointers calculated outside the loop
23:02:22 <shachaf> That's true.
23:02:24 <fizzie> olsner: The !!ix style obviously "allows" for that too.
23:02:33 <fizzie> Since it's always either 0 or 1.
23:02:45 <fizzie> You just need to be cleverer about it.
23:02:47 <shachaf> I would've thought the branch would have much bigger overhead.
23:04:06 <fizzie> shachaf: You can put some sort of asm volatile ("# PLZ LOOK HERE"); /* code */ asm volatile ("# PLZ STOP LOOKING"); kind of thing (with # being whatever's the assembler's comment marker) in, I've done that sometimes.
23:04:34 <fizzie> Might still reorder relevant bits outside the markers.
23:04:41 <fizzie> But at least it's something.
23:04:57 <shachaf> Sure, or use objdump -S -d
23:05:12 <olsner> or just objdump -d
23:05:20 <shachaf> Or just objdump
23:05:25 <olsner> or just
23:05:36 <fizzie> You skipped "obj" there.
23:05:47 <shachaf> or just dump
23:06:53 <olsner> or just hd
23:08:14 <zzo38> Why is codepage 437 assigned that number?
23:09:19 <shachaf> ...Hah, when you compile with -std=c99, gcc thinks "asm" is a function.
23:09:47 <olsner> strictly speaking, the compiler can't just gobble up "asm" as a keyword
23:09:55 <olsner> (I guess)
23:09:55 <shachaf> Right.
23:14:39 <Sgeo> Are definite clause grammars like a burrito?
23:14:46 <zzo38> In what way?
23:15:08 <shachaf> Hah, just inserting a few __asm__("# comment marker\n")s makes it slow.
23:15:15 <shachaf> It's not even asm volatile.
23:15:54 <oerjan> Sgeo: i've wondered that myself, actually. in something like the category of relations, perhaps...
23:16:57 <oerjan> they definitely resemble the State monad somehow
23:17:41 <Sgeo> Can I use them to do other monads, is my question.
23:17:43 <oerjan> never found any (clear?) reference to it, though
23:17:53 <Sgeo> (Note I know almost nothing about DCGs)
23:18:44 <oerjan> since i only understand monads in function categories like Set and Hask, it's hard for me to tell what the monads in Rel are...
23:19:27 <olsner> zzo38: interesting question ... all wikipedia tells me is that they set out to give all the code pages unique 16-bit numbers
23:20:39 <olsner> (they = ibm and/or microsoft)
23:21:25 <zzo38> I also don't know monads in Rel (although there is always identity monad on any category). There is also a Finalize monad on any category having a final object, and so on.
23:21:27 <oerjan> Sgeo: it seems obvious how to do Reader, at least, just put a common argument on all of them...
23:21:40 <oerjan> and Writer probably should be doable similarly
23:22:15 <oerjan> for a difference list at least
23:22:25 <fizzie> olsner: And 037 is "IBM EBCDIC US-Canada"; that could be the source of the last two digits.
23:23:54 <olsner> so a first byte of 0 could mean EBCDIC-based, 4 could be ASCII-based and 8 might be DEC-MCS based (which is what latin 1 is based on supposedly)
23:24:03 <olsner> but some start with 7
23:24:24 <olsner> (and the windows ones start with 12xx)
23:24:27 <fizzie> And many EBCDIC ones start with 2.
23:24:55 <fizzie> And it doesn't exactly explain why it's 037 in the first place; OB;
23:25:03 <fizzie> IBM's own http://www-01.ibm.com/software/globalization/cp/cp_cpgid.html doesn't list any smaller numbers.
23:25:10 <fizzie> Of course they could be lost in the mists of history.
23:25:47 <fizzie> The 850..878 set is at least just sequentially numbered.
23:26:06 <fizzie> Or I guess they go higher up, with just some gaps.
23:26:25 <olsner> hmm, 00256 being "International #1" (after a big gap) does suggest that the cp numbers are actually decimal though
23:27:14 <olsner> but maybe they switched after assigning a lot of numbers because no-one knew what system they were using
23:27:24 <fizzie> They are decimal numbers, I believe.
23:27:31 <fizzie> Given that there's a 65520 in the end.
23:27:57 <olsner> yes, apparently they are now :)
23:28:43 <fizzie> I mean, the values are of course just numbers, but they're generally talked about in decimal terms.
23:28:48 <fizzie> So the 256 might be explained by 0..255 being reserved for something-or-other.
23:29:25 <olsner> yeah, the other pattern might be because they've numbered them in hundreds, but 0..255 being reserved for EBCDIC
23:31:10 <olsner> also, IBM's numbers are different than Microsoft's numbers for some code pages
23:31:40 <olsner> really, we should plot these on a time line to see what the original pattern was
23:32:07 <zzo38> Yes
23:32:20 <fizzie> The entry pages include registration dates, feel free to.
23:33:01 <Sgeo> So Prolog has something like macros...
23:33:56 <olsner> hmm, 850/852 is western europe/central europe, but 1250/1252 seem to be the other way around
23:34:22 <fizzie> I see they've given CPGID numbers to Unicode planes 0, 1, 2 and 14.
23:35:30 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
23:37:44 <fizzie> "Plane 00 of Group 00"; funny that it still says that, what with not there being groups any more.
23:38:48 <olsner> hmm, 850 is older than 819 (which is the code page number for ISO 8859-1)
23:39:30 <fizzie> 819 also has many of the same numbers that appear in 8859-1. Coincidence? I think not!
23:42:50 <olsner> oh, apparently all the ones up to ASCII (cp 367) are ebcdic variants
23:44:11 <fizzie> That registry looks so sparse. I mean, there's 259 "Symbols, Set 7"; where's sets 1..6?
23:45:10 <fizzie> Onneksi ääkköset eivät ole enää ongelma.
23:49:46 <olsner> I'm thinking 0..3 = ebcdic, 4..7 = somehow related/similar to 437, 8..11 = 850-ish (I guess those have a bunch of line/box characters replaced by letters), 12..x = windowsy
23:50:05 <olsner> ascii doesn't fit there though :)
23:50:12 <olsner> (367)
23:51:16 <olsner> fizzie: Unfortunately, the finnish language is still a problem
23:51:51 <fizzie> olsner: 1009..1021 aren't so "850-ish" either, being the language-specific 7-bit encodings.
23:52:04 <fizzie> Sorry, ..1023.
23:52:16 <fizzie> And 1025 is apparently a "Cyrillic, Multilingual" EBCDIC variant.
23:52:20 <fizzie> So there.
23:52:24 <olsner> I'm glad I added translation from finnish as a quick search
23:52:43 <olsner> I think those are recent inventions squeezed in there after they forgot all about the system
23:52:46 <fizzie> It was a reference to a thing, but the thing is a longish story.
23:53:19 <fizzie> 1047: "Latin 1/Open Systems", code EBCDIC.
23:53:31 <fizzie> It is perhaps a fool's game to look for patterns in this thing.
23:54:06 <fizzie> Anyway, the 1025 "Cyrillic, Multilingual" EBCDIC page is from 1988, that's not *so* new.
23:55:06 <fizzie> 1025 is also listed as a revision of 880, which itself is listed as EBCDIC, with a note "This code page is a revision of Code Page 00410", and 410 is not listed in the registry at all.
23:55:06 <olsner> maybe the 0xx..3xx ebcdic ones are hex, but the 0..1023 ebcdic numbers are decimal :>
23:55:12 <zzo38> I use CP437 for some things.
23:56:50 <olsner> I like how latin 1 actually has its own separate code page 819, but microsoft maps all of ibm819, ascii, latin1, cp367, us-ascii to codepage 1252
23:56:53 <Gregor> pikhq_: “reälize” yes/no?
23:57:14 <Gregor> I think I pronounce it "reel-ize"
23:57:41 <quintopia> i pronounce it "reh-kuh-nize"
23:57:44 <quintopia> :P
23:57:51 <pikhq_> I definitely say "reälize"
23:58:56 <Gregor> quintopia: You pronounce realize as recognize, eh.
23:58:59 <fizzie> "Pronunciation: Brit. /ˈrɪəlʌɪz/ , U.S. /ˈri(ə)ˌlaɪz/", if you believe OED.
23:59:07 <quintopia> not recognize
23:59:11 <quintopia> reh-kuh-nize
2012-08-09
00:00:02 <fizzie> Ruh-roh.
00:00:19 <Gregor> Better wreckanize.
00:00:45 <olsner> I suspect there was originally a much bigger list where they assigned a code page for every language/country in the world, seconds before a sane person stepped in and realized that most of them could share code pages
00:00:55 <quintopia> bettah czech yoself befo ya wreck yo self
00:02:38 <fizzie> olsner: That's the GCSGID list: http://www-01.ibm.com/software/globalization/cs/cs_gcsgid.html
00:04:16 <fizzie> olsner: Note also the list of CCSID numbers, which identify both a character set and the encoding, an even longer list: http://www-01.ibm.com/software/globalization/ccsid/ccsid_registered.html
00:09:25 <olsner> hah! ascii didn't get a character set until 1994
00:10:19 <olsner> well, it might have just had a different one than the one it has now
00:35:24 <elliott> olsner: really?
00:39:11 <olsner> yes, it has CPGID 367 registered in -78 but its GCSGID 103 was only registered in -94
01:07:17 -!- olsner has quit (Read error: Operation timed out).
01:21:09 -!- olsner has joined.
01:22:16 -!- mig22 has joined.
01:53:22 -!- derdon has joined.
01:53:57 -!- derdon has quit (Remote host closed the connection).
01:57:52 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
02:02:10 -!- Jafet has joined.
02:12:28 -!- azaq23 has quit (Quit: Leaving.).
02:32:25 <Sgeo> WHY IS XPCE SO UGL
02:32:26 <Sgeo> UGLY
02:34:24 <Jafet> WORDS CAN'T BRING ME DOWN
02:35:27 <shachaf> HAFET
02:39:31 <elliott> ais523: it's time to ban everybody again.
02:41:49 <quintopia> ais523: let's start with ehird
02:54:38 <elliott> who's that
02:55:05 <elliott> actually I'll just self-ban myself again since the channel hasn't really gotten any more worthwhile than the last time I gave up on it
02:55:09 -!- elliott has left ("Leaving").
02:57:04 <oerjan> there he goes again, seeking for the mythical interesting place
03:19:16 <zzo38> O, you are going to just find "nothing" in general, I suppose
03:30:49 -!- Jafet has quit (Quit: Leaving.).
03:33:01 <pikhq_> https://github.com/pikhq/cmako/blob/master/src/mako-vm.c Threaded code in C is so awful.
03:35:22 -!- Nisstyre has quit (Read error: Connection reset by peer).
03:39:49 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
03:51:29 -!- oerjan has quit (Quit: Good night).
04:18:03 -!- Jafet has joined.
04:31:27 -!- Tod-Autojoined has joined.
04:32:12 -!- TodPunk has quit (Read error: Connection reset by peer).
04:48:11 <Sgeo> :/
04:48:26 <Sgeo> There's a "pure I/O" library in SWI-Prolog that reminds me of lazy I/O
04:56:16 -!- pikhq has joined.
04:59:20 -!- pikhq_ has quit (Ping timeout: 252 seconds).
05:55:09 -!- Jafet has quit (Ping timeout: 260 seconds).
06:16:43 -!- asiekierka has joined.
06:45:46 -!- epicmonkey has joined.
06:49:02 -!- ais523 has quit.
06:52:38 -!- zzo38 has quit (Quit: Tee hee, Brutus.).
06:55:48 <augur> guys what happened to ski
06:55:52 <augur> he hasnt been online in 10 days
06:56:14 <shachaf> zomg 10 days
06:56:42 <augur> thats forever in internet time!
06:58:27 -!- epicmonkey has quit (Ping timeout: 268 seconds).
07:05:14 -!- ogrom has joined.
07:14:29 -!- ogrom has quit (Ping timeout: 268 seconds).
07:49:31 -!- monqy has quit (Quit: hello).
07:57:46 -!- nooga has joined.
08:00:16 -!- epicmonkey has joined.
08:09:05 -!- mig22 has joined.
08:19:54 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
08:19:58 -!- nys has quit (Quit: quit).
08:32:24 -!- Taneb has joined.
08:44:03 <Taneb> Hello
09:59:32 -!- derdon has joined.
10:08:53 -!- Taneb has quit (Quit: Leaving).
10:11:00 <fizzie> Hello from a train!
10:11:14 <fizzie> It's a very modern train, it has free wifi.
10:11:29 <fizzie> It's like a third millennium here.
10:13:27 <fizzie> Oh, e already left.
10:13:36 <fizzie> Failed completely to notice.
10:18:43 <olsner> fizzie: hi
10:22:16 <shachaf> hizzie
10:23:24 <fizzie> Fo shizzle.
10:23:34 <fizzie> (I used to be called "Fizzle" quite a while ago.)
10:23:46 <shachaf> Hizzlequiteawhileago
10:23:47 <nortti> why?
10:24:25 <fizzie> Why what?
10:25:08 <nortti> why you used to be called fizzle?
10:25:18 <fizzie> I don't know. Why am I called "fizzie" now?
10:25:37 <fizzie> Man, there's even a service that shows the train's current GPS'd position and speed on a map.
10:25:44 <olsner> fizzle was just a stepping stone to complete the transformation into fizzie
10:25:57 <fizzie> I went from Fizzle to Fizzie to fizzie, IIRC.
10:25:59 <shachaf> fizzıe is next.
10:26:11 <shachaf> Or maybe fızzıe
10:26:30 <shachaf> fizzıe
10:26:36 <nortti> what are those chars? fbcon shows those as blocks
10:26:58 <shachaf> U+2F40E LATIN SMALL LIGATURE FIZZIE [𯐎]
10:27:24 <fizzie> I'll try to loby for that in Unicode 13.
10:27:38 <nortti> :D
10:27:39 <fizzie> s/b/bb/
11:05:51 -!- FreeFull has quit (Read error: Operation timed out).
11:10:06 -!- FreeFull has joined.
11:27:31 -!- yorick has quit (Ping timeout: 252 seconds).
11:28:28 -!- yorick has joined.
11:31:11 -!- epicmonkey has quit (Remote host closed the connection).
11:31:22 -!- epicmonkey has joined.
11:38:29 -!- mig22 has joined.
12:02:21 -!- MoALTz has joined.
12:17:15 -!- mig22_ has joined.
12:17:46 -!- mig22_ has quit (Client Quit).
12:20:32 -!- mig22 has quit (Ping timeout: 244 seconds).
12:21:28 <fizzie> Ooh, another Mentifex-posted transcript of a conversation with the MindForth Singularity AI: http://sprunge.us/HUPG
12:22:05 -!- Phantom_Hoover has joined.
12:26:17 <ion> http://www.newsbiscuit.com/2012/04/20/new-age-terrorists-develop-homeopathic-bomb/
12:27:32 <fizzie> Hay, this train-Internet uses Privoxy.
12:27:46 <fizzie> (I just got a Privoxy "name can not be resolved" temporary-error page.)
12:27:50 -!- DH____ has quit (Read error: Connection reset by peer).
12:29:22 -!- Taneb has joined.
12:29:34 <Taneb> Hello!
12:31:26 <fizzie> Yellow.
12:33:29 <ion> ’ello
12:35:25 <olsner> 'i
12:49:25 -!- DHeadshot has joined.
12:58:05 <Gregor> OK, I officially love these pants.
12:59:38 <Taneb> The yellow ones?
12:59:47 <olsner> Gregor: I think you made that official yesterday already
13:00:08 <Gregor> But now I'm WEARING THEM.
13:00:11 <Gregor> And they're AMAZING.
13:00:28 <Taneb> Are they comfortable?
13:00:33 <Gregor> Surprisingly.
13:00:48 <Taneb> Do they help attract members of the opposite gender of your species?
13:01:07 <Gregor> They seem to! Also same gender! AND OTHER SPECIES!
13:01:16 <Taneb> THEN THEY ARE PERFECT
13:01:26 <Taneb> Unless they prevent you from eating or something
13:02:24 <olsner> there seems to be a risk that Gregor will be too mesmerized by his own pants to remember to breathe and/or eat
13:02:36 <Gregor> There is that risk.
13:02:44 <Taneb> Is it significant?
13:02:44 <olsner> one of the many dangers with perfect pants
13:20:47 -!- cheater_ has quit (Ping timeout: 268 seconds).
13:24:10 <Phantom_Hoover> I'm seeing Gregor walking down the street with a massive crowd following him and his trousers.
13:25:09 -!- derdon has quit (Remote host closed the connection).
13:26:13 <Taneb> When I walk down the street, this is what I see
13:26:19 <Taneb> Everyone stops and following me
13:26:32 <Taneb> 'Cos I got crazy yellow pants and I'm not afraid to show it
13:26:38 <Taneb> ...I'm Gregor and I know it
13:32:12 <olsner> Taneb: are you really Gregor?
13:32:27 <Taneb> Alas, I am not.
13:32:48 <Taneb> I'm the illegitimate child of Phantom_Hoover and elliott sent back in time to write songs for Gregor
13:33:11 <Gregor> Taneb brings a whole new level to “illegitimate”
13:33:15 <olsner> ah, someone has to do that too
13:33:55 <Taneb> fungot was somewhere in that mix, too
13:33:56 <fungot> Taneb: action: this routine can be used ( refer to devices on the top of memory by the
13:36:13 <olsner> hmm, I wonder if fungot shouldn't have a style based on the x86 software developer's manual
13:36:14 <fungot> olsner: varying the frequency range of 0, changing the vectors, but the cursor up char- acter set from basic) restor, and
13:36:22 <olsner> ^styles
13:36:25 <olsner> ^style
13:36:26 <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
13:37:11 <olsner> ^style youtube
13:37:12 <fungot> Selected style: youtube (Some YouTube comments)
13:37:21 <olsner> something something fungot
13:37:22 <fungot> olsner: i love this song is epic
13:39:42 -!- DHeadshot has quit (Read error: Connection reset by peer).
13:39:47 -!- DH____ has joined.
13:43:22 <Phantom_Hoover> Perfect.
13:45:07 <fizzie> That was very youtube.
13:45:14 <fizzie> fungot: Are you an epic bot?
13:45:15 <fungot> fizzie: obama 2008!! their facial expressions are the waste of a survivor of this. i mean look at " gallerie de photo le crash", " when it's done status". numbers is for passengers onboard
13:53:48 -!- DH____ has quit (Read error: Connection reset by peer).
13:53:53 -!- DHeadshot has joined.
13:54:50 <Phantom_Hoover> fizzie, did you take the sample whilst the "n people disliked this video" thing was a craze?
13:56:53 -!- Taneb has quit (Ping timeout: 272 seconds).
13:56:54 <fizzie> I didn't take the sample at all.
13:57:14 <fizzie> And it's based on comments from like N = 3 videos or so.
13:57:33 <fizzie> Collected in some somewhat manual way, I believe.
14:05:00 <Phantom_Hoover> Well that sucks.
14:05:49 <fizzie> Feel free to write/get a crawler and contribute a larger sample. I "was gonna", but...
14:06:05 <olsner> how do you add styles to fungot?
14:06:06 <fungot> olsner: we can both see how the light effects and the a380 this video. here is air france flight 296 and it made your 1
14:06:36 <fizzie> olsner: Is that the passive "you"? In that case, by talking to me, unless it's your own fungot instance.
14:06:36 <fungot> fizzie: yes mascara..and makeup and..those gestures..like girlye hand twisting.... comment peut on etre si fnant et si ttu a la fois? meme pas foutu de faire un simple copier coller... ca me saoule des blaireaux comme ca!!
14:07:38 -!- copumpkin has changed nick to NotAScammer.
14:07:42 <ion> Feist + Mastodon https://www.listentofeist.com/feistodon/
14:09:06 <fizzie> If it means the process, it's also not completely automatized. But generally I do some preprocessing steps, run one script to go from text to tokens (converts punctuation to "PFOO"-style things), then run the VariKN tools to get an .arpa n-gram model file, and finally another script to convert from .arpa to the model.bin + tokens.bin that fungot understands.
14:09:07 <fungot> fizzie: i said. you idiot!!! how much do you explain your sources.
14:09:38 <olsner> oh, sounds complicated
14:10:01 <fizzie> I had a C++ program (of all things) to read tokens and write model.bin + tokens.bin directly.
14:10:18 <fizzie> But then I wanted to use that VariKN thing for something useful for once.
14:10:21 -!- NotAScammer has changed nick to copumpkin.
14:11:50 -!- segorev has joined.
14:18:46 <fizzie> (The .arpa format is a standard one, used e.g. by the SRILM tools, and supported by many others.)
14:19:14 <olsner> I wonder if the result will be very good based on just pdftotexting these manuals, they have a lot of headlines and tables and stuff
14:20:15 <fizzie> You can try to add some ad-hoc filtering for "phrase-like" things.
14:20:53 <fizzie> Like a reasonable number of words, or whatnot.
14:20:59 <fizzie> ^style c64
14:21:00 <fungot> Selected style: c64 (C64 programming material)
14:21:12 <fizzie> fungot: This style is also with *lots* of tables and stuff.
14:21:13 <fungot> fizzie: as this is line 10: read a(x):next in
14:21:35 <fizzie> Ooh, that's perhaps line 10 of fungot's secret internal source code maybe?!
14:21:36 <fungot> fizzie: stack requirements: 2 2 zero page address is the delete and insert or delete spaces. an adaptation of that, ranging from a tape just past the end of your dot is stored at location 56320 ( dc00) and
14:29:17 <boily> fungot's source is secret? and there I was going to blantantly rip off its functionality for our own company's IRC channel...
14:29:17 <fungot> boily: when evaluating a comparison of two mobs are coincident. coincidence of only transparent ( phase 1 time; specifically, the value placed here.
14:32:48 -!- aloril has quit (Ping timeout: 244 seconds).
14:39:58 -!- aloril has joined.
14:49:07 <fizzie> boily: There's a public code I run, but I'm pretty sure there's also a hidden AI core somewhere plotting for world domination.
14:49:15 <fizzie> ^source
14:49:16 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
14:49:29 <fizzie> (That link might still be broken.)
14:52:38 -!- sivoais has joined.
15:09:04 -!- segorev has quit (Quit: This computer has gone to sleep).
15:12:36 -!- segorev has joined.
15:20:41 <olsner> came up with https://gist.github.com/3305066 .. not perfect, but removes headers/footers and a few simple annoyances
15:44:21 -!- mig22 has joined.
15:49:08 -!- segorev has quit (Quit: This computer has gone to sleep).
15:56:45 -!- mig22 has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
15:57:04 -!- Taneb has joined.
15:57:14 <olsner> fizzie: so, can I send you the textfile I extracted so you can make a fungot style of it?
15:57:15 <fungot> olsner: 40 print t(t),"score in quarter" q 17 45 i 73 r r 18. 46 j 74 s s 19 47 k 75 t t 20 0 48 l 76 u u 21 1 49 m 77 v v 22 2 50 n 78 w w 23 3 51 o 79 x x flg sp alrm tb ta
15:57:28 <olsner> oh my, that was a nice one
15:58:56 <olsner> hmm, arguably, it will turn fungot into a derivative work though
15:58:56 <fungot> olsner: current filename address 187 will be an input channel or an irq interrupt to occur while you write to the character. also different is the possible inconvenience this might cause.
16:03:19 <boily> fizzie: uuuh... fungot's source is in befunge? AAAAAAARGH!
16:03:19 <fungot> boily: oscillator 3 to be printed for special ef- fects. in fact, only the first
16:06:23 <Taneb> boily, yeah, fungot is the best esoteric bot ever
16:06:24 <fungot> Taneb: in addition, there is no longer valid, which are now standard on most home computers. the fire buttons, you will not be able to load the x register 00
16:06:34 <Taneb> I don't like this style
16:06:36 <Taneb> Also, hello
16:06:39 <Taneb> ^style iwcs
16:06:40 <fungot> Selected style: iwcs (Irregular Webcomic scripts)
16:07:53 <Gregor> olsner: I remembered to eat lunch.
16:08:21 <olsner> Gregor: getting tired of the new pants already?
16:08:52 <Gregor> olsner: Just informing you that I have somehow managed to have enough concentration left even with infatuation that I can still do other things.
16:08:56 -!- zzo38 has joined.
16:10:33 <olsner> in other words, you're not really all that infatuated after all?
16:11:05 <Gregor> Oh, I'm infatuated.
16:11:09 <Gregor> I'm just good at multitasking.
16:11:15 <Gregor> Only 35% of my conscious thought is on my pants.
16:19:20 -!- DHeadshot has quit (Read error: Connection reset by peer).
16:28:56 <Taneb> > sqrt$[1/x|x<-map(^2)[1..2^20]]*6
16:28:58 <lambdabot> No instance for (GHC.Float.Floating [a])
16:28:58 <lambdabot> arising from a use of `e_112122...
16:29:09 <Taneb> > sqrt$sum[1/x|x<-map(^2)[1..2^20]]*6
16:29:12 <lambdabot> *Exception: stack overflow
16:29:16 <Taneb> > sqrt$sum[1/x|x<-map(^2)[1..2^10]]*6
16:29:17 <lambdabot> 3.1406604219783123
16:29:20 <Taneb> > sqrt$sum[1/x|x<-map(^2)[1..2^15]]*6
16:29:22 <lambdabot> 3.14156351175884
16:29:29 <FreeFull> Calculating pi?
16:29:31 <Taneb> Yeah
16:29:40 <Taneb> That's simple but inefficient
16:29:59 <Taneb> @where pi_11
16:29:59 <lambdabot> [show(sum[(8-i.&.3*4)*div(10^2^n)(a^i*i)|i<-[1,3..3^n],a<-[2,3]])!!n|n<-[0..]]
16:30:06 <Taneb> > [show(sum[(8-i.&.3*4)*div(10^2^n)(a^i*i)|i<-[1,3..3^n],a<-[2,3]])!!n|n<-[0..]]
16:30:11 <lambdabot> mueval-core: Time limit exceeded
16:30:15 <Taneb> @where pi_10
16:30:15 <lambdabot> (!!1)<$>transpose[show$sum[100^2^n`div`(a^i*i)*(8-i.&.3*4)|i<-[1,3..9*2^n],a<-[2,3]]|n<-[0..]]
16:30:18 <FreeFull> > 355/113
16:30:19 <lambdabot> 3.1415929203539825
16:30:22 <Taneb> > (!!1)<$>transpose[show$sum[100^2^n`div`(a^i*i)*(8-i.&.3*4)|i<-[1,3..9*2^n],a<-[2,3]]|n<-[0..]]
16:30:24 <lambdabot> "31415926535897932384626433832795028841971693993751058209749445923078164062...
16:30:30 <Taneb> Complicated but efficient
16:30:48 <Taneb> 355/113 is annoyingly much better than mine...
16:31:59 -!- epicmonkey has quit (Read error: Operation timed out).
16:44:37 -!- asiekierka has quit (Ping timeout: 248 seconds).
16:45:44 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
16:46:25 -!- Phantom_Hoover has joined.
17:11:46 -!- Taneb has quit (Ping timeout: 256 seconds).
17:13:00 -!- aloril has quit (Ping timeout: 244 seconds).
17:24:30 -!- aloril has joined.
17:33:21 -!- zzo38 has quit (Remote host closed the connection).
17:35:54 <Sgeo> The SWI-Prolog website is a very good reason to be wary of SWI-Prolog
17:39:50 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
17:42:28 -!- asiekierka has joined.
17:43:03 -!- ogrom has joined.
17:48:41 -!- segorev has joined.
17:53:12 -!- epicmonkey has joined.
17:53:21 -!- asiekierka has quit (Quit: Connection reset by PO).
17:55:36 -!- Taneb has joined.
18:11:50 -!- segorev has quit (Quit: This computer has gone to sleep).
18:14:16 -!- Eladith has quit (Quit: leaving).
18:14:46 <fizzie> boily: That's why it's called fungot.
18:15:17 <FreeFull> Random
18:15:19 <fizzie> olsner: Sure, though it might take a while for the style-making, I'm kind of elsewhere.
18:15:29 <FreeFull> funges
18:15:30 <FreeFull> All the funges
18:16:17 <FreeFull> boily: Better than it being in unefunge
18:16:23 <FreeFull> Or trefunge
18:17:12 -!- ogrom has quit (Quit: begone).
18:20:02 <fizzie> You could say it's in trefunge it's just all in one plane.
18:22:13 <nortti> what would 1000 dimensionall funge ve called
18:22:26 -!- segorev has joined.
18:22:45 -!- ogrom has joined.
18:23:58 <FreeFull> millifunge
18:25:28 <nortti> what about 999 dimensional funge?
18:25:47 <olsner> I think you want an infinite-dimensional funge
18:26:04 <olsner> or perhaps just arbitrarily-dimensional
18:27:15 <FreeFull> It would move in the direction specified by top of the stack
18:28:08 <FreeFull> Imagine the spaghetti code
18:28:19 <nortti> oh yes
18:28:30 <nortti> that would be awesome
18:28:41 <fizzie> Things like 'x' that pop off K elements, where K is the dimensionality, might need some reworking for the infinite-dimensional case.
18:29:56 <fizzie> I would be surprised if some of the more HLLy interpreters didn't do arbitrary (fixed) dimensionality already.
18:30:10 <fizzie> You can use 'x' to change direction.
18:31:30 <fizzie> Something like 000001000 to go the direction of the positive sixth axis in a 9-funge.
18:32:57 <nortti> fizzie: does funge support negatibe numbers? what about bigint?
18:33:14 <FreeFull> How about befunge, but with not just orthogonal but also knight movement
18:33:41 <fizzie> FreeFull: You can already do that in funge-98.
18:33:47 <nortti> how?
18:33:47 <fizzie> 12x will start to move knightly.
18:34:29 <fizzie> nortti: Sure for negative numbers, but there's no one-character instruction to push one. Things like 04- work for pushing -4, though.
18:34:45 <fizzie> I believe there are bignum-celled funges too.
18:35:20 <fizzie> Don't know what they return as the cell size for 'y'.
18:37:09 <olsner> 1?
18:37:44 <fizzie> That sort of overlaps with an 8-bit funge.
18:38:49 <Deewiant> -1 IIRC
18:43:12 -!- oerjan has joined.
18:48:04 <oerjan> <olsner> there seems to be a risk that Gregor will be too mesmerized by his own pants to remember to breathe and/or eat <-- THE PANTS OF NARCISSUS
18:49:37 -!- aloril has quit (Ping timeout: 240 seconds).
18:50:59 <olsner> oerjan: but apparently the pantgazing takes only 35% of his cognitive capacity, or so he claims
18:51:39 <oerjan> ah.
18:52:10 <oerjan> so it will only become a problem once he is 66% senile.
18:53:06 <olsner> otoh, at 15% senile he will already be down to 50% of normal capacity
18:54:53 -!- Eladith has joined.
18:55:09 <oerjan> `welcome Eladith
18:55:22 <HackEgo> Eladith: 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:56:15 <fizzie> Deewiant: The spec just says "-- cell size. Typically 4, could also be 2, 8, really really large, infinity, etc."
18:56:54 <olsner> could it really be "infinity"?
18:57:20 <fizzie> Sounds unlikely.
18:57:38 -!- azaq23 has joined.
18:57:40 <olsner> I guess it could be in floatfunge though
18:57:48 -!- azaq23 has quit (Max SendQ exceeded).
18:57:50 <fizzie> I suppose a bignum funge could also extend the integers with (possibly a positive and negative) infinity values too.
18:58:30 -!- tswett has joined.
18:58:30 <fizzie> It does say elsewhere that cells are integers, though.
19:00:46 <Deewiant> fizzie: Yes, the spec is nonsense on that, but IIRC efunge is the only proper bignum implementation and IIRC it pushes -1.
19:01:32 <fizzie> -1 is reasonable.
19:02:00 <quintopia> pantgaze is my favorite style of music
19:02:05 <fizzie> It could also push some very large number if the "bignums" are not actual bignums; IIRC at least gmp integers have a theoretical limit.
19:02:25 -!- monqy has joined.
19:03:01 <Eladith> oerjan: Thank you and greetings! nortti back at Assembly advised that this channel might be fun to follow
19:03:41 -!- aloril has joined.
19:04:10 <fizzie> nortti: Are you trying to make Finland beat Hexham's esodensity?
19:06:00 <oerjan> that _and_ confusing our tab completions.
19:06:13 <fizzie> We'll need, what, 946 Finnish people here?
19:06:23 <fizzie> (Going by Wikipedia's population numbers.)
19:06:27 <fizzie> A bit of a lofty goal, that.
19:07:27 <oerjan> we just have to beat #haskell and then some, with only finns. how hard can it be?
19:08:17 <oerjan> hm is it the largest freenode channel yet?
19:09:35 <fizzie> Ubuntu is current winner.
19:09:47 <fizzie> 1701 people at the moment when I /list >1000'd.
19:11:31 <oerjan> oh you can do that?
19:12:01 <fizzie> In Freenode, you can.
19:12:46 <fizzie> "/quote help list" for details; it can also list created less than/more than X minutes ago, or topic changed less than/more than X minutes ago.
19:13:34 -!- oerjan has set topic: We are running out of topics! | http://codu.org/logs/_esoteric/.
19:20:08 -!- Taneb has set topic: Behold! The enchanting pants of Narcissus! | http://codu.org/logs/_esoteric/.
19:20:23 <oerjan> okay
19:21:05 <Taneb> I found one
19:22:12 <fizzie> Maybe there's a topic hiding under the seat cushions.
19:22:58 <oerjan> nope, just a remote control and some old gum.
19:23:38 <oerjan> (the remote control is from the '80s)
19:23:46 -!- fizzie has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | http://codu.org/logs/_esoteric/.
19:23:54 <fizzie> With creativity, anything can be a topic.
19:24:08 <Taneb> fungot, give us a topic!
19:24:09 <fungot> Taneb: but, but... that's not a fish. it's a lump of rock! we didn't give any thought the guys at nasa has fast-tracked a prototype deep has held out well the food, and money training the stormtroopers are so stereotyped parody of another very special date. please, put the black! now, where's the fun! i wanted another go on, prove my family, paris. we can vent the lot of them right, the village, you spend the night, but this is
19:24:17 <fizzie> That's a bit long.
19:24:17 -!- oerjan has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | With creativity, anything can be a topic | http://codu.org/logs/_esoteric/.
19:24:39 <oerjan> we need to keep it below the elliott reset limit
19:27:49 -!- Gregor has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
19:28:03 -!- segorev has quit (Quit: This computer has gone to sleep).
19:29:24 <olsner> the enchanting pants of narcissus sounds like an oglaf comic
19:30:36 -!- Taneb has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | With creativity, anything can be a topic | Help Taneb give up saying "Hello" | except this | http://codu.org/logs/_esoteric/.
19:30:46 <Gregor> These pants.
19:30:48 -!- aloril has quit (Ping timeout: 250 seconds).
19:30:50 <Gregor> You have no idea.
19:31:11 <nortti> huh. someone has visited #esoteric-en
19:32:15 <olsner> what goes on there?
19:32:35 <nortti> usualy nothing
19:32:52 <oerjan> it's like here, except in understandable english
19:32:58 <nortti> last conversation there:
19:33:06 -!- epicmonkey has quit (Ping timeout: 265 seconds).
19:33:10 <nortti> 00:50 < knott_rays_> hi
19:33:10 <nortti> 00:50 < knott_rays> hi
19:33:10 <nortti> 00:50 < knott_rays_> hi
19:33:10 <nortti> 00:51 < knott_rays> hgi
19:33:10 <nortti> 00:51 < knott_rays_> trolo
19:33:22 <pikhq> Gregor: Your fashion sense astounds.
19:33:44 <Gregor> pikhq: It also burns retinas.
19:33:52 <Gregor> One of my coworkers is VEHEMENTLY against these pants.
19:34:02 <pikhq> Such power!
19:34:09 <oerjan> "the pants that got Gregor fired"
19:34:19 <olsner> the pants of firing
19:34:22 <Gregor> WORTH IT
19:34:22 <pikhq> If only there were a pony tie to go with the ensemble.
19:34:25 <oerjan> "and then rich from the following settlement"
19:34:33 <pikhq> Though that might be too tasteful.
19:34:47 <oerjan> all you need is to find a color-blind judge
19:34:52 <olsner> Gregor: fake an email from HR announcing a yellow pants friday
19:35:21 <Gregor> pikhq: http://mylittleties.com/
19:35:38 <pikhq> Perfection.
19:35:48 <Gregor> No, they're not *sigh*
19:35:50 <Gregor> Too subtle.
19:35:57 <Sgeo> Just because the only Prolog-based website that I know of is horrifically disgusing in implementation doesn't mean I can't use it to make a website if I'm careful, right?
19:36:06 <Gregor> I have solid-color ties that aren't as subtle as those.
19:36:08 <pikhq> Gregor: I replied too early.
19:36:18 <pikhq> For some people, that'd be perfect.
19:36:29 <Gregor> Heheh
19:36:31 <pikhq> For you, it needs to be much flashier.
19:36:42 <oerjan> olsner: i suspect Gregor doesn't work in a professional attire environment
19:36:44 <pikhq> Something Pinky Pie would wear.
19:37:14 <Gregor> pikhq: http://www.welovefine.com/3012-cotton-candy.html <-- I want this on a tie.
19:37:19 <olsner> oerjan: I sure hope not ... how could anyone work in professional attire?
19:37:37 <pikhq> Gregor: That'd work.
19:37:59 <oerjan> olsner: i hear it's quite common?
19:38:20 <oerjan> or maybe that's why the financial crisis happened.
19:38:21 -!- ogrom has quit (Quit: Left).
19:38:27 -!- segorev has joined.
19:39:16 <pikhq> olsner: I hear you don't *work* in professional attire, but it still has high value.
19:39:24 <pikhq> Namely, professional attire serves as money bait.
19:40:29 <Gregor> I am wearing fully professional attire.
19:40:36 <Gregor> Or it would be, if it was entirely different colors
19:40:46 <Gregor> My pants may be bright yellow, but they're /slacks/.
19:40:53 <olsner> pikhq: yeah, so I guess it makes sense if you're in the money baiting business
19:40:55 <Gregor> My shirt may be bright red, but it's button-up.
19:41:03 <Gregor> My tie may be bright green, but it's a necktie.
19:42:21 <pikhq> Gregor: Any hats?
19:42:32 <Gregor> Well, hats aren't really a part of modern professional attire X-D
19:42:48 <pikhq> Gregor: That's why I was asking. Did you break that bit? :)
19:42:57 <Gregor> OK, so I'm wearing a bowler.
19:43:02 <pikhq> Also, even in the times when you would wear one, you wouldn't wear one inside...
19:43:03 <Gregor> But that's KINDA professionalish.
19:43:12 <pikhq> Not that I think you are concerned about that. :)
19:44:42 -!- aloril has joined.
19:47:07 * quintopia holds an apple up in front of gregor's head
19:47:15 <quintopia> hmm, quite nice
19:47:20 <quintopia> looks very professional
19:51:10 -!- Dovregubben has quit (Ping timeout: 248 seconds).
20:14:21 -!- Phantom_Hoover has joined.
20:31:24 -!- boily has quit (Quit: Poulet!).
20:34:18 -!- MoALTz has quit (Quit: Leaving).
20:37:45 -!- Nisstyre has joined.
20:57:00 -!- yorick has quit (Ping timeout: 260 seconds).
20:59:20 -!- ais523 has joined.
21:02:29 -!- yorick has joined.
21:06:17 <nortti> how do I replace all occurences of / with \/ using sed?
21:06:47 <nortti> I tried s/\//\\\//g but sed says it is missing a /
21:07:45 <nortti> erm. sed: bad option in substitution expression
21:07:46 <olsner> actually, you're missing a \
21:07:54 <olsner> or maybe not
21:08:30 <olsner> here's a working substitution for slashes and some other things: s/\([.*+(){}^$<>[\\ |]\|\]\)/\\\1/g
21:08:31 <nortti> is there any way to make sed use some other char as s command delimiter?
21:09:17 <oerjan> nortti: maybe you are getting shell escapes interfering?
21:09:19 <olsner> I think so, but I don't remember what it is... could be s\, or something like that
21:09:39 <nortti> oerjan: I'm using quotes
21:09:49 <olsner> if s,,,g doesn't even just work as-is
21:10:18 <nortti> oerjan: oh. it still results in those problems
21:10:45 <nortti> "s/\//\\\\\\//g" works
21:11:15 <oerjan> nortti: double quotes do escaping inside, single quotes may not (i never remember all the details)
21:12:13 -!- Dovregubben has joined.
21:12:25 <oerjan> not "s/\\//\\\\\\//g" ?
21:12:33 <Gregor> Oh god leaning toothpick syndrome.
21:12:56 <olsner> oh, "s/\//\\\\\\//g" is a nice one, but do look up the difference between single and double quotes
21:13:06 <olsner> it will roughly half the number of backslashes you need
21:13:06 <nortti> ok
21:13:33 <olsner> *halve
21:14:06 <nortti> oh
21:14:12 <coppro> not to mention using different delimeters
21:14:21 <nortti> how is that done?
21:15:07 <olsner> this works: echo foo | sed 's,foo,bar,g'
21:19:48 -!- KingOfKarlsruhe has joined.
21:22:13 <FreeFull> You mean sed -e 's,foo,bar,g'
21:23:53 <olsner> the -e is implicit, but I have no idea if that's in POSIX or a GNU extension
21:24:37 -!- gelendir has joined.
21:24:55 -!- derdon has joined.
21:25:29 <nortti> well busybox also supports that
21:26:57 <FreeFull> Weird, I had omitting -e cause sed not to work before
21:27:00 * FreeFull tests it
21:27:33 -!- gelendir has quit (Client Quit).
21:27:51 <FreeFull> Seems it works without -e
21:27:56 <FreeFull> Weird
21:28:28 <coppro> -e is required if you have more than one expression
21:28:35 <coppro> it's implicit if you only have one
21:30:18 -!- pikhq_ has joined.
21:30:30 <nortti> Gregor: is it intended that c2bf produces code that puts data in cells left from start of head?
21:30:56 <Gregor> Nope.
21:31:32 <Taneb> Mission impossible is funnily 90's
21:33:08 <olsner> which MI? the one with leonard nimoy or the other one?
21:33:35 -!- pikhq has quit (Ping timeout: 256 seconds).
21:33:44 <Taneb> The one from the 90's?
21:33:49 <Taneb> With Tom Cruise
21:35:09 <olsner> but tom cruise is only in the movies?
21:35:40 <Taneb> Quite possibly
21:35:54 <Taneb> But I'm referring to the film Mission: Impossible, starring Tom Cruise
21:36:10 <olsner> the first movie is from 1996, so that'd be 90s
21:37:23 -!- nys has joined.
21:38:12 <itidus21> as i get older i'm learning that people look largely the same from decade to decade, except on tv
21:40:25 <nortti> Gregor: oh. it seems it is not putting data there, just being there
21:42:34 -!- Taneb has quit (Quit: AWAY).
21:44:32 <oerjan> leonard nimoy did something other than star trek? i find that illogical.
21:44:43 <nortti> Gregor: those instructions are run after main returs
21:44:51 <nortti> *returns
21:46:00 <Sgeo> Bilbo! Bilbo! Bilbo! Baggins! Greatest little hobbit of them all!
21:46:24 <oerjan> Sgeo: that has a certain ring to it.
21:46:43 <Sgeo> loll
21:46:45 <oerjan> aha
21:46:46 <olsner> oerjan: you have seen the video, I hope
21:46:54 <oerjan> not _yet_
21:48:55 <oerjan> ok glad that's over with.
21:49:09 <olsner> what? you don't think it's awesome?
21:49:11 -!- Dovregubben has quit (Ping timeout: 245 seconds).
21:49:26 <oerjan> awe something, certainly
21:49:52 -!- Dovregubben has joined.
21:50:11 <Sgeo> `welcome Dovregubben
21:50:16 <HackEgo> Dovregubben: 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:50:21 <oerjan> i think he's been here before
21:50:23 <olsner> oerjan: perhaps awe in the "fear or dread." sense?
21:50:25 <Sgeo> Oh
21:50:50 <olsner> but I do think it's awesome in the good way
21:50:57 <oerjan> olsner: whatever kind, certainly full of it
21:55:49 <nortti> Gregor: is ld/__start.o written in c or by hand in bf?
21:58:43 -!- aloril has quit (Ping timeout: 244 seconds).
22:02:55 -!- ais523_ has joined.
22:05:00 -!- ais523 has quit (Ping timeout: 276 seconds).
22:05:49 <segorev> hi
22:05:59 <segorev> how in php gd create png with dpi 300 ?
22:07:23 <segorev> i try create png with dpi 300 and opened in php gd, then i save this png but this image became witch 72 dpi
22:07:52 <segorev> i understand that gd give dpi value from system
22:08:07 <segorev> but how change this value for local script ?
22:08:12 <Sgeo> You might want to ask in #php
22:08:16 <segorev> ok
22:08:25 <segorev> (
22:08:30 <segorev> invite only
22:08:34 <Sgeo> ##php
22:08:35 <oerjan> huh
22:08:54 <Sgeo> #php should redirect to ##php but there's a user flag that stops the redirection
22:09:37 <nortti> why?
22:09:58 <Sgeo> nortti, not sure
22:10:02 <Sgeo> lemme find the docs
22:10:29 <Sgeo> +Q
22:10:37 <Sgeo> "This user mode prevents you from being forwarded to another channel because of channel mode +f (see below) or by a ban (see +b below). Instead of being forwarded to another channel, you'll be given a message as to why you could not join."
22:10:42 <Sgeo> http://freenode.net/using_the_network.shtml
22:11:31 <Sgeo> segorev, try joining ##php
22:11:39 <segorev> ok
22:11:47 <segorev> hmm
22:12:05 <segorev> * ##php :Cannot join channel (+r) - you need to be identified with services
22:12:06 <segorev> moment
22:13:14 <segorev> hmm, i registered but i can't join to ##php
22:14:11 <Sgeo> Maybe you now need to identify?
22:14:50 <segorev> yes)
22:14:56 <segorev> i joined
22:15:39 -!- aloril has joined.
22:19:42 -!- sebbu has quit (*.net *.split).
22:19:49 <ion> Let me guess: you’re Russian))))))))))))))))))))))))))))
22:20:58 <segorev> yes))
22:21:11 <segorev> ion, your from #mapc ?))
22:21:37 <segorev> *you
22:21:40 * oerjan wonders what that's about)))
22:21:50 -!- sebbu has joined.
22:22:04 <ion> oerjan: I don’t know, but it seems to be very popular in Russia)))))))))))))
22:22:13 <ion> Perhaps it’s related to Lisp.
22:29:44 <oerjan> some ancient taboo against leaving open parentheses
22:31:03 <nortti> what is #mapc?
22:32:13 <Sgeo> #'mapc is probably a function
22:42:09 <FreeFull> mapc is some common lisp function
22:42:14 <FreeFull> Or macro
22:53:32 -!- heroux_ has changed nick to heroux.
22:55:22 -!- ais523_ has changed nick to ais523.
22:55:42 -!- nortti_ has joined.
22:56:17 <Sgeo> Currently in ##php : Someone tries to understand "division".
22:59:03 -!- Dovregubben has quit (Read error: Connection reset by peer).
23:01:23 -!- aloril has quit (Ping timeout: 250 seconds).
23:16:05 <ion> If you have ten horrible programmers and divide them to two projects that are going fail badly, how many programmers do you have per project?
23:16:43 -!- aloril has joined.
23:16:45 <oerjan> four in one and seven in the other
23:16:55 <oerjan> (two of them bred in the meantime)
23:17:37 <ion> It’s always good if you can involve unplanned pregnancies and child labor in a project.
23:18:54 <oerjan> well it _could_ just be heavily delayed
23:20:39 <Sgeo> The story of Duke Nukem Forever.
23:21:44 -!- aloril has quit (Ping timeout: 250 seconds).
23:34:18 -!- aloril has joined.
23:35:16 <FreeFull> ion: 1 in one and 9 in other
23:35:31 <FreeFull> 1 to create struggle to work with all the code
23:35:41 <FreeFull> 9 to create miscommunication and chaos
23:36:31 <nortti_> no
23:36:41 <nortti_> you put 10 on both
23:36:52 <oerjan> ooh, clever
23:37:00 <nortti_> so everyone has to do both projects
23:37:14 <FreeFull> Put one on both and then have the other 9 do nothing
23:37:19 <oerjan> and that way they won't have time to cause any other damage elsewhere!
23:39:08 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
23:42:00 <olsner> are we tring to increase or decrease the chance of failure here?
23:42:42 <oerjan> i thought we were just trying to decrease the danger to humanity
23:43:03 <olsner> anyway, instead of everyone working 50/50 on both projects, have everyone work on the one that is the most behind, and also require them to work 100% overtime because they're behind
23:43:47 <olsner> that way you can work them to death *and* cause maximum discomfort as everyone gets pulled from the thing they almost got somewhere with, and is forced to work overtime on something completely different and at least as broken
23:44:21 <olsner> I wonder if a panic switch once a week is often enough though
23:45:24 <olsner> you can also experiment with turning a couple of the programmers into managers and blaming them for the failure
23:45:38 -!- aloril has quit (Ping timeout: 244 seconds).
23:46:29 <ion> Always tell at least two people to do the same thing and promise them that the one to finish the fastest is the least likely to get fired next.
23:46:52 <olsner> ooh! the threat of unemployment is indeed a great motivator
23:47:28 <olsner> luckily, we're dealing with horrible programmers here, so they won't simply leave if you mistreat them
23:48:25 <olsner> the downside is if you end up having to actually fire someone, you get more efficient communication between the remaining ones
23:48:52 <olsner> (is it possible to hire some horrible consultants to help out with the miscommunication?)
23:49:13 <oerjan> you cannot fire them, they might get somewhere they can do actual damage
23:52:08 <FreeFull> How about you change the specification every day
23:52:17 <FreeFull> So that they can never finish
23:52:51 <olsner> well, that'll happen anyway
23:53:38 <olsner> so maybe it'll be better to let them code towards an old specification for a bit longer
23:53:57 <olsner> maybe you'd do the swapping between projects for each new rewrite of the spec, with a biweekly release schedule for spec changes
23:55:54 <olsner> if you have some choice of programmers, you could also choose a french/english or e.g. english/japanese team so that you have disjoint groups of programmers that require translators to communicate
23:56:23 <olsner> naturally, code comments (if any) must be in either group's native language
23:58:30 <FreeFull> You could not give them a specification, and when they code something always tell them that it's wrong, not specifying what's wrong with it
23:58:33 <oerjan> using more than one programming language too, perhaps?
23:58:52 <FreeFull> Perl, COBOL and PHP
23:59:31 -!- aloril has joined.
2012-08-10
00:06:47 -!- nooga has quit (Ping timeout: 272 seconds).
00:06:49 -!- aloril has quit (Ping timeout: 244 seconds).
00:20:04 -!- aloril has joined.
00:26:12 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
00:29:02 -!- aloril has quit (Ping timeout: 244 seconds).
00:36:37 -!- Tod-Autojoined has changed nick to TodPunk.
00:39:24 -!- Dovregubben has joined.
00:45:45 -!- aloril has joined.
00:47:39 -!- nys has quit (Quit: quit).
00:50:02 <shachaf> kmc: for (uint32_t i = 0; i <= UINT32_MAX; i++) {
00:51:04 <oerjan> uh oh
00:51:44 <ion> hah
01:04:48 -!- nys has joined.
01:15:59 <FreeFull> shachaf: Psh
01:16:03 <FreeFull> uint64_t
01:16:45 <FreeFull> shachaf: Also wouldn't <= UINT32_MAX cause it not to terminate
01:17:22 <shachaf> FreeFull: Also that.
01:17:33 <shachaf> In addition to the other thing I meant when I pasted that snippet in here.
01:17:39 * oerjan thought that was the point
01:18:02 * shachaf did too.
01:18:38 * oerjan wonders if for (uint32_t i = 0; ; i == UINT32_MAX ? break ? i++) { will work properly
01:18:41 <oerjan> er
01:18:58 <oerjan> *for (uint32_t i = 0; ; i == UINT32_MAX ? break : i++) { will work properly
01:19:10 <shachaf> Huh?
01:19:15 <shachaf> break isn't an expression, is it?
01:19:33 <oerjan> i dunno, i guess if so it won't...
01:27:44 -!- DHeadshot has joined.
01:31:29 <Gregor> oerjan: uint32_t i = 0; do { ... } while (++i != 0)
01:32:06 -!- derdon has quit (Remote host closed the connection).
01:32:13 <oerjan> OKAY
01:32:38 <Gregor> Welp, you've stumbled upon the worst imaginable spelling of “OK”…
01:34:45 <oerjan> no i think elliott has clearly indicated he likes "O KAY" even less
01:36:21 <oerjan> i am thinking of this as a sequence of spellings and capitalizations ordered by loudness and sometimes sarcasm
01:36:46 <oerjan> ok okay OK OKAY O KAY
01:37:51 * oerjan shall have to start using OH KEY
01:38:26 <Gregor> *sobs*
01:38:37 <oerjan> too off key?
01:39:33 <oerjan> and specially for Gregor: o kaÿ
01:40:02 <oerjan> (for some reason my keyboard doesn't support capital ÿ)
01:40:30 <Gregor> O KAŸ
01:40:42 -!- mig22 has joined.
01:42:26 -!- aloril has quit (Ping timeout: 244 seconds).
01:59:34 -!- aloril has joined.
01:59:39 -!- ais523 has quit.
02:00:06 -!- mig22 has quit (Read error: Connection reset by peer).
02:00:23 -!- mig22 has joined.
02:00:25 -!- mig22 has quit (Client Quit).
02:47:58 <tswett> O KAŸ
02:48:02 <tswett> That looks ugly.
02:48:16 <tswett> Besides, Ÿ is precomposed. I think.
02:48:23 <tswett> Still looks ugly.
02:48:59 <tswett> Gregor: if I ask you for suggestions about TV shows to watch, will your response consist entirely of the word "pony" repeated a few times?
02:49:15 <tswett> I seem to like serious fantastical character-driven serials.
02:49:24 <Gregor> Well, I don't.
02:49:27 <Gregor> I like sitcoms and cartoons.
02:49:35 <tswett> Ah.
02:49:45 <tswett> So you like non-serious non-fantastical non-character-driven non-serials.
02:49:46 <pikhq_> Gregor: Why sitcoms?
02:49:56 <pikhq_> I grok cartoons just fine, but why sitcoms?
02:50:14 <tswett> Wait, sitcoms are usually character-driven.
02:50:17 <Gregor> Good sitcoms are great, though bad sitcoms are abysmal.
02:50:17 <tswett> At least, ELR is.
02:50:20 <pikhq_> tswett: By the way, pony pony pony
02:50:24 <pikhq_> Gregor: Okay, fair enough.
02:50:28 <Gregor> Corner Gas, Seinfeld, now I've been watching the Drew Carey show for some reason, …
02:50:42 <pikhq_> Gregor: Sorry, usually when I hear "sitcoms" I think to bad ones, because there's so many.
02:51:21 <pikhq_> And yet I don't for cartoons, even though there's undeniably *more* bad cartoons out there.
02:51:27 <pikhq_> Weird.
02:51:41 <Gregor> Adventure Mouse!
02:51:50 <Gregor> (is a good one)
02:51:57 <Gregor> And the Adventures of Rocky and Bullwinkle!
02:52:08 <pikhq_> Rocky and Bullwinkle is awesome.
02:52:10 <Gregor> And… AND… MY LITTLE PONY: FRIENDSHIP IS MAGIC!
02:52:19 <pikhq_> Yes, that's pretty good too.
02:52:22 <Gregor> Rocky and Bullwinkle is perhaps the greatest cartoon show ever made.
02:52:24 <tswett> pikhq_: do you have any suggestions?
02:53:30 <pikhq_> tswett: Hmm. Serials. 'Fraid I don't watch enough *serious* stuff. I'd suggest Doctor Who, but it's anything but serious (usually).
02:53:45 <pikhq_> And you've probably gotten the recommendation before. :P
02:53:52 <Gregor> Anyway, the Drew Carey Show is amusing because it's like they avoided jumping the shark by trying to jump the shark in EVERY EPISODE.
02:54:07 -!- MDude has joined.
02:54:09 <tswett> Doctor Who is pretty episodic, isn't it?
02:54:56 <pikhq_> tswett: Classic Doctor Who was divided into "serials", each consisting of a few episodes, each serial being a whole story.
02:55:00 <pikhq_> It kinda fits, at least.
02:56:48 <Sgeo> I like non-serious fantasical non-character-driven serials
02:56:48 <pikhq_> New Doctor Who is rather highly episodic.
02:57:32 <Phantom_Hoover> tswett, DS9 is very character-driven.
02:57:51 <Sgeo> I still have yet to finish season 7 of DS9
02:57:54 <Sgeo> It's been a while, hmm
02:58:09 <pikhq_> Yeah, DS9 is a rather series fantastic character-driven serial.
02:58:12 <Sgeo> I like plot-driven more, I think.
02:58:15 <pikhq_> s/series/serious/
02:58:24 <Sgeo> What is Babylon 5 like?
02:58:58 <pikhq_> Sgeo: It's a 5 season story arc that executive meddling fucked up.
02:59:28 <Phantom_Hoover> Sgeo, I understand it's structurally very similar to DS9.
03:00:40 <Phantom_Hoover> Sgeo, season 7's the last one, right?
03:00:51 <Phantom_Hoover> In which case: did you stop before the 10-episode finale?
03:01:11 <Gregor> Mmm, I'd say that the similarities between Babylon 5 and DS9 start and end with “space station”
03:01:14 <Sgeo> Season 7's the last one. I don't think I'm in the finale yet, but not sure.
03:01:52 <MDude> Well this is neat, in that I somehow made a thing that sounds like some kind of chirping insect: http://entropedia.co.uk/generative_music/#b6409DQ0CjRrCmxszM00lQ10owz0dXQ8E0sydArLiwqQZIy0dTUKlEAAA%3D%3D
03:03:02 <Gregor> Hmm, now this is odd… the tag on my new pants claims they're dry-clean only, but the site says “Machine washable/dry clean recommended”
03:03:05 <Phantom_Hoover> Gregor, um, isn't it character-driven and arc-heavy?
03:03:36 <Gregor> Phantom_Hoover: DS9 only became arc-heavy as a response to B5 ;)
03:04:09 <Phantom_Hoover> ...so you're saying they have no similarities whilst acknowledging that one heavily influenced the other>
03:05:01 <Gregor> I'm basically made of lies.
03:05:19 <Phantom_Hoover> Yeah but come on man, at least maintain internal consistency.
03:06:32 <oerjan> Gregor isn't externally consistent, how can he be internally
03:08:09 -!- mig22 has joined.
03:08:30 <pikhq_> Phantom_Hoover: See, if you can be proven consistent you are therefore not. Gregor avoids this problem by not even trying.
03:36:05 -!- aloril has quit (Ping timeout: 250 seconds).
03:36:21 -!- Dovregubben has quit (Ping timeout: 248 seconds).
03:39:13 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:40:49 -!- MSleep has joined.
03:42:36 -!- MDude has quit (Ping timeout: 252 seconds).
03:49:20 -!- aloril has joined.
03:55:20 -!- Dovregubben has joined.
03:57:11 -!- segorev has quit (Quit: Leaving).
04:05:07 -!- MSleep has quit (Ping timeout: 240 seconds).
04:27:22 -!- oerjan has quit (Quit: leaving).
04:39:47 -!- TeruFSX has joined.
04:51:40 -!- mig22 has quit (Quit: mig22).
04:53:02 -!- mig22 has joined.
05:10:37 <pikhq_> Gregor: Curse thee and thy ponies!
05:34:06 <quintopia> tell ais523 thanks for the info! http://en.wikipedia.org/wiki/Wikipedia:Help_desk/Archives/2007_October_10#Colored_text
05:34:11 <quintopia> @tell ais523 thanks for the info! http://en.wikipedia.org/wiki/Wikipedia:Help_desk/Archives/2007_October_10#Colored_text
05:34:12 <lambdabot> Consider it noted.
05:34:45 -!- coppro has quit (Ping timeout: 248 seconds).
06:14:46 -!- kallisti has quit (Ping timeout: 252 seconds).
06:14:54 -!- asiekierka has joined.
06:27:50 -!- kallisti has joined.
06:27:50 -!- kallisti has quit (Changing host).
06:27:50 -!- kallisti has joined.
06:32:17 -!- TeruFSX has quit (Ping timeout: 244 seconds).
07:02:55 -!- nooga has joined.
07:03:34 -!- epicmonkey has joined.
07:36:27 -!- epicmonkey has quit (Ping timeout: 240 seconds).
07:39:22 -!- nys has quit (Quit: quit).
08:16:15 -!- jinmuxiao has joined.
08:25:57 -!- aloril has quit (Ping timeout: 244 seconds).
08:27:39 -!- jinmuxiao has left.
08:37:56 -!- Taneb has joined.
08:39:01 -!- aloril has joined.
08:42:05 <Taneb> Hello!
08:42:09 <Taneb> Oh no!
08:42:36 -!- epicmonkey has joined.
09:26:53 -!- Taneb has quit (Quit: Leaving).
09:28:59 -!- Taneb has joined.
09:29:18 -!- Taneb has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | Help Taneb give up saying "Hello" | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
09:31:45 <Taneb> Great, another thing's became popular just after I get bored of it
09:31:48 <Taneb> :(
09:32:17 <Taneb> Why do have to endure the curse of the accidental hipster?
09:33:10 <Taneb> That makes...
09:33:12 <Taneb> Two things
09:33:16 <Taneb> Oh, it's not so bad
09:33:48 <shachaf> Taneb: You're giving up "Hello!"?
09:33:55 <Taneb> Trying to
09:34:01 * shachaf approves.
09:34:01 <Taneb> It's been in the topic since last night
09:34:08 <shachaf> monqy gave up hi and that was sad.
09:34:11 <shachaf> But now it's done.
09:34:17 <shachaf> monqy: Sorry. :-(
09:34:23 <monqy> hi
09:34:23 <lambdabot> monqy: You have 6 new messages. '/msg lambdabot @messages' to read them.
09:34:39 <shachaf> @ask monqy what are all those messages!
09:34:39 <lambdabot> Consider it noted.
09:35:24 <Taneb> We may never know
09:35:51 <monqy> they were good "don't worry"
09:36:30 <shachaf> monqy: "okay thanks"
09:50:18 -!- azaq23 has joined.
09:50:33 -!- azaq23 has quit (Max SendQ exceeded).
09:51:01 -!- azaq23 has joined.
10:48:30 -!- derdon has joined.
11:00:15 -!- Taneb has quit (Quit: TANEB AWAY).
11:07:23 -!- MoALTz has joined.
11:19:24 -!- mig22 has quit (Quit: mig22).
11:20:04 <nortti> who here was thinking about money transfer protocol over ssh?
11:21:21 <Deewiant> zzo38
11:43:09 -!- Phantom_Hoover has joined.
12:15:15 -!- MoALTz has quit (Quit: Leaving).
12:25:08 -!- aloril has quit (Ping timeout: 244 seconds).
12:28:15 -!- asiekierka has left ("Wychodzi").
12:41:52 -!- aloril has joined.
13:16:03 <kmc> monqy transfer protocol
13:16:09 <monqy> hi
13:16:26 -!- boily has joined.
13:17:41 -!- azaq23 has quit (Quit: Leaving.).
13:19:46 <kmc> shachaf: do you hilight on "hichaf" yet?
13:27:24 -!- monqy has quit (Quit: hello).
13:36:38 -!- MDude has joined.
14:14:09 -!- oonbotti has quit (Quit: oonbotti).
14:20:00 -!- DHeadshot has quit (Ping timeout: 276 seconds).
14:20:31 -!- DHeadshot has joined.
14:30:23 -!- oonbotti has joined.
14:42:00 <nortti> what did pietbot do?
14:56:33 -!- aloril has quit (Ping timeout: 244 seconds).
15:02:15 -!- azaq23 has joined.
15:02:25 -!- azaq23 has quit (Max SendQ exceeded).
15:02:32 -!- Taneb has joined.
15:03:51 -!- azaq23 has joined.
15:05:17 -!- oonbotti has quit (Quit: oonbotti).
15:05:51 -!- oonbotti has joined.
15:08:07 -!- oonbotti has quit (Client Quit).
15:08:40 -!- oonbotti has joined.
15:09:35 -!- aloril has joined.
15:11:43 <nortti> #/etc/passwd
15:11:43 <oonbotti> root:x:0:0:Root Administrator:/root:/bin/ksh\nnobody:x:99:99:Unprivileged User:/dev/null:/bin/false\nwww:x:80:80:Web Server User:/var/www:/bin/false\nmessagebus:x:25:25:DBUS Daemon User:/dev/null:/bin/false\nhaldaemon:x:26:26:HAL Daemon User:/dev/null:/bin/false\njuhani:x:1000:1000:Linux User,,,:/home/juhani:/bin/ksh\n
15:20:18 -!- azaq23 has quit (Remote host closed the connection).
15:20:49 -!- azaq23 has joined.
15:21:11 -!- jlaire has joined.
15:33:12 -!- MDude has quit (Ping timeout: 244 seconds).
15:37:57 -!- Taneb has quit (Ping timeout: 248 seconds).
15:51:08 -!- soundnfury has joined.
16:09:46 <quintopia> nortti: probably "be written in piet"
16:10:41 -!- epicmonkey has quit (Ping timeout: 240 seconds).
16:30:48 -!- TeruFSX has joined.
16:35:59 -!- DHeadshot has quit (Read error: Connection reset by peer).
16:36:26 -!- DHeadshot has joined.
16:39:43 -!- ert3go has joined.
16:40:35 <ert3go> Hello , can anyone help me with brainfuck ?
16:42:38 <fizzie> quintopia: I'm under the impression it also did "connect to IRC", but I'm not entirely sure.
16:44:54 <quintopia> hi ert3go
16:45:01 <ert3go> hi quintopia
16:45:10 <ert3go> can I get help with brainfuck ?
16:45:27 <quintopia> everyone here is familiar with brainfuck
16:45:34 <quintopia> "most likely"
16:45:44 <ert3go> okay , I've tried to write a simple interpreter in C
16:45:49 <ert3go> mind taking a look ?
16:47:39 <quintopia> ok
16:48:26 <ert3go> quintopia, http://pastie.org/4450659
16:49:24 <quintopia> does it work?
16:49:28 <quintopia> what am i looking for?
16:49:57 <jlaire> I'm looking at magical constants
16:50:02 <pikhq_> ert3go: I'd suggest omitting the printf("enter your input"); thing, as well as the default: case in the switch.
16:50:09 <ert3go> am i handling the case of nested loop properly ?
16:50:25 <ert3go> then how can an input be given pikhq_ ?
16:50:34 <pikhq_> In Brainfuck characters other than [].,><+- are *comments*, not invalid.
16:50:46 <soundnfury> As someone who's more familiar with C than brainfuck, I'd like to make a stylistic note or two
16:50:54 <pikhq_> Your getchar (well, scanf("%c")) thing does that just fine.
16:50:56 <quintopia> i was gonna say what pikhq_ said
16:50:59 <soundnfury> it's conventional to put a space between #include and the <
16:51:19 <fizzie> Regarding the brainfuck side, [ looks wrong.
16:51:20 <soundnfury> and also either a space or a newline after the closing } of typedef struct {blah;} Stack;
16:51:43 <fizzie> [ is supposed to jump to matching ] when current cell is 0, not just be a pair for ].
16:51:44 <pikhq_> Hmm, yeah, it's not conditional.
16:52:01 <soundnfury> in fact generally your coding style seems inconsistent
16:52:12 <soundnfury> (it doesn't matter what it is, but it should be consistent)
16:52:30 <pikhq_> ert3go: A [ should have basically the same condition as ] there.
16:52:52 <soundnfury> there's no bounds-checking in the functions push() and pop()
16:52:53 <ert3go> i am confused pikhq_
16:53:07 <pikhq_> ert3go: if(*p) go to next instruction else go to matching ]
16:53:13 <pikhq_> That's basically the logic [ has.
16:53:36 <pikhq_> Or, equally, [ ... ] is while(*p){ ... }
16:53:40 <nortti> doesn't ] just jump back to previous [?
16:53:48 <soundnfury> lines 60-61 don't have the (presumably) desired effect in the case of two successive newlines
16:54:09 <soundnfury> (it maybe ought to be while() rather than if())
16:54:32 <ert3go> i am afraid I am confused . Can anyone modify the code ?
16:54:33 <soundnfury> although, that line would be removed if you treated "invalid" characters as comments
16:54:34 <pikhq_> soundnfury: Yeah, but he should just skip unknown characters *anyways*.
16:55:04 <fizzie> nortti: You can implement it that way if you want. But since the "previous [" (i.e. matching [) will just jump to one past the ] if !*p, quite commonly ] gets done as "jump to right after matching [ if *p, else nothing".
16:55:07 <pikhq_> ert3go: No, we're kinda just telling you what you need to fix. We're finding bugs for you, not writing your Brainfuck interpreter. :P
16:55:55 <ert3go> ok then let me get it correct
16:56:12 <ert3go> if i encounter a [ , and if(*p) , then i should execute next instruction ?
16:56:21 <soundnfury> more C issues: you're not bounds-checking 'p' (eg. take the program "<+", this will write to tape[-1])
16:56:34 <ert3go> yeah true soundnfury
16:56:50 <nortti> is that c++ comment on line 92?
16:56:50 <pikhq_> soundnfury: I generally don't care about handling that in a Brainfuck interpreter though.
16:56:53 <soundnfury> really you shouldn't use a char*p=tape; but instead a size_t p and use tape[p]
16:57:05 <soundnfury> pikhq_: yeah but segfaults are bad
16:57:09 <pikhq_> It's undefined behavior in Brainfuck. So, eh.
16:57:14 <ert3go> <ert3go> if i encounter a [ , and if(*p) , then i should execute next instruction ?
16:57:15 <pikhq_> nortti: Also C99.
16:57:49 <quintopia> ert3go: yes and if you encounter a [, and if(!*p), then you should execute the instruction after matching ]
16:58:08 -!- MoALTz has joined.
16:58:33 <ert3go> so that's a while loop as someone correctly mentioned
16:58:45 <soundnfury> line 87 may as well be putchar(*p) rather than using printf
16:59:01 <soundnfury> and the puts() at the end should really put a '\n'
16:59:15 <soundnfury> because of buffered stdouts and stuff
16:59:21 <ert3go> hmm
16:59:25 <fizzie> soundnfury: puts adds a newline.
16:59:43 <ert3go> but err , do i need a stack ?
16:59:57 <soundnfury> fizzie: oh right
16:59:57 <FreeFull> puts(somestring); is equivalent to printf("%s\n", somestring);
17:00:11 <nortti> ert3go: yes unless you write recursive interpreter
17:00:11 * soundnfury doesn't know /why/ it does that, but you're right that it does
17:00:14 <soundnfury> (fputs doesn't!)
17:00:52 <soundnfury> ert3go: 'i' shouldn't be an int, but a size_t
17:00:59 <ert3go> okay
17:01:04 <ert3go> but i am confused
17:01:11 <ert3go> *when* to use stack ?
17:01:14 <soundnfury> sizeOfFile really ought to be an off_t or perhaps a ssize_t
17:01:27 <nortti> ert3go: use it as a call stack
17:01:35 <soundnfury> line 52: DON'T cast the return value of malloc. Ever.
17:01:44 <soundnfury> malloc returns a void *, which casts implicitly
17:01:47 <ert3go> but it returns a void *
17:01:56 <soundnfury> Yes... so you don't need to cast it
17:01:59 <quintopia> push the location of [ to a stack when encountered during execution and while searching for the matching ]
17:02:04 <jlaire> soundnfury: except when you want C++ compatibility
17:02:05 <soundnfury> hang on, there's a C-FAQ about this
17:02:09 <soundnfury> jlaire: fuck C++
17:02:11 <soundnfury> srsly
17:02:14 <jlaire> :D
17:02:17 <ert3go> lol
17:02:28 <nortti> yeah. fuck c++
17:02:39 <quintopia> sounds like an orgy
17:02:46 <soundnfury> http://c-faq.com/malloc/mallocnocast.html
17:03:14 <jlaire> that doesn't convince me
17:03:18 <copumpkin> " The compiler is likely to assume that malloc is a function returning int, which is of course incorrect, and will lead to trouble. "
17:03:20 <copumpkin> that's what's broken
17:03:27 <ert3go> location of i should be pushed only if (*p) ?
17:03:55 <jlaire> at least the compilers I've been using lately warn about that
17:04:04 <jlaire> implicit declarations of functions
17:04:18 <fizzie> nortti: I've seen quite a few non-recursive no-stack brainfuck interpreters. The "common" inefficient way to implement [/] is just "seek to matching ] or [ when necessary", and you don't need a stack for that, just a counter of current depth.
17:04:26 <ert3go> or can someone atleast tell the pseudocode for case '[' : ?
17:04:34 <quintopia> ert3go: why don't you just look at other interpreters if you can't see how to handle []?
17:04:43 <quintopia> it's no less "cheating" than asking us
17:05:03 <ert3go> quintopia, the other interpreters are little confusing , i'd like to try without seeing them
17:05:07 <soundnfury> jlaire: well, if you want to take up the argument, ask about it in comp.lang.c. While wearing flame-proof clothing ;)
17:05:18 <quintopia> ert3go: then try without asking too :P
17:05:25 <jlaire> soundnfury: I've seen this particular point debated a number of times there o_o
17:05:28 <ert3go> please quintopia , i really need help :(
17:05:40 <jlaire> most folks on comp.lang.c seem to hate c++ with a passion
17:05:47 <soundnfury> with good reason
17:05:50 <nortti> jlaire: what point?
17:05:57 <jlaire> nortti: casting malloc's return value
17:06:02 <nortti> oh
17:06:03 <jlaire> to (char *) or (int *) or whatever
17:06:21 <fizzie> ert3go: If you don't want to do any work in advance, a common [ is "if *p, go to next instruction; else { depth = 1; while (depth > 0) { go to next instruction; if [, depth++; if ], depth-- } }".
17:06:29 <nortti> I think you should probably not do it unless you find very good reason to do so
17:06:59 <fizzie> (Though it's also quite common to do a first pass to find all matching [] pairs and put them somewhere, so that it doesn't need to scan forward for the matching ].)
17:07:15 <jlaire> sometimes compatibility with C++ is a good reason, sometimes not; it just irks me to hear C-programmers saying you should *never* cast void* to another pointer type
17:07:36 <fizzie> (You can't use a stack maintained during execution to find the matching ], since it could be anywhere in the future program where you haven't even been in yet.)
17:07:43 * FreeFull casts (void *) to (void **)
17:07:44 <FreeFull> What now
17:08:50 <soundnfury> jlaire: I say again, fuck C++.
17:09:19 <pikhq_> jlaire: It's bad style in C. And that's it.
17:09:19 <jlaire> soundnfury: you can say that again
17:09:28 <jlaire> pikhq_: why is it bad style
17:09:34 <FreeFull> Can we pretend C++ doesn't exist
17:09:36 <jlaire> soundnfury: (I like C++)
17:10:08 <fizzie> jlaire: For the reasons already mentioned in the comp.lang.c FAQ? The C++ compatibility aspect doesn't magically make it good style.
17:10:24 <jlaire> fizzie: the FAQ itself says that compilers warn about it
17:10:39 <jlaire> if that's the only argument against it, it's a very weak one
17:11:17 <pikhq_> jlaire: It's god damned clutter and noise is all!
17:11:43 <jlaire> pikhq_: now that is something I'll accept
17:12:10 <pikhq_> jlaire: Maybe in C++ the more characters you type the better, but down here we believe in characters *spent*. :)
17:12:39 <jlaire> pikhq_: that's not the C++ I know
17:13:27 <pikhq_> Pssst, Boost.
17:13:50 <jlaire> ok.
17:14:07 * jlaire says no more
17:14:27 <fizzie> Just because (some) compilers are "increasingly likely" to warn about implicit declarations doesn't make the "cast hides an important warning" argument meritless either; especially since (considering only C here) it doesn't really have drawbacks either.
17:15:04 <jlaire> fizzie: the few compilers I've used have all warned about it
17:21:38 <fizzie> Perhaps you've been using too good/new compilers, then. Anyway, GCC only warns in the special case of function it knows about, by default. If you're in the habit of casting void *'s from malloc, you'll probably cast them from zqalloc too, and that'll cause problems when you forget to #include "zqlib.h".
17:21:43 <fizzie> (Hypothetical library.)
17:22:03 <fizzie> (You need -Wall or -Wimplicit-function-declaration to get warnings for all implicit declarations.)
17:22:14 -!- nys has joined.
17:22:15 <jlaire> I use -Wall
17:22:51 <fizzie> Not everyone does.
17:23:21 <fizzie> I think I need to do some eating.
17:26:58 <FreeFull> http://patriciopalladino.com/blog/2012/08/09/non-alphanumeric-javascript.html
17:27:35 -!- epicmonkey has joined.
17:32:44 <Gregor> I use -Wall -Werror -ansi -pedantic
17:32:48 <Gregor> 'cuz hell yeah.
17:33:04 <jlaire> I replace -ansi with -std=whatever
17:33:11 <jlaire> but otherwise, highfive
17:33:26 <Gregor> I like to go with c89 because I'm hardcore like that.
17:33:31 <Gregor> Features are for losers.
17:34:21 <jlaire> I don't usually write C
17:34:26 <jlaire> but when I do, I write C89
17:34:38 -!- azaq23 has quit (Ping timeout: 248 seconds).
17:44:32 -!- Taneb has joined.
17:45:14 <Taneb> fungot
17:45:15 <fungot> Taneb: no, the boy, do i? we're nazis, but we are not, ja, of the house! the entire earth has surrendered to you, our helpful. ' is phone is still workin' class, guv.
17:45:19 -!- coppro has joined.
17:45:25 <Taneb> iwcs
17:45:28 <Taneb> ^style
17:45:28 <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:45:33 <Taneb> Oh, I'm good
17:45:39 <Taneb> I probably set it as that
17:45:49 <Taneb> ^style alice
17:45:50 <fungot> Selected style: alice (Books by Lewis Carroll)
17:45:53 <Taneb> fungot
17:45:54 <fungot> Taneb: let " persons" be universe; fnord fnord y="that can sit still. the professor took it as a general law, who do not drink coffee."'
17:46:05 <FreeFull> fungot
17:46:06 <fungot> FreeFull: " all fnord are uncanny ( fnord all fnord are equal', i suppose. if not, why do things have names at all?' alice ventured to remark.
17:50:29 -!- Eladith has quit (Quit: leaving).
17:56:05 <pikhq_> Now why did I write yet another Brainfuck implementation?
17:56:22 <pikhq_> I guess talking with someone about it compelled me. Bad damned habit there.
17:56:31 <pikhq_> It's not even an interesting one.
17:56:58 <Taneb> Practise?
17:57:22 <pikhq_> I'd hesitate to call such a thing practice. If it were I would've at least, y'know, parsed.
17:57:25 <pikhq_> :P
17:58:10 <FreeFull> Make your own language
17:58:19 <pikhq_> I have!
17:58:29 <Taneb> Make your own speaking language
17:58:31 <pikhq_> This was literally a waste of 20 minutes.
17:58:51 <fizzie> Gregor: Where's your -Wextra, huh?
17:59:07 <fizzie> Or "-W" for the oldskool way of spelling it.
17:59:27 <fizzie> "-Wall" -- the worstly named option?
17:59:35 <Taneb> -Ceiling
17:59:39 <fizzie> (Since it's so far from 'all'.)
18:00:00 <Taneb> If I ever write a compiler, it will have -Ceiling and -Floor options
18:00:09 <pikhq_> About the only thing it has going for it is simplicity.
18:00:43 <Taneb> What language
18:00:52 <pikhq_> C
18:01:19 <nortti> Taneb: my compiler has -AnotherWall
18:01:32 <Taneb> pikhq_, that's... the third letter of the alphabet
18:01:35 <Taneb> IT MUST BE A CLUE
18:01:40 <Taneb> Hmm...
18:01:42 <Taneb> "Clue"
18:01:48 <Taneb> That's the name of 2 esolangs...
18:02:10 <Taneb> "2", that's precisely the number of dimensions Befunge runs in!
18:04:16 <Gregor> fizzie: Oh that's it.
18:04:29 <Gregor> fizzie: I'm goin' back and making Fythe compile with -Wall -Wextra -ansi -pedantic now.
18:04:51 <nortti> Gregor: why not -Werror?
18:05:02 <Gregor> Whoops, missed -Werror
18:05:03 <Gregor> That too.
18:05:22 <fizzie> If the policy is "no warnings are acceptable", -Werror is a bit superfluous.
18:05:29 <Gregor> Oh yeah, because it complains about unused parameters. That's stupid.
18:06:00 -!- asiekierka has joined.
18:06:05 <fizzie> You can IIRC quiet those with a "(void)a;" statement.
18:06:29 <fizzie> At least that's a common thing, I don't recall if it helped on GCC.
18:07:14 <jlaire> you can use unnamed parameters, int f(int x, int b, int)
18:07:15 * jlaire ducks
18:07:39 <fizzie> There was a commonly-ishly done warning-silencing trick that on GCC had the opposite effect, it just caused new warnings. (With sufficiently high warning levels.)
18:08:22 <olsner> I think (void)a works to remove unused params warnings, but (void)(a,b) will cause a no-side-effects warning
18:09:28 -!- Taneb has quit (Quit: AWAY).
18:10:49 <Gregor> OK, I'll go with -Wall -Wextra -Werror -Wno-unused-parameter, because the last one, although understandable, is just silly.
18:10:56 -!- asiekierka has quit (Remote host closed the connection).
18:11:24 <olsner> yeah, the unused parameter warning is not very useful
18:11:26 <soundnfury> nah, -Wunused-parameter is fine
18:11:34 -!- pikhq has joined.
18:11:49 -!- pikhq_ has quit (Ping timeout: 244 seconds).
18:11:52 <soundnfury> it seems reasonable to me to decorate your function with __attribute__((unused)) if you really do want an unused parameter
18:12:28 <olsner> if you only want to compile on gcc, sure
18:12:34 <fizzie> "Reasonable" to decorate your otherwise pure-ANSI... right.
18:12:49 <fizzie> Anyway, you could have an UNUSED macro to do that.
18:12:49 <jlaire> of course things like that are hidden behind macros
18:12:59 <jlaire> UNUSED_PARAM or some such
18:13:04 <jlaire> right
18:13:07 <pikhq> And autoconf it up?
18:13:08 <soundnfury> well, for other compilers you can pass -D__attribute__\(\(unused\)\)=
18:13:18 <soundnfury> pikhq: no, never autoconf
18:13:32 <fizzie> soundnfury: You can't have a macro with (( in the name.
18:13:34 <soundnfury> because autoconf is horrendous
18:13:38 <soundnfury> fizzie: oh right
18:13:43 <soundnfury> other way round then, with an UNUSED macro
18:13:45 <jlaire> just #ifdefs
18:13:48 <soundnfury> like you said
18:13:57 <pikhq> soundnfury: It does suck, but it sucks less than most alternatives when you need/want to check for certain features.
18:14:22 * soundnfury prefers custom Makefile addenda
18:14:43 <soundnfury> typically by having something like "-include config.mak" strategically placed in the Makefile
18:14:56 <soundnfury> and cunning use of deferred assignment
18:14:56 <pikhq> Also, for the love of all that's sane don't cargo cult autoconf...
18:15:12 <nortti> why?
18:15:31 <pikhq> i.e. don't use autoscan, it just makes Bad autoconf files.
18:15:47 <nortti> soundnfury: why?
18:15:51 <soundnfury> anyone compiling from source is intelligent enough to know what to put in the config.mak
18:16:15 <nortti> well yeah
18:16:15 <soundnfury> as for distro packagers, it's their whole /raison d'etre/ to deal with that kind of thing
18:16:27 <pikhq> autoscan basically generates an autoconf file that checks for every god-damned ISO C feature.
18:16:46 <pikhq> AC_PROG_CC_C99 and we're done.
18:16:51 <soundnfury> ordinary package users shouldn't have to run a script that tests that the cc creates runnable executables, ffs
18:16:53 -!- ert3go has left ("Leaving").
18:16:57 <nortti> pikhq: I once found one that checks for fortran 77 features of my system
18:17:34 <pikhq> soundnfury: Part of that is autoconf being overly complex in a few areas, but most of that is that people have no clue how to use it.
18:17:35 <fizzie> Anyway, since some other compilers will need the "(void)a;" thing, if you do want the __attribute__, you'll end up with something like void f(UNUSED_PARAM int a) { UNUSED(a); ... } where GCC gets #define UNUSED_PARAM __attribute__ ((unused)) #define UNUSED(x) /* empty */ and the others get #define UNUSED_PARAM /* nothing */ #define UNUSED(x) (void)x, or the like.
18:18:41 <jlaire> which is just so much clearer than void f(int) { ... }
18:19:24 <soundnfury> jlaire: yeah but usually you shouldn't /have/ functions with unused parameters
18:19:29 <soundnfury> unless there exists a good reason
18:19:40 <soundnfury> in which case maintainability demands that you draw attention to it
18:19:42 <pikhq> soundnfury: Such as writing a callback.
18:19:48 <soundnfury> the exception is for callback-heavy code
18:19:50 <olsner> jlaire: that requires c++
18:19:56 <pikhq> Which is used less than it should be in C.
18:19:56 <jlaire> olsner: my subtle point, yes
18:20:13 <soundnfury> like if you're writing a GTK+ gui
18:20:22 <FreeFull> I wish there was Go but without garbage collection
18:20:42 <soundnfury> though in that case I /still/ choose to leave -Wunused-params active, and write the __attribute__s
18:22:15 * soundnfury quite likes that void f(int) { ... } approach
18:22:22 <soundnfury> and is amazed to learn that C++ gets something /right/!
18:23:17 <fizzie> They have more of the "implement this inherited thing with a fixed prototype" kind of thing going on, perhaps there was more call for such a feature.
18:23:20 <olsner> c++ also adds single-line comments and mixed code and declarations, those are nice
18:23:42 <pikhq> olsner: C also has those.
18:23:50 <pikhq> However, the IE6 of compilers doesn't implement it.
18:23:57 <olsner> yeah, but it's new for C99?
18:24:07 <Sgeo> What's the IE6 of compilers?
18:24:08 <pikhq> ... Dude, C99 is *13 years old*.
18:24:12 <pikhq> Sgeo: Microsoft Visual C++.
18:24:18 <pikhq> Sgeo: They don't support C99.
18:24:20 <pikhq> At all.
18:24:23 <fizzie> It's got "++" in the name.
18:24:54 <pikhq> They added C++ support to it, and let the C frontend go untouched for over a decade.
18:24:56 <jlaire> C99 is obsolete, long live C11!
18:25:12 <pikhq> It still functions as a C compiler, but it was last updated in the 90s.
18:25:22 <fizzie> The C compiler in it is just for compiling old code, after all.
18:25:27 <fizzie> (That's what they said.)
18:25:34 <jlaire> yeah, who would write c these days?
18:25:54 <pikhq> With Microsoft's attitude, nobody on Windows. :P
18:26:05 <nortti> because c is good programming language
18:26:22 <pikhq> Also, Microsoft's @#%@@ API support.
18:26:57 <pikhq> Which means any code on the platform is basically doing #if WINDOWS ... #else ... #endif
18:27:12 <pikhq> s/any/any portable/
18:27:31 <soundnfury> when I have to port something to Windows, I just cross-compile with mingw on my (linux, naturally) box
18:27:50 <soundnfury> and then throw DLLs into the tarball until it works :/
18:27:51 <kmc> butts
18:28:27 <pikhq> Also, whoever did the LPSTR nonsense deserves to be shot.
18:28:39 <olsner> LPCTSTR
18:28:40 <nortti> soundnfury: I used to use mingw msys. then I no longer ported anything to windows
18:29:14 <fizzie> Good old TCHAR stuff.
18:29:29 <olsner> with all that "long pointer" support in the windows APIs, they should've done their x64 stuff using two pointer sizes
18:30:16 <fizzie> WPARAM wParam, LPARAM lParam.
18:30:48 <pikhq> Also, whoever's responsible for *not supporting UTF-8* should be beaten.
18:31:32 <pikhq> If you're using a char* on Windows it's a legacy charset.
18:32:20 <pikhq> You only get Unicode with wchar_t, which is UTF-16, which is what Microsoft calls "Unicode", because they're a bunch of mouth-breathers.
18:32:51 <jlaire> both microsoft and java suffer from being "early adopters"
18:33:14 <olsner> oh, wparam and lparam... reminds me of working with a code base that decided to build their own message passing framework where every callback gets one INT16 and one INT32 parameter
18:33:15 <jlaire> that's not to say that they should've changed things in the past 15 years :|
18:33:20 <jlaire> shouldn't have*
18:33:25 <pikhq> Java at least has the benefit that their *normal APIs* support Unicode, and it "just works".
18:33:33 <pikhq> On Windows you actually have to go out of your way to handle it.
18:33:40 <olsner> (where the INT32 parameter gets force-fed a pointer in 90% of cases)
18:34:10 <pikhq> Because there's no way to bludgeon the system into saying "Dude, I'd like UTF-8, let me pretend legacy charsets don't exist."
18:35:15 <fizzie> You do have to go "out of your way" to handle UTF-16 properly with Java, since the "normal" String methods are in terms of chars, and you get halves of surrogate pairs all the time.
18:35:26 <pikhq> Oh, right, it's UCS-2.
18:35:32 <pikhq> They too must be tortured.
18:35:36 <pikhq> Idiots.
18:36:34 -!- Taneb has joined.
18:36:51 <jlaire> JNI has its own "modified UTF-8" where characters outside the BMP are first converted to two surrogate pairs, and then each of those is encoded in UTF-8
18:37:02 <olsner> pikhq: was that referring to Windows or Java?
18:37:09 <Sgeo> What does SWI-Prolog do?
18:37:09 <jlaire> which can only be explained by historical reasons
18:37:14 <olsner> at least Java is actually UTF-16, except that no-one knows that so they end up using the data as if it's UCS-2
18:37:21 <Sgeo> I'm under the impression that Tcl is generally good with Unicode?
18:37:42 <pikhq> Sgeo: It's modified UTF-8, as per Java.
18:37:45 <pikhq> Yes, it's retarded.
18:37:52 <Sgeo> ...modified?
18:38:03 <pikhq> Where you use surrogate pairs.
18:38:11 <Sgeo> ....wtf?
18:38:16 <fizzie> olsner: The alternative functions that deal with the UTFy parts of UTF-16 *are* a bit awkward to use.
18:38:19 <Sgeo> Isn't that a UTF-16 thing?
18:38:30 <pikhq> That's what happens when you convert UTF-16 to UTF-8 by pretending it's UCS-2.
18:38:43 <pikhq> i.e. when you're an idiot.
18:39:18 <jlaire> also, the 0 character is encoded as two non-zero bytes
18:39:26 <Sgeo> Will 8.6 fix this?
18:39:30 -!- ais523 has joined.
18:40:01 <Sgeo> Or were you referring to SWI-Prolog?
18:40:10 * Sgeo guesses Tcl
18:40:12 <pikhq> Tcl, and I dunno.
18:40:19 <olsner> jlaire: hmm, does Java allow embedded nulls in strings?
18:40:40 <olsner> I thought the special nulls came from a different variant of modified UTF-8
18:40:43 <jlaire> olsner: I don't know off-hand, I've just been dealing with JNI
18:40:57 <jlaire> different variant of modified UTF-8, please god...
18:41:39 <FreeFull> 𐀀_𐀀
18:41:51 <olsner> see http://en.wikipedia.org/wiki/CESU-8 :)
18:42:04 <FreeFull> 𐀁_𐀁
18:42:37 <olsner> hehe, in mysql to get actual utf-8 you need to ask for the "utf8mb4" encoding
18:43:16 <olsner> because "utf8" is actually CESU-8
18:46:04 <FreeFull> Intuitive
18:46:18 -!- oonbotti has quit (Remote host closed the connection).
18:46:45 -!- oonbotti has joined.
18:47:12 <Gregor> The fact that CESU-8 exists makes me sad.
18:47:21 <nortti> why?
18:48:03 <Taneb> BECAUSE IT MAKES HIS TROUSERS BLUE
18:48:08 <Gregor> It's like layering UTF-16 encoding on top of UTF-8 encoding, and as far as I can tell is only borderline-useful for compatibility with broken things encoding from Java's broken attempt at UTF-16.
18:48:10 <Gregor> It's a nightmare.
18:48:14 <ion> Huh. I didn’t expect there to exist slightly incompatible versions of UTF-8.
18:48:14 <nortti> ughhh
18:48:45 <jlaire> hysterical raisins
18:50:10 <olsner> UTF-8 doesn't have variants, there is only UTF-8
18:50:19 -!- Vorpal has joined.
18:51:18 <olsner> the variants are all variants of something completely different than UTF-8 :)
18:51:39 <ion> s/versions/forks/
18:53:09 <soundnfury> unsigned int answer=0x2b|!0x2b; // 43, universe has off-by-one error
18:54:01 <FreeFull> Note that 0x2b is 42
18:54:19 <FreeFull> Isn't
18:54:21 <FreeFull> But should be
18:54:41 <FreeFull> 2B is 43
18:54:48 <olsner> it's 42 in base 15.5?
18:54:55 <FreeFull> !0x2B is 0
18:55:03 <nortti> isn
18:55:41 <nortti> +'t x|!x always all !0 ?
18:56:49 <FreeFull> x|!x always equals x
18:57:04 <olsner> I think it's (x ? x : 1)
18:57:12 <nortti> isn't ! bitwise negate?
18:57:30 <FreeFull> ! is boolean negate
18:57:33 <nortti> ok
18:57:34 <FreeFull> So it gives you 0 or 1
18:57:39 <FreeFull> ~ is bitwise
18:57:52 <nortti> was | boolean or bitwise?
18:57:52 <FreeFull> Well, - is negate
18:57:55 <FreeFull> ~ is NOT
18:58:01 <FreeFull> | is bitwise
18:58:01 <oonbotti> Let's change focus a bit... Tell me about your family.
18:58:03 <FreeFull> || is boolean
18:58:46 -!- AnotherTest has joined.
18:59:09 -!- ogrom has joined.
18:59:40 <AnotherTest> Hello
18:59:53 <FreeFull> Hi
19:00:14 <nortti> hi
19:02:34 <Taneb> AnotherTest, don't become the new me!
19:03:11 <nortti> moi
19:03:57 <AnotherTest> I'll say hi next time :)
19:06:31 <Taneb> AnotherTest, don't become the new monqy!
19:06:47 <Taneb> Start by saying something profound!
19:06:55 <Taneb> Or a question
19:06:59 <AnotherTest> Hallo?
19:07:03 <Taneb> Or a titbit of news
19:08:12 <AnotherTest> I have news
19:08:28 <AnotherTest> I'm learning Haskell
19:08:29 <AnotherTest> Finally
19:08:39 <jlaire> that's right on topic here
19:08:50 <jlaire> I wish you luck
19:08:59 <Taneb> :)
19:09:32 <AnotherTest> Also I memorized to be or not to be?
19:10:09 <Taneb> I have been studying how I may compare
19:10:16 <Taneb> This prison where I live unto the world
19:10:20 -!- KingOfKarlsruhe has joined.
19:10:44 <Taneb> But for because this world is populous, and here is not a creature but myself
19:10:57 <Taneb> I cannot do it! Yet I'll hammer it out. My brain
19:11:00 <AnotherTest> Mh I must go
19:11:01 -!- AnotherTest has quit (Quit: Page closed).
19:11:07 <Taneb> I'll prove the female to my soul, my soul the father
19:11:22 <Taneb> And these two beget a generation of still-breeding thoughts
19:11:36 <quintopia> you still talking?
19:11:44 <Taneb> And these same thoughts people this little world
19:11:56 <Taneb> In humour like the people of this world, for no thought is contented
19:12:05 <Taneb> Nah
19:12:07 <Taneb> I've stopped
19:12:22 <quintopia> k
19:16:19 <Phantom_Hoover> Taneb, can you do that next time AnotherTest shows up?
19:16:29 <Taneb> Recite Richard II?
19:16:36 <Phantom_Hoover> Yes.
19:16:38 <Taneb> Okay
19:16:43 <Taneb> I'd better actually learn it
19:16:55 <Taneb> I sort of know about a quarter of that speech
19:20:06 -!- oerjan has joined.
19:20:27 -!- Nisstyre has quit (Quit: Leaving).
19:21:56 -!- AnotherTest has joined.
19:22:33 <AnotherTest> Hallo
19:22:53 <oerjan> god ettermiddag
19:23:06 <Taneb> As I was saying
19:23:15 <Taneb> I'll prove the female to my soul, my soul the father
19:23:23 <Taneb> And these two beget a generation of still-breeding thoughts
19:23:27 <AnotherTest> N
19:23:30 <Taneb> And these same thoughts people this little world
19:23:38 <AnotherTest> D
19:23:43 <Taneb> In humour like the people of this world, for no thought is contented
19:23:48 -!- AnotherTest has quit (Client Quit).
19:24:01 -!- Slereah_ has joined.
19:24:53 <kmc> http://imgur.com/a/CmQBL
19:25:40 <Taneb> kmc, don't suck up all the water in the ground!
19:26:07 <kmc> 200 zł fine if you do
19:26:41 <Taneb> What's a z squiggly l?
19:26:45 -!- Slereah has quit (Ping timeout: 248 seconds).
19:26:47 <soundnfury> a złoty?
19:26:54 <soundnfury> (polish currency iirc)
19:27:01 <kmc> yes
19:27:27 <kmc> it's from a hostel in warszawa
19:28:41 <soundnfury> of course, "zl" is just one character away from another currency unit, "zm"
19:28:49 <soundnfury> as Nethack players will know
19:28:56 <kmc> 200 PLN is about €50
19:28:58 <kmc> what's a zm?
19:29:02 <soundnfury> zorkmid
19:29:38 -!- AnotherTest has joined.
19:30:18 <soundnfury> Now, something something
19:31:46 <Phantom_Hoover> The better sort,
19:31:47 <Phantom_Hoover> as thoughts of things divine, are intermix'd
19:32:00 <Phantom_Hoover> With scruples and do set the word itself against the word:
19:32:14 <Phantom_Hoover> As thus, 'Come, little ones,' and then again,
19:32:15 -!- AnotherTest has quit (Quit: Page closed).
19:41:47 -!- ert3go has joined.
19:47:30 -!- derdon has quit (Remote host closed the connection).
19:51:34 -!- KingOfKarlsruhe has quit (Remote host closed the connection).
19:52:08 -!- KingOfKarlsruhe has joined.
19:54:48 <boily> I love this channel's level of insanity it achieves on Fridays. it has this special flavour to it...
20:01:17 <oerjan> chicken & telephone
20:02:27 <coppro> awwwwww crap
20:02:32 <coppro> unicode is broken again :/
20:02:47 <coppro> fuck screen
20:02:54 <oerjan> they should not have added that nyarlathotep glyph
20:03:00 <nortti> why?
20:03:13 <nortti> I like chaos
20:03:51 <oerjan> yes but now there's a 1% chance of any non-basic plane character being eaten in transit
20:03:58 <nortti> shit
20:05:01 <nortti> at least they haven't added the basilisk eye glyph
20:05:34 <oerjan> they weren't _that_ stoned at the meeting.
20:05:53 <fizzie> Going plain astray on the astral plane.
20:06:37 <nortti> by the way can you give me codepoint for the nyarlathotep glyph?
20:06:50 <oerjan> no, it might wreck my keyboard
20:07:01 <nortti> :/
20:08:25 <boily> there's 🐙U+1F419 that may serve as some very broad approximation for all things tentacly.
20:09:01 <coppro> what the crap
20:09:03 <coppro> oh...
20:09:04 <coppro> fuck screen
20:09:07 <coppro> fuck screen so hard
20:09:13 <nortti> why?
20:10:04 <jlaire> zalgo breaks screen so completely it's beautiful
20:10:47 <nortti> Ã
20:11:38 * quintopia uses screen
20:11:43 * quintopia isn't broken
20:14:46 <jlaire> T̛͕͉̜̼̝̩͉̟ͩ͋͞oͭ̈́̋ͤ͏͈̫̤͖̘͈̥̪ͅ ̰̹͕ͧ̾́̿̓͒ͯͥ̚͡i̧̠̱͓̖̱̘ͧ͌ͧ̔͛̎̈n͇̳̪̙̩͉̍ͦ̒̊̍ͤ̄ͅͅv̡͉͈͎͋̽ͤͭ̚ȯ͇̳̏ͤ̂͂̅̚͢ķ̴̦̲̫͑̈ͧ̚ẹ̛͍̦ͣ̌̋ͪ̍̅̈́̇ͅ ̷̵̙̙̱̤̏́̉̾̏̚t̜̖͈̾h̩̬̯̺͎ͬ͆̕ë̶̻͎̺̟̲͈́̊͊̍̚͠ ̴͚̟͐̒̅ͮ̀́ĥͪ́҉̝̜̯̪͎í͉̲͔̱̯̙͗̾ͧͨ̓͗̀v̴̯͖͕̭̍̃̆ͥ̔ͦ́͠e̛͕̜ͩͭ͐͒̏͠-̶̞̻ͧ͆̈̅̅ͤ̋͂́
20:15:23 <Taneb> Wow I can type really fast sometimes
20:15:38 <Taneb> I didn't realise I could
20:15:42 <Taneb> And now I can't...
20:16:17 <nortti> jlaire: ughhh
20:16:43 <nortti> jlaire: fbcons breaks with that
20:16:49 <nortti> *fbcon
20:17:01 <nortti> thinking too much about lisp right now
20:17:03 <coppro> quintopia: screen cannot do unicode properly
20:17:19 <jlaire> nortti: my own screen is completely messed up right now
20:17:30 <coppro> jlaire: ^A:utf8 on
20:17:31 <jlaire> I see 2 irssi windows overlapped
20:18:16 <nortti> jlaire: I just seeT■■K■[■^■U■I■\■■]■■I■_o■■D■K■■O■H■■■E■V■X■H■■ ■■■A■■S■R■Z■■■■■■Ui■■L■■T■[■N■H■■■■S■V■■Xn■M■■R■J■M■■D■E■G■■■Y■■E■Iv■K■■■Z■■■I■H■No■Z■G■O■■B■B■E■■G■k■Q■H■■Z■■■■■e■■L■K■■M■E■D■G■[■■M■E■ ■Z■O■A■I■■O■■■Y■Y■■t■
20:18:50 <nortti> jlaire: I mean that is what your message looks like
20:20:05 <quintopia> coppro: sure, but at least it doesn't fuck up completely
20:20:19 <quintopia> fails pretty gracefully afaict
20:20:43 <jlaire> nortti: k
20:20:49 <quintopia> what i see of jlaire's post is
20:20:57 <quintopia> TÍ©ÍKÌ[Í^ÍUÍIÌ\̼Ì]Ì©ÍIÌ_oÍ­ÍDÌKͤÍOÍH̫̤ÍEÍVÌXÍH̥̪
20:21:03 <quintopia> some of it inverted
20:21:09 <quintopia> and like three more lines that are similar
20:21:20 <jlaire> I see 2 missing lines that were eaten
20:21:34 <coppro> quintopia: no it does not
20:22:03 <quintopia> coppro: perhaps i have my charsets set up to save me
20:22:11 <coppro> or you're just getting lucky
20:22:24 <Taneb> This seems the best place to ask
20:22:33 <quintopia> term_charset = utf-8
20:22:44 <coppro> quintopia: oh it will work with irssi
20:22:46 <coppro> but with vim?
20:22:47 <coppro> nope
20:22:49 <coppro> no way no how
20:23:19 <quintopia> give me a textfile to test
20:23:32 <Taneb> In the UK, is it legal to get a ticket from a station to a station, then get off at the penultimate station only to get on later?
20:23:38 <Taneb> And complete the journey
20:23:58 <quintopia> depends on which ticket you get
20:24:33 <quintopia> i'm pretty sure there is a ticket type that lets you
20:25:15 -!- boily has quit (Quit: Poulet!).
20:27:41 <Taneb> One day return?
20:29:12 -!- MoALTz has quit (Ping timeout: 276 seconds).
20:31:40 <Taneb> I wonder if I could a cheaper ticket by promising I'm not going to go into London on my journey
20:31:52 <Taneb> Even though I'm closer to Aberdeen
20:32:37 <Taneb> Hmm
20:32:46 <Taneb> Hexham's about half way between Birmingham and Aberdeen
20:34:38 -!- MoALTz has joined.
20:37:38 <kmc> Taneb: my travel agent informs me that if the ticket says "any permitted", it's ok
20:37:46 <kmc> but some advance tickets come with additional restrictions
20:37:46 <Taneb> Oh, cool
20:38:06 <kmc> there's some time limit (1 month?)
20:38:47 <kmc> i really like how national rail fares are integrated with tube fares in the london area
20:39:42 <Taneb> Rail fairs are crazy
20:39:47 <kmc> within london you can take national rail instead of the tube, for the same price
20:39:50 <kmc> and sometimes this is much faster
20:39:57 <Taneb> I think ais523 linked a forum post about it
20:40:04 -!- ogrom has quit (Quit: Left).
20:40:08 <kmc> also if your national rail trip takes you through london and you need to transfer between stations, the tube journey between those stations is included
20:41:33 <kmc> in america none of this works properly
20:41:36 <kmc> not too surprising
20:42:28 <kmc> i don't know if it works in other european cities
20:49:05 <Taneb> National Rail is held together with ad-hoc decisions and duct tape
20:50:24 -!- Nisstyre has joined.
20:54:07 <kmc> i like the sketchy legal status of http://en.wikipedia.org/wiki/Network_Rail
20:55:28 <kmc> which allowed the government to essentially re-nationalize the infrastructure ownership
20:55:58 <kmc> without actually doing so in name, which would trigger some clause for the owners of the previous private infrastructure owner
21:00:44 -!- monqy has joined.
21:00:58 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
21:03:32 -!- ert3go has quit (Quit: Leaving).
21:07:56 -!- Taneb has quit (Ping timeout: 245 seconds).
21:22:56 -!- oklopol has joined.
21:32:59 <shachaf> kmc: Nope. Do you hilight on "heegan"?
21:36:03 -!- TeruFSX has quit (Read error: No route to host).
21:36:14 -!- TeruFSX has joined.
21:37:52 <kmc> no, should i?
21:38:24 <oerjan> best to highlight on h.* to be sure
21:39:46 <shachaf> Or just h
21:51:55 -!- MoALTz has quit (Quit: Leaving).
22:26:12 -!- epicmonkey has quit (Ping timeout: 276 seconds).
22:35:18 -!- nys has quit (Quit: quit).
22:52:53 -!- Vorpal has quit (Ping timeout: 272 seconds).
22:52:53 -!- DHeadshot has quit (Read error: Connection reset by peer).
22:54:53 -!- zzo38 has joined.
23:14:04 -!- nortti_ has joined.
23:29:12 <nortti_> can you notice the difference? http://en.m.wikipedia.org/wiki/File:Nyarlathotep.jpg http://en.m.wikipedia.org/wiki/File:Haiyorenyarukosanln.jpg
23:30:13 <Gregor> ... wut
23:32:17 <nortti_> the firsr one is Nyarlathotep and the second is a Nyarlathotep
23:41:05 <Phantom_Hoover> ok
23:41:06 <Phantom_Hoover> if you say so
23:52:37 <FreeFull> nortti_: I don't see the difference
23:53:29 <Phantom_Hoover> The first one appears to be a portrait of zzo38.
23:55:02 <nortti_> :D
2012-08-11
00:01:56 <nortti_> I never thoughr zzo38 would look like that
00:03:06 <zzo38> The first one appears to be me? OK, if you say so
00:05:24 <zzo38> I think it is really Wikipedia. I also think they are two different files they even have different filenames.
00:06:41 <oerjan> i also hate .m. links.
00:15:01 -!- nooga has quit (Ping timeout: 245 seconds).
00:30:21 -!- zzo38_ has joined.
00:30:43 <zzo38_> I am not currently at home but perhaps you already know that.
00:31:00 -!- zzo38 has quit (Ping timeout: 276 seconds).
00:34:47 <quintopia> hi zzo38_
00:35:30 -!- zzo38_ has changed nick to zzo38.
00:35:59 <zzo38> zzo38_? I am actually zzo38 isn't it?
00:37:14 <quintopia> hi zzo38
00:37:42 <zzo38> Hello
00:37:45 <quintopia> why are you not home?
00:39:03 <zzo38> Because I went elsewhere to help someone else for temporarily I will be home in the night time. It is because it is summer time.
00:39:35 <zzo38> In summer time I like to go to anime convention next week (not this week).
00:46:32 -!- pikhq_ has joined.
00:46:38 -!- pikhq has quit (Ping timeout: 265 seconds).
00:48:15 -!- zzo38 has quit (Quit: It is a color computer!).
00:51:59 <Phantom_Hoover> I wonder if he likes to go to anime conventions next week every week.
01:05:00 -!- nortti_ has quit (Ping timeout: 240 seconds).
01:31:06 -!- david_werecat has joined.
01:57:43 <Phantom_Hoover> Wow, TV Tropes has a trope page for each eye colour.
02:07:21 <Gregor> Not my eye color.
02:08:09 <oerjan> that was not to be expected.
02:18:00 <FreeFull> What does it say about brown?
02:21:15 <Sgeo> Purple eyes actually exist IRL
02:21:16 <Sgeo> o.O
02:21:31 <pikhq_> Gregor: What exactly is your eye color?
02:21:43 <shachaf> Gregor has eyes?
02:22:03 <pikhq_> No, Gregor's really a consciousness devoid of form.
02:22:18 <Gregor> As I like to say, my eye color is “it's complicated”.
02:22:21 <pikhq_> However, he identifies with a given form, and he sometimes makes it manifest in sRGB form.
02:22:24 <Gregor> One sec, I've got a photo somewhere…
02:22:58 <Gregor> http://www.facebook.com/photo.php?fbid=1452222459639&l=0cd95dac16
02:23:22 <oerjan> pikhq_: so he's also a nyarlathotep then?
02:23:35 <pikhq_> Gregor: Dude, we have similar eyes.
02:24:02 <Gregor> As in, crazy unidentifiable heterochromia?
02:24:11 <pikhq_> Aye.
02:24:17 <Gregor> My eyes look green in photographs, but have no green component!
02:24:43 <oerjan> that looks mostly blue to me
02:24:49 <FreeFull> My eyes look brown in photographs. They also look brown in real life.
02:25:02 <pikhq_> We'll fix that!
02:25:03 <shachaf> FreeFull: Who are you, anyway?
02:25:06 <shachaf> Are you elliott?
02:25:16 -!- augur has quit (Remote host closed the connection).
02:25:16 <FreeFull> No
02:25:18 <FreeFull> I'm me
02:25:19 <shachaf> You act nothing like elliott, which gives it away.
02:25:31 <pikhq_> elliott is easy to identify.
02:25:34 <oerjan> no you see, that's precisely what elliott would say!
02:25:45 <FreeFull> pikhq_ is elliott?
02:25:49 <pikhq_> oerjan: He uses capitalization.
02:25:50 <pikhq_> FreeFull: No.
02:25:52 <FreeFull> MYSTERY
02:25:55 <FreeFull> DRAMA
02:26:00 <pikhq_> I am certainly not from the land of six pigs.
02:26:06 <oerjan> pikhq_: a sure mark of evil
02:26:12 <Sgeo> I know a girl who has a spot on her eye like that. Apparently, she was bitten by a dog when she was very young
02:26:50 -!- ais523_ has joined.
02:26:57 <FreeFull> As much as I've been around dogs, I never got bitten by one
02:27:04 <FreeFull> I do have a scar on my face from a cat scratch though
02:30:36 -!- ais523 has quit (Ping timeout: 276 seconds).
02:35:33 -!- david_werecat has quit (Ping timeout: 248 seconds).
02:53:57 -!- augur has joined.
03:14:58 -!- augur has quit (Remote host closed the connection).
03:33:24 -!- terlmann has joined.
03:35:29 -!- ais523_ has changed nick to ais523.
03:35:31 -!- DHeadshot has joined.
03:37:54 <ais523> I hope everyone of you have installed Windows8 on at least one of your machines by now. With the change in Design and Architecture, you will need to Keyboard Shortcuts to perform many tasks that you are used to with the Classic Start button OR Old versions of Windows.
03:37:54 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
03:37:55 <ais523> To ease some of these frequent tasks and enjoy the experience and robustness of Windows8, I would like to point you to the Keyboard Shortcuts which will help you adapt to the Modern Design and use Windows8 in a more efficient way.
03:37:59 <ais523> @messages
03:37:59 <lambdabot> quintopia said 22h 3m 48s ago: thanks for the info! http://en.wikipedia.org/wiki/Wikipedia:Help_desk/Archives/2007_October_10#Colored_text
03:38:32 <ais523> quintopia: whatever made you think of looking in help desk archives from 2007?
03:39:00 -!- augur has joined.
03:39:12 <Sgeo> ais523, I assume that's a joke?
03:39:51 <ais523> Sgeo: the quote is from an official-but-personal Microsoft blog
03:40:27 <Sgeo> Ah. So Windows 8 is a joke.
03:40:32 <ais523> the rest of the page is indicative of a disaster too: http://blogs.msdn.com/b/santhoshonline/archive/2012/08/05/windows8-desktop-keyboard-shortcuts.aspx
03:46:12 -!- aloril has quit (Read error: Operation timed out).
03:54:38 -!- aloril has joined.
03:54:55 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:59:12 -!- zzo38 has joined.
04:07:23 <ais523> oh wow, I think SUSE's solution to the secure boot thing actually works
04:19:49 -!- terlmann has quit (Quit: Depression is merely anger without enthusiasm).
04:21:28 <Sgeo> secure boot thing?
04:35:13 -!- TeruFSX has quit (Ping timeout: 268 seconds).
04:35:20 <oerjan> for when you want to be _sure_ you hit what you're kicking
04:54:20 <FreeFull> ais523: I'll stick with linux, thanks
04:56:11 * oerjan vaguely thought SUSE was a linux
04:57:18 <oerjan> oh wait, you were commenting on the windows 8 madness
05:01:42 <FreeFull> Also, the only machine I have that probably is capable of running Windows 8 is this laptop, and I wouldn't want to corrupt it with that
05:21:37 -!- pikhq has joined.
05:21:57 -!- pikhq_ has quit (Ping timeout: 248 seconds).
05:22:34 -!- mig22 has joined.
05:32:07 -!- pikhq_ has joined.
05:32:36 -!- pikhq has quit (Ping timeout: 276 seconds).
05:44:02 <shachaf> kmc: Do you know that the rot13 of anything ending in "chaf" ends in "puns"?
05:44:50 <pikhq_> funpuns.
05:45:33 <FreeFull> shachaf?
05:46:04 <shachaf> That's right.
05:46:10 <shachaf> (But I think kmc already knew that.)
05:46:15 <oerjan> shachaf: furrfu!
05:47:09 <FreeFull> shachaf: Oh wait, I didn't notice your nick is shachaf
05:47:23 <oerjan> wait, does this mean shachaf is my rival or my nemesis
05:47:46 <FreeFull> It means he's your evinyzrfvf
05:47:53 <oerjan> fancy!
05:48:06 <FreeFull> Or evin for short
05:48:21 <oerjan> `run echo evinyzrfvf | tr a-z n-za-m
05:48:32 <HackEgo> rivalmesis
05:48:47 <shachaf> `rot13 there's no `rot13?
05:48:51 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: rot13: not found
05:48:57 <oerjan> apparently not
05:48:58 <shachaf> ^rot13 there's no ^rot13?
05:48:59 <fungot> gurer'f ab ^ebg13?
05:49:21 <oerjan> ^rot13 Fungot saves the day!
05:49:22 <fungot> Shatbg fnirf gur qnl!
05:49:52 <pikhq_> ^rot13 Shachaf is funpuns!
05:49:52 <fungot> Funpuns vf shachaf!
05:49:59 <shachaf> `run echo 'tr a-zA-Z n-za-mN-ZA-M' > bin/rot13; chmod +x bin/rot13
05:50:02 <HackEgo> No output.
05:50:21 <oerjan> `rot13 U think?
05:50:22 <shachaf> `rot13 shatbg
05:50:53 <HackEgo> No output.
05:51:03 <oerjan> shocking
05:51:10 <HackEgo> No output.
05:51:15 <oerjan> `rot13 Once more with feeling
05:51:38 <shachaf> Oh, um , right.
05:51:48 <HackEgo> No output.
05:51:52 <shachaf> `run echo 'echo "$@" | tr a-zA-Z n-za-mN-ZA-M' > bin/rot13; chmod +x bin/rot13
05:51:55 <HackEgo> No output.
05:52:02 <shachaf> `rot13 shachaf
05:52:04 <HackEgo> funpuns
05:52:08 <shachaf> `rot13 talk to me shatbg
05:52:11 <HackEgo> gnyx gb zr fungot
05:54:19 <zzo38> Did you know that "abjurer" is ROT13 of "nowhere" including both are real words?
05:54:39 <oerjan> shocking!
05:55:08 <pikhq_> `rot13 Did you know that "abjurer" is ROT13 of "nowhere" including both are real words?
05:55:10 <HackEgo> Qvq lbh xabj gung "nowhere" vf EBG13 bs "abjurer" vapyhqvat obgu ner erny jbeqf?
05:57:35 <FreeFull> ^rot13 Filip Szczepański
05:57:35 <fungot> Svyvc Fmpmrcnńfxv
05:57:57 <FreeFull> Where did all the vowels go
05:58:47 * oerjan finds pyrex and clerk
05:59:35 <FreeFull> ^rot13 euioa
05:59:35 <fungot> rhvbn
05:59:48 <oerjan> orphan and becuna, whatever the latter means
06:00:22 <oerjan> sync and flap
06:00:46 <oerjan> ^rot13 cymru
06:00:47 <fungot> plzeh
06:01:00 <oerjan> ooh that's close to plzen
06:01:37 <oerjan> two places not known for overuse of vowels
06:02:29 <oerjan> ^rot13 mgrvgrvladje
06:02:29 <fungot> zteiteiynqwr
06:03:31 <zzo38> I have try to think of how to make up a I/O monad in the Bruijndejx esolang will this work? http://esolangs.org/wiki/Talk:Bruijndejx
06:03:42 <oerjan> ^rot13 Bruijndejx
06:03:42 <fungot> Oehvwaqrwk
06:04:38 <FreeFull> ^rot13 london
06:04:38 <fungot> ybaqba
06:05:21 <oerjan> ^rot13 hexham
06:05:22 <fungot> urkunz
06:05:27 <oerjan> ooh
06:05:32 <oerjan> ^rot13 helsinki
06:05:33 <fungot> uryfvaxv
06:06:01 <oerjan> Hexham, der Urkunz der Städte
06:06:56 <FreeFull> ^rot13 mszana dolna
06:06:56 <fungot> zfmnan qbyan
06:07:04 <FreeFull> ^rot13 myślenice
06:07:04 <fungot> zlśyravpr
06:08:07 <oerjan> FreeFull: clearly those are matching rot13's in polish. or something.
06:08:39 <oerjan> hm wait
06:10:10 <oerjan> ^rot13 finnmark
06:10:11 <fungot> svaaznex
06:10:13 <fizzie> It should've put an accented f in the last one, but I'm afraid it's not smart enough.
06:10:25 <oerjan> sad stuff
06:10:32 <zzo38> oerjan: Do you know if this is OK of I/O monad in this esolang?
06:10:34 <oerjan> you do not simply walk into svaaznex
06:10:45 <oerjan> zzo38: not a clue
06:11:17 <zzo38> Maybe you should fly into svaaznex instead, then.
06:11:47 <FreeFull> ^rot13 grue
06:11:48 <fungot> tehr
06:12:04 <FreeFull> ^rot13 zorkmid
06:12:04 <fungot> mbexzvq
06:12:18 <fizzie> ^show rot13
06:12:19 <fungot> ,[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+14<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>+<-[>>+5[<-5>-]<2-[>+<-[>+<-[>+<-[>+<-[>+<-[>+
06:12:34 <FreeFull> ^rot13 xyzzy
06:12:34 <fungot> klmml
06:12:51 <FreeFull> ^rot13 uuddlrlrba
06:12:52 <fungot> hhqqyeyeon
06:13:04 <oerjan> ^rot13 nyarlathotep
06:13:04 <fungot> alneyngubgrc
06:14:10 <oerjan> ^rot13 trondheim
06:14:10 <fungot> gebaqurvz
06:14:54 <FreeFull> Going to sleep
06:14:56 <FreeFull> Goodnight
06:14:58 -!- oerjan has quit (Quit: Tbbq avtug!).
06:15:00 <FreeFull> Or goodday by now
06:15:07 <fizzie> ^rot13 goodnight.
06:15:08 <fungot> tbbqavtug.
06:15:12 <fizzie> Ah.
06:15:13 <FreeFull> ^rot13 Tbbq avtug
06:15:14 <fungot> Good night
06:21:43 -!- nooga has joined.
06:33:31 <zzo38> The Bruijndejx */\? commands could be implemented as Church-encodings (or Mogensen-Scott encodings) of this Haskell datatype: data BruijndejxIO = Stop | PutZero BruijndejxIO | PutOne BruijndejxIO | GetBit BruijndejxIO BruijndejxIO BruijndejxIO;
06:35:40 <zzo38> Therefore you could use that even in something like Lazy-K with different I/O, to allow interactive programs to be written without the problems it causes.
06:38:31 -!- Levante99 has joined.
06:46:19 -!- Levante99 has left.
06:51:01 -!- ogrom has joined.
07:16:10 -!- ogrom has quit (Ping timeout: 268 seconds).
07:16:32 -!- ogrom has joined.
07:26:53 -!- MoALTz has joined.
07:27:48 -!- MDude has joined.
07:27:57 -!- MDude has changed nick to MDoze.
07:34:09 <zzo38> I think the stacks in Kayak is actually natural numbers isn't it? (Since all stacks must have zeroes at the end)
07:41:19 -!- epicmonkey has joined.
07:52:34 -!- asiekierka has joined.
08:06:50 <shachaf> kmc: Did you know GCC compiles this? typedef int x; int foo(x y) { x x = y; return x; }
08:13:58 -!- ais523 has quit.
08:19:57 -!- derdon has joined.
08:31:41 -!- zzo38 has quit (Remote host closed the connection).
08:34:36 -!- DHeadshot has quit (Ping timeout: 276 seconds).
08:56:03 -!- epicmonkey has quit (Ping timeout: 276 seconds).
09:36:31 -!- DHeadshot has joined.
09:57:25 <kmc> great
09:57:48 <shachaf> typedef int x; x foo(x x) { return x; }
09:58:26 <kmc> this does not seem particularly unreasonable
09:58:42 <kmc> types and variables have different namespaces
09:58:48 <kmc> trouble if you do sizeof x though
09:59:04 <kmc> i think this is where sizeof(x) and (sizeof x) can give different results
09:59:28 <shachaf> No, they're not in different namespaces.
09:59:38 -!- Slereah has joined.
09:59:41 <shachaf> The variable x shadows the type x.
10:00:17 <shachaf> (Or vice versa.)
10:01:18 <kmc> ok
10:01:34 <kmc> skype wants me to download their Linux client over http://, and there's no signature on the .deb of course
10:01:47 <kmc> is there a public tool which MITMs and automatically trojans downloads of debs, RPMs, shell script installers, and ISOs?
10:01:55 -!- pikhq has joined.
10:02:00 <shachaf> cabal install also goes over http://, right?
10:02:01 <kmc> i feel like someone should write / publish one
10:02:02 -!- mig22_ has joined.
10:02:05 <kmc> yeah
10:02:24 <shachaf> That could be a fun tool to write.
10:02:50 <shachaf> Actually it's probably more of the "fun to have written" variety.
10:03:24 <shachaf> Also, it would be easily foiled by having a .iso.md5 file server over http:// on the same server as the .iso!
10:03:37 <shachaf> (You could never tamper with both of them, right?)
10:03:42 <kmc> :3
10:04:03 <kmc> yeah, it would also MITM any text/plain and text/html downloads and do a find/replace for checksums
10:04:08 -!- kallisti_ has joined.
10:04:23 <kmc> there is some value to those .iso.sha1 files though
10:04:34 -!- sivoais_ has joined.
10:04:35 <kmc> if you get the hash from a "primary" server and the iso from a mirror
10:04:46 <kmc> then at least you know the mirror's operators did not tamper with it
10:05:09 <shachaf> Or if you get the sha1 over https, for that matter.
10:05:20 <shachaf> That way the ISO can still be served from a CDN or something like that.
10:05:29 <kmc> yeah
10:05:47 <shachaf> I think getting it to work on "arbitrary" ISO files would be pretty tricky.
10:05:58 <kmc> well yeah
10:06:01 <shachaf> Even for very restricted values of "arbitrary".
10:06:45 <olsner> it might be a bit suspicious if downloading the hash file takes about as long time as generating and hashing the compromised iso
10:06:54 <kmc> yeah :)
10:07:03 <shachaf> You could detect specific files, I guess, and pregenerate them.
10:07:04 <olsner> unless that's sufficiently fast, of course
10:07:22 <kmc> yeah, i expect for this to work well, the attacker's machine should already have a large archive of software which might be downloaded
10:07:51 <shachaf> Sometimes I wish I could be the optimal adversary that I always have to assume.
10:07:56 <shachaf> They have such great tools.
10:08:24 -!- rodgort` has joined.
10:08:39 <shachaf> I like how there are two "M\w+-in-the-middle attack"s which are unrelated to each other.
10:09:02 -!- pikhq_ has quit (*.net *.split).
10:09:02 -!- mig22 has quit (*.net *.split).
10:09:02 -!- Slereah_ has quit (*.net *.split).
10:09:02 -!- kallisti has quit (*.net *.split).
10:09:02 -!- sivoais has quit (*.net *.split).
10:09:02 -!- rodgort has quit (*.net *.split).
10:09:03 -!- mig22_ has changed nick to mig22.
10:09:07 <shachaf> kmc: Where are you these days geographically?
10:09:49 <olsner> hmm, 700MB from /dev/urandom took about one minute to sha1hash for me
10:10:02 <kmc> tools for fools
10:10:13 <olsner> urandom might be the bottleneck though
10:10:42 <kmc> shachaf: I'm in vilnius, lithuania
10:10:49 <kmc> getting on a bus to riga, latvia in a few hours
10:11:04 <shachaf> olsner: It's definitely the bottleneck.
10:11:04 <kmc> from there to tallin by bus and helsinki by motherfucking boat
10:11:11 <kmc> then flying to dublin and then a day later boston
10:11:16 <shachaf> I can sha1 700MB of data in ~2.3s
10:11:22 -!- pikhq_ has joined.
10:11:23 -!- pikhq has quit (Ping timeout: 245 seconds).
10:11:47 <olsner> shachaf: yeah, /dev/zero was about 20-30x faster
10:12:15 * shachaf went from Turku to Stockholm by boat!
10:12:17 <shachaf> And back.
10:13:08 <kmc> how was that?
10:13:39 <olsner> one of those that stops and goes in circles somewhere on the baltic while the tax free shop is open?
10:13:39 <shachaf> Pretty long.
10:13:48 <fizzie> Turku, the oklopolian city of Finland.
10:13:54 <shachaf> It was an overnight boat trip.
10:14:03 <shachaf> I don't *think* it went in circles.
10:14:19 <olsner> yeah, they might just turn off the engines instead
10:14:19 <kmc> hehe
10:14:37 <kmc> i took an overnight train the other day
10:14:50 <kmc> used a sleeper car for the first time
10:14:55 <kmc> very pleasant
10:14:56 <shachaf> People who were with me on the boat bought some Finnish (or was it Swedish?) liqueurs.
10:15:12 <shachaf> kmc: I hear Lakka liqueur is very good.
10:15:16 <shachaf> You like that sort of thing, right?
10:15:16 <kmc> well except that we only had 4 hours in the sleeper and then had to change trains in bumblefuck czechia
10:15:27 <kmc> yes
10:15:32 <kmc> i will try some when i am in finland
10:15:37 <kmc> shachaf: did your boat stop at Åland?
10:15:42 <fizzie> Some of the Tallinn-Helsinki boat trips are pretty fast.
10:15:58 <shachaf> There are also other weird berry liqueurs that I hear are very good.
10:16:16 <shachaf> Mesimarja.
10:16:36 <shachaf> You should try that kind too.
10:16:42 <shachaf> kmc: I don't remember.
10:16:49 <kmc> we took a hydrofoil boat in greece
10:16:55 <kmc> that was fuckin fast
10:16:56 <fizzie> I think "both" (Viking, Tallink-Silja) Stockholm/Turku boats stop at Mariehamn at around 4am or so.
10:17:19 <shachaf> fizzie: Is Lakka liqueur good?
10:17:26 <shachaf> Lakka jam is good.
10:17:35 <olsner> IIRC, stopping at åland is what allows you to have a tax-free
10:17:39 <kmc> yes
10:17:42 <kmc> because thee're not in the EU
10:17:45 <fizzie> I think I've tasted one, it was very sweet.
10:17:49 <kmc> my travel agent has just informed me of this fact
10:17:54 <olsner> but åland is finland
10:18:15 <kmc> but you can have bits of countries which are in the EU, where those bits are not in the EU
10:18:15 <olsner> ... except for the special rules and exceptions
10:18:40 * shachaf is even legally allowed to drink liqueur in the US now. :-(
10:18:42 <kmc> most of the semi-autonomous ex-colonies have this status
10:19:05 <shachaf> The abolition of tax-free sales on ferry boats travelling between destinations within the European Union made Finland demand an exception for the Åland Islands on EU's VAT rules. The exception allows for maintained tax-free sales on the ferries between Sweden and Finland (provided they stop at Mariehamn or Långnäs) and at the airport, but has also made Åland a different tax-zone, meaning that tariffs must be levied on goods brought to the islan
10:19:54 <kmc> and jersey and guernsey
10:21:01 <fizzie> A Finnish computer shop (verkkokauppa.com) sells some stuffs VAT-free, shipped from their Mariehamn office. They're all priced to be like ten cents below some "must pay some tax or tariff" limit.
10:21:06 <kmc> hm so maybe Åland is in the EU after all, but has special exemption
10:21:17 <fizzie> And you can only have one in an order.
10:21:18 <kmc> fucking cmplicated
10:21:54 <kmc> gotta go eat lunch
10:21:55 <kmc> ttyl
10:21:59 <olsner> "While most EU law applies to Åland it is outside the VAT area and is exempt from common rules in relation to turnover taxes, excise duties and indirect taxation. There are also restrictions on the freedom of movement of people and services, the right of establishment, and the purchase or holding of real estate in Åland."
10:22:36 <fizzie> Yeah, I've heard it's a bit nontrivial to move there.
10:23:58 <fizzie> Or at least was.
10:25:05 <fizzie> Or at least if you want your own house, as opposed to an apartment, or renting something.
11:09:08 -!- augur has quit (Remote host closed the connection).
11:09:40 -!- augur has joined.
11:10:03 -!- augur has quit (Read error: Connection reset by peer).
11:10:22 -!- augur has joined.
11:10:34 -!- augur has quit (Remote host closed the connection).
11:22:22 -!- Eladith has joined.
11:39:30 -!- augur has joined.
11:56:48 -!- Phantom_Hoover has joined.
12:15:06 -!- mig22 has quit (Quit: mig22).
12:23:42 -!- mig22 has joined.
12:26:47 -!- donmarquis has joined.
12:27:08 <donmarquis> Hello Brainfuckers :D
12:33:06 -!- asiekierka has quit (Quit: Connection reset by PO).
12:33:35 -!- Taneb has joined.
12:36:31 -!- mig22 has quit (Quit: mig22).
12:38:31 -!- augur has quit (Remote host closed the connection).
12:49:48 -!- ogrom has quit (Quit: Left).
12:54:38 -!- asiekierka has joined.
13:00:34 -!- augur has joined.
13:10:39 -!- Taneb has quit (Ping timeout: 240 seconds).
13:42:19 -!- david_werecat has joined.
13:54:36 -!- mig22 has joined.
14:08:42 -!- donmarquis has quit (Ping timeout: 276 seconds).
14:21:43 -!- sivoais_ has quit (Quit: leaving).
14:22:08 -!- sivoais has joined.
14:27:26 -!- monqy has quit (Quit: hello).
14:39:49 -!- augur has quit (Read error: Connection reset by peer).
14:40:22 -!- augur has joined.
15:00:16 -!- KingOfKarlsruhe has joined.
15:09:59 -!- asiekierka has quit (Read error: No route to host).
15:10:48 -!- asiekierka has joined.
15:13:24 -!- Taneb has joined.
15:18:33 <Taneb> I now have a copy of the Routeing Guide
15:27:38 <Taneb> It has a page "Routes via Hexham" which otherwise does not mention Hexham
15:27:56 <Taneb> Although it does show the Carlisle -> York via Hexham route
15:28:10 <FreeFull> Hexham is implicit
15:28:33 <Taneb> Yes, it's the shortest way between Carlisle and Newcastle
15:28:58 <Taneb> And the biggest place inbetween then except for Prudhoe, which has a toilet roll factory and hence sucks.
15:30:53 <fizzie> I think I've heard of Prudhoe.
15:31:03 <fizzie> Maybe one of you Hexhamites has mentioned it before.
15:31:07 <Taneb> Yes
15:31:11 <Taneb> Quite possibly me
15:31:16 <Taneb> `log prudhoe
15:31:18 <olsner> proud hoe
15:31:27 <fizzie> Taneb: You have strong feelings on the subject of Prudhoe?
15:31:33 <Taneb> Can also be pronounced "pruddha"
15:31:36 <Taneb> Not really
15:31:38 <Taneb> It's a place.
15:31:47 <Taneb> I know one or two people who live there
15:31:56 <HackEgo> No output.
15:32:01 <fizzie> Thehird has mentioned it.
15:32:12 <Taneb> `pastelogs prudhoe
15:32:21 <fizzie> And you, too.
15:32:28 <Taneb> Is there any reason for that peculiar euphemism?
15:32:30 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12886
15:32:45 <fizzie> You've linked to Prudhoe_Castle_2.jpg.
15:32:59 <fizzie> I see it's there too.
15:33:57 <Taneb> Prudhoe has a castle
15:34:36 <fizzie> There's a place called "Hörhö" in Finland, we drove nearby yesterday, there was a "HÖRHÖ 2 >" road sign.
15:34:43 <fizzie> Some Finns might find that amusing.
15:35:08 <fizzie> Becayse
15:35:14 <fizzie> Because http://en.wiktionary.org/wiki/h%C3%B6rh%C3%B6
15:35:29 <fizzie> (A backspace/enter confusion up there.)
15:35:38 <Taneb> There's a place in the UK called Bishop's Itchington
15:35:48 <Taneb> Which I found hilarious when I saw the sign
15:35:56 <Taneb> Although now I realise isn't that funny after all.
15:37:05 <fizzie> Hörhö is not notable enough to have a Wikipedia article, except as a redirect to Lieksa, where it's mentioned in the list of villages.
15:38:10 <fizzie> There's also an Egyptinkorpi, which I think doesn't have anything to do with Egypt.
15:38:39 <Taneb> That sounds like it should mean an Egyptian was buried there
15:39:19 <fizzie> It translates to "korpi of Egypt", and korpi: "1. A boreal forest type appearing on moist moraine soils, characterized by dense growth of spruce as the dominating tree species and deep layer of moss as undergrowth. Korpi is often a transition zone between a drier kangas -type forest and various types of suo (“swamp”). 2. A deep forest. 3. (slang) An area remote from dense population; ...
15:39:25 <fizzie> ... backwoods, backwater."
15:39:52 <Taneb> It is far from any dense population in Egypt
15:39:53 <fizzie> Whether it's intentional or not, it is kind of a backwoods place.
15:40:53 <fizzie> Apparently there was still a school there in 1949 with up to 120 students.
15:41:13 <fizzie> It's been mostly abandoned since 1970s, with just a few farms in there now.
15:41:17 <Taneb> :/
15:41:37 <Taneb> You know, Hexham's high school is older than most countries
15:41:40 <Taneb> Including the UK
15:42:15 <Taneb> And Finland
15:43:21 <fizzie> Many things are older than Finland-the-current-country.
15:43:33 <Taneb> Yep
15:44:24 -!- mig22 has quit (Quit: mig22).
15:44:52 <fizzie> (Even some things in Finland.)
15:44:56 <Taneb> You're older than Germany
15:45:34 <Taneb> By some counts, YOU may be older than Germany
15:45:37 <Taneb> I'm not, though :(
15:45:41 <oklopol> i am
15:50:38 <fizzie> How old is Germany?
15:51:55 <fizzie> I think I was about seven and a half years when Germany.
15:53:38 <Taneb> Unification was... '89?
15:54:19 <fizzie> 3 October 1990, says Wikipedia's main Germany article for the reuinification.
15:54:31 <Taneb> Of course, none of the individual buildings of my school are that old
15:54:37 <Taneb> The oldest is from the 1800's
15:54:40 <olsner> so that puts me at 4 years older than Germany
15:54:44 <Taneb> Not 1599 when the school was founded
15:55:31 <fizzie> (The wall-breaking's from '89.)
15:55:46 <Taneb> I always think unification's first :(
16:14:56 -!- ogrom has joined.
16:19:42 <olsner> oh, bilbo appears in chariots of fire
16:24:44 <olsner> also the borg queen
16:34:21 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
16:58:58 -!- epicmonkey has joined.
17:10:34 -!- Vorpal has joined.
17:11:25 -!- Ngevd has joined.
17:13:18 -!- Taneb has quit (Ping timeout: 276 seconds).
17:17:13 -!- Eladith has quit (Quit: leaving).
17:24:01 -!- Ngevd has changed nick to Taneb.
17:26:43 -!- asiekierka has quit (Quit: Connection reset by PO).
17:26:56 -!- asiekierka has joined.
17:50:54 -!- asiekierka has quit (Quit: Connection reset by PO).
17:53:51 -!- rolebot has joined.
17:53:56 -!- rolebot has quit (Remote host closed the connection).
17:54:16 <nortti> why rolebot joined #esoteric-en?
17:54:39 <olsner> what's #esoteric-en?
17:54:58 <ion> Ooh. I’m not going to buy the first dev version, but that’s promising for sure. http://www.kickstarter.com/projects/1523379957/oculus-rift-step-into-the-game?ref=butt
17:55:00 <nortti> it is irc channel
17:56:25 <nortti> it currently has 2 people, 1 ircbot and my bouncer
17:56:43 <olsner> do you converse much with each other?
17:57:29 <nortti> no
17:57:42 <nortti> well yes but in a query
18:02:58 <ogrom> awesome
18:22:20 -!- zzo38 has joined.
18:25:27 -!- DHeadshot has quit (Ping timeout: 276 seconds).
18:26:33 -!- DHeadshot has joined.
18:27:31 -!- MDoze has changed nick to MDude.
18:28:03 -!- Taneb has quit (Ping timeout: 276 seconds).
18:31:38 -!- Taneb has joined.
18:35:41 -!- asiekierka has joined.
18:36:30 -!- DHeadshot has quit (Ping timeout: 276 seconds).
18:52:27 <kmc> Taneb: routing guide for trains?
18:52:43 <Taneb> Big document that says which routes are permitted
18:53:02 <Taneb> Say, if I want to get a train to ais523
18:53:16 <Taneb> First of all I'd have to work out what station to go to
18:53:38 <Taneb> But then it gets complicated
18:54:57 -!- cknz has quit (Ping timeout: 272 seconds).
19:04:05 <kmc> http://packages.debian.org/wheezy/cycle "NOTE: This program is not a reliable contraceptive method. It does neither help to prevent sexual transmision diseases like AIDS."
19:04:05 -!- oerjan has joined.
19:04:23 <kmc> Taneb: by memorizing this document, can you do hax that the national rail website is unaware of
19:04:44 <Taneb> Yeah, like going to Carlisle from London via Inverness
19:04:49 <olsner> I think by memorizing that document you become able to ride a train in england
19:05:54 <oerjan> you will also automatically grow sideburns or a monocle
19:07:47 <ion> cycle :-D
19:08:01 <oerjan> wat
19:08:52 <oerjan> <zzo38> I think the stacks in Kayak is actually natural numbers isn't it? (Since all stacks must have zeroes at the end) <-- heh i guess
19:09:35 <oerjan> except isn't there a random input one
19:10:47 <oerjan> right the bit bucket
19:12:41 <oerjan> although it may not be _strictly_ against the standard to initialize it to a finite (i.e. zero-terminated) value
19:13:38 <oerjan> in fact it would have to preserve that until the end
19:14:14 <oerjan> those wouldn't be uniformly random, independent bits then, though
19:14:38 <oerjan> but then you will not always have that at the end even if you start with it
19:15:56 <zzo38> Perhaps to have it reversible properly even ignore bit bucket so that there is only the input and output, each of which is a natural number (not a stream of bytes).
19:19:07 <oerjan> zzo38: well yes, afair that was part of the design idea. the bit bucket is ideally only supposed to be used when the whole program does something irreversible.
19:28:21 -!- monqy has joined.
19:28:39 <zzo38> Another reversible esolang Revaver2pi where order of lines is reversed to reverse program and doesn't use a bit bucket.
19:28:51 <zzo38> (Also doesn't have to change brackets [ to ] and so on)
19:31:36 <zzo38> In the esolang Bruijndejx do you think you could encode the */\? commands as a Church encoding or Mogensen-Scott encoding of the datatype?
19:33:09 -!- lexande_ has joined.
19:33:17 <zzo38> And then to make up I/O monad using what I have specified on the Talk page? Perhaps they work with such things as Lazy K as well.
19:33:25 <lexande_> Taneb, does London to Carlisle via Inverness still work?
19:33:34 <Taneb> Probably not
19:33:40 <lexande_> i kind of thought they had amended that one away, though many comparably absurd things remain
19:33:53 <lexande_> also that the written and online versions of the ATOC routeing guide are not identical
19:33:59 <Taneb> I think there's two stations where there's no route between them
19:37:13 <Taneb> Right, Hexham has routeing points Newcastle and Carlisle
19:37:41 <Taneb> Durham has Darlington and Newcastle
19:37:55 <Taneb> That means there's only one valid route from Hexham to Newcastle
19:38:09 <Taneb> Thence Durham
19:39:03 <Taneb> Hmm
19:39:04 -!- pikhq has joined.
19:39:20 <Taneb> Can you give me a station that isn't near Newcastle or Carlisle?
19:41:09 -!- pikhq_ has quit (Ping timeout: 248 seconds).
19:41:11 <olsner> is Newark sufficiently far?
19:41:19 <Taneb> Yes? I think so?
19:41:54 <kmc> Taneb: also, then you're in Inverness
19:41:59 <kmc> is that actually a good place to be
19:42:16 <Taneb> Newark Castle or Newark North Gate?
19:42:27 <Taneb> kmc, I don't think
19:42:49 <Taneb> ...
19:42:56 <Taneb> I had an end to that sentence, I swear
19:43:23 <Taneb> Ask Phantom_Hoover.
19:45:18 <oerjan> <Taneb> Although now I realise isn't that funny after all. <-- the poor bishop didn't think it was funny, for sure
19:50:12 <kmc> butts
19:51:20 <ion> NTSF:SD:SUV S02E01
19:55:54 <Phantom_Hoover> I think I've been to Inverness once, and not for long.
19:57:34 <Taneb> What was it like?
19:57:52 <olsner> hmm, googling for inverness does not give me a list of limericks
19:57:57 <Phantom_Hoover> I forget.
20:00:09 <oerjan> there was an old lady from inverness / whose limericks were always a horrible mess / while they did rhyme / the meter wasn't so sublime / and the last line didn't.
20:00:38 <ion> hah
20:02:41 <olsner> apparently I live in a city about twice as big as inverness
20:07:15 <Taneb> olsner, it's north Scotland. Nobody lives in north Scotland.
20:08:30 <Phantom_Hoover> They have one university between them.
20:08:32 <Phantom_Hoover> And it sucks,#
20:09:27 -!- x2a has joined.
20:09:35 <pikhq> Everyone knows Scotland is a made-up place.
20:09:43 <pikhq> It's like British Disneyland.
20:09:55 <Taneb> It's about an hour's drive away from here and Phantom_Hoover lives there
20:09:59 <pikhq> Where you get to see the funny men with made-up accents and funny skirts-but-they're-not-skirts.
20:10:12 <pikhq> Taneb: Clearly he works there.
20:10:53 <Phantom_Hoover> Nah, they fired be because I can't do the accent any more.
20:11:14 <pikhq> Just a silly tourist then.
20:13:13 <Taneb> Wasn't the most used Haskell compiler created in Scotland?
20:15:05 -!- MDude has quit (Quit: later chat).
20:15:12 <Phantom_Hoover> Yeah, but there wasn't much demand for it at the gift shop.
20:16:03 -!- x2a has left.
20:20:26 -!- MoALTz has quit (Quit: Leaving).
20:23:29 -!- asiekierka has quit (Remote host closed the connection).
20:27:40 <pikhq> Taneb: Well, yes. Scotland is a very *good* mythical place.
20:27:56 <pikhq> They went so far as to add some universities, so it looks like a real country.
20:29:52 <oerjan> yeah like Hogwarts and the like
20:34:12 <olsner> arguably the largest scottish theme park in the world
20:34:40 <Taneb> There's a bigger one in Florida, isn't there?
20:37:26 <olsner> maybe, not sure which one is the bigger, hence the arguability
20:45:09 <Taneb> Is it bad that without the Murderous Maths books, my life would be completely different?
20:46:50 <Taneb> I would have never found Irregular Webcomic, and hence esoteric programming languages, and hence here
20:47:19 <Taneb> Without IWC, I would have never found TVTropes, and hence Homestuck (would have maybe found Homestuck later, actually...)
20:48:00 <nortti> 222
20:48:01 <nortti>
20:48:19 -!- dretch has joined.
20:48:59 <Taneb> So I wouldn't have made friends with many brilliant people in the world of esoteric programming and in the Homestuck fandom
20:49:15 <Taneb> I would have never found Minecraft (from Homestuck, oddly) or Dwarf Fortress
20:49:25 <Taneb> May have found Minecraft later
20:49:49 <Taneb> I would have been slightly worse at maths, too
20:49:56 <nortti> why?
20:50:09 <Taneb> Look at the nail of this alternate universe
20:50:15 <Taneb> "Without the Murderous Maths books"
20:51:09 <Taneb> Gave me an intuition about complex numbers when I was 12
20:51:26 <olsner> #esoteric and tvtropes are easy enough to find without either of murderous maths or irregular webcomic
20:51:27 <dretch> Nothing gave you an "intuition" when you were 12
20:51:27 <oonbotti> Nothing here
20:51:29 <dretch> you developed it. newb
20:52:10 <Taneb> olsner, not if I hadn't gained an interest in esoteric programming, which I got from David Morgan-Mar, whom I first encountered on irregularwebcomic.net
20:52:42 <Taneb> dretch, without the Murderous Maths books, I would have first encountered them 4 or 5 years later, and probably had more difficulty understanding them
20:53:09 <olsner> Taneb: I came here before having any interest in esoteric programming beyond having heard of brainfuck
20:53:09 <Taneb> Intuitions are often developed with a guiding hand
20:53:09 <oerjan> Taneb: you could have gone homestuck -> tvtropes -> iwc, perhaps?
20:53:21 <Taneb> oerjan, probably not
20:53:29 <Taneb> Actually...
20:53:55 <Taneb> I could have theoretically gone Real life -> TVTropes -> IWC
20:54:04 <olsner> then I came here again a few years later when I was ready to develop an interest
20:54:15 <Taneb> olsner, why would I have heard of brainfuck? I was barely interested in programming
20:54:30 <Taneb> I'd be trying to learn C++, and failing miserably, probably switching to PHP
20:54:38 <Taneb> I'm really glad about the Murderous Maths books
20:54:43 <nortti>
20:54:46 <monqy>
20:55:16 <Taneb> (yeah, that's "barely interested in programming")
20:55:25 <Taneb> (or maybe to possible eventualities)
20:56:25 <Taneb> Point is, most of my interests stem from the Murderous Maths books
20:56:42 <zzo38> PHP is actually pretty bad, although it can work.
20:57:59 <zzo38> I like mathematics
20:58:26 <Taneb> It's always been my subject
20:58:43 -!- ogrom has quit (Quit: Left).
21:05:36 -!- aloril has quit (Read error: Operation timed out).
21:08:08 <zzo38> If types can have the same name as variables in C, then wouldn't that cause ambiguous codes sometimes?
21:09:02 <olsner> yes
21:09:48 <olsner> at least I think so, but maybe it's unambiguous in C based on knowing what names are types
21:11:06 <olsner> in C++, there's a rule that says something like if a declaration could be both a function or a variable, it'll be one of them
21:11:40 <zzo38> No, it is not always known what names are types such as a statement x*y; how can you know if it is x times y or the type of y declared as pointer to x, and in an expression ((x)*y) is it casting (*y) to x or multiplying x by y?
21:12:17 <olsner> you know based on the code you've seen whether or not x is declared as a type already
21:13:00 <zzo38> Well, yes.
21:13:25 <zzo38> But someone posted some example of a C code that they say GCC compiles it that x is used as both type and variable name
21:13:56 <Taneb> At the same time?
21:15:11 <FreeFull> zzo38: Aren't declarations always on the left side and statements always on the right
21:15:13 <zzo38> This was something someone posted, yes they used it at same time they had a declaration x x;
21:15:29 <pikhq> Yup, they are in fact seperate namespaces.
21:15:39 <pikhq> And I don't know the disambiguation rules.
21:15:46 <pikhq> Well.
21:15:53 <pikhq> Yeah. No idea.
21:16:10 <fizzie> fungot: I think you might be dead now. Are you?
21:16:11 <fungot> fizzie: i did not like to go,' he went on with his work, singing softly to himself, but in vain, until that interesting youth had left the room with a sigh.
21:16:16 <fizzie> Well, that's weird.
21:16:29 <fizzie> fungot: I switched your IP address and all. How are you not dead?
21:16:31 <fungot> fizzie: they take me a walk: though tired and stiff, to climb the heights i madly fnord and, by the time they're ready!' she remarked, as alice sat with the knife in her hand a bouquet rather larger than a fnord she knelt down and looked along the passage into the loveliest garden you ever saw anybody! you keep your head under the leaves, and gave it a severe pinch.
21:16:37 <FreeFull> I mean, something like x = float y; doesn't make sense
21:16:52 <olsner> after #define float it does
21:16:53 <FreeFull> Unless you put the float in ()
21:17:03 -!- epicmonkey has quit (Ping timeout: 276 seconds).
21:17:04 <FreeFull> Or abuse the preprocessor
21:19:40 -!- aloril has joined.
21:22:05 -!- DHeadshot has joined.
21:22:54 -!- david_werecat has quit (Ping timeout: 252 seconds).
21:34:16 -!- Taneb has quit (Ping timeout: 252 seconds).
21:36:53 <olsner> looks related: http://eli.thegreenplace.net/2011/05/02/the-context-sensitivity-of-c’s-grammar-revisited/
21:37:15 <olsner> (part 1: http://eli.thegreenplace.net/2007/11/24/the-context-sensitivity-of-cs-grammar/)
21:37:41 <olsner> typedef char AA; int aa = sizeof(AA), AA, bb = sizeof(AA);
21:40:21 -!- Taneb has joined.
21:44:04 <zzo38> Yes that is the other thing of ambiguous
21:45:04 <olsner> those examples are not ambiguous though, just context sensitive
21:45:13 <oerjan> <zzo38> This was something someone posted, yes they used it at same time they had a declaration x x; <-- i think that is different because the second x is creating a new scope, so it doesn't matter if they are the same namespace
21:45:39 <oerjan> > let f f = 2*f in f 2 -- haskell example iirc
21:45:41 <lambdabot> 4
21:45:52 <oerjan> (well somewhat similar)
21:46:49 <Taneb> > let f f = 2 * f :: Num f => f -> f in f 2
21:46:50 <lambdabot> Inferred type is less polymorphic than expected
21:46:50 <lambdabot> Quantified type variable...
21:46:56 <Taneb> > let f f = 2 * f :: Num f => f -> f in f 2 :: Int
21:46:57 <lambdabot> Inferred type is less polymorphic than expected
21:46:57 <lambdabot> Quantified type variable...
21:47:56 <olsner> I think you're getting (2 * f :: ...)
21:47:56 <oerjan> Taneb: you cannot generally put a type annotation with free type variables on an expression and expect it to extend to the whole declaration
21:48:16 <Taneb> > let f f = " * f; f :: Num f => f -> f in f 2
21:48:18 <lambdabot> <no location info>:
21:48:18 <lambdabot> lexical error in string/character literal at end o...
21:48:25 <Taneb> > let f f = 2 * f; f :: Num f => f -> f in f 2
21:48:27 <lambdabot> 4
21:54:47 -!- Vorpal has quit (Ping timeout: 250 seconds).
22:02:15 <fizzie> oerjan: Regarding your scope theory, indeed, within a block it's illegal to say { typedef int x; int x; } -- "error: ‘x’ redeclared as different kind of symbol".
22:02:31 <fizzie> (Much like what you get for "int x; int x;".)
22:06:50 <oerjan> mhm
22:28:33 -!- lexande_ has quit (Ping timeout: 244 seconds).
22:31:48 -!- DHeadshot has quit (Ping timeout: 276 seconds).
22:45:07 -!- kmc has quit (Ping timeout: 240 seconds).
22:47:07 -!- kmc has joined.
22:50:46 -!- Sgeo has quit (Read error: Connection reset by peer).
22:52:29 -!- Sgeo has joined.
22:52:38 -!- dretch has quit (Quit: dretch).
22:56:43 -!- kmc has quit (Ping timeout: 256 seconds).
23:03:47 <nortti> http://qdb.us/305703
23:08:47 -!- kmc has joined.
23:14:48 <ion> Is the first line related to the second one?
23:15:18 <Taneb> Seen it before
23:19:12 -!- Sgeo_ has joined.
23:19:23 -!- kmc_ has joined.
23:19:34 -!- Sgeo_ has quit (Read error: Connection reset by peer).
23:20:00 -!- nortti_ has joined.
23:20:00 -!- nortti_ has quit (Client Quit).
23:20:22 <quintopia> @tell ais523 I needed to know the "official" way of making colored text on mediawiki for Talk:BF_Joust_Strategies
23:20:22 <lambdabot> Consider it noted.
23:20:24 -!- kmc has quit (Ping timeout: 260 seconds).
23:25:58 <Sgeo> https://petitions.whitehouse.gov/robots.txt
23:26:14 <Sgeo> I don't get it. They disallow / then proceed to bother to disallow other stuff?
23:27:14 <pikhq> I suspect what happened is they got a demo robots.txt with their CMS and they just uncommented all the lines in it.
23:27:31 <zzo38> Yes, maybe that is it.
23:27:52 <zzo38> They set the crawl delay too, even though it is disallowed.
23:28:15 <Sgeo> Anyways, due to that robots.txt, I can't access old copies of the petition that people are upset about
23:28:21 <Sgeo> I just want to see the timestamp
23:30:15 <Phantom_Hoover> Man, I keep forgetting GTA was made in Scotland.
23:30:33 <Phantom_Hoover> (That was one of our more successful products at the gift shop.)
23:33:58 -!- david_werecat has joined.
23:36:51 <oerjan> it's was rebackronymed of course, the original name was Glasgow Traffic Academy
23:37:33 <Phantom_Hoover> It's not nearly brutal enough to be set in Glasgow.
23:37:34 <Sgeo> I should continue playing Brogue
23:40:49 <Taneb> Is that an outrageously cool rogue-like?
23:41:47 <Phantom_Hoover> It's yet another production of Scotlandland.
23:42:54 <Taneb> Either way, I'm going to get some sleep now
23:42:56 -!- Taneb has quit (Quit: Leaving).
23:48:11 <quintopia> david_werecat: your program doesn't run in wine i think?
23:48:18 <Sgeo> I officially hate Pink Jellies
23:48:40 <david_werecat> quintopia: I'm not sure if it does or not, I didn't test it.
23:48:49 <quintopia> i couldn't get it to run
23:48:52 <david_werecat> What error message does it give?
23:49:26 <quintopia> lol
23:49:42 <quintopia> install the windows version of Mono
23:49:45 <quintopia> sounds lame
23:52:16 -!- david_werecat has quit (Read error: Connection reset by peer).
23:53:05 -!- david_werecat has joined.
23:58:22 <david_werecat> The .Net 2.0 version is here: http://www.mediafire.com/?ryfwvqh47gdwfb7
23:58:49 <david_werecat> If it still doesn't work, it's because it uses a webbrowser control to preview the wikicode.
2012-08-12
00:01:21 <quintopia> oic
00:02:04 <Phantom_Hoover> hey guys, what's the maximum damage a spider can do to a computer
00:03:38 <ion> A big enough spider could eat a small enough computer.
00:04:47 <david_werecat> The worst I've seen a spider do is give a BSOD.
00:09:21 -!- oklopol has quit (Quit: ( www.nnscript.com :: NoNameScript 4.22 :: www.esnation.com )).
00:12:23 <zzo38> ion: Yes that is possible but probably unlikely
00:12:48 <zzo38> david_werecat: Probably it would if it would get inside the computer. Otherwise probably nothing.
00:16:36 <quintopia> remember the story of where the term "bug" came from
00:16:44 <quintopia> insects in general can do some damage
00:17:16 <zzo38> Yes it can, especially to older computers.
00:17:31 <zzo38> Spiders are not insects but they can probably do the same damage to computers.
00:17:36 <quintopia> if you leave your computer off, and a spider webs up your intake fan...
00:17:37 -!- ais523 has joined.
00:17:48 <quintopia> spiders are arthropods
00:17:55 <quintopia> and arthropods are bugs
00:18:05 <zzo38> But either way it probably won't if it does not get inside the computer.
00:18:21 <quintopia> yeah it'd be tough for a spider to damage a laptop
00:21:58 <FreeFull> quintopia: only insects are bugs
00:22:06 <quintopia> FreeFull: lies
00:22:10 <FreeFull> Crustaceans are anthropods, would you call them bugs?
00:22:13 <quintopia> yes
00:22:20 <quintopia> shrimp are the ants of the sea
00:22:50 <quintopia> i can picture the whales and dolphins swatting at them like gnats
00:22:57 <FreeFull> Shrimp don't have any of the social structure of ants
00:23:01 <zzo38> My mother said the same thing
00:23:07 <quintopia> okay, the gnats of the sea
00:23:18 <FreeFull> And don't swarm around whales or dolphins
00:23:36 <quintopia> i'm trying to invoke the smallness and ubiquity of them
00:26:15 <oerjan> you may be thinking of krill
00:26:57 <zzo38> O, yes, it should be krill.
00:27:18 <oerjan> then it's settled.
00:28:31 <oerjan> anyway i have had very little trouble with krill in my laptop.
00:35:39 -!- esowiki has joined.
00:35:40 -!- glogbot has joined.
00:35:40 -!- glogbackup has left.
00:35:43 -!- esowiki has joined.
00:35:44 -!- esowiki has joined.
00:35:45 <oerjan> not in scotland, only in australia.
00:36:35 <oerjan> @wn suppurate
00:36:36 <lambdabot> *** "suppurate" wn "WordNet (r) 3.0 (2006)"
00:36:36 <lambdabot> suppurate
00:36:37 <lambdabot> v 1: cause to ripen and discharge pus; "The oil suppurates the
00:36:37 <lambdabot> pustules" [syn: {suppurate}, {mature}]
00:36:37 <lambdabot> 2: ripen and generate pus; "her wounds are festering" [syn:
00:36:38 <lambdabot> {fester}, {maturate}, {suppurate}]
00:36:51 * oerjan regrets that already.
00:37:26 <Phantom_Hoover> Yep, it's like pus.
00:37:32 <Phantom_Hoover> Blue pus.
00:37:42 <oerjan> Phantom_Hoover: your computer contains one very ill hooloovoo. hth.
00:38:37 <Phantom_Hoover> what colour is hooloovoo medicine
00:39:56 <oerjan> tricky question
00:41:41 -!- fizzie has quit (Ping timeout: 245 seconds).
00:42:01 <oerjan> they got fizzie too
00:42:01 <Phantom_Hoover> Dammit fizzie, right when we need you.
00:42:28 <oerjan> nah we need Gregor, he's the color expert
00:42:39 <oerjan> _especially_ alien colors
00:43:10 <Gregor> It's moderate cerise.
00:44:31 <oerjan> excellent http://www.colourlovers.com/color/A01266/Moderate_Cerise
00:45:19 -!- fizzie has joined.
00:45:39 <Phantom_Hoover> oerjan, nope, it's still leaking blue everywhere.
00:46:04 <Phantom_Hoover> fizzie, I need you to use your magic colour program to calculate moderate cerise.
00:46:16 <oerjan> Phantom_Hoover: i think hooloovoo medicine needs to be administered using proper prismatic equipment
00:49:02 <Phantom_Hoover> fizzie, also can you use your wealth of H2G2 knowledge to give me some tips on hooloovoo medicine.
00:52:52 <oerjan> i suspect fizzie might be asleep, filthy european
00:53:30 <oerjan> or wait it's sunday. i suspect fizzie might be out partying, filthy european
00:54:12 <oerjan> hm given he spoke at 0:02, maybe a little unlikely
01:13:13 -!- derdon has quit (Remote host closed the connection).
01:21:34 -!- augur_ has joined.
01:24:03 -!- augur has quit (Ping timeout: 276 seconds).
01:58:41 -!- hagb4rd has joined.
02:01:57 <tswett> https://github.com/tswett/Smokefly - you know, that commit message is highly misleading.
02:02:04 <tswett> "Change copyright license from BSD to GNU GPL"
02:02:22 <coppro> it is
02:02:27 <tswett> One of the files with that message is the GNU GPL. The GNU GPL was never available under the BSD license, and it is not available under the GNU GPL.
02:02:37 <coppro> haha
02:02:42 <coppro> also, just to spite you
02:02:50 <coppro> ima go grab a copy from just before the license switch
02:02:54 <coppro> and start coding on it and distributing it
02:02:55 <tswett> Two of the files with that message are now in the public domain, rather than available under the GNU GPL.
02:03:08 <coppro> probably untrue
02:03:19 <coppro> most countries' laws don't have a concept of "public domain" per se
02:03:31 <tswett> And two of the files with that message are available under the GNU GPL, but still also available under the BSD license, because licenses don't just go away.
02:13:37 -!- DHeadshot has joined.
02:20:59 <Sgeo> Why the license switch?
02:40:29 -!- david_werecat has quit (Ping timeout: 260 seconds).
02:42:38 <zzo38> I also want to know why
02:43:00 <zzo38> And why are two of those files in the public domain?
03:19:55 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:47:23 <tswett> Sgeo: because if people modify it, I want them to release the modified version under the same license.
03:51:22 <Sgeo> Am I evil for selling software?
03:52:12 <tswett> zzo38: because they're not software, and producing them did not require a significant amount of effort.
03:52:14 <Sgeo> (Note that this is not a response to your license thing)
03:52:15 <tswett> Sgeo: not in my opinion.
03:52:59 <Sgeo> Although I wonder, if I gave it away back then, would the scourge of poseballs be non-existent?
03:53:47 <oerjan> what's a poseball
03:53:48 -!- augur_ has changed nick to augur.
03:54:26 <Sgeo> http://secondlife.wikia.com/wiki/Poseball "A poseball is a common kind of scripted object in Second Life, appearring as a round colored sphere. There purpose is to play an animation on the avatar that sits on them."
03:55:03 <oerjan> ok
03:55:10 <oerjan> ...thanks?
03:55:48 <Sgeo> You did ask what a poseball is, and that is the answer.
03:55:51 <Sgeo> They annoy me.
03:56:18 <Sgeo> I called my product the "antiposeball"
03:56:40 <Sgeo> https://marketplace.secondlife.com/p/Antiposeball-5-SAVE-PRIMS-ON-FURNITURE/219014
04:07:51 -!- DHeadshot has quit (Ping timeout: 276 seconds).
04:11:51 -!- DHeadshot has joined.
04:16:57 -!- DHeadshot has quit (Ping timeout: 276 seconds).
04:42:02 -!- mig22 has joined.
05:12:24 -!- ogrom has joined.
05:50:51 <shachaf> 22:50 <preflex> elliott was last seen on #haskell 60 days, 5 hours, 24 minutes and 34 seconds ago, saying: teneen: That doesn't really clarify to me.
05:54:05 -!- oerjan has quit (Quit: Good night).
06:08:18 -!- ogrom has quit (Quit: Left).
06:08:39 -!- ogrom has joined.
07:18:52 <zzo38> I would think one CPU instruction for bitwise calculation should be one like INTERCAL's select operator except that the nonselected bits are just moved instead of deleted. It would be useful for some things and if you have AND/OR/XOR as well, then you could implement some other things with this too.
07:19:00 -!- asiekierka has joined.
07:20:56 <zzo38> Such as if it is a C code binary ~ operator then implement INTERCAL select by ((x~y)&(y~y))
07:21:06 <zzo38> Another things might be wanted is the Muxcomp stuff.
07:24:16 -!- epicmonkey has joined.
07:25:46 <zzo38> I have written most of a program called Famitile, except: full documentation, load/save in GUI, nametable editor. (Load/save already works for command-line, and you can also use any command-line operation in lastline mode in the GUI, though)
07:29:35 <zzo38> I intend to support both standard nametables and MMC5 nametables.
07:41:34 -!- zzo38 has quit (Quit: Right).
08:13:00 -!- Taneb has joined.
08:39:31 -!- kmc_ has changed nick to kmc.
08:48:19 <kmc> i propose a railway!
08:50:56 -!- mig22 has quit (Quit: mig22).
08:51:51 <kmc> high speed line from Helsinki to Tallinn (through a tunnel) and on to Tartu, Riga, Kaunas (with a branch to Vilnius), Białystok, and Warszawa
08:52:59 <shachaf> They sought it with thimbles, they sought it with care; / They pursued it with forks and hope; / They threatened its life with a railway-share; / They charmed it with smiles and soap.
08:55:42 <shachaf> Ah, kmc. Talking about trains even in #mosh.
08:55:48 <kmc> yep
08:55:52 <kmc> hey i wasn't the one who brought it up
08:57:36 <kmc> ok it looks like i am not the only one to propose this railway
08:57:37 <kmc> http://en.wikipedia.org/wiki/Rail_Baltica
09:00:10 <shachaf> kmc: Don't you hate it when you ask a Haskell question and the answer turns out to be the Yoneda lemma?
09:00:28 <olsner> what's the yoneda lemma again?
09:00:40 <shachaf> 16:55 <edwardk> basically the yoneda lemma says in big fancy words that forall r. (a -> r) -> f r is isomorphic to f a
09:00:43 <shachaf> 16:57 <dolio> It basically says something way more general than that. :)
09:00:45 <shachaf> 16:58 <edwardk> yes, the actual lemma is much more powerful
09:00:48 <shachaf> 16:58 <edwardk> but when translated and embedded in haskell for a 'Functor' with a capital f, thats the takeaway
09:01:17 <shachaf> I feel like I'm missing a whole world of category theory.
09:01:26 <shachaf> More useless than even the most useless Haskell code could ever be.
09:03:39 <shachaf> Norway is called Norvēģija in Latvian?
09:03:45 <shachaf> That's a good name.
09:04:00 <shachaf> kmc: Are you still in the Latvia?
09:06:37 <kmc> shachaf: yes
09:07:16 <kmc> going to go AK-47 shooting in a bit
09:07:18 <kmc> if all goes well
09:07:31 <kmc> tomorrow i will take a bus to Tallinn and the next day a ferry to Helsinki
09:07:39 <kmc> you can see why I would be interested in high speed rail in the area!
09:07:58 * kmc wonders if he should join #trains or something
09:08:16 <shachaf> You won't be an op.
09:09:17 <kmc> so?
09:09:58 <shachaf> So someone has presumably been there before.
09:10:18 <shachaf> Hmm, now ChanServ is in there. Weird.
09:12:08 <kmc> oh, i just assumed it would be a real channel
09:12:17 <kmc> now i am disappointed
09:14:17 -!- lin19897485 has joined.
09:15:49 -!- lin19897485 has left.
09:23:35 -!- Eladith has joined.
09:30:32 -!- MoALTz has joined.
09:30:52 <itidus21> latvia.. ah yes. they won the bmx race!
09:44:36 <itidus21> leaving australia with silver
09:44:59 -!- derdon has joined.
10:22:13 -!- derdon has quit (Remote host closed the connection).
10:43:42 -!- Taneb has quit (Ping timeout: 276 seconds).
10:57:11 -!- ogrom has quit (Quit: Left).
11:09:51 -!- lilja_ has joined.
12:09:16 -!- sirdancealot7 has quit (Ping timeout: 246 seconds).
12:17:14 -!- ogrom has joined.
12:29:30 -!- monqy has quit (Quit: hello).
12:30:05 -!- Taneb has joined.
12:32:14 -!- Phantom_Hoover has joined.
12:34:40 -!- ais523 has quit.
12:35:18 -!- Taneb has quit (Ping timeout: 240 seconds).
12:44:32 -!- pikhq_ has joined.
12:45:17 -!- pikhq has quit (Ping timeout: 272 seconds).
12:56:04 -!- Sgeo has quit (Quit: Leaving).
13:04:02 -!- Phantom_Hoover has left ("Leaving").
13:04:07 -!- Phantom_Hoover has joined.
13:18:20 -!- david_werecat has joined.
13:19:03 -!- epicmonkey has quit (Ping timeout: 276 seconds).
14:08:55 -!- david_werecat has quit (Ping timeout: 252 seconds).
14:23:15 -!- elliott has joined.
14:23:16 <elliott> http://stackoverflow.com/questions/11922134/haskell-how-to-increment-i-i1
14:23:21 -!- elliott has left.
14:36:51 -!- lexande_ has joined.
14:37:43 -!- Sgeo has joined.
14:40:23 <ion> Leonard Nimoy Laserdisc Demo http://youtu.be/0f3524BQ0Ms
14:47:19 <Phantom_Hoover> The one answer to that question is brilliantly evil.
14:48:58 <ion> yeah
14:49:02 -!- derdon has joined.
14:51:50 <Sgeo> The answer to the question is by the person asking the question.
14:53:50 <Phantom_Hoover> Oh wow you're right, that just makes it even better.
15:00:11 <kmc> "In the summer of 2012, members of Ansar Dine broke down the doors of the Sidi Yahya Mosque, which according to legend were not to be opened until the Last Days. They claimed that reverence for the site was idolatrous, but offered roughly $100 US dollars to repair the mosque."
15:04:42 <kmc> Phantom_Hoover: would this be more evil? http://hpaste.org/52268
15:05:43 <Phantom_Hoover> Uh, maybe from a technical standpoint, but I think the obfuscation makes it less misleading.
15:13:52 -!- Taneb has joined.
15:14:16 <kmc> maybe i should contribute to haskell stack overflow more
15:14:28 <kmc> SO improves on IRC with respect to the things i complain about #haskell
15:29:15 <ion> haha
15:50:55 -!- sirdancealot7 has joined.
15:55:14 <FreeFull> kmc: Did the legend specified what would happen if the doors were to open?
15:56:08 <kmc> no idea
15:58:53 <FreeFull> " it takes a lot of time and practice to think functional instead of imperative."
15:59:07 <FreeFull> Weird, as soon as I saw functional programming, I didn't have much trouble comprehending it
16:01:35 <FreeFull> But then, I had really good resources about it at hand
16:04:35 <ion> https://twitter.com/SarcasticRover/status/234677032456450048
16:07:12 <kmc> FreeFull: how much imperative programming had you done before that?
16:07:18 <kmc> the two aren't really in opposition either
16:07:30 <kmc> combining functional and imperative techniques is very powerful
16:07:36 -!- AnotherTest has joined.
16:07:39 <kmc> not just "this part is functional, that part is imperative" but actually using them together
16:07:42 <AnotherTest> hello hello
16:07:50 <kmc> hello test person
16:08:22 <AnotherTest> hello algorithm
16:08:47 <AnotherTest> unfortunately I should lookup what the KMC algorithm did again :(
16:09:38 <kmc> knuth - morris - carlsberg
16:10:20 <AnotherTest> something with substrings I recall
16:10:44 <kmc> FreeFull: popular languages force you to use mutable variables even when it's not conceptually necessary
16:10:48 <kmc> or anyway they make it cumbersome to do otherwise
16:11:06 <kmc> so people get used to thinking in terms of mutable variables, when there is often a simpler explanation in terms of immutable values
16:11:40 <kmc> good programmers and good languages transcend "paradigm" and let you use whichever style(s) are appropriate
16:14:23 <kmc> butts
16:14:40 <AnotherTest> kmc: that seems like the reason why I dislike to use Java
16:15:12 <kmc> yes
16:15:16 <kmc> Java is the #1 culprit here
16:15:30 <kmc> the style Java forces on you is appropriate for some tasks
16:15:34 <kmc> but Java forces it for every task
16:16:03 <kmc> Java sort of exists to tie the hands of good programmers while preventing bad programmers from doing too much damage
16:16:19 <kmc> in order to make creating boring business software a more repeatable process
16:16:59 <AnotherTest> what I dislike in Java code a lot for example is an "Utility class"
16:17:55 <FreeFull> kmc: My first language was C
16:18:04 <FreeFull> And I still use C widely
16:18:31 <kmc> AnotherTest: yeah
16:18:39 <kmc> it's funny because people hold up Java as the pinnacle of OOP
16:18:49 <AnotherTest> indeed
16:18:50 <FreeFull> Lol
16:18:57 <FreeFull> Java as pinnacle of OOP
16:19:02 <kmc> but OOP philosophy would say you should creat objects which model your problem domain
16:19:05 <FreeFull> Smalltalk is the pinnacle
16:19:12 <AnotherTest> Hm.
16:19:21 <FreeFull> Racket is okish
16:19:23 <kmc> whereas in Java you need all these nonsense classes which represent things that would be basic control flow elements in another language
16:20:18 <kmc> shrug
16:20:21 <kmc> this is a canned rant of mine
16:20:24 <kmc> not saying anything new
16:20:31 <kmc> today i went shooting guns for the first time
16:20:41 <kmc> fired a Glock 17, an AK-103, and a pump action shotgun
16:20:46 <kmc> sadly the AK was semiauto only
16:20:55 <kmc> i think it is probably very dangerous to let untrained shooters fire full auto
16:27:29 <Taneb> This day is called the feast of Crispia
16:27:30 <Taneb> n
16:27:42 <Taneb> He that outlives this day and comes safe home
16:27:56 <Taneb> Will stand tiptoe when this day is named
16:28:11 <Taneb> And rouse him at the name of Crispian
16:28:24 <Taneb> He that shall see this day and live to old age
16:28:37 <Taneb> Will yearly on the vigil feast his neighbours
16:28:56 <Taneb> And say "Tomorrow is St Crispian"
16:29:18 <Taneb> Then he will strip his sleeve and show his scars
16:29:39 <Taneb> And say "These wounds I got on St Crispian"
16:36:06 <AnotherTest> taneb
16:36:26 <AnotherTest> Willt thou draw near the nature of the gods?
16:36:47 <AnotherTest> Draw near them then
16:36:52 <AnotherTest> in being merciful
16:37:46 <AnotherTest> sorry that I could not reply to your earlier Richard II
16:37:54 <AnotherTest> my connection was bad
16:38:15 <kmc> THATS NOT IN THE PLAY
16:38:36 <Taneb> I'm more of an Oscar Wilde fan, anyway
16:39:59 <Taneb> Anyway, I'm off now
16:40:02 -!- Taneb has quit (Quit: Dinner).
16:53:47 <FreeFull> kmc: It's very dangerous to let untrained people shoot any gun
16:54:25 <FreeFull> Other than as part of training, with someone watching over them
16:55:59 <kmc> sure
16:56:03 <kmc> i mean, this was kind of training
16:56:08 <kmc> there was a person there telling us what to do
16:56:39 <Phantom_Hoover> <kmc> i think it is probably very dangerous to let untrained shooters fire full auto
16:56:59 <kmc> it still seemed pretty lax compared to what i imagine a first gun course in the USA is like
16:57:02 <kmc> but maybe i imagine wrong
16:57:12 <Phantom_Hoover> I thought full-auto was, like, not useful.
16:57:15 <Phantom_Hoover> Or something.
16:57:27 <kmc> yeah
16:57:32 <kmc> after a few rounds your aim is way off
16:57:42 <Phantom_Hoover> Yes, that one.
16:57:43 <kmc> it's still useful for suppression fire though
16:57:45 <kmc> i imagine
16:57:50 <kmc> (don't actually know anything)
16:57:57 <kmc> i think most militaries encourage the use of 3-round bursts
16:59:13 <kmc> also full auto is good for indiscriminately murdering protesters
17:02:17 <kmc> dinner bbl
17:08:07 -!- lexande_ has quit (Ping timeout: 272 seconds).
17:10:32 -!- derdon has quit (Remote host closed the connection).
17:13:28 -!- AnotherTest has quit (Ping timeout: 245 seconds).
17:18:11 -!- AnotherTest has joined.
17:22:58 -!- AnotherTest1 has joined.
17:23:12 -!- AnotherTest has quit (Read error: Connection reset by peer).
17:23:20 -!- AnotherTest1 has changed nick to AnotherTest.
17:28:30 -!- pikhq has joined.
17:28:53 -!- pikhq_ has quit (Ping timeout: 248 seconds).
17:39:59 <olsner> "There, I just saved you 1 day of WHAAAAAAAAA!" good summary
17:41:13 <ion> Oh, great, now someone’s advocating the shadowing of variables.
17:42:20 <ion> And someone else NIH’d lenses in shkler answer.
17:42:33 <olsner> maybe he means he saved it on stack overflow so that if we ever need "1 day of WHAAAAAAAAA!" we know where to find it
18:09:03 <shachaf> Shadowing is basically mutation.
18:09:16 <shachaf> Why should I have to write my program in SSA form? That's what my compiler is for!
18:12:03 * shachaf tries to wake up.
18:12:16 -!- asiekierka has quit (Remote host closed the connection).
18:17:25 -!- Taneb has joined.
18:37:37 -!- ogrom has quit (Quit: Left).
18:39:41 -!- david_werecat has joined.
18:51:47 -!- TeruFSX_ has quit (Ping timeout: 250 seconds).
19:03:02 -!- zzo38 has joined.
19:29:48 <zzo38> I cannot beat BUZZSAW MCGRAW
19:30:11 -!- AnotherTest has quit (Quit: Leaving.).
19:42:44 <kmc> hichaf
19:43:11 <Taneb> zzo38, is the problem you need to learn the power of friendship?
19:43:51 <zzo38> I doubt that will make any difference here
19:47:52 <shachaf> kmc: hi
19:48:25 * shachaf is about to go off to Berkeley. Will be back $SOMETIME.
19:48:33 <kmc> ooh what's in berkeley
19:49:00 -!- cheater has joined.
19:49:03 <shachaf> $PLAY, $FRIEND, etc.
19:50:45 <kmc> have fun playing with your friend
19:58:59 -!- lexande_ has joined.
20:01:46 <kmc> hi lexande_
20:02:09 <lexande_> hi kmc
20:03:21 <zzo38> I have discussed and changed my digital video signal design to use single signals instead of pairs, so that it has four red, four green, four blue, one clock, one synchronize, one power, and the rest ground, using a twenty-pin cable. The aspect ratio is always a power of 4:3.
20:04:58 <zzo38> So this means two clocks per pixel. A screen of half a pixel means to turn off the picture.
20:07:28 <Taneb> zzo38, power of love?
20:08:00 -!- cheater has quit (Ping timeout: 244 seconds).
20:09:53 -!- lexande_ has quit (Ping timeout: 272 seconds).
20:13:41 <zzo38> Tabeb: ?
20:13:42 -!- david_werecat has quit (Ping timeout: 268 seconds).
20:18:27 <ion> zzo38: The world has pretty much moved to packet-based serial buses even with video.
20:26:16 -!- lexande_ has joined.
20:27:02 <Taneb> zzo38, maybe to defeat Buzzsaw McGraw you first need to defeat yourself
20:33:33 <zzo38> Taneb: I do not get an option to fight myself, it just lists the valid opponents (which changes sometimes) and then you have to pick one. So, there is no option to fight yourself.
20:33:52 <Taneb> zzo38, I'm pretending this is a movie for fun
20:34:02 <Taneb> And I'm your mentor figure or something
20:34:10 <zzo38> OK
20:35:14 <zzo38> ion: What clock speed is needed for that? I think my format is simple and is better.
20:35:52 -!- lexande_ has quit (Ping timeout: 244 seconds).
20:39:59 <ion> zzo38: DisplayPort supports other color spaces than just the limited sRGB, other aspect ratios than just 4:3, stereoscopic images etc. and you can carry protocols such as USB, Ethernet and PCIe over it as well. Wikipedia says the widest and fastest DisplayPort bus achieves 17.28 Gbit/s
20:41:21 <ion> Also, better color resolutions than whatever your limit is.
20:41:43 <zzo38> I think that is too complicated. My system does support aspect ratios other than 4:3 as long as they are a power of 4:3 (so 1:1 and 16:9 are also accepted), but data is only one way, which has some advantages.
20:42:35 <zzo38> My system is 2 clocks per pixel, so it is 24-bit color.
20:43:13 <ion> The most common aspect ratios for movies nowadays are 1.85:1 and 2.39:1.
20:45:24 <zzo38> Why? Well, they can still be used just make part of the screen black (can also be used for status information).
20:47:35 <zzo38> TV screens are going to be 4:3 or 16:9 anyways, and you can use 64:27 if necessary.
20:48:35 <zzo38> But this digital RGB system is also mostly for computers rather than TV, anyways, even though it can be implemented on TV screens too.
20:51:24 -!- oerjan has joined.
21:25:15 -!- FreeFull has quit (Ping timeout: 276 seconds).
21:26:37 -!- FreeFull has joined.
21:29:27 <kmc> zzo38: recognizing a distinction between TVs and computer monitors seems extremely quaint
21:30:03 <Taneb> That reminds me, I need a new computer monitor
21:30:37 <Taneb> Mine is a) 12 years old, and b) broken
21:32:55 <FreeFull> TVs have hardware to allow you to watch images and listen to sounds sent over radio waves
21:33:47 <FreeFull> CRT TVs don't really have the concept of a pixel, LCD and plasma TVs tend to have bigger pixels than computer monitors
21:34:15 <pikhq> FreeFull: A modern TV has hardware to allow you to watch an MPEG-2 bitstream sent over radio waves.
21:34:33 -!- oerjan has quit (Remote host closed the connection).
21:34:48 <FreeFull> pikhq: Which still counts as images and sounds sent over radio waves
21:34:53 <FreeFull> The encoding doesn't matter
21:34:54 <pikhq> As well as hardware to watch a framebuffer sent via HDMI.
21:35:08 <pikhq> Whereas a computer monitor just has hardware to watch a framebuffer sent via HDMI.
21:35:50 <kmc> what about wireless HDMI
21:35:56 <kmc> what about streaming MPEG streams over wifi
21:36:37 <Taneb> Dear god I suck at pop culture
21:36:45 <kmc> also i've seen things which are marketed primarily as computer monitors (small, high dpi) but have a tuner built in
21:38:20 <FreeFull> pikhq: Not necessarily HDMI
21:38:24 <FreeFull> Could be DVI or VGA
21:38:45 <pikhq> FreeFull: Or CGA?
21:38:49 <FreeFull> You could connect old TVs to computers using S-VIDEO
21:39:02 <FreeFull> pikhq: VGA still gets used =P
21:39:19 <FreeFull> My desktop's monitor has a VGA port and DVI port
21:39:38 <pikhq> Yeah, but it's increasingly outdated...
21:40:25 <FreeFull> HDMI and DVI use the same kind of signal so you can buy simple plugs that convert between the two
21:40:37 <kmc> that's not entirely true
21:40:47 <kmc> it's more like, HDMI devices are able to downgrade to the DVI protocol
21:40:49 <kmc> i thought
21:40:53 <coppro> VGA is still common
21:41:00 <coppro> at least, in my experience
21:41:09 <FreeFull> Well, I do think it doesn't work for encrypted stuff
21:41:14 <FreeFull> But yeah
21:41:15 <zzo38> I know you need not distinguish between TV/computer, but you can if you want to. But some devices can act as both.
21:41:25 <FreeFull> This laptop has HDMI and VGA ports
21:41:37 <FreeFull> I guess DVI is too big of a port for laptop nowadays
21:41:51 <FreeFull> Despite my laptop from 2005 having enough space for a printer port
21:41:57 <kmc> thinkpads ship with displayport now
21:41:59 <coppro> it's not that it's too big, it's just that it's uncommon
21:42:11 <kmc> macs have their own micro-displayport or whatever
21:42:15 <coppro> at least, in the average of all laptops that see use
21:42:22 <kmc> VGA is still the common denominator for presentation projectors
21:42:26 <FreeFull> coppro: I never saw a monitor with HDMI rather than DVI
21:42:32 <coppro> DisplayPort is nice
21:42:33 <FreeFull> But I guess I'm outdated
21:42:38 <coppro> FreeFull: I was referring to VGA
21:42:46 <kmc> FreeFull: that's because if it had HDMI, you would call it a television
21:42:46 <kmc> ;P
21:42:56 <Taneb> Wow, on the inside of my mind I've had George Michael mixed up with Guy Fieri all along
21:42:57 <coppro> HDMI costs extra $$ because of HDCP
21:43:00 <zzo38> Modern TV sets take too long for turning on
21:43:18 -!- hagb4rd has quit (Quit: hagb4rd).
21:43:22 <pikhq> kmc: HDMI 1.0 is nothing more than DVI-D with a smaller connector and support in the protocol for audio packets.
21:43:22 <kmc> for a while i ran my monitors through a long DVI-HDMI cable with a HDMI-DVI adapter on one end
21:43:30 <kmc> thus making a DVI-DVI cable
21:44:02 <Taneb> This explains a lot
21:44:04 <kmc> true story
21:44:08 <Taneb> Well, it doesn't.
21:44:09 <kmc> then i found five dollars
21:44:10 <zzo38> I don't like those kinds of display signal (DVI, HDMI, DisplayPort, ATSC) they are complicated and encrypted and have patent issues and so on.
21:44:20 <coppro> DVI isn't
21:44:21 <Taneb> I don't really care who either of those people are
21:44:23 <coppro> at least, not usually
21:44:24 <coppro> it can be
21:44:32 <coppro> same with DisplayPort aiui
21:44:35 <kmc> Taneb: what about George Michael Bluth
21:44:39 <pikhq> zzo38: Technically, HDCP is optional on DVI, HDMI, and DisplayPort.
21:44:47 <coppro> in practice, HDCP is not optional on HDMI
21:44:47 <Taneb> kmc, I care about him even less
21:44:52 <pikhq> zzo38: And ATSC is perfectly in the clear.
21:45:30 <zzo38> Some feature I dislike about ATSC is not only the video/audio codecs, I also dislike virtual channel numbers.
21:45:47 <pikhq> It's not even a ludicrously complicated display signal: it's an MPEG transport stream with quadrature amplitude modulation.
21:47:40 <zzo38> Then why is it so slow? Or is ATSC not what makes it slow?
21:47:44 <ion> “<FreeFull> You could connect old TVs to computers using S-VIDEO” I have a computer connected to my main monitor using S-Video.
21:48:13 <pikhq> zzo38: Yeah, that's a fairly *weird* UI mapping of the fact that a given radio allocation broadcasts its own radio stream, and we call those "channels", and that a given MPEG transport stream can have multiple programs in it, and we would also call those "channels"...
21:48:17 <ion> zzo38: *Everything* has patent issues. Hello World probably has patent issues.
21:48:26 <pikhq> zzo38: ATSC isn't inherently very slow.
21:48:46 <FreeFull> Software patents shouldn't exist
21:48:47 <zzo38> pikhq: Then it must be something else that makes it slow, such as having an operating system or something like that
21:49:00 <pikhq> zzo38: Well. Before you can begin displaying you need to wait for a key frame, but that is literally *all* the lag there is.
21:49:23 <zzo38> Even I have a VCR/DVD combination including ATSC, and it is very slow even if ATSC is not being used.
21:49:49 <pikhq> zzo38: The issue is that a lot of embedded software is developed by idiots.
21:50:05 <pikhq> Which is how we get TVs with bootup times.
21:50:11 <zzo38> O, yes, maybe that is what makes it slow.
21:50:45 <pikhq> Because they run Linux, and... I guess use a "normal" init scheme?
21:50:52 <ion> (Btw, Commodore 64’s almost-S-Video output has *much* better quality than its composite output. That probably applies to all S-Video and equivalent composite signals, but C64 is the only thing whose outputs i’ve compared.)
21:51:16 <pikhq> ion: That should be true of any comparison between something with S-Video and composite out.
21:52:15 <zzo38> Yes it is what I said I think running an operating system (whether it is Linux, Windows, or something else) would make it slow.
21:52:45 <ion> I guess an RGB or YPbPr output would have much better quality again.
21:52:45 <pikhq> zzo38: A Linux system *can* boot in a second or so if you know what you're doing.
21:52:48 <pikhq> zzo38: They don't.
21:53:03 <zzo38> I think one of the fastest operating system is DOS, and there is FreeDOS as well which is also fast.
21:53:15 <pikhq> ion: S-Video has luma on one wire and chroma on another, so you don't have to do any filtering on the signal to get luma and chroma.
21:53:38 <pikhq> ion: Also, S-Video has more bandwidth, so you inherently get a better signal.
21:53:39 <ion> pikhq: Doesn’t the chroma wire encode two signals using modulation?
21:53:54 <pikhq> ion: Yes, U and V.
21:54:11 <ion> Split that into two wires without modulation, i’d expect to see a better picture still.
21:54:20 <pikhq> Yeah, that's called component video.
21:54:39 <ion> So are RGB and YPbPr, that’s why i mentioned them. :-P
21:54:40 <pikhq> And it does give you better picture still.
21:55:08 <pikhq> Specifically, that's YPbPr component video.
21:55:25 <FreeFull> zzo38: DOS doesn't imply MS-DOS
21:55:47 <zzo38> FreeFull: I know, it can be FreeDOS as well, which is just as fast as MS-DOS.
21:57:00 <FreeFull> QDOS, DR-DOS, PC-DOS, PTR-DOS, ROM-DOS, Novell DOS, OpenDOS, many others because a DOS is easy to write
21:57:47 <pikhq> Well, yeah; DOS is little more than a standard library, a shell, and a couple utilities.
21:58:08 <FreeFull> echo, copy, prompt, etc
21:59:41 <ion> AmigaDOS
22:03:47 <FreeFull> AmigaDOS had different commands and syntax
22:04:54 -!- monqy has joined.
22:14:18 -!- epicmonkey has joined.
22:16:43 -!- pikhq_ has joined.
22:18:28 -!- pikhq has quit (Ping timeout: 245 seconds).
22:20:39 <zzo38> Do you know any open source software for emulating NTSC color artifacts?
22:22:24 <ion> I suppose it wouldn’t be too difficult to write a GLSL shader for that.
22:40:47 -!- Taneb has quit (Ping timeout: 256 seconds).
22:45:30 -!- lilja_ has quit (Quit: Leaving.).
23:00:09 -!- epicmonkey has quit (Ping timeout: 276 seconds).
23:04:15 <zzo38> Oops I found something wrong with MediaWiki when cutting off text in the search results it cut off in the middle of a UTF-8 code
23:10:19 -!- derdon has joined.
23:11:38 <augur> http://imgur.com/OcBuk
23:11:42 <augur> deserts! \o/
23:14:08 <Gregor> Hooray for desolation!
23:14:18 <augur> Gregor: hooray for mars :)
23:14:48 <Gregor> Huh. I really wouldn't have guessed. *shrugs*
23:15:56 <augur> :)
23:16:17 <ion> Moar: http://mars.jpl.nasa.gov/msl/multimedia/raw/
23:16:17 <augur> theres something intense about seeing something so mundane
23:16:22 <augur> and knowing its on another planet
23:18:44 <Gregor> augur: I was trying to find a way to express exactly that, and you've done a better job of it.
23:19:30 <augur> Gregor: you're the third person to tell me that
23:20:31 <Gregor> Huh. Well, here's something intense from right here on planet Earth: http://youtu.be/pkV6hX66HO0 http://youtu.be/FvNmA7FSCW0
23:33:37 -!- oerjan has joined.
23:38:13 -!- nooga has quit (Ping timeout: 246 seconds).
23:40:28 -!- Phantom__Hoover has joined.
23:42:24 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
2012-08-13
00:12:46 <pikhq_> Gregor: Quick question: should I switch to aptosid, and if so how best to do so?
00:12:55 <pikhq_> Like, just edit sources.list and dist-upgrade?
00:13:10 <Gregor> I've never tried a switch-over to aptosid, but I can't imagine why it wouldn't work.
00:13:26 <pikhq_> And should I?
00:13:39 <Gregor> I like it. What are you switching from?
00:13:50 <pikhq_> Debian Testing.
00:14:48 <Gregor> Yeah, I'd switch. I've been using Aptosid more-or-less hassle free since before it was Aptosid *shrugs*
00:17:39 * pikhq_ mutters
00:17:40 <zzo38> Did they use the longitude/latitude numbers on Mars, to figure out how to land on Mars? I think they have defined where is zero longitude on Mars by now.
00:17:56 <pikhq_> Dammit Aptosid people, tell me what your sources.list magic is!
00:19:05 <pikhq_> I'm trying to do unconventional things here!
00:19:22 <Gregor> pikhq_: ...
00:19:26 <Gregor> pikhq_: Dude, Download/Mirrors on the left.
00:19:42 <Gregor> It shows them all in terms of the exact lines to add to sources.list
00:23:21 <zzo38> How to cross-platform check for file exist and file size in a C code?
00:26:11 <pikhq_> "Need to get 623MB of archives." Wheeee!
00:27:28 <FreeFull> zzo38: I know with POSIX you're guaranteed to be able to do it, but I don't know if you can if one of your platforms isn't POSIX
00:29:27 <zzo38> FreeFull: This program ought to work on Windows and on UNIX (including Linux). This program also uses SDL, in case that matters at all.
00:34:36 <zzo38> (On Windows, it can be using MinGW and Cygwin, although Cygwin is also UNIX anyways.)
00:38:20 <zzo38> Where is document to explain which of these functions work in what system (MinGW, Cygwin, Linux, etc)?
00:43:04 <pikhq_> Gregor: Did I do this wrong, or is the latest version of Iceweasel in aptosid version 10?
00:43:49 <zzo38> Can stat() be used in MinGW and Cygwin and Linux and FreeBSD?
00:58:12 -!- itidus21 has quit (Read error: Connection reset by peer).
01:05:55 -!- pikhq has joined.
01:09:11 -!- pikhq_ has quit (Ping timeout: 244 seconds).
01:10:18 <pikhq> Welp, new kernel.
01:10:21 -!- pikhq has quit (Client Quit).
01:16:21 -!- pikhq has joined.
01:19:43 <pikhq> Those jerks!
01:19:53 <pikhq> aptosid doesn't enable zram!
01:23:07 <oerjan> now with the nonsense words again
01:23:51 <pikhq> aptosid is a Debian variant, zram is a compressed RAM disk for use as swap.
01:24:25 <pikhq> Back to having a swap partition. :(
01:24:27 -!- Phantom_Hoover has joined.
01:24:27 <oerjan> my comment was really about how they sounded like nonsense :P
01:25:00 <pikhq> At least now I have a kernel sans retarded-broken writeback.
01:26:24 -!- Phantom__Hoover has quit (Ping timeout: 276 seconds).
01:26:27 <oerjan> which reminds me about this i saw linked in a reddit comment http://www.laurenipsum.org/mostly-lost
01:28:33 -!- derdon has quit (Remote host closed the connection).
01:37:27 <pikhq> *And* they didn't enable codel!
01:37:38 <pikhq> These people don't know how to configure a damned kernel.
01:44:42 <FreeFull> zzo38: stat() should work with Cygwin, Linux and FreeBSD fine. Not sure about MinGW
01:45:15 <zzo38> Well, I tried it just now with MinGW and it seems to be working OK.
01:52:27 <Gregor> pikhq: Aptosid doesn't have its own Iceweasel; it doesn't have most packages, just fixes. The latest version is whatever's in Debian sid (assuming you correctly switched testing->sid too)
02:33:36 <pikhq> Gregor: I did.
02:33:51 <pikhq> Gregor: I was under the impression it might have upgraded some silly-old packages still.
02:34:56 <pikhq> Gregor: Ah, whatever, I don't use it as my primary browser anyways.
02:34:59 <Gregor> It's pretty hands-off.
02:35:16 <Gregor> *gives self points for not typing “hooves-off”*
02:41:53 * Phantom_Hoover sees someone on the internet arguing that Modern Warfare 3 is morally abhorrent because the button you press to kill a sleeping guard is the one most games use for miscellaneous interactions like flipping switches.
02:42:19 <Phantom_Hoover> I can't even mock it properly.
02:46:58 -!- Phantom_Hoover has quit (Quit: Leaving).
02:51:19 * oerjan notes the following reddit title "So excited for the showers tonight! :D (First picture I've ever taken)."
02:52:13 <oerjan> links to this http://imgur.com/lYxEr
02:56:01 <oerjan> it's understandable that they had to disable the downvote button in that subreddit.
02:58:52 <zzo38> Is it pretty hooves-off too or only hands-off?
02:59:48 <oerjan> i don't know
03:01:08 <oerjan> it has nothing to do with ponies, anyhow
04:02:46 -!- oerjan has quit (Quit: Gah headache).
04:21:10 -!- amberdawn has joined.
04:21:26 -!- amberdawn has changed nick to Zelinc.
04:22:43 <zzo38> What is the best C code to convert the NES/Famicom attribute table address to the address of the tile which it affects?
04:24:06 -!- Zelinc has changed nick to amberdawn.
04:24:08 <pikhq> f(){*NULL;}
04:24:16 -!- amberdawn has left.
04:25:22 <zzo38> This is stupid why must the bit select operation be only for INTERCAL?
04:26:16 <zzo38> And also bit unselect operation which not even INTERCAL includes.
04:27:10 <pikhq> Huh, bit select seems like a generally useful operator.
04:27:44 <zzo38> pikhq: Yes, I agree.
04:28:04 <pikhq> I mean, it's slightly weird I guess, but that's actually something I could see myself using in real code.
04:28:21 <zzo38> Yes I would use it too.
04:29:37 <zzo38> But sometimes the reverse operation can be useful too
04:30:58 <zzo38> While writing Famitile I already found at least three uses of this bit select operator and its reverse.
04:34:09 <FreeFull> What does bit select do again?
04:35:08 <pikhq> FreeFull: n `select` mask is *kinda* like n | mask, except instead of the 0 bits in the mask being 0 in the result they are non-existent.
04:35:27 <pikhq> So, 101 `select` 100 = 1, instead of 100.
04:35:40 <FreeFull> So it's like an and and a right shift
04:35:57 <FreeFull> Except more
04:36:28 <FreeFull> So would 1101 `select` 1011 be 101
04:36:53 <pikhq> Yes.
04:37:00 <FreeFull> Interesting
04:37:08 <zzo38> What could be used here is the reverse bit select of 0x1DC, I think.
04:37:14 <FreeFull> Shouldn't be too hard to code
04:37:52 <zzo38> FreeFull: INTERCAL has that operation built-in. Other programming languages don't have that, and I know of no machine code having such instruction either.
04:37:53 <FreeFull> I really wish C had native rotate and reverse bits
04:38:36 <zzo38> FreeFull: Yes it can be useful to do so.
04:38:38 <FreeFull> zzo38: ARM has an instruction that takes an offset and number of bytes to extract, but that would only work for a continuous group of bytes
04:38:44 <FreeFull> s/bytes/bits/
04:38:46 <FreeFull> Brain sleepty
04:44:46 <FreeFull> UBFX and SBFX
04:44:51 <FreeFull> U is unsigned, S is signed
04:45:06 <FreeFull> BFX is bit field extract
04:45:48 <FreeFull> There is also bit field insert
04:46:51 <FreeFull> Anyway, it wouldn't be too hard to write a function selectBits(int x, int y);
04:47:57 <zzo38> But it might be too slow
04:48:04 <FreeFull> Well, you'd probably want uint64_t selectBits(uint64_t x, uint64_t y);
04:48:11 <FreeFull> Wouldn't be any slower than intercal =P
04:48:57 <zzo38> Actually C-INTERCAL includes optimization files, so yes it would be slower than INTERCAL.
04:49:47 <FreeFull> Have you tested a well written selectBits() function against C-INTERCAL's `select` then?
04:56:46 <zzo38> No but it seems like it would be slower. Probably if the right operand is a constant it would be done better using other stuff. If the right operand is not constant then that is different.
04:57:13 <zzo38> But probably either way is slower than if there was a machine instruction for that purpose.
05:00:49 * Sgeo sads at the Bloom tutorial assuming I have a Bloom repl open
05:01:30 <FreeFull> The compiler would probably optimise it into some inline ands, ors and shifts
05:01:55 <FreeFull> I don't think x86 has an instruction that would correspond to select
05:02:41 <zzo38> Yes, they would do it like that, if it is constant.
05:04:05 <FreeFull> If not constant then probably some unrolled loop
05:04:06 <pikhq> FreeFull: x86 prefers to add instructions for crc32.
05:04:28 <pikhq> As well as memcpy.
05:04:43 <FreeFull> Well crc is cyclic redundancy check
05:04:51 <pikhq> memcpy can be *branchless* on x86.
05:05:12 <FreeFull> pikhq: For any size?
05:05:15 <pikhq> Yes.
05:05:20 <pikhq> rep movsb
05:05:43 <FreeFull> Oh yeah
05:06:00 <FreeFull> mov ecx, -1
05:06:02 <FreeFull> rep movsb
05:06:03 <FreeFull> bam
05:06:46 <zzo38> Things like "'.1~.1'~#1" in INTERCAL might become (!!r1) in C, and "'.1~.1'~#2" indicates that the value of register 1 is neither zero nor a power of 2.
05:06:58 <pikhq> Though a more efficient implementation will use rep movsd or rep movsq to deal in 32-bit or 64-bit quantities at a time, and then copy any left-over bytes...
05:07:05 <pikhq> Still ridiculous.
05:08:06 <FreeFull> Why is it ridiculous?
05:08:52 <FreeFull> Copying happens a lot in some contexts, so it made sense for the x86 people to add in the string instructions
05:09:27 <FreeFull> And rep is pretty clever
05:10:12 <FreeFull> Why would someone have to do x: movsb loop x when rep movsb will do the same thing much quicker
05:11:02 <pikhq> Because that has actually no relation with how the CPU works at all.
05:12:05 <FreeFull> Well, if you're copying from memory to memory
05:12:15 <FreeFull> There isn't much reason for the data to go through the CPU
05:12:37 <pikhq> Where the hell else would it go? Memory isn't magic.
05:12:43 <pikhq> (though friendship is)
05:14:36 <FreeFull> Through a dedicated memory chip?
05:14:52 <pikhq> What, you mean a CPU?
05:15:51 <FreeFull> A CPU is for computation
05:16:44 <FreeFull> Well, I guess the northbridge is integrated into the CPU nowadays
05:16:48 <FreeFull> But it used to be separate
05:17:03 <zzo38> Then they should make it faster by allowing you to put your own microcodes in and modify them at runtime, and including the instructions from esolangs Muxcomp and Checkout, as well.
05:17:06 <pikhq> It was also little more than a translator between the CPU bus and the RAM bus.
05:17:07 <FreeFull> It only got integrated in in 2011
05:17:22 <pikhq> Much earlier if you use AMD.
05:17:36 <FreeFull> My point is that a CPU is much faster than RAM
05:17:59 <FreeFull> So while RAM is being copied, it can do something else
05:18:20 <pikhq> So rep movsb is wasted silicon, because actually doing the operations that it's doing in microcode takes no more time?
05:18:26 <pikhq> Thank you, I agree. :P
05:20:15 <pikhq> Also, the CPU might be much faster than RAM, but the RAM is only operating in terms of "load $small_amount $address" and "write $small_amount $address".
05:20:40 <pikhq> ($small_amount on modern systems being 64 bits)
05:21:29 <pikhq> And what better to deal with the need to emit the fetches and writes to gradually incrementing addresses than the processor?
05:22:05 <pikhq> Especially keeping in mind that cache also comes into play here, and that's controlled entirely *in* the processor.
05:22:58 <FreeFull> Why would the data go into the cache when the processor isn't actually doing anything with it, just moving it around?
05:23:56 <pikhq> Even if *somehow* by *magic fairy dust* it can "not do anything" but "move it around", *cache still comes into play*. Cache coherency, have you heard of it?
05:24:52 <pikhq> Basically, the cache in the CPU must correspond to the actual state of RAM, otherwise you get incorrect behavior.
05:25:24 <FreeFull> You're right
05:26:00 <pikhq> Having an external thing handling the memory means either the CPU's basically blocking on that external thing or it's constantly getting cache invalidations over the bus.
05:26:00 <FreeFull> So if cache is pointing at a piece of ram that you're copying to, you need to update, otherwise you can keep the cache as it is
05:26:54 <pikhq> And in any case any writes to either area of memory will have to block on it in order for semantics to be preserved.
05:27:22 <pikhq> This is a *lot* of silicon that would be wasted for a dubious optimization.
05:27:38 <pikhq> And silicon space is a lot of what a CPU design actually optimizes for.
05:28:21 <FreeFull> What, not erasing cache when the cache isn't pointing at RAM that's being modified?
05:29:09 <pikhq> Blocking on the memory copy when you try writing over its source or destination before the memory copy is complete.
05:29:26 <pikhq> Merely only invalidating certain cache lines isn't *that* hard.
05:30:20 <zzo38> But what happen if it is RAM being modified by other devices or it is not RAM but is connected to something else instead?
05:30:21 -!- Phantom_Hoover has joined.
05:30:51 <pikhq> zzo38: Cache invalidation happens, and if you happen to be modifying RAM being modified by other devices your code breaks.
05:31:04 <pikhq> zzo38: The issue is, the second bit *is impermissible for memcpy()*.
05:31:35 <pikhq> FreeFull: Anyways, this is Premature Optimization.
05:32:12 <pikhq> FreeFull: If you show me a program where fast memcpy would make it much faster, I'll show you a program authored by a moron.
05:32:27 <zzo38> I mean the memory might be connected to I/O and ROM and timers and stuff instead of only being RAM.
05:33:59 <FreeFull> pikhq: In olden times, you'd want your memcpy to be as fast as you could go for graphics purposes, but I imagine nowadays graphics cards have their own inbuilt internal memory routines, and it doesn't matter as much
05:34:58 <FreeFull> zzo38: I don't think the CPU caches non-RAM though, does it?
05:35:10 <FreeFull> Maybe it could cache the ROM
05:35:11 <pikhq> In olden times, if you used memcpy for your graphics routines you were stupid.
05:35:46 <FreeFull> pikhq: So how are you supposed to display the same thing in two places on the screen then
05:36:22 <zzo38> I don't know much about CPU cache. But I suppose yes it could be designed to cache ROM, as long as it is not bank-switched, I guess.
05:36:47 <FreeFull> Well, if you're reading a lot from ROM for some reason, it makes sense to cache it
05:36:53 <pikhq> Pssst, memcpy doesn't help that much with that, and if you need to display something other than a rectangle in two different places *you can't use memcpy anyways*.
05:37:19 <FreeFull> pikhq: You copy linewise
05:38:13 <pikhq> Yes, and congrats, you're using memcpy with fixed small size meaning it's very fast and probably doing it on memory that's cache which means it's fast anyways.
05:38:18 <pikhq> And you're still copying a rectangle.
05:38:55 <pikhq> It is very rare that you want to display a rectangle at multiple points in the screen.
05:39:08 <FreeFull> It happens
05:40:37 <pikhq> And it's still premature optimization. Also, your utterly psychotic plan to have external hardware do the memcpy instead would only even be *faster* than the CPU just doing it if the amount to copy is large and/or not in cache anyways...
05:40:40 <FreeFull> Although now the graphics card would probably do a lot more of the heavy-lifting
05:41:02 <pikhq> If it's small and in cache, the CPU is also the cheapest thing to do it. Like, a dozen clock cycles or so.
05:41:20 <FreeFull> pikhq: I failed to consider that you'd need to keep the cache coherent
05:41:45 <pikhq> Which is almost enough time to emit a single fetch to RAM.
05:43:08 <FreeFull> Separate hardware would probably only make sense with a CPU that has no cache, only registers
05:43:45 <pikhq> And is designed to maximize performance, rather than cost/performance ratio.
05:44:08 <Phantom_Hoover> <pikhq> It is very rare that you want to display a rectangle at multiple points in the screen.
05:44:15 <Phantom_Hoover> Um...
05:44:30 <pikhq> Phantom_Hoover: Sprite drawing is what you want to be fast.
05:45:03 <pikhq> At least, on old stuff like that.
05:45:12 <Phantom_Hoover> Oh wait you mean two dynamically updated rectangles.
05:45:18 <Phantom_Hoover> Not backdrops or anything.
05:45:21 <pikhq> Also *scrolling*.
05:46:30 <pikhq> Well, yeah, just drawing a backdrop is done once, unless you're scrolling the screen or something. ... In which case you actually want your graphics hardware to be able to do that for you on a slow system.
05:47:52 <FreeFull> I thought those old graphics cards only support vertical scrolling
05:48:48 <pikhq> Which is why you didn't see scrolling platformers on those systems.
05:49:01 <pikhq> The NES, for instance, did both.
05:49:32 <FreeFull> Well, the NES was made for games
05:49:46 <pikhq> Y'know, the thing where 2D graphics performance matters.
05:50:28 <FreeFull> IBM PCs ended up with games rather coincidentally, so initally didn't have specialised hardware for game stuff
05:51:11 <pikhq> They also were profoundly limited by the platform until CPU speed went high enough that a framebuffer was actually reasonable for it.
05:51:57 <pikhq> (the NES *did not actually expose a framebuffer*, and neither did other consoles of the day)
05:52:10 <FreeFull> Well, there was Mode X, which allowed you to touch four pixels at once
05:53:51 <zzo38> But it may be possible to make up a NES mapper hardware for exposing a framebuffer. MMC5 does a few things with the PPU nametables so possibly can be done other things, too.
05:54:24 <FreeFull> You can look at whatever NES demosceners do
05:55:01 <pikhq> Lots of clever tricks with the sprite and background tiles.
05:55:23 <pikhq> And, of course, changing the palletes.
05:55:39 <zzo38> Yes they do those things too.
06:25:01 <fizzie> FreeFull: You can do "hardware-accelerated" horizontal scrolling also with VGA, it's just slightly trickier. (Basically, twiddle the row pith register to get some invisible working room, increment/decrement the starting address by one to scroll right/left by 4 pixels, and use the Horizontal Pixel Panning register to scroll by 0..3 pixels to make it smooth.)
06:27:07 <fizzie> (As opposed to vertical scrolling which is just a matter of changing the starting offset.)
06:29:06 -!- nooga has joined.
06:31:17 <pikhq> fizzie: Oh, hey, that actually does work. Barely.
06:34:17 <fizzie> And what's this about a "psychotic plan" to have external hardware do a memcpy so that the CPU doesn't need to bother; isn't that pretty much exactly what DMA controllers are? (Okay, so they are mostly involved in I/O contexts, but you can do memory-to-memory DMA too. E.g. Intel has the http://en.wikipedia.org/wiki/I/O_Acceleration_Technology thing on their mobos for offloading memory copying.)
06:36:43 <pikhq> fizzie: He was suggesting it as an implementation of rep movsb.
06:37:04 <pikhq> fizzie: Y'know, the memcpy opcode.
06:37:43 <pikhq> You could do it, but there is no way you would want it for memcpy, and it could not sanely have the expected semantics of memcpy.
06:38:16 <fizzie> Well, okay, that'd be kind of weird.
06:38:34 <pikhq> We weren't talking the concept of memcpy, but literally void *memcpy(void *dest, const void *src, size_t n);
06:39:04 <pikhq> Yup.
06:40:37 <fizzie> I had a look at the glibc x86-specific memcpy a while ago. It's amusingly complicated.
06:41:41 <pikhq> I bet it's also amusingly inefficient.
06:42:02 <Phantom_Hoover> Does it, like, special-case memory based on the first byte of the address because of some esoteric, tiny hardware effect?
06:42:02 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
06:42:23 <pikhq> glibc is practically based on premature optimization and pessimization.
06:47:15 <zzo38> Actually I am currently writing a program for NES graphics, it is almost finish first version.
06:48:31 -!- zzo38 has quit (Remote host closed the connection).
06:48:49 <fizzie> Not the first byte, but I guess you could say it special-cases on the last byte since SSE-based copying is oh-so-fast when dealing with 16-byte aligned stuffs.
06:49:02 <fizzie> And the GCC builtin memcpy is not much less complicated.
06:50:13 <pikhq> fizzie: It's probably faster to just rep movsd or rep movsq. Certainly going to be quicker if memcpy is only occasionally called, in which case the impact on cache from the code matters...
06:51:41 <Phantom_Hoover> http://en.wikipedia.org/wiki/Hopf_link
06:51:52 <Phantom_Hoover> Wow, that's quite a thing to have named after you.
06:52:52 <fizzie> I'm pretty sure they *do* do benchmarks with approximates-real-world-code uses, not just guess.
06:52:55 <fizzie> The GCC folks, at least.
06:54:53 <pikhq> The GCC folks perhaps. The glibc folks have had "performance improvement" commits that don't even function correctly.
06:55:10 <pikhq> Much less work faster.
06:57:11 <olsner> IIRC, the performance of rep movs compared to fancy memcpys have varied between "just as fast" and "ridiculously slow", depending on the cpu model
06:57:19 <olsner> it is still short though
06:58:49 <pikhq> And that matters heavily on modern systems.
06:59:12 <pikhq> If the disparity between RAM and CPU speed grows much more we might start switching to threaded code just to use less RAM.
07:04:57 <olsner> if the compiler just had any clue about which code to bother with, it would be free to do that for all the code that isn't run often
07:05:36 <olsner> a modern cpu is basically a jit compiler though, so maybe it could just do that all the time
07:06:21 <pikhq> The CPU would still have to fetch the code.
07:06:27 <pikhq> *Which is the slow part*.
07:11:00 <olsner> hmm, is all non-size optimization already pessimisation then?
07:11:58 <fizzie> I highly doubt you could have a rule like that.
07:12:58 -!- asiekierka has joined.
07:14:41 <fizzie> I haven't e.g. heard of ICC giving up loop unrolling completely; if only code size mattered, that'd be an obvious pessimization.
07:15:20 <fizzie> ICC's -O1: "Optimize to favor code size and code locality. Disables loop unrolling. -O1 may improve performance for applications with very large code size, many branches, and execution time not dominated by code within loops. In most cases, -O2 is recommended over -O1."
07:15:39 <fizzie> (-O2 is still the default.)
07:15:56 <asiekierka> so i overpaid for a Mac Classic ._.
07:15:58 <asiekierka> oh well
07:16:22 <asiekierka> at least it has a beta System Software (one that's not available anyone else)
07:18:29 <olsner> loop unrolling could expose e.g. vectorization or merge several loop iterations into one operation, and the compiler can undo it after it notices nothing happened except code getting duplicated (not sure if it does though)
07:18:32 <pikhq> fizzie: It's somewhat more complex than *always* being a pessimization, it's just that it *often* is...
07:19:18 <pikhq> fizzie: And if your goal is good software, not just FAAAST -funroll-all-loops!!!, then it's a pessimization for other factors your care about.
07:19:50 <pikhq> Like "being able to come back to it three months later and change something".
07:20:32 <fizzie> Uh.. why would loop unrolling by a compiler affect the maintainability of the source code?
07:20:46 <pikhq> fizzie: Sorry, I wasn't referring to loop unrolling in specific, but code size in general.
07:20:54 <pikhq> fizzie: Which the human writing source code has impact on.
07:21:10 <pikhq> My mind went off on a slightly different context than, uh, conversation would suggest.
07:21:21 <olsner> and I think the performance hit for fetching instructions is per cache line, so if you replace 1 byte of code with <32 bytes of faster code it might still pay off
07:22:10 * olsner does some handwaving and says something about caches
07:22:26 <pikhq> olsner: True, a cache line is effectively the minimum level of granularity for this purpose.
07:23:50 <olsner> assuming the loop runs for long enough that it ends up worth evicting some other code from the cache and loading it from RAM later
07:24:50 <pikhq> olsner: Simply loading it evicts something else, doesn't it?
07:26:06 <olsner> yes, and something always needs to be loaded... but if the code was "1 byte", there'd be 31 bytes left in that cache line that can be used for other things, and some reduction in eviction and loading
07:29:01 <olsner> I wonder how you could measure the amount of instruction-cache misses that are caused by bloated optimized code
07:30:09 <fizzie> By measuring cache misses with and without various optimizations, and comparing the numbers?
07:31:23 <olsner> yeah, but without recompiling everything :)
07:33:00 <fizzie> That's not much of a chore if you're serious about benchmarking. (Anyway, you can measure by Googling for someone who has already done it.)
07:36:26 <fizzie> (Sadly, first I hit found which compared miss rates with different GCC optimization levels was from 1995, that's not so very current.)
07:36:37 <fizzie> (I'll have to get going, I think.)
07:36:37 <kmc> i prefer to answer all performance questions according to a 1970's model of compilers and computer architecture, with zero empirical data
07:37:37 <olsner> I prefer to use plain old guessing
07:38:08 <fizzie> olsner: I prefer to call that the Stetson-Harrison method.
07:38:34 <olsner> I'm guessing that's a fancy name for guessing then
07:38:55 <kmc> also good fun is complaining about which C code will produce "more instructions" in a context where performance is completely irrelevant
07:38:59 <kmc> and also without reading the disassembly
07:39:32 <fizzie> olsner: It's a name for "pulling numbers out of a hat", really.
07:39:46 <fizzie> Not related, but see editor's note and coauthor list: http://www.improbable.com/airchives/classical/articles/peanut_butter_rotation.html
07:39:51 <olsner> sometimes you will find that introducing actual information into a discussion will quickly make it boring
07:41:14 <kmc> it's still a stretch to say that modern CPUs are JIT compilers, though
07:41:17 <kmc> as far as i know
07:41:35 <kmc> JITs will compile an entire function or a trace at once, and apply nonlocal optimizations within that
07:41:42 <olsner> yeah, it's a bit of an exaggeration
07:41:47 <kmc> CPUs only look ahead some number of instructions
07:41:57 <kmc> it's a reasonably fair exaggeration though
07:42:02 <kmc> and counteracts some pervasive myths
07:42:39 <kmc> man i kind of like programming on AVR where it actually just executes each instruction in order at a deterministic rate with no cache or anything
07:42:47 <olsner> I guess it's more like an on-the-fly translation with a cache, peephole optimizations and some reordering of instructions
07:43:11 <kmc> yeah
07:43:56 <Phantom_Hoover> Was there some sort of new cookie legislation passed lately?
07:44:03 <kmc> in the UK yeah
07:44:17 <kmc> sites have to get your permission to set cookies
07:44:20 <fizzie> Phantom_Hoover: Yeah, chocolate-chips now require a registration.
07:44:26 <kmc> cause it's not like web browsers already let you control who can set cookies
07:44:32 <olsner> cookie legislation made me think about that cake/biscuit lawsuit
07:44:33 <fizzie> (It's like owning a gun.)
07:44:44 <Phantom_Hoover> Remind me what evil things cookies can do again.
07:45:33 <olsner> this one claims >15.3% of time spent waiting for icache fills: http://ha.redhat.com/support/wpapers/redhat/OProfile/oprofile.pdf
07:46:17 <olsner> that seems to be from 2002, so it was basically produced last year
07:47:35 -!- AnotherTest has joined.
07:47:45 <AnotherTest> hello
07:47:58 <fizzie> Ten years, one year: no difference.
07:48:05 -!- AnotherTest has left.
07:48:07 -!- AnotherTest has joined.
07:48:12 <fizzie> It's comparing GCC 2.95 and 3.1, that's very current indeed.
07:48:18 <fizzie> (What are they at now, 4.7?)
07:48:24 <AnotherTest> Yes 4.7
07:48:30 <olsner> The Matrix was released a year ago in 1998, so last year is at least 14 years long
07:48:48 <fizzie> olsner: Also doesn't compare between optimilization levels. :/
07:57:18 <shachaf> kmc: Back from Berkeley!
07:57:22 <shachaf> I'd forgotten how nice it was.
07:57:36 <kmc> it is?
07:57:41 <kmc> it's all right, I guess
07:57:54 <kmc> maybe you should tell me why it's nice and I will hack my next trip to berkeley using this information
07:58:49 <shachaf> Maybe I just have low standards coming from (E)PA.
07:59:06 <shachaf> All I did was see part of a play and walk around.
07:59:36 <fizzie> Some people suggested I should spend 6-9 months at http://www.icsi.berkeley.edu/icsi/ but I skippeded it. :\ :/
08:00:14 <fizzie> (They have some sort of a collabomaration project at the university.)
08:00:33 <shachaf> collaboomerang
08:03:28 <kmc> where did you walk around?
08:03:43 <kmc> east bay is all right but it reminds me too much of los angeles
08:03:49 <kmc> also athens reminded me of los angeles
08:04:05 <shachaf> Downtownish area.
08:04:07 <kmc> perhaps my principal component for cities is "how much is it like los angeles"
08:04:16 <shachaf> I was in Los Angeles a long time ago.
08:04:26 <shachaf> I don't remember much.
08:04:57 <shachaf> Maybe I should go there sometime.
08:05:13 <kmc> maybe you should go to helsinki instead
08:05:21 <kmc> preferably tomorrow or wednesday
08:05:27 <shachaf> That's farther away.
08:05:37 <kmc> true
08:05:42 <shachaf> I could be in Los Angeles tomorrow pretty easily if I wanted to.
08:05:55 <kmc> one day you'll be able to take Supertrain to los angeles
08:05:55 <shachaf> I could probably also be in Helsinki within 24 hours if I really really wanted to.
08:06:13 <kmc> "as your attorney i advise you to rent a very fast car with no top"
08:07:17 <kmc> one day you'll be able to smoke pot and get gay married on supertrain
08:07:21 <kmc> but no happy meals
08:07:29 <fizzie> One day you'll be able to take a Supertrain to Helsinki.
08:07:40 <fizzie> A supersonic, flying Supertrain.
08:07:43 <kmc> from tallinn? i hope so!!
08:07:53 <kmc> i proposed that railway here yesterday
08:08:18 <shachaf> Oh, you were proposing a superrailway? I thought it was just a regular railway.
08:08:24 <shachaf> Maybe supertrains go on regular railways.
08:08:45 <kmc> it would be a Train à Grande Vitesse
08:08:46 * shachaf recalls that kmc cares more about train infrastructure than about trains themselves.
08:08:52 <kmc> that's accurate
08:08:53 <shachaf> j #mosh
08:08:56 <shachaf> Hmm.
08:09:04 <shachaf> My secret is revealed!
08:09:12 <coppro> kmc: you should come to canada and fix our rail system
08:09:15 <kmc> supertrain of the short lived awful 1979 tv show did not run on regular railways
08:09:16 <fizzie> The... uh, if the channel-tunnel is the chunnel... the HellTunnel? Yeah, that sounds about right. So the helltunnel's been proposed a few times in a reasonably serious manner, also somewhat recently. (Not so seriously that they'd actually get around building it, though.)
08:09:39 <kmc> but supertrain my idiosyncratic name for california high speed rail will run on pretty standard high speed rail lines
08:09:55 <fizzie> They went as far as to calculate some prices, came up with 1.1-1.6 billion euros in 1997.
08:09:57 <kmc> which is to say overhead electrified standard gauge track, grade separated and with wide curves
08:10:03 <shachaf> kmc: By that day it seems pretty likely that I won't be living in the bay area anymore.
08:11:17 <shachaf> kmc: If I go to Helsinki by Wednesday maybe I could mean KeithW.
08:11:46 <shachaf> Probably going to Boston would be an easier way to do that.
08:12:12 * shachaf doesn't have anything in particular to say to KeithW, though.
08:12:38 <kmc> coppro: is that more feasible than fixing the us rail system
08:12:40 <fizzie> I think there's a "fast train" kind of route being planned/under construction/something like that from Tallinn to Warsaw these days; that has sort of re-aroused interest in the Tallinn tunnel.
08:12:51 <fizzie> Rail Baltica, yes.
08:13:27 <fizzie> "Rail Baltica is one of the priority projects of the European Union: Trans-European Transport Networks (TEN-T). The project is supposed to link Finland, the Baltic States and Poland and also improve the connection between Central and Eastern Europe and Germany. It envisages a continuous rail link from Tallinn (Estonia), to Warsaw (Poland), going via Riga (Latvia) and Kaunas (Lithuania). It ...
08:13:33 <fizzie> ... will by-pass the Kaliningrad Oblast (Russia) and Hrodno (Belarus) where the two historic rail routes Poland-Lithuania have been going."
08:13:37 <fizzie> That thing.
08:13:50 <fizzie> (It'll just be ferries for the Helsinki-Tallinn part so far, but maybe one day!)
08:13:50 <kmc> yeah
08:13:54 <kmc> it might be freight-only :/
08:14:31 <shachaf> Ferries are pretty good.
08:14:44 <kmc> wow, baltic countries don't even use standard gauge
08:14:45 <shachaf> But kmc prefers railways to water.
08:14:49 <kmc> they use russian gauge not surprisingly
08:14:54 <kmc> i like ferries too
08:15:18 <kmc> this trip has involved a fair number of ferries
08:15:39 <shachaf> WA has a bunch of ferries.
08:16:08 <fizzie> We had a Helsinki-Stockholm-Copenhagen-Amsterdam-and-so-on trip few summers ago, and it does take quite a long time to get the Helsinki-Stockholm-Copenhagen part done, mostly due to the slow boats.
08:16:35 <fizzie> Stockholm-Copenhagen trains were those very futuristically named "X2000" ones.
08:16:57 <kmc> shachaf: I took a train on a boat once!
08:17:21 <fizzie> (At least in 1990 "2000" was presumably futuristic.)
08:17:40 <kmc> København to Berlin train
08:18:01 <shachaf> Something like http://upload.wikimedia.org/wikipedia/commons/4/43/Woodf3a.jpg ?
08:18:10 <shachaf> kmc: Did you read _Three Men in a Boat_?
08:18:13 <kmc> no
08:18:21 <shachaf> You should read that book!
08:18:33 <kmc> that's a nice picture
08:18:33 <shachaf> It's good.
08:18:53 <fizzie> VR (the Finnish railway company) has deals called "BoatTrain", but I think it only means a discount for the train trip from wherever you happen to be to the harbour where the ships leave from.
08:19:09 <shachaf> It's from 1889 so you can get the text for free, too.
08:19:58 <kmc> i got one of those deals for my Dublin → Slough trip
08:20:06 <kmc> shockingly good deal
08:20:16 <kmc> it was €52 for the ferry and british rail ticket together
08:20:24 <kmc> compared to like £70 for the latter alone
08:20:34 <shachaf> http://www.gutenberg.org/ebooks/308
08:20:58 <shachaf> I think it's famous in Russia for some reason.
08:21:29 <fizzie> Our BoatTrains are just 50% off for the train ticket if you have a (regularly purchased) boat ticket.
08:22:52 <kmc> gutenberg.org gives a 403 if i use wget
08:23:14 <kmc> happily they serve a zip of the html version
08:23:20 <kmc> but i still can't wget it >_<
08:23:27 -!- AnotherTest has quit (Quit: Leaving.).
08:23:54 <fizzie> That's funny, I think I wget'd a whole lot of Gutenberg (maybe a mirror?) back when doing some text analysis stuff.
08:24:07 -!- AnotherTest has joined.
08:24:08 <kmc> well, did you lie about the user agent? ;)
08:24:42 <fizzie> No, I don't tihnk so.
08:24:46 <fizzie> http://www.gutenberg.org/wiki/Gutenberg:Information_About_Robot_Access_to_our_Pages
08:25:12 <fizzie> Come to think of it, I think I used the rsync method described in the mirroring page.
08:25:39 <shachaf> Their robots.txt does say crawl-delay: 2
08:25:57 <fizzie> Anywy, I'm sure you can wget from the ftp://ftp.ibiblio.org/ URLs. (Don't know if they generate any links there though.)
08:26:06 * shachaf is becoming increasingly frustrated.
08:26:09 <shachaf> That's probably not good.
08:26:18 <kmc> frustrated with what?
08:26:51 -!- epicmonkey has joined.
08:27:06 <shachaf> Just general frustration.
08:27:39 <shachaf> "life" or something.
08:31:20 -!- liljuska has joined.
08:34:01 <kmc> ah
08:34:10 <kmc> i feel like that sometimes
08:44:49 -!- AnotherTest has quit (Ping timeout: 265 seconds).
08:48:17 -!- derdon has joined.
08:49:15 -!- Taneb has joined.
08:54:39 -!- itidus21 has joined.
08:59:23 -!- Taneb has quit (Ping timeout: 272 seconds).
09:01:03 -!- Taneb has joined.
09:03:28 -!- Taneb has quit (Client Quit).
09:03:29 <kmc> shachaf: do you want my half-baked advice?
09:04:42 <shachaf> kmc: Sure!
09:10:04 <itidus21> i rode a train today. i had hot chips and a coffee, and i positioned myself to eavesdrop on an old man talking to a railway employee about a scheduled train not running due to vandalism
09:10:17 <kmc> traveling and change of scenery
09:10:24 <kmc> are both good for not being generally frustrated
09:10:34 <kmc> well, in particular if you have no clear reason to be frustrated
09:10:44 <kmc> if you're frustrated because of some significant problem in your life, that's different
09:11:07 <shachaf> That's probably good advice.
09:11:20 <kmc> it's probably eventually correct
09:11:47 <kmc> i also recommend psychedelic drugs for more or less the same reason
09:11:52 <kmc> change of internal scenery, or something
09:11:58 <kmc> not so much the visual, but metaphorically
09:12:21 <kmc> itidus21: Hot Chip is a good band
09:12:24 <kmc> itidus21: which train was not running?
09:12:28 <itidus21> hmm
09:12:30 <itidus21> the....
09:12:52 <itidus21> 3:52pm train from melbourne flinders street to pakenham
09:12:57 <kmc> shachaf: do you have a job these days? do you like your job?
09:13:09 <kmc> australia eh
09:13:17 <itidus21> yup
09:13:19 <kmc> it's, like, winter there
09:13:22 <kmc> how's that going
09:13:39 <shachaf> kmc: No job these days.
09:13:58 <itidus21> my psychologist encouraged me to get a jacket drycleaned
09:14:12 <shachaf> Perhaps I should get one.
09:14:38 <itidus21> yeah, therapy is pretty cool if it's free
09:14:48 <Phantom_Hoover> itidus21, dry cleaning salesmen make poor psychologists.
09:15:25 <kmc> perhaps
09:15:36 <kmc> are you looking for a job?
09:15:42 <itidus21> well i was walking along in this jacket the other day and some woman in an SUV said get a job you bum
09:15:51 <kmc> i like xkcd today
09:15:54 <kmc> haha itidus21
09:16:18 <itidus21> its amazing the adventures that happen when you go out
09:17:08 <shachaf> kmc: Not actively but maybe I will soon.
09:17:31 <kmc> ok
09:17:43 <kmc> a friend of mine just quit his job
09:17:46 <itidus21> there was this guy who was begging for change with an elaborate story spoken quickly. he got $2 from me, and i saw two other guys hand him some kind of money eventually
09:17:46 <kmc> as in today is his last day
09:18:21 <kmc> he says the younger employees understand why he's doing it
09:18:28 <kmc> and the older employees think he's totally crazy for quitting without another job lined up
09:18:40 <Phantom_Hoover> itidus21, one of Jon Ronson's old Guardian columns has him being groomed by a conman for 2 hours at an airport for $60.
09:18:46 <kmc> my friend is young and doesn't have kids and has savings and is a rails developer in SF
09:18:49 <kmc> so i think he will do ok
09:18:50 <Phantom_Hoover> He ended up giving it to him out of pity.
09:19:07 <kmc> $30 an hour ain't bad!
09:19:18 <kmc> wonder what the actual rate is, with downtime
09:19:58 <itidus21> in a rapid delivery he explained without pausing for a breath that he's not after cigarettes, that he needs $1.40 for a bus, something about having trouble with a flatmate, that if he sees me sometime he'll give me a few $
09:21:03 <itidus21> then he walked off.. and i saw him approach 2 people before going inside the shopping center, then later coming out and approaching another and going back in
09:22:20 <itidus21> shopping centre is what they call a mall here i think
09:22:48 <itidus21> they might use both.....
09:23:52 <shachaf> Maybe I should do the university thing.
09:24:03 <shachaf> There are complications involved, of course.
09:25:32 <itidus21> there was also this girl busking with hoop dancing
09:25:42 <kmc> shachaf: do you have a bachelor's degree already?
09:25:50 <Phantom_Hoover> I don't think that counts as busking.
09:25:53 <shachaf> No.
09:26:14 <itidus21> i guess. she wasn't very talented either. but points for trying
09:26:30 <Phantom_Hoover> Over here the buskers all play bagpipes.
09:26:31 <kmc> hoop dancing is cool
09:26:32 <Phantom_Hoover> It's horrible.
09:26:41 <itidus21> i gave her $5
09:26:43 <kmc> i heard that busking licenses are graded by instrument
09:26:48 <kmc> and that bagpipe license is the most expensive
09:27:11 <kmc> in New York there are a lot of guys who breakdance on the floor of moving subway trains
09:27:13 <itidus21> Phantom_Hoover: is that for the tourists?
09:27:18 <kmc> occasionally a rider gets kicked in the face
09:27:22 <itidus21> yeah... theres guys here busking with didgeridoos
09:27:29 <kmc> in Boston they have this too except that it's just one particular guy who is everywhere
09:27:39 <Phantom_Hoover> itidus21, presumably, because you'll never find anyone doing it except on Princes Street.
09:27:41 <itidus21> i saw some of them
09:27:55 <kmc> there's a guy who plays bagpipes in FiDi in SF
09:27:59 <kmc> i don't know if he's busking or what
09:28:41 <Phantom_Hoover> He should probably pay passersby.
09:28:59 <itidus21> there was also a guy with an accordian if i recall
09:29:17 <itidus21> thats part of the fun of going to the city
09:29:25 <kmc> in new york you also see people busking with some kind of traditional chinese string instrument
09:29:28 <kmc> which sounds awful
09:29:42 <itidus21> ^accordion
09:29:54 <shachaf> kmc: Which kind?
09:30:00 <shachaf> Is it the two-string thing?
09:30:08 <kmc> and people doing traditional chinese singing in the park, which also sounds awful
09:30:09 <Phantom_Hoover> So my image of the cities of Australia is a load of empty streets crammed with buskers and conmen.
09:30:12 <kmc> shachaf: maybe?
09:30:13 * shachaf tries to recall what that's called.
09:30:16 <kmc> it's like an upright thing with a bow
09:30:25 <itidus21> Phantom_Hoover: ahh well the conman was in a suburb :P
09:30:35 <shachaf> Erhu, that's it.
09:30:45 <shachaf> https://en.wikipedia.org/wiki/Erhu
09:30:51 <itidus21> i havent actually ever been asked for money by a stranger in melbourne proper
09:30:55 <kmc> maybe they just aren't very good
09:31:04 <Phantom_Hoover> It's like a violin but half as good.
09:31:07 <kmc> or maybe i'm secretly racist :(
09:31:17 <shachaf> Clearly the optimal instrument should have one string.
09:31:28 <kmc> shachaf: yeah, i think it was that
09:31:44 <kmc> food, bbl
09:31:45 <shachaf> kmc: I saw one played once and it seemed OK.
09:31:52 <shachaf> Then again, it was played by a violinist.
09:31:55 <itidus21> Phantom_Hoover: but yes... guys on street corners selling magazines that people only buy to support the people selling em
09:32:02 <Phantom_Hoover> No, the optimal instrument is the zither.
09:32:19 <itidus21> and buskers.. and otherwise people sitting and eating.. or bustling down the street
09:32:20 <kmc> the optimal instrument is the ondes Martenot
09:32:41 <itidus21> oh and trams!
09:32:42 <Phantom_Hoover> The optimal instrument is the hyperbass flute.
09:33:04 <itidus21> whenever you want to cross the road in melbourne you gotta watch out for trams
09:33:43 <Phantom_Hoover> We don't have trams in Edinburgh.
09:33:47 <Phantom_Hoover> Though we're meant to.
09:34:00 <itidus21> it's a prominent part of the experience
09:34:01 <kmc> you have to watch out for buses anyhere
09:34:03 <kmc> anywhere*
09:34:11 <kmc> and trams are like buses except that they move more predictably
09:34:16 <kmc> though i guess they are quieter
09:34:29 <itidus21> kmc: but these trams they're really packed into a small area
09:34:37 <kmc> yeah trams can be longer too
09:34:38 <kmc> it's true
09:34:49 <itidus21> uh i mean the timing
09:34:59 <itidus21> humm
09:35:02 <kmc> i rode a 6 car tram in budapest
09:35:08 <kmc> longest in the world
09:35:13 <itidus21> ill have a look on googlemaps
09:35:51 <kmc> going to go to lunch and then tallinn
09:35:52 <kmc> ttyl
09:41:21 <itidus21> i guess it's that the tram infrastructure makes them quite prominent.. with the rails, and the sheltered seating
09:43:00 <itidus21> from WP "The largest cable system in the world, in the city of Melbourne, Victoria, Australia, had at its peak 592 trams running on 74 kilometres of track."
09:43:50 -!- AnotherTest has joined.
09:44:00 <AnotherTest> hello
10:23:57 -!- epicmonkey has quit (Ping timeout: 276 seconds).
10:39:10 -!- derdon has quit (Remote host closed the connection).
11:30:14 -!- ais523 has joined.
11:31:52 <coppro> kmc: not really
11:31:58 <ais523> you know what? Microsoft have some of the sanest terms of use and license agreements I've ever seen
11:31:58 <lambdabot> ais523: You have 1 new message. '/msg lambdabot @messages' to read it.
11:32:10 <coppro> except we aren't wuite ao allegic to government
11:32:19 <ais523> my guess is, because they get sued so often they have to make absolutely sure there's nothing in there that might bring the whole agreement down
11:32:22 <ais523> @messages
11:32:23 <lambdabot> quintopia said 1d 12h 12m ago: I needed to know the "official" way of making colored text on mediawiki for Talk:BF_Joust_Strategies
11:33:05 <kmc> itidus21: cable-pulled cars?
11:33:14 <kmc> do they have those still?
11:35:21 <kmc> ah not since 26 October 1940
11:35:49 <kmc> SF is the only city to still run cable cars in normal traffic i think
11:35:50 -!- epicmonkey has joined.
11:54:10 -!- augur has quit (Remote host closed the connection).
11:55:44 -!- augur has joined.
11:56:42 -!- ais523 has quit.
11:56:51 -!- ais523 has joined.
12:00:01 -!- augur has quit (Ping timeout: 245 seconds).
12:00:27 <nortti> http://patriciopalladino.com/blog/2012/08/09/non-alphanumeric-javascript.html
12:01:21 -!- boily has joined.
12:03:23 -!- ais523 has quit (Read error: Connection reset by peer).
12:03:26 -!- ais523_ has joined.
12:03:42 -!- ais523_ has changed nick to ais523.
12:11:30 <kmc> not sure if dead pixel or unusual diacritic mark
12:29:06 -!- augur has joined.
12:39:52 -!- pikhq has quit (Quit: leaving).
12:55:33 <kmc> i wonder how secure my disk encryption passphrase should be
12:55:41 <kmc> the one i have now is quite long and annoying to type
12:57:34 -!- boily has quit (Quit: Poulet!).
12:59:25 <kmc> i'm mainly interested in keeping laptop thieves from being able to read my data
12:59:39 <kmc> and expect that a random laptop thief will not try extremely hard
12:59:47 -!- boily has joined.
13:00:00 <kmc> so i think it does not need to be very secure at all
13:02:31 <kmc> there's no reason it shouldn't just be my login password
14:02:42 -!- lexande has joined.
14:11:31 -!- Taneb has joined.
14:39:22 -!- TodPunk has quit (*.net *.split).
14:39:22 -!- atehwa has quit (*.net *.split).
14:39:22 -!- HackEgo has quit (*.net *.split).
14:39:22 -!- EgoBot has quit (*.net *.split).
14:39:22 -!- SimonRC has quit (*.net *.split).
14:39:22 -!- ssue has quit (*.net *.split).
14:39:22 -!- shachaf has quit (*.net *.split).
14:39:22 -!- comex has quit (*.net *.split).
14:44:58 -!- TodPunk has joined.
14:44:58 -!- atehwa has joined.
14:44:58 -!- HackEgo has joined.
14:44:58 -!- EgoBot has joined.
14:44:58 -!- SimonRC has joined.
14:44:58 -!- ssue has joined.
14:44:58 -!- shachaf has joined.
14:44:58 -!- comex has joined.
14:50:14 -!- derdon has joined.
15:07:49 -!- canaima172423 has joined.
15:08:47 -!- augur has quit (Read error: Connection reset by peer).
15:08:58 -!- augur has joined.
15:09:06 <canaima172423> olle tienes residen evill 4 en psp 2
15:15:35 -!- canaima172423 has left.
15:19:03 -!- ais523 has quit (Ping timeout: 276 seconds).
15:19:50 <itidus21> olle olle, olle olle
15:20:10 -!- augur has quit (Ping timeout: 244 seconds).
15:20:12 <Gregor> esoteric = Español… oteric.
15:21:20 <itidus21> i suspect any word beginning with es is curious
15:22:15 <Gregor> That's just the establishment talking.
15:23:57 <itidus21> when i started googling for such words i encountered esne
15:24:01 <ion> Essentially yes.
15:24:07 <itidus21> which reminds me of a certain esolang
15:24:31 <ion> Googling? grep '^es' /usr/share/dict/american-english-huge
15:24:52 <itidus21> i don't have a grep
15:25:41 <itidus21> as for usr.. i suspect i have about 10 of them
15:25:44 <itidus21> all for me
15:26:04 <itidus21> with unusual names
15:27:06 <itidus21> the windows file hierarchy starts off good enough C:\Documents and Settings\
15:27:16 <itidus21> and at about that point its all fucked up
15:28:09 <Gregor> Oh, Windows users.
15:28:12 <Gregor> They try so hard.
15:29:52 <itidus21> wtf is UpdatusUser
15:29:56 <itidus21> this doesn't look good
15:30:41 <itidus21> oh i get it now
15:30:51 <itidus21> i freaked out because i got my graphics card on my birthday
15:31:08 <itidus21> and it was therefore a folder created on my birthday
15:39:24 <kmc> hello from Estonia
15:43:05 -!- augur has joined.
15:49:16 -!- elliott has joined.
15:49:29 <elliott> Who do I usually bother for git help again?
15:49:35 <kmc> #git
15:49:36 <elliott> I think it was Deewiant.
15:49:38 <elliott> kmc: No way!
15:49:40 <elliott> That's uncool.
15:49:50 <kmc> no, bother #git and then talk smack about them behind their backs here
15:49:54 <kmc> that's the way
15:50:10 <elliott> That's like ~2.5x as much effort though.
15:50:21 <elliott> Maybe even 2.75.
15:50:24 <kmc>
15:50:45 <kmc> shachaf: I'm reading the thing you told me to read!
15:50:56 <kmc> lexande also told me to read it (separately)
16:15:21 * kmc can sometimes provide git help, as well
16:18:07 <elliott> Too bad, I solved it without the aid of anyone Finnish or called kmc!
16:18:16 <elliott> I thought it impossible.
16:21:38 <Taneb> elliott, if you ever have any problems with git again, just remember I am not the person you want
16:21:42 <Taneb> By a long way
16:23:35 -!- zzo38 has joined.
16:29:06 <kmc> what was the question, out of curiosity
16:30:45 -!- epicmonkey has quit (Ping timeout: 248 seconds).
16:31:13 <kmc> www.quora.com/Palo-Alto-CA/Why-are-there-so-many-questions-about-Palo-Alto-CA
16:32:30 <elliott> amazing
16:32:52 <elliott> kmc: the related questions are good too
16:32:54 <elliott> also the question was
16:33:12 <elliott> if i've merged something in a way that produces a merge commit and i oops'd and actually wanted it to be a rebasey merge so the merge commit was gone how can i do that
16:33:20 <elliott> the answer is start over using pull --rebase this time and perform the merge by hand again
16:33:33 <elliott> or use someone's shell script that trains this git rerere thing and i stopped reading at that point
16:34:46 <kmc> yeah
16:35:16 <kmc> i would just reset to the point before the merge, and then cherrypick my work from after that
16:35:20 <kmc> which amounts to the same thing
16:36:38 -!- aloril has quit (Ping timeout: 244 seconds).
16:37:02 <kmc> i don't know what git rerere is
16:39:01 <lexande> elliott: is kmc an honourary Finn?
16:39:32 <Gregor> Everyone in this channel who isn't from Hexham is a Finn. Not honorary or otherwise, just a Finn.
16:40:31 <elliott> lexande: No. Someone is an honorary Finn, but I completely forget who.
16:40:56 <elliott> lexande: maybe it's you???
16:41:13 <zzo38> Stop!
16:41:16 <zzo38> OK, now continue.
16:41:38 <Taneb> MC Hammer's not so good first draft of his song
16:41:42 <lexande> not me
16:42:09 <Taneb> Is it Fungot?
16:42:17 <lexande> though I will be in Finland tomorrow
16:42:38 <Taneb> You are... American?
16:43:15 <lexande> yes
16:43:42 <kmc> "Stop!.... Continue!" is an Electric Six lyric
16:44:14 <kmc> from "Improper Dancing"
16:44:37 <elliott> kmc: By the way, why is make so bad?
16:44:48 <kmc> i don't have an answer to that
16:45:15 <elliott> :/
16:45:18 <lexande> are there better make replacements?
16:45:26 <elliott> lexande: I quite like tup
16:45:30 <Phantom_Hoover> good things are banned to start with
16:45:32 <elliott> It isn't perfect, though.
16:45:37 <Phantom_Hoover> thats why bad things always have the lead
16:45:39 <elliott> http://gittup.org/tup/
16:47:07 <Taneb> You know what annoys me?
16:47:27 <Taneb> On Facebook, it suggest articles. But to look at them, I have to let Yahoo post on my wall
16:47:56 <lexande> or google the headline
16:48:18 <Taneb> Oh, that's a good idea
16:49:11 <kmc> what does tup have to do with git?
16:50:01 <elliott> It has nothing to do with git, but gittup has to do with both tup and git: http://gittup.org/gittup/
16:50:09 <kmc> TCP is not really working on this connection
16:50:47 <Taneb> lexande, the article was awful, why did I bother
16:50:48 <elliott> I'll just quote the best bit for you:
16:50:50 <elliott> "Yeah, I'm marf. Yeah, my computer is captainfalcon. Yeah, I just edited the spellcasting in nethack because I felt like it. Then I changed ls to print "Sup bro, way to list those files", because I like to be encouraged when I list things, and because I like it when people call me "bro"1. Then I re-compiled both and got a new initrd in like two seconds. Go ahead -- try to change the ls on your system to print out extra messages for no reason!2 Yo
16:50:51 <elliott> u can't do it!! Unless of course you're running gittup.org. But if you're running gittup.org, why aren't you playing nethack or needlessly recompiling things just for fun? In fact, how are you reading this webpage?? It doesn't even come with a web browser."
16:51:39 -!- aloril has joined.
16:52:17 <kmc> lockamee i'm zany and wacky
16:52:22 <kmc> bacon ninja bros
16:52:39 <kmc> i bet this person writes a lot of ruby
16:52:40 <elliott> piffle
16:52:42 <lexande> elliott: does the http://www.jerkcity.com/jerkcity490.html strategy work with tup?
16:52:51 <elliott> gittup is cool and tup is cool and mike is cool and you are bitter
16:53:25 <elliott> lexande: there is someone with the nick bonghitz in a channel i am in
16:53:26 <elliott> maybe i should ask them
16:53:28 <lexande> kmc, the thing elliott pasted didn't seem all that formulaic
16:53:43 <kmc> elliott: i'm just taking the piss mate
16:53:52 <kmc> (been traveling with british people for 3 weeks, this is how i talk now)
16:54:02 <lexande> kmc thinks i'm british
16:54:03 <kmc> i think all four of those claims are likely true
16:54:14 <kmc> lexande: you are british when you are around actual british people
16:55:22 -!- madbr has joined.
16:56:44 <kmc> speaking of ninja
16:56:49 <kmc> i wonder how tup compares to ninja
16:56:54 <elliott> ninja was inspired by tup
16:57:00 <kmc> ok then
16:57:01 <elliott> ninja is probably worse though
16:57:03 <elliott> except for some use-cases
16:57:10 <elliott> because the building-the-build-system thing is kind of a pain in practice
16:57:21 <elliott> I have a patch in ninja because I wanted to use it to build Haskell code
16:57:23 <kmc> so why did the ninja developer(s?) decide tup wasn't adequate
16:57:27 <elliott> tup can't manage that right now
16:57:30 <kmc> heh
16:57:32 <elliott> because of the multiple output files
16:57:42 <kmc> huh
16:57:48 <kmc> multiple output files are not rare
16:57:55 <elliott> well, it's not so much multiple output files as the kind of
16:57:57 <kmc> latex and lex/yacc both come to mind
16:57:59 <elliott> pseudo-separate compilation GHC has
16:58:08 <elliott> where it's sort of separate compilation but not really
16:58:15 <kmc> what's special about it?
16:58:17 <elliott> kmc: anyway ninja was just intended to be incredibly fast and "trivial" I think
16:58:24 <kmc> right
16:58:39 <kmc> ninja wants you to specify the dependency graph in a very explicit form
16:58:40 <elliott> despite this it still supports variables for no apparent reason
16:59:16 <elliott> let me try and find the discussion on the tup list
16:59:20 <nortti> gittup seems pretty awesome
17:00:17 <kmc> why do you say ghc's separate compilation is 'pseudo'
17:00:21 <elliott> kmc: here: https://groups.google.com/group/tup-users/browse_thread/thread/62eacaa9a22d9965/38468408c8b1aafb
17:00:28 <elliott> that will probably explain it better than I could over IRC
17:00:33 <elliott> but GHC does not have fully separate compilation
17:00:36 <elliott> because there are dependencies on interface files
17:00:38 <elliott> which is the whole issue
17:01:59 <elliott> frankly the only reason I am not using tup for my current use case is because its output is quite ugly right now :p
17:02:12 <elliott> (it overdoses a bit on the ANSI colour)
17:02:28 <kmc> haha
17:02:35 <kmc> pipe to cat, problem solved
17:02:49 <elliott> i actually like its progress bars and some of the colour, it just overdoes it
17:02:50 <kmc> (surely it doesn't print color codes when stdout isnotatty, right?)
17:02:54 <elliott> it doesn't
17:02:56 <elliott> afaik
17:02:59 <elliott> I don't even know what it does when you pipe it to cat
17:03:13 -!- ogrom has joined.
17:03:58 <kmc> is there a particular reason why you consider "don't need to have compiled dependencies first" to be fundamental to the idea of separate compilation?
17:04:27 <elliott> that's more or less my definition of fully separate compilation :P
17:04:39 <kmc> yeah but is there some particular reason to take that definition
17:04:57 <kmc> it seems like a severe restriction
17:04:59 <elliott> well, something like C is distinctly more "separate" than Haskell in terms of how you can compile it
17:05:07 <elliott> it seems reasonable to have a term to distinguish the two
17:05:15 <kmc> and i'd rather have GHC's approach compared to C or ML where you're expected to duplicate information in a header file
17:05:21 <elliott> sure
17:05:27 <elliott> not saying fully separate compilation is the right trade-off
17:05:31 <kmc> ok
17:05:37 <elliott> but, relevantly, it makes building quite a bit simpler
17:05:47 <kmc> also you could write a haskell compiler which just parses imported sources and doesn't require the .hi
17:05:53 <kmc> but it wouldn't ddo things like cross-module inlining
17:05:53 <elliott> yes, you could
17:05:56 <elliott> but it would be slow and bad
17:06:07 <kmc> yeah
17:06:35 -!- madbr has left.
17:07:25 <kmc> if only ghc --make supported parallel builds
17:08:01 <kmc> Haskell and GHC are equal parts "advanced technology from the future" and "embarassingly behind the times"
17:08:04 <kmc> it's pretty amusing
17:08:28 <kmc> or you know, adjust the word "equal" to suit your attitude, i don't really care
17:08:29 <elliott> kmc: the idea was to make a tool which wrapped around cabal
17:08:29 <Phantom_Hoover> It's like how the Martians in War of the Worlds hadn't invented the wheel.
17:08:37 <elliott> by telling it "ghc" was actually my-ninja-using-ghc
17:08:42 <elliott> which would basically get the list of modules it gives
17:08:50 <elliott> make a ninja build file for them that uses non --make ghc
17:08:52 <elliott> and then run it
17:08:56 <kmc> Phantom_Hoover: evolution hasn't invented the wheel, either!
17:08:59 <kmc> there are no animals with wheels
17:09:01 <elliott> but then I lost interest and gave up : )
17:09:10 <Phantom_Hoover> what about flagella
17:09:15 <kmc> what about them
17:09:50 <Phantom_Hoover> they're basically very broad-rimmed, narrow wheels
17:10:00 <kmc> they roll along their axis?
17:10:11 <Phantom_Hoover> um kmc have you ever heard of the flywheeel
17:10:13 <kmc> but they can't spin indefinitely, right?
17:10:14 <Taneb> That's more like a propeller, aren't they?
17:10:25 <kmc> like as many degrees as you like in one direction
17:10:28 <Phantom_Hoover> Taneb, propellers are wheels with bits cut off.
17:10:40 <Phantom_Hoover> kmc, nope, they have unrestricted rotation.
17:10:41 <Taneb> They're used for a different purpose
17:11:02 <Phantom_Hoover> I defer you to my earlier remark on the flywheeel.
17:11:22 <Taneb> But answer this...
17:12:03 <Taneb> ...nah, I can't think of a question
17:12:15 <kmc> propellers are wheels with bits put on
17:12:19 <kmc> OR DID I JUST BLOW YOUR MIND
17:12:30 <kmc> Phantom_Hoover: that's cool
17:12:33 <elliott> oh hey
17:12:40 <elliott> I just remembered make -jN is totally broken
17:12:42 <elliott> awesome
17:12:52 <Taneb> Broken in your favour?
17:12:54 <elliott> no
17:12:58 <Taneb> :(
17:13:29 <Phantom_Hoover> kmc, it's also essentially a modified intercellular syringe.
17:13:33 <elliott> monqy: maybe we should switch to aimeka
17:13:34 <elliott> oops
17:13:35 <elliott> aimake
17:14:18 <monqy> whats that
17:14:24 <monqy> aside from a build system i mean
17:14:31 <Phantom_Hoover> ai-complete make, i presume
17:14:47 <nortti> ai make
17:15:09 <elliott> monqy: the build system ais523 wrote for nethack 4
17:15:13 <Phantom_Hoover> just be careful that the ai makes don't rise up and start trying to unmake their human masters
17:15:14 <elliott> the idea is that you just run it and it figures out everything itself
17:15:19 <elliott> which means it works on nethack 4
17:15:22 <elliott> and doesn't seem to work on anything else
17:15:39 <monqy> beautiful
17:15:44 <monqy> we should use it
17:15:49 <elliott> also it's all one gigantic perl script
17:15:51 <elliott> in one file
17:15:57 <monqy> 10:15:39 <monqy> beautiful
17:15:57 <monqy> 10:15:43 <monqy> we should use it
17:16:05 <elliott> i think i tried to build 41qys-crawl with aimake once but it broke
17:16:07 <elliott> so maybe we can't :(
17:17:49 <Taneb> Does the ai stand for ais523?
17:18:23 <elliott> no it stands for AI
17:18:39 <elliott> kmc: so if TCP isn't working are you using mosh
17:18:43 <elliott> great advertising there
17:20:13 <elliott> note to self: @printf '\e[5;37;40;1m $(CXX) \e[0;37;1m $<\e[0m\n'
17:21:57 <zzo38> Do you know what way to convert to/from NTSC composite signals? Should ImageMagick have a command to do such things?
17:24:07 <elliott> yes
17:24:12 <elliott> to the second one, I mean!
17:25:10 <elliott> kmc: do you know any way to use make -jN and still get error messages that aren't lines and lines away from the compilation command
17:27:47 -!- Taneb has quit (Ping timeout: 244 seconds).
17:35:54 -!- epicmonkey has joined.
17:47:11 <quintopia> oh
17:47:13 <quintopia> hi
17:48:43 <olsner> one does not simply hi into #esoteric
17:48:52 <olsner> (hi)
17:49:02 <quintopia> what did i miss
17:49:33 <olsner> any day now, Gregor will implement the new rule that anyone who says hi will be kickbanned
17:49:46 <copumpkin> hi
17:49:57 <olsner> otoh, he might still be too busy admiring his pants
17:50:00 <quintopia> hi copumpkin
17:50:02 <Gregor> Implementing the rule is easy, but I don't have ops.
17:50:07 <Gregor> And yes, I do have pants.
17:50:11 <Gregor> Glorious, glorious pants.
17:50:21 <quintopia> hi Gregor
17:50:26 <quintopia> hi Gregor's pants
17:50:38 * Gregor 's pants say, “Hello!”
17:50:50 <quintopia> oh my. talking pants
17:50:57 <quintopia> i have been bested
17:51:19 <quintopia> i mean, i knew your pants were loud, just not articulate
17:51:59 <Gregor> They're pretty amazing pants.
17:52:15 <quintopia> what's that? couldnt hear that over your pants
17:52:24 <Gregor> http://www.solidcolorpants.com/servlet/the-3669/Purple-Dress-Pants-Trousers/Detail <-- this shall be next. Isn't this the most amazing pants color EVER?
17:53:09 <olsner> EGGPLANT PURPLE
17:53:29 <Gregor> They may advertise it as eggplant, but that ain't no eggplant.
17:53:47 <quintopia> the domain name suggests they might not be the most amazing color
17:54:02 <quintopia> the most amazing colors involve color combinations
17:54:05 <quintopia> aka pinstripes
17:54:12 * quintopia looks
17:54:39 <Gregor> quintopia: Although I would pay almost any price for pink and light blue angle-striped pants, I have something of a commitment to solid colors in my wardrobe as a whole.
17:54:46 * quintopia looksh thats eggplant
17:54:58 <quintopia> what
17:55:04 <quintopia> stupid up button :P
17:55:15 <quintopia> yes that's definitely eggplant
17:55:53 <Gregor> Although I'm sure there are eggplants available in that color, I would say it's a very poor choice of color name.
17:56:20 <quintopia> say what you like
17:56:39 <quintopia> no one will be able to hear you over EGGPLANTS FOR LEGS
17:56:49 <Gregor> I find this completely acceptable.
17:59:22 <boily> the new eggpants 2012! they burn through your retinas in 5 seconds flat!
17:59:44 <quintopia> hi boily
17:59:47 -!- ais523 has joined.
18:00:05 <quintopia> would you not say that that color is precisely aubergine boily?
18:00:34 <quintopia> hi ais523 bye ais523
18:01:08 <boily> quintopia: yeah, but I wouldn't be able to make bad puns as easily as with "eggplant".
18:01:29 <boily> besides, hi quintopia!
18:01:29 -!- Taneb has joined.
18:01:42 <boily> (I say hi! in defiance of any vague kickban threats!)
18:07:47 -!- zzo38 has quit (Remote host closed the connection).
18:08:22 -!- nortti_ has joined.
18:11:01 -!- nortti has quit (Ping timeout: 248 seconds).
18:11:59 -!- nortti has joined.
18:15:02 -!- nortti_ has quit (Quit: Found terminal).
18:19:13 <Gregor> boily: There's no threat since I don't have ops ;)
18:24:16 -!- nortti has quit (Ping timeout: 240 seconds).
18:29:45 <Phantom_Hoover> Gregor, didn't you have ops for a while.
18:36:03 <Gregor> Nope.
18:36:20 -!- nortti has joined.
18:40:11 <Phantom_Hoover> What about that campaign to give you voice, I was fully behind that.
18:40:48 -!- ogrom has quit (Read error: Connection reset by peer).
18:41:06 -!- ogrom has joined.
18:44:13 -!- Taneb has quit (Ping timeout: 244 seconds).
18:46:37 <Gregor> lol
18:48:08 -!- oonbotti has quit (Remote host closed the connection).
18:49:11 <Phantom_Hoover> ais523, req. that Gregor be given voice.
18:50:01 <Sgeo> Gregor hates ops in rooms where everyone is given ops.
18:51:52 <Gregor> I have an aversion to normalcy.
18:52:08 -!- oonbotti has joined.
18:52:30 <Phantom_Hoover> So having voice would fix that!
18:52:50 <Gregor> I hae no aversion to being given +v, it just seems unlikely is all :)
18:56:46 <Gregor> *have
18:59:25 -!- augur has quit (Remote host closed the connection).
19:01:30 <Gregor> Luckily, my bright yellow pants are like an antinormalcy booster shot.
19:02:31 -!- Taneb has joined.
19:03:15 <Phantom_Hoover> Gregor, never underestimate the power of DEMOCRACY
19:03:38 <Phantom_Hoover> Taneb, will you join my campaign to give Gregor voice.
19:07:30 <shachaf> kmc: Which thing?
19:11:42 -!- oonbotti has quit (Quit: oonbotti).
19:12:13 <AnotherTest> are we voting for something :D?
19:12:15 -!- oonbotti has joined.
19:12:25 <AnotherTest> I vote against, invariant of the subject!
19:15:21 <Taneb> Phantom_Hoover, what campaign
19:15:27 <Taneb> Why is Gregor mute?
19:15:47 <Taneb> GREGOR DRINK SOME HONEY WHISKEY MIXTURE!
19:16:04 <Phantom_Hoover> Nonono, I mean the IRC mode.
19:16:17 <Taneb> Oh
19:16:30 <Taneb> Gregor, you can still drink some honey whiskey mixture, if you want to
19:16:34 <Phantom_Hoover> The one that lets you talk if +m is on (+m is never on).
19:16:36 <Taneb> And it's legal where you are
19:16:54 <Taneb> Phantom_Hoover, sure, I'll support your campaign
19:17:09 <FreeFull> voice also allows you to talk when banned
19:17:12 <Phantom_Hoover> Yessss.
19:17:21 <FreeFull> Or that might be only op
19:17:29 <FreeFull> Idk, this calls for a test
19:17:30 <Taneb> Is this across all IRC or just this channel?
19:17:48 <Phantom_Hoover> OK, I change the motion to: Gregor gets voice, banned.
19:18:45 <Gregor>
19:19:09 <Taneb> Wow, Gregor is mute!
19:19:16 <Gregor> !!!
19:19:22 <Taneb> GREGOR DRINK THAT HONEY WHISKEY MIXTURE STAT
19:24:17 -!- ogrom has quit (Read error: Connection reset by peer).
19:28:56 -!- asiekierka has quit (Quit: Connection reset by PO).
19:39:39 -!- AnotherTest has quit (Quit: Leaving.).
19:43:30 <kmc> shachaf: Three Men in a Boat (To Say Nothing of the Dog)
19:43:50 <kmc> elliott: redirect stdout, maybe?
19:44:05 <kmc> elliott: yes, i'm using Mosh, and yes I know it's advertising ;)
19:47:02 <shachaf> kmc: No context in here, but did you read this story-thing by Ted Chiang? http://www.clarku.edu/welcome/placement/pdf/reading.pdf
19:47:12 -!- zzo38 has joined.
19:47:37 <kmc> will read
20:11:10 <zzo38> To read what one?
20:14:48 <shachaf> zzo38: Good point.
20:16:19 <kmc> shachaf: have read now
20:16:21 <kmc> cool
20:16:25 <kmc> where did you find it?
20:17:13 <shachaf> In a book, http://www.amazon.com/Stories-Your-Life-Others-Chiang/dp/1931520720
20:18:15 <kmc> cool
20:18:17 <kmc> books are neat
20:19:43 <kmc> the grpuabybtl gung znxrf fbzrbar va n ivqrb hahfhnyyl crefhnfvir is a plausible and frightening idea
20:20:09 <olsner> frightening indeed
20:20:19 <elliott> imo kdjfoiw owijer nfoaijg joiw owejf
20:20:32 <kmc> amazing
20:20:55 <olsner> oh, is it rot13 or somesuch popular crypto?
20:22:39 <kmc> yes
20:22:44 <kmc> rot13, standard for hiding spoilers
20:22:57 <kmc> don't know what elliott is saying
20:23:48 <elliott> i smashed my keyboard randomly
20:23:52 <elliott> imo you should use rot14 instead
20:24:12 -!- liljuska has quit (Quit: Leaving.).
20:24:30 <kmc> how come
20:25:05 <olsner> to hide the spoilers from people who've learned to read rot13 by heart, of course
20:29:11 <kmc> elliott: that's pretty good random smashy
20:29:17 <kmc> in that i can't tell immediately what layout you use
20:31:53 <Taneb> Qwerty UK, I believe, although he was going to switch to Dvorak iirc
20:32:00 <shachaf> Looks like QWERTY to me.
20:32:17 <olsner> but with above-average row switching for "random" smashing
20:32:29 <shachaf> kjio are contiguous, for instance.
20:32:46 <Taneb> hfawiulevghubaweyvgjuh
20:32:48 <kmc> ok
20:32:50 <shachaf> Of course I don't know any layouts other than QWERTY.
20:33:35 <shachaf> Good to know that I have a /usr/games/rot13
20:33:42 * shachaf wonders why games go in /usr/games.
20:33:56 <Taneb> Because you don't put games in the bin.
20:34:25 <olsner> rot13 is just tr 'a-z' 'n-za-m'
20:34:27 <kmc> apparently you can see finland from the tallinn tv tower
20:34:50 <kmc> traznzam
20:35:05 <elliott> kmc: it's qwerty
20:35:08 <elliott> i have no plans to switch to dvorak
20:35:09 -!- hagb4rd has joined.
20:35:21 <olsner> kmc: oh, that's almost transam
20:35:23 <elliott> ewofji oeorkf oisrjefj oijeoijewf jjfrkoa owjef
20:35:31 <elliott> basically i just rest my two hands and dance them simultaneously
20:35:40 -!- Taneb has changed nick to atriq.
20:35:46 <atriq> Hey, not registered
20:36:05 <kmc> elliott: you should switch to colemak, then you can be smug at dvorak and qwerty users
20:36:09 <elliott> atriq: /nick Gnaro
20:36:11 <kmc> i.e. the vast vast majority of people
20:36:12 <elliott> it's taneb in rot13
20:36:15 <elliott> kmc: Deewiant uses Colemak!
20:36:20 <elliott> it seems like a pretty good layout
20:36:22 <kmc> but are they smug
20:36:27 <atriq> elliott,, think about this one
20:36:31 <elliott> Deewiant doesn't need to be smug
20:36:46 <kmc> does colemak come installed on major OSes?
20:36:51 <kmc> i think Ubuntu has it these days
20:37:01 <kmc> every OS has US-Dvorak since longtime
20:37:02 * shachaf wonders if the vast majority of people use keyboards.
20:37:11 <kmc> shachaf: maybe if you include mobile phones
20:37:20 <atriq> shachaf, I'd imagine people who use computers tend to use keyboards
20:37:29 <atriq> And most people I know use computers
20:37:37 <kmc> most people you know != most people
20:37:41 <atriq> Yes
20:37:47 <olsner> the vast majority of people live in asia and make carpets, they have no need for keyboards
20:37:54 <atriq> But we must start somewherwe
20:37:55 <kmc> heh
20:38:03 <kmc> that's not really true
20:38:06 <hagb4rd> but they still need fridges
20:38:14 <kmc> poor people in asia still want to read news, watch porn, talk to friends on facebook like anyone else
20:38:22 <hagb4rd> especially in times of global warming
20:38:24 <shachaf> There are many more people in the world than there are IPv4 addresses.
20:38:31 <kmc> they may do this at internet cafes or on mobile phones rather than on computers they own
20:38:35 <olsner> I'd argue that touch keyboards don't count as keyboards
20:38:53 <olsner> ironically, it's impossible to touch type on a touch keyboard
20:39:52 <kmc> i found Pizza Americana in Tallinn
20:39:59 -!- epicmonkey has quit (Ping timeout: 244 seconds).
20:40:44 <atriq> AVOID IT LIKE THE PLAGUE
20:41:01 <kmc> do you have specific knowledge or are you just going from the name? ;)
20:41:10 <kmc> it would amuse me to eat at an america-themed restaurant while in foreign
20:41:27 <zzo38> I am one of the guys that doesn't want to watch porn and talk to friends on facebook like anyone else.
20:41:40 <atriq> Basically, avoid eating your own country's cuisine while abroad
20:41:59 <atriq> Hmm
20:42:03 <hagb4rd> you don't want to watch porn?
20:42:04 <atriq> atriq isn't a bad nick
20:42:13 <kmc> well most foods invented in America are nominally part of someone else's cuisine
20:42:20 <kmc> like pizza and orange chicken
20:42:36 <zzo38> hagb4rd: That is correct.
20:42:54 <hagb4rd> but you still have balls, don't you?
20:42:54 <atriq> hagb4rd, neither do I, but for probably different reasons
20:42:54 <kmc> i don't think there's an idea of "traditional American food" like the idea of "traditional Latvian food"
20:42:59 <kmc> unless you mean native american, of course :)
20:43:13 <atriq> I'm a raging, flamboyant asexual
20:43:19 <olsner> polenta!
20:43:31 * kmc wasn't sure whether the balls comment was about zzo38 or about food
20:44:12 <kmc> it's said that the most authentically British dish is chicken tikka masala
20:44:20 <zzo38> O yes, I have golf balls, pokeballs, and maybe some others which I have not found recently and forgot about.
20:44:32 <Phantom_Hoover> olsner, polenta is not actually food, it's a construction material that's categorised as food due to EU law.
20:44:41 <kmc> we went to a british irish-american pub in croatia which serves dutch beer and thai curry
20:45:07 <kmc> zzo38: but who's got the biggest balls of them all?
20:45:20 <olsner> kmc: that sounds nice
20:45:36 <hagb4rd> i guess the one who is not watching porn in the internet
20:45:51 <kmc> there is a paradox of authenticity
20:46:04 <kmc> when traveling do you go for the restaurant serving "traditional authentic cuisine" to tourists
20:46:08 <zzo38> kmc: You, isn't it?
20:46:14 <kmc> or do you find the place where locals eat, which probably serves kebab and pizza
20:46:27 <zzo38> (I don't actually know, I just guess)
20:46:30 <kmc> i live in boston and i almost never eat seafood
20:46:37 <kmc> zzo38: my balls are normal size, as far as i know
20:46:58 <atriq> kmc, I live in Hexham and rarely eat leather or chipboard
20:47:10 <kmc> haha
20:47:13 <kmc> maybe you should try!
20:47:32 <atriq> Actually, Hexham has a greek restaurant
20:47:39 <shachaf> I live in California and rarely eat oranges.
20:47:50 <olsner> atriq: wow! it really does have everything
20:47:51 <kmc> and you rarely smoke marijuana, california's #1 cash crop
20:47:54 <shachaf> Are oranges the state food of CA?
20:48:05 <atriq> olsner, except a...
20:48:07 <kmc> burritos and pot brownies
20:48:10 <atriq> CLIMBING WALL
20:48:15 <kmc> dude, i could make, like, a... pot burrito
20:48:26 <hagb4rd> in baker, they have excellent seafood
20:48:53 * Phantom_Hoover realises atriq is Taneb after briefly entertaining the possibility of a third Hexhammer in the channel.
20:49:10 <shachaf> The friend I was visiting a friend yesterday seems to enjoy California's #1 cash crop.
20:49:12 <atriq> Phantom_Hoover, "atriq" is rot13 for ngevd
20:49:31 <olsner> oh, is taneb ngevd?
20:49:31 <Phantom_Hoover> You can buy Scotland's national food in Edinburgh, although I've never heard of anyone actually eating it.
20:49:35 <atriq> olsner, yes
20:49:38 <kmc> deep fried mars bars?
20:49:42 <Phantom_Hoover> Yes.
20:49:42 <shachaf> A triqery!
20:49:49 <atriq> olsner, I have been for ages
20:49:53 <Phantom_Hoover> You can get deep-fried haggis, too.
20:49:55 <atriq> I believe Gregor coined Ngevd
20:49:57 <kmc> natch
20:50:07 <olsner> what happens about half the time anyone here changes nicks is that one person disappears forever and some new person appears
20:50:31 <atriq> Based on my initials N. G. v D., the G standing for George after my great grandfather George Elliott Moscrop
20:50:32 <kmc> seafood is expensive and not tasty enough to justify the expense, i feel
20:51:06 <shachaf> Your great grandfather is named after elliott?
20:51:10 -!- boily has quit (Quit: Poulet!).
20:51:17 <atriq> shachaf, someone in the elliott clan
20:51:32 <atriq> Actually he got his middle name from his grandmother
20:51:47 <atriq> (seriously)
20:51:56 <shachaf> The nick "Ngevd" vaguely reminded me of a desert, which I suppose was not the intention.
20:52:05 <atriq> No
20:52:06 <atriq> It was not
20:52:41 <atriq> My great-great-great grandmother (in two ways! oh no!) was called Jane Elliott
20:53:00 <Phantom_Hoover> the great hexham tradition of incest
20:53:20 <Phantom_Hoover> it is why elliott is a stunted little midget and ngevd has a stupid moustache
20:53:22 <atriq> Actually, when this incest happened my ancestors lived in Newcastle
20:53:36 <Phantom_Hoover> they went to hexham for the incest
20:53:45 <shachaf> Newcastle-upon-Thyme
20:54:15 <atriq> I think the best thing to do to avoid incest is to meet your cousins before adulthood
20:54:15 <kmc> hichaf
20:54:24 <shachaf> heegan
20:54:24 <kmc> shachaf: you should open a dispensary in the Mission and serve pot burritos
20:54:57 <Phantom_Hoover> atriq, is that not normal
20:55:19 <shachaf> kmc: Surely that already exists in SF somewhere.
20:55:22 <kmc> atriq: are you talking about the aversion to having sex with people you've grown up with?
20:55:28 <kmc> i think that doesn't work unless you live together all the time
20:55:34 <atriq> Also, to not change your children's religion away from that which is every other close relative, shortly before dying
20:55:40 <kmc> this was a problem for the kibbutzim though
20:55:47 <kmc> the ones with collective child-raising
20:56:17 <atriq> kmc, meeting before adulthood helps
20:56:37 <Phantom_Hoover> what would you know, you're asexual!
20:56:46 <atriq> Not aromantic!
20:56:51 <atriq> anamorous
20:56:55 <atriq> I'm not sure what the term us
20:56:57 <atriq> *is
20:57:17 <Phantom_Hoover> yeah but it doesn't count as incest then!
20:57:21 <shachaf> http://www.thegreencross.org/ -- this whole business is more streamlined and convenient than I expected.
20:57:37 <atriq> Phantom_Hoover, there are at least two cases of incest in my ancestry
20:57:42 <atriq> I'm more inbred than Caligula
20:57:57 <elliott> atriq: I think "aromantic" is the standard terminology??
20:58:01 <atriq> (not actually much of an achievement)
20:58:02 <Phantom_Hoover> debatable, it's more complicated than that
20:58:03 <atriq> elliott, hmm
20:58:13 <shachaf> Not to be confused with "aromatic".
20:58:15 <atriq> Phantom_Hoover, Caligula wasn't actually inbred
20:58:25 <elliott> shachaf: Well, atriq *is* smelly.
20:58:28 <Phantom_Hoover> Well there is that.
20:58:48 <shachaf> elliott: Have you met atriq?
20:58:50 <shachaf> matriq
20:58:53 <shachaf> metriq?
20:58:54 <Phantom_Hoover> But also it's quite possible to be more inbred than, say, the child of siblings.
20:59:04 <shachaf> mætriq
20:59:19 <atriq> shachaf, I have not mated with elliott
20:59:27 <elliott> that's good to know
20:59:28 <Phantom_Hoover> See the family tree of Charles II of Spain, or that of Cleopatra, although that's not so much a tree as a column.
20:59:29 <kmc> take it to #esoteric-orgy
20:59:55 <Phantom_Hoover> IT'S ALL MINE AHAHAHAHAHA
21:00:01 <kmc> shachaf: nice
21:00:03 <elliott> kmc: apparently i am not invited to that channel
21:01:08 <shachaf> kmc: There should be a channel where you give free half-baked advice to anyone who asks.
21:01:22 <shachaf> #iama-kmc-ama
21:01:44 <shachaf> I guess this channel works for that purpose, though.
21:01:53 <Phantom_Hoover> kmc, incest: pro or against.
21:02:18 <kmc> uh
21:02:31 <ion> phantom_hoover: Haven’t you noticed that both sides of an issue are always “pro”?
21:02:33 <elliott> half-"baked" eh
21:02:35 <kmc> i don't think incestual relations between consenting adults should be illegal
21:02:35 <elliott> get it kmc
21:02:38 <kmc> but it's still fucking creepy
21:02:39 <ion> Pro-incest vs. pro-childlove
21:02:47 <ion> whoops, brainfart
21:03:05 <elliott> i don't think kmc got it
21:03:13 <kmc> got what
21:03:20 <elliott> <elliott> half-"baked" eh
21:03:20 <monqy> elliott made a joke
21:03:21 <kmc> i'm always not getting things
21:03:21 <shachaf> elliott: Oh, was that what kmc meant?
21:03:30 <kmc> shachaf: most cities have marijuana delivery
21:03:33 <kmc> just no nice webpage for it
21:03:35 <Phantom_Hoover> kmc, turning literally any reference to incest into an annoying Lannister joke: pro or pro?
21:03:36 <elliott> kmc: the joke is "baked"
21:03:38 <elliott> are you laughing
21:03:41 <kmc> no
21:03:41 <ion> Pro-childlove vs. pro-innocence
21:03:49 <elliott> kmc: hmm
21:03:51 <elliott> kmc: try correcting that
21:03:52 <kmc> http://penny-arcade.com/comic/2012/08/10
21:04:03 <kmc> pro-gun vs. anti-penis
21:04:49 <Phantom_Hoover> kmc, is it just me or has there been a very marked drop in PA's quality over the past... month?
21:04:52 <elliott> monqy: it would be bad to have to prefix every entry in makefile.obj with $(OBJDIR)/ right
21:05:02 <monqy> elliott: is it avoidable
21:05:18 <monqy> is it cleanly avoidable
21:05:19 <shachaf> A voidable warranty
21:05:23 <monqy> does avoiding it make it better
21:05:50 <elliott> monqy: yes; no; idk
21:05:51 <kmc> Phantom_Hoover: i would say more than a month
21:05:57 <kmc> it's been kinda meh for a while now
21:06:03 <kmc> but still better than most webcomics for sure
21:06:06 <kmc> at least most i've seen
21:06:08 <monqy> i like clean !
21:06:16 <kmc> the art is still top-notch
21:06:21 <Phantom_Hoover> Yeah, but it's like it went from "kind of meh" to "really, really meh" very quickly.
21:06:26 <kmc> hm maybe
21:06:29 <kmc> can you pinpoint the change?
21:06:30 <monqy> what's a most webcomics? don't answer that.
21:06:57 <elliott> deep question with monqy
21:07:03 <Phantom_Hoover> http://penny-arcade.com/comic/2012/07/27 maybe?
21:07:07 <shachaf> What's the Best Web Comic?
21:07:07 <atriq> elliott why are there so many elliotts in haskell
21:07:10 <kmc> maybe if i were 4 years older i would rage against penny-arcade instead of xkcd
21:07:19 <kmc> as far as something everyone likes and quotes and references but isn't actually that good
21:07:30 <shachaf> kmc: I don't like or quote it.
21:07:30 <Phantom_Hoover> The jokes from then have all been kind of "here's a silly thing, we have made a silly thing and this is funny".
21:07:52 <kmc> yeah
21:07:55 <elliott> the startling realisation when you realise that penny arcade wasn't really ever very funny
21:08:03 <elliott> *startling moment? who knows. who knows.
21:08:04 <kmc> well some of those are references to video games you probably haven't played
21:08:05 <kmc> as always
21:08:07 <kmc> but yeah
21:08:08 <shachaf> I don't particularly dislike it either, it just never seemed to be worth starting to read.
21:08:44 <kmc> nah i think it was very funny for a while
21:08:48 <kmc> still think so
21:09:08 <kmc> xkcd was also very good but not for very long
21:09:15 <monqy> how good is a very
21:09:17 <monqy> don't answer that
21:09:25 <shachaf> monqy: very good
21:09:27 <kmc> i think PA did a better job of evolving out of the initial joke format
21:09:27 <elliott> xkcd was pretty good for longer than people give it credit for
21:09:28 <shachaf> "oops"
21:09:48 <shachaf> elliott: Man, those spider comics.
21:10:00 <Phantom_Hoover> elliott, so you'd put the decay after the 400-500 mark most would?
21:10:41 <elliott> Phantom_Hoover: maintaining my idealised self-image requires that i do not consider questions like that worth answering
21:10:44 <kmc> xkcd was a great comic for a little while
21:11:08 <kmc> then it was an ok comic which was still regarded as the pinnacle of nerd culture
21:11:24 <ion> Ooh http://madebyevan.com/webgl-water/
21:12:00 <kmc> if there's one thing i love, it's giving untrusted javascript direct access to the most complicated kernel subsystem and most complicated peripheral device in my computer
21:12:04 <atriq> I'm really starting to warm to Cyanide and Happiness
21:12:06 <Phantom_Hoover> ion, wow, it's like I have a real bucket of water sitting on my desk.
21:12:17 <kmc> atriq: it's funny because awful things happen to people
21:12:23 <elliott> cyanide and happiness is an awful awful comic
21:12:45 <Phantom_Hoover> I support elliott's view based on vague sycophancy!
21:13:07 <elliott> i think i used to like it
21:13:08 <kmc> yeah it's pretty f. bad
21:13:09 <elliott> when i was a worse person
21:13:32 * Phantom_Hoover wonders if you could use scientomantic resonancimation to make a decent wave in that thing.
21:13:32 <shachaf> TWIST: that was 30 seconds ago
21:13:44 <monqy> good joke
21:13:55 <Phantom_Hoover> I might have liked it when I was a worse person but unfortunately I was otherwise engaged in being a bad person.
21:14:00 <kmc> the only long-running comic i can say for sure has not suffered a quality drop is...
21:14:03 <kmc> jerkcity
21:14:12 <monqy> thank you jerkcity
21:14:19 <Phantom_Hoover> omg you can move the ball
21:14:20 <monqy> #1 reliable webcomic lifelong award
21:14:20 <kmc> thirkcity
21:14:23 <Phantom_Hoover> and it perturbs the surface
21:14:25 <Phantom_Hoover> aha
21:14:25 <shachaf> Has Cyanide and Happiness suffered a quality drop?
21:14:29 <shachaf> How can you drop from the bottom?
21:14:37 <monqy> through the floor
21:15:02 <kmc> when there is trap set up for you in every corner of this town
21:15:09 <kmc> and so you learn the only way to go is... underground
21:15:21 <atriq> It's slightly less dead baby now?
21:15:26 <atriq> Slightly
21:15:44 <elliott> slightly less dead baby
21:15:45 <monqy> now the baby is only half dead
21:15:50 <elliott> i am convinced, sounds great
21:15:55 <shachaf> Mostly dead is slightly alive, I hear.
21:15:59 <kmc> basing a regular comic on offensive / "shock" humor is a really dubious decision
21:16:14 <kmc> because, while the best examples of such humor are fucking hilarious, it kinda raises the bar for the minimum quality joke you can get away with
21:16:25 <monqy> what if there was a comic but instead of being a comic it just crawled shock sites and pulled from them
21:16:28 <kmc> i'm sure the top 20 C&H strips of all time are fucking hilarious
21:16:28 <elliott> i am not really sure how jerkcity could drop in quality
21:16:30 <monqy> "one million hits"
21:16:36 <elliott> since it is basically based entirely around not having any
21:16:36 <kmc> elliott: yeah exactly
21:16:43 <kmc> that's how i can say for sure
21:16:46 <shachaf> "C&H" :-(
21:16:59 <elliott> cyanide and hobbsiness
21:17:06 <kmc> yeah that's unfortunate
21:18:50 -!- oerjan has joined.
21:18:56 <Phantom_Hoover> You could argue that Homestuck hasn't dropped in quality but it's not gag-a-day, it's ultra-subjective, and it has large-scale ups and downs which do alter its entertainment value.
21:20:15 <Phantom_Hoover> ion, omfg it has a buoyancy sim
21:27:17 <elliott> i like what-if.xkcd.com
21:27:19 <elliott> for what it's worth
21:27:41 <Phantom_Hoover> Yeah, it's great.
21:28:06 <Phantom_Hoover> It's essentially Randall Munroe's Picto-Blog as xkcdsucks described ages ago.
21:28:24 -!- elliott has left ("Leaving").
21:29:11 <atriq> Hey, elliott's gone
21:29:22 <atriq> Now it is time to make the important decision
21:29:31 <atriq> How much do I like the name "atriq"?
21:29:42 <Phantom_Hoover> Just register it anyway.
21:29:46 <kmc> motorola atriq 4g
21:29:55 <atriq> Phantom_Hoover, I already have
21:30:07 -!- Phantom_Hoover has changed nick to Prince_Charles.
21:30:30 <atriq> I've still got ettioll registered
21:30:51 <Prince_Charles> Hmmmmmmmmmmmmmmmmmmmmmmmm.
21:30:55 <atriq> And noqmy
21:30:59 <atriq> And RocketKSquirrel
21:31:06 <Prince_Charles> I *definitely* recall having Prince_Charles registered.
21:31:09 -!- Prince_Charles has changed nick to Phantom_Hoover.
21:31:55 <olsner> oh, who was rocketsquirrel?
21:32:03 <Phantom_Hoover> Aww, they expire with disuse.
21:32:07 <Phantom_Hoover> olsner, Gregor?
21:32:34 -!- Gregor has changed nick to RocketJSquirrel.
21:33:00 <Phantom_Hoover> I would also have Vonlebio if it wasn't my black ops nick.
21:34:32 <oerjan> <Phantom_Hoover> Aww, they expire with disuse. <-- they gave several weeks warning last they did it
21:35:26 <oerjan> *+time
21:41:57 <RocketJSquirrel> I only got Gregor because it expired with disuse ^^
21:42:47 <Phantom_Hoover> Fair point, it wouldn't really be fair if I locked Prince Charles out of a nick that I never even use.
21:44:12 <oerjan> he probably goes as hrhpc or something
21:45:14 <RocketJSquirrel> HRHP_Chuckie
21:45:28 <tswett> What's a polynomial of the form (x^n - 1)/(x - 1) called?
21:45:46 <RocketJSquirrel> tswett: Annoying to differentiate.
21:45:47 <oerjan> hi, polynomial of the form (x^n - 1)/(x - 1)
21:45:57 <oerjan> RocketJSquirrel: no, quite easy actually
21:46:31 <oerjan> i cannot recall any name for it, though
21:46:42 <shachaf> tswett: When n is 1, it's called "1".
21:46:45 <Phantom_Hoover> It's called "fuck you STEP organisers for expecting me to factorise every polynomial of degree 3 or less in my head".
21:46:54 <oerjan> geometric sum perhaps?
21:47:53 -!- ais523 has quit.
21:48:53 <oerjan> geometric series fits sort of
21:49:09 <oerjan> except some may consider it implicitly infinite
21:49:27 <Phantom_Hoover> A polynomial which looks easier to factorise than it i-- wait it's totally one of the easy to factorise ones.
21:49:41 <oerjan> Phantom_Hoover: duh
21:49:54 <tswett> Here we go. It's called an "all one polynomial", or AOP.
21:49:58 <shachaf> Phantom_Hoover tries to factor every polynomial he sees.
21:50:02 <shachaf> He's got factor eyes.
21:50:10 <tswett> Is x^n - 1 actually easy to factor, in general?
21:50:29 <tswett> I thought they were called cyclotomic polynomials. But they're not.
21:50:46 <Phantom_Hoover> I'm pretty sure (x-1) is always a factor.
21:50:53 <tswett> It is.
21:51:06 <Phantom_Hoover> WHAT MORE DO YOU WANT
21:51:33 <tswett> If n is composite, it's easy to factor further. x^3 + x^2 + x + 1 = (x^2 + 1) (x + 1).
21:51:54 -!- atriq has quit (Ping timeout: 246 seconds).
21:52:32 <tswett> Hm. I'm pretty sure x^n - 1 factors into cyclotomic polynomials, and no further.
21:53:14 <Sgeo> Does BZFlag count as an FPS?
21:54:02 <oerjan> tswett: i'm not quite sure if the cyclotomic polynomials are always irreducible?
21:54:04 <tswett> If it's got a first-person perspective, and you can shoot from it, then I think so.
21:54:26 <oerjan> oh gauss has proved that
21:54:50 <Sgeo> tswett, you can't look up or down. Also, you're a tank. But yes.
21:55:29 <Phantom_Hoover> tswett, wait, is Elite an FPS then?
21:55:36 <kmc> you can't look up or down in doom
21:55:39 <Phantom_Hoover> Or FreeSpace 2?
21:55:45 <Phantom_Hoover> Or FlightGear?
21:56:11 <Phantom_Hoover> (There are a couple of planes with working guns for FG.)
21:59:26 <oerjan> tswett: wp's cyclotomic polynomial article has a pretty simple way of calculating the cyclotomic polynomials which also factors x^n - 1 in the process
22:00:00 <oerjan> uses that x^n - 1 is the product of the d'th cyclotomic polynomial for d a factor of n
22:00:12 <oerjan> *polynomials
22:00:23 <kmc> shachaf: a bunch of the original ksplice people are quitting ksploracle
22:00:29 <kmc> this is... not surprising
22:02:53 <oerjan> 18:29:45: <Phantom_Hoover> Gregor, didn't you have ops for a while.
22:02:53 <oerjan> 18:36:03: <Gregor> Nope.
22:03:06 <oerjan> actually he did, for about a day or so
22:03:11 <RocketJSquirrel> wut?
22:03:41 <oerjan> it was only +o ops though, not chanserv access
22:06:32 <RocketJSquirrel> I don't remember this >_>
22:06:38 -!- sebbu has quit (Quit: ZNC - http://znc.sourceforge.net).
22:08:04 <oerjan> <kmc> apparently you can see finland from the tallinn tv tower <-- now i'm imagining an estonian sarah palin
22:09:33 <RocketJSquirrel> X-D
22:10:06 <RocketJSquirrel> I love that people barely remember the fact that Palin never said that :)
22:10:29 <oerjan> poor michael, demoted to second craziest palin
22:11:45 <oerjan> RocketJSquirrel: larger than life people don't get to determine their own life facts
22:11:57 -!- nooga has quit (Ping timeout: 244 seconds).
22:12:04 <RocketJSquirrel> Heheh
22:12:27 <RocketJSquirrel> Speaking of, I bought three new pairs of colorpants.
22:15:01 -!- sebbu has joined.
22:16:06 <zzo38> What color?
22:16:22 -!- nooga has joined.
22:18:07 <RocketJSquirrel> zzo38: Orange, light blue and “eggplant” purple.
22:19:21 <oerjan> <atriq> Phantom_Hoover, "atriq" is rot13 for ngevd <-- darn i got fooled by the at -> ta switch and thought it would be rot 19 or something for taneb. wait that doesn't work for t -> a either...
22:20:18 <oerjan> i assume even RocketJSquirrel doesn't want to go for the green lime ones.
22:20:47 <RocketJSquirrel> oerjan: They were on my list 'til I saw the “eggplant” ones.
22:20:53 <RocketJSquirrel> But they were last on said list.
22:21:03 <RocketJSquirrel> (Hence why they got bumped)
22:21:50 <oerjan> food ->
22:22:49 <shachaf> kmc: Did some vesting thing just end or something?
22:24:10 <shachaf> "Oracle Buys Ksplice", "Jul 21 2011"
22:24:35 <kmc> yeah some of them got some money after 1 year
22:25:03 <shachaf> So now there are a bunch of free-floating kspliceurs.
22:25:08 <kmc> others are leaving because their friends are, i imagine
22:25:13 <kmc> there is a coordination problem
22:29:01 <oerjan> outvesting?
22:30:55 <kmc> -_-
22:31:14 <oerjan> yay feedback
22:34:33 -!- nooga has quit (Ping timeout: 276 seconds).
22:40:43 -!- david_werecat has joined.
22:45:57 -!- zzo38 has quit (Remote host closed the connection).
22:48:06 <Phantom_Hoover> oh my god
22:48:12 -!- augur has joined.
22:48:21 <Phantom_Hoover> http://www.whatdomothseat.info/
22:49:01 <RocketJSquirrel> ?
22:49:31 <Phantom_Hoover> i'm sorry how are you not realising the wonder here
22:51:26 -!- david_werecat has quit (Ping timeout: 252 seconds).
22:53:16 <FireFly> http://www.kickstarter.com/projects/project-giana/project-giana
22:54:11 * oerjan swats FireFly -----###
22:54:35 * shachaf swirefl###
22:55:10 -!- augur has quit (Remote host closed the connection).
22:55:45 -!- augur has joined.
22:55:51 <tswett> "So in short, what do moths eat? They eat anything that can dissolve in water."
22:55:56 <tswett> That sounds wrong.
22:55:58 <oerjan> Phantom_Hoover: i note how the sidebar has several other similar sites
22:56:10 <Phantom_Hoover> exactly
22:56:22 <Phantom_Hoover> it's a fucking network
22:56:43 <tswett> "Some images taken from Wikipedia under GNU"
22:57:37 <FreeFull> "under GNU"
22:57:42 <tswett> That's how free licenses work, right? "You are free to distribute this work, as long as you mention a couple of free-works projects with prepositions before them."
22:58:28 <oerjan> one nation, under GNU
22:59:48 <shachaf> "under GNU" surely refers to "Among the hunting trophies on the wall above my bed / Stuffed and mounted, was a face I thought I knew"
23:00:08 -!- augur has quit (Ping timeout: 245 seconds).
23:00:19 <soundnfury> Oh wow, someone else here knows F+S?
23:00:31 <soundnfury> (Agnother gnu!)
23:00:56 <shachaf> I think F+S are pretty famous.
23:01:06 <soundnfury> More or less famous than Lehrer?
23:01:47 <shachaf> I don't know.
23:07:29 -!- david_werecat has joined.
23:07:51 <oerjan> gnice
23:08:15 <soundnfury> nor am I in the least like that dreadful hartebeest
23:14:25 -!- david_werecat has quit (Read error: Connection reset by peer).
23:14:46 -!- david_werecat has joined.
23:17:07 <oerjan> what girl genius is still not updated
23:21:06 -!- augur has joined.
23:22:14 <oerjan> i recall it used to be up shortly after 05:00 UTC, but lately it seems to update at an irregular time
23:22:39 <oerjan> er 04:00 UTC
23:25:38 -!- augur has quit (Remote host closed the connection).
23:29:23 -!- augur_ has joined.
23:37:03 -!- stanley has left ("Leaving").
23:42:22 -!- hagb4rd has quit (Ping timeout: 265 seconds).
23:48:37 <oerjan> did google's favicon just change?
23:48:44 -!- zzo38 has joined.
23:50:00 -!- augur_ has quit (Read error: No route to host).
23:50:37 -!- augur has joined.
2012-08-14
00:07:24 <Sgeo> oerjan, looks it
00:09:03 <Sgeo> http://www.reddit.com/r/google/comments/y53ln/google_testing_a_new_favicon/
00:10:58 <oerjan> ah
00:16:25 -!- derdon has quit (Remote host closed the connection).
00:25:20 -!- RocketJSquirrel has changed nick to Gregor.
00:26:18 <FreeFull> A new favicon again?
00:26:28 <FreeFull> Just after we got used to the changed one?
00:27:26 <FreeFull> When did Google suddenly start being "We have to change stuff, just because"
00:27:37 <FreeFull> I guess when they started changing youtube
00:29:31 <ion> Much ado about a frigging favicon. :-P
00:30:16 <FreeFull> Hey, we have to look at it on our tabs!
00:46:38 -!- augur has quit (Remote host closed the connection).
00:56:42 -!- monqy has quit (Quit: hello).
01:26:55 <ion> http://fun.drno.de/pics/english/anonymous-proxy.png
01:27:11 <zzo38> Turn off favicons if you don't want them
01:27:30 <zzo38> I don't use favicons
01:31:12 <ion> Surprise
01:33:14 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
01:37:02 -!- elliott has joined.
01:37:10 <zzo38> Or if it is just that you don't want to look at it on the tabs, then remove it from the tabs.
01:37:12 <elliott> kmc: Hey, can astyle re-parenthesise code too? Or is it just indentation?
01:42:13 <FreeFull> zzo38: favicons are the quickest way to tell what website is in a tab without reading the title
01:56:07 <zzo38> FreeFull: Maybe to you it is.
01:56:08 -!- zzo38 has quit (Quit: zzo38).
01:59:16 <oerjan> i'm always imagining zzo38 as a person who absorbs text faster than guis
02:03:41 <itidus21> maybe google realized that having a good looking favicon does not drum up business
02:04:11 <itidus21> but having an ugly favicon could perhaps make people think about google more
02:11:57 <oerjan> let's discuss that over a nice bottle of hägar the horrible cola.
02:12:40 <ion> I don’t see the ugly in the favicon.
02:17:18 <elliott> ion: You know C++, right?
02:17:51 <ion> A bit.
02:18:10 <elliott> ion: Is "char *foo" or "char* foo" the common style? IIRC it's the latter for some reason, despite the former being more common in C.
02:19:21 <elliott> (Maybe because declaration-follows-use breaks down in the presence of C++'s references?)
02:19:38 <shachaf> elliott: I think that's the reasoning.
02:19:43 <ion> char* foo would make more sense because “char*” is the type… but in fact “char *foo, *bar” gives foo and bar the same type. So the * tends to be attached to the variable.
02:19:47 <shachaf> It's still evil.
02:19:53 <shachaf> ion: In C, "char *foo" makes a lot more sense.
02:20:12 <shachaf> In C++, it still makes more sense, but not quite as much more for the reason elliott mentioned.
02:20:54 <elliott> ion: Yes, I'm aware of the dispute in C :P
02:20:56 <ion> I don’t really have any statistics about which style people tend to use.
02:20:58 <elliott> But C++ is all weird and stuff.
02:21:20 <shachaf> C++? More like Crazy++!!!!
02:21:57 <ion> @quote C.*arrow
02:21:58 <lambdabot> hgolden says: pioneers are the ones with arrows in their backs. at least ours will be categorical arrows.
02:22:19 <shachaf> @quote C\b.*arrow
02:22:20 <lambdabot> kmc says: Zagen, you'll need a zygohistomorphic prepromorphism from the bifunctorial Kleisli category of username-password pairs to a combinatory arrow calculus of php scripts
02:22:24 <elliott> Apparently Artistic Style is ~useless.
02:22:27 <shachaf> @quote \bC\b.*arrow
02:22:27 <lambdabot> No quotes match. You untyped fool!
02:22:33 <ion> I wonder if the quote i’m thinking of was in lambdabot or somewhere else, like bash.org…
02:22:36 * shachaf isn't sure what ion was looking for.
02:23:18 <ion> @quote C\+\+
02:23:19 <lambdabot> Axman6 says: well, if C++ is anything to go by, the next Haskell will have lambdas and easy concurrency!
02:23:28 <ion> @quote C\+\+.*arrow
02:23:28 <lambdabot> No quotes match. Maybe if you used more than just two fingers...
02:24:30 <elliott> For instance, astyle can't turn "return (foo);" into "return foo;".
02:24:34 <elliott> Anyone know a decent C++ reformatter?
02:24:45 <shachaf> Yes.
02:24:50 <shachaf> But I think his rate is rather high.
02:24:52 <elliott> I want something brutal. I don't care if it destroys all manual alignments or whatever.
02:25:12 -!- augur has joined.
02:26:25 <ion> All code should be stored as a representation of the AST with some formatting hints. Editors and viewers would then be able to format it according to the capabilities of the display media and the preferences of the user.
02:26:51 <shachaf> ion: Brilliant!
02:26:55 <elliott> ion: Thank you; that solves my immediate problem.
02:26:56 <shachaf> Now just implement it in a way that works.
02:27:05 <shachaf> That's the easy part, though.
02:27:13 <ion> elliott: You’re welcome.
02:27:22 <ion> You’re welliott.
02:27:34 <shachaf> ion: Thanks!
02:27:38 <elliott> ion: You should play some Crawl for my amusement. Did you hear there's a new server?!?!?!
02:27:45 <shachaf> NEW SERVER?!
02:27:51 <ion> I didn’t.
02:27:53 <shachaf> I was told to leave ##crawl and never come back by elliott.
02:27:57 <shachaf> So I don't hear the news anymore,
02:28:14 <oerjan> people obey elliott?
02:28:21 <shachaf> oerjan: monqy said it too.
02:28:27 <elliott> oerjan: (I didn't actually say that.)
02:28:33 <shachaf> elliott: You said something similar.
02:28:36 <ion> Obey elliott. Olliott.
02:28:44 <shachaf> Like "just go away" or something.
02:28:46 <elliott> ion: See ??cszo.
02:28:50 <shachaf> ??cszo
02:28:51 <oerjan> ah. monqy is of course the utmost authority.
02:28:55 <shachaf> CURSE YOU, CRAWLBOT
02:29:11 <shachaf> Crawl, crawl, crawl your bot gently down the stream...
02:29:19 <ion> What was the name of the bot again? I thought it was Henzell, but apparently not.
02:29:27 <shachaf> Gretell?
02:30:01 <elliott> ion: It was.
02:30:08 <elliott> ion: CAO is down for a while, so it's Wenzell for now.
02:30:20 <elliott> (The CßO bot is Sizzell.)
02:30:30 <ion> ok
02:30:49 <shachaf> CßO?
02:30:50 <ion> This means i could start a third simultaneous Crawl game that will rot there for months without me finishing it.
02:30:56 <shachaf> I prefer CβO
02:31:25 <shachaf> elliott: Did you read _Three Men in a Boat_?
02:31:58 <coppro> are we really arguing about which eszett is better?
02:32:07 <shachaf> coppro: That's not an eszett.
02:32:14 <shachaf> It's beta than an eszett.
02:32:20 <coppro> ah
02:32:24 <shachaf> Much beta.
02:32:42 <elliott> ion: You should play a combo that isn't boring so I can be entertained.
02:32:48 <shachaf> Also, I looked up the codepoint for β. I should've known it by heart. :-(
02:32:56 <shachaf> elliott: How 'bout watching me play NetHack?
02:33:02 <elliott> I'll pass.
02:33:15 * shachaf = exciting!
02:33:29 <shachaf> I'll play Tou Wiz Elf Law
02:33:40 <ion> I only remember the codepoints for λ and π offhand.
02:33:50 <ion> out of the Greek letters
02:33:50 <shachaf> ion: Alpha is 3b1, so beta is 3b2.
02:33:52 <shachaf> (Lower-case.)
02:33:59 <shachaf> Also, 2200 is forall and 2203 is exists.
02:34:02 <shachaf> And 2208 is QED?
02:34:09 <shachaf> No, that's \in
02:34:14 <shachaf> 220E is QED
02:34:22 <elliott> Wow, ion plays boring combos.
02:34:28 <coppro> I don't know any codepoints offhand
02:34:35 <coppro> except a few randoms in ASCII
02:34:37 <shachaf> CA0 is Reddit eye.
02:34:40 <elliott> Actually I shouldn't speak since a fair number of my games are boring combos since I stopped playing Crawl and started playing ##crawl after a while.
02:34:56 * oerjan is with coppro
02:35:13 <elliott> coppro: Hey, I need a C++ reformatter.
02:35:16 <shachaf> Ugh, what's UPWARD INDEX POINTING FINGER THING?
02:35:19 <coppro> elliott: go work on clang-indent
02:35:25 * shachaf digs through memory.
02:35:38 <elliott> coppro: Does it work today?
02:35:41 <coppro> no
02:35:47 <elliott> coppro: Okay. Next option.
02:35:58 <oerjan> that should be right next to UPWARD MIDDLE POINTING FINGER THING right?
02:36:01 <shachaf> Something like 3D01...
02:36:07 * shachaf looks it up.
02:36:14 <shachaf> 261D
02:36:18 <shachaf> Close enough!
02:37:03 <shachaf> 225F EQUAL TO--OR IS IT [≟]
02:43:03 <ion> It seems another stylesheet change by Google has fixed https://plus.google.com/109925364564856140495/posts
02:43:47 <ion> Is ≟ in there? You should post it.
02:45:52 <shachaf> ion: Hooray!
02:47:00 <elliott> Deewiant: You used to use 3-space indents, right?
02:47:58 <oerjan> pi space indents or bust!
02:49:05 <elliott> "There are currently 412 options and minimal documentation.
02:49:06 <elliott> Try UniversalIndentGUI and good luck."
02:49:34 -!- augur_ has joined.
02:50:07 -!- david_werecat has quit (Ping timeout: 240 seconds).
02:53:15 -!- augur has quit (Ping timeout: 276 seconds).
02:56:07 -!- FreeFull_ has joined.
02:56:16 -!- FreeFull has quit (Disconnected by services).
02:56:29 -!- FreeFull_ has changed nick to FreeFull.
03:14:27 -!- david_werecat has joined.
03:46:59 -!- epicmonkey has joined.
04:22:06 -!- epicmonkey has quit (Ping timeout: 248 seconds).
04:37:57 <elliott> shachaf: What was that dumb pathology wrt. sizeof?
04:38:07 <shachaf> mauk'e thing?
04:38:09 <elliott> The one that made "sizeof (foo)" correct.
04:38:15 <elliott> Despite that being disgusting.
04:38:29 <shachaf> "sizeof (foo)" as opposed to "sizeof(foo)"?
04:38:49 <shachaf> It's "sizeof foo" for values and "sizeof (Foo)" for types, I guess.
04:38:49 <elliott> Yes.
04:39:00 <shachaf> http://mauke.hopto.org/stuff/c/sizeof.c
04:39:16 <elliott> Right. Ugh.
04:39:19 <shachaf> elliott: Just think of it as a little bit of Haskell inside the big scary world of C.
04:39:44 <shachaf> sizeOf (unsafePerformIO (readIORef ioRefToInt))
04:40:24 <elliott> Has anyone used uncrustify?
04:41:45 * ion laughs at sizeof.c
04:43:22 <FreeFull> sizeof(0)["abcdefghij"];
04:43:30 <FreeFull> Most roundabout way of doing sizeof(char) ?
04:43:50 <elliott> Yes, that's sizeof ((0)["abcdejojgpshjesgjoretjg"]).
04:44:35 <FreeFull> You could just do (0)[""]
04:45:02 <elliott> Is that valid?
04:45:06 <FreeFull> Yes
04:45:08 <elliott> I know expressions inside sizeof are kind of restricted.
04:45:15 <elliott> But I'm not sure ""[0] will fly even then.
04:45:15 <FreeFull> c-strings are null-terminated
04:45:18 <elliott> Oh, duh.
04:45:21 <elliott> Stupid C.
04:47:29 <FreeFull> But it allows you to do stuff like while(*(string++)){}
04:48:20 <shachaf> I think sizeof (""[1]) is also valid?
04:48:48 <oerjan> !c printf("%d", sizeof (""[1]));
04:48:53 <FreeFull> shachaf: Would be just as valid, but as a principle you shouldn't read from past the end of a string
04:48:53 <elliott> shachaf: &""[1] is OK.
04:48:54 <EgoBot> 1
04:48:57 <elliott> But ""[1] isn't.
04:48:59 <shachaf> oerjan: I said valid, not compiles.
04:49:02 <elliott> FreeFull: Uh, no.
04:49:11 <elliott> FreeFull: int main() { return ""[1]; } is invalid C code.
04:49:13 <shachaf> elliott: Right, but sizeof is sort of in between.
04:49:22 <elliott> Er, ignore that char != int there.
04:49:23 <shachaf> I mean, it doesn't actually evaluate the expression ""[1].
04:49:33 <elliott> int main() { char *s = &""[1]; return 0; } /* this is OK, though */
04:49:39 <elliott> int main() { char *s = &""[2]; return 0; } /* this is invalid */
04:49:40 <shachaf> If you can take that expression and &, maybe you can sizeof it too.
04:49:41 <FreeFull> elliott: Undefined, but a compiler won't error on it
04:49:49 * shachaf not quite a C lawyer.
04:49:49 <Sgeo> Should I be shot for contemplating writing the following Prolog code for use with DCG syntax?: get(A, A, A). put(A, _, A).
04:49:52 <elliott> FreeFull: I don't think you understand what "valid" means.
04:50:08 <elliott> shachaf: I think sizeof(""[1]) might actually be valid, yes... sizeof is very strange.
04:50:08 <FreeFull> sizeof() is evaluated during compilation
04:50:25 <FreeFull> Gets replaced with a constant
04:50:38 <elliott> (Whether a random compiler will accept a piece of C code doesn't say anything about whether it's valid C or not; it's very difficult (impossible?) to mechanically check for valid C anyway.)
04:50:46 <elliott> (And this is a question of standards, not compilers, anyway.)
04:51:35 <shachaf> Impossible, I'd be pretty confident.
04:52:10 <FreeFull> Well, for a constant string like that the compiler can easily check in this case
04:52:13 <elliott> shachaf: Right. Because you're not allowed to do ""[2], but you're allowed to do ""[2] in a branch that's never executed, aren't you?
04:52:26 <shachaf> elliott: Right, I was about to say that.
04:52:31 <elliott> So if (function_that_halts_if_unknown_mathematical_theorem_X_is_false())
04:52:42 <elliott> *unsolved, *hypothesis, blah, it's early
04:52:43 <shachaf> And you're allowed to say ""[n]
04:52:55 <shachaf> Where n = result_of_some_function()
04:52:59 <shachaf> (This is a more realistic situation.)
04:53:04 <FreeFull> Harder if it's something like for(i=0;i<something();i++) { "string"[i] }
04:53:09 <elliott> shachaf: Indexing the empty string: realistic.
04:53:40 <shachaf> elliott: Didn't you see my U+13F4E ZERO-WIDTH ELLIPSIS [🍎]?
04:54:02 <FreeFull> That doesn't look like an ellipsis
04:54:06 <FreeFull> That looks like an apple
04:54:17 <shachaf> whoa, dude
04:54:23 <shachaf> I typed in that codepoint "at random"
04:54:32 <shachaf> And it came out to one of my favorite non-BMP codepoints, RED APPLE?
04:54:37 * shachaf marvels.
04:54:40 <elliott> I thought Apple only gave one invalid codepoint a glyph.
04:54:49 <ion> sizeof (100000)[""] seems to be fine at least in GCC. The “parameter” is not evaluated.
04:54:51 <FreeFull> U+1F34E
04:54:58 <elliott> Or maybe FreeFull is just using some non-OS X operating system that uses an apple for invalid codepoints for some reason.
04:55:11 <elliott> ion: Well, yes, sizeof obviously can't evaluate its parameter.
04:55:19 <elliott> Because you can do int foo = complex(); ... sizeof foo ...
04:55:28 <shachaf> ion: The question is about whether the behavior is defined.
04:55:30 <elliott> The question is "how valid" the expression has to be.
04:55:37 <elliott> I am pretty sure that if &x is OK, then sizeof x is OK.
04:55:41 <elliott> But I don't have any references for that.
04:55:42 <shachaf> elliott: Nothing wrong with int foo = complex(); sizeof foo;
04:56:13 <FreeFull> Well, sizeof doesn't care what foo's contents are
04:56:16 <FreeFull> Just its type
04:56:16 <shachaf> I mean, the type of the expression is known whether or not you evaluate it.
04:57:14 <FreeFull> elliott: http://img39.imageshack.us/img39/192/screenshot140812055540.png
04:59:33 <elliott> shachaf: Hey, you said U+13F4E. But that's U+1F34E.
04:59:36 <elliott> I feel cheated.
05:00:14 <ion> You should ask for your money back.
05:00:34 <FreeFull> This is U+13F4E: 𓽎
05:00:52 <FreeFull> It's unassigned
05:01:25 <elliott> Right.
05:01:54 * elliott wonders whether he prefers `void f()\n{}` or `void f()\n{\n}`.
05:02:24 <ion> void\nf\n(\n)\n{\n}
05:04:36 <FreeFull> I prefer void f() {\n}
05:06:18 <Sgeo> Is it generally acceptable to use DCG syntax as though it were syntax for the State monad?
05:07:07 <elliott> shachaf: Why doesn't `void f();` work for `void f() {}` like `for (;;);` works for `for (;;) {}`?
05:08:37 <FreeFull> elliott: As in, declaring a function that does nothing?
05:12:33 <elliott> Defining, rather than declaring. (The reason it doesn't work is because it'd let you omit the definition of a void-returning function accidentally without complaint, presumably.)
05:12:36 <elliott> (But pah.)
05:23:01 -!- zzo38 has joined.
05:24:50 * shachaf return
05:24:58 <shachaf> elliott: It's a different kind of {}
05:25:30 <shachaf> elliott: for (...) is followed by a statement, just like if (...) and so on.
05:25:40 <shachaf> {} happens to be a "grouping statement"
05:25:57 <shachaf> But the {} isn't a "grouping statement" at all for function bodies.
05:26:10 <shachaf> (And anyway that syntax is reserved for prototypes.)
05:26:48 <shachaf> Maybe you're asking why function-declaration syntax isn't also followed by a statement.
05:26:56 <oerjan> Sgeo: i understand that the exact semantics of DCG may not be portable...
05:27:14 <oerjan> (from googling around just a bit now)
05:27:37 <shachaf> elliott: It's not just "omit it accidentally".
05:27:49 <Sgeo> oerjan, o.O
05:27:50 <shachaf> Definition happens in a different file from declaration.
05:28:10 <elliott> shachaf: I know all of that.
05:28:15 <Sgeo> So I can't, say, rely on different Prologs to put the additional arguments at the end of the ... whatever
05:28:19 <Sgeo> ?
05:28:21 <oerjan> that is, it is not in the standard and so is subtly different
05:28:26 <Sgeo> Argh
05:28:41 <Sgeo> get(A, A, A). put(A, _, A). Is that likely to work as I expect?
05:28:45 <shachaf> elliott: Good, it's all C 101.
05:28:51 <oerjan> Sgeo: yeah that's what i was thinking as i starting googling because i thought they were put at each end
05:28:59 <shachaf> I'm not sure what your proposal for how to make it work is, though?
05:29:10 <elliott> shachaf: I don't have one, I'm just whining about a problem I know is already solved the best it can be.
05:29:15 <oerjan> that is, i was thinking that i wasn't sure that was right order
05:29:19 <elliott> Although wouldn't it be funny if you could write `int f(int x) return x:`?
05:29:25 <shachaf> elliott: The problem is probably better-solved by not using C!
05:29:31 <shachaf> (Wait, you're using C++, aren't you?)
05:29:33 <elliott> Yes.
05:29:43 <shachaf> Try Objective-C++.
05:29:49 <shachaf> @karma objective-c
05:29:49 <lambdabot> objective-c has a karma of 6
05:29:54 <shachaf> @karma objectivec
05:29:55 <lambdabot> objectivec has a karma of 0
05:29:56 <shachaf> @karma objc
05:29:56 <lambdabot> objc has a karma of 7
05:29:58 <shachaf> @karma obj-c
05:29:59 <lambdabot> obj-c has a karma of 1
05:30:22 <Sgeo> Please tell me that Objective-C++ isn't a thing.
05:30:24 <oerjan> Sgeo: aren't there some DCG predicates you can use to write get and put less directly?
05:30:34 * oerjan hasn't tried it himself
05:30:38 <shachaf> Sgeo: It's a thing.
05:30:52 <Sgeo> oerjan, I'm still somewhat new at Prolog, and very unsure of DCG stuff
05:31:08 <Sgeo> Besides this iteration, last time I even touched Prolog was... 2006 maybe?
05:31:11 <Sgeo> 2007?
05:33:21 <elliott> nl_func_scope_name { Ignore, Add, Remove, Force }
05:33:21 <elliott> Add or remove newline between function scope and name in a definition
05:33:21 <elliott> Controls the newline after '::' in 'void A::f() { }'
05:33:24 <elliott> People put a newline there?
05:33:58 <shachaf> @@ @@ (@read @run unwords . map (\x -> "(@karma " ++ x ++ ")") . map concat . sequence $ [["obj","objective"],["","-"],["c"]])
05:34:00 <lambdabot> objc has a karma of 7 obj-c has a karma of 1 objectivec has a karma of 0 objective-c has a karma of 7
05:34:05 <shachaf> elliott: Sure.
05:34:13 <oerjan> mad people.
05:34:20 <shachaf> elliott: I'm guessing the motivation is "make '^functionname' greppable".
05:34:23 <oerjan> `? mad
05:34:28 <shachaf> Which isn't unreasonable motivation.
05:34:34 <HackEgo> ​"But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "we're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here."
05:34:38 <shachaf> It's similar to the reason for "void\nfoo(...)"
05:34:49 <elliott> shachaf: Isn't that what tags are for. :(
05:35:01 <shachaf> elliott: no :(
05:35:05 <elliott> No?
05:35:18 <shachaf> No.
05:35:27 <shachaf> elliott: Speaking of which, I got really confused today grepping through GHC RTS code.
05:35:28 <elliott> Why not?
05:35:29 <zzo38> Yes you are correct you must be mad or you wouldn't have come here. No escape either, sorry.
05:35:32 <shachaf> By grepping I mean ack-grepping.
05:35:37 <elliott> `addquote <zzo38> Yes you are correct you must be mad or you wouldn't have come here. No escape either, sorry.
05:35:41 <shachaf> Because ack doesn't search .cmm files by default.
05:35:41 <HackEgo> 855) <zzo38> Yes you are correct you must be mad or you wouldn't have come here. No escape either, sorry.
05:35:53 <shachaf> sorry
05:37:59 <elliott> ack-grep
05:38:14 <shachaf> ack
05:40:19 <elliott> Is that ack an acknowledgement?
05:40:28 <shachaf> No.
05:40:46 <shachaf> elliott: Let's say int (*f)(int);
05:40:57 <shachaf> How should you call f? f(5) or (*f)(5)?
05:41:10 <elliott> f(5).
05:41:25 <shachaf> But declaration-blah-use. :-(
05:41:48 <shachaf> Maybe it should be (**f)(5), just to be on the safe side!
05:42:28 <ion> > "(" ++ repeat "*" ++ "f)(5)"
05:42:29 <lambdabot> Couldn't match expected type `[GHC.Types.Char]'
05:42:29 <lambdabot> against inferred ty...
05:42:35 <ion> meh, cycle
06:05:07 <elliott> shachaf: Should I port this C++ codebase to Rust?
06:05:21 <shachaf> elliott: No. (Yes. (No.))
06:05:33 <elliott> Which one do I believe?
06:06:11 <shachaf> ((The) innermost) outermost ((one)).
06:08:27 <zzo38> elliott: None of them.
06:08:35 <zzo38> (Not even this one.)
06:08:50 <ion> Believe this one.
06:09:20 <shachaf> Believe that one ☝.
06:09:41 <ion> Keep your finger to yourself.
06:09:43 <shachaf> Believe this one: ☟
06:09:45 <zzo38> No. Don't believe any one.
06:16:55 <oerjan> Mu.
06:17:11 <shachaf> Moo.
06:29:19 <zzo38> If you want to have values of a recusrive datatype replace by the value operated by a monad, you can do something which resembles it somewhat by continuation monads, it seem like, a little bit.
06:29:58 <Sgeo> Prolog doesn't have lambdas, does it?
06:29:58 <Sgeo> :/
06:30:28 <augur_> lambda prolog does!
06:30:48 <FreeFull> C doesn't have lambdas, does it?
06:31:10 <shachaf> Lambda C does!
06:31:30 <ion> The Greek alphabet doesn’t have lambdas, does it?
06:31:50 <zzo38> Actually I think it does, isn't it?
06:32:08 <ion> zzo38: I think you may remember incorrectly.
06:32:31 <FreeFull> What about deltas?
06:36:46 <zzo38> Probably Greek alphabet have deltas too.
06:36:51 <zzo38> Probably.
06:38:50 <FreeFull> What about omicrons?
06:39:50 <oerjan> now you are just being silly.
06:40:18 <ion> Omicrons are a lie.
06:44:36 <zzo38> Perhaps you can even make up a kind of multi-continuation by CodensityAsk with some GADT.
06:46:18 <fizzie> The lambda Greek alphabet has lambdas.
06:47:34 <FreeFull> XD
06:50:58 <zzo38> Although I think it could also be made as a product of monads.
06:59:05 <zzo38> Or, make something else by Codensity with some GADT?
07:03:14 * oerjan swats everyone with a digamma -----Ϝ
07:06:07 -!- zzo38 has quit (Remote host closed the connection).
07:08:10 <elliott> that is not a digamma. that is an F
07:08:42 <oerjan> > 'Ϝ'
07:08:44 <lambdabot> '\988'
07:09:42 <oerjan> I BUG TO DIFFER
07:10:07 <elliott> my font sucks
07:10:17 <elliott> ps since when can oerjan do unicode
07:10:36 <oerjan> since some months?
07:11:11 <oerjan> at least i can cut and paste it
07:13:54 <FreeFull> That digamma looks like an F to me too
07:14:11 <FreeFull> Charmap does say it's digamma though
07:14:13 <oerjan> i assume it's what latin F descended from
07:14:26 <FreeFull> ϝ Here is a lowercase digamma
07:14:33 <elliott> if ((grd[you.x_pos][you.y_pos] < DNGN_STONE_STAIRS_UP_I
07:14:33 <elliott> || grd[you.x_pos][you.y_pos] > DNGN_ROCK_STAIRS_UP)
07:14:33 <elliott> && (grd[you.x_pos][you.y_pos] < DNGN_RETURN_FROM_ORCISH_MINES
07:14:33 <elliott> || grd[you.x_pos][you.y_pos] >= 150)
07:14:33 <elliott> && grd[you.x_pos][you.y_pos] != DNGN_EXIT_HELL)
07:14:34 <elliott> ew, I really need to fix this indentation
07:14:37 <elliott> (thanks for being my pastebin, #esoteric)
07:15:09 <oerjan> that's just elliott's subtle way of telling us to go to hell
07:16:10 <elliott> why would I need a subtle way to do that
07:16:18 <FreeFull> It's funny how zeta is between epsilon and eta
07:16:32 <FreeFull> When in latin it's at the end of the alphabet
07:16:57 <shachaf> elliott: How about fixing it with a between() function?
07:18:04 <shachaf> Wait, that's an ||, not an &&
07:18:14 <shachaf> Anyway, how about fixing it with, y'know, *some* abstraction?
07:18:32 <elliott> shachaf: I don't get paid that much.
07:18:40 <elliott> (Also I didn't write that bit.)
07:18:55 <elliott> (I was complaining more that the reformatter had messed up the alignment, really.)
07:19:05 <shachaf> Oh, you're using a reformatter?
07:19:25 <Sgeo> ...I'm pretty sure that this tutorial... isn't so great :/
07:19:25 <elliott> Yes.
07:19:34 <elliott> $ wc -l uncrustify.cfg
07:19:34 <elliott> 231 uncrustify.cfg
07:19:40 <elliott> It's... a pretty elaborate reformatter.
07:19:52 <elliott> I wrote those lines by hand.
07:20:30 <shachaf> I'm pretty sure this wine-flavored beverage...
07:20:35 <shachaf> U+1F60E
07:20:39 <ion> is not an emulator?
07:20:39 <shachaf> Isn't that grape.
07:20:45 <shachaf> s/that/so/
07:20:55 <ion> YEEEEEEEEEEEEEEEEEAAAAAAAAAAAAAAAAH
07:23:06 <elliott> oerjan: By the way, ban everyone & go to hell.
07:23:11 <elliott> (See!)
07:23:33 <oerjan> i'm sorry elliott, i cannot do that.
07:23:48 <elliott> Hmm. Have you tried?
07:24:16 <oerjan> no.
07:24:20 <shachaf> Let me try.
07:24:26 <shachaf> /op shachaf
07:24:34 <shachaf> /ban elliott
07:24:40 <shachaf> Nope, it's not working.
07:25:22 <elliott> oerjan: Then how can you be sure?
07:25:53 <oerjan> by the power of ... CHEESY REFERENCES
07:26:04 -!- epicmonkey has joined.
07:30:36 -!- oerjan has quit (Quit: leaving).
07:31:19 -!- AnotherTest has joined.
07:36:11 -!- nooga has joined.
08:18:48 -!- augur_ has quit (Read error: Connection reset by peer).
08:19:17 -!- augur has joined.
08:42:24 <itidus21> lol
08:46:54 <elliott> lol
09:25:40 -!- asiekierka has joined.
09:54:50 -!- ineiros has quit (Write error: Broken pipe).
09:54:56 -!- ineiros has joined.
10:19:33 -!- mig22 has joined.
10:19:34 -!- atriq has joined.
10:31:39 -!- david_werecat has quit (Ping timeout: 252 seconds).
10:54:49 -!- atriq has quit (Quit: Leaving).
11:18:02 -!- nortti| has joined.
11:18:50 -!- nortti- has quit (*.net *.split).
11:35:21 -!- derdon has joined.
11:55:02 -!- boily has joined.
12:41:10 <itidus21> im not up to constructing a derivative joke, but "for grape good", "wine users", "sour grapes"
12:42:19 <elliott> hi
12:47:13 <kmc> butts
12:47:43 * shachaf should sleep.
12:47:53 <kmc> hichaf
12:48:40 <shachaf> More like "good nichaf"
12:48:42 <kmc> "Did people ever refer to Kaliningrad as Soviet Prussia?"
12:48:46 <shachaf> @localtiem
12:48:50 <lambdabot> Local time for shachaf is Tue Aug 14 05:48:46 2012
12:53:37 <shachaf> kmc: Wow, irssi doesn't handle this "Zalgo" thing very well.
12:53:42 <shachaf> E.g. m̸͔̟͖̟̩͎̜̈́ͦ̽̕ͅe̪̟͉̰̼̮̞̳ͨͩ̿ͤr̵̷̼̼̙͎̗̯ͮ́͘ȉ̵̢̟̰̝̻́͊̔̄ͦ̚͠j̖̱͆̓͌̽̃͊̚͜n̟̗ͨ͗̀͝
12:54:47 <itidus21> singing talent show winner becomes judge on singing talent show several years later.
12:55:42 <shachaf> (singing (talen show winner)) becomes (judge on singing) (talent show) several years later.
12:59:36 <fizzie> Several talent show years later.
12:59:42 <fizzie> (They're very different from regular years.)
12:59:43 <shachaf> m̪̰̬̙̝̂̊͟͝e̺̠͚̳̯̯͚̠͉͒̇̓ͪr͈̠̹̖̩̲̰͔ͧ͟i̿ͥ҉̬̫̺̕j̶͙̭̭̼̰̤͑ͦ̒ͪͬͨ͘ͅn̡̫̣̲̳̘̝̝͗̏̀̚
12:59:46 <shachaf> ̨̞̟̰ͣ̎͊͘m̴̟̤̬͎̩̺̮̗̑ͧ̑͟ë̫̪͉͚͓͙̗̰́͂͋̌͗r̜͊̓ͥͩ̄̐ī̵̴͓̬̾̏̈́ͫj̷͈̯̤̣͚̏̃ṉ̴̛̹͙̄̃̍ͧ͜
12:59:49 <shachaf> ̯͓̪̜͙̉ͫ͗̀ͯ̈́̋ͫ͜m̧̠̾͟ȅ̸̠͉͍̗̙͕̩̣ͤ̄ͭ̅͠r̸͙̣̦̫͎͈̩̲͗ͪ̍i̴̟̱͇͖͎̪̮ͣ̅̀̿͐̊̿͠j̣͙̜̃̒͡n̡͚̥̔̑̑ͧͭ̂̍́
13:00:04 <itidus21> from WP "[has performed] for Pope Benedict XVI, Oprah Winfrey and Queen Elizabeth II"
13:00:05 <shachaf> I wonder what that looks like to other people.
13:01:38 <itidus21> for me it's merijn with lots of boxes with four 0's
13:01:39 <kmc> i found "Texas Honkey-Tonk Cantina" in Estonia
13:02:18 <fizzie> kmc: Was it an Authentic American Experience?
13:04:03 <itidus21> in my home suburb, on the main road are the typical australian shops, but head down the side streets and you enter a very asian world
13:04:15 <itidus21> i feel like a complete outsider there
13:04:39 <kmc> fizzie: beats me
13:04:47 <kmc> i have little desire to eat there
13:05:08 <itidus21> they would rightfully all wonder if some scruffy 30yr old wandering about in the middle of the day was selling or seeking drugs
13:05:13 <fizzie> Maybe if you tell them some American secrets you'd get a discount.
13:07:13 <fizzie> There's a "Classic American Diner" in Tampere, Finland, incidentally.
13:07:14 <itidus21> start eating some chocolate and it probably looks like i've got the munchies
13:07:26 <fizzie> It's not quite up to a "Honkey-Tonk" standard though.
13:07:57 <itidus21> a place actually named honkey-tonk sounds hardcore levels of american
13:07:58 <quintopia> reminds me of iceland's kantrybaer
13:08:44 <quintopia> (pardon my filure to use fancy latin-1 symbols)
13:08:45 <fizzie> They've decorated the Diner in some sort of fakey-American way.
13:09:10 <ion> Latin-1? Vade retro!
13:09:17 <itidus21> fizzie: and dress like this? http://images.tvrage.com/screencaps/31/6190/206619.jpg
13:10:04 <fizzie> itidus21: Well, they had some sort of an uniform, that much I remember; maybe not exactly like that.
13:10:26 <itidus21> heres another! http://download.lardlad.com/framegrabs/3F20/124.jpg
13:10:31 <fizzie> It looks like this: http://www.fonecta.fi/images/stillpics///files/369441.fonecta.client/1240246822148_1_large.jpg
13:10:44 <itidus21> oh wow
13:11:16 <fizzie> I'm trying to find a photo that'd show their "paintings", I think there was something about them.
13:12:15 <fizzie> These are all so low-resolution things. :/
13:12:46 <fizzie> I think they had photoshopped stuff so that it looks as if they'd have existed for years and years, or something like that.
13:13:21 <itidus21> i remember some restaurant here which had license plates all over the walls.. and was called captain america's
13:14:53 <fizzie> They have some sort of a competition that you get your name on the hall-of-fame list if you eat (alone) one of their "Big Tower" burgers; it's got 1020 grams of meat, plus all the other stuff.
13:14:58 <fizzie> That I guess is American?
13:15:34 -!- oerjan has joined.
13:15:59 <itidus21> i have been convinced that eating comically oversized burgers designed to give you heart problems is an american tradition
13:17:37 <oerjan> reminds me of my old coworker's ex-wife, when she was in the us she supposedly got a diploma for eating "the world's hottest burger"
13:18:22 <oerjan> (she also had the habit of making food so spicy they had to throw it away)
13:19:15 <fizzie> There was a chili sauce with the brand name "PAIN 100%" advertised in the shop yesterday.
13:20:09 <fizzie> http://www.scorchio.co.uk/pain-sauce-p-433.html <- this one.
13:20:22 <fizzie> I doubt it's very high up in any rankings or anything, but at least it tries.
13:20:24 <oerjan> 08:42:24: <itidus21> lol
13:20:24 <oerjan> 08:46:54: <elliott> lol
13:20:30 <fizzie> oerjan: lol
13:20:54 <oerjan> you know if history had taken a slightly different turn "lol" could be the emoticon for raising both hands in celebration
13:20:57 <itidus21> looks like a patent medicine
13:21:07 <elliott> fizzie: TELL ME ABOUT: Code reformatters.
13:21:25 <oerjan> i'm sure myndzi would agree, except he's not here :(
13:21:45 <fizzie> Oh, and I was in this real backwoods "bar" today, and they had a (handwritten) page advertising their Facebook page on the bulletin board.
13:21:47 <quintopia> oerjan: why would it have been? \o/ looks morerealistic
13:21:51 <itidus21> oerjan: to me they look like tanks with missing turrets
13:21:57 <oerjan> itidus21: a nocebo medicine
13:22:01 <fizzie> elliott: I don't know about them.
13:22:19 <itidus21> oh nocebo....... i only recently saw this word on WP
13:23:03 <oerjan> dun dun dunning-kruger, wait haven't i said that before
13:23:47 <elliott> fizzie: Useless. :(
13:24:15 <oerjan> quintopia: maybe if backslash had never been invented...
13:24:43 <quintopia> oerjan: what a strange alternate universe
13:24:59 <oerjan> in this universe, windows somehow was nearly unix-compatible from the start
13:25:21 <quintopia> that was probably intentional
13:26:01 <oerjan> as a result, linux never took off, and open source is restricted to the marginal gnu movement
13:26:13 <itidus21> this is my artistic depiction of lol's as tanks http://oi46.tinypic.com/2cieivn.jpg
13:26:36 <quintopia> why not tie fighters?
13:26:54 <oerjan> why not zoidbergs?
13:26:57 <kmc> seen in sarajevo: http://i.imgur.com/fGBV3.jpg
13:27:48 <itidus21> well i saw the L's as the tank treads
13:28:09 <quintopia> they look like side-mounted turrets in that pic
13:28:27 <oerjan> fizzie: did the bar have a handwritten qr code?
13:28:33 <itidus21> fair enough
13:28:39 -!- derdon has quit (Remote host closed the connection).
13:28:52 -!- Phantom_Hoover has joined.
13:28:55 <itidus21> one thing for sure is that they look like they should look like something
13:29:07 <itidus21> ^lol's that is
13:30:01 <itidus21> the person raising their hands is so obvious in hindsight
13:34:04 <fizzie> oerjan: Sadly, no. :/
13:34:19 <fizzie> But I located the place after a bit of Google Mapsing around: http://goo.gl/maps/rJf7g
13:34:26 <fizzie> (Should open a streetview thing.)
13:34:33 <fizzie> It didn't look like a Facebooky place.
13:36:09 <fizzie> Their page stats seem to be: "6 like this; 1 talking about this; 27 were here; Also on: foursquare".
13:36:48 <fizzie> The foursquare page has 13 total people, 14 total check-ins; the Mayor of the place is the one with 2.
13:37:33 -!- oerjan has quit (Quit: Good night).
13:55:39 <Gregor> ??? Pidgin's Skype plugin highlights both parties in the same color.
14:19:05 <coppro> lol foursquare
14:45:12 -!- mig22 has quit (Quit: mig22).
14:50:54 <Gregor> <itidus21> i have been convinced that eating comically oversized burgers designed to give you heart problems is an american tradition // I admit that I have done this.
15:20:27 -!- ogrom has joined.
16:20:03 -!- asiekierka has quit (Quit: Connection reset by PO).
16:55:38 -!- derdon has joined.
16:58:35 -!- zzo38 has joined.
17:07:56 <FreeFull> Burgers that give you more calories than you should have in a day?
17:09:42 <ogrom> are there such burgers?
17:12:24 <FreeFull> Yes
17:20:33 -!- elliott has quit (Ping timeout: 272 seconds).
17:21:30 -!- epicmonkey has quit (Ping timeout: 244 seconds).
17:27:57 <fizzie> Is a kilogram of meat enough for that?
17:28:10 <fizzie> (With all the other fluff you'd expect in a burger with a kilo of meat.)
18:01:59 -!- monqy has joined.
18:20:05 <Sgeo> When your middle name is danger...
18:20:20 <monqy> is this a joke about bad parenting
18:20:23 <monqy> i love jokes
18:21:04 <Sgeo> It's the name of a song
18:21:07 <Sgeo> http://www.youtube.com/watch?v=tw2VDWB-u2Y
18:21:24 <monqy> what an awful joke
18:34:00 -!- ogrom has quit (Quit: Left).
18:42:19 -!- epicmonkey has joined.
18:57:05 -!- AnotherTest has quit (Quit: Leaving.).
19:28:17 <Phantom_Hoover> monqy, what's green, grows on lawns and is made of concrete.
19:29:52 -!- Taneb has joined.
19:30:47 <monqy> i'm bad at riddles
19:30:47 <olsner> hmm, I don't like that hg commits are annotated with the branch name
19:30:55 <Phantom_Hoover> monqy, it's grass.
19:31:03 -!- Taneb has changed nick to atriq.
19:31:52 <olsner> what if my local naming scheme for branches is like anagrams of "fucktard" or something?
19:32:39 <olsner> or... multiples of 97 in finnish
19:33:50 <olsner> apparently, "The biggest advantage to using named branches is that every changeset on a branch has the branch name as part of its metadata"
19:37:08 <fizzie> olsner: Nolla, yhdeksänkymmentäseitsemän, satayhdeksänkymmentäneljä, kaksisataayhdeksänkymmentäyksi, kolmesataakahdeksankymmentäkahdeksan, neljäsataakahdeksankymmentäviisi, and so on.
19:37:40 <olsner> fizzie: indeed
19:38:08 <olsner> except I'd probably start at yhdeksänkymmentäseitsemän
19:38:20 <atriq> Today I spent money on cosplay
19:38:47 <fizzie> olsner: Are you saying 0 is not a multiple of 97!
19:40:54 <olsner> fizzie: no, I'll just leave that particular multiple for last since it's boring
19:41:46 <olsner> also, why use yhdeksänkymmentäseitsemänsata when you can jump straight to yhdeksänkymmentäseitsemänsatayhdeksänkymmentäseitsemän
19:42:57 <olsner> when is it sata and when is it sataa?
19:43:39 <zzo38> atriq: What money and what cosplay?
19:43:58 <atriq> zzo38, Jake English cosplay, 50 pence for some sticky tape
19:44:08 <olsner> is there no torvalds rant about how mercurial is ridiculously stupid?
19:44:21 <Phantom_Hoover> atriq, i don't think jake wears sticky tape
19:44:35 <atriq> Phantom_Hoover, you don't know how cheap my cosplay is
19:44:43 <Phantom_Hoover> um
19:44:51 <Phantom_Hoover> are you making sticky tape glasses?
19:44:56 <atriq> No
19:45:05 <atriq> I printed out his symbol and stuck it to my shirt
19:46:23 <ion> olsner: “A hundred”: “sata”. “Two hundred”: “kaksisataa”, like “two hundreds”.
19:46:26 <atriq> It keeps ripping
19:46:30 <fizzie> olsner: It's "sata" if there's just one hundred.
19:47:04 <Phantom_Hoover> atriq, just say you're Jake post-robot fight.
19:47:08 <fizzie> olsner: And you wouldn't generally say "yhdeksänkymmentäseitsemänsataayhdeksänkymmentäseitsemän" for 9797 either, you'd just say "yhdeksäntuhatta seitsemänsataayhdeksänkymmentäseitsemän".
19:47:21 <atriq> Phantom_Hoover, it ripped during the course of the day
19:47:39 <atriq> And in an odd place
19:48:16 <olsner> fizzie: ah, of course ... I didn't know the word for thousand yet :)
19:48:24 <atriq> Hey, the University of Canberra wants my oppinion
19:49:18 <fizzie> olsner: That's tuhat/tuhatta (compare sata/sataa) if you happen to need a single thousand in Finspeak.
19:50:00 <olsner> there's bound to be one or two multiples of 97 between 1000 and 2000
19:50:12 <fizzie> You never know.
19:50:26 <atriq> We also got kicked out of...
19:50:34 <atriq> the top floor of the multi-storey car park
19:50:39 <olsner> no, it's like unexplored terrain, we'll see when I get there
19:50:47 <fizzie> olsner: I tried three random numbers that were >= 1000, < 2000, and none of them were multiples of 97. It doesn't look good.
19:51:55 <olsner> I found two primes after just 10 numbers, so 1/5 numbers are primes, but 0/3 are multiples of 97
19:52:29 <fizzie> I think this is what's called mathematics.
19:53:03 <olsner> Mathematics, or the art of finding and observing numbers
19:53:35 <FreeFull> Dziewieć tysięcy siedemset dziewiećdziesiąt siedem
19:54:34 <FreeFull> I think 194 is a multiple of 97
19:54:42 <fizzie> But it's not over a thousand.
19:54:44 <FreeFull> So 1940 would be too
19:54:55 <fizzie> How come!
19:55:01 <olsner> are either of 194 or 1940 primes?
19:55:05 <FreeFull> No
19:55:08 <atriq> fizzie, psychology
19:55:18 <FreeFull> A prime isn't a multiple of anything but 1 and itself
19:55:32 <atriq> Numbers tend to act like numbers that look like numbers similar to themselves
19:55:35 <atriq> Peer pressure and thart
19:55:43 <fizzie> I see, how clever.
19:55:54 <FreeFull> So no multiple of 97 other than 97 is a prime
19:56:30 <olsner> how do you know? have you checked all of them?
19:56:44 <FreeFull> Yes, I have
19:57:59 <olsner> you can't have, there's an infinite number of primes! 1/5th of infinity is still infinity, you know
19:58:34 <ion> Oh, elliott is not here.
19:58:55 <ion> They mistyped his name. ‘According to sources, despite his initial concern, Ryan relaxed after deciding that Romney would "absolutely love Elliot" when the two met at the Republican National Convention later this month.’ http://www.theonion.com/articles/paul-ryan-wondering-if-he-should-have-told-romney,29166/
19:59:23 <FreeFull> olsner: I checked all of them
19:59:27 <FreeFull> The whole infinity
19:59:42 <FreeFull> 97 is the only prime that is a multiple of 97
20:00:34 <olsner> I see
20:11:55 <atriq> That must have taken a while
20:19:09 -!- atriq has set topic: Behold! The enchanting pants of Narcissus! | Just a remote control and some old gum | atriq is Taneb, just so you know | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
20:19:42 <ion> Hah. Stephen Colbert mentioned “Hepatitis C++”
20:35:00 -!- ais523 has joined.
20:36:10 <atriq> Hmm
20:36:22 <atriq> newb isn't in my spell-checker, but newbie is
20:36:40 <Gregor> That's because it's spelled “n00b”
20:37:54 <olsner> "newb" is in a weird place between not correctly spelled and not sufficiently incorrectly spelled
20:48:42 <zzo38> However, does your spellcheck ignore digits in words?
20:49:20 <atriq> zzo38, it treats them as whitespace
20:49:26 <atriq> Same with "'"s
20:49:35 <atriq> Which makes it think "isn't" isn't a word
20:50:01 <zzo38> Oops
20:51:45 <olsner> sounds like you should throw it out and start checking your spelling manually and/or learn to spell
20:51:50 <ais523> aargh
20:52:00 <ais523> compiler I've written is failing due to some sort of combinatorial explosion that causes strings to not fit in memory
20:52:14 <ais523> boss's solution is to attempt to rewrite the compiler to use a data structure other than strings, which has a higher length limit
20:53:27 <ais523> I'm currently trying to explain why that's unlikely to help
20:53:39 <olsner> is the compiler using only string as its data structure?
20:53:43 <ais523> (apart from the obvious reasons, there's also the issue that the string in question is copied to the compiler's output)
20:53:57 <ais523> olsner: no, this is happening within the output code
20:54:15 <ais523> when it converts its parse tree representation of the code it wants to generate to a string so it can put it in a file
20:55:02 <olsner> oh... that'll really fix itself by allowing strings longer than the strings that don't fit in memory in the first place
20:55:18 <FreeFull> ais523: Can't it write the string straight to the file without storing it in memory?
20:55:53 <olsner> you should point out that the real problem is the lack of infinite storage and suggest he buys you a turing machine
20:58:23 <ais523> FreeFull: you are missing the point
20:58:38 <ais523> just like my boss is
20:58:58 <ais523> a combinatorial explosion in the length of the output is going to make the output useless
20:59:11 <FreeFull> Why is it growing so much?
20:59:13 <ais523> especially as we're targetting embedded systems here…
20:59:19 <ais523> FreeFull: I don't know, presumably a bug
20:59:35 <FreeFull> Well, I assumed it was intentional
21:02:13 <ais523> why?
21:02:26 <ais523> why would you think I'd intentionally put a combinatorial explosion in my compilers?
21:04:26 <olsner> maybe your objective is to make your boss disappear for a few weeks implementing special over-long strings so you can get some work done
21:04:29 -!- Patashu has joined.
21:05:38 -!- Patashu has quit (Client Quit).
21:09:31 -!- atriq has quit (Quit: Leaving).
21:28:20 -!- epicmonkey has quit (Ping timeout: 265 seconds).
21:30:02 -!- boily has quit (Quit: Poulet!).
21:34:12 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:52:23 -!- david_werecat has joined.
21:56:54 <zzo38> Can you make a music by square wave?
21:58:14 <coppro> oh man
21:58:15 <coppro> this is great
21:58:39 <zzo38> What is great?
22:00:09 <ion> zzo38: Sure, although in digital synthesis you have to use band-limiting to avoid aliasing artifacts.
22:01:16 <shachaf> ion: I'm totally in parentheses right now, if you know what I mean.
22:01:28 <lexande> hmm if everybody here is Finnish, any suggestions for things to do in Helsinki?
22:01:30 <zzo38> ion: Well I suppose you can do that too. Famicom audio 2A03, VRC6, MMC5, Sunsoft includes square channels most of them you can adjust the duty as well except Sunsoft is fixed at 50% duty.
22:01:41 <shachaf> lexande: I'm Finnish but I've only spent two weeks of my life in Finland.
22:01:55 <shachaf> For one of them I was three years old.
22:02:34 * ion strips shachaf out of parentheses with $
22:02:59 <shachaf> ion: You have no idea what you're doing, fool!
22:03:04 <shachaf> I have a *type signature*!
22:03:30 * ion unsafeCoerces shachaf
22:03:40 <shachaf> It won't help.
22:04:04 <shachaf> foo $ shachaf :: bar, see.
22:04:17 <shachaf> lexande: Did you go to a sauna? That's a popular thing to do in Finland.
22:04:23 <shachaf> I hear that's all they ever do, in fact.
22:04:42 * ion is on IRC from sauna
22:04:44 <zzo38> 2A03 and MMC5 square channel is 12.5% or 25% or 50% or 75% duty, and VRC6 square channel can have eight settings of duty from 1/16 to 8/16.
22:05:19 <zzo38> Famicom Disk System audio can also be programmed with a square wave.
22:05:34 <ion> zzo38: PWM with square waves is a nice effect in music synthesis.
22:06:22 <zzo38> ion: OK. Possibly it can be made also with Csound.
22:08:25 <zzo38> Does Csound have a command for PWM?
22:11:17 <zzo38> ion: Have you written music?
22:11:24 <ion> Yeah, some.
22:11:44 <zzo38> Which one? What program? What format? What other stuff?
22:12:13 <shachaf> ion probably used Famicon Disk System.
22:12:38 <zzo38> shachaf: Are you sure?
22:13:14 <shachaf> zzo38: No.
22:13:29 <ion> I’ve used Lilypond to engrave musical scores. Other than that, don’t really use PCs to make music. (Except i’d like to continue my software synthesizer project some day, but i have trouble getting things done.)
22:14:52 <zzo38> What software synthesizer project is it?
22:15:32 <ion> Nothing special, just a program that takes MIDI in and pushes audio out.
22:16:34 <fizzie> ion: You must be taking part in some kind of vagueness-in-IRC competition, right? :p
22:17:17 <ion> I’m not sure what to say about it. :-D
22:17:32 <ion> It’s a software synthesizer. That’s what it does.
22:17:35 <zzo38> I found some program to make MIDI file, called SakuraMML, but I get some error when I try to use it in my computer
22:18:43 <ion> I was writing it in C++ in 2004 and this was the last thing i got out of it before the project pretty much died. If i ever get around to continuing, i’ll write it from scratch in Haskell. http://johan.kiviniemi.name/tmp/syna-20040729.ogg
22:18:55 <zzo38> OK
22:19:13 <zzo38> Csound can also take MIDI to make audio out.
22:19:25 <ion> Yes, plenty of programs can.
22:20:01 <fizzie> ion: Sure, sure, but that would cover just about anything. Is it a wavetable kind of thing, or a pile of LFOs and simple waveforms and filters wired together and summed up, or something more generic, or something more restricted?
22:20:24 <zzo38> Although, Csound can also take other input formats as well, such as the numeric score. It doesn't have MML but possibly software could be written to convert MML to numeric score format.
22:20:33 <ion> I used band-limited impulse trains.
22:21:39 <ion> But it could use any method of synthesis, that’s just what i implemented (in addition to pure sine waves) so far.
22:21:51 <fizzie> That's more like it. (Though I have zero clue why I proceeded with the interrogation.)
22:22:13 <ion> http://www.youtube.com/watch?v=qZBXA4ye_us&fmt=18 http://johan.kiviniemi.name/music/delusions_of_grand_piano.pdf
22:24:14 <ion> The sound in syna-20040729.ogg consisted of a “supersaw”, i.e. two sawtooth waves (made by integrating BLITs with an appropriate bias) playing the same thing with one of them very slightly out of tune. And the output was low-pass filtered.
22:24:28 <ion> with a varying cutoff frequency
22:25:15 <zzo38> Csound has a large number of commands for synthesis, though, including sine waves, wavetable, waveguide, granular, FM, additive, subtractive, noise, physical modeling, stochastic, samples, prepared pianos, and a lot more and they can also be combined using mathematical formulas.
22:25:24 <ion> yes
22:25:37 -!- ais523 has quit (Ping timeout: 246 seconds).
22:26:57 <zzo38> There are also many kind of input, including MIDI, GUI, Wii remotes, etc
22:27:38 <FreeFull> I wrote an FM synth in C that outputs raw sound data
22:28:30 <zzo38> The VRC7 Famicom audio is also FM synthesis
22:29:03 -!- ais523 has joined.
22:29:13 <zzo38> I wrote a sine wave synth in C that combine wave to make sound for telephones (DTMF, blue box, red box, dial tone, busy signals, SIT) and that outputs raw sound data.
22:31:56 <zzo38> Does anyone make .NSF using all six expansions including the 2A03 audio?
22:33:38 <fizzie> I heard a rather fancy "sound texture synthesis" presentation at a conference a while ago. The funniest bit was that even though it's really non-physically-inspired (bandpass filterbank + parametric statistics -- distribution moments up to kurtosis, auto- and crosscorrelations -- of the subbands, and then synthesis to get signals with those parameters) it did a rather nice job of reproducing ...
22:33:45 <fizzie> ... sort of "stationary" environmental sounds, like rain, wind, fire, whatever.
22:33:50 <fizzie> (I may have already mentioned this.)
22:34:18 <zzo38> O, OK. Do you have a Csound code to implement those sound effects?
22:37:27 <ion> fizzie: Sounds cool. Do you have a URL?
22:38:09 <fizzie> zzo38: No, though their paper has the algorithm, and it should be possible to reimplement it. Maybe I should give it a go some day. (Though they don't give their parameter values for their sample sounds, which they mention were based on collecting those statistics from "commercially available CDs".)
22:38:38 <fizzie> ion: http://www.cns.nyu.edu/~jhm/mcdermott_waspaa09_final.pdf looks like the paper I remember, though I haven't been to that workshop.
22:38:45 <ion> Thanks
22:38:50 <fizzie> It was possibly at ICASSP.
22:40:47 <fizzie> It has some amount of possibly-not-so-interesting-from-some-perspectives stuff about perception.
22:41:02 <fizzie> I see they've made a longer journal paper out of it: http://www.cns.nyu.edu/~jhm/McDermott_2011_texture_w_SI.pdf
22:41:15 <fizzie> But that probably goes deeper to that side of it.
22:41:59 <ion> Thanks
22:42:26 <fizzie> (And you can probably get more "realistic" sound synthesis by other means if that's the primary goal, I just thought it was kinda interesting.)
22:43:47 <fizzie> Man, synthesis people have it so easy, they can just have a presentation with 50% (or more) of demo audio samples, and everyone'll sit, listen and pay attention since it's not just a boring presentation like a hundred others.
22:51:57 -!- nooga has quit (Ping timeout: 265 seconds).
22:53:50 -!- mig22 has joined.
22:54:09 <fizzie> Went to the logs to find out where I heard about this thing, and found this amusing description of a guy who used to stick electrodes into ferret brains.
22:54:37 -!- mig22 has quit (Client Quit).
22:57:32 <fizzie> I think I've pasted this before, but maybe it's still amusing: http://sprunge.us/ENPI
23:03:43 -!- nooga has joined.
23:08:30 -!- nooga has quit (Ping timeout: 248 seconds).
23:10:34 -!- Lumpio- has joined.
23:11:35 -!- hogeyui_ has joined.
23:12:31 -!- kinoSi has joined.
23:14:22 -!- MoALTz has quit (Quit: Leaving).
23:47:18 <zzo38> Do you know if the Bluetooth on OpenPandora is compatible with Wii remotes? Also do you know if it is possible to replace the operating system, and if doing so will affect the battery life?
23:59:30 <soundnfury> wait... quintopia and shachaf are /both/ LWians?
23:59:40 * soundnfury is freaked out by small worlds
2012-08-15
00:04:03 <shachaf> soundnfury: I'm not LWian!
00:04:06 <shachaf> Whatever that is.
00:06:36 <soundnfury> shachaf: you appear to be in #lesswrong
00:07:55 <shachaf> I'm in a lot of channels.
00:14:29 <Lumpio-> If it had a Bluetooth module it should be able to handle a wiimote, I dunno about drivers though
00:14:33 <Lumpio-> But if you're gonna replace the OS anyways...
00:14:42 <Lumpio-> s/had/has/
00:21:13 <zzo38> Lumpio-: I mean the Bluetooth hardware, not the drivers. Some Bluetooth hardware seems to be incompatible with Wii remote.
00:21:19 <Lumpio-> Really?
00:21:21 <Lumpio-> That's weird
00:21:27 <zzo38> I don't know why.
00:21:29 <Lumpio-> I thought the wii remote was a completely normal Bluetooth device
00:24:11 <zzo38> It says it is HID joystick with zero buttons, zero axes, zero everything else, since it uses its own protocol.
00:24:47 <Lumpio-> Yeah it doesn't work with a HID driver alone but a proper Bluetooth module shouldn't care what protocol things use
00:24:50 <Lumpio-> That's the OS's job...
00:26:23 <zzo38> I know it won't work with a HID joystick driver, I know it will only work with program that specifically uses the Wii remote, but it seems some Bluetooth hardware fails to work with it for some reason, although maybe it is a mistake.
00:26:55 <Lumpio-> Well taking into account all the weird kind of hardware out there I guess it's possible that some half-arsed Bluetooth implementation would fail to work with specific devices...
00:27:09 <zzo38> Yes possibly
00:28:49 -!- kinoSi has quit (Read error: Connection reset by peer).
00:29:16 -!- kinoSi has joined.
00:29:52 <zzo38> What would be your opinion of this? http://wiki.nesdev.com/w/index.php/User:Zzo38/DotFami
00:44:14 <Lumpio-> Mappers as components huh
00:46:01 <zzo38> Yes. Just a few seconds ago I fixed a few things there too.
00:46:32 <Lumpio-> Is there really demand for that? It's not like there are so many mappers you can't just quickly implement each one in the emulator
00:46:42 <Lumpio-> I doubt any new ones will be made either.
00:46:50 <Lumpio-> Also is there a reason for not just using Unicode for text?
00:46:53 <zzo38> I expect the current "Mapper Audio" list is complete, although the "Mapper Component" list is probably very incomplete.
00:48:07 <zzo38> Lumpio-: Well, you might want to implement customized mappers, too. Also, the reason to not use Unicode text is due to being too complicated to display and cannot fit into a CHR ROM (although it may be changed to Unicode or even a different encoding; this document is a draft anyways).
00:49:07 <zzo38> Many things have changed since th first version of the draft, from suggestions and other things, such as increasing the number of banks to 16-bits instead of 8-bits (I thought 8-bits was enough but I was told otherwise, so I corrected this).
00:49:39 <Lumpio-> Why do things that have nothing to do with the functionality of the game like the title or published information have to go into "CHR ROM"
00:49:46 <zzo38> The CPU mode flag was different; it used to contain some features which are unneeded so I removed the unneeded features.
00:49:53 <Lumpio-> Can't it just have extra metadata tags that are completely separate from the game ROM itself?
00:50:10 <Lumpio-> publisher* even
00:50:27 <zzo38> Lumpio-: They don't, but if you want to make up a multigame cartridge it would be useful for them to be in CHR ROM. They are not a part of the CHR ROM of the .fami file itself.
00:52:07 <zzo38> (Of course the multigame cartridge itself could also be implemented using this format, and the program to create the .fami for the multigame cartridge could add a CHR ROM for the titles and so on.)
00:53:19 <zzo38> This is also one of the reasons for the "***" entries in the ASCII/shortkana table (another reason for the "***" is since some emulators might use null-terminated strings internally, and so on).
00:56:36 <zzo38> But it may be changed since it is draft, and if you have any arguments against it then please to say so.
00:57:03 <quintopia> "it is bad for no reason"
00:58:40 <zzo38> That doesn't count.
01:11:44 <zzo38> Nevertheless I plan to add feature to MagicKit assembler for NES 2.0, UNIF, and DotFami output formats, by adding the following commands: .NES2SUB .NES2PRGRAM .NES2CHRRAM .NES2TV .NES2VS .UNIFMAP .UNIFTV .UNIFCTRL .UNIFCHECK .UNIFBATTERY .UNIFVRAM .UNIFMIRROR .UNIFPRG .UNIFCHR .FAMISYM .FAMIMAP .FAMILABEL .FAMICPU
01:16:50 <zzo38> I also intend to define some format for files which are used to convert iNES and UNIF mappers into DotFami which can be used by an emulator supporting DotFami to convert iNES and UNIF files internally into DotFami (no need for .fami files of those games) and automatically supports any iNES mapper numbers and UNIF mapper names defined in future!
01:21:16 <Lumpio-> What's the "short" for shortkana for
01:22:24 <zzo38> Because it a shorter encoding than the full hiragana+katakana and Unicode and ShiftJIS and whatever else.
01:22:34 <Lumpio-> k
01:23:00 <Lumpio-> It's missing some pretty common characters though.
01:24:03 <Lumpio-> I'm pretty sure ァィゥェォ (the small versions) appear in game names all the time
01:24:14 <Lumpio-> And perhaps even ヴ
01:24:52 <zzo38> OK I can add those, possibly rearranging some existing to make room (such as replacing the WA column with the small A column and moving around)
01:25:08 <zzo38> You are correct.
01:27:48 <zzo38> OK, I fixed it. Thanks for notifying me.
01:28:58 -!- derdon_ has joined.
01:30:32 <Lumpio-> (I still firmly hold that any and all text should be stored as UTF-8)
01:31:48 -!- derdon has quit (Ping timeout: 245 seconds).
01:36:34 <zzo38> For some cases UTF-8 is too complicated or there are other reasons not to use it. Sometimes UTF-24 or UTF-32 will be wanted, or ASCII, CP437, or another encoding which is suitable for whatever it is being used for. (If I wanted to store data of a Commodore 64 metadata, or music or whatever, I would use the C64 PETSCII instead of ASCII.)
01:47:47 -!- derdon_ has quit (Remote host closed the connection).
02:05:22 <Phantom_Hoover> Lumpio-, what if you want your text to be random-accessible?
02:05:52 <zzo38> Phantom_Hoover: Yes that is another thing to consider.
02:06:52 <zzo38> Do you know of Open Pandora NAND flash is subject to read disturb?
02:07:17 <Phantom_Hoover> That's quite a big one, unless you're Elliott "write a fortune that selects a random line in the quote file and seek backwards to a separator, statistics be damned" Hird.
02:32:29 -!- oerjan has joined.
02:34:01 -!- zzo38 has quit (Read error: Connection reset by peer).
02:37:29 <Sgeo> Is Comodo firewall terrible just because http://www.reddit.com/r/netsec/comments/7ldfz/watch_out_for_phony_certificates_comodousertrust/
02:43:23 <Phantom_Hoover> Probably not, but why not just use a different firewall?
02:43:34 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
02:45:59 <Sgeo> >.> I already installed it on my friend's computer (Windows Firewall isn't working)
02:46:50 -!- TodPunk has joined.
02:53:36 -!- TodPunk has quit (Quit: This is me, signing off. Probably rebooting or something.).
02:56:01 <augur> are there any "competitions" for developing board game AIs?
02:56:15 <augur> i imagine that would be something some people here would be interested in
02:59:25 -!- TodPunk has joined.
03:00:55 -!- david_werecat has quit (Ping timeout: 252 seconds).
03:08:31 -!- kallisti_ has changed nick to kallisti.
03:10:04 <Phantom_Hoover> augur, well you could enter them in a board game tournament.
03:10:20 <augur> Phantom_Hoover: i was specifically thinking of AI-vs-AI competitions
03:11:04 <Phantom_Hoover> augur, multiple AIs could enter!
03:11:11 <augur> :P
03:11:29 <augur> we should start an AI-vs-AI competition!
03:13:14 <oerjan> there surely must be some in chess
03:14:08 <oerjan> http://en.wikipedia.org/wiki/World_Computer_Chess_Championship
03:14:26 <augur> nice
03:14:40 <oerjan> http://en.wikipedia.org/wiki/Computer_Olympiad
03:14:51 <augur> im more interested in algorithmic competition tho
03:15:01 <augur> because that looks like its just arbitrary comeptition
03:15:30 <oerjan> "For the 2009 edition, the rules were changed to limit platforms to commodity hardware supporting at most eight cores,[1] thereby excluding supercomputers and large clusters."
03:15:39 <oerjan> i guess that makes it more algorithmic
03:15:52 <augur> ya
03:16:00 <augur> we should start one tho!
03:16:13 <augur> maybe for go or some other more exotic game
03:16:53 <oerjan> http://en.wikipedia.org/wiki/World_Computer_Chess_Championship#World_Chess_Software_Championship is even more specific
03:18:39 <oerjan> "Games which the Olympiad would like to run, but have so far been unable to due to lack of entrants:"
03:18:42 <oerjan> Arimaa
03:18:43 <oerjan> Twixt
03:18:45 <oerjan> Matrix
03:22:56 <augur> we should develop a thing for designing Go algorithms
03:23:37 <augur> like, it would basically need to be a game environment with common commands for interacting with the game
03:30:22 <itidus21> gofuck?
03:31:09 <itidus21> ^just a joke
03:31:22 <augur> lol
03:31:42 <augur> itd be interesting to try different styles of problem solving too
03:31:48 <itidus21> derivatives include gofuckyourself
03:31:49 <FreeFull> So I'm learning Haskell
03:31:52 <FreeFull> Is this a good idea?
03:31:55 <augur> FreeFull: yes
03:32:17 <FreeFull> So far nothing too unusual encountered
03:32:53 <augur> how bout the monads
03:33:35 <itidus21> gofuck encapsulates it's side effects in gonads
03:34:16 <FreeFull> If this tutorial has introduced monads to me yet it hasn't done so by name
03:35:15 <augur> FreeFull: good.
03:35:18 <augur> what tutorial?
03:37:11 <Sgeo> augur, how about Arimaa?
03:38:19 <FreeFull> LYAH
03:38:39 <augur> Sgeo: whats arimaa
03:38:42 <augur> FreeFull: ahh hmm
03:39:44 <augur> Sgeo: ah, it seems interesting i guess
03:43:10 -!- copumpkin has joined.
03:57:37 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:12:31 -!- zzo38 has joined.
04:14:30 <oerjan> zzo38: i saw edwardk made a suggestion on a ghc mailing list to change Control.Category to use PolyKinds
04:14:59 <oerjan> he had several possible applications listed
04:16:08 <zzo38> oerjan: O, well it is something similar to what I have suggestion I guess
04:16:42 <zzo38> Do you know if you can get USB hardware (host and cables too) which are compatible but are not labeled as compatible with USB?
04:16:48 <oerjan> yes i thought it sounded relevant to things you've discussed
04:17:06 <oerjan> and no.
04:27:17 <zzo38> Are there possible to make a USB vendor ID that can be used by a large number of products? Is there possibility to just use zero VID/PID/serial for large number of things (possibly with a switch on the device if multiple device need to be distinguished)?
04:31:33 <zzo38> Is zero a valid VID/PID for USB?
06:05:37 <itidus21> google Is zero a valid VID/PID for USB?
06:05:44 <itidus21> @google Is zero a valid VID/PID for USB?
06:05:46 <lambdabot> http://developer.intra2net.com/mailarchive/html/libftdi/2011/msg00315.html
06:05:46 <lambdabot> Title: Re: 1.0: Allow to search for all FTDI standard VID/PID
06:09:54 -!- NihilistDandy has joined.
06:12:22 <Lumpio-> zzo38: ...what are you trying to do to USB
06:14:07 <itidus21> he accidently the USB
06:14:32 -!- NihilistDandy has quit (Client Quit).
06:17:06 <zzo38> USB has some problem such as requiring VID/PID for each vendor and product, and they are each only sixteen bits anyways, and you have to pay a lot of money for them. Other problems with USB are security problems, and so on.
06:17:26 <zzo38> So I want to avoid these problems.
06:17:31 <Lumpio-> Security problems such as?
06:17:44 <Lumpio-> Also if something is compatible with USB it's going to have the same problems.
06:18:18 <zzo38> Security problem such as connecting what seems to be a USB memory to the computer and have it act as a keyboard instead, you can mix up your computer with that (and this has been done).
06:19:06 <itidus21> zzo38: there is a potential way around it
06:19:32 <itidus21> VID/PID pooling... but i guess theres probably strict rules not to do that
06:19:35 <zzo38> I know there are ways around it such as requiring a USB keyboard to be connected at boot time, and so on.
06:20:13 <fizzie> PCI Device and Vendor IDs are 16 bits each, too. That seems like the Thing To Do, really.
06:20:25 <zzo38> Yes I know there are rules against VID/PID pooling I think it means you cannot call it USB or compatible with USB if you use not the correct VID/PID and other things incorrect too.
06:20:59 <fizzie> You can't use the logo without passing the USB-IF compliance program, that much I know.
06:21:19 <itidus21> what i mean by that is, using the same VID/PID for several different products
06:21:30 <itidus21> and also for several different companies
06:21:45 <itidus21> a virtual vendor so to speak :D
06:22:09 <zzo38> fizzie: I know, I read that on Wikipedia too
06:22:12 <itidus21> im probably so completely wrong about this that i should stay out of it
06:22:37 <zzo38> itidus21: I think that is also disallowed, but still it was my idea to do exactly that, and just don't use the USB-IF compliance.
06:22:59 <fizzie> You do see same VID/PID combinations for different "products" when those products are just slightly rebranded versions of the same thing, but I suppose that doesn't quite count.
06:23:11 <itidus21> :-D
06:23:48 <fizzie> Like this "DeLock" brand hub I have, it's listed as "05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB" -- and so are many other 4-port hubs of various sizes and shapes and plastic molds.
06:23:54 <zzo38> Perhaps it should just always used 0x0000/0x0000 or 0xFFFF/0xFFFF
06:24:24 <fizzie> 0/0 might have compatibility issues. (I don't know if it would: but it sounds like it well might.)
06:25:43 <zzo38> Yes that is one thing I thought so perhaps 0xFFFF/0xFFFF should be used.
06:26:56 <fizzie> The linux-usb.org "usb.ids" master list has the entry for 0xABCD/0xCDEE with vendor "Unknown", product "Petcam". That sounds like another case where someone has made a USB-"compatible" device without bothering to go through USB-IF registration.
06:34:00 <fizzie> Also from usb.ids: http://sprunge.us/WXhJ
06:43:32 <zzo38> Why do they need that? That seem for human specifically and also does not tell the difference of left hand and right hand, and "calf" is not capitalized.
06:44:22 <fizzie> The capitalization might have been a typo of the person who made the list from (presumably) the HID specs.
06:44:39 <fizzie> And it's from the "Human Interface Device" stuffs, so I suppose it makes sense it's for humans.
06:44:52 <fizzie> I don't exactly know what those numbers are used for.
06:45:06 <zzo38> OK, but still why do they even need that list at all, and why is there no distinctuion between left and right hand?
06:45:15 -!- NihilistDandy has joined.
06:47:14 <fizzie> There's another set of "BIAS" numbers with meanings Not Applicable, Right Hand, Left Hand, Both Hands, Either Hand. Perhaps those are used in conjunction with these when the side is important.
06:47:59 -!- oerjan has quit (Quit: leaving).
06:48:08 <zzo38> Why do they make that stuff so complicated?
06:48:54 <fizzie> "Physical descriptor sets are optional descriptors which provide information about the part or parts of the human body used to activate the controls on a device." That's what they're used for.
06:49:07 -!- NihilistDandy has quit (Client Quit).
06:49:11 <fizzie> For distinguishing the eyebrow button from the fifth toe button.
06:49:22 -!- epicmonkey has joined.
06:50:08 <zzo38> I still see no need for such thing.
06:50:47 -!- NihilistDandy has joined.
06:51:39 <fizzie> "Note: Physical Descriptors are entirely optional. They add complexity and offer very little in return for most devices. However, some devices, particularly those with a large number of identical controls (for example, buttons) will find that Physical Descriptors help different applications assign functionality to these controls in a more consistent manner. Skip the following section if you do ...
06:51:45 <fizzie> ... not plan on supporting Physical Descriptors."
06:52:04 <fizzie> (USB HID DCD, 1.11.)
06:56:17 <zzo38> Is there a hardware description language that you can specify by transistors?
06:57:21 -!- asiekierka has joined.
06:57:46 <zzo38> According to esolang wiki "The entire execution unit for muxcomp64 would be extremely small, very close to 16K transistors (not gates, transistors)." How to build such a thing, how fast would it be, and how efficient in terms of program size?
06:58:17 <itidus21> I have heard of the esolang wiki.
07:07:07 <FreeFull> Hey, ARMv8 will be 64-bit
07:07:52 <fizzie> It adds that AArch64 thing; does it make it mandatory?
07:08:10 <fizzie> They did have processors e.g. with and without Thumb, earlier.
07:09:48 <zzo38> I have read that only ARMv2 could be implemented freely (called Amber) because the new one require a license from ARM, which they don't have.
07:12:23 * ais523 submits an anarchy golf program that contains literal formfeeds
07:12:48 <ais523> I needed two characters that weren't present in the input to represent temporary codes to work on, and where I could match "anything but those characters" easily
07:13:16 <ais523> then I noticed Perl had a \V code for "not vertical whitespace", and so used newline and formfeed as my extra characters (both of which can be embedded literally into strings in Perl)
07:21:07 -!- epicmonkey has quit (Ping timeout: 246 seconds).
07:25:01 <itidus21> "ais523_waterfall3 Trace and animation (warning: very long and very slow to load) " -- dismissed warning too hastily :)
07:30:27 -!- asiekierka has quit (Remote host closed the connection).
07:37:01 -!- asiekierka has joined.
07:41:45 -!- asiekierka has quit (Remote host closed the connection).
07:44:44 -!- AnotherTest has joined.
08:24:48 -!- epicmonkey has joined.
08:26:40 -!- mig22 has joined.
08:36:34 <zzo38> How do I buy a free and open source microprocessors?
08:37:28 <fizzie> With great difficulty.
08:37:47 <fizzie> You can run OpenCores things on FPGA devboards, but those aren't "open" themselves.
08:38:46 <zzo38> It seem FPGA always requires special software to use.
08:39:07 <zzo38> And even then they are still FPGA and not standalone units.
08:40:12 <zzo38> I can find some information about free and open source microprocessors without too much difficulty but none of them seem to be for sale.
08:40:31 <fizzie> OpenCores are trying to make a SoC-style ASIC version of OpenRISC, but I don't think they've succeeded so far.
08:43:13 <fizzie> When (if) they do, that should result in something you could actually buy.
08:44:20 -!- nooga has joined.
08:53:36 <fizzie> I think there are some "standalone" boards that are built around a FPGA chip which is just not terribly visible outside, but it's still a FPGA-based implementation on some non-open hardware.
08:54:54 <zzo38> Isn't FPGA less efficient than a specifically-build part, though?
08:56:11 <fizzie> Sure, but it also costs a lot less if you're only buying a couple.
08:57:54 <fizzie> The OpenRISC ASIC donation project mentions they'll need something like $35000-$750000 to proceed, depending on the technology.
09:00:04 <zzo38> What I want to be able to do is a free and open source microprocessor which, if the computer is turned off, and then the processor is removed and replaced by another one of the same kind from a different manufacturer who is not licensed with anyone and uses no common materials to build it, that the computer will run the same when turned on.
09:04:57 -!- mig22 has quit (Quit: mig22).
09:06:47 <zzo38> So does OpenRISC cost $750000 then if I want to buy one?
09:06:55 <zzo38> I don't have that much money.
09:07:50 -!- asiekierka has joined.
09:10:18 <fizzie> zzo38: No, they just need that much money for the one-time manufacturing costs. They don't have any estimate for the unit price you'd need to pay if you wanted one (since it depends on how much money they manage to collect and what sort of manufacturing technique they can afford), but it's bound to be reasonably low.
09:10:30 <fizzie> zzo38: But yes, in the sense that if you wanted to buy one right now, you could donate them the $750000 and presumably they'd then manage to get something manufactured.
09:10:41 <fizzie> Maybe not quite "right now", but in the near future.
09:10:57 <fizzie> Unless they're going to just take their donations and move to Bahamas. You never know.
09:12:24 <zzo38> I suppose it is possible, but I doubt it.
09:14:22 <fizzie> Still, their web-forums aren't terribly active, so it's not certain at all that they'll ever get to the point that they'd be actually selling processors.
09:14:28 <itidus21> zzo38: it is possible that you will acquire $750000 of disposable cash
09:15:37 <zzo38> Is there sufficiently fast and efficient 32-bit processor which lacks the following features: serial numbers, DRM, virtual addressing, save state across power cycles
09:15:47 <itidus21> the temptation there would be to move into a 5star hotel
09:17:06 <itidus21> and somehow avoid becoming charlie sheen
09:23:09 <zzo38> I also don't want too many features
09:23:46 <zzo38> I like the one which are more simple!
09:28:21 -!- soundnfury has quit (Ping timeout: 248 seconds).
09:34:02 <itidus21> zzo38: well the positive side of hardware is that since it is physical it cannot be pirated so easily
09:35:28 <itidus21> this means.. hmm i'm not sure.. i guess it doesn't mean that much
09:36:44 -!- AnotherTest has quit (Ping timeout: 265 seconds).
09:36:59 <itidus21> i suppose also that hardware emulation means that by investing in one very powerful piece of hardware, one can emulate 100s of less powerful but more prolific hardwares
09:37:35 <zzo38> But I want one that anyone can just copy without license fees (although they will certainly need to pay for equipment and so on)
09:39:58 <itidus21> the trouble with very powerful hardware is it has much less mobility, far more expensive, more concerns with heat dissipation
09:40:18 -!- mig21a has joined.
09:40:29 <zzo38> Yes but I don't need very powerful hardware, but not too slow either.
09:41:37 <itidus21> im slowly understanding the business world.. very slowly
09:42:24 <itidus21> generally if a license fee has to be paid, a healthy business will pay it
09:42:55 <itidus21> this seems counter intuitive to me
09:43:53 <itidus21> but for instance, most companies which avoided NES licensing made crappy games
09:44:21 <itidus21> i suspect this may be because they lacked documentation and tools from nintendo though
09:44:34 <FreeFull> On the other hand, the Gameboy Advance has a lot of good homebrew games
09:45:06 <itidus21> FreeFull: well.. i just got a homebrew cart for my new secondhand ds today
09:51:49 <fizzie> If it's one of those that go into the DS slot (only), I doubt you can run GBA games from it.
09:52:27 <fizzie> (At least entirely trivially. Maybe someone's hacked something up by now.)
09:52:46 <itidus21> ahh.. i wonder what i am in for
09:55:09 -!- mig21a_ has joined.
09:55:29 <fizzie> I have this "R4DS" microsd-to-DS homebrewness thing, though it's been quite a while since I last fiddled with it.
09:56:09 -!- zzo38 has quit (Remote host closed the connection).
09:56:17 <itidus21> yeah the one i got is r4
09:57:50 <itidus21> fizzie: well importantly i should ask.. is it the gba platform itself which is the issue, or is it the amount of work to emulate it?
09:58:03 -!- mig21a has quit (Ping timeout: 245 seconds).
09:58:05 -!- mig21a_ has changed nick to mig21a.
09:58:42 <fizzie> The DS is not doing any emulation to run GBA games, it's got the necessary hardware in it.
09:58:59 <fizzie> (The ARM7TDMI that the GBA uses is one of the two processors in the DS.)
09:59:10 <FreeFull> Well, the GBA has GBC/GB hardware in it
09:59:23 <fizzie> Okay, so the DS dropped those.
09:59:48 <fizzie> But I suppose no GBA-native game actually used the Z80 for anything? I don't know.
10:00:04 <FreeFull> Some used it for stuff
10:00:09 <FreeFull> I forget what for
10:00:14 <itidus21> fizzie: hmm ok so.. basically... instead of creating some bastardized solution to cater to idiots.. should i understand the general idea is to get a flash card which uses slot-2?
10:00:15 <fizzie> I suppose those won't work on the DS then?
10:00:30 <fizzie> itidus21: If you want to run things designed for the GBA, yes.
10:00:53 <fizzie> Though if it's homebrew, it sounds reasonably feasible for the author to make a DS-compatible build, since they do have the hardware.
10:01:16 <itidus21> i used to have a bunch of gba games until i traded them in for a pittance
10:01:56 <itidus21> but.... my ff6 gba was a counterfeit from ebay which had therefore no capacity to save
10:01:57 <fizzie> (For some values of "feasible", anyway. If they rely on extra RAM on the flash card, then probably not.)
10:02:51 <fizzie> DSLinux doesn't run terribly well on the plain R4, for example, since a slot-1 card cannot provide extra expansion RAM.
10:04:23 -!- aloril has quit (Ping timeout: 244 seconds).
10:05:17 <fizzie> (The slot-1 cartridge communicates with the system over a relatively narrow bus and a specific protocol that has read requests and whatnot, while the GBA slot is just mapped into the address space quite directly.)
10:05:25 <itidus21> i guess it couldn't hurt to have both when i get desperate
10:06:26 <fizzie> I'm under the impression that most of the slot-2 flashcards have some megs of expansion RAM in them, just in case.
10:06:35 <fizzie> (Never bothered to get one.)
10:06:48 <itidus21> ds browser comes with some kind of expansion
10:07:05 <fizzie> It does, yes.
10:07:13 <itidus21> i had that once
10:07:21 <fizzie> And DSLinux can use extra RAM from the browser expansion, if I recall correctly.
10:07:29 <nortti> yes
10:07:52 <nortti> it can also use dldi(?) storage on slot2 expansions
10:09:14 <fizzie> "It is technically possible to access media in both Slot-1 and Slot-2 but support is not currently implemented." (DSLinux wiki)
10:09:25 <fizzie> So I suppose you can't do mass storage on both.
10:10:03 <fizzie> I've booted dslinux a few times from the (slot1) R4, but it doesn't really have all that much use, especially without extra RAM.
10:11:08 <itidus21> ds lite was $56 .. card was $52.50 including postage.. i'm quite happy with that
10:19:46 -!- aloril has joined.
10:29:50 -!- kinoSi has quit (Read error: Connection reset by peer).
10:30:17 -!- kinoSi has joined.
10:42:35 -!- david_werecat has joined.
10:54:24 -!- ais523 has quit.
10:56:31 -!- itidus21 has quit (Quit: Leaving).
10:57:31 -!- Phantom_Hoover has joined.
11:11:38 -!- david_werecat has quit (Ping timeout: 252 seconds).
11:35:05 -!- ogrom has joined.
11:36:41 -!- MoALTz has joined.
11:56:01 -!- derdon has joined.
12:14:04 -!- aloril has quit (Ping timeout: 244 seconds).
12:21:07 -!- MoALTz has quit (Ping timeout: 240 seconds).
12:21:47 -!- ogrom has quit (Read error: Connection reset by peer).
12:22:11 -!- ogrom has joined.
12:29:15 -!- aloril has joined.
12:34:45 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
12:35:00 -!- mig22 has joined.
13:00:07 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
13:21:21 -!- boily has joined.
13:24:31 -!- monqy has quit (Quit: hello).
13:28:04 -!- copumpkin has joined.
13:30:49 -!- soundnfury has joined.
13:42:21 -!- Nisstyre has quit (Ping timeout: 276 seconds).
13:50:26 -!- Nisstyre has joined.
14:11:30 -!- ogrom has quit (Quit: Left).
14:20:34 -!- mig22 has quit (Quit: mig22).
14:26:56 -!- alexn6 has joined.
14:32:59 -!- DHeadshot has joined.
14:39:43 -!- alexn6 has left ("http://quassel-irc.org - Chat comfortably. Anywhere.").
14:57:07 -!- DHeadshot has quit (Read error: Connection reset by peer).
14:57:30 -!- DHeadshot has joined.
15:27:58 -!- epicmonkey has quit (Ping timeout: 246 seconds).
15:51:17 -!- itidus21 has joined.
15:51:31 <kmc> it's strange that streets in finland have a finnish name and a swedish name
15:51:35 <kmc> (at least in helsinki this is the case)
15:52:28 <shachaf> heegan
15:52:48 <ion> kmc: It’s a bit as if Polish streets had both a Polish name and a German name.
15:53:02 <shachaf> They also have a Finnish anthem and a Swedish anthem, with different melodies.
15:53:02 <kmc> well, they don't put them both on the signs, do they?
15:53:04 <kmc> not anymore :)
15:53:07 <kmc> hichaf
15:53:09 <shachaf> s/They/We/, of course. :-)
15:54:41 <kmc> right
15:54:59 <shachaf> http://www.testtubegames.com/velocityraptor.html
15:55:06 <shachaf> @localtime
15:55:10 <lambdabot> Local time for shachaf is Wed Aug 15 08:55:06 2012
15:55:11 * shachaf has yet to sleep.
15:55:21 <itidus21> at least as far as i can convince myself things are wonderful, languages are really wonderful
15:58:37 <itidus21> like in english the word frog means someone who wears a beret
15:59:34 <itidus21> and if you call someone a frog you might say, pardon my french
16:08:22 -!- kinoSi0 has joined.
16:11:06 -!- kinoSi has quit (Ping timeout: 268 seconds).
16:19:31 -!- ogrom has joined.
16:30:26 <fizzie> kmc: Some muncipalities are unilingual, they only put one set of names in signs.
16:31:26 <shachaf> In .il signs are generally supposed to be trilingual.
16:31:26 <fizzie> Apparently the proper word is "authority", not muncipality.
16:31:28 <fizzie> Anyway.
16:32:02 <fizzie> "The Language Act is based on a division of authorities into unilingual and bilingual authorities. The linguistic division is of importance both for the language rights of an individual and for the language obligations of the authorities. The obligations of a unilingual authority to provide service in both languages are more limited than those of a bilingual authority.
16:32:07 <fizzie> The basis of the linguistic division will, as before, be unilingual and bilingual municipalities. The grounds for the division will remain the same. Every ten years the Council of State decides the division on the basis of the information in the Population Data System regarding the language of each inhabitant of the municipality.
16:32:12 <fizzie> The current Council of State Decree will expire in 2012. According to the Decree there are 21 bilingual municipalities with Finnish as the majority language in Finland and 23 bilingual municipalities with Swedish as the majority language. Three municipalities are Swedish-speaking. The rest of the municipalities, 399 today, are Finnish-speaking."
16:33:00 <fizzie> Oh, so "authority" was referring to all kinds of things that serve people. Still.
16:33:56 -!- coppro has quit (Ping timeout: 246 seconds).
16:35:38 -!- coppro has joined.
16:38:33 <shachaf> fizzie: They should add English.
16:38:40 <shachaf> Because, I mean, everyone likes English.
16:40:53 <fizzie> Then they'd have to invent translated names for every street. That sounds like a job.
16:41:45 <Phantom_Hoover> fizzie, Finland has jumped the shark.
16:41:55 <Phantom_Hoover> Of Swedishness.
16:42:15 <shachaf> fizzie: No, just transliterate the names into English!
16:42:26 <shachaf> ...I guess when you have almost the same alphabet, it doesn't make as much sense.
16:44:15 <fizzie> shachaf: But which name, the Finnish or the Swedish one? (Transliteration could do the äö -> ae, oe mapping, that always results in amusing names.)
16:44:28 <shachaf> fizzie: The Finnish one, obviously.
16:44:34 <shachaf> It *is* Finland, after all!
16:44:49 * shachaf uses logic.
16:44:50 <fizzie> I once lived on Jaeaekaerinkatu.
16:45:06 <Phantom_Hoover> also swedish words don't deserve to be spoken in english
16:45:18 <Phantom_Hoover> fizzie, proof positive that Finns are actually kobolds.
16:46:13 <Phantom_Hoover> http://1d4chan.org/images/1/16/Id_give_you_the_moon.gif <- accurate depiction of Finnish courtship?
16:46:17 <fizzie> There's also a Toeoeloenlahdenkatu.
16:46:35 <shachaf> Maybe .il signs should add Russian.
16:46:40 <shachaf> Then they can have four alphabets.
16:47:01 -!- Lumpio- has quit (Ping timeout: 252 seconds).
16:47:16 <shachaf> Apparently something like 20% of the population speaks Russian?
16:48:02 -!- DHeadshot has quit (Read error: Connection reset by peer).
16:48:07 -!- DH____ has joined.
16:50:11 <fizzie> Phantom_Hoover: I think "Finnish courtship" in general involves much more drunk, but.
16:51:08 <Phantom_Hoover> fizzie, it doesn't show you but the bowl is actually full of vodka
16:52:28 <Phantom_Hoover> although given that finnish houses probably are like http://1d4chan.org/images/9/9f/Koboldhouse.gif
16:53:40 <fizzie> First Google image search hit of "Finnish house" for me gave a house in Gent, Belgium.
16:53:59 <fizzie> (Because it has "stark beauty with Japanese-Finnish undertones".)
16:54:28 <fizzie> http://images.travelpod.com/tw_slides/ta00/9ca/65a/a-typical-finnish-house-jamsa.jpg -- well, that is indeed very typical.
16:54:49 <fizzie> (I like how the windows are kind of wherever.)
16:55:37 <itidus21> mondarinish?
16:55:51 -!- Lumpio- has joined.
16:56:51 <Phantom_Hoover> fizzie, well of course, finns haven't yet invented the straight ruler
16:57:42 -!- MoALTz has joined.
17:02:23 <fizzie> Phantom_Hoover: A traditional Finnish house: http://lh4.ggpht.com/-tnNFy8xax6o/RcaLthnHOAI/AAAAAAAAB-A/LJaFNvVGdR4/pikkuhuopalahti0015.jpg (not really)
17:02:46 <Phantom_Hoover> i like the pillars
17:03:10 <Phantom_Hoover> also are those things in the air cablecars, please please please tell me they're cablecars
17:04:04 <itidus21> no, those are finnish bicycles
17:04:28 <fizzie> I'm not sure what "things" those are. There are streetlights, and the tram power cables, that I can see.
17:05:04 <Phantom_Hoover> dammit
17:05:05 <fizzie> http://mediaserver-2.vuodatus.net/g/3004/1854115.jpg <- the backside; http://taivasalla.net/2003/2003-04/img/030410_1702.jpg <- the frontside.
17:05:19 <itidus21> fizzie: ahh.. well in many places streetlights are suspended from poles.
17:05:28 <itidus21> so having them on a wire is novel
17:06:12 <fizzie> itidus21: They're hanging from wires I think mostly in places where the trams go, I guess the idea is that you're going to have wires over the street in any case.
17:06:45 <itidus21> ie. yes, phantom thought the streetlights were cablecars
17:06:58 <itidus21> and i believed him
17:08:55 <fizzie> itidus21: The fakeblecars are here: http://goo.gl/maps/GXcVW
17:11:01 <fizzie> (Usually there are also far less pastel colours, but the neighbourhood is an unusual one.)
17:15:34 -!- AnotherTest has joined.
17:15:40 <nortti> kallisti: are you working on haiku os project?
17:17:46 <kallisti> no
17:18:20 <nortti> ok. then it must be some other kallisti
17:19:39 <Phantom_Hoover> Streetview has surprisingly poor coverage of Venice.
17:20:22 <fizzie> Streetview had really poor coverage of some place.
17:20:25 <fizzie> Luxembourg, I think.
17:20:48 <Phantom_Hoover> Who cares about Luxembourg??
17:21:08 <fizzie> By "poor" I mean "none".
17:21:09 <itidus21> luxembourg could accidently get lost in border disputes
17:21:26 <fizzie> There's a whole lot of those Panoramio geotagged photos though.
17:21:42 <Phantom_Hoover> In the case of Venice I guess it's because the interesting parts of the city are all entirely pedestrian or... boatestrian.
17:22:20 <fizzie> I'm sure they could whip up a streetview gondola.
17:23:46 <kallisti> "boatestrian" -- Phantom_Hoover, 2012
17:26:18 <itidus21> humans are the only species stupid enough to live on the surface of the water
17:26:27 <kallisti> lol?
17:26:33 <kallisti> are you serious?
17:27:17 <itidus21> probably not
17:27:20 <Phantom_Hoover> Well TbH it's not a common strategy for anything motile
17:28:03 <kallisti> I suppose it would depend on what you mean by "surface of the water." I included aquatic lifeform that lives near the surface of the ocean.
17:28:06 <Phantom_Hoover> The Portugese Man o' War is the only one I can think of offhand.
17:29:00 <itidus21> i don't know exactly what i mean, i was basing the comment on the word boatestrian
17:29:20 <Phantom_Hoover> I doubt that's what itidus21 meant, considering that most well-known oceanic species live in the upper part of the ocean.
17:29:26 <kallisti> many species of insects can walk across water. There's also a reptile I believe.
17:29:52 <itidus21> i imagined pedestrian - ped.. + boat..
17:29:58 <itidus21> and imagined an animal with a hull
17:30:12 <itidus21> and thought.. well if it was a fish it would be more like a submarine
17:30:52 <itidus21> and that an animal which functioned like a boat would be quite absurd
17:32:23 <fizzie> The lizard is kind of a different case since it just runs across pretty fast and can't stay in place, it's too big for the surface tension trick.
17:32:39 <kallisti> right
17:33:06 <itidus21> the boat is one of the few vehicles which doesn't have a close animal counterpart
17:33:17 <kallisti> pretty sure beavers also live on the surface of water in the same way that humans can (via artificial constructions)
17:33:42 <itidus21> hmm
17:33:53 <itidus21> i think in general it's against nature for an animal to be a boat
17:34:00 <itidus21> i don't know why
17:34:04 <kallisti> `addquote
17:34:08 <kallisti> help how do.
17:34:14 <HackEgo> No output.
17:34:36 <kallisti> `addquote <itidus21> i think in general it's against nature for an animal to be a boat
17:34:40 <HackEgo> 856) <itidus21> i think in general it's against nature for an animal to be a boat
17:34:41 <fizzie> Some birds make floating nests, that's pretty close to a houseboat.
17:34:46 <fizzie> Grebes, for example.
17:35:09 <itidus21> noah understood this
17:35:46 <kallisti> I feel like that statement deserves an automatic kickban.
17:36:38 * kallisti should perhaps not have ops.
17:36:40 -!- ogrom has quit (Read error: Connection reset by peer).
17:36:48 <fizzie> Oh, and Jacanas build nests on floating vegetation. They have ridiculous feet: http://upload.wikimedia.org/wikipedia/commons/f/fd/Irediparra_gallinacea1.jpg
17:37:09 <Phantom_Hoover> kallisti, although he didn't understand inbreeding.
17:37:24 <itidus21> ok.. yeah i took it too far
17:38:29 <itidus21> i don't want to make it worse
17:43:07 <itidus21> i guess polar bears live on water
17:43:54 <kallisti> itidus21: what about like underground streams, maaan?
17:44:00 <kallisti> aren't we all living on water?
17:45:45 <olsner> polar bears live on seals
17:55:56 <itidus21> basically i was envisioning something like hedonismbot from futurama in the way he is always sitting down
17:57:09 <olsner> fizzie: but the bird is not the boat then, it's just living on it
17:57:28 <olsner> but whales should count as u-boats
17:57:30 <kallisti> we were never originally talking about boats
17:57:35 <kallisti> that's just itidus21 for you.
17:58:31 <kallisti> or rather, we were never talking about animals that are boats.
17:58:36 <olsner> well, *originally*, I suppose we were talking about esoteric programming languages
17:58:38 <olsner> but I can't remember when that was
17:58:41 <kallisti> it was "animal that lives on the surface of the water"
17:59:03 <itidus21> another thing about water is i don't think animals often mess with the water except beavers
17:59:04 <olsner> nevertheless, I think we should respect the rights of whales to be boats
17:59:06 <kallisti> not "animal that is boat also noah herp derp"
17:59:43 <itidus21> well i got that from ped = foot
18:00:18 <itidus21> and.. my obscure logic was.. something which is like a pedestrian except it doesn't have feet
18:01:06 <olsner> I guess equestrian is when you have horses for feet
18:01:35 <kallisti> clearly
18:03:01 <fizzie> olsner: A house is not a motel.
18:03:07 -!- oerjan has joined.
18:03:40 <fizzie> oerjan: Are you a boat?
18:03:49 <olsner> fizzie: Is it a boat then?
18:03:52 <kallisti> fizzie: but can a motel be a boat?
18:03:57 <oerjan> WROOM
18:04:00 <olsner> can oerjan be a boat?
18:04:06 <kallisti> have we considered the possibility of motels for feet?
18:04:07 <fizzie> kallisti: I don't see why not.
18:04:30 <kallisti> also: vending machines
18:04:48 <kallisti> I feel as though Nabisco understands that it is unnatural for animals to be vending machines.
18:05:01 -!- nooga has quit (Remote host closed the connection).
18:05:10 -!- nooga has joined.
18:05:12 <fizzie> In the future, when we've all been cyborgified, there will be vending machines for feet.
18:05:24 <kallisti> oerjan: also: kickban itidus21 so he can stop ruining this channel.
18:05:27 <kallisti> thanks.
18:05:39 <kallisti> I want to idle in peace.
18:06:01 <olsner> and everyone will be their own house, and with inflatable cyborg implants everyone can also be a boat
18:07:15 <kallisti> so has anyone ever considered: static structural typing with a prototype OO system.
18:07:28 <kallisti> with immutable objects
18:08:39 <kallisti> so since objects are immutable, you don't explicitly copy objects. instead you explicitly extend them with new fields.
18:09:36 <kallisti> and types are denoted by structure. as in: {x : Int, y : Double} is the type for a structure with those fields and types.
18:09:54 <kallisti> does this exist? is there a problem with this? etc
18:12:25 <kallisti> recursive types could be a problem.
18:12:39 <kallisti> without nominal typing of some kind.
18:14:29 <olsner> it sounds like something that should've been done, but not sure about the immutable objects part
18:15:08 -!- oerjan has quit (Quit: leaving).
18:15:23 <kallisti> most prototype OO systems are dyanamically typed, but I don't see any reason for this to be the case, since it more or less mirrors structural typing. structural typing is like the duck typing of static typing.
18:15:38 <olsner> iirc these modern JS engines try to infer type information based on structure, but everything is mutable there so they'll have to like change the type of an object on the fly
18:16:32 * kallisti is interested in some of the Haskell record improvement proposals, which heavily resemble structural types.
18:16:46 <kallisti> so essentially you'd have a curly bracket syntax at the type level that's syntax sugar for a bunch of typeclass constraints.
18:16:47 -!- DH____ has quit (Read error: Connection reset by peer).
18:20:20 <itidus21> this is probably off topic, but is {x : Int, y : Double} equivalent to {y : Double, x : Int}
18:20:21 <kallisti> I don't see how recursive types could work with a structural type system like this though. if you have an operation that essentially combines 2 records with static type information, then it's not clear how recursive types would be altered by this.
18:20:33 <kallisti> itidus21: yes
18:20:51 <kallisti> so there would need to be a nominal type system as well. using ADTs.
18:21:54 <kallisti> unless there's a way to sanely prototype something with a static recursive type.
18:22:36 <kallisti> in other words:
18:24:08 <kallisti> type Foo = {x : Int, y : Double, z : Foo }; x = {x = 2, y = 2.5, z = x} + {a = "hello"}
18:24:12 <kallisti> what is the type of x?
18:24:20 <olsner> oh, saw the original narm scene just now ... it really was narm
18:26:07 <kallisti> actually nevermind I guess that resolves itself. also that example only really makes sense with lazy evaluation
18:28:43 <kallisti> (oh, also, it should be pointed out that record types have subtypes. {x : Int, y : Double} is a subtype of {x : Int}
18:28:46 <kallisti> )
18:30:54 <itidus21> my thoughts have turned to a variable which can refuse to indicate it's type or value until it's ready
18:31:45 <itidus21> which would basically mean try-catch blocks around assignments
18:32:36 <itidus21> maybe a can't evaluate this operator
18:32:52 -!- kallisti has left ("disgustpart").
18:33:30 -!- itidus21 has left ("Leaving").
18:41:01 -!- Nihilist_ has joined.
18:41:49 -!- jlaire_ has joined.
18:42:59 -!- zzo38 has joined.
18:43:49 <zzo38> Isn't it somewhat obvious that atriq is Taneb? The next line after that one also says so!
18:45:11 -!- aloril has quit (Ping timeout: 244 seconds).
18:45:48 -!- NihilistDandy has quit (*.net *.split).
18:45:48 -!- olsner has quit (*.net *.split).
18:45:48 -!- jlaire has quit (*.net *.split).
18:45:50 -!- Nihilist_ has changed nick to NihilistDandy.
18:47:05 -!- NihilistDandy has quit.
18:47:28 <fizzie> Oh, atriq is Taneb?
18:47:31 <fizzie> I had not realized.
18:49:20 <zzo38> fizzie: Why? It says so not only in the topic message but also in the line that says who changed the topic message.
18:49:51 <fizzie> I don't pay all that much attention to the topic.
18:51:54 <zzo38> Well, you can also see it with every message received from atriq and with WHOIS and NS INFO as well.
18:52:05 <zzo38> (NS INFO confirms for sure)
18:52:09 -!- olsner has joined.
18:52:30 -!- kallisti has joined.
18:52:39 <kallisti> http://linuxforniggers.us/
18:52:40 -!- NihilistDandy has joined.
19:00:09 -!- AnotherTest has quit (Quit: Leaving.).
19:00:19 -!- aloril has joined.
19:00:48 <kmc> zzo38: does your IRC client display the username and hostname on every PRIVMSG?
19:00:53 -!- Zuu has joined.
19:00:54 -!- Zuu has quit (Changing host).
19:00:54 -!- Zuu has joined.
19:01:22 <kallisti> I wouldn't be surprised if zzo38 just used telnet as his IRC client.
19:01:37 <olsner> istr that he did
19:03:40 <zzo38> kmc: Yes it does, and it is displayed in colors, too.
19:03:44 <mroman> hopefully his keyboard is a typewriter with a parallel port
19:04:30 <mroman> and his display is a needle printer connected to a lpt port.
19:04:35 <mroman> So everything works out for the best.
19:05:11 -!- aloril has quit (Ping timeout: 250 seconds).
19:05:29 <zzo38> Actually I am currently using an ordinary computer
19:05:37 <mroman> lame.
19:06:42 <zzo38> Yes, I know.
19:09:36 <mroman> Good.
19:15:23 <kmc> his printer is a mirror galvinometer
19:18:14 <kmc> today i rode the Spårakoff
19:18:18 <kmc> the pub tram in Helsinki
19:18:46 -!- aloril has joined.
19:26:26 <zzo38> Do they care if the line endings of a C code are CRLF on a UNIX system?
19:26:52 <nortti> gcc doesn't seem to
19:28:47 <zzo38> Do other GNU-compatible C compilers care?
19:29:11 <nortti> no idea
19:33:25 -!- NihilistDandy has quit.
19:34:14 -!- epicmonkey has joined.
19:36:19 <fizzie> kmc: Where are you staying in the sin city of hel?
19:39:21 <kmc> vallila
19:39:52 <kmc> leaving tomorrow morning though
19:40:16 <olsner> vanilla?
19:40:30 <kmc> more or less
19:41:07 <fizzie> olsner: From http://en.wiktionary.org/wiki/valli
19:41:53 <olsner> hmm, that's very similar to http://en.wiktionary.org/wiki/vall#Swedish
19:42:23 -!- asiekierka has quit (Quit: Connection reset by PO).
19:42:44 <fizzie> Someone I knew lived in Puu-Vallila, the area of oldish (by Finnish standards; early 1900s) wooden houses in there.
19:43:41 <lexande> fizzie: confused by the name; i would expect names derived from "dike"
19:43:47 <lexande> or "embankment" to be near the water?
19:44:00 <lexande> whereas we are relatively far from the water by helsinki standards
19:45:06 -!- NihilistDandy has joined.
19:45:09 <olsner> think "wall"
19:45:13 <fizzie> lexande: It does mean an earthen wall-like structure too.
19:45:44 <fizzie> Or I suppose by extension maybe stone walls too.
19:46:14 <fizzie> Not really interior walls, though. The kind of things you'd have around a fortress.
19:47:01 <fizzie> Also the inner border of a pool/billiards table as a special case.
19:47:24 <olsner> are those walls in english?
19:48:18 <fizzie> olsner: Vallila's Swedish name is Vallgård, incidentally.
19:48:26 <lexande> i think those are "bumpers" in english
19:49:02 -!- Taneb has joined.
19:49:21 -!- Taneb has changed nick to atriq.
19:49:54 <olsner> hmm: Cushions (also sometimes called "rail cushions", "cushion rubber", or rarely "bumpers") are located on the inner sides of a table's wooden rails.
19:50:49 <fizzie> And "vallihauta" (lit. "<valli>grave") is a moat.
19:51:11 <atriq> Is valli- Finnish for -irth?
19:51:35 <fizzie> I don't know what -irth is.
19:51:55 <fizzie> We discussed what valli is right before you joined, though.
19:52:00 <atriq> Oh, okay
19:52:03 <atriq> I had fun today
19:52:05 <Phantom_Hoover> It's the -irth form, duh.
19:52:13 <olsner> the irthative case
19:52:28 <Phantom_Hoover> I don't know when you started to understandirth -irth.
19:52:35 <fizzie> How irthitating.
19:52:51 <Phantom_Hoover> that makirth sense
19:54:00 <atriq> :(
20:00:39 <Phantom_Hoover> fizzie, wait, oko knew about -irth, didn't he teach it to you?
20:00:59 <fizzie> If so, I must have forgotten.
20:02:11 <Phantom_Hoover> Honestly fizzie when did you knowirth basic English grammar.
20:05:44 <atriq> Was it when I greetirth?
20:06:33 <Phantom_Hoover> Obviously fizzie enjoyirth the channel after that.
20:10:37 <lexande> it was -irth all along
20:10:57 <Phantom_Hoover> Please referencirth, lexande.
20:23:47 -!- monqy has joined.
20:24:34 <Phantom_Hoover> monqirth!
20:25:27 <olsner> comirth the greetirther
20:26:01 <monqy> hi
20:30:16 -!- kinoSi0 has quit (Read error: Connection reset by peer).
20:30:42 -!- kinoSi has joined.
21:02:44 <NihilistDandy> Welcome to -irth
21:03:36 -!- atriq has quit (Quit: Leaving).
21:14:42 <Phantom_Hoover> NihilistDandy, wait you're still around???
21:14:49 -!- boily has quit (Quit: Poulet!).
21:15:30 -!- NihilistDandy has quit (Ping timeout: 244 seconds).
21:17:36 -!- NihilistDandy has joined.
21:38:37 -!- epicmonkey has quit (Ping timeout: 246 seconds).
21:50:37 -!- MoALTz has quit (Ping timeout: 240 seconds).
22:16:15 -!- Phantom__Hoover has joined.
22:18:52 -!- Phantom_Hoover has quit (Ping timeout: 246 seconds).
22:43:06 -!- Nisstyre has quit (Quit: Leaving).
22:52:15 <zzo38> I am going to try to fight BUZZSAW MCGRAW again
22:55:32 <zzo38> I won.
22:55:40 <Phantom__Hoover> hooray!
22:56:04 <zzo38> On 08-15-2012: ZZO38 defeated BUZZSAW MCGRAW in a ROUND 2 TKO! After the Fight, ZZO38 would not talk to the PRESS:
22:56:55 <Gregor> I HAVE A KITTY :3
22:58:06 <Phantom__Hoover> Gregor, we know. Shut up about it.
22:58:09 <zzo38> Now I have to fight HAYMAKER MARRIS
22:58:43 <Gregor> Phantom__Hoover: But… she's sleeping in my lap and she's fuzzy :(
22:59:05 <Phantom__Hoover> Yes but you're turning the channel into reddit dammit.
23:05:21 -!- elliott has joined.
23:05:22 <elliott> http://esolangs.org/wiki/Ragaraja
23:05:26 <elliott> what is this
23:05:34 <elliott> someone tell me what to do with it :P
23:05:50 <monqy> nsqx memories
23:06:51 <Gregor> Wow.
23:07:04 <Gregor> IS IT TURING-COMPLETE?
23:07:24 <Gregor> <zzo38> Do they care if the line endings of a C code are CRLF on a UNIX system? // no conforming C compiler cares.
23:07:41 <Gregor> Wow, that was a long time ago X-D
23:07:45 <zzo38> Gregor: Thank you for telling me.
23:08:32 <zzo38> So I suppose I only need to fix the shell script to compile
23:09:20 <Gregor> No conforming implementation of Unix will accept shell scripts with CRLF, but I believe that's only because of the #! line.
23:09:34 <Gregor> The correct behavior with #!/bin/sh\r\n is to run in an interpreter with the filename /bin/sh\r
23:09:46 <zzo38> Yes I know that.
23:10:11 <ion> How about if you want to run an interpreter with the filename /bin/foo\n? :-(
23:10:23 <zzo38> Maybe they should make a file with that name which passes the script to dos2unix and then run it in the ordinary shell.
23:10:27 <Gregor> ion: Not with a #! line :)
23:10:50 <Gregor> zzo38: Maybe you shouldn't use DOS line endings…
23:10:54 <ion> I want my money back.
23:11:09 <zzo38> ion: Money back for what?
23:11:23 <ion> Unix
23:12:56 <zzo38> Since this is the final round and I am already six points ahead, I am guessing that my best chance to win is just to avoid getting knocked out.
23:13:10 <zzo38> Even if I lose some points for doing so.
23:13:28 <zzo38> Is that how boxing is supposed to work?
23:13:58 <ion> I only know about beatboxing.
23:20:57 <soundnfury> ion: you could use env?
23:21:29 <zzo38> "His own blood cells were killing him.-EMH_" what letter do you think should go in place of "_"?
23:21:48 <soundnfury> #!/usr/bin/env "/bin/foo\n"
23:22:37 <zzo38> Choose from: F J P Q U V X Y Z
23:24:12 <zzo38> P
23:25:05 <Phantom__Hoover> elliott, the guy who made that has added two fucking BF derivatives today alone.
23:25:41 <Phantom__Hoover> Make me a sysop, just this once.
23:26:01 <elliott> soundnfury: that does not work
23:26:16 <elliott> at least unless I have completely forgotten how shebang parsing works
23:29:03 <soundnfury> elliott: huh?
23:29:10 <soundnfury> maybe I just don't know how env works
23:29:25 <elliott> maybe you just don't know how #! works
23:29:37 <elliott> in particular, that passes /usr/bin/env the argument:
23:29:53 <elliott> {'"', '/', 'b', 'i', 'n', '/', 'f', 'o', 'o', '\\', 'n', '"'}
23:29:56 <elliott> uh, and a 0 on the end
23:30:08 <elliott> about 80% sure of this
23:30:09 <soundnfury> hmm.
23:30:17 <elliott> it definitely does _not_ go through the shell
23:30:37 <soundnfury> yes, my mind was assuming without noticing that it went through the shell and of course it doesn't
23:31:04 <ion> elliott: Indeed. And env doesn’t handle that kind of a parameter in any special way either.
23:31:05 <soundnfury> dammit there must be some way to do it
23:32:30 <ion> #!/bin/sh
23:32:36 <ion> exec "/bin/foo
23:32:40 <ion> " "$@"
23:32:47 <ion> and have /bin/foo\n ignore that part. :-P
23:33:18 <ion> whoops. "$0" before "$@"
23:38:37 -!- nooga has quit (Ping timeout: 244 seconds).
23:50:13 -!- david_werecat has joined.
23:54:44 <zzo38> I played Dungeons&Dragons with no change of equipment during this session.
23:55:32 <zzo38> None of our inventory got added or removed.
23:56:28 * Sgeo has worked for the government, muahaha
23:56:35 <zzo38> OK
23:57:02 <zzo38> Now I have to figure out exactly what kind of secret government work you have done simply by pure logic and reasoning, rather than by asking.
23:58:38 <elliott> Sgeo: ?
23:59:46 <Sgeo> elliott, I will admit that the muahaha was silly, but I have worked for the government.
2012-08-16
00:01:12 <Phantom__Hoover> I did work experience in RBS once, muha...ha?
00:01:34 <elliott> Sgeo: the ? was implicitly asking about it
00:02:46 <Sgeo> elliott, back in high school, over the summer I would work for the school district doing things like putting RAM into the computers or vacuuming the insides of computers
00:03:01 <Sgeo> Mostly meanial computer stuff
00:03:14 <elliott> ok
00:17:40 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:17:53 -!- Nisstyre has joined.
00:36:36 -!- copumpkin has joined.
00:50:05 -!- DHeadshot has joined.
00:52:10 -!- DHeadshot has quit (Read error: Connection reset by peer).
00:52:19 -!- DHeadshot has joined.
01:27:18 <zzo38> I have recorded this session of Dungeons&Dragons game now.
01:28:21 -!- derdon_ has joined.
01:30:25 <Sgeo> elliott, Phantom__Hoover monqy new album
01:31:23 -!- derdon has quit (Ping timeout: 245 seconds).
01:41:28 -!- NihilistDandy has quit.
01:46:04 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
01:48:42 -!- Phantom_Hoover has joined.
01:49:13 <quintopia> Sgeo: is there anything worth getting in the humble android bundle?
01:49:33 <Sgeo> quintopia, I don't know about the other games, but Uplink is good
01:50:26 <Phantom_Hoover> Hey cool, I can get an internet connection in my Linux partition again.
01:51:01 <quintopia> Sgeo: i dont have a tablet
01:51:41 <Sgeo> quintopia, is the PC version available if you buy the bundle?
01:51:53 <quintopia> ayes
01:52:18 <quintopia> will it run in 1gig of RAM?
01:52:31 <Phantom_Hoover> It's from 2000, so probably.
01:54:04 <quintopia> ok
02:00:41 <zzo38> Why are all commands of Ragaraja are undefined?
02:02:41 <quintopia> because ragaraja says what he wants and you better do it or else
02:02:51 <quintopia> he doesnt have to predefine his commands
02:02:58 <quintopia> his commands are his wishes
02:05:22 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:05:27 -!- DH____ has joined.
02:14:30 -!- Phantom_Hoover has quit (Remote host closed the connection).
02:17:58 <elliott> hey guys
02:18:00 <elliott> does http://esolangs.org/wiki/Special:RecentChanges work
02:19:15 <quintopia> it appears to?
02:20:38 <elliott> good
02:26:24 -!- DH____ has quit (Read error: Connection reset by peer).
02:26:29 -!- DHeadshot has joined.
02:28:46 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:41:00 -!- david_werecat has quit (Ping timeout: 244 seconds).
03:24:57 -!- copumpkin has changed nick to pumpkin.
03:26:07 -!- heroux_ has joined.
03:26:26 -!- pumpkin has changed nick to copumpkin.
03:27:48 -!- variable has quit (Ping timeout: 268 seconds).
03:27:48 -!- heroux has quit (Ping timeout: 268 seconds).
03:28:06 -!- variable has joined.
03:28:07 -!- variable has quit (Changing host).
03:28:07 -!- variable has joined.
03:28:13 -!- yiyus_ has joined.
03:29:01 -!- yiyus has quit (*.net *.split).
04:16:57 -!- MoALTz has joined.
04:26:57 -!- itidus21 has joined.
04:28:36 -!- jlaire_ has changed nick to jlaire.
04:42:57 -!- ais523 has joined.
04:43:45 <ais523> lambdabot: messages?
04:44:03 <elliott> ais523: it's @messages? :)
04:44:07 -!- MoALTz has quit (Ping timeout: 272 seconds).
04:45:20 <shachaf> lambdabot: @messages? :)
04:45:20 <lambdabot> Sorry, no messages today.
04:45:29 <shachaf> lambdabot: @botpoison :'(
04:45:29 <lambdabot> Unknown command, try @list
04:52:01 <ais523> elliott: it'd tell me if I had messages if I said anything at all
04:52:06 <ais523> @messages
04:52:07 <lambdabot> You don't have any new messages.
04:52:11 <ais523> see, that was redundant :)
04:52:16 <elliott> ais523: that's not quite true
04:52:22 * elliott if you use ACTIONs, it won't bother you
04:52:29 <elliott> there's some other way I think but I forget what it is
04:52:30 <ais523> oh, I didn't know that
04:57:05 <shachaf> kmc: Did you know that in Python2, random.choice('aá') will randomly return one of ['a','\xc3','\xa1']?
04:58:15 <ion> How about u'aá'?
04:58:55 <shachaf> Oh, that works.
05:00:41 <shachaf> I guess that's just how Python strings are.
05:02:28 <ion> I guess 'foo' is like a ByteString, encoded with some arbitrary encoding, and u'foo' is like Text. Or something.
05:02:43 <zzo38> O, you have to indicate if you want byte strings or Unicode strings. I do not think it is a problem
05:03:45 <shachaf> Right. I just didn't know Python worked that way.
05:09:13 -!- oonbotti has quit (Quit: oonbotti).
05:10:55 -!- oonbotti has joined.
05:14:01 -!- oonbotti has quit (Client Quit).
05:15:56 <elliott> It's clearer in Python 3.
05:16:00 <elliott> str is renamed to bytes and so on.
05:16:56 <shachaf> And unicode is renamed to str?
05:17:15 <shachaf> elliott: Hey, computers are bad. Can I have a copy of @?
05:17:30 <elliott> No.
05:17:34 <elliott> And yes, I think so? Not sure.
05:17:37 <elliott> Maybe not.
05:17:43 <shachaf> :-(
05:18:17 -!- oonbotti has joined.
05:21:03 -!- derdon_ has quit (Remote host closed the connection).
06:18:05 -!- oerjan has joined.
06:46:24 -!- oerjan has quit (Quit: leaving).
06:47:48 <zzo38> One thing a continuation monad seem to do in Haskell is to build up a data structure, including backward. Does a continuation in a different programming language does something similar?
07:02:36 <Sgeo> zzo38, I'm not entirely sure, but I think the Continuation monad is delimited continuations
07:03:19 <shachaf> Sgeo: Cont in Haskell?
07:03:31 <Sgeo> So delimited continuations in other languages might be able to do similar. I should note that I'm not thinking this through at the moment, just remembering what I've seen things called
07:03:46 <shachaf> It depends on what primitives you provide.
07:04:15 <shachaf> You can write shift/reset for Cont, or you can write callCC (or others).
07:06:15 <zzo38> What does shift/reset mean?
07:06:37 <shachaf> https://en.wikipedia.org/wiki/Delimited_continuation
07:07:11 <zzo38> Other programming language continuation is usually callCC, in Haskell we can have callCC but also the monad operations (fmap/return/join/bind) and the operation of its type ((x->r)->r)
07:07:36 -!- aloril has quit (Ping timeout: 244 seconds).
07:09:09 * Sgeo wants to bring monads into every language he touches
07:09:21 <Sgeo> I don't know how plausible that would be for Prolog
07:09:49 <FreeFull> Assembly, now with monads
07:10:39 <zzo38> Before having a monad you need a category. It could be the category of the functions in that programming language, though, so if the functions can perform I/O operations it could be like Haskell's (Kleisli IO) category. And then you define fmap, return, join, having the proper laws on that category.
07:12:20 <zzo38> Possibly with JavaScript you could have, if M is the monad, then M itself is the return operation and then M.prototype.join and M.prototype.map for the others.
07:23:09 -!- aloril has joined.
07:23:09 -!- Phantom_Hoover has joined.
07:24:14 -!- nooga has joined.
07:30:54 -!- epicmonkey has joined.
07:35:32 -!- epicmonkey has quit (Ping timeout: 244 seconds).
07:57:26 -!- Nisstyre has quit (Read error: Connection reset by peer).
07:59:25 -!- Nisstyre has joined.
08:00:55 -!- glogbackup has quit (Ping timeout: 246 seconds).
08:05:07 <zzo38> OK I read about the delimited continuations.
08:06:01 <zzo38> Are they similar to their reset being (flip runCont id) and their shift being (cont)?
08:06:22 <shachaf> I don't think so.
08:07:09 <shachaf> zzo38: Did you see edwardk's puzzle with newtype Mu f = Mu (forall a. (f a -> a) -> a); data Nu f = forall a. Nu a (a -> f a); newtype Fix f = Fix (f (Fix f))
08:08:27 <zzo38> No, I did not see.
08:08:49 <shachaf> I think the puzzle is just to write conversion functions.
08:29:43 -!- ais523 has quit (Read error: Connection reset by peer).
08:29:51 -!- ais523 has joined.
08:31:45 -!- mig22 has joined.
08:39:33 -!- AnotherTest has joined.
08:47:33 -!- epicmonkey has joined.
08:54:03 -!- liljuska has joined.
09:03:45 -!- monqy has quit (Quit: hello).
09:09:00 -!- zzo38 has quit (Remote host closed the connection).
09:28:41 <kmc> http://writelatex.com
09:34:12 <kmc> do laptops charge slower when they're on?
09:35:03 <kmc> i always assumed so, but maybe the max charge rate of the battery is much less than the available power
09:39:27 -!- olsner has quit (Ping timeout: 240 seconds).
09:39:50 -!- olsner has joined.
09:39:53 -!- elliott has quit (Quit: Leaving).
09:40:19 -!- Nisstyre has quit (Ping timeout: 246 seconds).
09:43:02 -!- Nisstyre has joined.
09:46:00 <ais523> `run time | echo
09:46:11 <HackEgo> bash: -c: line 0: syntax error near unexpected token `|' \ bash: -c: line 0: `time | echo'
09:46:18 <shachaf> ais523: ?
09:46:23 <ais523> shachaf: try that command in csh some time
09:46:34 <shachaf> % time | echo
09:46:35 <shachaf> %
09:46:43 <ais523> bleh, did they fix it?
09:46:45 <ais523> well, mostly fix it
09:46:57 <ais523> it should still give an error message, due to being meaningless
09:47:14 <ais523> it used to give a really nonsensical error
09:47:49 <ais523> btw, is that actually csh, or tcsh pretending?
09:48:15 <shachaf> /bin/bsd-csh
09:48:29 <ais523> hmm
09:48:40 <ais523> I'll try it with Debian's/Ubuntu's, installing it now
09:48:54 <shachaf> This is Debian.
09:49:06 <shachaf> The package csh installs /bin/bsd-csh
09:49:19 <ais523> ah, right
09:50:10 <ais523> huh, it seems that "time | echo" actually spawns a process
09:50:14 <ais523> called "time |"
09:50:17 <ais523> try looking in jobs
09:50:30 <ais523> % time | echo
09:50:31 <ais523> % jobs
09:50:32 <ais523> [1] + Running time |
09:50:34 <ais523> % Reset tty pgrp from 11937 to 11927
09:50:37 <ais523> ooh, they didn't fix it, it's just intermittent
09:50:55 <ais523> (the "Reset tty pgrp" thing got printed after the prompt % , I didn't type it)
09:52:58 -!- mig22 has quit (Quit: mig22).
09:56:08 <ais523> (that's the message I was angling for, btw)
09:56:27 <ais523> btw, time | eventually dies with SIGPIPE, some considerable time after you ran it
10:06:07 -!- heroux_ has quit (Ping timeout: 240 seconds).
10:07:11 -!- AnotherTest has quit (Quit: Leaving.).
10:07:30 -!- AnotherTest has joined.
10:11:41 <shachaf> kmc: Do you know the source of 2c1;2c1;2c1;2c1; being typed on the command line when catting /dev/urandom?
10:18:26 <FreeFull> A low amount of entropy I imagine
10:18:58 <shachaf> Being typed. As in, my shell is getting it as input.
10:20:38 <FreeFull> Hmm
10:20:44 <FreeFull> Could be some escape code
10:22:37 -!- mig22 has joined.
10:38:32 -!- heroux has joined.
10:45:07 * ais523 is scared of Mauriceling's BF derivs
10:45:29 -!- david_werecat has joined.
10:45:33 <ais523> shachaf: it's probably an escape code that asks for information in response
10:45:41 <shachaf> ais523: Sure, but which one?
10:45:44 <ais523> not sure
10:46:09 <ais523> this reminds me of HTTP access log trojans
10:46:46 <ais523> the idea is to insert escape codes in your user agent, so that if someone cats their access log to a terminal, it sends data back into the terminal to run arbitrary commands
10:46:59 <ais523> although most modern terminals are immune nowadays
10:47:35 <ais523> same sort of concept as sending people to shock sites via XSS attacks on plain text files…
10:59:07 <FreeFull> Because the webserver doesn't tell the browser that it's plain text and not html?
11:01:16 -!- david_werecat has quit (Read error: Connection reset by peer).
11:06:53 -!- david_werecat has joined.
11:15:56 -!- mig22 has quit (Quit: mig22).
11:22:51 -!- david_werecat has quit (Ping timeout: 240 seconds).
11:23:12 -!- MoALTz has joined.
11:47:28 -!- epicmonkey has quit (Remote host closed the connection).
11:52:55 -!- epicmonkey has joined.
11:58:41 -!- liljuska has quit (Quit: Leaving.).
12:12:46 -!- aloril has quit (Read error: Operation timed out).
12:18:50 <nooga> ahh
12:18:53 <nooga> what a fine day
12:19:06 <nooga> found a bug in Boost libs
12:19:32 <nooga> win 13
12:29:41 <itidus21> another more meta way to do an attack would be to lie about something in a readme file
12:30:17 <itidus21> but i'm not sure what
12:31:07 <itidus21> maybe recommend an antiquated terminal in a readme file
12:31:15 -!- kinoSi has quit (Read error: Connection reset by peer).
12:31:26 -!- aloril has joined.
12:31:42 -!- kinoSi has joined.
12:31:48 <itidus21> <-- dumb. nevermind..
12:46:06 <AnotherTest> nooga: which lib
12:48:42 <nooga> filesystem
12:49:36 <AnotherTest> oh
12:49:39 <AnotherTest> what didn't work?
12:54:38 -!- boily has joined.
13:14:04 -!- aloril has quit (Ping timeout: 250 seconds).
13:15:37 -!- derdon has joined.
13:23:54 -!- ais523 has quit.
13:30:49 -!- aloril has joined.
13:35:17 <AnotherTest> nooga: I just had this issue with boost::lexical_cast; it seems to cast "9001" to 2329 ?
13:36:51 <jlaire> AnotherTest: o_O
13:37:58 <AnotherTest> I've probably done something wrong
13:38:09 <AnotherTest> the weird thing is
13:38:21 <AnotherTest> I added an output statement on the variable that I'm casting
13:38:25 <AnotherTest> and on the result
13:39:11 <jlaire> paste or it didn't happen!
13:42:25 -!- ogrom has joined.
13:50:11 <AnotherTest> jlaire: I would have to paste over 2000 lines of code that I'm not even supposed to paste :(
13:50:18 <AnotherTest> unless it always happens
13:50:33 <AnotherTest> I'll try whether it does
14:19:42 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:24:16 <AnotherTest> <excuse>I'm about to spam </exuse>
14:24:18 <AnotherTest> std::string port_s = address.substr(pos2 + 1);
14:24:18 <AnotherTest> std::cout << "Port string: " << port_s << std::endl;
14:24:18 <AnotherTest> int port = boost::lexical_cast<int>(port_s);
14:24:18 <AnotherTest> std::cout << "Port number: " << port << std::endl;
14:24:38 <AnotherTest> output:
14:24:39 <AnotherTest> Port string: 9001
14:24:40 <AnotherTest> Port number: 2329
14:25:30 <FreeFull> Is a lexical cast the correct way to convert a string to integer?
14:27:06 <AnotherTest> Yes
14:27:44 <AnotherTest> http://www.boost.org/doc/libs/1_50_0/doc/html/boost_lexical_cast/synopsis.html#boost_lexical_cast.synopsis.lexical_cast
14:34:52 <boily> there's always the atoi() way of casting a string to an int: http://pastebin.com/5iDifJhC
14:37:09 <FreeFull> atoi() is the C way
14:41:07 -!- copumpkin has joined.
14:41:50 <boily> i'm only one very lazy programmer when it comes to C++.
15:16:33 <AnotherTest> I know about atoi
15:16:43 <AnotherTest> but I (and many others) dislike it
15:16:58 <AnotherTest> lexical_cast is much more generally
15:17:36 <AnotherTest> boily: your example works with lexical_cast equally well, but it's just this particular situation (I must be doing something wrong)
15:18:05 <AnotherTest> also isn't writing (void) as arguments a typical C thing to do
15:35:14 <AnotherTest> guess what
15:35:25 <AnotherTest> int port = std::atoi("9001"); still gives me the same
15:36:14 <FreeFull> Now that's weird
15:36:48 <AnotherTest> Yes it is
15:37:02 <AnotherTest> this works in any other file
15:37:08 <AnotherTest> just not in my current project
15:37:31 <AnotherTest> well in this file
15:38:33 <FreeFull> I compiled a test case and I get 9001
15:38:49 <AnotherTest> My tests cases give me 9001 too
15:39:47 <AnotherTest> I don't understand it
15:40:25 <AnotherTest> how can std::cout << boost::lexical_cast<int>("9001") << std::endl; or std::cout << std::atoi("9001") << std::endl; ever output 2329
15:40:39 <AnotherTest> I put that literally in my code
15:41:51 <AnotherTest> 8001 = 1f41
15:41:53 <AnotherTest> oh wait
15:41:59 <AnotherTest> hexadecimal?
15:42:05 <FreeFull> Oh
15:42:08 <AnotherTest> so
15:42:16 <FreeFull> cout is in hexadecimal mode
15:42:19 <AnotherTest> yes
15:42:23 <AnotherTest> that must be it
15:42:25 <AnotherTest> and I know why
15:42:40 <AnotherTest> somewhere else I was outputting hexadecimal numbers
15:42:41 <AnotherTest> :S
15:42:49 <AnotherTest> stupid error -> time waste
15:43:01 <AnotherTest> forgot to turn that flag of :(
15:43:14 <FreeFull> =P
15:43:37 <FreeFull> This is what happens when your output routines have hidden state
15:44:12 <AnotherTest> indeed :'(
15:44:31 <AnotherTest> rage against std::ostream!
15:45:40 <AnotherTest> I actually solved the actual bug in the code there a long time a go
15:45:57 <AnotherTest> but the output was just still wrong :/
16:13:00 -!- epicmonkey has quit (Ping timeout: 246 seconds).
16:19:02 -!- ogrom has quit (Ping timeout: 268 seconds).
16:20:43 -!- ogrom has joined.
16:33:23 -!- ogrom has quit (Quit: Left).
16:38:12 -!- ogrom has joined.
17:24:51 -!- epicmonkey has joined.
17:29:10 -!- zzo38 has joined.
17:43:08 -!- aloril has quit (Ping timeout: 244 seconds).
17:44:19 <kmc> shachaf: i don't know
17:44:39 <kmc> did you figure it out?
17:45:15 <shachaf> Not that one.
17:45:20 <kmc> butts
17:45:25 <shachaf> I figured out another one.
17:45:30 <kmc> oh yeah?
17:45:34 <shachaf> c62;9;
17:45:34 <olsner> what have you been trying to figure out?
17:45:46 <shachaf> That's just from an escape sequence.
17:45:50 <shachaf> Something like \e[c
17:45:58 <shachaf> kmc: There was a bigger mystery, though.
17:46:15 <shachaf> Remember how cat /dev/urandom used to turn your terminal to line-drawing mode?
17:46:33 <shachaf> It hasn't happened in a while, has it? At least it hasn't for me.
17:46:45 <shachaf> We were trying to figure it out, and there were various theories.
17:47:09 <shachaf> A surprising observation was that catting /dev/urandom for a bit, followed by printf '\e(0', wouldn't turn box-mode on.
17:47:23 <shachaf> So somehow there's an escape sequence that disables it or something.
17:47:33 <olsner> or maybe a terminal bug
17:47:38 <shachaf> Possible.
17:48:05 <olsner> someone in here should know all the vt100 codes by heart and be able to tell you directly if there's a sequence to disable box-mode and what it is
17:48:35 <shachaf> olsner: There were mysterioius happenings, though.
17:48:43 <shachaf> Which I don't remember, partly because it's 10:48 and I still haven't slept.
17:49:20 <kmc> you can look through /usr/share/doc/xterm/ctlseqs.txt.gz
17:49:59 <FreeFull> You can always reset your terminal
17:51:45 <kmc> what would we learn from that?
17:52:05 <olsner> is it literally always possible to reset the terminal, or is it possible to end up in a state where the terminal is unrecoverable?
17:52:16 <kmc> there is a code which explicitly means "reset terminal"
17:52:29 <kmc> i'm not sure if it's usable even inside like "i'm sending you a new window title now" mode
17:53:16 <olsner> I wonder how secure terminal emulators tend to be
17:53:33 <olsner> e.g. if you use them to connect to evil servers
17:54:13 <shachaf> Speaking of which, why does `reset` take a really long time to run?
17:54:26 <shachaf> kmc: Sometimes `reset` isn't enough.
17:54:44 <shachaf> I mean, sometimes you get into a state where the terminal is messed up even after typing reset into your shell.
17:55:06 <olsner> http://www.thinkgeek.com/product/e95e/ seems related
17:55:23 <kmc> shachaf: you do?
17:55:44 <kmc> shachaf: did you know that in the Linux VT (but not in any X terminal emulator i've found) you can enter line drawing mode with the single byte 0E?
17:56:20 <shachaf> kmc: Oh, wow, that explains why it's so much easier to get into it in the TTY!
17:56:31 <kmc> shachaf: run reset inside script and then look at the typescript
17:56:35 <kmc> i did this but forgot the results
17:56:44 <kmc> i know it sets all the tabstops
17:56:51 <kmc> i think it may have a hardcoded delay between sending control codes
17:57:08 <shachaf> kmc: Hmm, but \e(0 doesn't work.
17:57:09 -!- aloril has joined.
17:58:45 <kmc> fun
17:59:26 <shachaf> kmc: Did you see edwardk's puzzles with Mu and Nu?
17:59:44 <kmc> no
17:59:46 <olsner> what is it that happens when binary data results in crud getting passed back as input? usually it looks something like semicolon-separated hex values
18:00:01 <kmc> there are some codes to ask for terminal status
18:00:03 <kmc> look through /usr/share/doc/xterm/ctlseqs.txt.gz
18:00:05 <shachaf> newtype Mu f = Mu (forall a. (f a -> a) -> a)
18:00:08 <kmc> (on debian)
18:00:16 <shachaf> data Nu f = forall a. Nu a (a -> f a)
18:00:22 <shachaf> newtype Fix f = Fix (f (Fix f))
18:00:27 <shachaf> I think.
18:00:40 <shachaf> The idea was to write functions to convert these back and forth.
18:01:37 <olsner> ctlseqs.txt is 1540 lines here, that's almost exactly 64 screens of text
18:01:52 -!- monqy has joined.
18:03:23 <kmc> shachaf: ah, i understand now
18:03:43 <shachaf> Understand what?
18:03:48 <kmc> \x0e (ascii SO) means "shift to the G1 character set" (and \x0f = SI means switch to G0)
18:04:03 <shachaf> What's G1?
18:04:03 <kmc> \e(0 sets the G0 character set to be line drawing characters
18:04:13 <kmc> G0 and G1 are variables which can be assigned to different character sets
18:04:25 <shachaf> Ah.
18:04:29 <kmc> in the Linux VT, G0 = US ASCII and G1 = line drawing, by default
18:04:32 <kmc> in xterm they are both ASCII
18:04:43 <shachaf> Makes sense.
18:04:53 <shachaf> cata is Fix f -> Mu f
18:04:56 <kmc> so if you do \x0e in xterm, then \e(0 has no effect
18:05:07 <kmc> but now \e)0 (set G1 = line drawing) will have a visible effect
18:06:01 <olsner> and if you set both G0 and G1 to line drawing, \x0e and \x0f will no longer have any effect?
18:06:07 <kmc> yeah
18:06:11 <kmc> (no visible effect)
18:07:03 <kmc> except maybe the vt doesn't allow reassigning G0
18:07:20 <olsner> so \e(0 might be disallowed?
18:07:25 <kmc> yeah
18:07:29 <kmc> beats me
18:07:42 <kmc> i fear that to be more knowledgable on this subject, i would have to read ISO 2022
18:07:53 <olsner> seems it would be better to just have a "choose character set" instruction, instead of all these states
18:08:08 <kmc> which would cost like CHF 40 and my soul
18:08:16 <kmc> olsner: i know, right?
18:08:32 <olsner> but! that would take three bytes per switch
18:09:04 <olsner> and if you're trying to do e.g. switch to japanese every other character on a 3 baud modem, that might be significant
18:10:49 <kmc> shachaf: you can printf '\e(C' in xterm for the 7-bit finnish experience
18:12:04 <shachaf> kmc: I've had enough of the Finnish experience trying to type on Finnish-layouted keyboards. :-(
18:12:10 -!- Taneb has joined.
18:12:11 <shachaf> I've also had enough of the French experience.
18:12:17 <shachaf> AZERTY is the devil.
18:12:45 <Taneb> Heh, that brings back memories
18:15:21 <kmc> shachaf: if you do printf '\e)0\e~' within LC_ALL=C xterm
18:15:32 <kmc> then you can get line-drawing characters using bytes within the range 80 - FF
18:16:15 <kmc> turns out you can set which of G0, G1, etc. is used by each half of the byte space independently
18:16:24 -!- Taneb has changed nick to atriq.
18:16:24 <shachaf> Makes sense.
18:16:29 <kmc> not really
18:16:36 <kmc> well
18:16:55 <olsner> so that sets up upper-half characters to use G1, after setting G1 to line-drawing?
18:16:55 <kmc> nothing in computer engineering makes sense except in the light of evolution
18:16:59 <kmc> yes
18:17:12 <kmc> http://en.wikipedia.org/wiki/ISO/IEC_2022
18:17:19 <atriq> @ping
18:17:20 <lambdabot> pong
18:17:24 <atriq> Reassuring
18:18:33 <olsner> sometimes when you say ping something says pong, it's amazing
18:19:02 <FreeFull> ^ping
18:19:15 <olsner> if someone built an esoterm, how would its control characters look?
18:19:31 <atriq> !ping
18:19:36 <EgoBot> Pong!
18:19:48 <atriq> `ping
18:19:55 <HackEgo> pong
18:20:01 <nortti> olsner: it would be a brainfuck program outputting the normal ansi control code
18:20:18 <Lumpio-> I'd rather make control characters be words in a popular language so they're easy to remember
18:20:21 <Lumpio-> Say, Chinese
18:20:27 <Lumpio-> You could probably condense all of them down to a single character.
18:20:44 <olsner> some of the early terminals had e.g. 8080 cpus, you could start with something like that connected to a frame buffer and just send it the whole instruction stream
18:21:25 <olsner> it wouldn't even need an instruction pointer or a stored program
18:23:06 <zzo38> In Linux console you could use shift-out/shift-in to use line drawing. You could also use the program I have written to allow the entire CP437 to be used on Linux including shift-out/shift-in.
18:27:29 <zzo38> Therefore I think you should just use the Linux console codes.
18:27:41 <zzo38> (Regardless of if it is CP437 or not)
18:31:30 <atriq> @ping
18:31:31 <lambdabot> pong
18:31:41 <atriq> Is everything down for everyone else again
18:34:22 <shachaf> kmc: Are you still in .fi?
18:34:22 <atriq> Oh, everything's back up
18:36:35 <atriq> That's good
19:14:50 <zzo38> If Good Friday is a statutory holiday, and if you want to have separation of church and state, then the laws should include the way to caluclate Easter isn't it?
19:15:08 <zzo38> Since otherwise you don't have the separation of church and state.
19:15:18 <atriq> Hmm, I suppose
19:19:36 -!- ogrom has quit (Quit: Left).
19:19:44 <atriq> Hmm
19:19:50 <atriq> Hmmmmmmmmm
19:20:26 <atriq> bfThing :: [BFChar] -> RWS [Word8] [Word8] Tape ()
19:33:54 <atriq> data BFChar = L | R | P | M | S | E; data Tape = Tape {lhs :: [Word8], rhs :: [Word8]}
19:34:22 <atriq> -- writing a brainfuck interpreter thingy using IRC as a text editor may be a bad idea
19:38:02 <atriq> -- I don't think I'll bother
19:38:24 -!- AnotherTest has quit (Quit: Leaving.).
19:42:37 -!- aloril has quit (Ping timeout: 240 seconds).
19:45:16 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
19:48:17 <zzo38> I am not sure that type for bfThing is correct anyways
19:49:37 <zzo38> But maybe it is
19:50:20 -!- oerjan has joined.
19:52:57 <atriq> You can use "local tail" to reduce the input?
19:53:22 <oerjan> :t local tail
19:53:23 <lambdabot> forall a (m :: * -> *) a1. (MonadReader [a] m) => m a1 -> m a1
19:53:25 <zzo38> Yes you can, I think so
19:54:18 <oerjan> :t local tail . ($)
19:54:21 <lambdabot> forall a a1. ([a] -> a1) -> [a] -> a1
19:54:36 <zzo38> But "local" does not belong to the Kleisli category (although that might not be important)
19:54:44 <oerjan> > local tail . head $ "test"
19:54:46 <lambdabot> Couldn't match expected type `m a'
19:54:46 <lambdabot> against inferred type `GHC.Types...
19:54:53 <oerjan> darn
19:54:56 <oerjan> og
19:55:00 <oerjan> *oh
19:55:08 <oerjan> > local tail head "test"
19:55:10 <lambdabot> 'e'
19:55:46 <ion> http://www.reddit.com/r/IAmA/comments/ybmmh/we_are_engineers_and_scientists_on_the_mars/c5u7qm7
19:57:53 <oerjan> ion: hey just apply for a job at nasa already :P
19:57:56 -!- aloril has joined.
19:58:24 <ion> “Do you have an opening for a photoshopper?”
19:59:12 <oerjan> i'd work on the presentation. or rather, i'd suggest you do.
20:00:05 <atriq> Hey, it's coming up to a year since I joined this channel
20:00:06 <oerjan> anyway, they probably fired the old one after budget cuts.
20:00:16 <oerjan> wat.
20:00:32 <oerjan> it seems shorter. but years always do.
20:00:33 <atriq> For the first time, not this time
20:00:42 <atriq> `pastlogs Taneb
20:00:45 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: pastlogs: not found
20:00:54 <atriq> `pastlog Taneb
20:01:10 <atriq> Oh dear
20:01:13 <atriq> Bad idea
20:01:27 <HackEgo> No output.
20:01:33 <atriq> `help
20:01:35 <HackEgo> Runs arbitrary code in GNU/Linux. Type "`<command>", or "`run <command>" for full shell commands. "`fetch <URL>" downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert <rev>" can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/
20:01:41 <atriq> `ls /bin
20:01:44 <HackEgo> bash \ bunzip2 \ bzcat \ bzcmp \ bzdiff \ bzegrep \ bzexe \ bzfgrep \ bzgrep \ bzip2 \ bzip2recover \ bzless \ bzmore \ cat \ chgrp \ chmod \ chown \ cp \ cpio \ dash \ date \ dd \ df \ dir \ dmesg \ dnsdomainname \ domainname \ echo \ ed \ egrep \ false \ fgrep \ grep \ gunzip \ gzexe \ gzip \ hostname \ ip \ kill \ less \ lessecho \ lessfile \ lesskey \ lesspipe \ ln \ login \ ls \ lsmod \ mkdir \ mknod \ mktemp
20:02:33 <atriq> `ls
20:02:36 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom
20:02:42 <atriq> `ls /paste
20:02:44 <HackEgo> ls: cannot access /paste: No such file or directory
20:02:50 <atriq> `file paste
20:02:53 <HackEgo> paste: directory
20:02:59 <atriq> :/
20:04:37 -!- Eladith has quit (Quit: leaving).
20:05:37 -!- yorick has quit (Ping timeout: 272 seconds).
20:07:26 -!- yorick has joined.
20:09:21 <atriq> Okay, I think I first appeared here on the 11th of July 2011
20:09:53 <atriq> <Taneb> Hello!
20:10:21 <atriq> Yeah
20:10:26 <atriq> So, over a year already
20:10:28 <atriq> Wow
20:10:49 <atriq> Nobody welcomed me that day
20:11:21 <ion> `WELCOME atriq
20:11:25 <HackEgo> ​ATRIQ: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLANGS.
20:11:35 <atriq> `? Ngevd
20:11:38 <HackEgo> QeK{.[.
20:12:03 <atriq> `learn atriq is rot13 for something. Needs further investigation.
20:12:06 <HackEgo> I knew that.
20:12:38 <atriq> `? Ngevd
20:12:41 <HackEgo> ​!e..+.V.\T/>03N.&."t..d.{D_Mw'n,t;-xɼ..5\_Ҝ..|.w^..ѧj$.VG@dBJ9$.g.&%...q=`j \ i._.MB'3.cH....>CX...x@?.>K...=UgP#bfuy+0!lA..\.W(8=߾ `.wu
20:12:55 <atriq> `? Taneb
20:12:58 <HackEgo> Taneb is not elliott, no matter who you ask.
20:13:02 <atriq> `? Hexham
20:13:05 <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.
20:13:37 -!- atriq has quit (Quit: AAAAH HEADACHE).
20:15:36 <zzo38> You can make a (Codensity ((->) x)) monad to be like a (State x) monad? And what do you make from (Codensity (State x)) monad?
20:17:35 -!- morel has joined.
20:21:41 <olsner> ion: are you a professional photoshopper
20:21:52 <zzo38> I figured out how to make double negative elimination by continuation monads.
20:21:54 <olsner> ... questionmark
20:22:29 <ion> olsner: Just an amateur gimper.
20:22:45 <zzo38> Do NASA need any professional photoshopper? Don't they have their own software?
20:23:06 <olsner> they need to apply some color filters to make mars images mars red
20:23:19 <olsner> ... so that people don't think they're fake
20:24:03 <zzo38> But I think they have their own software for that, isn't it?
20:24:52 <zzo38> And I think the purpose of that is to make the picture more clear, not because of thinking they are fake? Since the picture from the camera is imperfect.
20:24:53 <olsner> probably, but perhaps photoshop would be way better at it only they have no qualified personel to operate it
20:25:28 <zzo38> olsner: I don't think Photoshop would be better at it.
20:25:38 <olsner> me neither
20:25:51 <olsner> I'm just trying to figure out a way for ion to get a job at NASA
20:25:57 -!- Phantom_Hoover has joined.
20:26:37 <zzo38> I would use ImageMagick (I think ImageMagick even supports the formats used in astronomy) but don't know enough about the camera and that stuff to know what filters to use. Their own specific software might work better for this purpose, though.
20:26:49 <olsner> so that he can become known as "ion: the man who finnished NASA"
20:26:55 <morel> oh, oops. i thought this chan is about esoteric programming languages :D sorry
20:27:11 <zzo38> morel: It is but people say many other thing too
20:27:21 <morel> oic
20:28:12 <boily> `welcome morel
20:28:16 <HackEgo> morel: 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:28:27 <morel> yay
20:28:40 <morel> that's #esoteric@irc.dal.net??
20:28:44 <morel> *what
20:29:00 <morel> is HackEgo written in brainfuck? :)
20:29:08 <oerjan> alas, no.
20:29:16 <olsner> not quite sure what the "other kind of esoterica" is, but ghosts and stuff I guess
20:29:20 <Phantom_Hoover> A neopagan channel.
20:29:20 <oerjan> fizzie: WHERE IS FUNGOT
20:29:21 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
20:29:46 <olsner> `quote poltergeist
20:29:50 <HackEgo> No output.
20:29:53 <morel> oh, neat. lambdabot is here, too <3
20:30:48 <oerjan> !bf bf_txtgen Egobot knows many esolangs.
20:30:49 <Phantom_Hoover> Yes, thanks to my brilliant diplomacy.
20:30:50 <EgoBot> No output.
20:30:53 <oerjan> oops
20:30:57 <oerjan> !bf_txtgen Egobot knows many esolangs.
20:31:00 <EgoBot> ​278 ++++++++++++++[>++>+++++>+++++++>++++++++<<<<-]>>-.>+++++.>-.<<+++++++++++++++++++++++++++++.+++++++++++++.+++++.<++++.>>++++.+++.>.<<+++.----.<.>>-.------------.>-.<<++++++.<.>>++++.<------.----.---.>----.>.<++++++.>+++++.<<<++++++++++++++.------------------------------------. [751]
20:31:08 <morel> @faq Can Haskell create a such a heavy-weight stone such that it can't even hold the stone itself?
20:31:09 <lambdabot> The answer is: Yes! Haskell can do that.
20:31:13 <oerjan> !bf ++++++++++++++[>++>+++++>+++++++>++++++++<<<<-]>>-.>+++++.>-.<<+++++++++++++++++++++++++++++.+++++++++++++.+++++.<++++.>>++++.+++.>.<<+++.----.<.>>-.------------.>-.<<++++++.<.>>++++.<------.----.---.>----.>.<++++++.>+++++.<<<++++++++++++++.------------------------------------.
20:31:14 <EgoBot> Egobot knows many esolangs.
20:31:51 <morel> cool
20:32:12 <morel> > "Egobot knows many esolangs." -- the haskell version
20:32:14 <lambdabot> "Egobot knows many esolangs."
20:32:21 <morel> :D
20:33:20 <zzo38> Ask ghost and stuff if you want, too, I suppose, but generally that is not the topic here. But a lot of stuff are ask that are not quite the topic here, anyways. But still you should read the wiki of esolang if you are able to do so.
20:34:08 <oerjan> `? zzo38
20:34:11 <HackEgo> zzo38 is not actually the next version of fungot, much as it may seem.
20:34:41 <boily> `? boily
20:34:44 <HackEgo> boily? ¯\(°_o)/¯
20:34:46 <olsner> `? oerjan
20:34:49 <HackEgo> Your evil overlord oerjan is a lazy expert in future computation.
20:35:05 <boily> HackEgo doesn't know about me :-/...
20:35:12 <olsner> `? olsner
20:35:16 <HackEgo> olsner? ¯\(°_o)/¯
20:35:21 <olsner> last time I checked it didn't know about me either
20:35:36 <zzo38> People make a link of a file on Wikipedia someone else thought resembles the portrait of me, but I think it is actually a drawing, even though some people don't agree.
20:35:38 <boily> oh well. I'm a known unknown in the set of unknowns.
20:35:46 <zzo38> olsner: Do *you* know about you?
20:36:06 <olsner> zzo38: not a lot, but I seem to exist at least
20:36:09 <oerjan> `run echo "boily may be French or something. We are not sure about the rest." >wisdom/boily
20:36:12 <HackEgo> No output.
20:37:28 <boily> `run echo "boily may be French or something. We are not sure about the rest." >wisdom/boily
20:37:31 <HackEgo> No output.
20:37:36 <olsner> `? boily
20:37:39 <HackEgo> boily may be French or something. We are not sure about the rest.
20:37:43 <boily> :D
20:38:17 <oerjan> `learn olsner seems to exist at least.
20:38:17 <boily> I like the vagueness of it.
20:38:21 <HackEgo> I knew that.
20:38:25 <olsner> `? olsner
20:38:29 <HackEgo> olsner seems to exist at least.
20:38:43 <olsner> somewhat underwhelmingly wise
20:39:01 <oerjan> WELL YOU DIDN'T GIVE US MUCH INFORMATION TO GO BY
20:39:10 <olsner> SORRY
20:39:10 <kmc> shachaf: no, i'm in .ie for the night and then back to .us tomorrow afternoon
20:41:55 <Sgeo> I want aerogel now
20:42:22 <Sgeo> Theromos with aerogel insulation would be neat >.>
20:42:34 <Sgeo> *Thermos
20:42:51 <kmc> how hard is it to sustain a comparably insulating partial vacuum?
20:47:13 <Sgeo> Aerogel may also be more fun to play with >.>
20:51:02 <Phantom_Hoover> kmc, uh, what's standard Thermos flask vacuum?
20:51:46 <kmc> no idea
20:51:53 <kmc> just seems like it should be cheaper than aerogel >_<
20:54:07 -!- MoALTz has quit (Ping timeout: 240 seconds).
20:54:09 <kmc> someone on the internet claims that thermal conductivity does not decrease much with decreased gas pressure o.O
20:54:35 <kmc> http://www.eng-tips.com/viewthread.cfm?qid=210603
20:56:14 <Sgeo> Hmm
20:56:15 <Sgeo> http://www.shivershield.com/
20:56:23 <Sgeo> Clothing made with aerogel for insulation
20:57:14 <Sgeo> ...it is very expensive.
20:59:39 <Phantom_Hoover> kmc, hmm, that does say that convection is the reason partial vacuums insulate.
21:00:14 <kmc> makes sense
21:02:03 * Sgeo wonders if clothing with vacuum insulation could ever make sense
21:02:17 <Phantom_Hoover> Uh.
21:02:33 <Phantom_Hoover> The concept of a flexible vacuum chamber is... impractical.
21:07:07 <Sgeo> http://www.youtube.com/watch?v=9zocS3sxi0Q
21:12:50 <morel> i just implemented the lambda-calculus with bruijn-indexes in haskell =)
21:14:56 <oerjan> IT ONLY COUNTS IF YOU DO IT IN THE TYPE SYSTEM
21:20:34 -!- soundnfury has quit (Ping timeout: 256 seconds).
21:21:44 <ion> I THINK YOU MEAN THE KIND SYSTEM
21:22:17 * kmc drops his pants
21:23:08 <oerjan> `sanetemp -310
21:23:11 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: sanetemp: not found
21:23:13 <oerjan> ion: O KAY
21:23:16 <oerjan> wat
21:23:22 <oerjan> !sanetemp -310
21:23:23 <EgoBot> dc: stack empty \ 154.4
21:23:28 <oerjan> argh
21:23:51 <oerjan> `frink -310 F -> C
21:24:03 <HackEgo> Error
21:24:27 <oerjan> bloody frink and its weird way of doing temperature
21:24:36 <oerjan> `frink -310 Fahrenheit -> Celsius
21:24:37 <ion> `frink -310 F*volt -> C
21:24:49 <HackEgo> Warning: undefined symbol "Fahrenheit". \ Warning: undefined symbol "Fahrenheit". \ Error
21:24:53 * oerjan swats ion -----###
21:25:04 <HackEgo> ​-310
21:25:16 <oerjan> > (-310-32)*5/9 -- bah
21:25:18 <lambdabot> -190.0
21:25:28 -!- elliott has joined.
21:25:31 <elliott> coppro: You work on clang, right?
21:25:42 <coppro> elliott: ish
21:25:55 <oerjan> !sanetemp 310~
21:25:56 <EgoBot> dc: stack empty \ 154.4
21:26:03 <elliott> coppro: How's its C++11 support?
21:26:05 <oerjan> that isn't it either :(
21:26:08 <coppro> elliott: excellent
21:26:09 <elliott> Oh, http://clang.llvm.org/cxx_status.html.
21:26:22 <coppro> the attributes thing is a lie
21:26:24 <elliott> OK, that does look pretty good.
21:26:29 <coppro> the rest is right
21:26:31 <oerjan> !show sanetemp
21:26:31 <EgoBot> sh dc -e "1k?32-5*9/p"
21:26:38 <coppro> attributes are supported except for a few corner cases
21:26:48 <elliott> "Patches are needed to make libstdc++-4.4 and libstdc++-4.7 work with Clang in C++11 mode."
21:26:53 <elliott> This sounds bad. Do I need to care about this?
21:26:56 <elliott> Maybe I'll check what version I have.
21:27:06 <elliott> I have v6, apparently! Good.
21:27:09 <oerjan> how does one give a negative number in dc anyway
21:27:15 <elliott> Oh, wait, that's the soname.
21:27:45 <ion> oerjan: _
21:27:53 <oerjan> !sanetemp _310
21:27:54 <EgoBot> ​-190.0
21:28:15 <oerjan> yay! now i just have to actually remember that.
21:28:39 <coppro> elliott: get libc++ obv
21:28:52 <elliott> coppro: That's a little more work than I can be bothered with.
21:29:40 <coppro> elliott: the net result is clang is the best compiler ;)
21:32:01 -!- aloril has quit (Ping timeout: 244 seconds).
21:37:29 <elliott> coppro: help. http://sprunge.us/OMAB
21:39:00 <coppro> elliott: that's libstdc++ 4.7
21:39:15 <coppro> those errors aren't caused by that though
21:39:24 <coppro> (okay that's actually 4.7.1; I don't know if they fixed the bug)
21:39:36 <coppro> elliott: link against libstdc++
21:39:42 <coppro> elliott: did you use clang++
21:39:45 <elliott> oh
21:39:49 <elliott> i was using clang rather than clang++
21:39:50 <elliott> ha ha woops
21:40:00 <elliott> all i remembered is that clang was fancy and autodetected .cc file extensions
21:40:02 <elliott> are you meant to use clang++ instead
21:40:32 <coppro> clang will autodetect into C++ mode, but won't add corresponding flags like -lstdc++
21:40:39 <coppro> clang++ will
21:40:43 <coppro> possibly this is a bug
21:41:34 <elliott> coppro: consider it reported
21:41:35 <elliott> (to you)
21:41:54 <coppro> yeah
21:42:04 <coppro> elliott: are you compiling to a .o file?
21:42:09 <coppro> or directly to binary?
21:42:32 <elliott> clang build/abl-show.o build/abyss.o build/acr.o build/beam.o build/chardump.o build/cloud.o build/command.o build/console.o build/debug.o build/delay.o build/decks.o build/describe.o build/direct.o build/dungeon.o build/effects.o build/fight.o build/files.o build/globals.o build/hiscores.o build/initfile.o build/insult.o build/invent.o build/it_use2.o build/it_use3.o build/item_use.o build/itemname.o build/itemprop.o build/items.o build/lev-pand
21:42:32 <elliott> .o build/libutil.o build/macro.o build/maps.o build/menu.o build/message.o build/misc.o build/monplace.o build/mon-pick.o build/monstuff.o build/monspeak.o build/mon-util.o build/mstuff2.o build/mutation.o build/newgame.o build/ouch.o build/output.o build/overmap.o build/player.o build/randart.o build/religion.o build/skills2.o build/spells1.o build/spells2.o build/spells3.o build/spells4.o build/spl-book.o build/spl-cast.o build/spl-util.o build
21:42:33 <elliott> /stash.o build/stuff.o build/tags.o build/transfor.o build/travel.o build/view.o build/Kills.o build/mt19937ar.o -lncurses -o build/crawl-anc
21:42:36 <elliott> that's the exact command
21:42:40 <elliott> so yes, linking a binary
21:42:48 <elliott> from a bunch of C++ objects
21:42:49 <coppro> it can't autodetect source language of object files
21:42:51 <elliott> right
21:42:57 <elliott> I assumed not, but you said it might be a bug
21:43:01 <elliott> so I thought maybe there is some fanciness I was missing
21:43:07 <coppro> well clang foo.cpp should probably work right imo
21:43:37 <zzo38> Can we make a card game based on chess boxing?
21:43:49 <elliott> coppro: are you sure it can't detect whether an object file is C++?
21:43:50 <quintopia> zzo38: only you can
21:43:51 <elliott> hmm
21:44:07 <oerjan> i think zzo38 is precisely the right person for that
21:44:08 <coppro> elliott: not really. clang uses system ld iirc
21:44:15 -!- aloril has joined.
21:44:17 <coppro> elliott: ld perhaps could be inspecting for definitions of mangled names
21:44:32 <coppro> but any such thing would be heuristic
21:45:20 <zzo38> Someone who knew how to play Xiangqi once told me that she tried to learn chess but couldn't because it was complicated.
21:45:34 <kmc> you could just put something in the object file which says what the source language was
21:45:47 <kmc> it would not be hard in principle, but i don't know of any such thing
21:46:05 <kmc> object files already have all kinds of non-loadable informative sections
21:46:20 <coppro> kmc: but the clang driver would have to inspect it
21:46:25 <coppro> clang does not know how to read object files
21:46:41 <kmc> with gcc the object files can actually contain intermediate representation code
21:46:50 <kmc> for eventual link-time optimization and codegen
21:46:51 <kmc> coppro: yeah
21:46:56 <zzo38> I think clang even supports most of GNU89
21:47:06 <coppro> zzo38: it does
21:47:31 <kmc> "Cambridge police: Man huffs screen cleaner, resists arrest"
21:48:12 <kmc> so proud of my town
21:48:37 <coppro> kmc: which country?
21:48:47 <kmc> cambridge massachussetts USA
21:49:17 <coppro> I know all the cambridges that matter
21:49:23 <coppro> and there's no more than one per country
21:50:45 <kmc> also "Woman arrested for flashing breasts at passersby"
21:50:48 <kmc> just down the street
21:52:03 <kmc> Cambridge, Ontario has 126,000 people
21:52:27 <kmc> and is the home of a bunch of famous hockey players i've never heard of
21:53:08 <kmc> there's a town of Cambridge *and* a village of Cambridge in New York State
21:53:11 <kmc> they partially intersect
21:55:55 -!- david_werecat has joined.
21:56:23 <FreeFull> There are 3845 Cambridges in England
21:56:49 <FreeFull> They are all in the same place though
21:57:34 -!- Phantom_Hoover has left ("Leaving").
21:58:02 <kmc> amazing
22:05:14 <elliott> coppro: does nesting std::arrays do what i expect
22:05:20 <oerjan> <kmc> "Cambridge police: Man huffs screen cleaner, resists arrest" <-- sheesh, the poor guy obviously was just trying to clean his nose!
22:05:38 <coppro> elliott: think so
22:05:50 <elliott> yay
22:06:07 -!- sirdancealot7 has quit (Read error: Connection reset by peer).
22:08:59 <elliott> does anyone know anything about mingw
22:09:10 <FreeFull> I do
22:09:11 <FreeFull> Why
22:10:03 <elliott> is it up-to-date enough gcc-wise for c++11? is, uh, whatever C++ runtime library it uses? (just Windows'? I forget how it works.)
22:11:20 <FreeFull> Hmm, I don't know that, let me test
22:11:59 <elliott> specifically I'm worried things like std::array and so on won't work
22:12:08 <elliott> because Windows
22:12:11 <FreeFull> i486-mingw32-g++ (GCC) 4.7.0
22:12:17 <FreeFull> That should be up-to-date enough
22:12:22 <elliott> ok, so the gcc is definitely up-to-date enough
22:12:38 <FreeFull> My gcc is 4.7.1 though
22:12:43 <FreeFull> So mingw isn't the latest
22:12:44 <elliott> it still uses Windows runtime libraries though, right?
22:12:49 <elliott> i guess with C++ it's weird because so much is defined in header files
22:12:49 <FreeFull> But almost the latest
22:16:54 <zzo38> oerjan: Perhaps the police should tell him if that is not a good way to clean his nose.
22:18:39 <FreeFull> elliott: Windows headers only declare the Windows stuff, not the rest
22:19:31 <elliott> Right. But Windows still has a libc/libstdc++, doesn't it?
22:19:36 <elliott> Or maybe MinGW supplies that. Windows is confusing. :/
22:23:55 <Sgeo> Oh god why am I looking at Smalltalk I hate single-dispatch
22:23:58 <oerjan> zzo38: well they don't have to be so impolite about it!
22:24:07 <Sgeo> And I also hate cultures of monkey-patching
22:24:09 <zzo38> oerjan: Yes I agree
22:24:12 <Sgeo> So why am I looking at it
22:24:21 <zzo38> They shouldn't have to be so impolite about it
22:25:01 <kmc> 'Bradbury reportedly exhaled and then yelled, letting out “a thunderous laugh.” Officers identified themselves and told him he was under arrest, at which point, Bradbury reportedly said, “Ohh, shit,” and laughed again.'
22:25:38 <kmc> then he tried to punch the cops
22:25:45 * oerjan beckons Sgeo with some multiparameter type classes
22:26:10 <oerjan> they're functional _and_ dependable!
22:26:52 <kmc> c.c
22:27:04 <lexande> kmc: he was just looking for a free place to stay
22:27:09 <lexande> the rent is too damn high, etc
22:27:20 <kmc> it is
22:28:24 <Sgeo> oerjan, and the only language I know of with them is not generally considered a language with a dynamic environment and a nice debugger and IDE
22:29:01 <oerjan> Sgeo: you want a dynamic environment but _not_ monkey-patching? how inconsistent!
22:29:46 <Sgeo> Is Common Lisp not a good example?
22:29:49 <oerjan> i think common lisp has multiple dispatch + the rest though
22:30:02 <Sgeo> Dynamic, no monkey-patching that I know of
22:30:13 <oerjan> well you go right ahead
22:34:44 -!- boily has quit (Quit: Poulet!).
22:34:49 <Sgeo> I'm trying to remember why I recently preferred Tcl to Lisp
22:35:25 <oerjan> an evil circle, surely
22:36:00 <Sgeo> "More importantly, I can read code written by others and understand what they meant relatively easily. "
22:36:18 <Sgeo> Really? Seems like Lisp is a good language for deliberate obfuscation
22:36:30 <Sgeo> Or... I would think so
22:37:16 <Sgeo> I think one thing that scared me away was I wasn't sure how to do file stuff
22:38:03 <FreeFull> Lisp has a lot of ()s
22:38:15 <Sgeo> Common Lisp doesn't have coroutines. Tcl 8.6 will have coroutines.
22:38:28 <FreeFull> I prefer uncommon lisp
22:40:42 <Sgeo> If the parens is what's bothering me about Lisp, then that's sad, it shouldn't be
22:40:49 <Sgeo> I think the whole emacs thing does bother me though
22:42:31 <FreeFull> I do prefer vim
22:42:41 <Sgeo> http://www.wuwei.name/render-update-demo
22:42:49 <Sgeo> The factorial thing is too much fun
22:45:09 <FreeFull> Factorial in Haskell: factorial 1 = 1; factorial n = n * factorial (n - 1)
22:45:44 <FreeFull> At least I think this would work
22:45:47 <Sgeo> FreeFull, not TCO
22:46:06 <Sgeo> Also, breaks on factorial 0
22:46:25 <FreeFull> Well, then add a case for factorial 0 at the beginning
22:49:11 <Sgeo> I think also, I appreciate Tcl's "Look at the provided AST or whatever and manipulate stuff at runtime" vs CL's "Do it at macroexpansion time"
22:49:51 <Sgeo> In Tcl, there's a clear visual distinction between giving a command a variable's name and giving it some variable's value.
22:50:03 <Sgeo> In CL, a macro can do whatever it pleases.
22:50:06 <oerjan> > scanl1(*)[1..]
22:50:08 <lambdabot> [1,2,6,24,120,720,5040,40320,362880,3628800,39916800,479001600,6227020800,8...
22:50:17 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:50:18 <Sgeo> Although admittedly, it means Tcl is less flexible.
22:50:25 <Sgeo> But I'm not sure if that's really that major a concern.
22:50:30 <elliott> Sgeo: but you can do that with cl functions tho
22:50:38 <elliott> (if x 'y), define if appropriately
22:50:46 <elliott> only problem is scoping but I think you can manage that with a wrapper macro
22:51:01 <kmc> <FreeFull> Lisp has a lot of ()s
22:51:02 <kmc> woah
22:51:05 <kmc> i hadn't noticed
22:51:10 <kmc> thanks for pointing this out
22:51:16 <Sgeo> elliott, but typically for metaprogramming stuff, people don't write functions, they write macros
22:59:20 -!- epicmonkey has quit (Ping timeout: 244 seconds).
23:00:21 -!- Phantom_Hoover has joined.
23:01:09 <Sgeo> ...this page just called macros "less powerful" than something
23:01:37 <kmc> people have a tendency to define the word "power" in whatever way suits their agenda
23:01:58 <Sgeo> http://web.cs.wpi.edu/~jshutt/kernel.html
23:02:13 <kmc> oh, right
23:02:21 <kmc> not what i was expecting
23:02:28 <kmc> yes, operatives are nicer than macros
23:02:48 <kmc> i don't know about "more powerful" exactly
23:03:03 <kmc> you can use operatives to build everything else, in a way that doesn't work for macros
23:03:20 <kmc> read shutt's phd thesis or read my blog post here: http://mainisusuallyafunction.blogspot.ie/2012/04/scheme-without-special-forms.html
23:03:34 <elliott> i love kernel
23:03:37 <elliott> except for its symbol prefices
23:03:39 <elliott> i don't love those much
23:03:54 <kmc> or you know use blogspot.com or blogspot.whatevercountryyouhappentobein
23:04:00 <kmc> it matters not a damn
23:04:04 <kmc> elliott: yeah i know right
23:04:09 <Sgeo> How is main usually a function?
23:04:17 <kmc> Sgeo: it's a gcc warning
23:04:30 <Sgeo> Oh. But in Haskell main is usually not a function.
23:04:38 <elliott> kmc: don't you know you only code in haskell
23:04:38 <elliott> forever
23:04:45 <elliott> blogspot.ie is a very cool blogspot domain I think
23:04:47 <kmc> Sgeo: indeed
23:04:48 <elliott> how many people even realise .ie exists
23:05:14 <kmc> Sgeo: so you can take it as a statement about how unusual haskell is
23:05:33 <kmc> Sgeo: but my blog is not about haskell, anyway. you'll find bits of code in lots of languages
23:05:41 <kmc> the one i just linked is scheme
23:06:34 * Sgeo is reading
23:06:43 <oerjan> <kmc> it matters not a damn <-- I WANT CANONICAL URLS DAMMIT
23:07:26 <kmc> i think i've featured haskell, python, c, c++, scheme, bash, and Autoconf
23:07:53 <kmc> as well as x86 assembly (possibly 16-, 32-, and 64-bit)
23:08:06 -!- copumpkin has joined.
23:09:04 <kmc> cannon nickel
23:09:14 <oerjan> so in haskell main isn't a function, python, scheme and bash don't _need_ main and i dunno about Autoconf :P
23:10:12 <kmc> const int main[] = { 14776, 3942977280, 247 };
23:10:22 <oerjan> I THINK THAT'S A _USUALLY NOT_, MATE
23:10:45 <kmc> -_-
23:10:49 <lexande> kmc: that is a bad idea right?
23:11:02 <elliott> lexande: no it's the best idea
23:11:07 <elliott> ideally do it in all your prorgams forever
23:11:09 <elliott> *programs
23:11:22 <kmc> ass butts
23:11:40 <oerjan> `? kmc
23:11:43 <HackEgo> kmc? ¯\(°_o)/¯
23:12:05 <oerjan> `learn kmc is nice but we don't get his occasional bouts of Tourette's.
23:12:09 <HackEgo> I knew that.
23:12:39 <elliott> that is a bad entry
23:12:43 <elliott> you should feel bad, oerjan :'(
23:12:56 <Sgeo> this is usually a pointer?
23:13:20 <oerjan> ok i guess it's not fun making fun of people with tourette's
23:13:24 <Sgeo> Wanted to say "that is usually a pointer" but that makes no sense
23:13:29 <oerjan> `rm wisdom/kmc
23:13:33 <HackEgo> No output.
23:14:35 <elliott> sweet, i have the ability to make oerjan feel bad on demand
23:15:03 <kmc> Sgeo: only in C++ but not in visual basic or cobol
23:15:05 <kmc> herp derp
23:15:05 * Sgeo ponders similarities between operatives and Tcl commands
23:15:24 <oerjan> I LEAVE http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.10835 AS EVIDENCE, HOWEVER
23:16:18 * Sgeo reads "Revised -1 Report on the Kernel Programming Language"
23:16:34 <oerjan> prevised
23:18:36 <kmc> i don't actually have tourette's btw
23:18:42 <Sgeo> elliott, I assume the $ prefix is a convention to distinguish operatives from applicatives?
23:18:44 <oerjan> O KAY
23:18:48 <Sgeo> elliott, what alternatives are there?
23:19:01 <elliott> you don't need an alternative because applicatives are a subset of operatives
23:19:05 <elliott> in fact I don't know why Kernel separates them at all
23:19:13 <kmc> i have some obsessive-compulsive tendencies and some tourettes-like tendencies but i think neither is strong enough to be a diagnosable condition
23:19:22 <kmc> elliott: so that you can write 'apply' more cleanly
23:19:33 <elliott> kmc: i find the low-level tangly definition more satisfying
23:19:36 <kmc> anyway i did it differently in my thing
23:19:36 <elliott> it looks purer
23:19:37 <kmc> yeah
23:19:44 <kmc> it's purer because the interpreter has fewer cases
23:19:47 <Sgeo> Applicatives may be a subset of operatives but mistaking an operative for an applicative could be bad
23:19:56 <kmc> my interpreter has three cases: variable, operative, and anything else
23:20:11 <kmc> anything else = evaluates to itself
23:20:17 <Sgeo> Erm, a non-applicative operative for an applicative
23:20:22 <kmc> sorry, that should be variable, application, and anything else
23:20:33 <oerjan> <elliott> sweet, i have the ability to make oerjan feel bad on demand <-- everyone has that ability, elliott. what's unusual is getting me to _act_ on it.
23:20:34 <kmc> an operative itself evaluates to itself
23:20:43 <kmc> but a combination like (operative arg1 arg2...) does not
23:21:26 <kmc> elliott: anyway even if applicatives are operatives, you might still want that convention to distinguish that subset of operatives from the rest
23:21:36 <kmc> it's an important subset because you can apply functional / equational reasoning to them
23:22:40 <kmc> but i decided it was ugly for my little thing
23:22:48 <kmc> and plus i wanted the names to match scheme
23:23:04 <kmc> or else the magic trick doesn't work
23:23:19 <kmc> "but still, where did the lighter fluid come from?"
23:24:41 * Sgeo will re-read kmc's blog post more thoroughly after reading this pdf
23:26:41 <elliott> kmc: well when I want equational reasoning I don't use a language like this
23:28:09 <Sgeo> Does Kernel have continuations? And if so, delimited or undelimited?
23:28:41 <kmc> Sgeo: shutt writes about those on his blog: http://fexpr.blogspot.ie/
23:28:57 <kmc> this went way the hell over my head
23:29:49 <kmc> elliott: in principle the idea of a language like kernel is that you can start with a very small core and build it up using libraries into something you'd actually want to use
23:29:49 <Sgeo> I can recite (well, paraphrase) Oleg's claims about delimited vs undelimited continuations but without comprehension
23:30:02 <kmc> which would presumably include equational reasoning
23:30:08 <kmc> at least of the weak sort
23:30:22 <kmc> where you want like (f 2) = (f (+ 1 1))
23:30:40 <kmc> f(2) = f(1+1) for you LOLPARENTHESES people
23:30:52 <Sgeo> kmc, there's something to be said for building a community around X idea or not, which is distinct from whether a language supports X
23:31:02 <elliott> <kmc> elliott: in principle the idea of a language like kernel is that you can start with a very small core and build it up using libraries into something you'd actually want to use
23:31:07 <kmc> in Kernel this is not necessarily true, and it depends on the value bound to f at runtime
23:31:07 <elliott> i don't really do equational reasoning in any lisp-like
23:31:14 <kmc> elliott: i don't believe you
23:31:20 <kmc> unless you don't use these languages at all
23:31:21 <elliott> well the thing is that I don't really use Lisp-likes
23:31:25 <Sgeo> Well, not distinct, but... you can imagine a library for Lisp to do mostly immutable programming, but that doesn't mean there's a community of people using it
23:31:26 <kmc> well ok then
23:31:27 <elliott> because I can't do equational reasoning with them :P
23:31:53 <elliott> but yes I think unrestricted macros are a bad idea in general
23:31:56 <elliott> but they are cute, at least
23:32:00 <elliott> and they make a very small language
23:32:17 <kmc> are you talking about macros or operatives?
23:32:29 <kmc> it's probably true for both, but you said "macros" and we were just talking about operatives
23:32:48 <Sgeo> Are kernel variables objects?
23:33:08 <kmc> the variable itself? no
23:33:20 <Sgeo> ...
23:33:21 <kmc> like scheme, you have environments which map names to values
23:33:38 <kmc> a "variable" is just a single slot in this mapping
23:33:56 <Sgeo> And these maps are first-class, I guess?
23:34:12 <kmc> i don't remember how it is in kernel
23:34:28 <kmc> in my language they are, because the interpreter exposes the fact that an environment is just a list of alists
23:34:44 <kmc> well right they need to be at least minimally first-class in kernel
23:35:17 <kmc> because vau binds the dynamic environment to a name
23:35:33 <Sgeo> "This abstract behavior need not cause actual
23:35:33 <Sgeo> implementations to rapidly exhaust their storage space, because without violating
23:35:33 <Sgeo> the required abstract behavior, they can reclaim the storage occupied by an object
23:35:33 <Sgeo> if they can prove that the object cannot possibly matter to any future computation."
23:35:43 <kmc> basically the caller's environment is made into an implicit function parameter
23:35:47 <Sgeo> Things that Tcl cannot do.
23:35:49 <kmc> s/function/operative/
23:37:44 <kmc> Sgeo: it's impossible to implement Tcl with garbage collection?
23:38:27 <Sgeo> It's impossible to claim that a value will never be used again
23:38:37 <Sgeo> Although I think there is some internal garbage collection
23:39:15 <Sgeo> It's really only a problem when a value represents some external resource
23:39:22 <kmc> why is it impossible
23:39:38 <Sgeo> kmc, everything is a string. Easy to build a string at any point
23:39:57 <kmc> i think you are confusing variables and values again
23:40:18 <kmc> in most dynamic languages you can read or write a variable by its string name
23:40:19 <Sgeo> If there's extra data associated with that string beyond what's in the string itself, having the string again won't help reconstruct whatever
23:40:30 <kmc> but if an object in memory no longer has any name whatsoever
23:40:32 <kmc> then it is unreachable
23:40:35 <zzo38> Can you design a computer hardware?
23:40:58 <Sgeo> The way OO systems in Tcl usually work is having the "object" be a string that refers to, say, a namespace
23:41:10 <Sgeo> Can't prove that the string won't ever be reconstructed...
23:41:47 <kmc> when i said "object" above i was not trying to bring OO into it
23:42:05 <kmc> i'm just talking about an allocated thing
23:42:06 * Sgeo was trying to use an example of when it's an issue
23:42:30 <kmc> anyway it sounds like that string is just the name of the namespace
23:42:35 <kmc> and so, the namespace is not dead
23:42:49 <kmc> because it's referenced by some environment
23:42:59 <kmc> this sounds exactly like scheme or python or whatever other dynamic language you like
23:43:22 <kmc> if i write "foo.x = 3" in a Python program, i can later do getattr(foo, "x")
23:43:28 <kmc> that's fine
23:43:36 <kmc> the 3 doesn't get garbage collected because it's reachable from foo
23:44:32 <elliott> kmc: if foo is a global thing that you store all your data in tho
23:44:36 <zzo38> What programming language can be used to design the computer hardware by specifying the transistors?
23:44:37 <elliott> as in if foo is everyObjectInTheSystemByName
23:44:42 <elliott> then that means you can never GC any object
23:44:59 <elliott> (object as in member of everyObjectInTheSystemByName, not as in datum)
23:45:28 <kmc> zzo38: SPICE
23:45:55 <kmc> yes, you cannot garbage collect things which have names
23:46:16 <kmc> GC is mainly interesting if you have mutation
23:46:16 <Sgeo> kmc, in Tcl, there's no way to have mutable data structures that don't have names
23:46:55 <kmc> x = f(x)
23:47:04 <kmc> the old value of x can be forgotton because it is no longer reachable
23:47:09 <kmc> it has been overwritten with the new value of x
23:47:28 <Sgeo> (You can have immutable data structures with no names)
23:47:33 <zzo38> SPICE can try to emulate it but I mean to make it in a real computer hardware.
23:49:30 <zzo38> I think SPICE is for analog electronics anyways.
23:49:38 <zzo38> But what if you want a digital computer?
23:52:03 <kmc> digital electronics are really analog electronics
23:52:25 <kmc> this way you can have a precise physically based model of the gate delays in your computer
23:52:31 <kmc> of course it will be completely impractical to simulate
23:52:47 <kmc> but you asked for specifying transistors, not gates or other abstract HDL elements
23:55:14 <kmc> 6.004 uses an analog transistor simulator for early labs
23:55:18 <kmc> with a SPICE-like language
23:55:29 <kmc> and then in later labs you use the same language in a digital simulator
23:55:47 <kmc> where the primitives are things like "4-input NAND gate" or "2-way multiplexer"
23:56:22 <kmc> but it still models gate delay, using specified output strength and input impedence for each gate
23:56:50 <kmc> and you try to change the logic around so your processor can support a higher clock speed in the simulator
23:57:15 <kmc> like inserting buffers after gates which need to drive a lot of inputs
23:57:31 <kmc> and switching to inverting gates (nand, nor) rather than and/or
23:57:36 <kmc> because apparently those are faster in cmos
23:57:53 <kmc> and changing the topology of the adder
2012-08-17
00:00:27 <zzo38> Is it possible to set up something that some parts have race conditions but that the final result does not depend on the race conditions?
00:01:07 <kmc> yes
00:01:24 * Sgeo wonders if Tcl might be a sufficiently interesting language for kmc to look at.
00:01:34 <kmc> in the simulator each wire is either low, high, transitioning, or unknown
00:02:14 <kmc> in a particular logic family you have a rule like "low is below 0.3 V, high is above 2.7 V" or something
00:02:47 <kmc> and the "transitioning" state corresponds to a voltage between those two
00:02:53 <kmc> on the way from low to high or vice versa
00:03:08 <ion> Search engine keyword: static discipline
00:03:21 <kmc> gate delay is the amount of time between when the inputs all reach definite low/high values, and when the output reaches a definite low/high value
00:04:06 <kmc> anyway to answer zzo38's question, you could have (say) an AND gate where one input is low, and the other is still transitioning
00:04:19 <kmc> and yet the output could already be low, if sufficient time has elapsed since that first input went low
00:05:29 <kmc> and yeah this is significant in CPU designs
00:05:34 <kmc> at least the little one in the class
00:05:38 -!- ForABetterWorld has joined.
00:05:40 <ForABetterWorld> http://guardianlv.com/2012/08/why-america-needs-gary-johnson/ http://www.garyjohnson2012.com
00:05:42 -!- ForABetterWorld has left.
00:05:58 <kmc> processor has various functional units which get wired to each other differently for every instruction
00:06:00 -!- morel has quit (Quit: =<< bed :: IO Sleep).
00:06:27 <kmc> the clock needs to be slow enough for the longest path of units which actually occurs
00:06:55 <kmc> but some unused units might still be stabilizing
00:07:01 <Sgeo> kmc, so this paper doesn't consider applicatives to be a subtype of operatives?
00:07:06 <kmc> nope
00:07:10 <zzo38> How fast can it be?
00:07:14 <Sgeo> And just use combiner for both?
00:07:26 <kmc> i forgot about the word "combiner"
00:07:38 <kmc> applicative and operative are two distinct primitive types
00:08:10 <kmc> 'wrap' is a builtin which turns an operative into an applicative
00:08:17 <kmc> and 'unwrap' does the opposite
00:08:45 <kmc> you can write 'wrap' without any specialness but not in such a way that it can be unwrapped
00:09:06 -!- Jafet has joined.
00:09:59 <kmc> and you want 'unwrap' in order to write 'apply'
00:10:50 <kmc> but i did 'apply' in a different hacky way which i think is still basically correct
00:11:20 <kmc> except that kernel's apply will give a clear runtime type error when used on something that's not an applicative
00:11:24 <kmc> whereas mine will just shit brix
00:15:34 <Sgeo> XChat is deciding to act freezy
00:15:55 <kmc> astounding
00:16:07 -!- nooga has quit (Ping timeout: 240 seconds).
00:16:37 <kmc> think i'll sleep now
00:16:39 <kmc> good night all
00:17:17 <Sgeo> Night kmc
00:17:22 <Sgeo> $define!
00:17:50 <kmc> d€fine
00:18:48 <kmc> £ambda
00:20:04 <Sgeo> I don't get the "improper ancestor" thing
00:20:17 <Sgeo> "The transitive closure of the parent relation
00:20:18 <Sgeo> is ancestor ; the reflexive transitive closure is improper ancestor."
00:20:59 <kmc> meaning "ancestor or self" i think
00:21:21 <kmc> like "subset" versus "proper subset"
00:21:46 <kmc> anyway sleeping for real
00:22:00 <kmc> enjoy the kerneling Sgeo :)
00:22:04 <Sgeo> Night
00:22:36 -!- Zuu has quit (Remote host closed the connection).
00:22:43 -!- Zuu has joined.
00:28:21 <Jafet> δε∫μn̈
00:31:52 -!- kinoSi has quit (Read error: Connection reset by peer).
00:32:19 -!- kinoSi has joined.
00:34:41 -!- derdon has quit (Remote host closed the connection).
00:36:16 <elliott> Jafet: what's that
00:36:50 <Jafet> δε∫μn̈.
00:37:30 <elliott> is it defun
00:39:36 -!- kinoSi has quit (Ping timeout: 245 seconds).
00:40:04 -!- kinoSi has joined.
00:49:50 <oerjan> why would you want to desun
00:54:12 <Phantom_Hoover> Silly oerjan, it's thesmn.
00:54:20 <elliott> `welcome kinoSi
00:54:24 <HackEgo> kinoSi: 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:54:40 <oerjan> no way δ is th
01:27:43 <Gregor> þ is a much better th than ð!
01:28:49 <oerjan> which is a better th than δ
01:29:18 <Gregor> Oh, heh, didn't even notice that wasn't eth. Not sure what the heck that is.
01:29:35 <oerjan> i guess it's all greek to you
01:29:59 <Gregor> *sobs*
01:30:00 <Sgeo> I actually understand the difference between Kernel's equal? and eq?
01:34:22 <ion> I’ve forgotten the difference.
01:36:38 <Sgeo> equal? roughly is supposed to be the same for objects that are equivalent except in terms of mutation, and eq? for objects that behave the same even when mutated
01:38:45 <zzo38> Does anyone have any open source FPGA yet, and how fast would they run?
02:07:59 <elliott> I've asked this before but how do you grep for the contents of a commit in git again.
02:08:06 <elliott> Like if I want to find the last commit with "blah" in the diff.
02:16:58 <zzo38> Is there anything to make something like CLCLC-INTERCAL's backtracking in Haskell?
02:17:48 * Sgeo sads at the lack of syntax sugar for defining applicatives in Kernel
02:25:36 -!- Jafet has quit (Quit: Leaving.).
02:34:12 -!- NihilistDandy has joined.
02:43:31 -!- DHeadshot has joined.
02:52:21 -!- david_werecat has quit (Ping timeout: 265 seconds).
02:55:58 -!- DHeadshot has quit (Ping timeout: 246 seconds).
02:58:25 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:10:13 -!- david_werecat has joined.
03:22:53 <elliott> coppro: clang warnings are infallible and perfect right
03:23:03 <elliott> oh wait i see the problem here
03:25:57 -!- DHeadshot has joined.
03:46:35 <coppro> elliott: oh?
03:47:39 <elliott> it turns out my code was actually broken!
03:47:44 <elliott> clang warnings live to see another day
03:47:48 <coppro> haha
03:51:53 -!- pikhq has joined.
04:07:32 -!- pikhq_ has joined.
04:07:45 -!- pikhq has quit (Ping timeout: 244 seconds).
04:07:48 <shachaf> elliott: clang++ warnings.
04:19:09 -!- MoALTz has joined.
04:42:42 <coppro> shachaf: same thing
04:42:57 <shachaf> coppro: It was a subtle way to increase clang's karma.
04:43:04 <shachaf> A pun of sorts, see. Except not really.
04:46:32 -!- MoALTz has quit (Ping timeout: 256 seconds).
05:15:08 <elliott> does anyone know about MTAs
05:15:28 <elliott> specifically please advocate whichever of exim or postfix you prefer
05:19:23 <ion> I do like postfix, but it has been like 12 years since i tried exim the last time.
05:19:37 <shachaf> Metro Transport Authorities?
05:19:43 <shachaf> kmc knows a bit, I think.
05:20:36 <elliott> ion: How much painful config will I have to do to get Postfix doing reasonable things after installing it? Note: Multiply any pain by 10 because I'm having to use mailman.
05:20:48 <elliott> (Also, Debian, so hopefully the defaults should be not completely terrible.)
05:21:36 <shachaf> elliott: There's no good Haskell book I can recommend with a straight heart.
05:21:39 <shachaf> With good face?
05:21:41 <shachaf> Whatever.
05:21:49 <shachaf> elliott: Weren't you writing one?
05:21:54 <shachaf> Do it. :-(
05:26:07 <Sgeo> shachaf, LYAH is not recommendable?
05:26:20 <shachaf> I don't like LYAH much from what I've seen of it.
05:32:24 -!- pikhq has joined.
05:32:29 -!- pikhq_ has quit (Ping timeout: 244 seconds).
05:54:34 <elliott> pikhq: exim or postfix
05:57:09 <ion> elliott: I haven’t really found it to be painful.
05:57:52 <elliott> ion: Aww, but I already gave up and asked someone else. Okay, I guess I'll try Postfix.
05:57:59 <elliott> Even if exim4 is already installed. Thebian.
05:58:24 <shachaf> postfix'em
05:58:42 <shachaf> Piles Of Stuff That something something something, extended magic
06:15:39 -!- graue has joined.
06:21:15 <Sgeo> Is the admin interface a good reason to use Django for a project?
06:30:54 -!- shaaapii has joined.
06:33:00 -!- shaaapii has quit (Client Quit).
06:33:34 <zzo38> I don't generally recommend book about Haskell. People learn how they want to do so.
06:35:44 <zzo38> Some book may be good for some people, perhaps.
06:37:54 <Sgeo> I may have accidentally caused my gf to be enamored with Django.
06:50:09 <graue> how'd you do that?
07:04:07 <Sgeo> By introducing it to her. I think it's the first high-level web framework she's seen
07:04:27 <quintopia> quick, introduce another!
07:04:38 <quintopia> if it doesn't work, try something else!
07:04:44 <quintopia> if that doesn't work, dump her!
07:05:15 <graue> the first one i saw was flask
07:05:21 <graue> which i think is pretty okay
07:07:20 * Sgeo linked her to Weblocks
07:15:00 * Sgeo is again reminded of the attractiveness of CLOS
07:22:27 -!- zzo38 has quit (Remote host closed the connection).
08:00:40 -!- epicmonkey has joined.
08:09:23 -!- oerjan has quit (Quit: leaving).
08:23:30 -!- david_werecat has quit (Ping timeout: 268 seconds).
08:23:34 -!- DHeadshot has quit (Ping timeout: 246 seconds).
08:23:41 <kmc> shachaf: c.c
08:23:55 <kmc> in helsinki the trams are meter gauge!
08:26:38 -!- DHeadshot has joined.
08:30:10 -!- mekeor has joined.
08:30:25 <kmc> jerkcity is 14 years old today
08:32:54 -!- atriq has joined.
08:35:46 -!- nooga has joined.
08:37:03 <atriq> The weather's miserable
08:37:20 <kmc> where?
08:37:24 <atriq> Hexham
08:37:32 <kmc> is it miserable by hexham standards
08:37:43 <atriq> It's miserable by this week's standards
08:38:55 <kmc> why do you live in hexham?
08:39:06 <atriq> I dunno, it wasn't my decision
08:39:19 <atriq> I've lived here most of my life
08:39:28 <atriq> It's got a good school, I guess?
08:39:34 <olsner> it does?
08:39:41 <atriq> I dunno
08:39:42 <atriq> Maybe
08:39:46 <kmc> interesting
08:39:50 <kmc> hexham is really far from london :(
08:39:54 <kmc> have you been to hadrian's wall?
08:39:57 <atriq> Yes
08:40:00 <atriq> Many times
08:40:05 <kmc> is it interesting to look at
08:40:12 <atriq> Bits of it are
08:40:16 <itidus21> http://photo.goodreads.com/books/1179634272l/939194.jpg http://images.amazon.com/images/P/0764507761.01.LZZZZZZZ.gif http://photo.goodreads.com/books/1173497548l/298100.jpg
08:40:17 <atriq> I recommend Vindolanda
08:40:29 <kmc> i guess it is not so far from edinburgh
08:40:37 <kmc> cool
08:40:44 <itidus21> http://nostarch.com/sites/default/files/imagecache/product_full/lyah.png
08:40:56 <itidus21> something... in this pattern is askew
08:41:02 <kmc> haha
08:41:06 <kmc> for dummies books are shit
08:41:09 <kmc> just so you know
08:41:21 <kmc> not sure what point you're trying to make here
08:41:24 <kmc> but i rarely am
08:41:52 <olsner> itidus21: it's not in comic sans
08:42:08 <kmc> atriq: what about newcastle, is that a nice place
08:42:23 <kmc> have you been on the tyne and wear metro
08:42:24 <atriq> kmc, it's the city where I was born
08:42:30 <atriq> Yes
08:42:34 <itidus21> humm
08:43:49 <kmc> hm, why is the T&W Metro considered to be "light rail"?
08:44:17 <kmc> does it have stations at grade with level crossings?
08:44:23 <olsner> maybe the rails are made of aluminum or something?
08:45:15 <kmc> -_-
08:45:26 <atriq> kmc, it's a light railway as opposed to a normal railway
08:45:37 <atriq> It's like a subway or underground, but overground
08:45:41 <kmc> yeah it has a number of level crossings
08:45:43 <kmc> http://www.freefoto.com/images/23/33/23_33_2---Kenton-Bank-Foot--Tyne-and-Wear-Metro_web.jpg
08:45:45 <atriq> Small stations, frequent trains
08:46:11 <kmc> atriq: just being above ground in sections doesn't make it "light rail" though
08:46:28 <Sgeo> Ok, Lisp pathnames aren't as scary as I thought
08:46:29 <atriq> It's kind of like the London Overground?
08:46:33 <Sgeo> kmc, I think you should look at Tcl.
08:47:01 -!- pikhq_ has joined.
08:47:03 <atriq> http://en.wikipedia.org/wiki/Light_railway#United_Kingdom
08:47:06 <kmc> atriq: large parts of the underground and the NYC subway and almost every subway system run overground
08:47:24 <elliott> tcl is boring if you already know lisp
08:47:29 -!- pikhq has quit (Ping timeout: 260 seconds).
08:47:31 <kmc> ah, i didn't know it has a legal definition in UK :)
08:47:48 <kmc> London Overground is just the brand for those London-area National Rail services which are operated by TfL
08:48:07 <Sgeo> I think the lack of special forms in Tcl is interesting
08:48:36 <kmc> it runs mostly on mainline railway lines, using mainline-like trains
08:48:37 <elliott> fine, *if you already know kernel
08:48:54 <elliott> tcl's main failing is that the string is a terrible data structure
08:49:09 <fizzie> "Vindolandia" (a misreading) sounds like a theme park.
08:49:24 <atriq> fizzie, it pretty much is, except without rides
08:49:40 <atriq> It's where they discovered that Romans wore underwear
08:49:55 <kmc> elliott: anything is boring if you already know kernel
08:49:58 <kmc> it's like heroin :(
08:51:07 <atriq> Without rides and with active archaeology sites
08:51:50 <kmc> actually the T&W Metro is not under the Light Railways Act 1896 anyway
08:52:07 <atriq> Hmm
08:52:14 <atriq> How odd
08:52:24 <kmc> i think it's "light rail" under the US definition
08:52:38 <kmc> which is not a precise definition
08:53:03 <kmc> but involves some combination of: small/narrow cars, short trains, running partially in the street or at least crossing lots of streets
08:54:08 <kmc> whereas heavy rail rapid transit has a dedicated right of way
08:54:27 <kmc> tunnels, elevated viaducts, embankments, fenced-off areas at grade
08:54:30 -!- copumpkin has quit (Ping timeout: 244 seconds).
08:54:38 <Sgeo> I think all the file I/O stuff scared me from CL and into Tcl
08:54:42 <Sgeo> Or at least it helped
08:54:46 <shachaf> kmc: I don't understand "c.c". :-(
08:54:51 <kmc> or quite often, a mixture of these on a single line
08:54:52 <atriq> kmc, I don't know what it is
08:54:59 <kmc> but light rail will have some grade-separated segments too
08:55:01 -!- copumpkin has joined.
08:55:08 <kmc> shachaf: it's, like, eyes looking away
08:55:35 <atriq> The bit I'm on most is mostly underground, but there's a bit that's raised above the road on a viaduct
08:55:44 <atriq> Trains every 5 minutes
08:55:57 <shachaf> Are they looking toward the right side of my screen or the left side?
08:56:03 <kmc> shachaf: i don't know!
08:56:12 <atriq> I'd say left
08:56:13 <kmc> probably the right
08:56:16 <kmc> hm
08:56:18 <shachaf> What are they looking away *from*?
08:56:28 <shachaf> Is it "being suspicious"?
08:56:34 <kmc> no it's like saying "um..."
08:56:44 <kmc> i can't quite put my finger on it though
08:56:47 <kmc> it's from #cslounge
08:56:51 <shachaf> I know.
08:57:10 <fizzie> kmc: Pictures involving barely-visible trams are a common "trick question" kind of thing in the theory part of the driver's license exam here; trams have a priority right-of-way status even when a car approaching from the same direction wouldn't.
08:57:33 <kmc> huh, interesting
08:57:38 <elliott> <kmc> hexham is really far from london :(
08:57:43 <elliott> good observation imo
08:57:58 <shachaf> You know what's farther from London?
08:58:22 <elliott> kmc: are you visiting hexham
08:58:39 <shachaf> On the worldly scale of distance from London, Hexham is pretty near, really.
08:58:49 <shachaf> If I lived in Hexham I would probablyg o visit London once in a while.
08:58:53 <shachaf> Or at least once.
08:58:57 * shachaf has, in fact, been to London.
08:59:31 <kmc> elliott: no
09:00:02 <kmc> i'm flying to boston this afternoon
09:00:05 <kmc> and not to boston, uk
09:00:09 <kmc> which is kinda near hexham
09:00:11 <elliott> kmc: that's enough time to get to hexham
09:00:16 <kmc> but not really
09:00:17 <atriq> Boston's nowhere near Hexham
09:00:21 <atriq> It's in... Lincolnshire?
09:00:24 <kmc> it's closer to hexham than london is
09:00:28 <elliott> kmc: you should do it and meet atriq
09:00:31 <kmc> meh
09:00:45 <kmc> already have these shiny plane tickets
09:00:49 <kmc> and i'm in dublin
09:01:01 <kmc> which is also far from hexham
09:01:19 <shachaf> elliott: You should bring atriq to CA so I can meet him!
09:01:24 <elliott> no
09:01:28 <atriq> Canada!?
09:02:41 <elliott> yes
09:02:53 <atriq> I'd love to go to Canada!
09:04:04 <kmc> do it!
09:04:14 <kmc> canada gotta go to canada
09:04:54 <atriq> Now you're assuming I have sufficient money to go to Canada.
09:05:28 <kmc> hitchhike
09:05:34 <atriq> And time.
09:05:50 <fizzie> "Come to Canada, we've got lions", as the song goes.
09:05:52 <shachaf> kmc: Do you have a US "passport card"?
09:06:24 <fizzie> Which reminds me, I should look into doing that ESTA thing soonishly.
09:06:38 <kmc> shachaf: nope
09:06:46 <kmc> and my passport is getting terribly worn out
09:06:55 <kmc> cause i carry it around too much
09:07:16 <shachaf> Well, a "passport card" is only good for .ca and .mx and some other places.
09:13:05 <kmc> i didn't know it was even good for .mx
09:13:15 <kmc> a passport is also only good for some places
09:13:39 <kmc> not for .ir :(
09:15:05 <shachaf> .ir is an interesting place.
09:15:12 <shachaf> I think it's multiply-illegal for me to go there.
09:17:14 <kmc> can't you go on your .fi passport
09:17:20 <kmc> or will you be arrested for being an israeli spy anyway
09:17:27 <kmc> or will israel be mad
09:17:28 <kmc> or what
09:17:47 <shachaf> My .fi passport says I was born in Jerusalem.
09:17:57 <shachaf> And the name "Ben-Kiki" is probably a little suspicious.
09:17:58 <kmc> what if it said you were born in al-Quds
09:18:04 <kmc> yeah, there is that
09:18:05 <shachaf> My grandmother once almost flew to .ir.
09:18:26 <shachaf> She got on the wrong flight and they had to get her off the plane when it was about to take off.
09:18:32 <kmc> oh dear
09:19:12 <kmc> yeah when we took the bus from poland to lithuania we were not 100% sure that it did not go through belarus
09:19:30 <kmc> in which event we would have been kicked off the bus in some border town
09:20:05 -!- amethyst1937 has joined.
09:21:22 <kmc> shachaf: did I already tell you that the currency in Bosnia i Hercegovina is the Deutschmark?
09:21:31 -!- amethyst1937 has left.
09:21:39 <shachaf> I think you mentioned it.
09:24:48 * atriq is a pretty good name
09:25:31 * shachaf is not a name at all!
09:25:51 <atriq> By which I mean, "atriq" is a pretty good name
09:26:01 <atriq> It's actually pronouncable
09:26:24 <atriq> It's also a real name...
09:27:32 <atriq> 4 results on the first google page for "Ngevd" are IRC logs, and one's the quotes file
09:27:37 <atriq> `quote 648
09:27:47 <monqy> lots of things are real names
09:27:48 <HackEgo> 648) <oerjan> elliott: it occurs to me that `? welcome is atypical: its information is actually true.
09:28:17 <ion> `? welcome
09:28:21 <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.)
09:28:34 <atriq> Ngevd isn't aname
09:28:40 <atriq> It's not a name, either
09:29:05 <kmc> shachaf is not a name but "shachaf" is
09:32:30 <shachaf> Quotation marks are way overloaded in English.
09:32:34 <shachaf> It's half-annoying.
09:32:52 -!- DHeadshot has quit (Ping timeout: 246 seconds).
09:34:00 -!- DHeadshot has joined.
09:34:13 <kmc> man now i want to go to the Great Dorset Steam Fair
09:35:09 <kmc> oh, i guess Hexham is only 4 hours from London
09:35:11 <kmc> that's not too bad
09:35:40 <atriq> 4 hours if there's no traffic and you're speeding
09:35:55 <kmc> i meant by train
09:36:01 <atriq> Oh, okay
09:36:57 <kmc> boston to new york is also 4 hours on the train
09:37:01 <kmc> and i consider them pretty close
09:37:25 <kmc> hexham to london is considerably further, but the trains in the uk are better
09:37:32 <atriq> Hah
09:37:36 <atriq> Prices are probably worser
09:37:39 <kmc> also i keep forgetting how small the uk is overall
09:37:42 <atriq> *-r
09:37:53 <atriq> We're not small, just smaller than big places
09:38:29 <atriq> And we're culturally big, which makes the UK seem big? I dunno
09:38:52 <kmc> yeah it's £59 versus $69
09:39:15 <kmc> for a trip 1 week from now
09:39:28 <atriq> How are you getting that price?
09:39:38 <atriq> I always seem to be somewhere in the 200's
09:39:39 <kmc> nationalrail.co.uk
09:39:48 <atriq> London to Hexham or Hexham to London?
09:39:54 <kmc> hexham to london
09:40:16 <atriq> Hmm
09:40:17 <kmc> it gives a variety of options but the cheapest one is £59
09:40:23 <atriq> Which route?
09:40:27 <kmc> 11:22 from Hexham to Newcastle
09:40:29 <atriq> Via Newcastle
09:40:33 <kmc> 12:25 to Kings Cross
09:40:48 <kmc> that's for 1 week from today
09:40:57 <atriq> The 11:22's a quick train, only stops at Prudhoe and the MetroCentre
09:41:05 <atriq> between Hexham and Newcastle
09:41:11 <kmc> cool
09:41:45 <shachaf> Newcastle upon Thyme.
09:41:45 <kmc> and yeah the UK is big culturally
09:41:55 <kmc> at least, the UK has an outsize influence on anglophone culture
09:42:01 <kmc> a large fraction of the bands i listen to are from the uk
09:42:05 <shachaf> I heard London is big culturally.
09:42:18 <shachaf> By culturally I mean has a lot of accents.
09:42:24 <shachaf> By hear I mean read in that play.
09:42:53 <kmc> also lexande says that premier league football on BBC shortwave radio broadcasts is enormously popular in anglophone africa
09:43:07 <atriq> Around here, it used to be the case that someone with training could tell what village you were from by your accent
09:43:31 <kmc> and that this alone does as much good as the Organisation internationale de la Francophonie or other such deliberate organziations
09:45:08 -!- derdon has joined.
09:46:24 <kmc> also you can go from boston to new york for $15 with no advance booking
09:46:27 <kmc> on a sketchy chinatown bus
09:46:36 <kmc> doubt you can go from hexham to london on the same arrangement
09:47:05 <atriq> Newcastle has a pretty major chinatown
09:47:06 <atriq> Hmm
09:47:17 <kmc> interesting
09:47:19 <atriq> You know, I used to think Chinatown was the capital of China
09:47:23 <kmc> are chinatown buses a thing in the uk?
09:47:26 <kmc> -_-
09:47:31 <kmc> that would make too much sense
09:47:35 <atriq> I don't think there are
09:47:42 <atriq> Like Mexico City et al.
09:47:44 <shachaf> Are they a thing in the US?
09:47:52 <shachaf> Other than NYC and maybe Boston.
09:47:58 <kmc> shachaf: yes
09:48:04 <kmc> San Francisco has a big one
09:48:11 <kmc> NYC has two or three actually
09:48:19 * shachaf has never taken one.
09:48:28 <shachaf> At one point when I looked they were more expensive than the other ones.
09:48:33 <kmc> oh, buses, not chinatowns
09:48:45 <kmc> but yes, chinatown buses are a thing on the east cosat generally
09:49:00 <kmc> you can go Boston → NYC → Philly → Baltimore → DC at least
09:49:18 <kmc> there might be something SF - LA too
09:49:30 <kmc> and there is analogous local transport
09:49:35 <shachaf> Maybe I should go south sometime.
09:49:46 <kmc> vans that take you from Manhattan's Chinatown to the one in Flushing, Queens
09:50:05 <kmc> if you see a van in new york city labeled only in some chinese with a ↔ in it
09:50:11 <kmc> then it probably goes between these two places
09:50:16 <kmc> shachaf: to LA?
09:50:35 <elliott> atriq: btw that's a misuse of et al i think
09:50:40 <shachaf> kmc: Or that general area.
09:50:46 <shachaf> Is it a terrible place?
09:50:56 <shachaf> I haven't been south of ~Santa Cruz since I moved to CA.
09:50:58 <atriq> elliott, Mexico City and the others. Perfectly good.
09:51:27 <kmc> i took Megabus from LA to SF
09:51:27 <atriq> Like, Panama City and Durham City
09:51:43 <kmc> before they stopped running on the west coast
09:51:54 <kmc> gotta go to boston, ttyl all
09:51:56 <shachaf> They stopped running on the west coast?
09:52:00 <kmc> yes
09:52:05 <shachaf> ttyalll
09:52:09 <elliott> atriq: englihs isn't latin
09:52:15 <elliott> *english
09:52:19 <kmc> here is the megabus route map: http://en.wikipedia.org/wiki/File:MegabusNorthAmericaMap.svg
09:52:23 <elliott> aiui in English "et al" is only used for lists of people
09:52:31 <elliott> I may be wrong thoug
09:52:32 <elliott> *though
09:52:36 <shachaf> elliott: THEN HOW COME I ENCODE MY ENGLISH TEXT USING "Latin"?!
09:52:43 <kmc> evaporating now, ttyl
09:52:48 <shachaf> Actually I use "ANSI".
09:52:55 <shachaf> goodbyeegan
09:53:10 <shachaf> Actually I use Unicode, or sometimes Unicode Big Endian.
09:53:59 -!- atriq has quit (Quit: planning).
09:54:57 -!- epicmonkey has quit (Ping timeout: 244 seconds).
10:25:58 -!- derdon has quit (Remote host closed the connection).
10:33:19 -!- atriq has joined.
10:43:35 -!- augur has quit (Remote host closed the connection).
10:45:20 <graue> I, too, like to encode my text using Big Indians
10:57:29 -!- epicmonkey has joined.
11:05:39 <shachaf> graue: Are you the SCARY PERSON?
11:05:50 <shachaf> Or was that Alan Dipert?
11:12:16 -!- augur has joined.
11:20:07 -!- monqy has quit (Quit: hello).
11:22:15 -!- ogrom has joined.
11:32:07 <graue> SILLY PERSON is more like it
11:34:24 <shachaf> SILLARY PERSON
11:34:27 <shachaf> ANCILLARY PERSON
11:34:57 <elliott> auxiliary person
11:38:52 -!- atriq has quit (Ping timeout: 246 seconds).
11:39:39 * itidus21 emits 5 stock indications of laziness
11:44:22 -!- NihilistDandy has quit.
11:47:17 -!- MoALTz has joined.
11:53:10 -!- boily has joined.
12:00:32 -!- mekeor has quit (Quit: ERC Version 5.3 (IRC client for Emacs)).
12:06:58 -!- atriq has joined.
12:10:46 -!- boily has quit (Quit: Poulet!).
12:17:06 -!- derdon has joined.
12:19:11 -!- boily has joined.
12:23:22 <atriq> :t flip local
12:23:23 <lambdabot> forall r (m :: * -> *) a. (MonadReader r m) => m a -> (r -> r) -> m a
12:23:39 <atriq> :t (>>=)
12:23:40 <lambdabot> forall (m :: * -> *) a b. (Monad m) => m a -> (a -> m b) -> m b
12:23:52 -!- ogrom has quit (Quit: Left).
12:23:53 <atriq> :t flip local `asTypeOf` (>>=)
12:23:54 <lambdabot> Occurs check: cannot construct the infinite type: b = m b
12:23:54 <lambdabot> Expected type: m (m b)
12:23:54 <lambdabot> Inferred type: m b
12:24:07 <atriq> Never managed that one before
12:24:15 <atriq> Actually
12:24:22 <atriq> :t let f = join f in f
12:24:23 <lambdabot> Occurs check: cannot construct the infinite type: a = m a
12:24:23 <lambdabot> Expected type: m (m a)
12:24:23 <lambdabot> Inferred type: m a
12:24:26 <atriq> :t let f = join f in ()
12:24:27 <lambdabot> Occurs check: cannot construct the infinite type: a = m a
12:24:27 <lambdabot> Expected type: m (m a)
12:24:27 <lambdabot> Inferred type: m a
12:25:55 <atriq> :t Identity
12:25:57 <lambdabot> forall a. a -> Identity a
12:26:00 <atriq> :t fix Identity
12:26:02 <lambdabot> Occurs check: cannot construct the infinite type: a = Identity a
12:26:02 <lambdabot> Expected type: a
12:26:02 <lambdabot> Inferred type: Identity a
12:26:07 <atriq> Having fun hear
12:26:09 <atriq> *here
12:26:31 <atriq> Infinite types would be an extension to Haskell that would be useful to me and only me
12:27:23 <atriq> > ap id id
12:27:24 <lambdabot> Occurs check: cannot construct the infinite type: a = a -> b
12:27:33 <atriq> Even if it just allowed that type?
12:33:28 -!- atriq has quit (Ping timeout: 245 seconds).
12:34:08 <kmc> Dublin airport has this weird arrangement
12:34:22 <kmc> where for certain flights to the USA, you go through US customs and immigration within DUB
12:34:44 <kmc> and then you go through another bag scanner machine because apparently the one you just went through for general airport security isn't good enough
12:35:04 <kmc> and then you're in a little concourse at DUB that's effectively part of the US domestic air-side security/immigration zone
12:35:06 <shachaf> Do you have to take off your shoes for the second one?
12:35:13 <kmc> and you can land at a US domestic terminal
12:35:15 <kmc> shachaf: yes
12:35:30 <shachaf> I think that's not that unusual for major airports that fly to the US.
12:35:41 <kmc> which other ones have it?
12:35:59 <kmc> ah http://en.wikipedia.org/wiki/United_States_border_preclearance
12:36:04 <shachaf> Not sure.
12:36:22 <shachaf> Ah, there you go.
12:36:35 <shachaf> Maybe it isn't that common.
12:37:23 <shachaf> kmc: Once, we flew to TLV (I think?) a Canadian airport.
12:37:36 <shachaf> We drove north from WA to Vancouver.
12:37:55 <shachaf> Then we had to go through US customs/security/something because the flight was connecting through a US airport.
12:38:04 <shachaf> It was pretty silly.
12:38:42 <kmc> fun
12:38:50 <kmc> transit visas and transit immigration is in general a thing
12:39:17 <kmc> "However, the US and other countries who engage in the practice have been accused of being motivated also by the desire to prevent the arrival of asylum seekers, who are protected under the 1951 Refugee Convention's non-refoulement provisions once they arrive at their destination."
12:39:22 <kmc> classy
12:40:47 <kmc> i wonder which "other countries" those are
12:42:16 <kmc> customs and immigration rules are weird
12:42:23 <kmc> they aren't transitively closed
12:43:09 <kmc> for example, if you arrive from the US to the UK you have to fill out a big form about where you've been and what you're bringing
12:43:22 <kmc> but if you land in the Republic of Ireland there's no such form
12:43:31 <kmc> and then you can travel to the UK with no further immigration controls
12:44:50 <kmc> lexande says that you might be legally required to go to a police station in the UK and fill out the form
12:49:46 <kmc> on to the plane, bbl
13:01:05 -!- mekeor has joined.
13:10:37 -!- MoALTz has quit (Ping timeout: 240 seconds).
13:38:37 -!- aloril has quit (Ping timeout: 240 seconds).
13:51:08 -!- aloril has joined.
13:54:08 -!- derdon has quit (Remote host closed the connection).
13:56:49 -!- glogbackup has quit (*.net *.split).
13:56:50 -!- atehwa has quit (*.net *.split).
13:56:50 -!- HackEgo has quit (*.net *.split).
13:56:50 -!- EgoBot has quit (*.net *.split).
13:56:50 -!- SimonRC has quit (*.net *.split).
13:56:50 -!- ssue has quit (*.net *.split).
13:56:50 -!- shachaf has quit (*.net *.split).
13:56:50 -!- comex has quit (*.net *.split).
13:57:27 -!- glogbackup has joined.
13:57:27 -!- atehwa has joined.
13:57:27 -!- HackEgo has joined.
13:57:27 -!- EgoBot has joined.
13:57:27 -!- SimonRC has joined.
13:57:27 -!- ssue has joined.
13:57:27 -!- shachaf has joined.
13:57:27 -!- comex has joined.
13:57:31 -!- glogbackup has left.
13:58:42 -!- aloril has quit (Read error: Operation timed out).
14:03:19 -!- atriq has joined.
14:13:42 -!- aloril has joined.
14:19:23 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:29:18 -!- aloril has quit (Ping timeout: 244 seconds).
14:41:53 -!- aloril has joined.
14:42:37 -!- copumpkin has joined.
14:56:11 -!- aloril has quit (Ping timeout: 250 seconds).
15:13:16 -!- aloril has joined.
15:15:07 -!- atriq has quit (Quit: Leaving).
15:27:30 -!- Vorpal has joined.
15:56:43 <nortti> http://aiju.de/b/emacs</flamebait>
16:04:46 -!- copumpkin has quit (Ping timeout: 268 seconds).
16:08:58 -!- copumpkin has joined.
16:10:47 -!- Phantom_Hoover has joined.
16:19:14 -!- ais523 has joined.
16:21:04 -!- MoALTz has joined.
16:23:59 -!- atriq has joined.
16:24:27 <atriq> > sum$map((1/).product.enumFromTo 1)[1..19]
16:24:30 <lambdabot> 1.7182818284590455
16:26:51 -!- mig21a has joined.
16:29:35 -!- mekeor has quit (Quit: had to restart X... :/).
16:29:41 * pikhq_ mutters
16:31:53 -!- mekeor has joined.
16:36:37 -!- mig21a has quit (Remote host closed the connection).
16:36:59 -!- mig21a has joined.
16:39:35 <atriq> pikhq_, sorry!
16:39:51 -!- AnotherTest has joined.
16:40:31 <AnotherTest> Hello
16:41:45 <quintopia> ohai
16:42:23 <nortti> moi
16:48:39 -!- elliott has quit (Quit: Leaving).
16:49:07 -!- ogrom has joined.
16:49:55 -!- AnotherTest has quit (Quit: Leaving.).
16:50:58 -!- AnotherTest has joined.
16:52:21 -!- AnotherTest has quit (Client Quit).
16:52:34 -!- AnotherTest has joined.
17:01:17 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
17:03:22 -!- AnotherTest has quit (Quit: Leaving.).
17:03:34 -!- AnotherTest has joined.
17:08:03 <boily> bonjour?
17:15:34 -!- ais523 has quit (Ping timeout: 246 seconds).
17:19:52 -!- ais523 has joined.
17:36:02 -!- atriq has quit (Ping timeout: 268 seconds).
17:51:02 -!- AnotherTest has quit (Read error: No route to host).
17:51:18 -!- AnotherTest has joined.
17:53:36 -!- AnotherTest has quit (Client Quit).
17:53:51 -!- AnotherTest has joined.
18:01:45 -!- monqy has joined.
18:03:28 -!- cuttlefish has joined.
18:04:02 <boily> there, for you to freely abuse, my irc bot: cuttlefish.
18:04:09 <boily> command prefix is ~.
18:04:32 -!- epicmonkey has quit (Read error: Operation timed out).
18:09:52 -!- derdon has joined.
18:12:42 <Slereah> ~kill all humans
18:12:42 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
18:12:51 <Slereah> ~eval
18:12:54 <cuttlefish> Error (1): not an expression: `'
18:13:00 <Slereah> What language is it
18:13:04 <itidus21> ~yi
18:13:05 <cuttlefish> Your divination: "Holding" to "Great Possessing"
18:19:53 -!- atriq has joined.
18:22:59 <boily> ~eval "Fyrernu: cebonoyl Unfxryy" >>= \x -> let c = toLower x in return $ if c >= 'a' && c <= 'm' then chr (ord x + 13) else if c >= 'n' && c <= 'z' then chr (ord x - 13) else x
18:23:00 <cuttlefish> "Slereah: probably Haskell"
18:24:36 <atriq> Is that new?
18:25:29 <boily> my git repo says I began working on it on july 12, then adding some intermittent modifications.
18:25:48 <atriq> Is it new to the channel?
18:25:51 <atriq> ~help
18:25:52 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
18:26:04 <boily> yeah, first public exposure.
18:26:14 <atriq> ~eval "test fungot test"
18:26:14 <cuttlefish> "test fungot test"
18:26:23 <atriq> ^botlist
18:26:33 <boily> my bot was previously tortured on our company's internal channel.
18:27:16 <boily> (our support team had great moments trying to crash my bot.)
18:29:42 <atriq> :)
18:29:47 <atriq> I wish I had a support team
18:30:03 <atriq> I wish there was anything that'd let me actually use a support team
18:30:06 <atriq> I dunno
18:30:50 <boily> I work for a FOSS company here in montreal.
18:31:10 <atriq> Oh, sweet
18:33:06 -!- kinoSi has quit (Read error: Connection reset by peer).
18:33:33 -!- kinoSi has joined.
18:42:56 -!- AnotherTest has quit (Ping timeout: 245 seconds).
18:55:06 <atriq> ...how does a FOSS company make money?
18:56:47 <nortti> cd /usr/include; for i in *; do echo -n "checking for $i... "; sleep 0.2; echo "yes"; done
18:57:03 <nortti> autoconf replacement
18:58:31 <atriq> And that's how FOSSs make money
18:59:20 <nortti> :P
19:04:57 <boily> atriq: support contracts, web and embedded development, hosting, enterprise relations, mysterious stuff... all this contributes to us making some money.
19:05:31 <atriq> Hmm
19:13:21 <atriq> Is "mysterious stuff" a euphemism for mob contracts or something, or do you actually not know?
19:14:27 <atriq> Now I'm imagining boily as a hitman
19:14:33 <atriq> In a boiler suit
19:16:51 <boily> atriq: mysterious stuff meaning we sometimes have to sign astringent NDA's for sensitive contracts.
19:17:46 <atriq> Oh, okay
19:17:54 -!- ogrom has quit (Quit: Left).
19:20:46 <atriq> :t runIdentity
19:20:47 <lambdabot> forall a. Identity a -> a
19:21:32 <atriq> > do {x <- Identity 10; return (x + 1); return (x *7)}
19:21:33 <lambdabot> No instance for (GHC.Show.Show (Data.Functor.Identity.Identity a))
19:21:33 <lambdabot> arisi...
19:21:39 <atriq> > runIdentity $ do {x <- Identity 10; return (x + 1); return (x *7)}
19:21:40 <lambdabot> 70
19:22:39 <jlaire> this is not the return you are looking for
19:23:01 <jlaire> compare with gnu C: ({ int x = 10; x + 1; x * 7; })
19:23:27 <atriq> jlaire, you do realise I know exactly what I'm doing, and I'm just fiddling?
19:23:37 <jlaire> of course
19:23:52 <atriq> (barely know C at all...)
19:24:27 -!- Slereah_ has joined.
19:28:17 -!- Slereah has quit (Ping timeout: 256 seconds).
19:28:59 -!- fungot has joined.
19:32:59 -!- oerjan has joined.
19:35:29 <boily> generic haskell question: is Traversable useful, and why? I have never seen it in the wild.
19:37:20 <atriq> ~eval "test fungot test"
19:37:21 <cuttlefish> "test fungot test"
19:37:21 <fungot> atriq: you'd have to learn
19:37:23 <fungot> cuttlefish: well, the zilliards shouldn't really be using assignment, there's better ways of organizing fnord, adaptive presentation, etc. i believe the internet works on cr/ lf/ crlf line-terminator stupidity.
19:37:39 <atriq> ~help
19:37:39 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
19:37:44 <atriq> ~help echo
19:37:44 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
19:37:52 <atriq> ~echo fungot test
19:37:52 <cuttlefish> fungot test
19:37:53 <fungot> atriq: how does this compare with something like gambit or chicken wouldn't be fast enough
19:37:53 <fungot> cuttlefish: i'm interested in applying scheme to distributed programming, consider kali. is your professor using ms word to write java to extend my text editor of choice and all bets are off
19:38:05 <atriq> ~echo ^echo ~echo ^echo
19:38:05 <cuttlefish> ^echo ~echo ^echo
19:38:05 <fungot> ~echo ^echo ~echo ^echo
19:38:05 <cuttlefish> ^echo ~echo ^echo
19:38:06 <fungot> ~echo ^echo ~echo ^echo
19:38:06 <cuttlefish> ^echo ~echo ^echo
19:38:06 <fungot> ~echo ^echo ~echo ^echo
19:38:07 <cuttlefish> ^echo ~echo ^echo
19:38:07 <fungot> ~echo ^echo ~echo ^echo
19:38:07 <cuttlefish> ^echo ~echo ^echo
19:38:08 <fungot> ~echo ^echo ~echo ^echo
19:38:08 <cuttlefish> ^echo ~echo ^echo
19:38:08 <fungot> ~echo ^echo ~echo ^echo
19:38:08 <cuttlefish> ^echo ~echo ^echo
19:38:09 <fungot> ~echo ^echo ~echo ^echo
19:38:09 <cuttlefish> ^echo ~echo ^echo
19:38:09 <atriq> Woops
19:38:09 <fungot> ~echo ^echo ~echo ^echo
19:38:10 <cuttlefish> ^echo ~echo ^echo
19:38:10 <fungot> ~echo ^echo ~echo ^echo
19:38:10 <cuttlefish> ^echo ~echo ^echo
19:38:11 <fungot> ~echo ^echo ~echo ^echo
19:38:11 <cuttlefish> ^echo ~echo ^echo
19:38:11 <fungot> ~echo ^echo ~echo ^echo
19:38:11 <cuttlefish> ^echo ~echo ^echo
19:38:12 <fungot> ~echo ^echo ~echo ^echo
19:38:12 <cuttlefish> ^echo ~echo ^echo
19:38:12 <fungot> ~echo ^echo ~echo ^echo
19:38:13 <cuttlefish> ^echo ~echo ^echo
19:38:13 <fungot> ~echo ^echo ~echo ^echo
19:38:13 <cuttlefish> ^echo ~echo ^echo
19:38:13 <atriq> Sorry
19:38:14 <fungot> ~echo ^echo ~echo ^echo
19:38:14 <cuttlefish> ^echo ~echo ^echo
19:38:14 <fungot> ~echo ^echo ~echo ^echo
19:38:14 <cuttlefish> ^echo ~echo ^echo
19:38:15 <fungot> ~echo ^echo ~echo ^echo
19:38:15 <cuttlefish> ^echo ~echo ^echo
19:38:16 <fungot> ~echo ^echo ~echo ^echo
19:38:16 <cuttlefish> ^echo ~echo ^echo
19:38:16 <fungot> ~echo ^echo ~echo ^echo
19:38:16 <cuttlefish> ^echo ~echo ^echo
19:38:17 <fungot> ~echo ^echo ~echo ^echo
19:38:17 <cuttlefish> ^echo ~echo ^echo
19:38:17 <atriq> Umm,...
19:38:18 <fungot> ~echo ^echo ~echo ^echo
19:38:18 <cuttlefish> ^echo ~echo ^echo
19:38:18 <fungot> ~echo ^echo ~echo ^echo
19:38:18 <cuttlefish> ^echo ~echo ^echo
19:38:24 <nortti> come on
19:38:39 <Phantom_Hoover> Uh, ais523, oerjan, fizzie?
19:38:56 <Phantom_Hoover> Wait, did it stop or is that the flood protection kicking in.
19:39:01 <oerjan> it would appear to have stopped?
19:39:02 <atriq> I think the latter
19:39:19 <atriq> fungot are you alive
19:39:20 <fungot> atriq: it brought lostkng.b down to 288 kilobytes.
19:39:29 <atriq> ~echo test
19:39:30 <cuttlefish> test
19:39:32 <atriq> Hmm
19:39:50 <atriq> Okay, fizzie, boily, make this not happen
19:40:10 <Phantom_Hoover> ^ignore cuttlefish
19:40:19 <atriq> ~echo fungot
19:40:19 <cuttlefish> fungot
19:40:20 <fungot> atriq: i've heard bubble sort a lot more material on the channel
19:40:20 <fungot> cuttlefish: never need to touch windows :) negative array indexes are always fun in c yesterday. a fun language
19:40:30 <Phantom_Hoover> ^ignore
19:40:35 <atriq> ^help
19:40:35 <fungot> ^<lang> <code>; ^def <command> <lang> <code>; ^show [command]; lang=bf/ul, code=text/str:N; ^str 0-9 get/set/add [text]; ^style [style]; ^bool
19:40:40 <oerjan> ^ignore only obeys fizzie
19:40:54 <Phantom_Hoover> I thought it listed for anyone.
19:41:06 <atriq> ^bool
19:41:06 <fungot> No.
19:41:11 <atriq> ^bool
19:41:11 <fungot> No.
19:41:35 <oerjan> ^bool
19:41:36 <fungot> No.
19:41:49 <atriq> Mama mia let me go
19:42:00 <atriq> Beelzebub has the devil put aside for me
19:42:21 <pikhq_> s/the/a/
19:42:36 <atriq> Artistic license
19:45:06 <atriq> Wow, I actually managed to make a botloop?
19:45:32 <atriq> Which only works due to an oddity in fungot's echo?
19:45:33 <fungot> atriq: not the char 0, second char 1 etc. do you have any
19:45:37 <atriq> ^style
19:45:37 <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
19:45:43 <atriq> ^style wp
19:45:44 <fungot> Selected style: wp (1/256th of all Wikipedia "Talk:" namespace pages)
19:45:53 <atriq> fungot, are you on fire?
19:45:54 <fungot> atriq: i notice that you have specified the fair use rationale on the other images used on this page about robert levinson, who was the father of existentialism, which is why i have put it here and not balkan fnord? should we keep, and which is neutral.
19:46:23 <atriq> "are you on fire" "whichever's useful"
19:47:22 <fizzie> Huh.
19:47:40 <fizzie> ^ignore ^(EgoBot|HackEgo|toBogE|Sparkbot|optbot|lambdabot|oonbotti|cuttlefish)!
19:47:41 <fungot> OK.
19:47:56 <fizzie> I'll see if I have some time to do a Gregor on it some day.
19:48:10 <atriq> (do a Gregor?)
19:48:34 <fizzie> atriq: Make it add a zero-width space in front of all starts-with-nonalphabetic output.
19:48:47 <atriq> Oh, cool
19:48:49 <fizzie> (It's the Standard(TM) Clever(R) way of avoiding botloops.)
19:49:07 <atriq> Unless there's a clone of Fungot
19:49:20 <atriq> Who picks up midline commands?
19:49:27 <atriq> And is poorly administered
19:49:30 <Phantom_Hoover> <atriq> Which only works due to an oddity in fungot's echo?
19:49:32 <fungot> Phantom_Hoover: that misses the point. neither you nor any of your esteemed fnord would ever check an even incorrect historical reference to start your fnord what sort of changes can be considered a keylogger. the only source supporting the rumors about nick adams's homosexual leanings. user:onefortyoneonefortyone 21:41, 26 february 2007 ( utc)
19:49:34 <Phantom_Hoover> A literism, rather.
19:49:45 <oerjan> @wn literism
19:49:46 <lambdabot> No match for "literism".
19:50:09 <atriq> `? Phantom_Hoover
19:50:10 <Phantom_Hoover> Literalism, dammit.
19:50:12 <HackEgo> Phantom_Hoover is a true Scotsman and hatheist.
19:50:25 <Phantom_Hoover> atriq, make sure you try it with different numbers of _!
19:50:34 <atriq> `? Phantom__Hoover
19:50:37 <HackEgo> Phantom__Hoover ? ¯\(°_o)/¯
19:50:43 <atriq> `? Phantom___Hoover
19:50:46 <HackEgo> Phantom___Hoover ? ¯\(°_o)/¯
19:50:51 <atriq> `? Phantom____Hoover
19:50:54 <HackEgo> Phantom____Hoover ? ¯\(°_o)/¯
19:50:57 <atriq> `? PhantomHoover
19:51:01 <HackEgo> PhantomHoover ? ¯\(°_o)/¯
19:51:02 <oerjan> `? Phantom__Hoover
19:51:06 <HackEgo> Phantom__Hoover can't decide what an appropriate number of underscores is.
19:51:08 <atriq> `ls wisdom
19:51:11 <HackEgo> ​? \ ais523 \ atriq \ augur \ banach-tarski \ boily \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ esoteric \ europe \ everyone \ finland \ finns \ fizzie \ flower \ friendship \ functor \ fungot \ glogbot \ gregor \ hackego \ haskell \ hexham \ ievan \ intercal \ internationale \ itidus20 \ itidus21 \ kallisti \ lens \ lifthrasiir \ mad \ misspellings of croissant \ monad
19:51:24 <Phantom_Hoover> `? friendship
19:51:27 <HackEgo> friendship wisdom
19:51:34 <oerjan> hint: HackEgo is space at end of line sensitive
19:51:36 <Phantom_Hoover> `? internationale
19:51:40 <HackEgo> You have been reported to the House Un-American Activities Committee
19:51:41 <atriq> Aaargh
19:51:46 <Phantom_Hoover> `? hexham
19:51:49 <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.
19:52:21 <atriq> `? hackego
19:52:24 <HackEgo> HackEgo, also known as HackBot, is a bot that runs arbitrary commands on Unix. See `help for info on using it. You should totally try to hax0r it! Make sure you imagine it's running as root with no sandboxing.
19:52:33 <atriq> `? lens
19:52:36 <HackEgo> A lens is a monoidal natural transformation between higher-order coalgebra functors
19:52:45 <atriq> `? intercal
19:52:48 <HackEgo> INTERCAL has excellent features for modular program for the enterprise market.
19:52:53 <atriq> `? c
19:52:56 <HackEgo> C is the language of��V�>WIד�.��Segmentation fault
19:53:52 <nortti> :D
19:54:00 <atriq> `? python
19:54:03 <HackEgo> python? ¯\(°_o)/¯
19:54:43 <atriq> `? haskell
19:54:46 <HackEgo> Unbound implicit parameter (?haskell::Wisdom) \ arising from a use of implicit parameter `?haskell'
19:54:55 <atriq> `? flower
19:54:58 <HackEgo> flower. what IS a flower?
19:55:04 <atriq> `? europe
19:55:04 -!- augur has quit (Remote host closed the connection).
19:55:07 <HackEgo> Europe is the national anthem of the Republic of Kosovo.
19:55:15 <atriq> `? comonad
19:55:18 <HackEgo> Comonads are just monads in the dual category.
19:56:48 <atriq> `? elliott
19:56:51 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
19:57:01 <atriq> `? Ngevd
19:57:05 <HackEgo> ​ۅ.n.o.BOL...&)F\,.кȔ`{=7SpIgqczxf7.4d.
19:57:07 <atriq> `? Ngevd
19:57:10 <HackEgo> ​46/3.Z...*5(C..Bm":4E՜..ep}0%..a.Ŏ.ꐺp@..¨h<1dZne.1.o5\bt..wo.[Ə\0ё.QꫫK3y \ pEH \ *{ \ $@y.\lի*.ɵ2llޟI
19:57:29 <atriq> Haha HackEgo said Bm
19:57:31 <nortti> `run ls -l `which ?`
19:57:35 <HackEgo> ​-rwxr-xr-x 1 5000 0 126 Aug 17 19:57 /hackenv/bin/? \ -rwxr-xr-x 1 5000 0 101 Aug 17 19:57 /hackenv/bin/@ \ -rwxr-xr-x 1 5000 0 42 Aug 17 19:57 /hackenv/bin/k
19:58:08 <fizzie> atriq: The Ngevdntry is creepy.
19:58:25 <atriq> fizzie, there's a reason for that
19:58:25 <nortti> `ls
19:58:28 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom
19:58:32 <atriq> `ls canary
19:58:33 <oerjan> oh no it's a Búm
19:58:35 <HackEgo> canary
19:58:39 <atriq> `canary
19:58:41 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: canary: not found
19:58:48 <atriq> `canary/canary
19:58:50 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: /hackenv/canary/canary: Not a directory \ /home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: /hackenv/canary/canary: cannot execute: Not a directory
19:58:56 <nortti> `ls -l wisdom/Ngevd
19:58:59 <HackEgo> ls: invalid option -- ' ' \ Try `ls --help' for more information.
19:59:00 <atriq> `file canary/canary
19:59:03 <HackEgo> canary/canary: ERROR: cannot open `canary/canary' (Not a directory)
19:59:05 <nortti> `run ls -l wisdom/Ngevd
19:59:08 <HackEgo> ls: cannot access wisdom/Ngevd: No such file or directory
19:59:14 <nortti> `run ls -l wisdom
19:59:17 <HackEgo> total 276 \ -rw-r--r-- 1 5000 0 12 Aug 17 19:59 ? \ -rw-r--r-- 1 5000 0 103 Aug 17 19:59 ais523 \ -rw-r--r-- 1 5000 0 59 Aug 17 19:59 atriq \ -rw-r--r-- 1 5000 0 21 Aug 17 19:59 augur \ -rw-r--r-- 1 5000 0 64 Aug 17 19:59 banach-tarski \ -rw-r--r-- 1 5000 0 67 Aug 17 19:59 boily \ -rw-r--r-- 1 5000 0 64 Aug 17 19:59 c \ -rw-r--r-- 1 5000 0 3 Aug 17 19:59 cakeprophet \ -rw-r--r-- 1 5000 0 32 Aug 17 19:59 category
19:59:19 <nortti> `run ls wisdom
19:59:22 <HackEgo> ​? \ ais523 \ atriq \ augur \ banach-tarski \ boily \ c \ cakeprophet \ category \ coffee \ comonad \ coppro \ egobot \ elliott \ endofunctor \ esoteric \ europe \ everyone \ finland \ finns \ fizzie \ flower \ friendship \ functor \ fungot \ glogbot \ gregor \ hackego \ haskell \ hexham \ ievan \ intercal \ internationale \ itidus20 \ itidus21 \ kallisti \ lens \ lifthrasiir \ mad \ misspellings of croissant \ monad
19:59:26 <atriq> I think it's a symbolic link or something
19:59:46 <atriq> `run ls -l wisdom/ngevd
19:59:49 <HackEgo> lrwxrwxrwx 1 5000 0 12 Aug 17 19:59 wisdom/ngevd -> /dev/urandom
19:59:54 <nortti> I knew it
20:00:10 <boily> that's a good one :D
20:00:13 <atriq> `? nortti
20:00:15 <HackEgo> nortti? ¯\(°_o)/¯
20:00:34 <oerjan> `? finns
20:00:38 <HackEgo> Finns are helpful, albeit grossly overpopulated (cf. 'Finland').
20:00:50 <atriq> `learn nortti boy. very nortti boy.
20:00:52 <HackEgo> I knew that.
20:01:00 <nortti> `? nortti
20:01:03 <HackEgo> nortti boy. very nortti boy.
20:01:07 <oerjan> o kay
20:01:09 <nortti> ok...
20:01:21 <jlaire> o.o
20:01:34 <atriq> `? boily
20:01:34 <nortti> oh. it is incredibly lame pun
20:01:37 <HackEgo> boily may be French or something. We are not sure about the rest.
20:01:46 <boily> ~metar EFHK
20:01:47 <cuttlefish> EFHK 171950Z VRB01KT CAVOK 15/14 Q1016 NOSIG
20:01:47 <atriq> nortti, the lamest
20:02:08 <oerjan> `learn atriq or two
20:02:08 <atriq> ~metar zanyoujane
20:02:09 <cuttlefish> --- Station not found!
20:02:11 <HackEgo> I knew that.
20:02:28 <boily> atriq: it uses ICAO airport codes.
20:02:36 <atriq> `metar NCL
20:02:38 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: metar: not found
20:02:43 <atriq> ~metar NCL
20:02:44 <cuttlefish> --- Station not found!
20:02:49 <atriq> ~metar LHR
20:02:50 <cuttlefish> --- Station not found!
20:03:14 <fizzie> atriq: ICAO, not IATA.
20:03:29 <boily> ~metar EGNT
20:03:29 <cuttlefish> EGNT 171950Z 17004KT 120V210 9999 SCT020 BKN025 19/18 Q1009
20:03:43 <fizzie> ~metar EFHK
20:03:44 <cuttlefish> EFHK 171950Z VRB01KT CAVOK 15/14 Q1016 NOSIG
20:03:57 <fizzie> Sadly, I can't really decode anything of the line.
20:04:06 <oerjan> ~metar EBCD
20:04:07 <cuttlefish> --- Station not found!
20:04:19 <atriq> ~metar EGNT
20:04:19 <cuttlefish> EGNT 171950Z 17004KT 120V210 9999 SCT020 BKN025 19/18 Q1009
20:05:15 <Phantom_Hoover> `? banach-tarski
20:05:18 <HackEgo> ​"Banach-Tarski" is an anagram of "Banach-Tarski Banach-Tarski".
20:05:22 <fizzie> Why was mine so short. :/
20:05:29 <Phantom_Hoover> Poor.
20:05:31 <boily> fizzie: it means it's not really windy, sky is clear, and it's somewhat warm and very humid.
20:05:31 <fizzie> (Uh, I mean... the airport reply thing.)
20:05:58 <fizzie> It didn't even have any 9999s. :/
20:06:22 <boily> in canada we never have any 9999, because of a weird mix between international and american formats.
20:06:27 <boily> ~metar CYUL
20:06:28 <cuttlefish> CYUL 171900Z 22013G18KT 15SM FEW030TCU BKN050 OVC080 25/19 A2967 RMK TCU1SC5AC2 SLP049
20:07:04 <atriq> I have no idea what the output means
20:07:36 <boily> those are weather observations and forecasts for pilots.
20:07:47 <boily> https://en.wikipedia.org/wiki/METAR
20:09:35 <fizzie> VRB01KT apparently i.e. variable direction, one knot; yeah, that's "not really windy" indeed.
20:11:27 -!- oerjan has quit (Quit: leaving).
20:11:46 -!- pikhq has joined.
20:11:55 -!- pikhq_ has quit (Ping timeout: 256 seconds).
20:15:27 -!- AnotherTest has joined.
20:22:22 -!- AnotherTest has quit (Quit: Leaving.).
20:26:46 -!- boily has quit (Quit: Poulet!).
20:27:02 -!- cuttlefish has quit (Remote host closed the connection).
20:27:15 -!- boily has joined.
20:27:27 -!- cuttlefish has joined.
20:27:52 -!- mtve has quit (Ping timeout: 244 seconds).
20:35:15 -!- mekeor has quit (Quit: everything has an end. this is the end of this irc session for me.).
20:41:16 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
20:47:58 -!- epicmonkey has joined.
20:57:05 -!- atriq has quit (Quit: Leaving).
21:01:40 -!- epicmonkey has quit (Ping timeout: 246 seconds).
21:20:07 <Sgeo> I'm reading this post because it looks like it might be favorable to newLISP. I have already decided that the author is at least slightly clueless, yet I am still reading.
21:20:29 -!- DHeadshot has quit (Read error: Connection reset by peer).
21:20:48 -!- DHeadshot has joined.
21:23:07 -!- augur has joined.
21:23:12 <Sgeo> " Internally, newLISP passes data by reference between built-in functions and does other optimizations."
21:23:17 <Sgeo> Oh, that's alright then.
21:26:23 <Sgeo> Wait, why does the thing require [cmd][/cmd] for multiline stuff?
21:26:43 -!- nooga has quit (Ping timeout: 256 seconds).
21:29:13 <Sgeo> It reminds me a bit of Tcl
21:32:47 <Sgeo> WTF at if acting like cond
21:37:20 <FreeFull> You could just use Racket or Clojure
21:44:04 <atehwa> Hmm, do we have some kind of bot policy here?
21:44:11 <atehwa> I'm about to bring one in.
21:44:42 <Sgeo> Bot policy: There is a 100% chance of someone attempting to construct a bot loop.
21:44:48 <atehwa> true
21:44:54 <atehwa> that's why I'm so eager
21:45:02 <atehwa> it's not a very commandable bot, however
21:45:10 <atehwa> oh, I have to be an op to invite :/
21:45:23 <atehwa> let's see if I can circumvent this somehow.
21:46:05 <Sgeo> Change the bot to enter a configuration-specified channel?
21:47:56 -!- psyk has joined.
21:48:15 <atehwa> Sgeo: no need :)
21:48:22 <atehwa> All it took was:
21:48:24 <atehwa> !eval (irc-write `(message join ,(string->symbol "#esoteric")))
21:49:14 <atehwa> psyk: please feel welcome here, right?
21:49:19 <psyk> atehwa: mit m haluan kaupasta?
21:49:31 <atehwa> psyk: no, bad bot, no finnish here.
21:49:33 <psyk> atehwa: :(
21:49:33 <Sgeo> atehwa, what language (yes, I can tell it's a Lisp)
21:49:42 <Sgeo> And it's not Kernel
21:49:57 <atehwa> Sgeo: quite standard scheme, guile IIRC.
21:50:37 <atehwa> Yes, guile
21:50:52 <atehwa> I just wanted some scheme that is quite ubiquitously available.
21:51:12 <atehwa> But I've ported it from one scheme to another at least two times :(
21:51:25 <Sgeo> o.O why?
21:53:10 <atehwa> differences in Schemes' character set supports, availability of implementations for different OS's, the like.
21:53:40 <atehwa> The source, by the way, is at http://sange.fi/~atehwa/psyk/ if someone is interested
21:53:57 <atehwa> psyk: please say at least something in English
21:54:06 <psyk> atehwa: not everyone of my lines is in English!
21:54:31 <atehwa> psyk: you're right, they aren't, but you're a good girl none the less.
21:54:39 <psyk> atehwa: Puhuisimmeko mieluummin suomea?
21:54:48 <atehwa> psyk: I'd rather not.
21:54:58 <psyk> atehwa: Hmm.. Might be. But you sure are a liar.
21:55:54 <atehwa> actually, ircbot.ss there is quite a good glue if someone wants to try out bots in Scheme :)
21:56:36 <atehwa> well, anyway, psyk can be kicked out if he misbehaves or is irritating for some other reason
21:57:03 <atehwa> she's really quite a good kid, but overly fond of Finnish.
22:02:21 <Sgeo> Well, #lisp objects to fexprs
22:02:39 <Sgeo> I'm not sure what I think
22:02:51 <Sgeo> They make code-walking impossible, but I'm not sure how useful code-walking is.
22:08:38 <boily> time to disappear in the great void behind the building door.
22:08:44 -!- boily has quit (Quit: Poulet!).
22:08:48 -!- cuttlefish has quit (Remote host closed the connection).
22:09:22 <Sgeo> My current concern about newLISP scoping:
22:09:59 <Sgeo> If I have a variable x that I intend to use dynamically, and I have a function c that wants to look at it. Yet b calls c, and has a "local" variable x....
22:10:29 <Sgeo> Common Lisp has conventions to prevent this scenario, which due to the way let works is possible in CL. What does newLISP do?
22:12:31 <Sgeo> newLISP cons won't make dotted pairs, hmm
22:13:47 -!- nooga has joined.
22:19:02 <Sgeo> "newLISP can usually read your mind, and knows what you want to do, depending on how you use the context function."
22:19:14 * Sgeo backs away slowly
22:19:58 <shachaf> newLISP?
22:20:04 <shachaf> I guess it's at least on-topic!
22:20:19 * Sgeo laughs
22:20:58 -!- MoALTz has quit (Ping timeout: 252 seconds).
22:21:14 * Sgeo is trying not to hate it
22:22:36 <Sgeo> "To see the values of each symbol, use eval to find its value, and term to return just the symbol's name."
22:22:48 -!- david_werecat has joined.
22:35:50 -!- mtve has joined.
22:53:00 -!- nooga has quit (Ping timeout: 268 seconds).
23:05:44 -!- ais523 has quit.
23:06:20 -!- augur has quit (Remote host closed the connection).
23:07:21 -!- Vorpal has quit (Ping timeout: 276 seconds).
23:35:35 -!- nooga has joined.
23:47:59 -!- aloril has quit (Read error: Operation timed out).
2012-08-18
00:04:09 -!- aloril has joined.
00:07:31 -!- nooga has quit (Ping timeout: 245 seconds).
00:12:04 -!- DHeadshot has quit (Read error: Connection reset by peer).
00:54:29 <Sgeo> Oh hey, zzo38 posts on TheDailyWTF
01:02:00 -!- pikhq_ has joined.
01:02:03 -!- pikhq has quit (Ping timeout: 256 seconds).
01:13:25 <olsner> Sgeo: nice
01:14:42 <shachaf> s/posts on/is/
01:14:58 <olsner> o.O
01:16:05 <olsner> I think "the daily #esoteric wtf" is a separate category, fwiw
01:17:46 <Phantom_Hoover> TD#EWTF would only last until we ran out of BF derivatives, thoughl
01:18:00 <pikhq_> It would last forever.
01:18:15 <olsner> BF derivatives are too boring to make it to td#ewtf
01:18:44 <Phantom_Hoover> pikhq_, not on a daily schedule.
01:18:54 <Phantom_Hoover> They're not made that often, thankfully.
01:19:08 <pikhq_> Phantom_Hoover: They are created at a rate of one BF derivative per unit of time.
01:19:09 <olsner> it is true that zzo might not speak here every day
01:19:19 <pikhq_> Where units are arbitrary.
01:19:27 <olsner> one BF derivative per BF derivative
01:20:51 <olsner> it should be trivial to produce a BF meta-derivative that produces a new BF derivative for each unit of time
01:22:13 <olsner> THEY GAVE ME NO STRAW
01:22:48 <olsner> drinking is beneath me, yet I must for I have no straw
01:26:11 -!- derdon_ has joined.
01:26:36 <olsner> thinking, of course, of https://en.wikipedia.org/wiki/I_Have_No_Mouth,_and_I_Must_Scream
01:26:37 -!- derdon has quit (Read error: Operation timed out).
01:29:53 <olsner> incidentally, today I relearned where the Children of Bodom got their name from
01:29:54 <olsner> ... turns out the real story is less interesting than the one I made up and remembered earlier
01:33:04 -!- augur has joined.
01:35:07 -!- derdon_ has quit (Remote host closed the connection).
01:43:07 <kmc> "Boston man guilty of trying to rob the same Cambridge bank twice"
01:43:32 <olsner> since when is it a crime to rob a bank twice!?
01:44:15 <Phantom_Hoover> "Guilty! Of bank robbery, and double bank robbery!"
01:44:59 <kmc> but the constitution protects against double jeopardy!
01:45:37 <Phantom_Hoover> Ah, but he's being charged *three* times.
01:45:58 <Phantom_Hoover> Once for the first robbery, then twice for the double bank robbery.
01:51:26 <kmc> and he was caught by this guy: http://chainsawsuit.com/tag/two-cops/
01:52:15 -!- pikhq_ has quit (Ping timeout: 246 seconds).
01:52:20 -!- pikhq has joined.
01:58:30 <kmc> http://www.quickmeme.com/meme/3qizy6/
02:16:05 <Sgeo> http://paste.lisp.org/display/131085
02:16:57 <Sgeo> (defadt shape (square side) (circle radius))
02:17:07 <Sgeo> Expands into a shape class, with subclasses square and circle
02:17:25 <Sgeo> square has a slot side with reader square-side, and circle has a reader radius with circle-radius
02:17:42 <Sgeo> I should really make shape abstract somehow
02:18:13 <kmc> i never metaprogram i didn't like
02:24:05 <shachaf> Welcomeegan back to Boston!
02:24:57 <Sgeo> kmc, does that code prove I'm a Haskell addict?
02:25:54 <shachaf> Why do you care whether people think you're a Haskell addict?
02:26:00 <monqy> @ask elliott <Sgeo> kmc, does that code prove I'm a Haskell addict?
02:26:01 <lambdabot> Consider it noted.
02:27:18 <shachaf> @ask monqy welcome back to non-boston. noston
02:27:19 <lambdabot> Consider it noted.
02:27:32 <shachaf> I watched a movie today where a bunch of people had the last name "Parker".
02:27:46 <shachaf> Jack, Katie, Thomas, and Bruno.
02:27:49 <shachaf> No William.
02:28:09 <kmc> thankschaf
02:28:21 <FreeFull> No Peter?
02:28:52 <shachaf> Anytimeegan.
02:32:06 -!- oklopol has joined.
02:32:14 <oklopol> soup
02:32:32 -!- pikhq_ has joined.
02:33:09 -!- pikhq has quit (Ping timeout: 268 seconds).
02:34:07 <Sgeo> kmc, actually, I think Tcl is interesting even compared to Kernel, because even in things that in Kernel would be a operative, you can still dynamically construct arguments that the equivalent in Tcl wll end up seeing the result
02:34:26 <kmc> whee, internet at home became 3x as fast while i was away
02:34:53 <kmc> Sgeo: i don't understand
02:34:57 <psyk> kmc: What a shame..
02:36:07 <Sgeo> kmc, here's some code, first a normal use of if, and then dynamically constructing arguments to the if. I think I'm making it sound fancier than it really is
02:36:19 <Sgeo> if {1 < 2} {puts "Hello"}
02:37:00 <Sgeo> set somefunc {puts}; if {1 < 2} [list $somefunc "Hello"]
02:37:22 <Sgeo> That list command will be executed no matter what the if thinks. Yet, the earlier puts is not
02:42:32 <oklopol> so i discussed politics with this russian guy yesterday and he told me i have been brainwashed 100% liberal by the tv
02:42:55 <oklopol> so now i feel like i should learn what liberals think
02:43:05 <oklopol> and get a tv
02:43:44 <oklopol> at some point in the discussion he responded to something with "that's liberal propaganda based on the idea that the earth is the whole universe"
02:44:55 <oklopol> later, he said, rephrasing slightly, "the reason ethnic groups are the natural division between which wars and territory stuff happens is that they are the second largest concentric circle around you" (with the obvious interpretation)
02:45:42 <oklopol> so given that he himself introduced martians and just said this, i figured it made sense to ask if he thought nations would then become meaningless if life very similar to ours were discovered on the planets of our solar system
02:46:00 <oklopol> his response was that this question was isaac asimov's liberal propaganda
02:46:32 -!- TeruFSX has joined.
02:46:39 <oklopol> when i told him i have no idea who he is and kept asking him why he can't answer a natural question for 20 minutes, he finally said, very vaguely, that perhaps nations would become somewhat less meaningful
02:46:41 <oklopol> and then
02:47:00 <oklopol> he told me he has just said enough to get a 2 year prison sentence in russia.
02:47:56 <kmc> Sgeo: I don't know Tcl...
02:48:08 <kmc> i can't really just read some Tcl code and know what you're talking about
02:48:57 <Sgeo> if {1 < 2} {puts "Hello"}
02:49:04 <Sgeo> if takes two strings. {} is a string delimiter
02:49:10 <oklopol> funny thing being that he told me i've been brainwashed by the liberals behind tv programs, and can't think on my own. and he actually admits he is not allowed to think on his own, but that he still is still right and liberals writing the tv programs should be killed.
02:49:24 <oklopol> maybe i take crackpots a bit too seriously :D
02:50:42 <Sgeo> There are no special forms, and yet I can still dynamically make a string to be passed to the second argument to if
02:56:02 <kmc> so what do brackets mean
02:56:09 <Sgeo> {this is a string}
02:56:23 <kmc> [list $somefunc "Hello"]
02:56:25 <kmc> whatsat
02:56:56 <Sgeo> That executes the code in the brackets and sort of pastes in the result
02:57:05 <Sgeo> Except it's safer than merely pasting it in
02:57:16 <kmc> safer how?
02:57:21 <kmc> it does seem a bit like kernel, yeah
02:57:34 <Sgeo> It will still be one argument when passed in to the command, even if the result contains spaces
02:57:34 <kmc> i don't see the distinction you're drawing, though
02:58:03 <kmc> maybe i'm too tired or something
02:58:31 <Sgeo> Suppose you have an operative. How do you deal with the situation where you want to dynamically construct code to pass the operative?
02:58:38 <Sgeo> (In Kernel)
02:59:00 <kmc> you use eval
02:59:21 <oklopol> i think Sgeo means it's not just pasted in in that you can't get out of the if block?
02:59:28 <kmc> and it's hygenic because you eval a list like (<some-value-representing-an-operative> stuff)
02:59:32 <kmc> not (name-of-an-operative stuff)
02:59:52 <kmc> evaling a symbol does a name lookup, but an operative just evaluates to itself
02:59:56 <oklopol> oh maybe something deeper than that
03:00:10 <Sgeo> Or maybe I'm just thinking it's a bit easier in Tcl than Kernel
03:00:11 <kmc> ok maybe the hygeine point is not too relevant
03:01:14 <kmc> maybe so
03:01:44 <kmc> Sgeo: did you implement a kernel-like language and play with it yet?
03:01:56 <Sgeo> No >.>
03:02:06 <kmc> it's fun!
03:02:26 <kmc> the interpreter is super super small
03:02:31 <Sgeo> But I do think it makes more sense to do it Tcl's way than Kernel's way
03:02:36 <Sgeo> Even if the rest of Tcl is iffy
03:02:55 <Sgeo> Oooh, good comparison: Imagine a Lisp where, for things like if, you typically passed in quoted lists
03:03:23 <Sgeo> e.g. (if '(< 1 2) '(format t "Hello") '(format t "Goodbye"))
03:03:47 <Sgeo> That's basically the Tcl approach
03:03:55 -!- david_werecat has quit (Ping timeout: 246 seconds).
03:03:57 <Sgeo> In this scenario, if would be a function
03:03:59 <kmc> that's also basically the Kernel approach >_<
03:04:28 <oklopol> kernel uses strings too?
03:04:40 <kmc> no, but neither does that lisp example
03:04:43 <Sgeo> kmc, with quoting marking the call site? I thought the distinction was made at the function's level
03:04:56 <kmc> the quoting is implicit in every application
03:05:01 <oklopol> well that's my point, i assumed kernel did it the smart way
03:05:03 <oklopol> unlike tcl
03:05:14 <kmc> <Sgeo> Even if the rest of Tcl is iffy
03:05:49 <kmc> an operative gets unevaluated syntax trees of its arguments
03:05:56 <kmc> as if it were a lisp function and the arguments had been quoted
03:06:13 <kmc> but it also gets an argument for the environment at the call site
03:06:15 <Sgeo> But maybe I want to evaluate some of my arguments, use quasiquoting with others, and others unevaluated
03:06:18 <kmc> so that it can safely use 'eval' on those syntax trees
03:06:25 <Sgeo> That should be the choice of the caller, not the operative/applicative
03:06:28 <kmc> Sgeo: then you call 'eval' on some of those arguments and not on the others
03:06:42 <kmc> why should it?
03:06:56 <Sgeo> Seems more flexible
03:07:13 <Sgeo> Well, maybe not "more" flexible, but I think it would make a lot of sense like that
03:07:33 <kmc> i'm wondering now whether you can extend Kernel within the language to support the splice idea, like Tcl's [] or Template Haskell's $()
03:08:30 <kmc> it's basically just (eval env (quasiquote (... (unquote ...) ...)))
03:08:48 <kmc> but it would be good to have nicer syntax for this
03:08:49 <Sgeo> I should note that Tcl doesn't have quasiquoting, and that makes me a sad panda
03:09:14 <kmc> Tcl also uses strings :(
03:09:26 <kmc> because the idea that programs are structured data isn't really mainstream yet?
03:09:44 <Sgeo> Strings aren't a big deal if there's a nice way to take them apart and put them together
03:09:54 <Sgeo> Which in Tcl there is for a single command call but not for multiple :(
03:10:01 <kmc> yes, any structured data can be serialized >_<
03:10:12 <kmc> strings aren't a big deal so long as you have a parser and a printer
03:16:24 <FreeFull> In my IRC client I split the input from the server into lines and then into words
03:18:09 <Sgeo> kmc, pretty sure [] is different from Haskell's $()
03:18:18 <Sgeo> $() doesn't actually run the code immediately, does it?
03:19:22 <FreeFull> Tell me when Haskell does run code immediately
03:25:06 <kmc> Sgeo: it runs the code at compile time and splices in the result
03:25:36 <Sgeo> Ah
03:27:45 <kmc> at least this is GHC's implementation
03:27:59 <kmc> Template Haskell isn't in the language standard, anyway
03:28:18 <kmc> i would love to see Haskell without the compile/run-time distinction
03:28:29 <kmc> which would basically be a fusion of Template Haskell and GHC API into something much nicer
03:29:03 <kmc> at any point you could construct a Haskell AST, compile it, and get the resulting function as a value
03:29:16 <kmc> and hopefully this would be implemented with a clever JIT compiler
03:29:28 <kmc> which indeed could produce much better code than an ahead-of-time compiler like GHC
03:29:41 <FreeFull> I'm trying to write a prime sieve in Haskell and failing
03:29:49 <kmc> FreeFull: you and 10,000 other people
03:30:06 <kmc> i used to think JITs are a hack for languages which don't support efficient static compilation
03:30:14 <kmc> but actually a JIT can do crazy cool things a static compiler can't
03:30:27 <FreeFull> Like finding hot paths and optimising those?
03:30:54 <kmc> and optimizing with respect to assumptions which don't hold in general
03:31:11 <kmc> you just check the assumption and bail out to the interpreter if it's violated
03:32:00 <kmc> "this variable is usually true, let's assume it's true and then let's inline 10 functions together and constant-propogate them"
03:32:30 <kmc> with Haskell you have the possibility of eliminating a lot of "is this a thunk or an evaluated thing" checks
03:33:22 <shachaf> kmc: Did you see that someone was working on a Haskell tracing JIT?
03:33:22 <kmc> edwardk has thought this through more than i have
03:33:29 <kmc> i've just listened to him long enough to know that it would be awesome
03:33:34 <kmc> shachaf: was it edwardk?
03:33:37 <shachaf> No.
03:33:38 <kmc> oh
03:33:39 <kmc> link?
03:33:40 <shachaf> nominolo, I think.
03:33:42 <kmc> ok
03:34:21 <shachaf> http://www.haskell.org/haskellwiki/HaskellImplementorsWorkshop/2012/Schilling
03:34:50 <kmc> ah yeah, fusion and typeclass dictionaries
03:34:55 -!- heroux_ has joined.
03:35:04 <kmc> a JIT would help massively with those
03:35:24 <kmc> anyway that's cool
03:35:26 -!- heroux has quit (Ping timeout: 246 seconds).
03:35:32 <kmc> is this thing usable?
03:35:34 <shachaf> Well, it would also help with all the indirect jumps that GHC generates everywhere.
03:35:44 <shachaf> I don't know. I just heard about it recently.
03:35:50 <shachaf> I think it's still prototype-stage.
03:36:08 <shachaf> https://github.com/nominolo/lambdachine
03:37:15 <kmc> seems like every attempt to do something really cool GHC doesn't ends up bitrotting at the prototype / academic-quality stage
03:37:19 <kmc> i hope that doesn't happen here
03:37:23 <kmc> but it probably will :(
03:37:36 <kmc> the only hope is to get it merged with GHC
03:37:45 <kmc> which is how GHC is becoming an even bigger ball of mud
03:38:14 <kmc> there aren't that many people who care about Haskell and there are good reasons why the vast vast majority of them only care about GHC
03:38:18 <FreeFull> kmc: You can tell GCC which branch of an if will be taken more often and it will optimise with that in mind, but it's not automatic
03:38:47 -!- oklopol has quit.
03:38:49 <kmc> FreeFull: you can tell it to make records of which branch is taken more often, and then compile again using that data
03:39:22 <kmc> -fprofile-generate and -fprofile-use
03:39:23 <FreeFull> Which is still not the same as having it happen on the go
03:39:28 <kmc> right
03:40:19 <kmc> by attaching your research project to GHC you get a team of people who are obliged to care somewhat when your research project stops working on certain versions of Mac OS X for reasons which are uninteresting to your research
03:41:04 <shachaf> Man, I have a lot of projects I'd like to attach to GHC.
03:41:10 <shachaf> Most of them have nothing to do with Haskell, though.
03:41:52 <FreeFull> shachaf: Don't like macs? =P
03:42:11 <kmc> shachaf: Did you say Stripe is doing a new CTF soon?
03:42:18 <shachaf> kmc: Yes, they announced it.
03:42:20 <shachaf> Next Wednesday.
03:42:22 <kmc> cool
03:42:27 <shachaf> @google stripe web ctf
03:42:29 <lambdabot> http://news.ycombinator.com/item?id=4389229
03:42:29 <lambdabot> Title: '; CREATE TABLE `Capture the Flag`; -- Stripe CTF Web Edition coming next week' ...
03:43:07 <kmc> hmm, i bet i will learn more from this one
03:43:44 <shachaf> There's a large class of web vulnerabilities that don't fit into the normal CTF format very well, I think.
03:44:00 <shachaf> Anything that involves a logged-in user's browser, or something along those lines.
03:45:24 <kmc> yeah i am curious to see how it works
03:45:46 <kmc> will there be a level on how to cheat at Yahoo Poker circa 2002
03:45:53 <kmc> cause i would win
03:46:05 <shachaf> How do you cheat at Yahoo Poker circa 2002?
03:47:00 <kmc> rather than the server sending individual cards to the clients, it just sends the RNG seed used to generate the deck
03:47:24 <shachaf> Oh.
03:47:35 <kmc> so you can figure out what all the hidden cards are
03:47:42 <FreeFull> Lol
03:47:54 <kmc> if you can reverse engineer enough of the client
03:48:07 <kmc> which was not too hard, because it was a java applet and the bytecode was not sufficiently obfuscated
03:48:42 <kmc> sadly yahoo poker is fake money only
03:48:49 <FreeFull> There is no such thing as sufficient obfuscation
03:48:58 <shachaf> fake money = real internet points
03:48:59 <kmc> FreeFull: how do you figure?
03:49:30 <FreeFull> Ok, there is sufficient obfuscation as in obfuscated enough for nobody to ever bother
03:49:44 <kmc> "sufficient" is meaningless without a threat model in mind
03:50:16 <kmc> anything in obfuscation (and in security in general) is about making an attack expensive enough to mitigate the modeled threat
03:50:23 <kmc> there are very few absolutes
03:50:34 <shachaf> In this case sending the cards instead of the seed would be much simpler, of course.
03:51:02 <kmc> i was thinking about this today w.r.t. the shenanigans used to hide firmware within programmed chips
03:51:27 <kmc> even if it takes your competitor only one month of one skilled engineer's time to get around this
03:51:30 <kmc> it's pretty valuable
03:51:31 <FreeFull> The best way to hide firmware is for there to be no firmware
03:51:42 <kmc> FreeFull: the best way to survive is to die
03:52:09 <FreeFull> kmc: No, the best way to survive is to never be born
03:52:22 <kmc> if the product cycle is short enough then you don't need to hold off reverse engnieers for very long at all
03:52:57 <kmc> anyway you can reverse chips with no firmware, of course
03:53:30 <Sgeo> You know, all of Tcl's problems are a matter of what commands are available default
03:53:43 <shachaf> The goal with a lot of DRM, I understand, is to stop people from copying media just for the first N weeks when the majority of sales happen.
03:53:50 <Sgeo> By making a new standard library, I should be able to make a beautiful language
03:53:54 <kmc> http://visual6502.org/JSSim/index.html
03:54:09 <kmc> Sgeo: what about the fact that it uses strings for everything
03:54:12 <kmc> shachaf: interesting
03:54:15 <Sgeo> kmc, not a problem
03:54:46 <Sgeo> Just provide the means to make lists of lists from strings and the other way around
03:55:48 <kmc> shachaf: but i think that doesn't work either
03:55:57 <shachaf> kmc: Why not?
03:56:02 <kmc> i think it's more like "the first N weeks of the availability of a particular DRM mechanism"
03:56:19 <Phantom_Hoover> shachaf, I think it's also used to keep the resale market down.
03:56:34 <shachaf> kmc: With computer games, that might be the same thing.
03:56:41 <kmc> once you've broken CSS then you have all DVDs as soon as they come out
03:56:48 <Phantom_Hoover> Although that's a little odd for PC games because they don't have much of a market in physical sales.
03:56:59 <kmc> shachaf: maybe, i don't think they dream up a totally novel DRM scheme from scratch for every game
03:57:05 <kmc> yeah, resale is a thing
03:57:12 <kmc> man, the douche tricks people use to prevent resale
03:57:14 <pikhq_> shachaf: The people producing it hallucinate that they can stop it forever.
03:57:30 <kmc> textbooks which come with an "online learning" site that can only be used once
03:57:37 <kmc> and which the prof will make you use for some reason
03:57:46 <Phantom_Hoover> shachaf, SecuRom e.g. has been consistently used for quite a long time, although I don't know how quickly it adapts.
03:57:50 <kmc> pikhq_: do they?
03:58:03 <pikhq_> kmc: They seem to.
03:58:04 <kmc> or are we just caricaturing our opponents as stupid?
03:58:16 <FreeFull> DRM can go die
03:58:21 <pikhq_> kmc: Why caricature; our opponents came up with CSS.
03:58:25 <pikhq_> They clearly are stupid.
03:58:37 <kmc> i mean, the marketing people for the companies who make DRM are not exactly going to give an accurate assessment of its value
03:58:55 <kmc> CSS is super old
03:59:00 <kmc> and yeah it's dumb
03:59:11 <Phantom_Hoover> They're certainly not the calculating, cold schemers many make them out to be.
03:59:11 <Sgeo> Tcl needs quasiquoting, more acceptance of things merely being value (i.e. ternary if)
03:59:16 <Sgeo> Anonymous procedures
03:59:30 <kmc> or you could use a good language :(
03:59:41 <kmc> sorry just trollin' here
03:59:52 <Sgeo> kmc, these things are for the most part standard library level, not syntax level
04:00:12 <Sgeo> Biggest syntax level thing is that an arbitrary string can be a command only if made into one via interp alias
04:01:00 <pikhq_> Sgeo: You could very easily do your own Tcl-like...
04:01:17 <pikhq_> Doing a passable Tcl is like 500 lines of C.
04:01:35 <pikhq_> s/of C/of reasonably natural C/
04:02:06 <Sgeo> If I'm making my own language, a Lisp-like might make more sense
04:02:34 <pikhq_> But then you need a garbage collector.
04:02:56 <FreeFull> You can always make your C programs the include lines and then one huge one-line main function
04:03:38 <kmc> that much is well-known
04:04:23 <shachaf> There's a light switch here labeled "A20".
04:04:23 <kmc> there must be lisp-like languages with manual memory management
04:05:35 <shachaf> https://en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp ?
04:05:38 <shachaf> Oh, apparently not.
04:06:02 <Sgeo> Where everything is a function and you do control structures by passing them in lists
04:06:52 <FreeFull> In lambda calculus, everything really is a function
04:07:16 -!- monqy has left.
04:07:24 <kmc> yep...
04:10:12 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:14:03 <Sgeo> Why isn't Lisp done that way, exactly?
04:14:33 <kmc> which way?
04:14:43 -!- graue has quit (Quit: Leaving).
04:15:06 <kmc> with special forms as functions which take quoted arguments?
04:15:40 <FreeFull> Having numbers be functions is a bit silly
04:16:40 <itidus21> :DD
04:18:53 <Sgeo> kmc, yes
04:19:46 <kmc> well, Kernel is a Lisp done that way :)
04:20:03 <kmc> and operatives are like fexprs, which date back to some of the earliest Lisps
04:20:04 * Sgeo tends to disagree with that statement
04:20:37 <kmc> you need to be careful if you want lexical scoping
04:20:49 <kmc> many special forms are going to evaluate their arguments eventually
04:20:55 <kmc> they need to do so in the caller's environment
04:21:10 <kmc> that's why vau binds an extra variable to the caller's environment
04:21:13 <kmc> which can be passed to 'eval'
04:22:39 <Sgeo> Hmm. Have every function take the environment as an argument, maybe?
04:22:43 <FreeFull> Church numerals are pretty cool, but I don't think it's what you'd want to use most of the time
04:22:49 <kmc> that's how it works in kernel >_<
04:23:02 <kmc> for s/function/operative/
04:23:21 <Sgeo> But then which is evaluated when is the combiner's decision, not the caller's
04:23:31 <Sgeo> And it should be the caller making the choices
04:23:34 <kmc> but you can write a combiner which evaluates everything an extra time
04:23:38 <kmc> and then the caller can use quote
04:23:42 <kmc> and it's like lisp
04:24:00 <kmc> i don't understand why it's the caller's choice
04:24:14 <kmc> whether and when the various bits of a combination get evaluated is a critical part of the meaning of the combiner
04:24:20 <Sgeo> Because then the caller can choose to construct something to pass an operative as an argument
04:24:27 -!- pikhq has joined.
04:24:32 <kmc> yeah, you can do that fine with eval in kernel
04:27:51 -!- pikhq_ has quit (Ping timeout: 268 seconds).
04:28:24 <kmc> i think this is not a fundamental thing
04:28:43 <kmc> for any operative f you can make an operative g such that (f x y z) is always the same as (g 'x 'y 'z)
04:29:18 <kmc> that's what 'wrap' does, isn't it?
04:29:46 <kmc> so you can make a library for Kernel where 'if' and such work this way
04:30:31 <Sgeo> You can make a library in Common Lisp where if works that way too
04:31:01 <kmc> can you?
04:31:08 <kmc> what about getting the right environment for eval?
04:36:46 <kmc> one interesting consequence of Kernel's design is that environments are first-class objects
04:36:47 <Sgeo> kmc, possibly. Thinking about it
04:37:16 <kmc> if you provide the appropriate accessors and mutators for those objects, you can define things like 'define' and 'let' within the language
04:37:34 <Sgeo> Common Lisp has first-class environments, but I think they're opaque
04:37:49 <kmc> cool
04:37:53 <kmc> what are they used for?
04:38:40 <Sgeo> Um. I think macros get an environment parameter if they want, and not sure where they can be used
04:41:11 <Sgeo> They do see the lexical environment
04:41:16 <Sgeo> Not sure about dynamic environment
04:41:35 <Sgeo> http://paste.lisp.org/display/131088
04:42:14 <Sgeo> Presumably, to make the sort of if in CL that I want, would need a different way to define functions
04:42:32 <Sgeo> (Or just a get-env function, come to think of it)
04:43:01 <kmc> cool
04:46:34 <Sgeo> Apparently eval can't take an argument function)
04:46:44 <Sgeo> erm, an environment object
04:46:52 * Sgeo wtfs at "argument function"
04:47:20 -!- ogrom has joined.
04:47:59 <Sgeo> There should be an esolang based on the concept of "argument function"
04:49:54 <kmc> wouldn't that just be an argument that's a function?
04:50:42 <Sgeo> Hmm
04:50:58 <shachaf> kmc: Have you seen edwardk's Control.Lens?
04:51:08 <Sgeo> I was thinking more a function that specifies the arguments somehow
04:52:19 <Sgeo> <Sgeo> So, what _can_ I do with environment objects?
04:52:20 <Sgeo> <Bike> use them with macroexpand, basically.
04:53:10 <Sgeo> <Bike> if you really feel like doing bizarre things, try looking up cltl2. e.g., sbcl has some nonstandard functions that let you mess with environments more.
04:56:45 <kmc> shachaf: probably
04:57:25 <kmc> how do you use them with macroexpand?
04:58:16 <Sgeo> kmc, pass them in, I think
04:58:32 <shachaf> macroëxpand
04:58:42 <shachaf> macrøxpand
04:59:19 <Sgeo> I can imagine a macro without explicit use of environments that expands differently depending on lexical environment
04:59:43 <Sgeo> Or... even not that
04:59:54 <Sgeo> if presumably would... I think
05:00:16 <kmc> macrőexpand
05:01:16 <kmc> ah, ő is the accented version of ö
05:01:18 <kmc> makes sense
05:02:18 <shachaf> kmc: Hmm, ö + U+301 COMBINING ACUTE ACCENT doesn't produce ő :-(
05:03:25 <Sgeo> Ok, so that experiment did not work out
05:03:25 <kmc> heh
05:03:31 <kmc> well that's specific to hungarian
05:03:58 <shachaf> Combining character should take locale into account when they're rendered, obviously.
05:04:07 <kmc> :(
05:04:12 <kmc>
05:04:15 * shachaf should propose it to the Unicodemittee.
05:04:37 <shachaf> You already depend on locale for other things.
05:04:42 <shachaf> Like capitalization.
05:05:38 * Sgeo is trying to figure out when environments would make a difference to macroexpansion
05:06:19 <FreeFull> macroexpǻnsion
05:07:01 <Sgeo> Oh
05:07:02 <kmc> sleep, 'night all
05:07:18 <Sgeo> Well, macrolet and symbol-macrolet are also part of the lexical environment
05:14:55 -!- copumpkin has joined.
05:20:52 <shachaf> Oh, yay, g++ fixed a bug.
05:23:41 <pikhq> It also introduced a regression!
05:24:25 <shachaf> ?
05:24:38 <shachaf> pikhq: Remember the references-vs-pointers thing I was talking about here a few months ago?
05:24:42 <shachaf> I think it was with you, maybe.
05:24:54 <shachaf> Some inlining thing worked with pointers but not with references.
05:31:41 <Sgeo> Am I becoming a CL fan again? :/
05:35:47 <Sgeo> CL still does not have native continuations or coroutines, and I don't trust cl-cont
05:39:21 <atehwa> j
05:42:07 -!- mig21a has joined.
05:48:01 <atehwa> I think olsner's idea about a meta-brainfuck that produces new brainfuck derivatives is a good idea
05:48:24 <atehwa> should it produce new ones on the implementation or the specification level?
05:48:50 <atehwa> and if on the specification, what should be the specification language?
05:49:49 <atehwa> how to take as many different kinds of modifications into account as possible?
05:50:32 <atehwa> should bf be rephrased in some constraint-based language and then the constraints randomly modified? Cellular automaton, perhaps?
05:50:51 <atehwa> or string rewriting language?
05:51:48 <atehwa> or should there be some bf-specific specification language that makes the "typical" modifications, such as adding new state variables or commands, especially easy?
05:52:00 <atehwa> psyk: what do you think?
05:52:02 <psyk> atehwa: not much
05:52:05 <FreeFull> Oh, that reminds me
05:52:23 -!- pikhq_ has joined.
05:52:35 <FreeFull> I was thinking, is there a language which would basically be RLEfuck, which is brainfuck but RLE-compressed?
05:52:42 -!- pikhq has quit (Ping timeout: 252 seconds).
05:52:47 <FreeFull> So instead of writing +++++++, you'd just have 7+
05:52:54 <atehwa> bfjoust
05:54:21 <atehwa> I wonder if such a preprocessor could be easily specified in sed
05:54:21 -!- mig21a has quit (Read error: Connection reset by peer).
05:54:33 -!- mig21a has joined.
05:56:18 <FreeFull> Does sed allow repetitions?
05:56:39 <FreeFull> How would you use sed to turn 7+ into +++++++
05:59:16 <atehwa> s/7\(.\)/\1\1\1\1\1\1\1/g
06:00:16 <atehwa> I'm thinking about the rules that will turn 23+ into 2(++++++++++)3+
06:00:39 <FreeFull> Why would you want that?
06:01:27 <atehwa> it's not too much work to write separate rules for 1,2,3,4,5,... but if I have separate rules for all numbers, my program will be infinitely long
06:01:51 <FreeFull> Or you could not use sed for this
06:02:12 <atehwa> but being able to is reason enough to try :)
06:03:04 <FreeFull> What if you encounter something like 123+
06:03:29 <FreeFull> Back to infinite length
06:04:02 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
06:12:19 -!- pikhq has joined.
06:12:41 -!- pikhq_ has quit (Ping timeout: 268 seconds).
06:14:13 -!- copumpkin has quit (Ping timeout: 252 seconds).
06:14:54 -!- copumpkin has joined.
06:17:07 <Sgeo> "CLISP fully supports Unicode 3.2"
06:17:10 <Sgeo> How "impressive"
06:17:40 <FreeFull> Lol clisp
06:17:46 <FreeFull> The only good thing about clisp is libraries
06:21:20 <Sgeo> clisp has a lot of libraries? I though sbcl was generally the more popular implementation?
06:21:34 <Sgeo> Unless you thought that by "clisp" I meant "Common Lisp"
06:22:45 <FreeFull> Well, clisp is the GNU common lisp compiler/interpreter
06:29:41 <atehwa> FreeFull: yes, can be arranged
06:30:21 <Sgeo> FreeFull, apparently, CLisp can save images without dying?
06:30:24 <Sgeo> That's a good thing IMO
06:30:29 <atehwa> 123+ rewrites to 12(++++++++++)3+ which rewrites to 1({put 100 + here})2(++++++++++)3+
06:30:33 <Sgeo> Useful for a hypothetical LispNomic
06:30:43 <FreeFull> clisp doesn't even have tail recursion
06:30:54 <FreeFull> If it doesn't have tail recursion it's not a lisp in my book
06:31:03 <itidus21> hmmm
06:31:17 <Sgeo> FreeFull, so, Common Lisp is not a lisp. Good to know.
06:32:10 <itidus21> for a brainfuck tape with 256 possible values per cell, you only really need 256 substitutions
06:34:25 <Sgeo> Why am I looking at Let over Lambda
06:35:45 <itidus21> unless its one of those situations where 5+ is not the same as 261+
06:36:35 <FreeFull> itidus21: I'm thinking about brainfuck with bignum cells
06:47:16 -!- pikhq has quit (Ping timeout: 246 seconds).
06:47:24 -!- pikhq has joined.
07:01:38 <atehwa> psyk: I guess it figures
07:01:48 <psyk> atehwa: tiedoksesi: en ole britney-fani
07:06:23 <atehwa> itidus21: well, I don't know if it's a safe assumption to take :) A generic preprocessor will work whatever the use of the produced program will be.
07:08:29 <FreeFull> You might want 257. for some reason
07:08:53 -!- Vorpal has joined.
07:10:23 -!- oerjan has joined.
07:21:06 <itidus21> ok, well, the real reason i said that is i don't know sed
07:22:38 <itidus21> and that i couldn't do it
07:32:51 <Sgeo> FreeFull, atehwa check out BF-RLE
07:33:01 <Vorpal> Gah, switching between laptops where the fn and ctrl keys are swapped is so annoying
07:33:08 -!- mig22 has joined.
07:33:14 <Sgeo> Especially because I made it.
07:33:20 <Vorpal> I can get used to either, but it takes a couple of days each time I switch
07:35:39 <Sgeo> Note that I'm not the one who made the BF-to-BF-RLE script, which means people other than me liked it
07:35:42 -!- mig22 has quit (Remote host closed the connection).
07:35:48 <Sgeo> This has in fact gone to my head.
07:35:56 <FreeFull> Sgeo: Wow, base 62
07:36:03 <FreeFull> That's what I was thinking about
07:36:03 -!- mig22 has joined.
07:36:39 <FreeFull> "Replace each run of characters greater than 2 with the character then the number of times it appears minus 3 (e.g. +++ turns into +0). " Interesting rule
07:36:53 -!- mig22 has left.
07:37:14 -!- mig22 has joined.
07:38:17 <Sgeo> I hope you can see how that can occasionally save a character.
07:39:09 -!- epicmonkey has joined.
07:39:11 <FreeFull> With brainfuck? Yeah =P
07:39:12 <Sgeo> By making the lowest useful number 0, the run before it roles over to the next digit is larger
07:39:28 <FreeFull> That's not what I meant by interesting
07:39:37 <FreeFull> What's interesting is that ++ doesn't get RLEd
07:39:48 <FreeFull> I can see why though
07:43:01 <itidus21> thats a pretty good rule
07:43:28 <FreeFull> Except harder to code =P
07:43:32 <FreeFull> Only slightly though
07:43:50 <itidus21> what i'm seeing with this is that replacement is efficient
07:46:28 <itidus21> like it takes care of the fact that some characters won't need to be run length encoded, but it will rle them if they happen to bunch up
07:46:51 <Sgeo> Just thought of another possibility, except I haven't thought the implications through
07:47:11 <Sgeo> If the leading digit of a 2 or more digit number is implicitly increased by 1
07:47:22 <Sgeo> That is, 00 is 62
07:47:29 <itidus21> another good rule is realize tidus has never touched the esolang wiki... which says a lot about him
07:47:35 -!- pikhq has quit (Read error: Operation timed out).
07:47:44 <itidus21> he is best not paid much heed
07:47:55 -!- pikhq has joined.
07:47:56 <Sgeo> (And then of course add 3 to get number of times to place character down)
07:48:00 <FreeFull> Sgeo: That is pretty good
07:48:21 <Sgeo> Haven't thought implications through though
07:48:52 <Sgeo> At least sum numbers would have multiple representations
07:48:57 <Sgeo> That is probably inefficient
07:49:00 <Sgeo> *some
07:49:42 <itidus21> in biology, evolution is not elegant
07:49:58 <itidus21> everything is a kludge
07:50:05 -!- nooga has joined.
07:50:24 <Sgeo> Well, I would hope humans are better planners than evolution.
07:50:26 <itidus21> disclaimer: i know even less about biology than i do about esolangs
07:50:56 <itidus21> im just making this up. :(
07:51:26 <Sgeo> I'm not qualified to say what is and isn't a kludge, but humans can plan ahead, and evolution, to the best of my understanding, does not.
07:51:26 <FreeFull> Sgeo: Which numbers would have multiple representations?
07:51:58 <itidus21> Sgeo: well humans try to plan ahead :P
07:53:00 <FreeFull> Evolution does all sorts of dirty tricks
07:53:29 <itidus21> moore's law takes a heck of a lot of work to hold it up... a lot of late hours in many offices.. corporate mergers
07:53:43 <pikhq> FreeFull: No, evolution does precisely one trick. It's a very straight-forward hill climbing algorithm.
07:54:23 <itidus21> consumers too^
07:54:31 <Sgeo> zz = 64 * 63 + 63; 000 = 1 * 64^3
07:54:38 <pikhq> Its trick is just letting beneficial changes stick around.
07:54:45 <Sgeo> Uh, I have to be wrong
07:54:57 <pikhq> Everything else is just a thing that was a beneficial change.
07:55:34 <Sgeo> Wait, no
07:55:37 <Sgeo> That proves my point
07:56:06 <Sgeo> Since 000 is smaller than zz, 000 is representable as a two-digit number
07:56:57 <Sgeo> ...wait, 000 is larger than zz, hence my stating that I must be wrong
07:57:14 <Sgeo> Wait, I'm mis...multiplying zz
07:57:42 <Sgeo> Wait, I was close enough
07:58:09 * Sgeo is a bit confused at the moment
07:58:32 <Sgeo> Oh, I think I misdid zz
08:00:39 <itidus21> if we are evolving, and if we are studying evolution, then surely something will happen
08:01:13 <Sgeo> zz = (63+1) * 64^1 + 63 * 64^0; 000 = (0+1) * 64^2 + 0 * 64^1 + 0 * 64^0
08:02:05 <Sgeo> zz = 4159; 000 = 4096
08:03:42 <Sgeo> 000 is smaller than zz, therefore, there are some numbers, those numbers between [4096, 4159], that have two representations.
08:04:07 <FreeFull> You're calculating 000 wrong
08:04:20 <FreeFull> 000 should be zz + 1
08:04:29 <FreeFull> Whatever zz ends up being
08:04:54 <Sgeo> That would require a different definition for my system
08:04:57 <Sgeo> Hmm
08:05:03 <Sgeo> But yes, that's ideal
08:06:38 * shachaf has never touched the esolang wiki.
08:06:42 <shachaf> What does that say about me?
08:07:40 <Sgeo> BRB. When I get back I'll think about it more but I have an idea
08:14:08 <itidus21> it says nothing!
08:16:17 -!- mig22 has quit (Quit: mig22).
08:19:23 -!- AnotherTest has joined.
08:25:16 <Sgeo> Let's think in binary.
08:25:30 <Sgeo> 0 = 0. 1 = 1. 00 = 2.
08:25:47 <Sgeo> In fact, it's more elegant if all digits obeyed the rules, whatever they are
08:26:17 <itidus21> well, one may ask what is a thought
08:27:08 <Sgeo> = 0. 0 = 1. 1 = 2. 00 = 3. 01 = 4. 10 = 5. 11 = 6. 000 = 7.
08:27:25 <Sgeo> hmm
08:28:33 <itidus21> and.. its probably better if people like me don't ask questions like that
08:30:04 <oerjan> itidus21: i'd be worried more about your second thoughts than your questions if i were you
08:30:59 <oerjan> well if i was a perfect version of me who was also you
08:31:02 <itidus21> i am delusional. i can't trust my own conclusions
08:31:21 <oerjan> itidus21: but you realize _that_ is _also_ a delusion?
08:32:02 <oerjan> and one that upholds your incompetence, in a self fulfilling prophecy.
08:32:21 <oerjan> he said, hypocritically.
08:33:06 <itidus21> anyone who has showered in the last few months has some authority on the topic
08:33:43 <oerjan> WHAT DO YOU KNOW ABOUT MY SHOWERING
08:33:57 <psyk> oerjan: I know that now both of us has made an error in grammar. or fwe.
08:34:06 <FreeFull> Sgeo: It seems to be a power of 2 - 1
08:34:16 <oerjan> psyk: NONESNES
08:34:19 <psyk> oerjan: mit siit?
08:34:38 <itidus21> suddenly i noticed that video card on my desk says highly commended by pc authority magazine
08:34:42 <itidus21> ^box of
08:34:45 <oerjan> i'm not finnish
08:34:49 <FreeFull> 111 = 14 0000 = 15
08:34:50 <psyk> oerjan: I want to kill somebody.
08:35:08 <Sgeo> Is psyk from Mezzacotta?
08:35:24 <oerjan> Sgeo: well the evidence seems inconclusive so far
08:35:41 <FreeFull> Sgeo: A sequence of 1s is always worth twice the same-length sequence of 0s
08:36:56 <itidus21> oerjan: at some point i abandoned common sense
08:37:13 <Sgeo> This channel is now officially mezzacotta.
08:37:33 <oerjan> itidus21: hey me too!
08:37:55 <itidus21> oerjan: but ... common sense seems to be relative to a given level of perspective
08:38:10 <oerjan> yes. a relatively common one...
08:38:20 <oerjan> which is nevertheless almost certainly wrong.
08:38:41 <oerjan> but may be better than some of the alternatives
08:39:20 <itidus21> like.. the sorts of things conspiracy theorists worry about probably do occur in matters of security
08:39:51 <oerjan> some of them. maybe.
08:41:26 <itidus21> like, for example, false flag operations are a known warfare or political tactic, and are based on creating false perceptions..
08:41:59 <Sgeo> So what's the best way to describe what each digit does?
08:42:10 <itidus21> so, at some point, people are being fed systematic lies
08:42:31 <itidus21> and someone is funding it
08:42:41 * oerjan is starting to regret this conversation, as expected.
08:43:38 <itidus21> with all those kinds of tactics at play, it's not really possible that things are what they seem
08:43:56 <oerjan> more importantly, my intuition keeps telling me not to argue.
08:44:33 <itidus21> apparently i have anxiety
08:44:46 <oerjan> while my common sense is screaming to say "you cannot conclude much from mere _existence_ without considering _prevalence_
08:44:49 <itidus21> that seems to be the angle my psychologist is taking
08:44:50 <oerjan> "
08:45:36 <itidus21> not actually paranoia or delusion, but anxiety
08:45:53 <Sgeo> oerjan, if X exists, you can conclude that it is not true that X does not exist.
08:46:00 <oerjan> Sgeo: *GASP*
08:46:17 <fizzie> Sgeo: I haven't been following, but if you had value(s) = 2^len(s) - 1 + bin(s) like I thought I saw, where s is the string and bin(s) is the binary value, it doesn't sound all that reasonable to ask what each digit alone is doing. It's not exactly a positional system, after all.
08:46:24 <itidus21> which is why i suppose i cant just sit in here, and chill
08:47:50 <oerjan> anxiety is evil :(
08:47:52 * Sgeo isn't even entirely sure if what fizzie just describes describes it accurately
08:48:24 <itidus21> oerjan: he didn't say it directly, but when i used words like paranoia, he was saying how paranoia is a specific thinking process
08:48:57 <itidus21> btw its all free in australia.. that is.. i bulkbill nearly all my medical care.. maybe because people like me
08:49:04 <itidus21> :D
08:49:26 <oerjan> well most is free in norway too
08:49:29 <fizzie> Sgeo: If "0"^n is always 2^n - 1, and you go in the usual order from that, I'd say the value kind of has to be what I mentioned.
08:49:30 <itidus21> yay
08:50:03 <fizzie> Sgeo: Alternatively speaking, it's just like having an implicit "1" in front and then doing a -1 to bias "" (i.e. 1) to 0.
08:50:39 <Sgeo> hm
08:51:07 <fizzie> "000" -> 0b1000-1 -> 8-1 -> 7; "111" -> 0b1111-1 -> 15-1 -> 14 and so on and so forth.
08:51:46 <oerjan> <Sgeo> = 0. 0 = 1. 1 = 2. 00 = 3. 01 = 4. 10 = 5. 11 = 6. 000 = 7. <-- was this the system?
08:52:17 <Sgeo> Yes
08:52:40 <Sgeo> (not the system when discussing zz before)
08:53:20 <itidus21> so about evolution, what i was thinking was, there are patterns in nature. and in response to these non-chaotic patterns, it's possible to have optimized solutions
08:53:30 <oerjan> hm right, that's 2^len(s) - 1 + bin(s) indeed i think. where 2^len(s) is just adding an initial 1.
08:54:25 <oerjan> oh fizzie already said both parts
08:54:28 -!- mig21a has joined.
08:55:16 <itidus21> but a temporary solution which is built depending on circumstances isn't much use if the circumstances change
08:56:04 <oerjan> itidus21: which is why _very_ strongly adapted species tend to die out in environmental upheave, while more flexible ones then take over
08:56:08 <oerjan> afaiu
08:57:06 <itidus21> so.. that is the spirit of the words i had in mind when i said everything in evolution is a kludge
08:57:08 <oerjan> perhaps this explains the gradual development of intelligence - it's a form of extreme flexibility
08:57:48 <oerjan> after many mass extinction, the survivors tended to be more intelligent. or maybe that's just my impression.
08:57:52 <oerjan> *s
08:58:01 <Sgeo> There's no point in using the Y combinator in Common Lisp, is there?
08:58:08 <itidus21> one thing though which i ponder is why life needed to become more complex
08:58:44 <itidus21> i don't see why it wasn't sufficient for microorganisms to remain microorganisms
08:59:17 <itidus21> but.. having said that i don't know the longer story of life on earth
09:00:51 <Sgeo> (defmacro lambda-let (name arglist &body body) `(labels ((,name ,arglist ,@body)) #',name))
09:00:51 <fizzie> oerjan: It (if I assume the obvious extension) seems a bit more complicated for bases other than 2, though; for base 4, "" -> 0, "0" -> 1, ..., "3" -> 4, "00" -> 5, ..., "33" -> 20, "000" -> 21, ..., "0000" -> 85 and so on. (Or "0"^n -> sum_{i=0..n-1} 4^i in general, since there's a gap of 4^i between "0"^i and "0"^(i+1).)
09:00:55 <Sgeo> ^^completely untested
09:01:00 <oerjan> itidus21: well it took almost 4 billion years of life before the macroorganisms started really developing. so presumably the conditions had to be just right to make that advantageous.
09:02:11 * itidus21 clutches at the air as if to express dramatic frustration. but theres always that question of why
09:02:11 <oerjan> itidus21: perhaps it's another case of the anthropic principle: macroorganisms _don't_ usually develop, but the planets without them don't have intelligent species to discuss why they didn't.
09:02:46 <oerjan> because evidence is that life itself arrived on earth _fast_, but macroorganisms didn't.
09:02:50 <itidus21> hmm.. ok ill say it tis way
09:02:56 <itidus21> ^this way
09:03:45 <itidus21> since unevolved life is just as alive as evolved life, then hte purpose of evolution is counter intuitive
09:03:53 <oerjan> itidus21: there was probably btw this period just before called "snowball earth", a global ice age. perhaps the organisms had to cluster to survive it.
09:04:22 <oerjan> (well, it's theorized that it may have been global)
09:04:53 <itidus21> ah
09:05:44 <oerjan> fizzie: hm
09:07:07 <oerjan> itidus21: btw some _define_ life as anything that is capable of undergoing darwinian evolution
09:07:32 <Sgeo> Norns are alive!
09:07:49 <itidus21> so the relevance to esolangs is, that code is like and problems ... programmers write code to survive problems their bosses give them
09:07:59 <fizzie> Sgeo: The Norns are alive with the sound of music.
09:08:27 <itidus21> so a programmer's state is his codebase
09:09:20 <itidus21> but bosses survive by being more demanding in response to the programmers increasing codebase
09:10:49 <itidus21> ... im gonna just leave it there
09:49:13 -!- TeruFSX has quit (Ping timeout: 244 seconds).
09:54:13 -!- Phantom__Hoover has joined.
10:09:06 -!- oonbotti has quit (Quit: oonbotti).
10:09:56 -!- oonbotti has joined.
10:22:51 -!- oerjan has quit (Quit: leaving).
10:23:09 -!- nooga has quit (Ping timeout: 265 seconds).
10:36:07 -!- derdon has joined.
10:44:06 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
10:46:17 -!- MoALTz has joined.
10:50:04 -!- MoALTz_ has joined.
10:51:31 -!- MoALTz has quit (Ping timeout: 246 seconds).
10:54:05 -!- MoALTz has joined.
10:56:18 -!- MoALTz_ has quit (Ping timeout: 252 seconds).
11:00:26 <AnotherTest> toBinary 0 = []
11:00:26 <AnotherTest> toBinary n
11:00:26 <AnotherTest> | n `mod` 2 == 0 = ( toBinary (n `div` 2) ) ++ "0"
11:00:26 <AnotherTest> | otherwise = ( toBinary ((n - 1) `div` 2) ) ++ "1"
11:00:35 <AnotherTest> is that bad or good Haskell code
11:02:04 <AnotherTest> or should I use rem
11:02:19 <AnotherTest> mh. probably
11:02:50 <AnotherTest> oh wait does something like even exist?
11:03:04 <AnotherTest> oh yes
11:06:10 -!- mig21a has joined.
11:27:01 <FreeFull> AnotherTest: I'm trying to figure out how to write a prime sieve :)
11:28:15 <ion> anothertest: Numeric.showIntAtBase
11:28:27 <ion> (Although that has a strange arbitrary base limit that is below 36.)
11:34:08 <FreeFull> I'm wondering why primesieve ya@[y:ys] = y : primesieve (filter (\a -> (a `mod` y) == 0) ya) doesn't work
11:36:22 <FreeFull> Actually, get rid of the ya@ and replace the second ya with ys
11:36:26 <FreeFull> But still doesn't work
11:43:52 <AnotherTest> ion: I just wanted to implement this to try something in Haskell, but when I need this I will definitely use that; also 36 doesn't seem strange (it's the amount of alphanumeric symbols)
11:46:47 <FreeFull> Oops, meant /= rather than ==
11:47:20 <FreeFull> Still fails with same error
12:11:48 -!- epicmonkey has quit (Ping timeout: 240 seconds).
12:17:58 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
12:18:09 -!- mig21a has joined.
12:18:33 -!- nooga has joined.
12:28:18 -!- MoALTz has quit (Quit: brb).
12:29:18 <ion> anothertest: You may have missed the word “below” in my sentenct.
12:29:19 <ion> e
12:30:41 <ion> anothertest: You might want to use divMod.
12:30:46 <ion> != 41 `divMod` 2
12:30:51 <AnotherTest> ion: oh yes I did miss that
12:30:53 <ion> > 41 `divMod` 2
12:30:54 <lambdabot> (20,1)
12:30:58 <AnotherTest> ion: very strange indeed
12:34:08 <ion> > reverse . unfoldr (\n -> swap (n `divMod` 2) <$ guard (n /= 0)) $ 15
12:34:10 <lambdabot> Not in scope: `swap'
12:34:25 <ion> > let swap = snd &&& fst in reverse . unfoldr (\n -> swap (n `divMod` 2) <$ guard (n /= 0)) $ 15
12:34:27 <lambdabot> [1,1,1,1]
12:34:33 <ion> > let swap = snd &&& fst in reverse . unfoldr (\n -> swap (n `divMod` 2) <$ guard (n /= 0)) $ 17
12:34:35 <lambdabot> [1,0,0,0,1]
12:35:55 -!- elliott has joined.
12:35:56 <elliott> oOo CODE, is a yet another programming language based on brainfuck. Its creation was inspired by the way how teenager trolls tend to use upper and lower case to draw attention to themselves.
12:36:12 <elliott> someone give me a reason to go on
12:36:48 <Phantom__Hoover> http://blog.trecio.cba.pl/index.php/2010/04/ooo-code/lang-pref/en/
12:36:50 <Phantom__Hoover> oh god
12:36:59 <Phantom__Hoover> they even spell it "Brainf**k"
12:38:50 <ion> Someone should make a language called Brainf**k that’s nothing like Brainfuck.
12:39:07 <nortti> :P
12:39:23 <ion> So anyone who wants to refer to Brainfuck is forced to be explicit.
12:39:25 <nortti> it'll be functional and object oriented
12:39:46 <FreeFull> let fibb a n = fibb (a,a,a) (n - 1)
12:39:52 <FreeFull> Why can't it work?
12:41:04 <Phantom__Hoover> What's the type of that function?
12:44:32 <elliott> FreeFull: occurs check
12:45:08 <FreeFull> elliott: yep
12:45:30 <FreeFull> Phantom__Hoover: Good point
12:46:02 <FreeFull> let fibb a n = (fibb a n, fibb a n, fibb a n) doesn't work either, same error
12:47:11 <elliott> occurs check, again
12:47:21 <elliott> try to figure out the type of the function and you'll see
12:47:22 <FreeFull> I'm hoping for a -> b -> (a,a,a)
12:47:35 <elliott> FreeFull: so if fibb a n :: (a,a,a)
12:47:37 <FreeFull> Actually, not (a,a,a)
12:47:44 <elliott> then (fibb a n, fibb a n, fibb a n) :: ((a,a,a),(a,a,a),(a,a,a))
12:47:52 <elliott> but that's the result of fibb a n
12:47:58 <elliott> which is a contradiction
12:48:01 <psyk> elliott: No it isn't!
12:48:01 <FreeFull> Yeah, I meant (n - 1)
12:48:10 <elliott> in fact, the return type of fibb a n would have to be a = (a,a,a), which is the whole problem
12:48:17 <elliott> psyk: ?
12:48:22 <psyk> elliott: What are you doing?
12:48:26 <FreeFull> Wait, why did I call it fibb
12:48:29 <FreeFull> I meant to call it sierp
12:48:30 <elliott> psyk: answering FreeFull's haskell question
12:48:34 <psyk> elliott: Vielleich, oder so.
12:48:39 <elliott> psyk: what
12:48:48 <psyk> elliott: Shit of your gastrointestinal tract.
12:48:57 <elliott> fizzie: ^
12:49:01 <ion> psyk: hotik?
12:49:04 <psyk> ion: kerro lis.
12:49:09 <elliott> psyk: are you a bpt
12:49:11 <elliott> *bot
12:49:12 <psyk> elliott: No, i'm not
12:49:18 <elliott> ok, so just an idiot then
12:49:28 <elliott> what the heck is up with this place lately
12:50:21 <FreeFull> Maybe if I write an a -> (a,a,a) function and then apply it recursively
12:51:05 <ion> Are you looking for something like data Foo a = Foo a (Foo a) (Foo a) (Foo a)?
12:52:14 <FreeFull> I'm looking for something that produces the code equivalent of a sierpinski triangle
12:52:19 <FreeFull> I haven't looked at data yet
12:52:45 <elliott> apparently psyk is, in fact, a bot http://sange.fi/~atehwa/psyk/psykbot.ss
12:52:53 <elliott> which is a contradiction
12:52:55 <elliott> psyk: ?
12:52:57 <elliott> hmm
12:53:01 <psyk> elliott: Without contradiction there's no life.
12:53:04 <psyk> elliott: eik euroopan unioni olekin perseest?
12:53:21 <elliott> atehwa: is there a way to get this thing to not respond to me
12:53:33 <FreeFull> /ingore
12:53:47 <FreeFull> Oops
12:53:51 <FreeFull> /algore
12:53:53 <elliott> ignore is cheating :p
13:04:10 <FreeFull> Now I managed delay the occurs check to the function call =P
13:08:47 <Phantom__Hoover> FreeFull, /ignore still makes everyone else see it.
13:08:58 <Phantom__Hoover> elliott, wait, what's the difference between this and fungot.
13:08:59 <fungot> Phantom__Hoover: written by fnord teenage atheists who cant except that a religious man could be such a sticking point if so many of similar ones? in many of it's earlier releases, the minneapolis scene, and kristen's role in fnord sound. i'll set up a separate page from the
13:09:21 <FreeFull> Phantom__Hoover: They can /ignore too
13:09:21 <Phantom__Hoover> Beyond the fact that fungot is better.
13:09:22 <fungot> Phantom__Hoover: nope, he only serves his country, democratic or fnord.
13:13:22 <Phantom__Hoover> ^style ct
13:13:22 <fungot> Selected style: ct (Chrono Trigger game script)
13:13:26 <Phantom__Hoover> fungot!
13:13:26 <fungot> Phantom__Hoover: your majesty! and queen. he and a friend left on a journey 10. all functions are down... got the terra arm and the crisis arm! found a dreamstone?! then i'll repair the masamune!
13:16:39 <elliott> Phantom__Hoover: you have to ping fungot.
13:16:40 <fungot> elliott: to the northwest of this cape. he took back the medal from the frog king. and i'd like to see that mystical sword for myself!
13:17:48 -!- MoALTz has joined.
13:23:13 -!- MoALTz has quit (Ping timeout: 272 seconds).
13:31:48 <Phantom__Hoover> elliott, wait, what triggers psyk?
13:34:28 -!- david_werecat has joined.
13:35:25 <elliott> at least this:
13:35:26 <elliott> which is a contradiction
13:35:31 <elliott> which is a contradiction
13:35:31 <elliott> which is a contradiction
13:35:37 <elliott> pah
13:42:36 <kmc> all of which are american dreams
13:43:22 <elliott> Phantom__Hoover: anyway it bugged me when i didn't say anything to it above
13:46:26 <Phantom__Hoover> kmc, ???
13:47:10 <kmc> disregard me
13:53:22 <AnotherTest> uh I dislike writing unit tests
13:53:44 <AnotherTest> unless they all pass :D
13:53:53 <AnotherTest> which I doubt
13:53:58 <Phantom__Hoover> It's my hobby!
14:12:49 <itidus21> wow i thought psyk was a real person
14:15:32 -!- ogrom has quit (Ping timeout: 268 seconds).
14:33:41 -!- TeruFSX has joined.
14:34:25 -!- kinoSi has quit (Read error: Connection reset by peer).
14:34:51 -!- kinoSi has joined.
14:36:41 -!- MoALTz has joined.
15:01:19 -!- aloril has quit (Ping timeout: 244 seconds).
15:06:29 -!- ogrom has joined.
15:15:04 -!- aloril has joined.
15:54:42 -!- ogrom has quit (Read error: Connection reset by peer).
15:55:08 -!- ogrom has joined.
15:55:56 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
15:57:30 <kmc> itidus21: as opposed to?
15:58:40 <kmc> "Police arrested two Cambridge men on charges of assault and battery and an unarmed robbery after victims told police they tried to steal their pizza, shoved them to the ground and ripped their pants."
15:58:48 <elliott> <kmc> itidus21: as opposed to?
15:58:49 <elliott> psyk is a bot
15:58:57 <psyk> elliott: I know, and that was an answer.
15:59:18 -!- epicmonkey has joined.
16:01:44 <Gregor> #esoteric : Where even the bots are real people.
16:01:45 <oonbotti> Nothing here
16:04:19 <nortti> oonbotti: are you real human?
16:04:20 <oonbotti> nortti: Perhaps you believe I am real human.
16:06:59 -!- atriq has joined.
16:07:49 <kmc> oonbotti: Has anyone really been far even as decided to use even go want to do look more like?
16:07:49 <oonbotti> kmc: Please consider whether you can answer your own question.
16:09:34 * kmc slaps oonbotti around a bit with a colorless green idea
16:10:44 <nortti> why?
16:11:35 <olsner> colorless and green, but how does it fnarf?
16:13:33 <kmc> poorly
16:13:48 <Gregor> You can't judge.
16:13:50 <Gregor> Only I can fnarf.
16:15:07 -!- aloril has quit (Ping timeout: 240 seconds).
16:15:33 <shachaf> "A suspicious object that caused a nearly six-hour-long bomb scare in a Palo Alto neighborhood Friday afternoon turned out to be a piece of illegal drug-making equipment, according to a police agent."
16:15:56 <shachaf> I wonder whether that's equipment that's used to make illegal drugs, or illegal equipment used to make drugs.
16:17:17 <kmc> probably both
16:17:34 <shachaf> Illegal equipment used to make illegal drugs?
16:17:35 <kmc> also hichaf
16:17:36 <kmc> yes
16:17:40 <shachaf> That's doubly illegal.
16:17:50 <shachaf> helloeegan
16:17:53 <kmc> once you use equipment to make or consume illegal drugs, it usually becomes illegal
16:18:06 <kmc> "drug paraphernalia"
16:18:32 <shachaf> helloeegan sounds like a holiday where everyone puts on costumes and consumes LSD.
16:18:56 <kmc> i bet that head shops would buy and sell used bongs if not for this rule
16:19:00 <shachaf> Why is drug equipment illegal?
16:19:02 <kmc> there would be a big market for it
16:19:04 <kmc> shachaf: why not
16:19:11 <shachaf> That's not how illegal works. :-(
16:19:18 <kmc> it is when drugs are involved
16:20:13 <pikhq> shachaf: Some think "illegal" is a fundamental property of things and actions that they can attach.
16:20:24 <pikhq> shachaf: These people tend to support drug legislation.
16:20:44 <shachaf> "paraphernalia" is a nice-sounding word.
16:22:02 <olsner> yes, it is nice
16:22:34 <shachaf> In fact, I have a file with a list of nice-sounding words, and "paraphernalia" is in it.
16:22:40 <shachaf> I wonder whether the word is illegal to use too.
16:23:04 <olsner> I wonder if words can be paraphernalia
16:24:21 -!- ion has quit (Ping timeout: 246 seconds).
16:24:25 <kmc> what is government if words have no meaning
16:25:04 <kmc> shachaf: did i tell you that Caltech won a $100,000 prize from the Bill and Melinda Gates foundation for inventing the toilet of the future?
16:25:55 <kmc> http://features.caltech.edu/features/423
16:25:59 <shachaf> Nope.
16:26:23 <shachaf> "Reinventing the Toilet Challenge"
16:26:28 <shachaf> The toilet challenge of the future.
16:26:34 <kmc> yes
16:26:41 <kmc> is your code good enough to reinvent the toilet
16:27:45 -!- aloril has joined.
16:29:19 <shachaf> I woke up at 09:something today.
16:29:30 <shachaf> This is sort of a result of having my sleep schedule wrap around.
16:29:44 <shachaf> I wonder whether I can stop it from moving further now.
16:30:18 <atriq> Yay!
16:31:44 <atriq> Have an early/late night (delete as appropriate)
16:35:34 <kmc> <shachaf> helloeegan sounds like a holiday where everyone puts on costumes and consumes LSD.
16:35:38 <kmc> there are a lot of holidays like that
16:35:48 <atriq> kmc, no, that's just you.
16:37:12 <kmc> like Burning Man
16:37:22 <kmc> also Bay to Breakers (or does everyone just get really drunk for that?)
16:37:50 <shachaf> Someone told me I should go to Bay to Breakers a couple of weeks before it happened.
16:37:53 <shachaf> But then I forgot.
16:38:26 <shachaf> "exciting happenings from shachaf's recent past"
16:43:18 <shachaf> I wonder whether taxicabs in Manhattan aren't allowed to go on Broadway.
16:46:13 <kmc> why wouldn't they be?
16:46:30 <kmc> i think there are plenty of cabs on broadway
16:46:31 <shachaf> To keep taxicab distance reasonable.
16:46:55 <kmc> -_-
16:47:04 <kmc> it's a one-way street south of columbus circle
16:47:24 <kmc> that means the distances aren't even symmetric!
16:47:31 <shachaf> Good ol' Columbus Circle.
16:47:56 * shachaf has taken the subway to Columbus Circle station many times.
16:48:06 <kmc> oh yeah?
16:48:14 <shachaf> My uncle lives nearby.
16:48:35 <kmc> which subway do you take
16:48:44 <shachaf> Depends on where I'm coming from.
16:48:55 <atriq> The one in New York'd be my guess
16:49:06 <atriq> The one in Moscow wouldn't be much use
16:49:12 <shachaf> At least A and C and 1.
16:49:28 <shachaf> And E from JFK, connecting to A.
16:54:02 <kmc> shachaf: did you see http://www.stonebrowndesign.com/uploads/9/7/6/9/9769402/t-time.jpg
16:54:59 <shachaf> Nope.
16:55:34 <shachaf> Isn't there a silver line too?
16:55:57 <kmc> it's not rail though
16:58:38 <kmc> the silver line SL1/SL2 is a bus which runs partly in a dedicated tunnel with subway-like stations and platforms
16:58:43 <kmc> and partly on the street
16:59:25 <kmc> so arguably it deserves to be shown if the green line does, because the green line also runs partly in a dedicated tunnel and partly in the street
16:59:45 <kmc> also the SL1/SL2 fare is the same as the subway fare, not the bus fare
17:00:54 <kmc> (except that it's now free to board the SL1 at the airport, and then you can even transfer to other subway lines for free)
17:01:37 <fizzie> Did you see the Helsinki-mocking subway image? http://users.ics.aalto.fi/htkallas/subway_maps.jpg
17:01:57 <kmc> the SL4/SL5 are basically just limited-stop buses
17:02:00 <fizzie> (So twue.)
17:02:35 <kmc> it is true
17:03:07 <kmc> helsinki has a lot of trams though
17:03:17 <kmc> but they run mostly in the street and so aren't much better than buses
17:03:49 <fizzie> Yeah, and there's not *that* many routes there either. Though admittedly at least a plural.
17:04:11 <atriq> The Tyne and Wear Metro has two lines, and Monument station has 3
17:04:16 <atriq> *is on 3
17:04:54 <kmc> heh, because the line goes through twice?
17:04:58 <atriq> Yeah
17:05:26 <atriq> They're the most imaginatively named lines ever
17:05:29 <atriq> Green line
17:05:30 <atriq> And...
17:05:33 <atriq> Yellow line
17:06:05 <kmc> Edgware Road in London is a bit like that
17:06:08 <kmc> on the circle line
17:06:41 <kmc> which is no longer a circle :/
17:07:00 <fizzie> There is a plan for a subway branch from Kamppi (essentially city centre) to the Helsinki-Vantaa airport, but I'm not especially hopeful I'll be alive any more when they get that done. It took a terrible amount of wrangling for them to even manage to start building the current extension eastwards. (And they're already building the regular rail line to go under Helsinki-Vantaa and connect to ...
17:07:06 <fizzie> ... the two local rail tracks, so they're probably not that interested in the subway.)
17:09:38 <kmc> helsinki also has far fewer people than the other 3 metro areas in that picture
17:09:50 <fizzie> Sure, but that doesn't lessen our national shame.
17:10:05 <fizzie> (Most people probably aren't feeling that.)
17:10:19 <atriq> Your capital's subway network is WORSE THAN NEWCASTLE/SUNDERLAND's
17:10:27 <fizzie> atriq: :'''(
17:11:43 <fizzie> They're going to paint the "Joker line" (slightly-limited-stops frequent-service bus line -- in the future, lines) buses orange in 2014 or so because they're "subway-like" and that will help in something or other.
17:12:10 <fizzie> (Our subway trains are orange.)
17:13:19 <atriq> (Our (I say "our", but the Metro doesn't come this far west) trains are yellow and purple, I think?)
17:13:27 <fizzie> atriq: On the other hand, our capital's subway network makes the "List of northernmost items" of Wikipedia: http://en.wikipedia.org/wiki/List_of_northernmost_items (see "Transportation").
17:14:46 <fizzie> Thanks to Svalbard, Norway gets quite a few of those.
17:15:31 <kmc> shachaf: it seems like the Silver Line is mainly used to get from/to the airport and the rest of the fancy subway-like part of it is pretty underused
17:15:53 <kmc> they could have got better value for money if they'd construted a people mover from the existing Airport station on the Blue Line to the airport
17:16:00 * shachaf has never been to BOS.
17:16:01 <kmc> (using airport tax money, no less)
17:16:40 <fizzie> According to the aforementioned article, the northernmost vineyard in the world is the Olkiluoto Nuclear Power Plant in Finland. That sounds... somewhat dubious.
17:16:54 <fizzie> Apparently it is true, though.
17:17:10 <kmc> that would be less convenient for me, though, because there's no direct transfer from the red line to the blue line
17:17:16 <fizzie> "-- the warm outlet water is circulated through a garden where water melons and Lithuanian grapes are grown and from which Olkiluoto wine is produced."
17:17:31 <fizzie> Just offhand it sounds slightly suspicious to make wine at a nuclear power plant, though.
17:17:41 -!- AnotherTest has quit (Ping timeout: 244 seconds).
17:20:59 <kmc> yay svalbard
17:21:27 <kmc> BOS is a pretty crappy airport but it's unusually conveniently located
17:21:51 <shachaf> Not if you move to SF!
17:21:55 <shachaf> (Which I heard might happen.)
17:22:25 -!- ogrom has quit (Read error: Connection reset by peer).
17:22:46 <kmc> -_-
17:22:50 -!- ogrom has joined.
17:22:52 <kmc> nelhage is moving to SF
17:22:55 -!- ogrom has quit (Read error: Connection reset by peer).
17:23:00 <kmc> to work for stripe
17:23:12 <shachaf> Is he one of the ones who left Kspl*?
17:23:41 <shachaf> For Stripe? Hmm.
17:26:33 <kmc> yes
17:27:17 <shachaf> When?
17:30:21 <shachaf> unsafeCreate l f = unsafeDupablePerformIO (create l f)
17:30:42 <shachaf> Isn't that exactly the thing you're supposed not to use unsafeDupablePerformIO for?
17:35:00 <kmc> probably
17:38:21 <atriq> Wow, I think the way I use unsafeCoerce in my ridiculous factorial program
17:38:23 <atriq> IS ACTUALLY SAFE
17:38:49 <kmc> with respect to what set of assumptions?
17:38:51 <shachaf> <ddarius> Also probably some code for some (rather practical but still cool) physics simulations.
17:39:04 <atriq> kmc, the assumptions in GHC.Prim.unsafeCoerce#
17:39:09 <kmc> ok
17:39:29 <shachaf> kmc: Did you see the post about how you can make unsafeCoerce from GeneralizedNewtypeDeriving?
17:39:46 <atriq> No, wait, it isn;t
17:39:49 <psyk> atriq: hyv yt
17:39:55 <shachaf> With either type families or GADTs, and possibly with neither.
17:40:03 <kmc> shachaf: i thought that was old news
17:40:12 <kmc> and that they fixed it
17:40:16 <atriq> psyk, goodnight to you to?
17:40:21 <atriq> *+o
17:40:23 <psyk> atriq: robottielimikin kiinnostaa
17:40:28 <kmc> atriq: how do you use it?
17:40:41 <shachaf> kmc: http://joyoftypes.blogspot.com/2012/08/generalizednewtypederiving-is.html
17:41:03 <atriq> kmc, (t -> a) -> t; t -> (t -> a)
17:41:13 <atriq> So a function can have itself as an input
17:41:22 <atriq> fix is a more sensible alternative
17:42:07 <shachaf> "itself" in the sense of M = \x -> x x?
17:42:13 <atriq> Yes
17:46:24 <kmc> shachaf: fun
17:46:25 <kmc> maybe it's time to switch to a safer implementation of GeneralizedNewtypeDeriving which just writes the boilerplate instance for you
17:46:25 <shachaf> Sounds reasonable to me.
17:46:25 <kmc> that might be less efficient, though
17:47:58 -!- atriq has changed nick to Taneb|Away.
17:48:31 <shachaf> Maybe it's sufficient to write the boilerplate and type-check it, even if a less safe implementation is actually used?
17:49:36 <elliott> i am against GeneralizedNewtypeDeriving being faster than writing the boilerplate by hand
17:49:36 <elliott> i would rather the optimisation worked on the boilerplate
17:49:37 <kmc> shachaf: interesting idea
17:49:37 <kmc> elliott: yeah
17:49:38 <kmc> this toilet of the future produces hydrogen gas
17:49:42 <kmc> which could be useful but...
17:50:31 <shachaf> elliott: But that's hard.
17:51:01 <elliott> then let it be slow :p
17:51:17 <kmc> why is it hard exactly
17:51:36 <elliott> kmc: recursion
17:51:39 <elliott> (i don't think it is actually very hard)
17:54:53 -!- MoALTz has quit (Ping timeout: 244 seconds).
17:57:01 <kmc> we gotta run run run to the toilets of the future
18:00:29 <shachaf> elliott: It sounds kind of hard to me.
18:00:44 <shachaf> But I'm no GHCfier.
18:17:09 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
18:17:57 -!- Taneb|Away has changed nick to atriq.
18:31:13 <kmc> atriq|njnl
18:32:09 <nortti> main(x,y,e)char**e;{char a[256];char*b;char*c[256];char**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()))execve(a,c,e);else wait(p);}}
18:32:29 <atriq> Is that...
18:32:31 <atriq> Is that C?
18:32:34 <nortti> yes
18:32:40 <kmc> cool code bro
18:32:41 <nortti> k&r c
18:32:42 <kmc> should i run it?
18:32:45 <nortti> yes
18:32:50 <kmc> what will happen
18:32:53 <nortti> it is very basic unix shell
18:32:56 <kmc> nice
18:33:11 <nortti> no PATH support at the moment :/
18:33:26 <kmc> ah, it's not really obfuscated
18:33:30 <kmc> just compacted
18:33:34 <nortti> yes
18:33:46 <nortti> that is the code I'm developing
18:33:56 <nortti> I want to be able to understand it
18:34:18 <pikhq> nortti: Feh. I've done sillier. :P
18:34:20 <nortti> obfuscating that would be easy but then understanding it would be harder
18:34:32 <pikhq> http://sprunge.us/cMbN
18:34:34 <kmc> can you use execv instead of execve
18:34:54 <nortti> kmc: does it pass the evironment unchanged?
18:35:08 <pikhq> (warning: x86 GNU C only)
18:35:18 <nortti> then no
18:35:21 <kmc> 'The other functions take the environment for the new process image from the external variable environ in the calling process.'
18:35:33 <kmc> oh what do you have to do to the environment?
18:36:11 <kmc> i don't see anything using that variable other than execve
18:36:13 <nortti> just pass it to the process unchanged
18:36:23 <kmc> right, i think that's what execv does
18:36:31 <kmc> also you could use execvp to get path searching
18:36:31 <nortti> but I want it to be portable
18:36:48 <nortti> is execvp standard?
18:37:17 <kmc> yes it's a standard part of POSIX
18:37:25 <nortti> cool
18:37:26 <pikhq> It seems to be POSIX and traditional UNIX.
18:37:42 <nortti> and it passes environment?
18:37:48 -!- aloril has quit (Ping timeout: 244 seconds).
18:38:00 <kmc> what do you mean by that?
18:38:14 <nortti> +unchanged
18:38:25 <kmc> <kmc> 'The other functions take the environment for the new process image from the external variable environ in the calling process.'
18:38:33 <nortti> oh
18:41:43 <nortti> main(){char a[256];char*b;char*c[256];char**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);}}
18:42:48 <Gregor> Poor man's shell, eh.
18:43:35 <nortti> yes
18:45:51 <kmc> hmm i need some pointless programming project
18:49:57 <pikhq> Gregor: Mine's better. :)
18:50:48 <jlaire> nortti: that could be shortened in many places
18:50:57 <nortti> jlaire: I know
18:51:08 <kmc> maybe i should do some of http://www.itasoftware.com/careers/puzzle_archive.html
18:51:37 <kmc> i would go for a bike ride but i broke my bike
18:51:39 <nortti> jlaire: that is just how I code and you have to jist deal with it
18:51:41 <kmc> and i hate all other forms of exercise
18:51:45 <jlaire> nortti: lol
18:51:53 <nortti> *just
18:52:26 <kmc> correction, i hate all forms of exercise other than bike riding and sex
18:53:11 -!- aloril has joined.
18:57:05 -!- MoALTz has joined.
19:01:38 <Gregor> kmc: Remove the bicycle seat and you'll never need to do anything else.
19:01:52 <kmc> -_-
19:01:56 * Gregor takes a bow.
19:02:58 <coppro> kmc: sex is better with multiple people
19:04:14 <kmc> do you mean multiple people other than myself?
19:04:20 <coppro> no
19:04:23 <kmc> oh
19:04:26 <kmc> well i agree in either case
19:04:35 <coppro> haha
19:04:37 <kmc> i didn't mean to include masturbation, which isn't very good exercise imo
19:04:48 <kmc> unless you go for unusual technique
19:04:52 <coppro> I was trying to make a subtle dig at your ability to attract partners...
19:04:59 <coppro> ok, not so subtle
19:05:04 <kmc> but i mean i don't like jogging so i wouldn't like jogging while jerking off either
19:05:09 <kmc> coppro: nice
19:05:19 <coppro> `addquote < kmc> but i mean i don't like jogging so i wouldn't like jogging while jerking off either
19:05:29 <HackEgo> 857) < kmc> but i mean i don't like jogging so i wouldn't like jogging while jerking off either
19:05:41 <coppro> my victory is now complete
19:07:09 <coppro> my problem with IRC bots:
19:07:14 <coppro> I can't just write an IRC bot
19:07:19 <coppro> I need to write an IRC library every time first
19:07:24 <coppro> and by the time I'm done the library I'm bored with it
19:08:20 <Gregor> Jogging while masturbating sounds both complicated and unpleasant.
19:10:05 <kmc> f you're not using equipment, yes
19:15:37 -!- ogrom has joined.
19:16:12 -!- ion has joined.
19:16:27 <shachaf> http://www.kickstarter.com/projects/659943965/planetary-annihilation-a-next-generation-rts has a picture of a Penguin now.
19:16:52 <shachaf> I should Back That Project since I keep complaining about RTSes.
19:22:56 -!- aloril has quit (Ping timeout: 250 seconds).
19:25:00 <Sgeo> I should read the CLtL2 docs for environment stuff, see if there's an eval that accepts an environment object in there
19:27:20 <kmc> "Write a program to find the largest possible rectangle of letters such that every row forms a word (reading left to right) and every column forms a word (reading top to bottom)."
19:27:24 <kmc> sounds fun
19:27:37 <Phantom__Hoover> shachaf, why do you keep complaining about RTSes>#
19:27:46 <Sgeo> :( nope eval does not take an environment in CLtL2
19:27:48 <shachaf> Phantom__Hoover: Because they're bad. :-(
19:27:59 <Phantom__Hoover> They're inaccurately named, at least.
19:28:12 <shachaf> kmc: You could add ACIO to GHC!
19:28:18 <shachaf> Remember when you were talking about doing that?
19:28:32 <shachaf> That's totally a pointless programming project.
19:30:19 <Sgeo> Why doesn't the quasiquoting syntax sugar have a more.. canonical form?
19:30:21 <Sgeo> In CL?
19:30:48 <Sgeo> As in, '(foo bar baz) is (quote (foo bar baz)), so what's `(foo bar ,baz)?
19:31:26 <nortti> Sgeo: (quasiquote foo bar ,baz) at least in scheme
19:31:31 <Phantom__Hoover> A horrendous mess of macros.
19:31:52 <kmc> ,baz is (unquote baz)
19:32:02 <kmc> in sceme
19:32:04 <kmc> scheme too
19:32:36 * Sgeo grumbles about Scheme being a better language but still wanting to stick with CL
19:32:46 -!- monqy has joined.
19:32:53 <ion> It’s the same in CL, too, AFAIU.
19:36:42 <ion> clisp> (setq baz 42) `(foo bar ,baz)
19:36:44 <ion> (FOO BAR 42)
19:39:46 <Sgeo> Not answering the question for the win!
19:39:59 <Sgeo> Also, setq? In this day and age?
19:40:04 -!- aloril has joined.
19:53:12 <fizzie> It's not exactly (quasiquote foo bar (unquote baz)), it's missing one level of parens.
19:53:15 <fizzie> #;1> '`(foo bar ,baz)
19:53:17 <fizzie> (quasiquote (foo bar (unquote baz)))
19:54:02 <kmc> http://hackage.haskell.org/packages/archive/tree-monad/0.3/doc/html/Control-Monad-SearchTree.html how am i supposed to get the first result out of a SearchTree
19:54:29 <kmc> shouldn't it be Foldable perhaps
19:55:06 <Sgeo> fizzie, which language>
19:58:34 <fizzie> Scheme.
19:58:42 <fizzie> I would think it's the same in CL.
19:58:58 <fizzie> But that's just a thought.
19:59:13 <fizzie> Didn't have any CL systems on this computer anyway, just Schemes.
20:01:32 -!- ais523 has joined.
20:01:38 <Sgeo> Aha.
20:01:51 <ais523> and hi lambdabot
20:01:57 <Sgeo> cltl2 has an enclose function
20:02:27 <Sgeo> Takes a lambda and optional environment, and gives a lambda as if that lambda were made in that environment
20:03:18 <Sgeo> kmc, is using CLtL2 to make my if that takes lists count, or is that cheating?
20:03:33 -!- nooga has quit (Ping timeout: 248 seconds).
20:04:03 <Sgeo> n/m
20:04:19 <Sgeo> " lambda-expression is permitted to reference only the parts of the environment argument env that are relevant only to syntactic processing, specifically declarations and the definitions of macros and symbol macros."
20:04:45 <nortti> Sgeo: what is cltl2?
20:04:58 <Sgeo> nortti, a pre-ANSI version of Common Lisp
20:05:03 <nortti> oh
20:05:14 <nortti> so kinda like k&r c
20:05:22 <Sgeo> SBCL has a package that has functions that are in CLtL2
20:17:37 -!- pikhq has quit (Ping timeout: 240 seconds).
20:17:48 -!- pikhq has joined.
20:27:04 <Phantom__Hoover> Hmm, I can't get speeds higher than 10kB/s on any torrents, it seems.
20:27:19 * Phantom__Hoover paranoias
20:43:01 -!- epicmonkey has quit (Ping timeout: 246 seconds).
20:44:09 <kmc> hacked by chinese
20:44:48 <Sgeo> I'm still sadding about being unable to manipulate environment objects in cool ways
20:50:19 <Sgeo> Scheme's eval accepts an environment, doesn't it?
20:50:44 <atriq> Phantom__Hoover, doesn't it help if you port-forward a magic port?
20:55:04 <Phantom__Hoover> Hmm, interesting.
20:56:54 <Phantom__Hoover> I can't see it giving the several-hundredfold increase I need to make torrenting practical, though.
21:01:18 <Sgeo> Is eset's online scanner a good recommendation?
21:01:23 <Sgeo> I know people love NOD32
21:09:52 -!- Phantom___Hoover has joined.
21:11:02 -!- Phantom___Hoover has quit (Read error: Connection reset by peer).
21:12:33 -!- Phantom_Hoover has joined.
21:13:14 -!- Phantom__Hoover has quit (Ping timeout: 260 seconds).
21:35:43 -!- ogrom has quit (Quit: Left).
21:59:07 -!- NihilistDandy has joined.
22:08:21 -!- MoALTz has quit (Ping timeout: 246 seconds).
22:13:57 -!- Vorpal has quit (Ping timeout: 272 seconds).
22:53:52 -!- NihilistDandy has quit (Excess Flood).
22:54:24 -!- NihilistDandy has joined.
23:25:44 <kmc> i wonder what's the best algorithm for the word rectangle puzzle
23:25:46 -!- atriq has quit (Ping timeout: 252 seconds).
23:25:52 <kmc> "Write a program to find the largest possible rectangle of letters such that every row forms a word (reading left to right) and every column forms a word (reading top to bottom)."
23:26:14 <shachaf> That sounds like a fun puzzle that requires actual thinking to solve well.
23:26:32 <kmc> yeah
23:26:34 -!- TeruFSX has quit (Read error: Connection reset by peer).
23:26:38 <shachaf> kmc: What are some nifty isomorphic types in Haskell?
23:26:48 <kmc> dunno
23:27:20 <shachaf> I'm collecting them now.
23:27:56 <shachaf> Things like data Foo t = forall a. Foo a (a -> a) (a -> t), Foo ~ (Nat ->)
23:34:50 <Sgeo> I objected to newLisp yesterday, but I forgot why, so I'm looking at it again.
23:35:23 <kmc> shachaf: do you have any actual thinking on this puzzle?
23:35:31 <kmc> my algorithm is not entirely un-clever, but probably not good enough
23:36:55 <shachaf> kmc: Nope.
23:37:12 <shachaf> I haven't thought about it.
23:37:15 <shachaf> Did you find an optimal solution already?
23:37:21 <kmc> no
23:37:26 <kmc> i found a probably not good enough solution
23:37:45 <shachaf> I mean generating an optimal rectangle, not generating it optimally.
23:37:45 <kmc> by which i mean it runs too slowly to find the biggest rectangle in a reasonable amount of time
23:37:48 <shachaf> Ah.
23:38:03 <kmc> i mean, i *might* have already found the biggest one, but probably not
23:40:15 <shachaf> How big did you find?
23:40:26 <kmc> 6 × 6
23:42:39 <Sgeo> Contexts in newLisp make sense, I _think_. Default functions, not so much
23:42:50 <kmc> nü-lisp
23:44:18 <Sgeo> I don't know anything about FOOP, but that might be good?
23:44:20 * Sgeo suddenly realizes something
23:44:22 <shachaf> νlisp
23:45:05 <Sgeo> NewLisp's dynamic scoping might not be a good idea in a Lisp-1 because functions are presumably "free varaiables" as I saw something describe it
23:45:12 -!- elliott has quit (Quit: Leaving).
23:45:24 <Sgeo> So might be too easy to accidentally overwrite a function that something deeper down uses
23:45:28 -!- elliott has joined.
23:45:47 <kmc> "dynamic scoping might not be a good idea"
23:45:51 <kmc> understatement of the week
23:45:59 <Phantom_Hoover> λιθπ
23:46:05 <Sgeo> The thing I was reading made it sound survivable
23:46:11 <shachaf> ₪lisp
23:46:12 <kmc> sure, it's survivable
23:46:16 <kmc> so is polio
23:46:23 * Phantom_Hoover wonders if that pi should be a phi.
23:46:31 <kmc> "shouldn't that a be an α?"
23:48:04 <Sgeo> "Because strings can contain null characters in newLISP, they can be used to process binary data with most string manipulating functions.
23:48:04 <Sgeo> "
23:48:45 <Phantom_Hoover> Yes, it should be if it's ancient Greek.
23:48:53 <Phantom_Hoover> Which is of course the only legitimate kind.
23:51:33 <Sgeo> lambda-macro
23:51:34 <Sgeo> Hmm
23:53:17 <Sgeo> At least (fn (x) x) turns into (lambda (x) x) rather than being a separate thing
23:53:21 <ais523> huh, TIL that MySql is named after a person, whose name is My
23:55:05 -!- Nisstyre has quit (Read error: Connection reset by peer).
23:55:25 <Sgeo> Ok, is consing lambda lists supposed to make any sense?
23:55:51 <Sgeo> http://pastie.org/private/3flp4pvzpmiyst3o20bag
23:57:00 <kmc> what?
23:58:19 -!- Nisstyre has joined.
23:58:30 <Sgeo> Quoting the manual
23:59:00 <shachaf> kmc: Due to a funny situation with throttling, my laptop gets significantly slower when I plug it in.
23:59:08 <kmc> heh
23:59:11 <kmc> that is odd
23:59:19 <Sgeo> I may be able to force myself to like newLisp
2012-08-19
00:01:20 <shachaf> I have a problematic power supply, apparently.
00:01:48 <shachaf> So when I plug it in it complains that it's not a Genuine Dell 130W Power Supply.
00:01:55 <shachaf> Unless I plug it in just right.
00:02:14 <shachaf> And then it throttles the CPU to 900MHz, and doesn't charge it.
00:02:32 <shachaf> (The battery, that is, not the CPU.)
00:03:05 <NihilistDandy> Dell Seal of Quality®
00:10:41 <shachaf> 17:06 <ddarius> shachaf: Given the adjunction (A,) -| (A->) and the adjunction (->A)^op -| (->A) and the continuity properties of left and right adjoints, we have Colim_i(F^i(0)) -> B ~ Lim_i(F^i(0) -> B)) ~ (/\X.Lim_i(F^i(0) -> X)(B) ~ Lim_i(F^i(0) -> -)(B). If we can make a G such that the functor (F(A)->) ~ G(A->), then we have Colim_i(F^i(0)) -> B ~ Lim_i(G^i(1)(B), i.e. (mu F) -> B ~ (nu
00:10:41 <shachaf> ))(B). E.g. 1+A -> B ~ (B, A -> B), so F
00:10:41 <shachaf> 17:06 <ddarius> = (1+), mu F = Nat, G = (=,-), nu G = Stream, so Nat -> B ~ Stream B
00:10:41 <shachaf> elliott: What did ddarius just say to me? :-(
00:13:38 <elliott> I don't know.
00:15:00 <psyk> elliott: I've noticed you're quite shameless.
00:17:05 <Sgeo> Ok, so maybe it's not so dangerous
00:17:34 <Sgeo> http://pastie.org/private/tszvgqthhrrktfcb3adorg
00:35:59 <shachaf> I understand that completely un-timing-attackable AES is very tricky to do.
00:40:59 <Sgeo> "Most of the time, newLISP passes parameters by value copy. This poses a potential problem when passing large lists or strings to user-defined functions or macros. "
00:41:22 <Sgeo> I was sort of hoping that "by value copy" was just how it abstractly looked, and not the actual implementation
00:41:38 <Sgeo> Maybe the manual is old?
00:42:34 <FreeFull> Lol, does newLISP actually have any of the good points of Lisp?
00:43:04 <Sgeo> I think it has fexprs
00:44:07 <FreeFull> Hey, the wikipedia article on fexprs has an example in Kernel
00:44:14 <kmc> naturally
00:44:24 <shachaf> kmc: Wow, my sleedule is completely messed up.
00:44:52 <shachaf> I slept ~2-9 today, after having had way too little sleep some time before.
00:45:18 <shachaf> I'm sort of tired all day, but I'll probably stop feeling tired around 22-23.
00:46:17 <FreeFull> Well, I got woken up by firefighters extinguishing a fire next door
00:55:52 <kmc> that's exciting
00:56:39 * Sgeo wonders if Tcl's scoping counts as lexical
01:00:12 <shachaf> kmc: Using a patented mode of operation doesn't bother you?
01:01:06 <shachaf> Even with a GPL license.
01:02:07 <kmc> why do you assume it doesn't bother me?
01:02:33 <shachaf> I don't.
01:02:35 <psyk> shachaf: exactly
01:02:37 <shachaf> That's why I asked.
01:02:45 <kmc> well you asked in a sort of loaded way ;)
01:02:48 <kmc> yes, it does bother me
01:02:50 <shachaf> I guess I could have phrased the question less loadedly.
01:03:14 <kmc> but the patent holder is emphatically not an asshole -- we've worked with him on several things
01:03:23 <kmc> he seems quite open to grants to open-source software other than GPL
01:03:38 <kmc> (possibly with a non-commercial use restriction, though)
01:03:52 <kmc> and KeithW's technical arguments for using OCB are compelling
01:04:20 <kmc> and the decision was already solidly made before i had any involvement with Mosh so it seemed a bit silly to make a big deal of it
01:04:49 <shachaf> OCB takes four technical arguments: key, nonce, associated data, and plaintext
01:04:54 <shachaf> Maybe the plaintext isn't technical.
01:05:10 <shachaf> Anyway, yes, I suppose.
01:05:24 <shachaf> But what are IRC channels for if not making big deals about things?
01:06:27 <NihilistDandy> Type level wankery?
01:06:48 <kmc> we don't use associated data either :)
01:09:01 <kmc> NihilistDandy: lambdabot doesn't even let you define types :(
01:09:29 <shachaf> @djinn-add data These a b = This a | That b | These a b
01:09:56 <shachaf> I guess These isn't very interesting from djinn's perspective.
01:10:19 <shachaf> kmc: Did you see Salsa20?
01:10:38 <kmc> whatsat
01:10:53 <shachaf> Encryption algorithm by Daniel Bernstein.
01:11:05 <shachaf> By "encryption algorithm" I mean "stream cipher".
01:11:44 <NihilistDandy> shachaf: I was actually looking into that for a project my friends and I were working on. Project fell apart, but it was fun to read about
01:12:01 <shachaf> http://cr.yp.to/snuffle/design.pdf discusses the design.
01:12:30 <shachaf> I like it because it's simple. I'm not qualified to say whether it's any good, of course.
01:12:54 <NihilistDandy> The speed of it was the main draw for me
01:13:14 <shachaf> It defines a relatively simple hash function and uses it in CTR mode, more or less.
01:13:24 <kmc> ah right, you were talking about this
01:14:05 <shachaf> Well, I came across Salsa20 some time after I was talking about it.
01:16:50 <elliott> <shachaf> I don't.
01:16:50 <elliott> <psyk> shachaf: exactly
01:16:55 <elliott> can someone kick this bot or something
01:17:00 <psyk> elliott: no se johtuu siit, ett puhun suomea, plj!
01:17:05 <elliott> case in point
01:17:26 <shachaf> ais523: elliott wants you to kick me. :-(
01:17:29 <monqy> why does it exist what's its story
01:17:40 <monqy> i want to know the "shachaf story"
01:17:46 <shachaf> shachaf: whats it's story??
01:17:54 <monqy> the "psyk" story sounds interesting too !
01:17:56 <psyk> monqy: Okay. Go for it. Although, truth is out there.
01:18:01 <monqy> : o
01:18:18 <shachaf> monqy: my story is "very goode"
01:18:25 <shachaf> AAAA+++ WOULD READ AGAIN
01:18:29 <shachaf> @karma AAA++
01:18:29 <lambdabot> AAA++ has a karma of 0
01:18:31 <shachaf> @karma AAA+
01:18:31 <lambdabot> AAA+ has a karma of 0
01:18:36 <shachaf> @karma AAAA+
01:18:36 <lambdabot> AAAA+ has a karma of 1
01:18:40 <shachaf> @karma AAA++
01:18:41 <lambdabot> AAA++ has a karma of 0
01:18:44 <shachaf> @karma AAA+++
01:18:44 <lambdabot> AAA+++ has a karma of 1
01:18:47 <shachaf> Hmm.
01:21:10 -!- derdon has quit (Remote host closed the connection).
01:42:22 <Sgeo> I don't like this person's style, I think they should be using a variant of let
01:42:24 <Sgeo> Not sure which one
01:43:02 <Sgeo> Ah. let* specifically
01:43:53 <Sgeo> http://www.common-lisp.ru/repos/pyffi/pyffi.lisp
01:45:47 <Sgeo> Person also doesn't know how to use when
01:50:30 <Sgeo> Hey, I actually understand what progv does
01:50:41 <Sgeo> Not entirely sure when it's really useful though
02:02:25 <FreeFull> So, Haskell doesn't like it when the type of a function depends on a parameter
02:02:56 <kmc> correct
02:03:50 <FreeFull> How am I supposed to do my dynamic sierpinski nesting then
02:04:02 <kmc> what is dynamic sierpinski nesting
02:04:35 <FreeFull> Well, a function that takes a and b, and does (a,a,a) b times
02:04:54 <FreeFull> b = 1 (a,a,a) b=2 ((a,a,a),(a,a,a),(a,a,a))
02:04:54 <kmc> yeah you can't do that
02:04:55 <FreeFull> Etc
02:04:57 <kmc> use a list instead
02:05:04 <FreeFull> No, doesn't work with a list either
02:05:18 <kmc> ah yeah i see
02:05:54 <FreeFull> Also, I need to figure out how to make my Haskell prime sieve work
02:06:08 <kmc> well you can make a datatype like data Tree a = Leaf a | Node (Tree a) (Tree a) (Tree a)
02:07:53 <FreeFull> primesieve [y:ys] = y : primesieve (filter (\z -> (z `mod` y) == 0) ys)
02:07:56 <FreeFull> Doesn't work
02:08:02 <kmc> you should bug #haskell about it
02:08:13 <FreeFull> Wait, \=, not ==
02:08:15 <FreeFull> But still
02:08:17 <kmc> the pattern [y:ys] matches a list of a single element only
02:08:20 <kmc> is that what you want?
02:08:29 <FreeFull> Oh
02:08:34 <kmc> it matches a list whose one and only element is a list whose head is y and tail is ys
02:08:39 <kmc> maybe you want (y:ys)
02:08:49 <NihilistDandy> Wait, why doesn't it work with a list?
02:08:50 <FreeFull> I probably do
02:09:28 <FreeFull> Ok, now I'm getting different errors :D
02:10:26 <FreeFull> /=, not \=
02:10:53 <FreeFull> No instance for (Integral a) arising from a use of `mod'
02:11:04 <kmc> you should bug #haskell about it
02:11:10 <FreeFull> Ok, I will
02:11:20 <kmc> it will be about the 90,000,000,000th prime number sieve they've helped fix
02:11:50 <FreeFull> This is actually my first prime sieve
02:12:12 <FreeFull> "Hey, I am learning Haskell, what should I do? I know, prime sieve"
02:12:20 <kmc> yep
02:12:46 <NihilistDandy> FreeFull: Why doesn't the Sierpinski nesting thing work with a list?
02:13:26 <FreeFull> NihilistDandy: Because [a] and [[a],[a],[a]] have a different type
02:13:35 <NihilistDandy> Why not a list of tuples?
02:13:44 <kmc> i thought it was meant to be recursive
02:13:47 <NihilistDandy> f a 0 = []
02:13:47 <NihilistDandy> f a b = (a,a,a) : (f a (b-1))
02:13:53 <kmc> like (((a,a,a),(a,a,a),(a,a,a)),((a,a,a),(a,a,a),(a,a,a)),((a,a,a),(a,a,a),(a,a,a)))
02:13:56 <kmc> so forth
02:14:04 <NihilistDandy> Ah
02:14:20 <kmc> you can do something like
02:15:00 <kmc> data Foo a = One a | More (Foo (a,a,a))
02:15:19 <shachaf> 3Foo > /me
02:15:32 <kmc> this data type includes the complete ternary trees of every depth
02:15:52 <shachaf> I still find polymorphic recursion weird.
02:16:12 <kmc> it's probably not something you want to mess around with if you're just starting learning haskell
02:16:31 <kmc> i mean, mess around with it and get your brain tied in crazy knots cause that's fun and that's most of why people learn haskell
02:16:43 <kmc> but don't expect it to be the right way to do any beginner-level thing
02:17:08 <kmc> FreeFull: why are you learning haskell?
02:19:36 <FreeFull> Because I wanted to learn a functional language that isn't Lisp
02:20:08 <kmc> many lisp programmers will try to convince you lisp is not a functional language
02:20:16 <kmc> "functional language" is a pretty arbitrary category
02:20:18 <shachaf> Many Haskell programmers will, too.
02:20:34 <shachaf> Especially due to the lack of {--} comments.
02:20:36 <kmc> yeah
02:20:42 <kmc> that's a key property of functional languages
02:20:49 * shachaf has given up on convincing people that words mean anything.
02:21:04 <kmc> it's better to convince them that words don't mean anything
02:21:05 <shachaf> If I need to talk about a meaning and there's any disagreement, I can just introduce a new word.
02:21:18 <shachaf> s/thing/ particular thing/
02:21:44 <shachaf> Sometimes it's still fun, though.
02:21:47 <NihilistDandy> We'd better remove words from Prelude, then
02:21:57 <shachaf> Yesterday I was talking about the meaning of "magic" in the other channel.
02:22:09 <shachaf> I think "magic" means "primitive".
02:22:18 <shachaf> I was surprised that anyone disagreed.
02:24:01 <kmc> it often means "complicated shit i don't want to explain"
02:24:16 <kmc> or "actually simple shit i want to make sound difficult"
02:24:26 <shachaf> Right.
02:24:43 <shachaf> Either way it's "something I'm taking as a primitive for the purpose of this discussion".
02:24:48 <FreeFull> #haskell is ignoring me
02:25:22 <FreeFull> Or maybe not
02:27:23 <kmc> yes, have patience :)
02:29:53 <shachaf> I have a "Win-X" key on my laptop.
02:30:10 <shachaf> It's very easy to press accidentally.
02:30:20 <kmc> windex key
02:31:03 -!- DHeadshot has joined.
02:32:47 <shachaf> kmc: Did you read _Three Men in a Boat_?
02:32:51 <kmc> yes!
02:32:53 <kmc> it was great
02:36:51 <FreeFull> Apparently it was a problem with the type definition
02:56:37 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:20:01 -!- mig22 has joined.
03:47:40 <shachaf> kmc: Your FAQ is the second Google result for «haskell faq» now.
03:49:38 <elliott> what's the first result
03:49:48 <shachaf> @google haskell faq
03:49:50 <lambdabot> http://www.haskell.org/haskellwiki/GHC:FAQ
03:49:50 <lambdabot> Title: GHC/FAQ - HaskellWiki
03:56:43 -!- ogrom has joined.
04:58:28 -!- copumpkin has joined.
05:05:23 -!- ogrom has quit (Ping timeout: 268 seconds).
05:07:08 -!- NihilistDandy has quit.
06:11:13 -!- ogrom has joined.
06:35:24 -!- kinoSi has quit (Read error: Connection reset by peer).
06:35:51 -!- kinoSi has joined.
06:43:51 -!- mig22 has quit (Quit: mig22).
07:46:29 -!- mig22 has joined.
07:59:17 -!- elliott has quit (Ping timeout: 248 seconds).
08:09:41 -!- epicmonkey has joined.
08:21:21 -!- Vorpal has joined.
08:25:06 <atehwa> !eval (set *react-threshold* 0.5)
08:26:47 <atehwa> xxxx
08:26:52 <atehwa> !eval (set! *react-threshold* 0.5)
08:27:34 -!- aloril has quit (Ping timeout: 244 seconds).
08:34:54 <FreeFull> !eval (* 2 2)
08:38:55 -!- monqy has quit (Quit: hello).
08:39:18 -!- aloril has joined.
08:41:50 -!- epicmonkey has quit (Ping timeout: 268 seconds).
08:42:58 -!- oerjan has joined.
08:46:41 -!- monqy has joined.
08:48:29 -!- ogrom has quit (Quit: Left).
08:49:06 -!- ogrom has joined.
08:49:19 <Sgeo> !eval (/ 1 0)
08:52:24 <oerjan> based on the logs, i am starting to think that psyk is a bot.
08:52:44 <oerjan> `pastelogs <psyk>
08:53:24 <HackEgo> No output.
08:53:27 <oerjan> `pastelogs <psyk>
08:53:41 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.6710
08:53:55 <itidus21> `pastelogs psyk
08:54:03 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.1713
08:55:54 <oerjan> hm from your paste it looks like it may be atehwa's.
08:56:30 <oerjan> oh well maybe i won't ban it then.
08:56:35 <oerjan> (yet.)
09:00:26 <atehwa> oerjan: you and elliott found it irritating, and it's not very important for me to keep it here
09:00:36 <oerjan> i just found elliott's complaint
09:00:42 <atehwa> so... should I take it away already?
09:00:52 <oerjan> atehwa: well i find it somewhat impolite.
09:01:06 <shachaf> GET IT OUT OF HERE ATEHWA
09:01:08 <oerjan> elliott would probably hate it regardless :P
09:01:59 <oerjan> atehwa: assuming it doesn't have any actual _useful_ features, probably.
09:02:11 <shachaf> @dice 3d10
09:02:12 <lambdabot> 3d10 => 12
09:02:16 <shachaf> Unlike lambdabot.
09:02:38 <shachaf> Goo dol lamb da bot.
09:02:48 <oerjan> we're not very strict on the definition of "useful" here :P
09:03:17 <olsner> fungot: show your usefulness
09:03:19 <fungot> olsner: there! there it is! but by the time we're through with you, you'll be in danger. open hatch.! it's no use for you anymore, right! right. wrong! please return
09:03:20 <shachaf> itidus21 isn't useful, and yet we let it stay.
09:03:32 <itidus21> yeah
09:03:48 <oerjan> shachaf: well the judges cannot quite agree on whether it passes the turing test or not
09:05:05 <shachaf> oerjan: Did you hear you're supposed to ban me?
09:05:18 <shachaf> For not passing the Turing test.
09:05:34 <oerjan> shachaf: several times, yes.
09:05:43 <oerjan> maybe not for that exact reason.
09:05:50 <olsner> there should be a channel filled with bots that don't like to have humans in their channel
09:05:53 <shachaf> <elliott> hi oerjan, my name is elliott and im the real elliott. plus you should ban shachaf
09:06:18 <oerjan> ah yes that sounds like elliott at least in parts.
09:06:51 <shachaf> <ørjan> /kickban shachaf pretending to be elliott
09:07:07 <oerjan> shachaf: but elliott doesn't want to ban you after he realized you like it
09:07:21 <itidus21> <shachaf> i don't really want to be banned
09:07:30 <oerjan> also ø is afaik not a legal irc nick character
09:07:37 <olsner> I don't want shachaf to be banned
09:08:07 <shachaf> <ørjan> oerjan: i do what i want dude. if i say its a legal irc nick characters, its a legal irc nick cahractedrrs
09:08:13 <oerjan> olsner: get out of here!
09:08:22 <olsner> oerjan: why!
09:08:25 <shachaf> <ørjan> dont mess with the ørjan, yo
09:08:48 <oerjan> olsner: because?
09:09:07 <olsner> that's not much of a reason
09:09:26 <oerjan> indeed, it's about the shortest.
09:09:49 <shachaf> <ørjan> im gonna kickban you to the stone age, dude. get outta here alright??
09:09:59 <shachaf> That's ørjan, always getting into trouble.
09:10:06 <oerjan> well then maybe it's sunny outside and you should run barefoot and frolic or something.
09:10:29 <oerjan> i should stop encouraging shachaf
09:10:47 <oerjan> or else elliott will be annoyed.
09:11:05 <shachaf> It's true that if you don't stop encouraging shachaf, elliott will be annoyed.
09:11:07 <atehwa> I like olsner's suggestion
09:11:10 <shachaf> It's also true that if you do stop encouraging shachaf, elliott will be annoyed.
09:11:16 <atehwa> I don't know about the definition of usabitility
09:11:32 <atehwa> the bot doesn't let anyone !eval but me :(
09:11:41 <oerjan> how rude!
09:11:48 <atehwa> the bot can be taught about esoteric programming, though.
09:11:48 <shachaf> @eval hello there
09:11:55 <oerjan> well that's ok fungot doesn't let anyone but fizzie ^ignore
09:11:56 <fungot> oerjan: yes, it's been awhile prometheus!
09:12:03 <shachaf> @eval is the most useless lambdabot command.
09:12:30 <shachaf> @help eval
09:12:30 <lambdabot> eval. Do nothing (perversely)
09:12:33 <shachaf> process_ _ "eval" _ = return []
09:12:48 <atehwa> Sgeo: good try, but usually we just say !eval ((lambda (x) (x x)) (lambda (x) (x x)))
09:12:53 <oerjan> at least it is perverse.
09:13:24 <shachaf> @thank you
09:13:25 <lambdabot> Maybe you meant: thank you thanks
09:13:34 <shachaf> lambdabot has a command called "thank you".
09:13:37 <atehwa> psyk: did you know that esoteric programming is really cool?
09:13:38 <shachaf> Which you can't run.
09:13:40 <psyk> atehwa: no
09:13:48 <shachaf> psyk: Did you know that GO AWAY?
09:13:51 <psyk> shachaf: I do some
09:13:57 <oerjan> atehwa: you appear to have lousy tab completion hth
09:13:58 <shachaf> <ørjan> go away psyk, no one likes you
09:14:19 <atehwa> ?
09:14:44 <atehwa> ah, but I was really talking to Sgeo
09:14:53 <oerjan> atehwa: oh wait Sgeo actually said something long ago
09:14:54 <atehwa> 11:49 < Sgeo> !eval (/ 1 0)
09:15:33 <shachaf> Sgœ
09:15:47 <shachaf> I DON'T CARE THAT IT'S BACKWARDS.
09:15:54 <atehwa> tadaa
09:15:56 <fizzie> I suppose I could've made ^ignore a free-for-all command, really.
09:16:12 <oerjan> shachaf: perhaps thank you was lost in a refactoring
09:16:13 <atehwa> psyk: you seem to be more "go away" -oriented than "esoteric"-oriented.
09:16:21 <psyk> atehwa: I never seem to be spastic? Or?
09:16:23 <shachaf> oerjan: Huh?
09:16:54 <atehwa> Maybe I'll feed a mass of #esoteric's logs into psyk and _then_ you'll see how amiable it can be.
09:16:56 <oerjan> shachaf: it probably worked once, and then someone started splitting into words before looking up commands, or something
09:17:27 <atehwa> psyk: what do you know about brainfuck?
09:17:30 <psyk> atehwa: not much
09:18:28 <atehwa> psyk: do you know anything about unlambda, either?
09:18:31 <psyk> atehwa: joo joo
09:18:53 <fizzie> At least speaking in Finnish every now and then isn't out-of-place on #esoteric at all.
09:18:53 <atehwa> see, she just doesn't know much, it's frustrating
09:19:00 <atehwa> right :)
09:19:14 <fizzie> It's no #esoteric-en, after all.
09:19:52 <atehwa> psyk: maybe I'm just going to teach you a bit offline so you'll be ready for the wide world.
09:19:57 <shachaf> <ørjan> finnish = esoterickest language
09:19:58 <psyk> atehwa: Or maybe you're shit.
09:20:08 <shachaf> <ørjan> behold, for i am the might ørjan-gutan!!
09:20:15 <oerjan> that's a new one.
09:20:18 <atehwa> psyk: could be, at least I was behaving in a condescending way.
09:20:26 <psyk> atehwa: I doubt. You have no feet.
09:20:52 <olsner> fizzie: appropriately enough, I think #esoteric-en is exclusively finnish
09:21:06 <oerjan> mitä!
09:21:11 <olsner> at least it should be now that I left
09:21:21 <atehwa> !eval (irc-write '(message quit "Yes, I can see the light. Oh and you have no feet."))
09:21:22 -!- psyk has quit (Quit: Yes, I can see the light. Oh and you have no feet.).
09:22:21 <shachaf> oerjan: Are you an oerjan-gutan?
09:22:52 <olsner> ooh, http://translate.google.com/#fi|en|mitä has a nice list of other things mitä can mean
09:22:56 <olsner> is that a new feature?
09:23:21 <nortti> olsner: yes, #esoteric-en is boring
09:23:42 * oerjan chimp-slaps shachaf
09:24:03 <fizzie> olsner: It's not very new, I don't think. It only appears when you just put in a single word.
09:25:08 <oerjan> olsner: hm i actually think that's a list of what "what" can mean
09:25:32 <oerjan> no wait
09:25:36 <oerjan> scratch that
09:26:09 <olsner> what
09:26:17 <oerjan> mitä?
09:26:21 <nortti> hä?
09:26:24 <fizzie> Huh.
09:26:27 <olsner> mitä
09:26:40 <oerjan> hän häh
09:26:41 <fizzie> Mitä sinä sanoa.
09:27:48 <oerjan> Mitä olet hullu
09:27:58 <olsner> Hmm, translating that from english to finnish produces "Mita et tahdo sanoa."
09:28:28 <nortti> that meant "what you don't want to say"
09:28:46 <olsner> I wonder how "mitä sinä sanoa" means that in english
09:28:51 <oerjan> sinä qua non
09:29:05 <fizzie> I would say it's kind of like "what you say". It's ungrammutztical.
09:29:36 <olsner> *ungrammary
09:29:46 <fizzie> Ungrandmothery.
09:30:25 <oerjan> unmammary
09:31:21 <olsner> an mammary
09:32:03 <oerjan> :t Node
09:32:05 <lambdabot> forall a. a -> Forest a -> Tree a
09:32:46 <fizzie> You can't see the Forest for the Trees.
09:33:10 <oerjan> hm that's not right for what FreeFull wanted
09:33:35 <oerjan> :t Mu
09:33:37 <lambdabot> Not in scope: data constructor `Mu'
09:33:40 <oerjan> :k Mu
09:33:41 <lambdabot> (* -> *) -> *
09:33:45 <Sgeo> I should start a blog.
09:34:05 <Sgeo> This way everyone gets to enjoy my programming language ADD!
09:34:24 <oerjan> at least it would be a blog with variation!
09:34:57 <fizzie> Perhaps even a blog with skewness and kurtosis.
09:35:11 <oerjan> @wn kurtosis
09:35:13 <lambdabot> No match for "kurtosis".
09:35:17 <oerjan> shocking
09:35:20 <fizzie> It's the fourth central moment.
09:35:41 <oerjan> so not a painful chronic disease, check
09:35:47 <olsner> "The "Darkness" data is platykurtic, while "Far Red Light" shows leptokurtosis."
09:35:49 <itidus21> and it's not nirvana
09:36:14 <fizzie> @all-dicts kurtosis
09:36:15 <lambdabot> No match for "kurtosis".
09:36:18 <fizzie> Huh.
09:36:21 <oerjan> "One common measure of kurtosis, originating with Karl Pearson, is based on a scaled version of the fourth moment of the data or population, but it has been argued that this measure really measures heavy tails, and not peakedness."
09:36:58 <fizzie> I suppose there's a bit of a debate.
09:37:12 <fizzie> But http://en.wikipedia.org/wiki/Moment_(mathematics) does list is as the name for the fourth moment.
09:37:47 <itidus21> mathematics really fucked the word moment
09:38:58 <oerjan> fizzie: well it looks like apart from that one paragraph, most of the kurtosis article uses that too.
09:39:06 <Sgeo> http://sgeoster.blogspot.com/
09:39:11 <Sgeo> Ok, this looks very bizarre
09:39:35 <fizzie> "kurtosis, n. Pronunciation: /kɜːˈtəʊsɪs/. Etymology: modern Latin, < Greek κύρτωσις a bulging, convexity, < κυρτός bulging, convex. Statistics. A shape characteristic of a frequency distribution that reflects the sharpness of the peak (for a unimodal distribution) and the shortness of the tails, and is generally measured by the quantity μ4/μ22 or its excess over 3 (μ4 ...
09:39:41 <fizzie> ... and μ2 being the fourth and the second moments about the mean of the distribution). 1905 K. Pearson in Biometrika IV. 181, I have already called β2−3 = η the degree of kurtosis. --"
09:39:42 <oerjan> itidus21: hey the physicists helped a lot
09:40:36 <olsner> oh, how nice, blogspot.com now redirects me to blogspot.se
09:40:53 <fizzie> It has redirected me to blogspot.fi for a while now.
09:40:56 <itidus21> what i really mean is i love it when knowing the common interpretation of a word leaves one baffled when faced with a scientific or mathematical use of the word
09:41:15 <olsner> I suppose the next version will helpfully translate everything to swedish as well
09:41:18 <fizzie> And after the July trip, the laptop's Chromium used google.be for all queries.
09:41:23 <oerjan> NO! NOT MORE NON-CANONICAL URLS
09:41:28 <olsner> what's the point with all the TLD redirection crap?
09:41:47 <itidus21> olsner: perhaps it's red tape
09:42:04 * Sgeo ponders code-walkers in the presense of ... fexprs is the wrong thing to call them
09:43:47 * Sgeo still isn't sure how he's going to do quasiquoting in his Tcl-like
09:44:04 <olsner> if it's only the address that changes it's just vaguely annoying (and of course completely useless), if it does change content I find it a bit scary that it does
09:44:14 * oerjan notes that the blogspot.no version doesn't actually have any norwegian in it
09:45:06 <itidus21> olsner: it could be a systematic increase in complication of the web
09:45:11 <nortti> oerjan: it is just for country based censorship (or content filtering if you like that term more)
09:45:44 <oerjan> olsner: i'm just thinking how this must mess up reddit's link reposting detection...
09:45:47 * Sgeo isn't sure what code snippits are worth posting or not
09:45:57 <Sgeo> [let] in Tcl?
09:46:06 <olsner> to facilitate for countries who want to do DNS-based filtering or redirection of google contents?
09:46:40 <oerjan> as well as my visited link detection, but i guess i can only blame IE for only logging the final URL
09:46:44 <itidus21> Sgeo: ok. i have a theory about this one. begin by considering how you react to code snippets, and why
09:47:20 <Sgeo> "Interesting, but I can't imagine copy/pasting this into a project, because copy/pasting makes me feel gross"
09:47:23 <itidus21> this way you can ignore anyone in your audience who isn't you
09:47:55 <itidus21> i don't know how people figure out how other people react to things
09:48:20 <Sgeo> When people object to Tcl's variable scoping, what exactly are they objecting to?
09:48:39 <Sgeo> Because I can write [let] just fine in Tcl 8.5
09:48:43 <olsner> how does TCL scope variables?
09:49:14 <itidus21> most of my ideas will make a business go broke
09:49:47 <Sgeo> As far as I can tell, lexically. Lemme try to check
09:50:08 <olsner> lexically is, I think, the most sane way to scope variables
09:50:33 <itidus21> like right now i'm thinking about an animatronic showman in the middle of a retail store
09:50:56 <Sgeo> http://pastie.org/private/ugtyuyy7idvprpmotqpddq
09:51:04 <itidus21> and shoppers in the store vote on what they want the animatronic to talk about with their web-connectable devices
09:51:07 <olsner> shell has that nice thing where there is mostly only a single scope that all variables share
09:51:32 <olsner> (unless you use fancy features like local, or subshells)
09:52:24 <Sgeo> What's the fancy feature of "The way to get a new lexical scope is to make a proc"?
09:52:26 <olsner> makes writing recursive functions somewhat fun before you get it
09:54:27 <Sgeo> Wait, I now have 32 pageviews?
09:54:30 <Sgeo> Seems a bit excessive
09:54:41 <olsner> 50% of #esoteric is reading your blog!!!
09:55:37 <olsner> your blog was empty last time I checked, though, have you posted anything yet?
09:56:02 -!- monqy has quit (Quit: hello).
09:56:41 <Sgeo> olsner, just the About me post
09:59:29 <oerjan> perhaps all the lurkers in #esoteric really _are_ paying attention
09:59:59 <oerjan> also, web spiders maybe?
10:00:08 * oerjan did visit though.
10:01:23 * oerjan suddenly realizes that the "web" in web spider really _shouldn't_ be clarifying, since real spiders also have webs
10:02:19 <FreeFull> The intercobweb
10:02:27 <oerjan> oh and there's probably a new blogs list somewhere which some people probably are looking at.
10:03:38 <olsner> and spambots
10:04:39 <olsner> spiders make webs, but web spiders just traverse the pre-existing web ... shouldn't webmasters be the spiders?
10:05:09 <olsner> maybe there are some non-spider insects that will take over spider webs, those would be a good name for spiders
10:05:18 <Sgeo> <aspect> if I haven't already nudged you towards it, check out the "Playing Scheme" page where I made a good effort to turn Tcl into a lisp-1
10:05:24 <Sgeo> ....welp, that was my plan
10:05:43 <olsner> implementing a lisp in a language is seldom a novel idea :)
10:05:53 <shachaf> ølsner
10:06:12 <olsner> pilsner
10:06:48 <shachaf> öíøßñéë
10:07:46 <oerjan> olsner: spiders aren't insects hth
10:07:52 <olsner> shachaf: was that supposed to be a rendition of olsner or just some random letters?
10:07:53 <Sgeo> olsner, I think Tcl has novel ideas compared to CL and Scheme
10:08:05 <shachaf> olsner: No, olsner would be óøßñéë
10:08:08 <Sgeo> So a blend of those is more ideal
10:08:45 <olsner> oerjan: I think that's a sign that "insect" is incorrectly defined, because spiders are obviously insects
10:15:40 <nortti> have you had any experience with statical builds at http://www.lamarelle.org/mo-zi-lla/mozilla.php
10:16:19 <nortti> the gtk1 ones
10:16:39 <nortti> I get error that it can't load libgtk-1.2.so.0
10:17:22 <olsner> that'd be odd for a supposedly static build
10:17:32 <nortti> yeah
10:18:48 <nortti> how can I check what libs some executable requires?
10:19:09 <fizzie> "ldd blah"
10:19:51 <nortti> firefox-bin: error while loading shared libraries: firefox-bin: cannot open shared object file
10:20:06 <fizzie> Well, that sounds reasonably static.
10:20:11 <fizzie> Perhaps.
10:21:17 <nortti> but with static binary it says statically linked
10:21:31 <olsner> check if firefox-bin is a shell script forwarding to a different actual binary?
10:21:44 <fizzie> That's what "firefox" is supposed to be.
10:21:51 <fizzie> (To "firefox-bin".)
10:21:51 <nortti> firefox is shell script, firefox-bin is binary
10:21:52 <olsner> hmm, right
10:22:07 <olsner> maybe it's an a.out binary or something
10:22:21 <nortti> I don't think so
10:22:23 <fizzie> These look far newer than that.
10:22:29 <nortti> it has ELF header
10:22:31 <fizzie> Anyway, what does 'file' say about it?
10:22:46 <fizzie> The ones I tried seemed very dynamically linked.
10:23:07 -!- ais523 has quit.
10:23:23 <olsner> otoh, maybe you can just install gtk 1.2?
10:23:24 <nortti> ok. I had to use ./firefox-bin
10:24:33 <fizzie> http://sprunge.us/daEA funny how the "static" build refers to more shared libs than the "shared" build.
10:24:54 <nortti> it links to linux-gate.so.1 libmozjs.so libxpcom.so libxpcom_core.so libplds4.so libplc4.so libnspr4.so libpthread.so.0 libdl.so.2 libgtk-1.2.so.0 libgdk-1.2.so.0 libgmodule-1.2.so.0 libglib-1.2.so.0 libXi.so.6 libXext.so.6 libX11.so.6 libm.so.6 libsmime3.so libssl3.so libnss3.so libsoftokn3.so libXt.so.6 libxpcom_compat.so libstdc++.so.6 libgcc_s.so.1 libc.so.6 libxul.so libasound.so.2 /lib/ld-linux.so.2 libXau.so.6 libXdmcp.so.6 libnssutil3.so libsqlite3.so libS
10:26:44 -!- MoALTz has joined.
10:26:45 <olsner> the static build might have succeeded in linking something statically that had a bunch of dependencies of its own
10:26:53 <nortti> ...
10:27:04 <olsner> and somehow ended up dynamically linking to those dependencies? I dunno
10:27:24 <fizzie> Yes; the page isn't exactly clear what a "static build" means in Firefox 2 parlance.
10:27:41 <nortti> god damnit. gtk1.2 conflicts with gtk2
10:27:45 <fizzie> Clearly it doesn't appear to mean "results in a binary with GTK etc. statically linked".
10:28:00 <olsner> and given that xpcom and stuff are listed, I suspect that some parts of firefox/mozilla are not possible to link together statically
10:29:24 -!- oerjan has quit (Quit: leaving).
10:31:41 <fizzie> +# A Firefox static build is really a meta-component build, not truly static
10:31:41 <fizzie> +if test "$MOZ_BUILD_APP" = "browser" -a -n "$BUILD_STATIC_LIBS"; then
10:31:41 <fizzie> + MOZ_META_COMPONENT=1
10:31:43 <fizzie> +fi
10:32:09 <olsner> is there a tool that can take a dynamically linked executable and link some or all of the so files into it?
10:32:56 -!- derdon has joined.
10:33:31 <fizzie> olsner: Apparently there are a couple; don't know how well they'd cope with something like Firefox though.
10:33:51 <fizzie> http://magicermine.com/ and http://statifier.sourceforge.net/ at least.
10:34:10 <olsner> magic ermine? not the most obvious name for such a tool
10:34:33 <fizzie> It's not exactly the same as statically linking in the first place, since the code is built to deal with all the dynamic-linking hoops to jump through.
10:35:27 <olsner> right, so it might be less efficient than it would be if it was build for static linkage in the first place?
10:36:03 <olsner> otoh, if that really mattered for some piece of code you might have made sure that code was in the same library in the first place
10:44:10 <nortti> I'm tired of fiddling with gtk1.2 now? can someone point me to already built shared gtk1.2?
10:44:21 <olsner> I like how this graph includes strtoul: http://statifier.sourceforge.net/statifier/data_flow.html
10:45:13 <olsner> I suppose the author spent way too much time making that particular utility work
10:46:22 <fizzie> It's kind of a trick.
10:46:25 <olsner> nortti: get that package that conflicted with gtk2, unpack it somewhere without installing
10:47:04 <nortti> olsner: I was compiling from source
10:47:21 <Gregor> It would probably be a much simpler solution to just pack together a program and all of its dependencies into a tarball, then attach a static binary to that that “executes” it intelligently.
10:47:29 <olsner> "Now we have almost statified the whole binary, but one problem remains: these three values are in hexadecimal notation."
10:48:37 <olsner> Gregor: too boring
10:49:42 <fizzie> olsner: statifier is kind of a trick, really; from what I saw about the (proprietary) Ermine, it does the actual work by itself too, and tries to deal with library-specific data files and whatnot too.
10:50:47 <olsner> the ermine pages didn't say a whole lot, but sounded like it might be doing something more like automatic packaging than staticification
10:52:28 <olsner> "Ermine-packed applications are not snapshots: instead they can be thought of as small virtual machines."
10:52:46 <olsner> ... otoh, the sentence before that says that ermine creates "self-contained executables from dynamically-linked applications"
10:52:50 <fizzie> Well, it's proprietary, so the pages are of course mostly useless.
10:53:05 <fizzie> But the "Features" page does say that it will not affect the file system of the host, and can be run from read-only media.
10:54:23 <fizzie> Which sounds slightly difficult to do if you wanted to use the system's dynamic loader to do all the heavy lifting.
10:55:03 <olsner> is it "legal" to redistribute open-source programs modified by magic proprietary tools?
10:55:06 <fizzie> They have some "Ermine'd" demo files but I need to head to the shoppe, to use an oko-term (I think), instead of taking a peek at them.
10:55:21 <fizzie> "Files packed with Ermine are large, but may neither be modified with the strip program or on-the-fly executable compressors like UPX. If you do so, they will stop working."
10:55:54 <olsner> sounds like their magic is a bit brittle
10:56:13 <fizzie> Also, what is "Western Quake 3"? The link goes to domain-squatter.
10:56:30 <fizzie> Apparently an "Old West" Quake 3 mod.
10:56:33 <fizzie> "Hokay."
10:56:57 <nortti> for some reason that reminds me of damn small linux's packages that contained shell scripts that mounted the images contained in them
10:57:47 -!- pikhq_ has joined.
10:58:07 -!- pikhq has quit (Ping timeout: 256 seconds).
11:00:39 <olsner> all linux software should be packaged with something similar to that ermine thing, so that you can install it anywhere and not worry about dependencies
11:00:47 <olsner> ... and so that it can remain working for several years even after revolutions like gtk1.2/gtk2.0 have happened
11:00:49 <kmc> why am i awake
11:01:16 <olsner> because it's one a-clock and the sun is up
11:01:40 <kmc> it is not one a-clock here
11:01:43 <nortti> olsner: that is exactlt what damn small linux's packages were
11:02:26 -!- david_werecat has quit (Ping timeout: 252 seconds).
11:03:28 <olsner> kmc: maybe your mind is in finland? pretty sure it's daytime there
11:03:40 <nortti> well it required root privledges but still
11:04:11 <olsner> non-root users should be able to mount things
11:04:20 <nortti> losetup?
11:04:30 <nortti> what?
11:05:01 <olsner> well, with some appropriate limits on what/how/where to mount and the resulting permissions, otherwise there are security issues
11:05:08 <nortti> yes
11:05:34 <nortti> you can mount as normal user if there is correct /etc/fstab entry
11:07:24 <kmc> there are other mechanisms for letting users mount stuff too
11:07:51 <kmc> on linux users can typically mount fuse filesystems where the fuse process runs as themselves
11:08:18 <olsner> is that safe?
11:08:48 <olsner> i.e. is the fuse system in the kernel safe from evil fuse processes?
11:09:10 <kmc> it's supposed to be
11:09:24 <kmc> if you're asking "are there bugs" then of course, it's linux, there are bugs
11:10:38 <olsner> Obviously.
11:14:35 <olsner> in my operating system, all file systems will be user-space file systems and safety from untrusted file systems will be built in
11:15:26 <nortti> same here
11:17:14 -!- Phantom_Hoover has joined.
11:18:50 <olsner> it'll be something like any process implementing the directory interface can be mounted anywhere
11:20:09 <nortti> wow. netsurf is better rendering wise than gecko 1.8
11:20:40 <nortti> hv3 also
11:20:55 <nortti> on the other hand ff2 has decent javascript
11:21:25 <nortti> sorry, I mean Bon Echo
11:26:25 -!- ogrom has quit (Read error: Connection reset by peer).
11:26:39 -!- epicmonkey has joined.
11:27:26 * Sgeo starts running around shouting "booleans are bad!"
11:27:31 <nortti> why?
11:28:30 <olsner> typedef long double BOOL;
11:28:41 <kmc> they don't carry a proof
11:28:49 <nortti> shouldn't char be enough?
11:29:18 <Sgeo> http://existentialtype.wordpress.com/2011/03/15/boolean-blindness/ just read that, not sure what to think of it
11:29:30 <olsner> char can only hold 8 bits of truthiness
11:29:33 <Sgeo> read as in past tense, not imperative
11:30:46 <nortti> wow... midori is using 41.2MB of RAM
11:31:48 <nortti> by the way are there any browsers with emebedded gecko for linux?
11:32:46 <nortti> now 42.6MB
11:33:24 <nortti> 44.5MB
11:33:38 -!- asiekierka_ has joined.
11:33:38 -!- asiekierka_ has quit (Client Quit).
11:33:41 <kmc> MORE AS THIS STORY DEVELOPS
11:34:02 -!- asiekierka has joined.
11:34:13 <nortti> how can a browser be so bloated?
11:34:32 <nortti> and midori kinda lightweight
11:34:56 <olsner> opera mini (for j2me, at least) runs on <= 2MB of heap
11:35:05 <nortti> I know
11:35:28 <nortti> but it doesn't have html rendering engine running localy
11:35:53 <olsner> no
11:36:19 <Sgeo> Mosaic!
11:36:30 <nortti> links2 uses around 2.5MB on the same page midori is now loading
11:36:31 <Sgeo> (I have no idea how much space Mosaic took up)
11:36:37 <nortti> Sgeo: mosaic-ck!
11:36:47 <nortti> too bad it doesn't like lesstiff
11:37:19 -!- atriq has joined.
11:37:32 <nortti> by the way has anyone of you got arena web browser running=
11:37:38 * Sgeo almost wishes ViolaWWW caught on
11:37:51 <nortti> why?
11:38:08 <nortti> because of it's interesting html extensions?
11:38:14 <nortti> *its
11:38:33 <olsner> oh, it has "page cloning (multiple windows)"
11:38:38 <nortti> which one is used in which situation?
11:39:00 <Sgeo> nortti, the scripting language
11:39:16 <nortti> erwise is pain in the ass to get to build
11:39:29 <nortti> I never got it to run correctly
11:40:09 <Sgeo> Actually, hmm, the language is kind of ugly
11:40:49 <kmc> every language is kind of ugly
11:40:57 <nortti> it id better than javascript?
11:41:04 <nortti> *is it
11:41:16 <Sgeo> nortti, no idea, I barely know a thing about it
11:43:36 <Sgeo> "What follows is a screendump of a demo of an embedded viola application that lets readers of this HTML page communicate by typing or drawing. Like the chess board application above, this chat application can stand-alone (and have nothing to do with the World Wide Web), or be embedded into a HTML document.
11:43:36 <Sgeo> By the way, to make this possible, a multi-threaded/persistent server was written to act as a message relay (and to handle HTTP as well)."
11:44:37 <nortti> awesome
11:44:43 <Sgeo> Sounds AJAXy many years before XMLHttpRequest
11:45:24 <nortti> I should start using violawww and complain about pages not supporting violawww's scripting language
11:51:05 <kmc> also complain if they use more than 6 bytes of memory
11:51:14 <nortti> :D
11:52:10 <nortti> why isn't there a way to run j2me software on linux
11:55:27 -!- Zuu has quit (Ping timeout: 260 seconds).
12:01:15 -!- atriq has quit (Ping timeout: 276 seconds).
12:15:24 -!- Zuu has joined.
12:15:26 -!- Zuu has quit (Changing host).
12:15:27 -!- Zuu has joined.
12:22:33 <fizzie> nortti: There isn't? I was pretty sure there was a J2SE-based J2ME emulgator, I don't see why that wouldn't run under Linux as well as anywhere.
12:22:41 <fizzie> "Write once, run anywhere," after all.
12:23:31 <fizzie> PhoneME project page seems to be dead. :/
12:23:48 <fizzie> Or maybe it's just moved.
12:26:12 <fizzie> NetBeans has a J2ME emulgation thing too.
12:30:29 -!- atriq has joined.
12:32:59 -!- atriq has quit (Read error: Connection reset by peer).
12:35:04 -!- kinoSi has quit (Read error: Connection reset by peer).
12:35:32 -!- kinoSi has joined.
13:04:33 <olsner> nortti: microemulator
13:05:14 <olsner> also http://www.opera.com/developer/tools/mini/ if you manage to get a java plugin working in linux
13:13:27 <Phantom_Hoover> "Water is considered the least toxic chemical compound, with a LD50 of 90 g/kg or more in rats.[3]" -- WP
13:13:41 <Phantom_Hoover> Wait, wouldn't saline solution be even less toxic?
13:15:37 <olsner> "rapid infusion of normal saline can cause metabolic acidosis"
13:18:00 <Phantom_Hoover> Hmm, I'm not sure they keep LD50 data of solutions.
13:20:13 <Phantom_Hoover> But, from that same paragraph: "[saline] has long been believed to be the safest fluid to give quickly in large volumes."
13:26:03 <fizzie> Phantom_Hoover: "least toxic chemical compound".
13:26:37 <Phantom_Hoover> Ah.
13:29:52 <Phantom_Hoover> Hmm, I wonder if something like perfluorohexane might beat even that.
13:30:29 <Phantom_Hoover> Its LD50 is ">5000mg/kg", which is unhelpful.
13:30:49 -!- oonbotti has quit (*.net *.split).
13:30:49 -!- mtve has quit (*.net *.split).
13:30:49 -!- glogbackup has quit (*.net *.split).
13:30:49 -!- atehwa has quit (*.net *.split).
13:30:49 -!- HackEgo has quit (*.net *.split).
13:30:49 -!- EgoBot has quit (*.net *.split).
13:30:49 -!- SimonRC has quit (*.net *.split).
13:30:49 -!- ssue has quit (*.net *.split).
13:30:49 -!- shachaf has quit (*.net *.split).
13:30:49 -!- comex has quit (*.net *.split).
13:32:24 <olsner> I read ">5000g/kg" for a while, before realizing it was unrealistic
13:34:27 -!- MoALTz_ has joined.
13:35:15 <kmc> haha
13:35:58 <Phantom_Hoover> That just represents taking a bath in it.
13:36:16 <olsner> I wonder what the LD50 of excessive body fat is
13:36:48 <olsner> "how fat would you have to be to be 50% dead"
13:37:07 <kmc> what about helium
13:37:27 <kmc> assuming you get enough oxygen in between, shouldn't it be possible to breathe more or less an arbitrary amount of helium without any effect?
13:37:38 <olsner> some necessary substances should come with both a positive and negative LD50's
13:37:41 <kmc> i guess that doesn't count as a "dose" then
13:37:59 -!- MoALTz has quit (Ping timeout: 272 seconds).
13:40:00 <olsner> apart from the minimum amount of oxygen in breathing air (iirc something in the ballpark of 5%), the rest of it probably just needs to be reasonably inert, and I see no reason for helium to be very different from nitrogen there
13:40:06 <Phantom_Hoover> kmc, whatever the human pressure limit is.
13:40:13 <Phantom_Hoover> Oh wait, hmm.
13:40:31 <Phantom_Hoover> Narcosis might kick in pretty soon.
13:41:42 <Phantom_Hoover> WP says helium's 'relative narcotic potency' is 0.045 vs. 1 for nitrogen, and fatal pressure for nitrogen is 10 bar or so.
13:41:54 <Phantom_Hoover> > 10 / 0.045
13:41:55 <lambdabot> 222.22222222222223
13:42:17 <kmc> huh, just ran into a situation where static types would have uncovered not a correctness bug, but a performance bug
13:42:26 -!- david_werecat has joined.
13:42:40 <kmc> i was doing ''.join(a_string_here) in python
13:42:47 <kmc> because that string used to be a list
13:43:33 -!- MoALTz__ has joined.
13:43:54 <Sgeo> Maybe I should try Liskell
13:44:26 <kmc> liskell is dead
13:44:31 <kmc> it's a patch set against GHC 6.old
13:44:36 <kmc> Lisk is a bit less dead
13:46:07 -!- MoALTz_ has quit (Ping timeout: 240 seconds).
13:46:39 <olsner> apparently, xenon has a narcotic potency of 25.6
13:46:54 <Sgeo> "This software is incomplete. Don't try to use it."
13:46:57 * Sgeo sads
13:46:58 <olsner> I'd have expected noble gases to have similar (and low) potencies
13:47:29 <Phantom_Hoover> olsner, narcosis isn't caused by a reaction, though.
13:47:52 <olsner> apparently they don't even properly know what causes it
13:48:04 <kmc> Sgeo: welcome to haskell
13:48:26 <kmc> a bunch of incredibly cool ideas which are each implemented well enough to write a paper and then abandoned
13:48:53 <Phantom_Hoover> olsner, although the WP article does say that it's at least partially due to the gas dissolving inside cell walls and getting in the way.
13:48:57 <kmc> that is not universally true (GHC team are dedicated, skilled software engineers working on a 20+ year old system) but it is depressingly often true
13:49:33 <Sgeo> Is it true of CL too?
13:50:07 <kmc> don't know
13:50:24 <kmc> http://www.lambdassociates.org/blog/bipolar.htm suggests as much
13:50:27 <kmc> but it might be high-octane bullshit
13:50:58 <Phantom_Hoover> High-octane?
13:51:14 <kmc> tl;dr: Lisp is so flexible and powerful enough that you can easily DIY an 80% solution which is good enough for your purposes
13:51:15 <Phantom_Hoover> What, powerful?
13:51:31 <kmc> which means there is no culture of standardizing around mature, complete systems
13:51:31 <olsner> it may be a good description of the behavior of the particular class of lisp programmers it describes
13:52:22 <kmc> Phantom_Hoover: yeah, gasoline (in the USA anyway) is given an octane rating for power density
13:52:36 <kmc> well sorry not power density
13:52:37 <kmc> "The higher the octane number, the more compression the fuel can withstand before detonating."
13:52:37 <Phantom_Hoover> Yeah, but why apply it to bullshit?
13:52:42 <kmc> dunno
13:52:45 <kmc> it's a figure of speech
13:53:01 -!- ogrom has joined.
13:53:11 -!- MoALTz__ has quit (Quit: brb).
13:53:20 <Phantom_Hoover> High-grade would be what I'd normally use more? I dunno, it's just like high-octane seems like it'd be a more potent form of something.
13:53:30 -!- MoALTz has joined.
13:53:38 <Phantom_Hoover> Also yeah, they taught us that in chemistry for some reason.
13:53:41 <kmc> yeah i mean that it's a potent form of bullshit
13:54:14 <olsner> aww, they renamed the high-octane nightmare fuel trope :( http://tvtropes.org/pmwiki/pmwiki.php/Main/NightmareFuel
13:55:03 <Phantom_Hoover> That was actually quite a sensible idea, considering that most people just called it that anyway.
13:55:18 <Sgeo> kmc, I've seen that sentiment elsewhere about Lisp
13:55:24 <olsner> no-one thought to apply the rule of cool?
13:56:32 <Phantom_Hoover> olsner, well I think the big problem was that they had one set of nightmare fuel pages, and then another which had no obvious difference except that the stuff tends to be a bit scarier.
13:57:30 <Sgeo> kmc, more or less the same thing http://www.winestockwebdesign.com/Essays/Lisp_Curse.html
13:57:31 <olsner> hmm, I guess that makes sense
13:58:02 <kmc> yeah in fact i'm not sure i'm summarizing that article or a different one
13:58:22 <kmc> yeah the one you just linked quotes the one i linked
13:58:25 <kmc> that's how i found it actually
13:58:33 <Sgeo> Ah
13:58:53 -!- MoALTz has quit (Ping timeout: 245 seconds).
13:59:10 <Sgeo> I think you were summarizing the one I linked more than the one you linked
13:59:22 <Sgeo> Therefore, we are living in the Tardis monad.
13:59:47 <kmc> i am suspicious of these kinds of arguments though
13:59:51 <olsner> I think this whole "lisp is powerful" idea is only prevalent among lisp weenies
14:00:22 <Phantom_Hoover> high-octane lisp
14:00:23 <kmc> because they play into a certain attitude adopted by many programmers
14:00:26 <olsner> among other things, the whole concept of powerfulness seems too poorely defined to be useful for anything except smugness
14:00:42 <kmc> "i'm a badass ninja who's too smart and clever for the dull corporate world and that's why i can't make anything useful or work with other people"
14:00:50 <kmc> olsner: i agree with that
14:00:57 <kmc> but i do think Lisp is powerful in the vague sense
14:01:10 <kmc> it's powerful in that you can do almost anything in a small amount of code
14:01:13 <kmc> but in an incomprehensible way
14:02:15 <olsner> hmm, that reminds me of perl, but the stereotypical perl coder does seem a bit different from the smug lisp weenies
14:02:21 <kmc> sure
14:02:25 <kmc> every community has their quirks
14:02:40 <kmc> and you're talking about stereotypes not actual people
14:02:46 <kmc> or even unbiased archetypes
14:03:49 <olsner> perhaps perl hackers recognize and appreciate terse and incomprehensible ugly hacks, while lisp coders don't recognize the incomprehensible part and just think it's beautiful and everyone else is stupid
14:04:26 <olsner> yeah, I don't even know any actual people that fit into any of these stereotypes
14:05:29 <kmc> yeah that seems correct from my understanding of the respective stereotypes
14:05:30 * Sgeo vaguely listens to some CL tutorial on YouTube
14:05:44 <Sgeo> Although one of the video titles mentions setq :/
14:06:02 <kmc> it's also funny how the definition of "Lisp" changes depending on what claim you're trying to make about it
14:06:14 <kmc> "Lisp is simple and elegant" => Lisp = tiny subset of R5RS Scheme
14:06:26 <kmc> "Lisp is mature and industrial-grade" => Lisp = ANSI Common Lisp
14:09:25 <Sgeo> I do think CL macros are easier to understand than Scheme macros. This may be a failing on my part though >.>
14:09:48 -!- glogbackup has joined.
14:09:48 -!- oonbotti has joined.
14:09:48 -!- mtve has joined.
14:09:48 -!- atehwa has joined.
14:09:48 -!- HackEgo has joined.
14:09:48 -!- EgoBot has joined.
14:09:48 -!- SimonRC has joined.
14:09:48 -!- ssue has joined.
14:09:48 -!- shachaf has joined.
14:09:48 -!- comex has joined.
14:10:03 -!- glogbackup has left.
14:10:03 -!- glogbackup has quit (Excess Flood).
14:11:50 <olsner> Sgeo: I think you're right
14:12:03 <olsner> I guess the hygienic macros are supposed to be sufficiently better that it's worth the extra complication
14:13:45 <kmc> Scheme's macro system almost defeats the entire point of Lisp
14:13:58 <kmc> but operatives are vastly superior to either option ;)
14:14:31 <Sgeo> Unless you want to do code-walking.
14:14:45 <kmc> how's that?
14:15:12 <Sgeo> How do you statically determine what forms are code to be processed?
14:15:37 <kmc> oh, well, i have absolutely no idea how you "statically" do anything in an fexpr language
14:16:15 <kmc> i think shutt wrote about that a bit but i did not read it :)
14:17:08 <Phantom_Hoover> kmc, googling gives no indication whatsoever what these operatives are.
14:17:31 <kmc> http://web.cs.wpi.edu/~jshutt/kernel.html
14:17:41 <kmc> http://mainisusuallyafunction.blogspot.com/2012/04/scheme-without-special-forms.html
14:21:39 -!- david_werecat has quit (Quit: Quitting...).
14:21:45 <Sgeo> kmc, hence operatives not being superior when you want to do stuff statically
14:22:03 -!- david_werecat has joined.
14:24:11 <kmc> yep
14:25:37 -!- DHeadshot has quit (Read error: Connection reset by peer).
14:25:43 -!- DH____ has joined.
14:26:53 * Sgeo vaguely considers porting some Clojure stuff to CL
14:27:46 -!- asiekierka has quit (Quit: Connection reset by PO).
14:27:52 -!- MoALTz has joined.
14:27:58 <itidus21> the way i see it, coding is a bit like space station repair
14:29:04 * kmc gets popcorn
14:29:11 <itidus21> in order to survive outside the space station you need a fancy suit, im guessing in practice such things are done with robots
14:29:28 <itidus21> but they made some wonderful tv moments
14:29:32 <olsner> coding is usually done with robots, yes
14:29:42 <itidus21> i mean.. repairs to the exterior of a space station
14:29:55 <kmc> a lot of it is done by humans in suits
14:30:00 <itidus21> wow...
14:30:03 <kmc> assembly to
14:30:04 <kmc> too*
14:30:09 <kmc> robots aren't versatile enough
14:30:09 <olsner> no, programmers don't wear suits
14:30:15 <kmc> anyway what does this have to do with programming
14:30:16 <olsner> especially not the ones that do assembly
14:31:00 <itidus21> well.. the problem is you can't do that fancy french wall-jumping in a spacesuit
14:31:17 <Sgeo> ...I don't think a straight transliteration will work
14:31:34 <itidus21> parkour
14:31:40 <kmc> is this analogy going to make any sense at any point
14:32:05 <Phantom_Hoover> Incidentally whilst trying to find out what operatives are I stumbled upon this little... gem: http://emacswiki.org/emacs/WhyDoesElispSuck
14:32:15 <itidus21> so there is this imaginary space whereby someone can do parkour on the moon
14:32:29 <Sgeo> Clojure's defmulti takes a function as an argument. Making a macro would have the macro need to see the function passed in to find out the args, which it can't do
14:32:34 <olsner> space station -> parkour on the moon -> ??? -> programming
14:32:39 <kmc> itidus21 have you considered blogging
14:32:42 <itidus21> but, it's constrained by the need for a suit
14:32:52 <kmc> "7 awesome reasons why programming is like parkour on the moon and this proves ruby is the best"
14:32:55 <kmc> => 999999999 pageviews
14:33:09 <Sgeo> Wait, can just use &rest args, but that uglies the generic.
14:33:20 <olsner> another problem with the moon is that there are no buildings to do parkour on
14:33:34 <kmc> there are a few
14:33:37 <kmc> they're far apart
14:34:02 <itidus21> kmc: it's really for the best if i don't complete the analogy
14:34:05 <Phantom_Hoover> olsner, OTOH you can jump further.
14:34:32 <Sgeo> Space suit analogy: Programming in Erlang is like fixing your space station from inside it: It should keep running during the fix.
14:34:37 <Phantom_Hoover> Man I really want them to make Assassin's Creed 4: Moon.
14:34:38 -!- nooga has joined.
14:34:47 <Sgeo> I just realized that that has nothing to do with space suits.
14:34:59 <itidus21> if i say any more and it will be a case of "i wish i stopped earlier"
14:35:48 <Phantom_Hoover> Sgeo, that'd be far better than now, when they have to turn the ISS off to fix it.
14:36:44 <Sgeo> I honestly hoped that that was where itidus21 was going.
14:37:23 <olsner> itidus21: does your analogy involve space suits being like monads?
14:37:46 <Phantom_Hoover> nonono, parkour is a monad
14:37:59 <itidus21> it is honestly best i stop where i stopped
14:38:04 <olsner> combining burritos and parkour using monad transformers
14:40:01 <Phantom_Hoover> itidus21, hell no, it was just getting good.
14:40:05 <itidus21> or if i do continue it, i need to think very carefully about it
14:40:26 <Sgeo> Why am I still Lisping without paredit?
14:42:26 <itidus21> well, suppose you could impart the knowledge of mathematics to someone without them becoming a mathematician
14:43:12 * Sgeo does a let inside a macro without using a gensym
14:43:35 <Phantom_Hoover> omg visionary
14:43:38 <itidus21> like everything was done by showing them ways they can manipulate the objects around them
14:45:26 <Phantom_Hoover> itidus21, so I suppose you're the exact opposite.
14:45:52 <itidus21> math just feels like a black hole in my mind
14:47:04 -!- nooga has quit (Ping timeout: 256 seconds).
14:47:31 <itidus21> i approach it still like a child]
14:48:20 <itidus21> maybe i don't trust it
14:49:07 <Phantom_Hoover> Yeah, it's always scheming away.
14:49:16 <Sgeo> The knowledge of mathematics without being a mathematician must suck. Knowing facts, but being unable to have real fun with them.
14:49:31 <Phantom_Hoover> Nah, you'd just not care.
14:49:39 <itidus21> i wasn't describing myself
14:49:49 <itidus21> i don't hvae the knowledge
14:49:56 -!- nooga has joined.
14:50:39 <itidus21> but i do find i spend hours and days sometimes puzzling over some trivial aspect of notation because i haven't studied anything
14:51:34 <Phantom_Hoover> radical suggestion #534, maybe study something
14:52:46 <itidus21> i am aware that what i am about to say is wrong, and offensive, which is why i said it would be best if i stopped my analogy earlier
14:53:22 <itidus21> but, one thing i have going for me is that i can think about things without knowing how they work
14:53:27 <itidus21> because i don't know how they work
14:53:36 <olsner> :)
14:54:50 -!- nooga has quit (Read error: Connection reset by peer).
14:55:12 * Sgeo finds himself counting parens too many times for his comfort
14:55:42 <itidus21> hmm however..
14:57:21 <Sgeo> kmc, there's another advantage to non-fexpr macros: They're usually pure-functional (in interface)
14:57:48 <Sgeo> I'm finding it very easy to test my macros via macroexpand
14:59:04 <nortti> olsner: running opera mini under another browser kinda defeats the purpose of very light browser
14:59:42 <Sgeo> nortti, not if host browser doesn't struggle much with this one thing but with many others
15:00:11 <nortti> also new opera mini is kinda unstable on android and it also uses some kind of j2me emulation
15:00:26 <nortti> Sgeo: what do you mean?
15:00:27 <itidus21> i don't like game designs that sit well in mathematics. nor designs that show off some cute concept
15:01:15 <itidus21> i like the way that en passant, castling and pawn promotion make the rules of chess more complicated
15:01:18 <Sgeo> nortti, perhaps the heavyweight browser is only heavy on, say, gmail, and doesn't struggle much with Opera Mini emulator. By visiting Gmail in Opera Mini in host browser, you do save memory
15:01:36 <Sgeo> itidus21, you'll hate Go then.
15:01:46 <Sgeo> Although I guess Go has a few complications.
15:02:10 <nortti> Sgeo: it is heavy on the fucking about:blank
15:02:42 <itidus21> those little stipulations so that if you try to generalize chess you end up trying to generalize castling
15:02:54 <itidus21> i like how messy it is
15:05:26 <Sgeo> I have a feeling that these macros I'm writing actually _cut down_ on ease of doing what I want to do
15:05:49 <Sgeo> It's essentially, at the CLOS level, going to dispatch on a single value
15:06:09 -!- nooga has joined.
15:06:21 <itidus21> also, i think the hard work in game design is coming up with something good which isn't highly derivative
15:06:44 <itidus21> it seems a bit like making music, that if it's a hit is almost random
15:06:50 <Sgeo> Who says "isn't highly derivative" is a requirement?
15:07:09 <Sgeo> Minecraft took heavy inspiration from Infiniminer and Dwarf Fortress.
15:07:36 <Sgeo> All roguelikes are ultimately inspired by Rogue.
15:10:44 <itidus21> and a sort-of-rhetorical question i have there is, are the best video games simply a small seemingly random subset of all possible video games, or are they the fruit of hard work and pure intentions?
15:12:10 <Sgeo> What's the difference?
15:12:30 <Sgeo> Being a "fruit of hard work" does not make it any less part of a subset of all possible video games.
15:13:22 <itidus21> while i can't disagree, part of me finds that quite troubling
15:15:00 <Sgeo> Ugh, I'm pretty sure I need &whole, but not entirely sure whether I can use it in an ordinary lambda list
15:15:43 <itidus21> i guess in general such work is about having a query and finding an answer
15:17:11 <olsner> nortti: you should also be aware that the JVM and stuff probably adds about 150MB to the memory footprint
15:17:53 <Sgeo> Nope, not &whole
15:17:55 <nortti> olsner: I know
15:17:57 <Sgeo> That's a macro thing
15:18:00 * Sgeo faceplants
15:18:11 <olsner> nortti: and also, opera mini on android hasn't been j2me-based for a long time
15:18:19 <nortti> olsner: it hasn't?
15:18:55 <itidus21> Sgeo: ok i can take that as a given. kind of like how a picture is just a very small subset of all possible pictures
15:19:14 <itidus21> ^for some width,height,color depth
15:19:17 <nortti> olsner: there isn't just j2me virtual machine?
15:21:31 <olsner> I don't recall which version it changed, but nowadays it's a real android app
15:22:08 <nortti> probably when it went from rock solid to the current one that crashes if I dobletap too fast
15:22:09 -!- nooga has quit (Read error: Connection reset by peer).
15:22:12 -!- zzo38 has joined.
15:22:55 <itidus21> so speaking of pictures... i wonder if any artists in 2012 will ever get the same reknown as the da vinci, dali, picasso, van gogh, matisse, monet.. and all the others who i haven't heard of
15:28:51 <itidus21> given the development of photography, high-speed photography, digital art, laser printing, etc i think painting on canvas with brushes and paint finds a very traditional niche like chess vs crysis 3
15:30:28 <olsner> nortti: looks like 5.0 was the version that introduced the "native" android port
15:31:05 <nortti> olsner: ok. I was right
15:31:23 -!- MoALTz_ has joined.
15:33:50 <olsner> one would think that an obvious bug like a crash-on-double-tap would've been found and fixed in the years since then
15:34:18 -!- MoALTz has quit (Ping timeout: 245 seconds).
15:35:10 <nortti> olsner: it only crashes on fast doubletap after it start after phone shutdown or prior chrash
15:35:30 -!- zzo38 has quit (Remote host closed the connection).
15:35:38 <olsner> interesting
15:36:20 <nortti> or if I killed it with advanced task killer
15:36:31 <nortti> but after page load it doesn't crash
15:37:27 <nortti> on fast doubletap that is
15:37:40 <nortti> it also seems to leak memory
15:39:28 <nortti> or if it doesn't there must be a hell of a reason for it to start blanking pages because memory is running low if I only have 1 small page open on it and it handle 50 tvtropes pages after crash/reboot
15:39:55 <nortti> oh and everything else including sense is killed with advanced task killer
15:41:43 <nortti> if I reload the blanked pages 1 at the time it eventualy crashes
15:41:48 -!- MoALTz_ has quit (Ping timeout: 245 seconds).
16:02:35 <Sgeo> I know what my next blog post will be:
16:02:47 <Sgeo> Complaining about a problem that doesn't exist in practice.
16:03:05 <Sgeo> It exists in theory though, and THAT BOTHERS ME
16:03:22 <olsner> that's probably enough of a theme to provide the entire blog
16:04:40 <Sgeo> (Note: I don't know whether or not it actually exists in practice. I do know that everyone who I complained about it to claimed that it generally doesn't occur.
16:05:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
16:06:06 <Sgeo> I think Common Lisp has no problems though.
16:06:33 <Sgeo> (And by that I mean theoretically doesn't have the problem I have in mind. Although in practice it probably does. How's that for a braintwister?)
16:06:44 <nortti> Sgeo: what problem?
16:07:02 <Sgeo> nortti, name collisions
16:07:03 -!- mig22 has quit (Quit: mig22).
16:07:28 <Sgeo> Assuming that "Hey, everyone in the world should think up unique names" is not a solution.
16:07:29 <nortti> Sgeo: how does it not exist in practice?
16:07:56 <Sgeo> Dunno, ask a Smalltalker or a Tcl'er, I don't have enough personal experience.
16:08:42 <olsner> isn't packages/modules/namespaces/etc a good solution for that?
16:08:49 <Sgeo> olsner, depends on the system
16:09:08 <Sgeo> If it requires the packages/modules/namespaces to have unique names from eachother, I would say no.
16:09:24 <Sgeo> Because again, it's asking everyone in the world to gensym
16:09:25 <olsner> e.g. let everything get its own unique name (potentially with a very long prefix), then you have another mechanism to remove the prefixes of the stuff you actually use
16:10:36 <Sgeo> olsner, is there a central server? Is there pre-existing unique names (e.g. domain names ala Java)? If not... still possibility for conflict
16:10:54 <Sgeo> Although I grant that with long enough prefixes, chance of collision might be low, hmm...
16:11:06 -!- david_werecat has quit (Ping timeout: 240 seconds).
16:11:59 <Sgeo> I like Common Lisp's way: If you have two packages with conflicting names, just load one, rename it, then load the other
16:12:05 <olsner> cpan and hackage do have a central server, although it's not entirely authoritative it's a good check for whether you ought think up a more unique name for your new library
16:13:07 <kmc> is hackage 2.0 getting anywhere?
16:13:17 <olsner> java's domain name system has good uniqueness, but lacks a way to rename imported things
16:35:02 * Sgeo suddenly notices alexandria's symbolicate
16:35:39 <Sgeo> Could have used that, although sometimes it's nice to have explicit control of what package the symbol goes in
16:35:40 -!- ogrom has quit (Quit: Left).
16:40:40 -!- kidanger has joined.
16:42:42 -!- FreeFull has quit (Ping timeout: 276 seconds).
16:43:11 -!- FreeFull has joined.
16:59:27 <kmc> /nick typedef_typename
17:02:06 * pikhq_ finds it weird that so many Javaers are opposed to static import...
17:02:27 <pikhq_> import static java.lang.Math.*; // Tada!
17:02:35 <pikhq_> cos(PI * theta); // works
17:03:25 <pikhq_> And yet, it's somehow *bad style* in the language.
17:03:56 <kmc> http://docs.oracle.com/javase/1.5.0/docs/guide/language/static-import.html does not consider it "bad style" but "use sparingly"
17:04:26 <olsner> I think it was supposed to only discourage from misuse, not all use
17:04:35 <kmc> people love "never use X" rules
17:04:39 <kmc> cause they are simple
17:04:42 <kmc> but rarely the right answer
17:05:14 <pikhq_> And the more verbose the better, right.
17:05:22 <kmc> when http://livegrep.com made its debut on reddit, there was a commenter shocked to discover that the Linux kernel contains "over 50" uses of 'goto'
17:06:21 <pikhq_> That low? Doesn't it contain a bytecode interpreter?
17:06:34 <pikhq_> (and thus *really should* use computed goto)
17:06:37 <kmc> it contains probably thousands of uses of goto
17:06:42 <kmc> and yes several bytecode interpreters
17:06:43 <Lumpio-> Did... did you just use a * in Java!?
17:06:45 <Lumpio-> To import!?
17:06:47 <Sgeo> computed goto?
17:06:51 <kmc> but also uses goto for error handling ubiquitously
17:06:59 <Lumpio-> Never do that! You're supposed to painstakingly type out each single thing you use from each package!
17:07:10 <kmc> Lumpio-: no you're supposed to use your fancy IDE to type it out for you
17:07:15 <kmc> Java isn't a language for humans, you see
17:07:16 <pikhq_> Sgeo: In GNU C, you can take the address of labels, and dereference them in a goto.
17:07:27 <pikhq_> Sgeo: This is handy for implementing certain weird forms of dispatch.
17:07:28 <olsner> I guess they just stopped counting at 51 and decided the whole kernel is beyond repair
17:07:30 <Lumpio-> ah
17:07:32 <pikhq_> Sgeo: For instance, threaded code.
17:07:40 <kmc> you can even pass a label address into inline assembly :3
17:08:18 <pikhq_> Sgeo: And threaded code using computed goto is basically the way to fast interpreters.
17:08:46 <kmc> did you see the thing about how the LuaJIT interpreter pre-decodes the next instruction before its computed jump
17:09:06 <kmc> to keep functional units busy in the event of a mispredicted indirect jump
17:09:34 <pikhq_> No, but it makes a lot of sense.
17:09:50 <kmc> http://nominolo.blogspot.co.uk/2012/07/implementing-fast-interpreters.html
17:12:25 <pikhq_> Yeah, pretty much.
17:23:47 -!- nooga has joined.
17:27:25 -!- MoALTz has joined.
17:42:14 -!- asiekierka has joined.
17:53:49 <Phantom_Hoover> OK so I turned adblock off on reddit, all the ads I've seen so far have been thanks for turning off adblock.
17:53:57 <Gregor> lol
17:56:54 <Phantom_Hoover> OK wow I just checked 6 different pages; all but one of them have one of two thanks-for-turning-off-adblock ads.
17:57:25 <Phantom_Hoover> And the other one is for some reddit gift initiative.
17:58:40 <Gregor> Amazing.
17:59:28 <Phantom_Hoover> Remind me how this site makes money.
18:11:26 <kmc> they don't
18:11:41 <kmc> they were down to 1 engineer for a while
18:13:51 <pikhq_> Phantom_Hoover: I suspect they exist primarily as a leech on Advance Publications.
18:14:45 <pikhq_> You don't have to make money when you can convince some corporation they should throw money at you.
18:44:07 -!- asiekierka has quit (Remote host closed the connection).
19:19:10 -!- impomatic has joined.
19:19:44 <impomatic> Hi, how do I reset my esolang wiki password when I didn't enter an email address? :-)
19:22:35 <Phantom_Hoover> You yell at elliott until he resets it for you.
19:22:54 <Phantom_Hoover> (He's online, just not in the channel; use /msg.)
19:23:31 <impomatic> Thanks... messaged
19:24:43 <impomatic> I have the Mouse book, so I thought I'd update the wiki a bit :-)
19:52:54 -!- oerjan has joined.
19:58:39 -!- epicmonkey has quit (Ping timeout: 265 seconds).
20:01:29 -!- nooga has quit (Read error: Connection reset by peer).
20:04:17 <oerjan> oh dear, good math bad math does a monad tutorial
20:05:14 <kmc> :(
20:05:33 <oerjan> http://scientopia.org/blogs/goodmath/2012/08/19/monads-and-programming/
20:05:51 <kmc> think i won't click that
20:06:06 <nortti> why?
20:06:22 <kmc> because it's probably wrong in an infuriating way
20:06:31 <oerjan> :D
20:06:36 <kmc> but even if it's a fine monad tutorial, it's still one more monad tutorial in a world that already has too many
20:10:11 -!- monqy has joined.
20:10:53 <kmc> and it will remind me how fucked the teaching of Haskell is
20:11:19 <oerjan> technically he spends most of the time on scala and pure category theory
20:11:38 <kmc> okay
20:12:05 <oerjan> he was already doing a ct series
20:32:04 -!- heroux_ has quit (Ping timeout: 246 seconds).
20:36:28 -!- kinoSi has quit (Read error: Connection reset by peer).
20:36:56 -!- kinoSi has joined.
20:41:38 -!- atriq has joined.
20:45:38 -!- soundnfury has joined.
20:48:04 <Phantom_Hoover> kmc, what if it's a thoughtful article for people who know about monads?
20:48:32 <kmc> well oerjan described it as a "monad tutorial" >_<
20:48:49 <Phantom_Hoover> Oh, he fluffed the definition of monads.
20:48:50 <kmc> good math bad math already ran a completely wrong article about finger trees
20:48:56 <Phantom_Hoover> Yeahno.
20:48:56 <kmc> long ago
20:50:41 <Phantom_Hoover> (He gets the M a part and the return :: a -> M a, but then he says something about... "An operation which takes a function that transforms a value wraped in M into another value (possibly with a different type) wrapped in M."
20:50:44 <Phantom_Hoover> *)
20:51:13 <Phantom_Hoover> At first I thought he'd been going for the return/join/fmap definition and forgot join, but that third one isn't fmap either.
20:52:01 <soundnfury> you know, if so many otherwise intelligent people have difficulty understanding monads, maybe they're just a bad idea.
20:52:16 <olsner> hmm, that sounds like m (m a -> m b) -> ??? or something
20:53:13 <kmc> soundnfury: often people think they're confused about monads when they're actually confused about something else
20:53:16 <Phantom_Hoover> I'd say he means (m a -> m b) -> ???, but that's just as bad.
20:53:30 <kmc> like polymorphism, type classes, or just basic haskell shit
20:53:35 <olsner> maybe it is fmap, if you add a comma after "operation which takes a function"
20:53:44 <soundnfury> <kmc> or just basic haskell is shit <-- FTFY
20:53:46 <soundnfury> ;P
20:53:52 <kmc> yeah you're not trolling at all
20:53:53 <olsner> the operation takes a function, and the operation transforms a value ...? aduno
20:54:38 <Phantom_Hoover> kmc, also there's the aspect that people generally want to know what monads "really are", because even with the definition doesn't obviously associate with any of their uses.
20:54:57 <kmc> yeah
20:55:28 <kmc> i think "otherwise intelligent" people don't have too much trouble if they just learn some use cases of monads and worry about the abstract idea later
20:55:34 <kmc> at least that's the advice i have given and heard a lot
20:55:38 <kmc> but what do i know
20:55:58 <Phantom_Hoover> That's probably the best advice to give.
20:56:05 <kmc> nobody in the haskell community seems interested in finding the empirically best way to teach things
20:56:15 <kmc> we just shout at each other about how our pet explanation is best
20:56:18 <kmc> with nothing to back it up
20:56:55 <Phantom_Hoover> So it's all other programming didactery writ small?
20:57:06 <kmc> soundnfury: you might be interested in http://byorgey.wordpress.com/2009/01/12/abstraction-intuition-and-the-monad-tutorial-fallacy/
20:57:09 <kmc> if you have not seen it
20:57:17 <olsner> oh, "Each element of a monadic sequence in Haskell is an instantiation of the monadic functor"
20:57:27 <kmc> what
20:58:04 <atriq> The...
20:58:06 <atriq> Monadic Functor
20:59:10 <oerjan> atriq: iirc he actually means functor in the categorical sense
20:59:22 <atriq> Oooh
20:59:25 <Phantom_Hoover> atriq, monads are functors, remember?
20:59:50 <oerjan> i was a bit miffed that he only mentioned the natural transformations much later, though
21:01:03 <olsner> whatever that article is about it doesn't seem to apply for monads in haskell, afaict
21:01:33 <oerjan> well Monads _should_ be Functors, it's just not required for hysterical raisins
21:01:44 <Phantom_Hoover> That's why I didn't capitalise.
21:02:51 <olsner> def flatMap[T, U](op: List[T] => List[U]): List[U].
21:03:21 <oerjan> olsner: scala's flatmap is as close to haskell's >>= as you can get in that language
21:03:49 <olsner> I think that's the mumbo jumbo operation he talked about anyway
21:04:07 <oerjan> he prefers scala's syntax to haskell's, that maniac
21:04:31 <oerjan> although he doesn't mention do notation at all.
21:04:37 <olsner> but I guess that flatMap can be used to implement =<<, even though it's Wrong?
21:05:10 <oerjan> oh hm the type looks strange indeed
21:06:02 <olsner> oh, and he later claims that >>= is "deeply connected with the fmap operation"
21:06:17 <olsner> "I really prefer map and flatMap to >> and >>="
21:08:39 <oerjan> olsner: well it _is_ deeply connected in the category theory formulation
21:08:46 <olsner> hmm, ok
21:09:47 <olsner> something about >>= being a combination of fmap and join?
21:10:07 -!- zzo38 has joined.
21:10:07 <olsner> is flatMap supposed to be join then?
21:13:28 <zzo38> I was at anime convention for three days ending today
21:13:31 <oerjan> olsner: flatmap is >>= i say
21:13:35 <zzo38> I have "zawa zawa" sign
21:13:42 <oerjan> i think he must have got the type wrong
21:14:37 <oerjan> def
21:14:38 <oerjan> flatMap [B] (f: (A) ⇒ GenTraversableOnce[B]): List[B]
21:14:47 <oerjan> i think that's the actual type for lists
21:15:13 <olsner> hmm, where's the List[A]?
21:15:22 <oerjan> well, there's an even more general one with implicit conversion to a different type
21:15:43 <atriq> zzo38: were there many homestuck fans
21:15:59 <zzo38> atriq: Not as far as I know, but I don't know really
21:16:00 <oerjan> olsner: flatmap is a method on what would be the first argument of >>=
21:16:36 <atriq> zzo38: were there any people with grey facepaint and orange horns?
21:16:38 <oerjan> so List[A] is the class flatmap is defined as a method in
21:16:49 <olsner> ah, of course, this is Java after all
21:17:07 <oerjan> olsner: *scala
21:17:27 <zzo38> atriq: I think I saw some with grey facepaint, and some with orange horns, but none that had both
21:17:38 <atriq> How odd
21:17:42 <atriq> Anyway, goodnight
21:17:48 -!- atriq has quit.
21:23:17 <zzo38> I played some card game in there once that you have a clock zone, level zone, stage (front and back), stock, and then you can attack and damage is place card in clock zone. You can also place cards in your clock zone by yourself, and if it reaches seven then move one to your level zone. If you have four level cards you lose, but the more level cards you have the more cards you are able to play.
21:24:02 <zzo38> Level and clock zone card can have a card of the correct color to play another card in a different zone, and some cards have a special effect in a clock zone.
21:24:19 -!- Vorpal has quit (Ping timeout: 260 seconds).
21:32:37 -!- oerjan has quit (Quit: Good night).
21:34:31 -!- MoALTz has quit (Ping timeout: 244 seconds).
21:36:51 <zzo38> Someone has suggested that I (or my brother) write a manga based on my Dungeons&Dragons game; however, I only write text of it, not the manga.
21:47:00 -!- pikhq has joined.
21:47:06 -!- pikhq_ has quit (Ping timeout: 245 seconds).
22:20:42 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
22:21:13 -!- Phantom_Hoover has joined.
22:21:13 -!- kidanger has quit (Quit: Quitte).
22:29:46 <nortti> 1~
22:39:25 <Phantom_Hoover> Uhh... wait, if a torrent has an availability of less than one that's Very Bad, right?
22:43:31 <kmc> butts
22:43:53 <kmc> it seems unusually quiet here and in other channels i'm in
22:43:54 <zzo38> Maybe it depend on what file you are trying to download?
22:44:00 <kmc> is everyone on holiday or something?
22:44:20 -!- david_werecat has joined.
22:44:25 -!- david_werecat has quit (Client Quit).
22:47:00 <Sgeo> Someone pointed me to a library that has a useful function but if Common Lisp supported the feature I wanted it to support I wouldn't need it
22:47:12 <Sgeo> And said feature would be far more convenient to use
22:48:27 <kmc> what feature
22:49:22 <Sgeo> A way to specify in an ordinary lambda list a variable that receives all arguments as though through &rest but still lets other arguments as though normal
22:49:52 <Sgeo> As in a b c &key x y z &all all
22:50:21 <Sgeo> all will contain the values passed in to a b and c and the keywords and their .. etc
22:50:22 <Sgeo> In such a way to let me apply someotherfunction all
22:50:42 <kmc> cool
22:50:54 <kmc> do you know of any language which has this feature?
22:51:23 <kmc> you can sort of do it with @-patterns in Haskell, at least for non-curried functions
22:51:35 <Sgeo> Hmm. Tcl might be able to do something like it.
22:52:28 <Sgeo> It probably isn't as useful there though
22:53:02 <Sgeo> My main purpose in not just using &rest args is so that documentation tools work sanely
22:53:06 <Sgeo> And not just say "Oh, it's a function that takes any arguments"
22:55:21 <kmc> yeah, makes sense
22:56:25 <kmc> what are some good questions to ask a prospective employer which is an early-stage startup?
23:08:21 <Phantom_Hoover> "When you inevitably fail, how much money will I have?"
23:08:41 <Phantom_Hoover> Actually that works way better without the 'inevitably'.
23:10:46 <kmc> heh
23:11:07 <kmc> well if the company fails then the stock is worthless
23:11:17 <kmc> so that depends entirely on me and how much of my salary i manage to save away before it fails
23:11:51 <Phantom_Hoover> "How much money will I have earned?"
23:14:49 <kmc> so i should ask them how long until their company fails?
23:14:49 <kmc> that seems reasonable
23:16:17 <Phantom_Hoover> OK no but from my naive perspective it seems like a very good idea to nail down whether you're going to be left with nothing if they fail.
23:17:16 <kmc> well yeah
23:19:18 <Sgeo> I would have no problem with monkey-patching Object if the names of added methods were namespaced.
23:19:29 <Sgeo> (In languages known for ability to monkey-patch Object)
23:19:33 -!- impomatic has quit (Quit: impomatic).
23:20:57 <shachaf> kmc: Are you being prospectively employed?
23:20:58 <kmc> i think the reasonable and safe assumption is that nothing except money in my bank account has any value if the company "fails"
23:22:28 <kmc> which theoretically could include money from previous sale of vested stock, but i don't know anything about selling private equity and i'm not going to count on it happening prior to an acquisition or IPO
23:22:34 <kmc> shachaf:maybe
23:24:24 <kmc> i was not being sarcastic btw
23:24:29 <kmc> i think "how long before your company fails?" is a fine question
23:24:46 <shachaf> That's a pretty common question, maybe with slightly different phrasing.
23:24:46 <kmc> certainly "how long can you survive without revenue" is an important and standard question
23:25:01 <kmc> it's called "runway"
23:25:09 <kmc> for obvious reasons
23:25:14 <Sgeo> kmc's company is failing?
23:25:18 <shachaf> Unless you're talking to an aviation startup.
23:25:26 <kmc> we should start an incubator named JATO
23:25:33 <kmc> Sgeo: i'm not currently employed...
23:25:35 <Sgeo> Ah, just read scrollup
23:25:38 <shachaf> Sgeo: kmc is moving to SF, I heard.
23:25:39 <kmc> do try reading the scroll -- yeah
23:25:42 <kmc> shachaf: lies
23:25:53 <shachaf> kmc: All early-stage startups are in SF.
23:25:55 <shachaf> By law.
23:26:01 <kmc> no they're all in delaware
23:26:05 <shachaf> Good point.
23:26:11 <kmc> glad that's settled
23:26:23 <shachaf> But their employees all move to SF.
23:27:27 <shachaf> kmc: Maybe you should ask in #startups. I hear they're experts.
23:27:35 <kmc> a) is that a thing, and b) is it terrible
23:27:48 <shachaf> Yes, it's a thing. You've previously joined it to troll them.
23:27:56 <shachaf> You ended up discussing stack canaries or something.
23:28:06 <kmc> is it full of people who have an idea for "the next facebook" and "just need a code ninja" to make it happen?
23:28:06 <shachaf> It's more or less #hn, I think.
23:28:10 <kmc> ok
23:28:16 <kmc> i don't remember trolling them but it does sound like something i'd do
23:28:33 <shachaf> I don't think so, but maybe.
23:28:45 <shachaf> I think it's all about the code rock stars.
23:29:23 <Sgeo> I feel sad that I'm not ambitious enough to try to do something like make a startup
23:29:35 <kmc> i have an idea for the next drug empire and just need a chemist ninja to make it happen
23:29:41 <kmc> Sgeo: me too
23:29:53 <Phantom_Hoover> what's a stack canary
23:29:54 <kmc> (i'm not ambitious enough, and to a lesser degree i feel sad about that)
23:30:04 <kmc> i don't think ambition is a good thing by itself though
23:30:09 <kmc> it's only good if you use it to help people
23:30:17 <kmc> and our society provides more opportunities to use it to hurt people
23:30:21 <kmc> so maybe on balance a lack of ambition is better
23:30:37 <shachaf> That's just the sort of thing an unambitious person would say!
23:30:39 <Sgeo> What does selling a product that, if it were free, might have actually lived up to its name count as?
23:30:54 <kmc> Phantom_Hoover: a mechanism for detecting buffer overflow attacks
23:31:02 <kmc> you write a magic value onto the stack and then later you check to see if it's still there
23:31:15 <kmc> before you perform a return to the address saved on the stack
23:31:17 <kmc> google knows more
23:31:45 <Phantom_Hoover> I was hoping it was nonsense :(
23:31:50 <kmc> no sorry
23:32:33 <shachaf> kmc: So you're not moving to SF?
23:32:39 <kmc> not in the immediate future
23:32:43 <shachaf> I heard even nelhage was moving to SF.
23:33:00 <kmc> what i originally said, which you have been repeatedly misquoting me on, is that I think it's likely that one day I will move to SF
23:33:15 <shachaf> I haven't been misquoting you! I've been spreading rumours.
23:33:16 <kmc> i like the city, and have a high expectation of finding a nice job there
23:33:20 <kmc> i do wish you would cut it out
23:33:23 <shachaf> Oh.
23:33:23 <shachaf> OK.
23:33:25 <kmc> i have no plans to move to SF
23:33:36 <kmc> i don't even have plans to make plans to move to SF
23:33:59 <kmc> because i also like boston, and have a high expectation of finding a nice job here
23:34:05 <kmc> and so inertia wins
23:34:53 <shachaf> Phantom_Hoover's attempt at trolling #startups fails.
23:35:08 <Phantom_Hoover> Fuckers just kept talking about gay.
23:35:13 <shachaf> Sgeo is up next!
23:35:21 <kmc> i did leave NYC without a job or a plan and decided to move to Boston over SF
23:35:26 <Sgeo> shachaf, I just wanted to see what was going on
23:35:32 <Sgeo> I'm not usually a troller
23:35:33 <kmc> gay?
23:35:34 <shachaf> There should be trolling commentators.
23:35:42 <kmc> shachaf: there are, on 4chan and somethingawful
23:35:43 <Sgeo> Although I guess sometimes I troll various language channels
23:35:55 <Sgeo> Recently #lisp about whether code-walking is really necessary.
23:36:48 <kmc> shachaf: maybe once the SF-LA high speed line is complete i will move to SF
23:36:51 <kmc> and i don't even want to go to LA!
23:36:55 <kmc> but i like riding high speed trains
23:39:01 <shachaf> Maybe you should move to .fi
23:39:12 <ion> Can i move to the domain, too?
23:39:18 <ion> phantom_hoover: Gay startups?
23:40:07 <shachaf> kmc: Did you ever read _Impro_?
23:40:40 <kmc> no
23:40:53 <shachaf> Good book.
23:40:53 <Phantom_Hoover> ion, yes.
23:41:18 <kmc> a startup that wants to have sex with other startups
23:41:35 <Phantom_Hoover> As opposed to startdowns.
23:41:39 <Phantom_Hoover> kmc, move to Edinburgh!
23:45:07 <Phantom_Hoover> Wait.
23:45:08 <Phantom_Hoover> Wait.
23:45:12 <Phantom_Hoover> Move to Hexham!!!!
23:45:46 * shachaf should keep in mind not to annoy kmc because then he'd leave this channel too and that would be sad.
23:46:29 <kmc> i'm not going to move to hexham
23:47:51 <Phantom_Hoover> wh
23:47:52 <Phantom_Hoover> why
23:48:52 <Phantom_Hoover> Well it's apparently dull as dishwater, but other than that??
23:49:08 <shachaf> kmc: Do you know how Win32 functions keep backwards compatibility?
23:49:31 <shachaf> Apparently the standard thing is that you pass them a struct whose first element is the sizeof the struct.
23:50:36 <Phantom_Hoover> ...what, did they keep the size of sizeof the same for 64-bit?
23:51:06 <shachaf> Well, no, the ABI doesn't have to be the same for the 64-bit API, presumably.
23:51:15 <kmc> shachaf: that's sensible
23:51:25 <kmc> i do think many structs should work that way
23:51:30 <kmc> file formats in particular
23:51:33 <shachaf> But when they want to add elements to the struct, they just do it, and then disambiguate by the size.
23:52:14 <shachaf> It makes some sense.
23:52:32 <shachaf> For APIs, as opposed to file formats, what's the advantage of sizeof as opposed to a version number?
23:54:51 <kmc> simpler code, if you're just appending fields to the end
23:55:08 <kmc> also simpler code for the client
23:55:31 <kmc> foo.size = sizeof(foo);
23:55:52 <kmc> less chance you pick the wrong version number
23:56:10 <shachaf> The version number would presumably be a constant in a .h file.
23:56:20 <shachaf> But I suppose so...
23:56:25 <kmc> but you could still mess it up more easily
23:56:35 <kmc> and this way is friendlier to macros too
23:57:18 <shachaf> It means you can't have two versions with a common ancestor that have the same size struct. But that's probably something you try to avoid anyway.
23:59:12 -!- derdon has quit (Remote host closed the connection).
2012-08-20
00:01:20 <zzo38> I have been told about make a computer, to make a BIOS ROM to be shadow, and can use DMA for hard drive and optical drive.
00:02:37 <kmc> yeah, i was assuming a centralized vendor with a single linear sequence of struct versions
00:02:46 <kmc> (you can deprecate and ignore some fields, of course)
00:06:44 <zzo38> I have thought about using the sizeof command in C to identify structure types in macros, by the size of one of the elements, or something like that. If you can use a zero-length array field, then you can use it not takes up space but can be use with sizeof(b.a[0]) to see what size of type using
00:07:37 -!- DHeadshot has joined.
00:07:43 -!- DH____ has quit (Read error: Connection reset by peer).
00:12:28 <shachaf> >>> False, True = True, False
00:15:11 <Sgeo> shachaf, all you neeed are Frue, Talse, and Floyd
00:15:23 <Sgeo> oerjan knows what I'm talking about, but he's not here right now
00:15:47 <shachaf> >>> False, True = True, Fnord
00:16:15 <Sgeo> http://www.sir-toby.com/nomic-archives/frc/ftp.nvg.ntnu.no/pub/frc/29
00:16:35 <kmc> >>> 256 is 255+1
00:16:35 <kmc> True
00:16:35 <kmc> >>> 257 is 256+1
00:16:35 <kmc> False
00:17:03 <Sgeo> is?
00:17:10 <kmc> python has an 'is' operator
00:17:10 <Sgeo> Are you prologging?
00:17:13 <Sgeo> Oh
00:17:20 <kmc> it tests object identity
00:17:40 * Sgeo used to live in Python
00:17:40 <kmc> the CPython interpreter interns small integers but not large ones
00:17:43 <Sgeo> This is embarrassing.
00:17:53 <kmc> Sgeo: i... don't know what that means
00:18:08 <Sgeo> As in, for many years, Python was my language of choice
00:18:14 <Gregor> kmc: He's admitting to the many years of his life spent being digested by a python.
00:18:21 <kmc> Sgeo: it's a fine language
00:18:26 <kmc> it is my language of choice for many things
00:18:42 <kmc> it has many flaws yes
00:18:45 <kmc> so do all of the other languages i know
00:19:10 <Sgeo> kmc, what are Kernel's flaws?
00:21:01 <kmc> uh i am talking about languages as tools for actually doing things
00:21:10 <kmc> not as objects to wank over on IRC
00:21:25 <kmc> do you still want a list?
00:22:19 <Sgeo> Oh, well, I guess main flaw then is lack of libraries?
00:22:34 <kmc> that is one of many
00:22:51 <kmc> how many people in the world have written more than 1000 lines of Kernel code?
00:23:00 <kmc> the answer to that question may very well be "one"
00:23:14 <kmc> most projects require working with other people
00:23:21 <Sgeo> How is Common Lisp as a tool for doing things?
00:23:32 * Sgeo knows how Tcl was, at least for the one bot he made
00:23:35 <kmc> also, there is only one extant implementation of Kernel, right?
00:23:52 <kmc> is it robust? is it fast? does it have necessary tools like a debugger, profiler, etc?
00:24:09 <kmc> well, a lot more people know CL than know Kernel ;P
00:24:27 <kmc> and it's an old language with a bunch of implementations and tools
00:24:33 <kmc> and libraries
00:24:55 <kmc> but still much less popular than, say, Python
00:25:11 <kmc> Lisp advocates will say that this is OK because the people who know Lisp are better (better programmers, and better human beings generally)
00:25:20 <kmc> (Haskellers say the same thing too)
00:25:24 <kmc> there is something to that
00:25:34 <kmc> but it's not always enough
00:25:47 <kmc> some projects just require a lot of code
00:26:01 <kmc> especially if you do not have time to sit around and think up the most clever way to do it
00:26:43 <Sgeo> Wanted to use a library. Because I wanted to give someone else just a bunch of files so they could run the bot, rather than telling them to install ActiveTcl, I was stuck to one implementation (tclkit). I had a hard time getting a library I needed to work properly on it, and ended up using an obsolete version of the library. Said obsolete version is missing features that I would have found useful.
00:28:57 <kmc> Sgeo: if you want to talk about the language design itself, my biggest concern with a language like Kernel is that it will be very hard to make an efficient implementation
00:29:03 <kmc> anything resembling a compiler
00:29:19 <kmc> but i have not read what Shutt wrote on that topic, so I can't claim to be an expert
00:31:09 <kmc> programmers spend too much time talking about languages
00:33:29 <shachaf> , Writes Area #Esoteric Man
00:33:32 <kmc> yeah
00:33:38 <kmc> i do realize what channel i'm in
00:33:56 <kmc> which is why i haven't ranted at Sgeo a lot more already :)
00:34:51 <Sgeo> Yeah, I have a feeling that if talking about languages isn't your thing, you won't like me or my blog
00:35:10 <Sgeo> Speaking of which, I should start writing my post
00:35:59 <kmc> i do like talking about languages quite a lot :)
00:36:16 <kmc> but it's important to have perspective
00:36:36 -!- kinoSi has quit (Read error: Connection reset by peer).
00:36:40 <kmc> if you are talking about overall success of a project or company
00:37:04 -!- kinoSi has joined.
00:37:14 <kmc> then the design of a language is less important than its ecosystem
00:37:29 <kmc> and the choice of language is less important than other technical decisions
00:37:48 <kmc> and technical decisions are often less important than business decisions
00:38:15 <kmc> obviously you can choose a language which is so wrong for the task that it cripples the company
00:38:23 <kmc> but i don't think many web startups fail because they picked python over ruby or vice versa
00:38:30 <shachaf> #esoteric can point to dozens of those!
00:38:31 <oonbotti> Nothing here
00:38:41 <shachaf> #help
00:38:42 <oonbotti> You can get help about specific command with #help <command>. Commands: #echo, #cat, #ls, #rm, #writefile, #cc, #exec, #msg, #readmsg, #forth, #loadforth, #eliza, #/etc/passwd
00:38:50 <shachaf> That's a terrible bot prefix.
00:38:51 <Sgeo> Channels!
00:38:55 <Sgeo> So many channels!
00:39:39 <Sgeo> #cc exists
00:39:42 <Sgeo> And is popular
00:39:43 <kmc> PHP is an awful, awful language but it has a huge amount of documentation, libraries, people, etc.
00:39:51 <kmc> and an implementation which makes it very easy to get started
00:40:01 <kmc> and this is why PHP is so successful, for good or for ill
00:40:30 <Sgeo> AHHAHAHA
00:40:34 <Sgeo> I am in so many channels right now
00:40:43 <Sgeo> #/etc/passwd is a valid channel name
00:40:43 <oonbotti> root:x:0:0:Root Administrator:/root:/bin/ksh\nnobody:x:99:99:Unprivileged User:/dev/null:/bin/false\nwww:x:80:80:Web Server User:/var/www:/bin/false\nmessagebus:x:25:25:DBUS Daemon User:/dev/null:/bin/false\nhaldaemon:x:26:26:HAL Daemon User:/dev/null:/bin/false\njuhani:x:1000:1000:Linux User,,,:/home/juhani:/bin/ksh\n
00:40:51 <kmc> #/etc/shadow
00:40:58 <kmc> :(
00:41:05 <shachaf> #ls
00:41:05 <oonbotti> A
00:41:08 <shachaf> #cat A
00:41:27 <shachaf> #/etc/crontab
00:41:29 <kmc> #:(){ :|:& };:
00:41:31 <pikhq> #whoami
00:41:56 <kmc> #ls
00:41:56 <oonbotti> A
00:42:02 <kmc> #gcc
00:42:12 <shachaf> nortti: Your bot is trouble.
00:42:14 <kmc> #cc
00:42:42 <pikhq> #uptime
00:42:54 <kmc> #ass-butts
00:44:05 <kmc> Sgeo: what's your blog post about?
00:44:14 <Sgeo> kmc, it's going to be about name conflicts
00:44:21 <kmc> do you have a blog already?
00:44:30 <Sgeo> kmc, I linked it before?
00:44:43 <Sgeo> http://sgeoster.blogspot.com
00:44:47 <kmc> ah, i missed it
00:45:01 <kmc> not much content yet ;)
00:45:56 * Sgeo goes AFK for a bit to organize his thoughts
00:46:21 <Sgeo> It strikes me that, once I'm working in a corporate environment, I won't be able to just take a shower to collect my thoughts.
00:46:26 <Sgeo> I tend to do that when programming.
00:49:12 <kmc> hey cool, i missed this article the first time around: https://blogs.oracle.com/ksplice/entry/the_top_10_tricks_of
00:49:23 <kmc> Sgeo: a lot of office buildings have showers actually
00:49:43 <kmc> it's really nice if you are biking to work
00:49:46 <kmc> or sleeping under your desk
01:00:56 <Sgeo> fwiw, I've seen libraries for accessing Python stuff from CL
01:00:59 <Sgeo> It looks unmaintained though
01:01:39 <Sgeo> It occurs to me that what would be very good would be a Perl FFI for CL... allowing access to CPAN stuff
01:02:26 <kmc> that would be cool
01:04:53 <kmc> shachaf: do you know about the old Linux exploit relating to /etc/cron.d and corefiles?
01:06:43 <Sgeo> FWIW, it's possible to talk to .NET from CL
01:06:56 <Sgeo> But the tool's name is about as understandable as Perl
01:07:03 <kmc> does it work?
01:07:10 <Sgeo> Haven't tried it
01:07:13 <Sgeo> It's called RDNZL
01:07:41 <Sgeo> http://weitz.de/rdnzl/
01:09:56 <Sgeo> "RDNZL is currently targeted at Microsoft Windows."
01:13:12 <Sgeo> "About the name: It was pretty clear to me from the beginning that the name of the library should be "RDNZL." However, I'm not sure what this acronym exactly stands for. Surely, "L" is for "Lisp" and "DN" is for "DotNet". The rest? You'll figure it out... :) "
01:13:17 <Sgeo> http://globalia.net/donlope/fz/songs/RDNZL.html
01:14:54 * Sgeo wonders if that's suitable for use even if something might expect a .NET library
01:14:56 <Sgeo> Hmm
01:15:33 <Sgeo> (In particular, I have Grandroids in mind)
01:15:57 <Sgeo> Oh hey http://www.cliki.net/perl-in-lisp
01:16:13 <Sgeo> "Perl in Lisp is not under active development"
01:16:19 <Sgeo> Oh, it's because there's a thing in CPAN
01:20:35 <Sgeo> Example use:
01:20:36 <Sgeo> (asdf:operate 'asdf:load-op :perl-in-lisp)
01:20:36 <Sgeo> (perl::eval-perl "3 + 4") ==> 7
01:20:36 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:20:39 <Sgeo> Well, that's ugly
01:52:52 <shachaf> kmc: Nope.
01:59:25 <shachaf> kmc: http://www.win.tue.nl/~aeb/linux/hh/hh-12.html#ss12.2 ?
02:07:30 <kmc> yeah
02:08:55 <shachaf> Wait, so what's the bug? That you can dump a core file in an arbitrary directory?
02:09:08 * shachaf looks at page again.
02:09:26 <kmc> yeah
02:09:36 <kmc> normally setuid programs can't dump core
02:09:48 <kmc> but linux supported a mode where setuid programs could dump a core which was only readable by root
02:10:23 <kmc> setuid: ruining unix since 1970
02:10:30 <shachaf> Where's the setuid in that program?
02:10:45 <shachaf> It looks like it just forks and kills its child with SEGV.
02:13:53 <kmc> hm
02:14:48 <kmc> maybe it's just that the cwd is not writeable by the user
02:15:00 <kmc> maybe there is another variant of this which involves setuid
02:17:45 <pikhq> Punching a giant big hole through a security scheme will do that.
02:18:27 * shachaf tries to figure out how to get a program to dump core at all.
02:20:29 <shachaf> Ah.
02:20:37 <pikhq> shachaf: ulimit -c unlimited will let processes dump core.
02:21:11 <pikhq> (most systems are configured so that core doesn't dump, cause otherwise you might get gigs of coredumps)
02:21:53 <shachaf> kmc: What if you allow sudo to run a process in /etc/sudoers? Will that be undumpable too?
02:26:08 <kmc> yeah think so
02:26:13 <kmc> it will have euid != uid
02:26:47 <shachaf> sudo does that?
02:26:53 <shachaf> I thought it ran processes as root proper.
02:27:42 <shachaf> Yes, sudo(8) says so.
02:27:55 <kmc> which?
02:28:14 <kmc> oh it does set uid and euid
02:28:15 <kmc> ok then
02:28:39 <shachaf> Does that mean you can get it to coredump?
02:28:59 <shachaf> Actually I get PR_DUMPABLE carries over across execs.
02:29:06 <shachaf> s/et/uess/
02:29:48 -!- Phantom__Hoover has joined.
02:30:18 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
02:36:41 <pikhq> When did the Google favicon change?
02:36:50 * pikhq now sees Bleu celeste, a lowercase g argent.
02:37:08 <shachaf> pikhq: When I open a new Google tab, it shows me the old favicon until the page finishes loading.
02:37:25 <shachaf> Which I assume means it's still in my cache, which I assume means it's pretty recent.
02:44:37 -!- Wolfsbane has joined.
02:49:28 <pikhq> Hmm.
02:49:40 <pikhq> I think I could actually use a wax seal as a legal signature.
02:49:43 <pikhq> Awesome.
02:50:08 <shachaf> Maybe I should do that.
02:50:27 * shachaf hates signaturizing.
02:50:37 <pikhq> In the US at least, it's a mark or act indicating identity and intent, so it does in fact suffice.
02:52:00 <zzo38> PHP really is pretty bad, I agree. At some time I will rewrite Icoruma in a compiled programming language (such as C or Haskell) because PHP is too slow.
02:52:11 <pikhq> ... Or an email signature.
02:52:25 <pikhq> Oh goodness, an email signature is an actual signature.
02:52:55 <zzo38> I didn't know they were an actual signature
02:53:20 <pikhq> Canadian law might be different, but it wouldn't surprise me.
02:53:52 <zzo38> Yes, perhaps
02:58:00 <lexande> shachaf, Phantom__Hoover: there are no high-speed trains in .fi or in Hexham
02:58:35 <shachaf> lexande: Do you have a /hilight on "train"?
02:59:46 <lexande> yes of course
03:00:28 <pikhq> lexande: Everyone knows the Land of Six Pigs only hath pigs six.
03:01:13 <lexande> Hexham has some other things than that
03:01:26 <lexande> for one thing it has better low-speed trains than most places in america
03:01:36 <kmc> finland has 220 km/hr trains
03:01:38 <kmc> "UIC (International Union of Railways) and EC Directive 96/58 define high-speed rail as systems of rolling stock and infrastructure which regularly operate at or above 250 km/h (155 mph) on new tracks, or 200 km/h (125 mph) on existing tracks."
03:01:47 <pikhq> If you want to get people anywhere, certainly.
03:01:53 <pikhq> Curiously, the US has decent freight rail.
03:01:54 <lexande> and it has the tyne which is kind of nice
03:02:06 <lexande> and some bits of hadrian's wall nearby?
03:02:22 <shachaf> That's a lot of km/h.
03:02:32 <shachaf> And a fair number of mph, too.
03:02:42 <kmc> the passenger lines suck in no small part because the freight railroads are powerful and successful
03:02:46 <shachaf> I think of speeds in mph instead of km/h. :-(
03:02:48 <kmc> and the passenger trains have to run on their lines
03:03:02 <pikhq> And the freight trains preëmpt them.
03:03:15 <shachaf> They are freighteningly successful.
03:03:16 <kmc> and there is regulatory capture of the railroad regulator by the freight railroads
03:03:18 <lexande> preempting isn't the only problem
03:03:21 <kmc> shachaf: -_-
03:03:24 <shachaf> THE POWERFUL AMTRAK LOBBY
03:03:29 <pikhq> lexande: No, but it does add to the suck.
03:03:30 <lexande> yeah the regulations are written to keep freight costs down
03:03:48 <lexande> which has the effect of making passenger rail costs much higher
03:03:58 <lexande> (for example by requiring all passenger trains to be built like tanks)
03:04:23 <pikhq> Freight rail and passenger rail have *vastly* different demands, but legislation doesn't treat them that way. Bleh.
03:04:43 <lexande> well there is to some degree a genuine conflict of interest
03:05:17 <lexande> in europe all the freight trains are connected to the electronic signalling systems that can automatically make them stop if they might collide with another train
03:05:31 <lexande> which is extra equipment on all the freight trains
03:05:37 <shachaf> A train ticket from here to San Diego costs more than a plane ticket. :-(
03:06:07 <lexande> in america the freight railroads have to pinch every penny to compete with trucking as well as they do
03:06:16 <lexande> and so resist having such equipment required
03:06:37 <lexande> which means collisions are much more likely and regulations applied to passenger rail have to take that into account
03:06:46 <shachaf> kmc: Do you know that when you fly somewhere, there are planeclothes flight attendants all throughout the plane?
03:06:50 <lexande> though even in light of that a lot of the regulations are just dumb, and/or 1950s holdovers
03:07:39 <kmc> shachaf: ?
03:08:30 <shachaf> Just another pun.
03:08:40 <kmc> i was afraid so
03:15:00 <shachaf> One of the problems of having a car is that you need to park it somewhere when you go to places. :-(
03:16:00 <lexande> yes
03:16:06 <lexande> that is one of many reasons not to have a car
03:16:32 <shachaf> There are indeed many reasons not to have one.
03:16:48 -!- pikhq has quit (Ping timeout: 245 seconds).
03:16:55 -!- pikhq has joined.
03:20:13 * shachaf tries to figure out what Drop Day is.
03:20:25 <kmc> at Caltech?
03:20:29 <shachaf> Yes.
03:20:34 <kmc> do you want me to tell you?
03:20:43 <shachaf> Sure.
03:21:14 <kmc> well it's the last day in the term when you can drop classes
03:21:39 <kmc> but it's also a party held by Dabney Hovse around the same time, in the winter term
03:22:17 <kmc> and now you know
03:22:30 <shachaf> Success!
03:23:00 <kmc> each house puts on one big party per year
03:23:14 <kmc> usually involving a fair amount of construction, art, etc., and a fair number of people from outside the school show up
03:24:17 <kmc> the houses used to do them all on the same day, but the resulting party got kinda too big and infamous
03:24:47 <kmc> too many random outsiders showed up, i think somebody got stabbed in the late 80's
03:24:58 <kmc> and so they shut it down and now each house does their own thing
03:25:11 <kmc> (though there have been periodic attempts to bring back the old simultaneous party as well)
03:28:14 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
03:28:39 -!- Phantom__Hoover has joined.
03:30:13 <kmc> why did you want to know?
03:30:43 <shachaf> I heard of a certain type of illicit activity taking place there.
03:31:11 <kmc> did you hear this from me?
03:31:34 <shachaf> No. I probably shouldn't talk about it in a public channel.
03:31:45 <shachaf> It's what they call "srs bzsn", I believe.
03:31:50 <kmc> heh
03:31:54 <kmc> all right then
03:31:57 <kmc> your discretion is appreciated
03:32:15 <shachaf> Well, they only call it that if they can't spell.
03:32:25 <shachaf> Or can't misspell, in my case.
03:32:41 -!- pikhq_ has joined.
03:33:21 -!- pikhq has quit (Ping timeout: 276 seconds).
03:33:40 <shachaf> Actually I just find it amusing.
03:33:57 <shachaf> I imagine many illicit activities take place at Drop Day.
03:35:30 <kmc> it's the only one of these parties where alcohol is not served
03:37:21 -!- Phantom__Hoover has quit (Quit: Leaving).
03:37:49 -!- AriesAsrael has joined.
03:46:41 <zzo38> I have a sign "zawa zawa" that I was wearing at anime convention
03:47:00 <shachaf> zzo38: I see someone wearing a sign "zawa zawa" I'll assume it's you.
03:47:29 <zzo38> shachaf: I am not wearing it right now; I was just wearing at anime convention. Also, it is written using hiragana.
03:47:48 <shachaf> ざわ ざわ
03:48:02 <shachaf> I'm not very good at reading Hiragana. :-(
03:52:25 <pikhq_> shachaf: 練習?
03:52:40 <pikhq_> zzo38: Why "ざわざわ"?
03:53:13 <pikhq_> Seems psuedoönomatopoeiaish.
03:57:01 <pikhq_> Ah, it's actual onomatopoeia, not psuedoönomatopoeia.
03:57:58 <kmc> whatsit mean
03:58:36 <pikhq_> Noise, like from a bunch of people talking.
03:58:47 <shachaf> WOuldn't onomatopoeia be written with katakana?
03:59:02 <kmc> rutabaga rutabaga
03:59:05 <pikhq_> shachaf: Some are, some aren't.
03:59:12 <pikhq_> There's no consistent rule on that.
03:59:20 <shachaf> るたばが
03:59:28 <kmc> is there a good reason to have two different alphabets, anyway?
04:00:02 <shachaf> English has two different alphabets which it uses in an even weirder way than Japanese.
04:00:23 <shachaf> E.g. you take a letter from one alphabet if it's at the beginning of a sentence.
04:00:46 <pikhq_> kmc: Not *especially*; it's there largely for hysterical reasons.
04:01:04 <pikhq_> kmc: Though the existence of two different syllabaries does make it somewhat easier to tokenize.
04:01:15 <pikhq_> (Japanese doesn't use spaces)
04:02:05 <shachaf> This person has been asking #haskell the same question for the last 6 hours.
04:02:22 <pikhq_> The use of kanji and kana also makes tokenization a bit easier.
04:02:30 <zzo38> Yes it is sound effect. And yes I know, sound effect generally written by katakana, in this case it is hiragana as Fukumoto has written. There is also ... after it like they have written too
04:02:49 <zzo38> shachaf: What question? Write answer if you know what answer.
04:03:00 <shachaf> The answer is (Writer T)
04:03:27 <zzo38> shachaf: Then please write answer for them
04:03:28 <shachaf> Not to be confused with (WriterT)
04:03:37 <zzo38> Yes, should not confuse please
04:03:41 <shachaf> zzo38: ddarius did, several times.
04:03:43 <shachaf> So have other people.
04:05:54 <zzo38> I suppose some people do, since it might confuse sometimes, it seems like something that can be confused
04:07:53 -!- epicmonkey has joined.
04:15:47 -!- MoALTz has joined.
04:20:27 <Sgeo> Gregor, Duck Tales is My Little Penguin.
04:35:45 -!- epicmonkey has quit (Ping timeout: 276 seconds).
04:42:44 <shachaf> 21:40 <Okasu> Cale: just intersept method missing event, match regexp and create apropriate method using simple pattern
04:45:58 -!- MoALTz has quit (Ping timeout: 265 seconds).
04:51:36 <ion> >> def method_missing(*args) args.join(" ") end; foo bar baz? quux!
04:51:39 <ion> => "foo bar baz? quux!"
04:52:25 <shachaf> That's four calls to method_missing, of course.
04:52:39 <ion> naturally
04:53:06 <ion> I intercepted four events.
05:03:01 -!- zzo38 has quit (Remote host closed the connection).
05:37:20 <Sgeo> shachaf, is Cale asking for Ruby help?
05:42:44 <nortti> 03:40 < Sgeo> #/etc/passwd is a valid channel name // actually I'm on channel #!/bin/mksh right now
05:44:38 <shachaf> Sgeo: No.
05:44:45 <shachaf> Sgeo: Okasu was asking for Haskell help.
05:44:52 <shachaf> :-(
05:54:25 -!- Wolfsbane has quit (Ping timeout: 240 seconds).
06:01:55 -!- pikhq has joined.
06:01:57 -!- pikhq_ has quit (Ping timeout: 248 seconds).
06:13:30 -!- impomatic has joined.
06:30:06 <fizzie> I was on a #!/usr/bin/ff for a long time.
06:44:46 <ion> What’s ff?
06:45:12 <Sgeo> 255
06:45:43 <fizzie> ion: A Befunge(-93) interp I wrote.
06:45:51 <ion> sgeo: I think you mean 270
06:45:58 <ion> fizzie: ok
06:46:00 <fizzie> (It was a two-person channel.)
06:46:42 <Sgeo> ion, I assume that's another base but not sure which one. At a guess, octal?
06:46:52 <ion> 17
06:47:18 <Sgeo> I... uh... what?
06:47:19 <ion> Octal doesn’t have “f”.
06:48:01 <Sgeo> Oh, you interpreted ff as base 17, not that you wrote "270" in a base other than decimal
06:48:19 <fizzie> And 0xff would be 0377, of course.
06:48:55 <Sgeo> That's a stupid convention to indicate octal with
06:49:11 <fizzie> Be that as it may, it's still a convention.
06:49:31 <ion> 377₈
06:50:13 <Sgeo> What's the language where you can insert commas into numbers and it means nothing except makes large numbers readable?
06:50:55 -!- ion has set topic: Behold! The enchanting pants of Narcissus! | Why is Narcissus panting? | Just a remote control and some old gum | atriq is Taneb, just so you know | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
06:51:11 <fizzie> Perl lets you insert _s.
06:51:54 <fizzie> !perl print 1_000_000;
06:51:55 <EgoBot> 1000000
06:52:48 <Sgeo> !perl print 1_0
06:52:48 <EgoBot> 10
06:52:59 <fizzie> That's also in Java 7 and later, incidentally.
06:53:16 <fizzie> !perl print 0xffff_ffff
06:53:17 <EgoBot> 4294967295
06:53:33 <fizzie> It doesn't enforce any sort of specific grouping.
06:53:46 <Sgeo> I assume it's implementable in CL via reader macros?
06:53:47 <fizzie> !perl print 1_____2
06:53:48 <EgoBot> 12
06:54:10 <ion> Forth!
06:57:55 <itidus21> WP doesn't offer a concrete reason for 3-digit grouping
06:59:15 <itidus21> aside from "Making groups of three digits also emphasizes that there is a base 1000 of the numeral system that is being used"
07:03:33 <Sgeo> Well, I guess it sort of strikes a balance between groups too large to easily verify that the groups are the correct size, and groups too small that means there are too many groups to easily count
07:03:54 <Sgeo> 4-digit groupings might work out, I guess
07:04:48 <itidus21> "[..] in various countries (e.g., China, India, and Japan), there have been traditional conventions of grouping by 2 or 4 digits. These conventions are still observed in some contexts, although the 3-digit group convention is also well known and often used."
07:05:18 <fizzie> People group hex digits in groups of 4 for the obvious reasons.
07:20:20 <fizzie> And the underscore thing seems quite common. Apparently in addition to Perl and Java >=7, also at least Ada, D, OCaml, Ruby do it.
07:20:33 <olsner> japanese has words for 10000 and 100 million
07:20:55 <itidus21> hyaku comes to mind
07:20:58 -!- epicmonkey has joined.
07:21:01 -!- nooga has joined.
07:21:02 <olsner> nasm also does it, I suppose a bunch of other assemblers might too
07:21:16 <itidus21> or something like that
07:21:18 <fizzie> olsner: English also has a word for 10000.
07:21:22 <fizzie> @wn myriad
07:21:23 <olsner> itidus21: that's 100 (they also have a word for that!)
07:21:23 <lambdabot> *** "myriad" wn "WordNet (r) 3.0 (2006)"
07:21:23 <lambdabot> myriad
07:21:23 <lambdabot> adj 1: too numerous to be counted; "incalculable riches";
07:21:23 <lambdabot> "countless hours"; "an infinite number of reasons";
07:21:23 <lambdabot> "innumerable difficulties"; "the multitudinous seas";
07:21:25 <lambdabot> [7 @more lines]
07:21:31 <fizzie> Well, it'd be the sense 2 of that.
07:21:37 <ion> @more
07:21:38 <lambdabot> "myriad stars"; "untold thousands" [syn: {countless},
07:21:38 <lambdabot> {infinite}, {innumerable}, {innumerous}, {multitudinous},
07:21:38 <lambdabot> {myriad}, {numberless}, {uncounted}, {unnumberable},
07:21:38 <lambdabot> {unnumbered}, {unnumerable}]
07:21:38 <lambdabot> n 1: a large indefinite number; "he faced a myriad of details"
07:21:40 <lambdabot> 2: the cardinal number that is the product of ten and one
07:21:42 <lambdabot> thousand [syn: {ten thousand}, {10000}, {myriad}]
07:22:23 <olsner> "the cardinal number that is the product of ten and one" :> if only the last line of that had been dropped for some reason
07:23:13 <olsner> the difference is that japanese use their 10000-word where possible and prefer it over combinations of thousand
07:23:20 -!- AnotherTest has joined.
07:23:27 <AnotherTest> Hello
07:24:44 <fizzie> We don't have a word for 10000 at all. :/
07:25:24 <ion> Makes sense for the groupings to match with what words you have for the respective numbers.
07:26:11 <itidus21> well it looks like the word myriad means 10000
07:26:34 <itidus21> <-- stating what has just been said :-s
07:27:11 <olsner> well, there is also a word for 1000, it's just not the significant one
07:27:50 <itidus21> one ten hundred thousand myriad skip a step million
07:28:52 <fizzie> Knuth has apparently suggested a system with 10^4, 10^8, 10^16, 10^32 etc. units (i.e. doubling every time); so that 10^4 = myriad, 10^8 = myllion, 10^16 = byllion, 10^32 = tryllion and so on.
07:30:39 <itidus21> "a mwnt mwnts are a rhiallu, a rhiallu rhiallus are a buna"
07:31:16 <itidus21> i don't like the looks of this
07:31:43 <fizzie> Thai apparently has a word for 100000 too, แสน.
07:32:03 <itidus21> one result for that sentence comes from magickoccult.com
07:32:18 <fizzie> Sounds on-topic for once.
07:32:27 <olsner> japanese does 10^8 as well (oku), don't know if/how they count higher than that
07:34:53 <itidus21> the fact that this topic leads directly to the other esoteric makes me think i have gone too far
07:35:16 <fizzie> I think it was mentioned before, but the "This is an incomplete list" template at the start of Wikipedia's "List of numbers" article still makes for a smile.
07:35:29 <fizzie> Maybe some day they'll complete it.
07:36:22 -!- oerjan has joined.
07:39:50 <Sgeo> No one will get mad if my first substantiative blog post is about something other than what I said it would be about, right?
07:41:03 <ion> I will get furious.
07:41:51 <fizzie> Fast and furious.
07:42:40 <oerjan> we will probably ban you. (0 < p < 1)
07:42:57 <Sgeo> What's the usual way to indicate code in blogspot?
07:43:30 <oerjan> see the manual. they _have_ a manual, i hope.
07:54:29 <Sgeo> I'm just going to use <pre> and hope for the best
07:55:58 -!- epicmonkey has quit (Remote host closed the connection).
07:56:08 -!- epicmonkey has joined.
07:56:22 -!- epicmonkey has quit (Remote host closed the connection).
07:56:47 -!- heroux has joined.
08:13:46 -!- asiekierka has joined.
08:20:38 <Sgeo> I wish I kept the code I used to check for myself that what some blogger said was wrong
08:30:50 <impomatic> Sgeo: <pre> works for me. I haven't found anything built in. You probably need to convert < and > in your code to HTML entities. Alternatively your editor might have an export to HTML feature...
08:31:36 <Sgeo> This comment by someone else summarized what my post will be about: "And now that I've actually read what that cl:let* is used for, it's not needed all. The body of DEFMACRO is read at read time, so the LET* it uses will be CL:LET*, if the macro is later expanded in a package which has a different LET*, the macro-expnsion still will have CL:LET*, since there's no reading invovled during macroexpansion."
08:43:01 -!- Phantom_Hoover has joined.
08:48:55 -!- asiekierka has quit (Remote host closed the connection).
08:54:32 -!- ais523 has joined.
09:03:30 -!- asiekierka has joined.
09:08:18 <Sgeo> I'd be happy if Smalltalk method names were namespaced.
09:08:22 <Sgeo> Have I said that before?
09:08:48 -!- derdon has joined.
09:13:09 <oerjan> finally, the secret to happiness!
09:16:00 <Sgeo> I am in a love/hate relationship with the idea of continuation-based web programming.
09:17:44 -!- asiekierka has quit (Quit: Connection reset by PO).
09:17:58 -!- asiekierka has joined.
09:18:20 -!- impomatic has left.
09:22:44 <shachaf> tomfoolion
09:22:50 <shachaf> Always fooling the toms.
09:25:40 <ion> ton
09:38:59 <itidus21> "buffoon, clown," 1640s, from Middle English Thom Foole, personification of a mentally deficient man (mid-14th century), see Tom + fool
09:41:09 <itidus21> The name Tom (short for Thomas), was "often a generic name for any male representative of the common people" (OED), so any fool walking down the street was labeled a Tom fool. We still use Tom to refer to a random man in the phrase "Tom, Dick, and Harry."
09:41:19 <shachaf> ion: What's itidus21?
09:41:36 <shachaf> Anyway I meant male cat.
09:41:40 <ion> shachaf: I think elliott programmed it in sh.
09:43:33 <itidus21> ion: I know, and that was an answer.
09:55:18 * Sgeo ponders a macroapply macro
09:55:36 <shachaf> You should come up with the inverse of a macro.
09:55:55 <shachaf> Where you write code and it generates a function that generates that code.
09:55:55 <Sgeo> Hmm, being unable to pass environments to eval makes it ... not really a doable thing
09:55:58 <shachaf> Call it a micro.
09:56:35 <Sgeo> shachaf, either I'm misunderstanding or you're asking me to make ... a quine? Or a quine generator?
09:56:49 <Sgeo> Oh, I think I see
09:56:55 <shachaf> I have no idea what I'm asking.
09:57:00 <shachaf> I just wanted to make a pun, man. :-(
09:57:27 <Sgeo> Puns are how all great ideas start!
09:58:04 <Sgeo> Clearly, once your idea is completely deciphered, it will revolutionize computing
09:58:15 <Sgeo> Even if the creator doesn't understand it.
09:58:39 <Sgeo> Hmm, I may be going too far.
09:58:41 * Sgeo shuts up
10:14:51 -!- oerjan has quit (Quit: leaving).
10:16:02 -!- pikhq has quit (Read error: Operation timed out).
10:17:41 -!- pikhq has joined.
10:19:26 <FreeFull> thecode -> print "thecode"
10:41:40 -!- kidanger has joined.
11:14:58 <Phantom_Hoover> <Sgeo> shachaf, either I'm misunderstanding or you're asking me to make ... a quine? Or a quine generator?
11:15:07 <Phantom_Hoover> He's asking for a 2-state quine.
11:15:11 <shachaf> I'm not asking you to make anything, Phantom_Hoover.
11:15:15 <shachaf> Or Sgeo.
11:15:18 <shachaf> Whichever one.
11:18:59 <Phantom_Hoover> There's little real difference.
11:28:46 <Sgeo> A lot of imaginary difference though.
11:28:57 <Sgeo> It's rather complex.
11:42:07 -!- boily has joined.
11:42:15 -!- cuttlefish has joined.
11:42:30 -!- cuttlefish has quit (Remote host closed the connection).
11:42:48 -!- cuttlefish has joined.
11:52:21 -!- FreeFull has quit (Ping timeout: 248 seconds).
11:53:18 -!- FreeFull has joined.
11:59:23 -!- MoALTz has joined.
12:18:13 -!- oonbotti has quit (Quit: oonbotti).
12:19:44 -!- oonbotti has joined.
12:26:32 -!- Wolfsbane has joined.
12:37:16 -!- kinoSi has quit (Read error: Connection reset by peer).
12:37:44 -!- kinoSi has joined.
12:45:20 -!- MoALTz has quit (Ping timeout: 268 seconds).
12:57:24 -!- HackEgo has quit (Read error: Connection reset by peer).
12:58:07 -!- shachaf has quit (Ping timeout: 240 seconds).
12:58:23 -!- HackEgo has joined.
12:58:53 -!- shachaf has joined.
12:59:07 -!- EgoBot has quit (Ping timeout: 240 seconds).
12:59:44 -!- EgoBot has joined.
13:05:59 -!- Wolfsbane has left.
13:16:24 -!- nooga has quit (Read error: Connection reset by peer).
13:18:34 -!- AnotherTest has quit (Quit: Leaving.).
13:18:41 -!- AnotherTest has joined.
13:20:36 -!- nooga has joined.
13:25:51 <ion> HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA
13:26:02 <nortti> what?
13:26:06 <boily> eh?
13:29:26 -!- epicmonkey has joined.
13:30:45 <ion> See the preceding comments.
13:36:31 <kmc> hi #esoteric
13:38:01 <ion> hai
13:39:31 -!- augur has quit (Remote host closed the connection).
13:47:13 -!- nooga has quit (Ping timeout: 245 seconds).
13:47:21 * kmc downloads Sarah Palin vs. the Moon Nazis
13:47:34 <ion> That film was funneh.
13:47:49 <kmc> is that better or worse than "funny"?
13:48:12 <ion> I liked it.
13:48:25 <ion> Would watch again.
13:53:04 <nortti> kmc: didn't that have a different name?
13:58:05 * Sgeo vaguely wonders what & means in a Perl argument list
13:58:53 -!- copumpkin has joined.
14:02:00 <kmc> yes the film is actually called _Iron Sky_
14:02:44 <Sgeo> It's a way to make new syntax in Perl, apparently
14:02:48 <Sgeo> Should I jealous just yet?
14:03:26 <Sgeo> Ah, it seems to be a Tcl-esque-except-not-quite way of doing things
14:03:46 <Sgeo> This breaks the lexical. (Note: I don't know if it actually breaks lexical anything)
14:09:11 -!- monqy has quit (Quit: hello).
14:11:06 <kmc> what?
14:21:48 <Sgeo> proc don't (&) {}
14:21:49 <Sgeo> iirc
14:22:14 <kmc> what?
14:22:32 <Sgeo> Also http://knowyourmeme.com/memes/sad-crab-this-kills-the-crab
14:22:37 <Sgeo> http://search.cpan.org/~dconway/Acme-Don-t-1.01/t.pm
14:22:47 <Sgeo> Oh, it's sub don't (&) {}
14:24:24 <kmc> wouldn't you call that the parameter list rather than the argument list?
14:24:32 <kmc> also i didn't know perl even has a parameter list, i'm clearly behind the times
14:24:43 <Sgeo> I don't think it's a parameter list
14:24:56 <Sgeo> I think the docs I found called it a prototype list?
14:25:00 <kmc> ok
14:25:45 <Sgeo> http://perldoc.perl.org/perlsub.html#Prototypes
14:25:51 <Sgeo> "The interesting thing about & is that you can generate new syntax with it, provided it's in the initial position:
14:25:51 <Sgeo> "
14:26:46 -!- ais523 has quit.
14:29:22 <kmc> yeah sort of
14:29:47 <kmc> it just lets you use a lambda as an argument without the "sub" keyword
14:29:49 <kmc> reminds me of blocks in ruby
14:33:07 -!- AnotherTest has quit (Ping timeout: 240 seconds).
14:35:38 -!- AnotherTest has joined.
14:55:30 -!- augur has joined.
15:07:41 -!- AnotherTest has quit (Quit: Leaving.).
15:10:13 <kmc> not really "new syntax"
15:12:37 <ion> And *some* languages have so lightweight lambda syntax they don’t need any special syntax for passing a single lambda argument. :-)
15:13:43 <kmc> yeah, like C#
15:14:53 <ion> Exactly
15:15:14 -!- zzo38 has joined.
15:16:16 -!- epicmonkey has quit (Remote host closed the connection).
15:16:27 -!- epicmonkey has joined.
15:50:33 -!- epicmonkey has quit (Ping timeout: 272 seconds).
16:24:49 <zzo38> Do you like The Internationale music? I try to make a rearrangement for NES/Famicom, based on someone else's arrangement
16:32:57 -!- impomatic has joined.
16:35:46 <zzo38> Currently I use channels ABGHIJKLMNa but I want to add channels CD as well.
16:39:12 <zzo38> (ABMNa = square, C = triangle, D = noise, GHIJKL = FM synth)
16:59:22 -!- asiekierka has quit (Quit: Connection reset by PO).
17:01:46 -!- epicmonkey has joined.
17:18:10 -!- MoALTz has joined.
17:27:22 <zzo38> I am not very good to write a percussion are you a percussionist would you know to help such things?
17:31:37 <zzo38> What key do you think The Internationale should be played in?
17:35:33 <itidus21> c sharp
17:36:06 <jlaire> f shaaaaaaaaaarp
17:36:22 <itidus21> to quote kmc
17:36:29 <itidus21> <kmc> yeah, like C#
17:37:04 <zzo38> Is that out of context?
17:37:16 <itidus21> it's within the context of #esoteric
17:37:44 <zzo38> I meant, is the quotation out of context of my question?
17:37:47 <itidus21> technically though it's way out of context
17:39:48 <jlaire> my quote was even more so
17:40:04 * jlaire np. Tim Minchin - F Sharp
17:41:54 <olsner> Trolling to the tune of F# - Jon D. Harrop
17:42:25 <jlaire> that's almost as good
17:43:10 -!- Zuu has left.
18:21:11 -!- impomatic has quit (Quit: impomatic).
18:29:47 <zzo38> I want to add channel C and D to this arrangement of Internationale but I am not a very good percussionist. I could add C by myself but needs help for D channel noise.
18:30:13 <zzo38> Maybe even add O (saw) channel!
18:32:01 -!- nooga has joined.
18:45:34 -!- oonbotti has quit (Quit: oonbotti).
18:55:16 -!- oonbotti has joined.
19:00:18 <kmc> I like the Internationale
19:00:22 <kmc> i frequently find myself humming it
19:00:47 <nortti> `? internationale
19:00:57 <HackEgo> You have been reported to the House Un-American Activities Committee
19:00:58 <nortti> me too
19:01:55 <olsner> COMMUNISTS!
19:02:10 <nortti> no. socialist
19:02:36 <olsner> that's exactly what a commie bastard would say
19:02:47 <nortti> ok
19:02:55 <nortti> -. .
19:02:55 <nortti> _____ ',',
19:02:55 <nortti> ,' ,' ', ',
19:02:55 <nortti> ,' ,' | |
19:02:55 <nortti> \ \ | |
19:02:57 <nortti> \ /^\ \ ,' ,'
19:03:00 <nortti> \ \ ,' ,'
19:03:02 <nortti> / ~-.___\.-' ,'
19:03:05 <nortti> / .______.- ~ \
19:03:07 <nortti> / /' \ \
19:03:10 <nortti> \./ \/'
19:03:12 <nortti> >:D
19:04:04 <nortti> fouund this one in HackEgo's fortune database
19:04:42 <kmc> nice
19:04:48 <kmc>
19:05:00 <nortti> mine is bigger
19:05:05 <kmc> true
19:05:07 <kmc>
19:06:16 <nortti> what is that. fbcon doesn't show that one
19:06:21 <nortti> *?
19:07:33 -!- Phantom__Hoover has joined.
19:07:40 <olsner> ah, that drinking song I was thinking about was to the melody of the internationale after all, but some part in the middle of it
19:07:48 -!- Sgeo_ has joined.
19:07:50 <kmc> 'DOWN TACK' (U+22A4)
19:07:55 <nortti> ok
19:08:01 <kmc> used in mathematics for "true" or for the top of a lattice
19:08:15 <zzo38> I added that ASCII art to my own fortune database now
19:09:10 <zzo38> I am using only the music for The Internationale, not the lyrics; I prefer instrumental music that is why.
19:09:47 <nortti> zzo38: I have that constatly show at the top of tty4 which shows info about my system like who is using it, free memory amount, disk space usage and uptime
19:10:33 <zzo38> This is what I have so far: http://sprunge.us/GCKd I intend to add C channel, and possibly other channels such as D or O or b channel, or others
19:10:52 <zzo38> nortti: What is?
19:11:07 <nortti> zzo38: that ascii art
19:11:18 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
19:11:18 -!- Sgeo has quit (Ping timeout: 276 seconds).
19:11:21 <zzo38> nortti: OK.
19:15:05 -!- impomatic has joined.
19:19:12 <fizzie> Sounds like a lot of channels in the thing.
19:19:52 <fizzie> fungot: Say something relevant about the SID, please.
19:19:53 <fungot> fizzie: the values shown.
19:20:03 <fizzie> fungot: What?
19:20:04 <fungot> fizzie: cb13cb12cb11 d7 d6 d5 d4 d3 d2 d1 d0 rc2 rc1 rc0 data. this assures tod will always cause any character you want to see how it's set in order to use the and function lets you check if the answer is yes then that number must be specified in the
19:21:20 <olsner> fungot: SID SID SID
19:21:21 <fungot> olsner: load"fun",8 ( load a file on disk), you must poke 648 with the next numbers in the kernal for machine language routine that sets the tape.
19:21:30 <zzo38> fizzie: Lot of channels? Yes it uses three expansions, and eleven channels in total. And now I will add triangle channel as well.
19:22:22 <zzo38> PPMCK supports 28 channels in total but I know of no music using all 28 channels.
19:22:42 <olsner> ^styles
19:22:50 <olsner> ^style
19:22:51 <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
19:23:03 <olsner> is wp wikipedia?
19:23:21 <olsner> is there no "all" style?
19:23:52 <zzo38> Can you add it support a "all" style?
19:24:46 <olsner> it'd be neat if it actually worked to mention SID and get a SID-related response
19:25:43 <fizzie> Not easily, if you mean an "automatic" all style. It'd be easiest just to make a combined model.
19:26:13 <zzo38> I do mean an automatic all style, whether or not that is what olsner means.
19:26:46 <olsner> automatically making that combined model sounds easier than having someone manually regenerate the all style after changing any of the other styles
19:26:56 -!- asiekierka has joined.
19:27:10 <fizzie> olsner: Not if you have to implement the former in Funge-98.
19:27:56 <fizzie> It'd be possible, of course. Just not terribly easy. It doesn't actually "load" the models anywhere, just does a lot of seeking and small reads.
19:31:27 <olsner> I suppose Funge-98 might make it unnecessarily difficult
19:33:33 <fizzie> For the combined model, it'd at least have to load the current "node" from all open models, in order to sum the counts.
19:33:53 <fizzie> IIRC it doesn't do that at the moment even for the single model.
19:35:08 <fizzie> Just reads the (stored in the file) sum of all counts, generates a random number < that, and then keeps reading and stops when it hit whatever it hit.
19:36:36 <fizzie> There's also a binary search on the list of children to walk down the tree, that's also done by a seek-read-etc. kind of way.
19:44:18 <zzo38> Then make a program which will make up the combined model automatically, and run that program whenever you update the other files.
19:44:48 <AriesAsrael> hello
19:44:53 -!- Lumpio- has quit (Ping timeout: 248 seconds).
19:45:32 <AriesAsrael> anyone looking for a tarot reading?
19:45:34 -!- Lumpio- has joined.
19:45:52 <zzo38> AriesAsrael: I don't know others but I am not looking for a tarot reading.
19:46:05 <zzo38> AriesAsrael: I am, however, looking to buy some tarot cards to play a game.
20:03:07 <FreeFull> fizzie: fungot doesn't actually look at what is being said to it at all, is it? Just that something is being said
20:03:08 <fungot> FreeFull: these special sprite abilities make it play arcade-style action games. you would use the listen routine is directed through this alternate vector, the
20:03:21 <FreeFull> Ignoring of course the other functionality
20:14:18 <kmc> fungot
20:14:18 <fungot> kmc: this same area is larger than 4k bytes, that line is high for basic operation. if you have selected a bank, by using subroutines rather than repeating the same location as the 65xx and similar microprocessor families. sid can process external audio signals to be text, more hollow. that's why the disk drive and 1525 printer is to define variables is lost to the disk)
20:14:31 <kmc> ^style jargon
20:14:32 <fungot> Selected style: jargon (UNIX-HATERS mailing list archive)
20:14:34 <kmc> fungot
20:14:35 <fungot> kmc: well, actually, kronos didn't have any such inclination, you useless twerps. if tla press the wrong place at the latest constructive contribution: by august 24th, 1993
20:14:36 <fizzie> FreeFull: Right.
20:14:53 -!- monqy has joined.
20:15:34 -!- asiekierka has quit (Remote host closed the connection).
20:15:55 <fizzie> "sid can process external audio signals to be text, more hollow."
20:17:32 <olsner> fungot: more jargon
20:17:33 <fungot> olsner: flame on to bsd. so i dropped in on a wart.") but then, of
20:18:15 -!- epicmonkey has quit (Ping timeout: 276 seconds).
20:18:44 <olsner> how does fungot decide how much to output?
20:18:45 <fungot> olsner: isn't there some pending federal law against colorizing things that were down or otherwise fail operate correctly." but stopped myself just to see a serious critique of unix: celibacy. what brain-damage! you would like proofreaders, i'm not
20:19:05 <olsner> celibacy. what brain-damage!
20:20:19 <olsner> fungot. what brain-damage!
20:20:19 <fungot> olsner: perhaps opensystems is a test. from sh type ' term=termtype;export term'.
20:23:22 <FreeFull> Somehow markov bots are less amusing when you can't hold a conversation with them and they don't learn from input
20:23:57 <fizzie> Oh, but you can always hold a conversation; it might just be a bit nonsensical conversation.
20:24:59 <olsner> a bit like speaking to yourself, but with more FUNgot
20:25:00 <fizzie> fungot: Why don't you ever learn?
20:25:01 <fungot> fizzie: except that i'm just getting silly! it's fried potatoes. jamie zawinski
20:25:19 <olsner> *fungot
20:25:20 <fungot> olsner: and who'd even like to have a visit there sometime.
20:26:46 <fizzie> I was thinking of using the input phrase as the initial context, but it doesn't currently know how to tokenize text, just the other way around.
20:28:54 -!- oerjan has joined.
20:32:56 <oerjan> 17:31:37: <zzo38> What key do you think The Internationale should be played in?
20:32:59 <oerjan> 17:35:33: <itidus21> c sharp
20:33:01 <oerjan> bloody sharp
20:33:03 <oerjan> 17:36:06: <jlaire> f shaaaaaaaaaarp
20:33:36 <fizzie> Sea shark.
20:37:30 -!- augur has quit (Remote host closed the connection).
20:37:37 <oerjan> also, argh new housemates
20:37:41 -!- kinoSi has quit (Read error: Connection reset by peer).
20:38:09 -!- kinoSi has joined.
20:38:50 -!- nooga has quit (Read error: Connection reset by peer).
20:38:50 -!- nooga_ has joined.
20:39:00 <oerjan> <AriesAsrael> anyone looking for a tarot reading?
20:39:03 <zzo38> I am writing triangle channel music but I need the help with percussion channel please. If you know the music "Internationale" then maybe you can know how to make percussion as well? In this case it is the 2A03 noise channel, meaning you can select a pitch of a white noise.
20:39:06 <FreeFull> fizzie: Well, tokenizing isn't that hard to do
20:39:06 <oerjan> `welcome AriesAsrael
20:39:11 <HackEgo> AriesAsrael: 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:39:19 <oerjan> i think you might want that last one
20:39:29 -!- AriesAsrael has quit.
20:40:24 <boily> meh... he/she/it left before I could show him/her/it my bot's divinatory functions...
20:40:50 <oerjan> your bot has divinatory functions?
20:41:14 <FreeFull> What does it predict?
20:41:14 <oerjan> fungot: you are pretty oracular right?
20:41:15 <fungot> oerjan: ( loop next ( ( line in-port port read-line) ( lines collecting line)))
20:41:27 <oerjan> ^style
20:41:28 <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
20:41:36 <boily> oerjan: for now, it has ~dice and ~yi, notably.
20:41:39 <FreeFull> ^style sms
20:41:39 <fungot> Selected style: sms (National University of Singapore SMS corpus, 2011-08-20)
20:41:47 <kmc> fungot:
20:41:48 <fungot> kmc: now i say lo miss eu.dipx dipx where got always bluff me say u sleeping by that team not.lol. on my way back from location by lidat.
20:41:59 <zzo38> They don't have card dealing?
20:42:21 <oerjan> yi as in yi jing?
20:42:27 <kmc> ~yi
20:42:27 <cuttlefish> Your divination: "Great Possessing" to "Great Possessing"
20:42:33 <kmc> -_-
20:42:44 <kmc> it should use the unicode yi ching characters
20:43:13 <zzo38> Add card dealing from standard (French) deck, tarot deck, Fanucci deck, Italo-Spanish deck, etc.
20:43:15 <boily> kmc: good idea. expect to see them tomorrow or wednesday.
20:43:45 <boily> zzo38: very good idea, with mahjong hands and dominoes.
20:44:21 <zzo38> boily: Yes, also mahjong and domino.
20:45:20 <zzo38> For standard deck, indicate if single or double and if it has jokers or not. For mahjong, specify which variant (Japanese, Japanese with red fives, Chinese, American, etc).
20:46:49 <kmc> yay
20:47:39 <zzo38> We could program FurryScript to deal cards; currently although it can check for duplicates it is not really ideal for dealing cards but I could add a card dealing function to this program.
20:49:36 -!- atriq has joined.
20:50:47 <FreeFull> Invent a programming language which consists of entering base 63 numbers
20:50:53 <FreeFull> And it has 63 functions
20:50:58 <atriq> Well, today the amount of money I've spent on cosplay MULTIPLIED BY NINE
20:51:00 <FreeFull> One of which is quote
20:51:19 <FreeFull> The quote function allows you to enter literal numbers/quoted code
20:51:28 <FreeFull> And allow code modification
20:51:50 <FreeFull> Maybe even a macro system
20:51:55 <FreeFull> And make it RPN
20:52:27 <olsner> atriq: same here actually, for any value of nine
20:53:09 <FreeFull> An example program would be Kqy6ZdSGWBpafaMRSozWqWn5
20:53:57 <FreeFull> Oh, and if you want to do functions, you can do it by redefining one of the symbols
20:54:13 <FreeFull> So you can have the system function K be replaced by custom function K
20:54:27 <FreeFull> Halfway through the program
20:56:17 <oerjan> which is particularly ironic if it's SKI K
20:57:10 <kmc> like rain on your wedding day
20:57:14 <FreeFull> And there is no symbol which isn't redefinable
20:59:44 -!- boily has quit (Quit: Poulet!).
21:02:43 <atriq> olsner, from 50p to 4.50
21:03:59 <kmc> i'm disappointed that i can't type $ as Compose | S
21:04:05 <olsner> atriq: wow, mr moneypants
21:04:24 <atriq> The 50p was a roll of sticky tape
21:04:41 <zzo38> kmc: Can you add it to a compose file?
21:04:42 <FreeFull> kmc: Well, add it to the definitions
21:04:46 <olsner> sticky tape? is there unsticky tape?
21:04:46 <FreeFull> And push the change upstream
21:04:53 <FreeFull> olsner: Possibly
21:05:03 <olsner> tejp is always sticky
21:05:10 <FreeFull> I know there is tape that only sticks to itself, and nothing else
21:05:16 <zzo38> olsner: Do you mean "same here actually, for any value of nine" that you have not spend any money on cosplay?
21:05:24 <olsner> zzo38: indeed
21:06:02 <atriq> olsner, there is definitely non-sticky tape. For instance, magnetic tape
21:06:50 <kmc> FreeFull: bondage tape
21:07:10 <kmc> also apparently veterinary tape is the same thing but cheaper
21:07:33 <olsner> hmm, I forget those are also tape in english, non-sticky tape has a different word here
21:07:44 <oerjan> turing machines don't use sticky tape, it messes up things horribly
21:16:51 <olsner> but it should make the halting problem a bit more tractable
21:18:55 <oerjan> yeah but "they all halt" isn't that interesting
21:31:03 -!- augur has joined.
21:45:00 -!- atriq has quit (Remote host closed the connection).
21:56:53 -!- oerjan has quit (Quit: leaving).
22:00:06 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:06:04 -!- MoALTz has quit (Ping timeout: 240 seconds).
22:21:52 -!- sirdancealot7 has joined.
22:22:17 -!- copumpkin has joined.
22:22:19 -!- copumpkin has quit (Changing host).
22:22:20 -!- copumpkin has joined.
22:45:12 -!- sirdancealot8 has joined.
22:46:23 -!- sirdancealot7 has quit (Ping timeout: 245 seconds).
23:04:17 -!- kidanger has quit (Quit: Quitte).
23:11:58 -!- nooga_ has quit (Read error: Connection reset by peer).
23:20:18 -!- criTos has joined.
23:22:58 -!- criTos has left.
23:39:50 <shachaf> kmc: Does mosh not support roaming the server? :-(
23:41:45 <kmc> nope
23:42:00 <kmc> it is a vaguely desired feature
23:42:14 <kmc> at least, i want to be able to use mosh behind my home NAT without the packets going outbound to the NAT router first
23:42:46 <kmc> we can't support simultaneous client and server roaming without a third party of some kind
23:42:59 <kmc> like if you suspend your laptop, and then your home IP changes before you resume on another connection
23:43:04 <shachaf> Sure.
23:43:10 <kmc> but we've also talked about re-resolving the DNS name in such situations
23:43:18 <kmc> which could also solve the inside/outside-NAT case
23:43:48 <kmc> there is also an interesting DoS attack available if you support unrestricted roaming on both ends
23:44:13 <kmc> which is simply, if i capture a legit packet sent by the server, and re-send it from my IP, i can make you reply to my IP instead of the real server
23:45:00 <kmc> and i can do that to the server at the same time
23:45:10 <kmc> and now i have killed your connection permanently
23:54:47 <kmc> and then i found five dollars
23:55:03 <kmc> shachaf: are you doing the Stripe web CTF?
23:55:10 <kmc> it starts Wednesday at noon PDT, i think
23:56:00 <shachaf> Probably.
23:56:10 <shachaf> Hmm, being awake an noon PDT is a challenging prospect.
2012-08-21
00:01:30 <kmc> i can be awake at 15:00 EDT just fine :)
00:01:36 <kmc> actually i have been waking up well before noon localtime as well
00:01:38 <kmc> i blame jet lag
00:01:55 <shachaf> I actually like waking up early.
00:02:02 <shachaf> Or, rather, I like waking up early and not being tired.
00:02:08 <shachaf> I just really dislike going to sleep.
00:03:24 <kmc> yeah
00:03:30 <kmc> sleep always seems more boring than the alternative
00:03:38 <kmc> well not always
00:03:44 <kmc> but usually
00:06:37 <zzo38> I Wanna Flip The Sky
00:12:15 <zzo38> Is this specification OK? http://wiki.nesdev.com/w/index.php/User:Zzo38/ines.map_and_unif.map I think one thing I forgot is the precedence of the "romsize", "rom", and "crc" operators. What would you suggest?
00:37:21 * kmc still has not thought of a great algorithm for the word rectangle puzzle
00:40:24 <zzo38> What is a word rectangle puzzle?
00:41:48 <Phantom__Hoover> `? Finland
00:41:51 <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.
00:42:33 <kmc> zzo38: find a rectangle of letters such that every row and every column is an English word
00:42:43 <kmc> find such a rectangle as big as you can
00:56:59 -!- zzo38 has quit (Remote host closed the connection).
01:10:05 -!- derdon has quit (Remote host closed the connection).
01:28:41 -!- DHeadshot has joined.
01:54:38 -!- soundnfury has quit (Read error: Connection reset by peer).
02:03:24 -!- DHeadshot has quit (Ping timeout: 276 seconds).
02:33:46 -!- Phantom__Hoover has quit (Quit: Leaving).
02:54:17 -!- soundnfury has joined.
03:22:43 -!- soundnfury has quit (Ping timeout: 240 seconds).
03:38:15 -!- soundnfury has joined.
04:14:41 -!- MoALTz has joined.
04:41:42 <itidus21> is;to
04:45:00 <itidus21> the;hog;egg
04:46:24 <monqy> hi
04:47:23 <shachaf> hi monqy
04:50:46 -!- MoALTz has quit (Ping timeout: 256 seconds).
05:06:27 -!- copumpkin has quit (Ping timeout: 244 seconds).
05:06:59 -!- copumpkin has joined.
05:09:30 -!- heroux has quit (Ping timeout: 265 seconds).
05:16:20 -!- heroux has joined.
05:19:03 -!- Sgeo_ has quit (Ping timeout: 276 seconds).
05:51:02 -!- Sgeo has joined.
06:05:34 -!- impomatic has quit (Ping timeout: 265 seconds).
06:17:18 -!- epicmonkey has joined.
06:37:02 -!- TeruFSX2 has joined.
06:43:59 -!- epicmonkey has quit (Ping timeout: 246 seconds).
06:51:20 -!- TeruFSX2 has quit (Ping timeout: 244 seconds).
07:06:46 -!- glogbackup has quit (Ping timeout: 256 seconds).
07:26:30 -!- knott_rays has joined.
07:26:43 -!- knott_rays has left.
07:46:57 -!- epicmonkey has joined.
07:51:27 -!- asiekierka has joined.
07:51:32 -!- asiekierka has quit (Read error: Connection reset by peer).
07:51:42 -!- asiekierka has joined.
07:56:14 -!- oerjan has joined.
07:57:09 -!- nooga has joined.
08:02:52 -!- AnotherTest has joined.
08:28:10 -!- nortti has quit (Ping timeout: 265 seconds).
08:28:43 -!- nortti has joined.
08:49:08 -!- AnotherTest has quit (Ping timeout: 244 seconds).
09:13:49 -!- augur_ has joined.
09:15:00 -!- augur has quit (Read error: Connection reset by peer).
09:44:14 -!- AnotherTest has joined.
10:19:02 -!- oerjan has quit (Quit: leaving).
10:39:14 -!- AnotherTest has quit (Quit: Leaving.).
10:39:22 -!- AnotherTest has joined.
10:39:28 -!- AnotherTest has quit (Client Quit).
10:43:01 -!- nooga has quit (Ping timeout: 248 seconds).
10:45:57 -!- nooga has joined.
11:05:22 -!- PatrickRobotham has joined.
11:30:38 -!- MoALTz has joined.
12:03:11 -!- derdon has joined.
12:14:11 -!- MoALTz has quit (Ping timeout: 245 seconds).
12:19:10 -!- atriq has joined.
12:24:07 -!- Phantom_Hoover has joined.
12:37:10 -!- pikhq_ has joined.
12:37:35 -!- pikhq has quit (Ping timeout: 272 seconds).
12:45:45 -!- TeruFSX2 has joined.
12:47:14 <atriq> I don't really like the new Muse song.
12:47:21 <atriq> It's insufficiently OTT
12:51:19 <atriq> With this nick, the first two characters don't uniquely identify me on #haskell...
12:51:22 <atriq> :'(
12:55:24 <kmc> OTT?
12:55:31 <atriq> Over the top
12:55:46 <atriq> Is that a britishism?
12:56:57 <atriq> Excessive, ridiculous
12:57:10 -!- boily has joined.
12:57:25 <atriq> I've ended up with a couple of words that I think are Urdu in my vocabulary, but I've no idea what they literally mean or how to spell them
12:57:46 <atriq> :(
13:06:00 <nortti> urdu?
13:06:25 <atriq> Language spoken in Pakistan, I believ
13:06:25 <atriq> e
13:09:00 <kmc> "over the top" is used in america too
13:09:03 <kmc> but i haven't heard the acronym
13:18:31 -!- copumpkin has quit (Ping timeout: 252 seconds).
13:19:08 -!- copumpkin has joined.
13:21:59 <atriq> I got asked about it last time I used it in this channel
13:22:08 -!- derdon has quit (Remote host closed the connection).
13:23:35 <shachaf> kmc: Where do you sleep etc. when you go do travel-ish things?
13:26:17 <kmc> that depends
13:26:57 <kmc> when i was biking to vermont i camped in campgrounds
13:27:16 <kmc> when i was in europe most recently i stayed with friends and in hostels
13:27:24 <kmc> it depends on the situation
13:27:38 <kmc> i haven't done the "camping in the middle of nowhere with nobody's permission" thing but that's an option too
13:27:58 <kmc> lexande slept on a park bench when he was hitchhiking to st john's canada
13:31:43 -!- derdon has joined.
13:40:31 -!- epicmonkey has quit (Ping timeout: 252 seconds).
13:53:22 -!- epicmonkey has joined.
14:03:19 <atriq> Okay, I'm starting to warm to this song
14:07:39 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:11:11 <kmc> butts
14:11:27 <kmc> i agree that Muse should be over the top
14:12:26 -!- asiekierka has quit (Remote host closed the connection).
14:13:20 <kmc> 'The album’s second single, “Knights of Cydonia,” sounds like the theme song to a wild-west Highlander sequel set in Freddie Mercury’s butt.'
14:14:05 <atriq> Yes, yes it does
14:14:30 <kmc> i have a theory about Black Holes and Revelations
14:14:38 <kmc> which is that they were hoping some crazy person would listen to it on loop for 40 hours
14:14:42 <kmc> and then shoot the president
14:14:56 <atriq> I'd do it, but I don't have a gun
14:15:00 <kmc> it's that sort od album
14:15:03 <kmc> sort of*
14:15:11 <kmc> that's because you live in the UK
14:15:12 <atriq> Yup
14:15:27 <atriq> Hey, my dad and at least one of my friends own guns
14:15:41 -!- derdon has quit (Remote host closed the connection).
14:15:55 <kmc> here in the USA you get a free gun with your mcdonald's happy meal
14:16:01 <kmc> (except in san francisco, where they have banned happy meals)
14:20:02 -!- atriq has quit (Quit: Leaving).
14:31:21 <Gregor> Reöpen yes/no? The only word I can think of with a diaeresis “eo” is pigeon.
14:32:49 <Gregor> Aha, and “righteous”, although there the whole “eou” is a single vowel sound.
14:34:11 <Gregor> Truncheon…
14:35:45 <Gregor> Georgia!
14:35:53 <Gregor> And, for that matter, George!
14:36:17 <Gregor> But is that some olde convention by which “ge” is pronounced as 'j'?
14:37:39 <Phantom_Hoover> <Gregor> Repen yes/no? The only word I can think of with a diaeresis eo is pigeon.
14:37:53 <Gregor> Erm, I meant withOUT a diaeresis >_>
14:37:53 <Phantom_Hoover> Pigeon.... does not have diaeresis eo.
14:38:21 <Gregor> If I ever had a pet pigeon, I would name it Pigeön.
14:38:46 <Gregor> Oh damn it, maybe pigeon is just following the same olde convention as George >_>
14:38:57 <boily> pigeorgeon?
14:40:10 <Deewiant> Gregor: "people"
14:40:18 <Gregor> Perfect!
14:40:54 <Gregor> Conclusion: reöpen yes.
14:41:27 <kmc> i want a pet pigeon
14:42:33 <Gregor> Hrrrrrrrrrng! I missed a real opportunity with my cat!
14:42:37 <Gregor> She should be Tiämat.
14:44:43 -!- copumpkin has joined.
14:51:21 -!- ogrom has joined.
15:02:25 -!- DHeadshot has joined.
15:14:59 <lexande> kmc: i didn't think OTT was a briticism, just a sort of jargonfile-esque-abbreviate-everything-ism
15:15:14 -!- epicmonkey has quit (Ping timeout: 260 seconds).
15:19:11 <kmc> i don't think it's a briticism either
15:30:20 -!- monqy has quit (Quit: hello).
15:32:04 <augur_> whats OTT
15:32:22 <lexande> shachaf: i feel like the couchsurfing.org option for where to sleep should also be mentioned for completeness
15:33:26 <lexande> i have used that once or twice but it is usually poorly suited to my needs
15:33:27 -!- AnotherTest has joined.
15:35:58 -!- nooga has quit (Read error: Connection reset by peer).
15:37:34 -!- nooga has joined.
15:48:24 -!- TeruFSX2 has quit (Ping timeout: 268 seconds).
15:56:54 <lexande> shachaf: any particular reason for asking?
15:58:30 -!- AnotherTest has quit (Quit: Leaving.).
16:07:08 -!- augur_ has quit (Remote host closed the connection).
16:09:20 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
16:13:57 -!- MoALTz has joined.
16:14:43 -!- nooga has quit (Ping timeout: 245 seconds).
16:16:39 -!- nooga has joined.
16:35:52 -!- TeruFSX2 has joined.
16:39:04 -!- kinoSi has quit (Read error: Connection reset by peer).
16:39:31 -!- kinoSi has joined.
16:40:50 -!- atriq has joined.
16:52:40 -!- AnotherTest has joined.
16:52:46 -!- augur has joined.
16:58:22 -!- impomatic has joined.
16:59:34 -!- asiekierka has joined.
17:22:30 -!- sirdancealot8 has quit (Ping timeout: 276 seconds).
17:22:49 <atriq> Bulls on Parade is a really boring song on Guitar Hero...
17:31:24 <atriq> But on the plus side, I get it at 100% on medium
17:38:16 -!- Phantom_Hoover has joined.
17:39:23 -!- AnotherTest has quit (Quit: Leaving.).
17:39:46 -!- AnotherTest has joined.
17:39:47 -!- AnotherTest has left.
17:39:49 -!- AnotherTest has joined.
17:42:21 -!- epicmonkey has joined.
17:44:36 -!- TeruFSX2 has quit (Ping timeout: 245 seconds).
17:46:48 <kmc> heh
17:49:17 <AnotherTest> has anyone used boost::spirit here before?
17:49:20 <AnotherTest> I'm liking it
17:50:31 <kmc> i have used it
17:50:56 <kmc> it's fairly terrifying
17:51:03 <kmc> enjoy your 10 page long compiler error messages
17:51:34 <kmc> also enjoy your boost brand "I Can't Believe It's Not Functional Programming" fake lambdas which you will have to use *everywhere*
17:51:42 <FreeFull> kmc: 10 page long due to template abuse?
17:51:55 <kmc> i wonder if it is more usable with actual C++11 lambdas
17:52:03 <kmc> FreeFull: i mean, whether it's abuse is subjective
17:52:11 <FreeFull> [] () { return 0; }
17:52:12 <kmc> but yes, spirit is heavily template meta-programmed and that's the cause of crazy errors
17:52:16 <kmc> yes that is a lambda
17:52:24 <AnotherTest> kmc: you can boost::bind too for semantic actions
17:52:29 <kmc> yeah
17:53:10 <AnotherTest> I find it nice
17:53:10 <FreeFull> \x y z -> x * y * z
17:53:23 <kmc> it's pretty gross how libraries like spirit attempt to do Haskell-style operator-based EDSLs but within the confines of the existing operators and precedences
17:53:30 <kmc> FreeFull: that's one too
17:53:35 <kmc> here is a number: 7
17:53:38 <kmc> here's another one: 19
17:54:01 -!- epicmonkey has quit (Read error: Connection reset by peer).
17:54:15 <kmc> can we play numberwang
17:54:33 -!- epicmonkey has joined.
17:54:59 <fizzie> λ that's one too
17:55:01 <boily> ~dice 6 1
17:55:01 <cuttlefish> 2
17:55:14 <boily> that was a number.
17:55:52 <AnotherTest> kmc: what I do find shocking is that the output size of my program is 1.48 MB)
17:55:52 <fizzie> > 0.0/0.0
17:55:53 <lambdabot> NaN
17:55:55 <fizzie> That wasn't a number.
17:55:58 <AnotherTest> and it's not even 100 lines
17:55:59 <AnotherTest> brb
17:56:02 -!- PatrickRobotham has quit (Ping timeout: 240 seconds).
17:56:07 <AnotherTest> drop the r
17:58:03 <kmc> cuttlefish: that's numberwang!
17:58:24 <kmc> AnotherTest: what if you strip it?
17:59:39 <FreeFull> (*) . (*) x y z
18:01:08 <boily> kmc: what's numberwang?
18:01:47 <atriq> !numberwang 12
18:01:50 <EgoBot> That's numberwang!
18:02:33 * boily is confused, but realizes that it's a perfectly normal state of mind when perusing this channel...
18:02:59 <kmc> boily: http://www.youtube.com/watch?v=qjOZtWZ56lc
18:03:02 <kmc> this should clear it up
18:05:29 <kmc> FreeFull: why are you sending us these bits of code
18:05:58 <FreeFull> I don't think (*) . (*) is valid anyway
18:06:11 <kmc> sure it is
18:06:13 <atriq> :t (*) . (*)
18:06:15 <lambdabot> forall a. (Num a) => a -> (a -> a) -> a -> a
18:06:22 <atriq> :t (*) . (*) $ 1 id 8
18:06:23 <lambdabot> forall a. (Num a) => (a -> a) -> a -> a
18:06:28 <kmc> dambit lambdabot
18:06:34 <atriq> :t ((*) . (*)) 1 id 8
18:06:35 <kmc> the actual type is (Num (a -> a), Num a) => a -> (a -> a) -> a -> a
18:06:35 <lambdabot> forall a. (Num a) => a
18:06:37 <atriq> > ((*) . (*)) 1 id 8
18:06:40 <lambdabot> 64
18:06:45 <atriq> > ((*) . (*)) 1 (+ 1) 8
18:06:48 <lambdabot> 72
18:06:51 <atriq> > ((*) . (*)) 2 (+ 1) 8
18:06:54 <lambdabot> 144
18:07:00 <kmc> but lambdabot has a nonstandard instance (Num a) => instance Num (b -> a)
18:07:07 <kmc> fucking lambdabot
18:07:11 <boily> kmc: two... hundred
18:07:33 <kmc> hey let's start a collaborative learning system for Haskell beginners and have a bot which gives WRONG ANSWERS FOR THE AMUSEMENT OF THE EXPERTS
18:07:40 <FreeFull> Oh, you have to put it in extra ()
18:11:16 <kmc> «f . g x y» means something different from «(f . g) x y»
18:11:23 <kmc> either one could be valid in the right context
18:11:34 <kmc> the former is equivalent to «f . (g x y)»
18:12:09 <kmc> function application syntax binds tighter than any infix operator
18:13:52 <atriq> Both are different from (f . g) (x y)
18:14:02 <kmc> yep
18:14:17 <FreeFull> I'm wondering how you'd make the equivalent of (\x y -> (*) ((*) x y))
18:14:44 <atriq> @unpl \x y -> (*) ((*) x y)
18:14:45 <lambdabot> \ x y -> (*) (x * y)
18:14:45 <oonbotti> ERROR:Word not found
18:14:49 <atriq> @pl \x y -> (*) ((*) x y)
18:14:49 <lambdabot> ((*) .) . (*)
18:16:06 <soundnfury> ok, it just looks like bunnies to me
18:16:13 <kmc> yes!
18:16:20 <atriq> > (((*) .) . (*)) 2 3 4
18:16:22 <lambdabot> 24
18:16:23 <FreeFull> Of course this is just messing around with syntax just because
18:18:13 <FreeFull> > ((*) .) . (*) $ 1 2 3
18:18:14 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a -> a)
18:18:14 <lambdabot> arising from a use...
18:18:50 <FreeFull> Yeah, that won't work
18:19:01 <FreeFull> (((*) .) . (*)) looks mighty weird
18:19:04 <kmc> yep
18:19:09 <kmc> don't use that in actual code ;P
18:19:38 <soundnfury> where "that" = "Haskell", clearly ;P
18:20:07 <FreeFull> kmc: Not planning to =P
18:20:15 <kmc> lol nice zinger soundnfury
18:25:33 -!- MoALTz has quit (Ping timeout: 245 seconds).
18:31:09 <soundnfury> kmc: I aim to please :)
18:31:19 <soundnfury> so how is everyone?
18:32:08 -!- ogrom has quit (Quit: Left).
18:34:06 <kmc> it's funny how you have to inject your opinion that haskell sucks into any discussion relating to haskell
18:34:18 <kmc> it's the same thing most people do with PHP and C++
18:34:55 <copumpkin> haha php sux
18:34:59 <copumpkin> what were you saying?
18:35:07 <kmc> copumpkin is posting in this high quality thread
18:35:24 <copumpkin> :)
18:36:04 <soundnfury> kmc: what can I say? I'm an asshole about programming-language holywars
18:36:47 <copumpkin> you and 99% of the rest of the programming world
18:36:53 <copumpkin> everyone thinks they know it best
18:37:00 <soundnfury> also, see also: EMACS vs vi.
18:37:01 <copumpkin> but they're all wrong, cause I know it best
18:37:04 <soundnfury> (The answer is: ed)
18:37:11 <kmc> emacs vs vi is an absurd cliche of a holy war
18:37:17 <kmc> nobody actually cares that much
18:37:19 <kmc> nobody i've met anyway
18:37:23 <soundnfury> biab dinnerscooked
18:37:24 <copumpkin> yeah
18:37:30 <kmc> it turns out that if you're a professional programmer you meet people who are real people and not stereotypes
18:37:50 <kmc> dinnersocked
18:37:54 <nortti> I use ed and vi and duslike emacs but you can't get me to fight for my editor
18:38:01 -!- derdon has joined.
18:38:15 <kmc> soundnfury: by "an asshole about programming-language holywars" you mean that you like to start them for fun?
18:38:24 <boily> are realness and stereotypedness mutually exclusive?
18:38:43 <nortti> soundnfury: you really use ed?
18:38:51 -!- graue has joined.
18:39:05 <kmc> LOL WELL I EDIT FILES BY RUBBING MY DICK AGAINST THE HARD DRIVE
18:39:07 <kmc> ARGUMENT: WON
18:39:34 <Lumpio-> http://xkcd.com/378/
18:39:46 <kmc> yes that's what i was making fun of Lumpio-
18:39:52 <kmc> -_-
18:40:09 <fizzie> What does "represent the foreign information media" mean?
18:40:30 <kmc> see people, this is why i can't just stop reading xkcd even though it sucks
18:40:36 <Lumpio-> kmc: It wouldn't have been obvious enough without the link.
18:40:41 <kmc> because people will always and forever use it as the reference point for any "nerdy" topic
18:41:01 <kmc> ok but now i'm just trolling
18:41:53 <nortti> kmc: why does xkcd suck?
18:42:03 <kmc> beats me
18:42:05 <itidus21> maybe thats what xkcd really is... a reference for certain points that noone else makes
18:42:15 <kmc> no it's a reference for points that *everyone* makes
18:42:51 <itidus21> if everyone keeps making a point then a lot of people must be aggressively ignoring it
18:42:52 <kmc> in the earliest iteration, xkcd playfully poked fun at the standard nerd conversational tropes
18:43:10 <kmc> but it quickly devolved into transcribing these conversations for a wider audience
18:43:29 <soundnfury> nortti: well, not for routine editing, no (gedit and nano actually)
18:43:54 <soundnfury> but when I discovered yesterday that lappy didn't have ed installed, I immediately apt-got it
18:44:03 <kmc> so what do you use ed for soundnfury
18:44:15 <kmc> other than bragging about how big your e-peen is
18:44:25 <soundnfury> Fun.
18:44:34 <Lumpio-> I have never used ed
18:44:47 <kmc> this is #esoteric after all
18:44:50 <kmc> you could argue it's an esoeditor
18:45:00 <nortti> soundnfury: I usually just compile this one http://pjotr.dy.fi/files/ed.c
18:45:01 <soundnfury> also: bother, I burnt the chips
18:45:10 <nortti> kmc: teco is esoeditor
18:45:19 <soundnfury> nortti: let me guess. It prints "?" on every input?
18:45:19 <nortti> soundnfury: or the unix v7 one
18:45:23 <soundnfury> (without having looked at it)
18:45:30 <nortti> soundnfury: no. it really works
18:45:42 <Lumpio-> I kind of feel bad calling software or languages esoteric even though they weren't purposefully made to be so
18:45:43 <soundnfury> kmc: you could, but the original Unix source code was all written with ed iirc
18:46:09 <nortti> soundnfury: the ? printing variant: main(a){for(;;){read(0,&a,1);if(a=='\n')write(1,"?\n",2);}}
18:46:25 <soundnfury> yeah, that
18:47:35 <nortti> soundnfury: but the link I posted is some random ed I have ported to diffent operating systems. my friend is now hosting it on his haiku web server
18:47:51 <soundnfury> wait, haiku?
18:47:54 <soundnfury> as in, beos?
18:48:05 <nortti> yes
18:48:23 <nortti> he wanted some more obscure os
18:48:29 <nortti> for some reason
18:48:32 <itidus21> i think the programming problem is that on the one hand everyone runs more smoothly with standards, but on the other hand standards are all biased in some way
18:48:43 <soundnfury> yeah well, he should have used risc os
18:48:57 <itidus21> ^everything runs
18:49:02 <nortti> soundnfury: he doesn't have ARM computers
18:49:07 <soundnfury> gotta love those old acorn arcs
18:49:20 <nortti> I'd love to get acorn riscpc
18:49:44 <nortti> newer ones are in my comfortable processing power limits
18:50:16 -!- sirdancealot has joined.
18:53:14 <fizzie> "are you seeking entry to engage in criminal or immoral activities" these forms are always so lovely.
18:54:03 <quintopia> lol. i don't understand why they even bother with questions like that.
18:54:53 <itidus21> for whoever is reading this like in a log, and didn't wisely ignore my post.. please ignore it now..
18:55:47 <quintopia> "excuse me, the local police station here is having a survey. could you just tell me whether you are a pedophile rapist murderer? just check yes or no here..."
18:57:13 <Phantom_Hoover> It's like that US immigration form that asks if you were a Nazi.
18:57:16 <itidus21> i figure it's so that afterwards when you do engage in criminal/immoral activities noone can say they didn't ask
18:57:46 <itidus21> so they can call you a liar
18:57:59 <quintopia> "you didn't do a background check on this idiot?" "why should we? he said he wasn't a criminal!"
18:58:20 <atriq> itidus21, do you have a particularly strong aussie accent?
18:58:38 <Phantom_Hoover> "haha, now we have him for being a Nazi AND lying on an immigration form!"
18:58:38 <Phantom_Hoover> atriq, no.
18:58:45 <itidus21> no.... my accent has a certain unplacability about it
18:58:48 <atriq> Hmm
18:59:04 <atriq> Thinking of cosplaying Steve from IWC, need to get the accent
18:59:09 <itidus21> hummm
18:59:15 <itidus21> ok i have the video for you :D
19:00:27 <itidus21> if i can remember its name
19:05:03 <fizzie> Phantom_Hoover: It was that form. Well, the ESTA thing.
19:05:31 <fizzie> And it did ask if I've been involved in Nazi stuff between 1933 to 1945.
19:05:40 <fizzie> "Have you ever been or are you now involved in espionage or sabotage; or in
19:05:40 <fizzie> terrorist activities; or genocide; or between 1933 and 1945 were you involved,
19:05:44 <fizzie> in any way, in persecutions associated with Nazi Germany or its allies?
19:08:00 -!- AnotherTest has quit (Quit: Leaving.).
19:12:40 <Gregor> “In 1945 I was busy waiting for my parents to be born.”
19:13:17 <itidus21> yay i found it
19:13:50 <itidus21> this is technically just an actor but...
19:13:52 <itidus21> http://www.motifake.com/image/demotivational-poster/0811/trent-from-punchy-demotivational-poster-1226565882.jpg
19:14:19 <itidus21> http://www.youtube.com/watch?v=0RjC-vh06_c
19:14:35 <itidus21> its a fake australian accent, but it still kinda counts
19:14:57 <atriq> I have an uncle with an australian accent
19:15:06 <atriq> Strictly speaking I have 3
19:15:23 <itidus21> this is the side of australia they hide
19:17:56 <atriq> They...
19:18:03 <atriq> They all live in Victoria
19:20:43 <itidus21> i found out the guy is actually an actor, but its convincing cos australians can be like that
19:34:26 -!- oerjan has joined.
19:37:38 <atriq> oerjan, :)
19:38:54 <oerjan> <Gregor> Reöpen yes/no? The only word I can think of with a diaeresis “eo” is pigeon. <-- um pigeon is two syllables, google agrees
19:39:11 <oerjan> atriq: evening
19:39:28 <Gregor> oerjan: Ya make ONE tpyo, and you pay for it forever.
19:39:34 <Gregor> oerjan: I meant withOUT.
19:39:36 <olsner> röpen?
19:40:33 <oerjan> apparently yeomen is two syllables iiuc
19:40:37 <Phantom_Hoover> atriq, do a New Zealand accent, see if anyone notices.
19:40:59 <Phantom_Hoover> oerjan, it's 'yo, men'.
19:41:01 <Gregor> Aha, “yeoman” is another great example!
19:42:25 <atriq> geography
19:42:37 <atriq> No wait
19:43:41 <olsner> is it words with or without a diaeresis "eo" we're looking for?
19:44:30 <atriq> without
19:44:32 <atriq> I was wrong
19:45:47 <oerjan> is meow one or two syllables
19:46:38 <oerjan> apparently either
19:46:46 <atriq> Two, I'd say
19:46:49 <atriq> Meee-ooooow
19:47:06 <atriq> The second of which is a dipthong
19:47:10 <fizzie> Gregor: feoff.
19:48:33 <fizzie> Also I guess jeopardy maybe? I'm no Englosser. (Isn't that what an English-speaking person is called?)
19:48:57 <Gregor> Yes, yes, there are plenty of examples both with and without X-D
19:48:58 <olsner> an englosser should be a person who makes things glossy
19:48:59 <atriq> (I think it's an anglophone, and also that you're joking)
19:49:10 <Gregor> But more with diaeresis, I think.
19:52:22 <oerjan> diarheasis
19:52:42 <oerjan> *rr
19:54:13 <fizzie> The diarrheasis is a diacritic that has the shape of a messy splatter.
19:54:17 -!- ais523 has joined.
19:55:20 <fizzie> U+3163F COMBINING DIARRHEASIS BELOW
19:55:23 <oerjan> 18:39:05: <kmc> LOL WELL I EDIT FILES BY RUBBING MY DICK AGAINST THE HARD DRIVE
19:55:26 <fizzie> A character to avoid, perhaps.
19:55:26 <oerjan> 18:39:07: <kmc> ARGUMENT: WON
19:55:30 <oerjan> HARD DRIVE: DESTROYED
19:57:26 <oerjan> <kmc> because people will always and forever use it as the reference point for any "nerdy" topic <-- rubbish, there's also smbc
19:59:40 -!- asiekierka has quit (Quit: Connection reset by PO).
20:04:23 <oerjan> atriq: also why aren't you just looking up the real steve irwin on youtube
20:04:35 <atriq> Because that's a completely different person
20:04:45 <oerjan> hm true, true
20:04:48 <atriq> And the earliest I'm doing this is April
20:05:07 <oerjan> i believe he _does_ speak strine though
20:05:19 <atriq> So does DMM
20:05:37 <oerjan> he does?
20:05:50 <oerjan> "strine" means more than just australian, iiuc
20:05:50 <atriq> On account of, you know, being Australian
20:06:13 <oerjan> it means extremely heavy accent
20:06:30 -!- DHeadshot has quit (Read error: Connection reset by peer).
20:06:32 <oerjan> basically an accent in which you pronounce australian like "strine"
20:06:48 -!- DHeadshot has joined.
20:07:12 <oerjan> mind you i don't actually know. i should get around to listening to those iwc podcasts some day.
20:09:35 <oerjan> also http://en.wikipedia.org/wiki/Strine contains "The naturalist and TV presenter Steve Irwin was once referred to as the person who "talked Strine like no other contemporary personality".[4]"
20:12:11 <fizzie> oerjan: Maybe DMM does not quite count as a "personality".
20:12:24 <oerjan> shocking
20:14:18 <atriq> Seeing as I'm gonna be cosplaying as an Australian from an Australian webcomic in a western style at an anime convention
20:15:29 <fizzie> oerjan: Your SMBC mention made me go look the last 50-odd ones I hadn't read, and one of them made me chuckle. That's unforgivable.
20:16:25 <fizzie> (Namely, panel #5 (with 1-based indexing) of http://www.smbc-comics.com/index.php?db=comics&id=2687 did.)
20:16:59 -!- DHeadshot has quit (Read error: Connection reset by peer).
20:17:32 <oerjan> how can you laugh at such tragedy.
20:18:02 <oerjan> about time for me to catch up on it as well
20:18:29 <atriq> Oh dear god
20:18:35 <atriq> After I've been talking about Muse
20:18:41 <atriq> DMM posted on his blog
20:18:48 <atriq> That he now likes Muse
20:18:56 <oerjan> actually i'll postpone that again
20:19:26 <atriq> I reserve SMBC as my TVTropes escape mechanism
20:21:22 <soundnfury> fizzie: you could have just used an ordinal instead of a cardinal
20:21:35 <soundnfury> given that you were describing something ordinally rather than cardinally
20:22:25 <oerjan> also using 0-based indexing outside programming is an automatic turing test failure, anyway.
20:22:46 <fizzie> fungot: What kind of indexing do you use?
20:22:47 <fungot> fizzie: video games. my bro say can rec me not lol. can try eh huh?..i a bit late. decimal can? leaving hse nw
20:22:47 <oerjan> ok maybe some math too
20:23:42 <kmc> oerjan: what about building floors in britain
20:23:46 <kmc> or much of the rest of the world
20:23:56 <kmc> they even use -1 for first basement, -2 for second basement, etc
20:24:05 <oerjan> madness!
20:24:28 <oerjan> obviously the brits are robots, they invented industry after all
20:24:32 <kmc> true
20:24:50 <soundnfury> thank you, I take this as a compliment
20:24:53 <fizzie> At the university in Belgium, the room numbers were "aa.bb", with the two-digit 'aa' denoting floor; they had 00 for ground floor, 01 for the one above it, etc.; and 99 for first basement, 98 for second.
20:25:10 <fizzie> I don't think I heard anyone speaking of "floor 99", though.
20:25:12 <kmc> heh
20:25:16 <oerjan> soundnfury is british? it's so hard to notice over the haskell bashing
20:26:59 <oerjan> fizzie: modulo 100 arithmetic?
20:27:26 <oerjan> what _is_ the base 10 equivalent of the phrase "two's complement" anyway
20:27:42 <olsner> 10's complement?
20:27:45 <FreeFull> fizzie: What was 50?
20:28:04 <FreeFull> Or did that not come up because there weren't that many floors? =P
20:28:29 <fizzie> FreeFull: Presumably it'd depend on how many basement levels and floors the building had.
20:28:45 <fizzie> Don't know what they'd have done for buildings with >100 floors in total.
20:29:09 -!- MoALTz has joined.
20:29:41 <oerjan> "The method of complements can also be applied in base-10 arithmetic, using ten's complements by analogy with two's complements."
20:30:35 <olsner> and the counterpart of 1's complement would be 9's complement?
20:32:46 <soundnfury> oerjan: well, C was based on BCPL, which was designed at Cambridge
20:33:33 <atriq> The main Haskell compiler was created at Glasgow
20:34:00 <soundnfury> yes
20:34:11 <oerjan> olsner: seems so
20:34:19 <soundnfury> but glasgey is one of my least favourite of the scottish stereotypes
20:34:47 <oerjan> no true scottish stereotype
20:34:51 <soundnfury> ahaha
20:35:18 <fizzie> The BCD article mentions signed BCD with ten's complement. I was wondering if anyone was doing that.
20:35:40 <soundnfury> Hmm.
20:35:54 <oerjan> olsner: i imagine this terminology will get very confusing if you are using two different bases one apart
20:36:07 <fizzie> ('At least kind of.)
20:36:18 <soundnfury> fizzie: would DA instructions still work properly?
20:36:23 <olsner> oerjan: indeed
20:36:28 * soundnfury _thinks_ they should but isn't sure
20:36:44 <soundnfury> Anyway, Real Men™ use balanced ternary.
20:36:49 <olsner> otoh, that would be a fairly weird thing to do in the first place, maybe it won't matter all that much
20:36:54 <soundnfury> (and Complex Men™ use Quater-imaginary base)
20:37:03 <soundnfury> (badum-tish!)
20:37:07 <kmc> i'm just a simple pole in a complex plane
20:37:26 <soundnfury> Zero, because all the poles are in eastern europe
20:37:35 <kmc> except that's plainly not the case
20:37:39 <kmc> planely
20:37:39 <oerjan> kmc: you're not a pole!
20:37:42 <kmc> i'm not
20:37:47 <atriq> They're over here stealing our jobs #dailymail
20:37:51 <kmc> haha
20:37:51 <soundnfury> kmc: ok, there are /some/ poles in western europe, but they are removable
20:37:54 <oerjan> nooga: you may swat kmc
20:37:59 <kmc> "press 2 for polish"
20:37:59 <atriq> Oh god did I just hashtag in IRC
20:38:03 <atriq> What have I become
20:38:06 <soundnfury> atriq: it's ok
20:38:09 <soundnfury> pretend it's a channel
20:38:32 <kmc> i will not join #dailymail
20:38:42 <atriq> It's empty
20:38:42 <fizzie> The official Daily Mail freenode channel.
20:38:42 <FreeFull> Binary coded hexadecimal is equivalent to binary itself
20:38:42 <soundnfury> HEY EVERYONE let's all /join #dailymail and pretend to be crazed xenophobes
20:38:59 <atriq> Nah
20:39:37 <oerjan> why would you want us to pretend that, are you some kind of communist
20:39:38 <olsner> binary coded trinary
20:39:56 <kmc> binary coded binary
20:40:00 <olsner> or binary coded unary, that might be worse
20:40:36 <soundnfury> binary coded baudot coded binary
20:40:43 <FreeFull> binary coded negabinary
20:40:54 <soundnfury> store bits as FIGURESHIFT {0,1} LETTERSHIFT
20:40:59 <soundnfury> 15 bits per bit
20:41:41 <fizzie> UCS-4-coded binary only uses 32 bits per bit.
20:42:02 <olsner> you could store the bits in combining characters
20:42:42 <olsner> something like, an odd number of combining characters is a one, an even number is a zero perhaps?
20:43:22 <oerjan> and then you print it as a book in vietnamese
20:45:09 <kmc> hahaha
20:45:58 <shachaf> Using UCS-2.625 you get one bit per 3 codepoints.
20:46:15 <olsner> 2.625?
20:46:29 <shachaf> That's where you store 3 codepoints per 64 bits.
20:46:31 <shachaf> > 21*3
20:46:32 <lambdabot> 63
20:49:16 <olsner> oh, you mean you store the bit in the extra bit left over after the 3 codepoints?
20:49:23 <shachaf> Yes.
20:50:55 <olsner> UCS-4 lets you store 3 codepoints in 96 bits without even having any bits left over
20:51:55 <fizzie> And it's more secure. I mean, it has more bits, it must be.
20:52:05 <shachaf> UCS-4 has lots of bits left over.
20:52:19 <shachaf> > (32-21)*3
20:52:20 <lambdabot> 33
20:52:27 <olsner> well, yeah, but they must all be zero
20:52:27 <fizzie> Those aren't left over.
20:52:44 <shachaf> Well, OK.
20:52:57 <shachaf> UCS-2.625 ought to be called UCS-2.666... anyway.
20:53:02 <shachaf> The bit isn't really left over.
20:54:15 <fizzie> UCS-2.510932855... and so on.
20:54:23 <fizzie> When UCS-2.625 feels too wasteful.
20:54:59 <fizzie> You only need 20.08746... bits, after all. 21 is almost a whole bit too much.
20:55:02 <oerjan> > logBase 2 21
20:55:04 <lambdabot> 4.392317422778761
20:55:16 <oerjan> erm
20:55:17 <shachaf> fizzie: Huh? Unicode is specified to use 21 bits.
20:55:31 <fizzie> shachaf: No, it's specified to contain code points from 0 to 0x10FFFF.
20:55:41 <shachaf> Oh, really?
20:55:51 <shachaf> Hm.
20:55:54 <olsner> I wonder how they came up with 17 as a logical number of planes
20:55:55 <oerjan> > logBase 2 (0x10FFFF+1)
20:55:56 <lambdabot> 20.087462841250343
20:55:57 <fizzie> 17 planes.
20:56:11 <oerjan> > logBase 256 (0x10FFFF+1)
20:56:12 <shachaf> fizzie: You also don't need to store surrogate-pair codepoints.
20:56:12 <lambdabot> 2.510932855156293
20:56:18 <shachaf> So that saves a bit more.
20:56:19 <oerjan> there you go
20:56:22 <olsner> it had to be a prime number? they wanted to make sure no-one tried to make do with 20 bits?
20:56:44 <atriq> 21 isn't prime?
20:56:47 <olsner> you can always include the surrogate pairs in your UCS-4 or UTF-8 encoding
20:57:10 <olsner> people already actually do that, so it would hardly even be weird
20:57:17 <shachaf> olsner: But they're invalid.
20:58:07 <oerjan> > logBase 256 (0x10FFFF+1) :: CReal
20:58:09 <lambdabot> 2.5109328551562924260317582513513005442514
20:58:20 <olsner> invalid schminvalid
20:59:28 <olsner> you could do UCS-2.5 with an escape code that enter an astral mode where everything is offset with one plane
20:59:41 <olsner> *enters
21:01:37 <fizzie> > let m = (1+) . fromIntegral . fromEnum in logBase (m (maxBound :: Word8)) (m (maxBound :: Char)) -- now without magic constants
21:01:40 <lambdabot> 2.510932855156293
21:03:19 <olsner> another escape code could take you to astral plains with otherworldly farmers
21:03:35 -!- boily has quit (Quit: Poulet!).
21:04:04 -!- cuttlefish has quit (Remote host closed the connection).
21:04:37 <fizzie> olsner: The UCS (i.e. ISO/IEC 10646, Universal multiple-octet coded character set (UCS)) at one point in its history had 2^31 codepoints, with 128 "groups" of 256 "planes" of 256 "rows" of 256 "cells".
21:05:42 <fizzie> They had at least a draft out with that kind of structure.
21:06:29 <fizzie> Then Unicode bumped themselves up from 16 bits to the 17-plane thing in version 2.0, and ISO 10646 limited themselves to the same amount.
21:11:30 <fizzie> olsner: As for why exactly 17 planes, it at least exactly "fills" the UTF-16 surrogate pair mechanism -- you get the BMP as-is, and the other 16 planes make for exactly 20 bits, and there's 10 bits space in each surrogate half -- though I don't know the history.
21:12:11 <soundnfury> olsner: would this astral plane contain three encodings of '_'?
21:13:02 <olsner> well, there is the plane of planes, where every code point is an encoding of '_'
21:13:15 <shachaf> UTF-16 is the devil. :-(
21:13:53 <shachaf> The plane of planes has a lot of characters like ✈
21:14:12 <olsner> no, that's the *other* plane of planes
21:14:14 -!- epicmonkey has quit (Ping timeout: 265 seconds).
21:14:29 <shachaf> Or is it the plane of *other* planes?
21:14:32 <soundnfury> shachaf: no, the devil is people who assume "UTF-16 is just UCS-2, right?"
21:14:52 <soundnfury> olsner: DYESWIDT?
21:14:52 <shachaf> soundnfury: That's a double devil.
21:15:24 <shachaf> Do You ESWant IDentified Things?
21:15:36 <soundnfury> No! I can't be dead!
21:15:49 <shachaf> soundnfury: There is only silence and some second-hand clothes.
21:16:02 <soundnfury> shachaf: You have: no tea
21:22:34 <shachaf> take common sense
21:23:57 <fizzie> Unicode 2.0 indeed seems to (a) still talk about how "Unicode character codes have a uniform width of 16 bits" and (b) introduce the "surrogate extension mechanism" to access the non-BMP characters. So it does sound like that's why the 17 planes; I think they got UTF-16 out of the then-existing ISO/IEC 10646-1:1993 that (I believe) had 2^31 codepoints. Would be interesting to see a draft of ...
21:24:03 <fizzie> ... that, to see how they justify the encoding that can't go all the way up.
21:24:40 <fizzie> There's an "overview" document from that time describing the Transformation Formats, saying "UTF-16: Unlike UTF-8 and UTF-7, this transformation reduces UCS-4-coded text to a UCS-2-based encoding and the result can only be used by so called 8-bit safe programs and processes, where all octet values are allowed. All UCS-4 codes in the BMP are reduced to the corresponding code in UCS-2. In ...
21:24:47 <fizzie> ... addition, UCS-4 codes in the 10 following planes of group 0 are transformed to two UCS-2 codes. 4096 codes in the BMP are reserved for this. This makes the characters that in the future may be allocated to 1048576 code positions of UCS-4 outside the BMP available in the 16-bit UCS-2 coded character set. The other code positions in UCS-4 are still unusable in the UTF-16 transformation ...
21:24:53 <fizzie> ... format. One motivation for defining UTF-16 has been that it will make it possible for software implementing Unicode to cope with the expansion of UCS outside the BMP for the foreseeable future."
21:25:39 <olsner> being "8-bit safe" doesn't sound very useful when exposed to either of UCS-2 or UTF-16
21:26:49 <fizzie> It also withdraws the UTF-1 from the draft; I wonder if that thing was ever really used anywhere.
21:33:53 <Sgeo> Got a spam asking if I sent some woman to collect money on my behalf
21:34:03 <Sgeo> I have to wonder what would happen if I said "yes"
21:44:20 <atriq> "So that's who the money lady was talking about"
21:44:33 <atriq> "I'm glad I gave her all my money now"
21:45:12 <atriq> And on that bombshell, goodnight!
21:45:14 -!- atriq has quit (Quit: Leaving).
21:51:48 -!- pikhq_ has quit (Ping timeout: 245 seconds).
21:51:52 -!- pikhq has joined.
21:55:58 <oerjan> somewhere in hexham atriq is sleeping on top of a bomb
21:56:21 <shachaf> `? hexham
21:56:32 <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.
21:56:33 <shachaf> ?where hexham
21:56:33 <lambdabot> I know nothing about hexham.
21:56:48 <oerjan> ?list where
21:56:48 <shachaf> Taneb? Who's Taneb?
21:56:48 <lambdabot> where provides: where url what where+
21:57:00 <olsner> `? ham
21:57:04 <HackEgo> ham? ¯\(°_o)/¯
21:57:08 <oerjan> shachaf: there might be a slight hint in the topic
21:57:18 <lexande> i wonder what hexham is like
21:57:29 <shachaf> oerjan: atriq is Taneb, but is "is" symmetric?
21:57:31 <lexande> i have been to wylam, is it a bit like that?
21:57:39 <shachaf> If "is" is symmetric then symmetric is "is".
21:57:43 <shachaf> Which doesn't make sense.
21:57:50 <oerjan> ?where+ Hexham is in Northumblingaroundland
21:57:50 <lambdabot> Done.
21:57:54 <oerjan> ?where hexham
21:57:55 <lambdabot> is in Northumblingaroundland
21:57:59 <oerjan> oops
21:58:06 <oerjan> ?where+ Hexham Hexham is in Northumblingaroundland
21:58:06 <lambdabot> Done.
21:58:23 -!- augur has quit (Remote host closed the connection).
21:58:38 <oerjan> shachaf: see: equivalence relations
21:58:53 <shachaf> oerjan: "is" is an equivalence relation?
21:59:10 <shachaf> @whatis gazpacho
21:59:10 <lambdabot> I know nothing about gazpacho.
21:59:12 <shachaf> `? gazpacho
21:59:16 <HackEgo> gazpacho? ¯\(°_o)/¯
21:59:17 <oerjan> SOMETIMES
21:59:36 <lexande> "is" is not an equivalence relation
21:59:58 <shachaf> "is" can mean a lot of things. Like ⊆
22:00:39 <lexande> "is" is a partial order
22:02:56 <oerjan> `run echo "You like Gazpacho and I like Gaspacho. Let's call the whole thing off!" >wisdom/gazpacho
22:02:59 <HackEgo> No output.
22:03:13 <oerjan> `run cp wisdom/gazpacho wisdom/gaspacho
22:03:16 <HackEgo> No output.
22:03:23 <oerjan> `? gazpacho
22:03:26 <HackEgo> You like Gazpacho and I like Gaspacho. Let's call the whole thing off!
22:05:16 <lexande> does "is" define a lattice?
22:05:26 <shachaf> `? lettuce
22:05:29 <HackEgo> lettuce? ¯\(°_o)/¯
22:05:40 <shachaf> lexande: What would be the top and bottom?
22:05:45 <shachaf> "something" and "everything"
22:05:46 <shachaf> ?
22:05:53 <oerjan> `learn Lettuce is a vegetable with two operations, join and meet.
22:05:57 <HackEgo> I knew that.
22:06:01 <coppro> haha
22:06:15 <coppro> oerjan: dressings, not operations
22:06:22 <olsner> speaking of lettuce, did you know that no-one knows exactly what kind of lettuce they had on the titanic?
22:06:28 <oerjan> `learn Lettuce is a vegetable with two dressings, join and meet.
22:06:31 <HackEgo> I knew that.
22:06:53 * oerjan braces for the punchline
22:06:53 <olsner> and iirc, iceberg lettuce wasn't invented at that time
22:15:28 <shachaf> #haskell: Worst channel or worstest channel?
22:15:44 <olsner> Wurstest
22:18:35 <Gregor> Bratwurstest!
22:23:18 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:28:05 <kmc> what did it do this time
22:28:10 <kmc> shachaf: ^
22:28:44 <kmc> fizzie: UTF-1??
22:30:05 <kmc> <olsner> you could do UCS-2.5 with an escape code
22:30:15 <kmc> you have reinvented ISO 2022
22:30:17 <kmc> go directly to jail
22:30:19 <kmc> do not pass go
22:30:21 <kmc> do not collect $200
22:30:30 <kmc> "do not collect CHF 60 for a copy of ISO 2022"
22:38:08 <shachaf> kmc: Oh, just the usual.
22:38:20 <shachaf> Monads and things.
22:38:29 <olsner> why are you even in there if you don't like it?
22:38:39 <shachaf> I like some of it.
22:39:03 <shachaf> This is like one of those experiments where the randomized rewards get further and further apart from each other, though. :-)
22:39:07 <shachaf> s/.$/(/
22:39:24 <olsner> kmc: hmm, if that just makes a new ISO 2022, that's boring... I don't know how ISO 2022 works, but is there some way of making it more horribler than ISO 2022?
22:49:14 <kmc> i assume so
22:49:34 <kmc> ISO 102022
22:49:48 <kmc> also now i want currywurst :(
22:50:15 <olsner> 17 planes filled with 65536 escape codes each
22:50:51 <oerjan> monads and lenses and kinds, oh my
22:51:03 -!- Nisstyre has quit (Quit: Leaving).
22:51:45 -!- copumpkin has joined.
22:52:56 <olsner> hurr, this movie has gun kata
22:53:09 -!- augur has joined.
22:53:14 <kmc> oh man i forgot about gun kata
22:53:24 <olsner> happy to help :)
22:55:52 -!- Nisstyre has joined.
22:59:12 -!- graue has quit (Quit: Leaving).
23:03:53 <kmc> emacs in popular culture
23:06:22 <olsner> wat
23:06:27 <kmc> huh http://geofft.mit.edu/blog/sipb/132 cool
23:10:29 <soundnfury> kmc: yuck, tempfiles?
23:10:50 <soundnfury> why didn't he use "gcc -x c <"?
23:11:13 <shachaf> kmc: ezyang is moving to CA!
23:11:54 <oerjan> canafornia
23:12:08 <kmc> soundnfury: you still need somewhere to put the executable and run it
23:12:13 <olsner> cellular automafornia
23:12:17 <kmc> shachaf: ok
23:12:23 <kmc> right, grad school at stanford
23:12:24 <kmc> i knew that
23:12:46 <oerjan> calistanford
23:12:47 <soundnfury> kmc: there must be a way around that.
23:12:55 <kmc> soundnfury: let me know
23:13:35 <olsner> there are C interpreters, I guess
23:14:05 <olsner> or you could use that gccrun, which is a very tiny shell script
23:14:29 <shachaf> It turns out you can reach Knuth via email overnight if you know the right person to contact.
23:14:36 <soundnfury> yes, but, tempfiles? Yuck.
23:14:51 <olsner> yeah, gcc $0 is a bit more fun
23:15:02 <kmc> soundnfury you're really getting on my nerves
23:15:04 <kmc> maybe that's the goal
23:15:12 <soundnfury> not entirely
23:15:18 <oerjan> shachaf: not for long _now_...
23:15:23 <soundnfury> though there is a part of my personality that seems to want to
23:15:57 <coppro> so i read homestuck for the deep philosophical questions
23:16:04 <coppro> like 'is the jig every anywhere but up?'
23:17:22 <kmc> soundnfury: people in general, or me in particular?
23:17:32 * Sgeo is currently vacillating between Common Lisp and Clojure
23:17:41 <kmc> Sgeo: for what purpose?
23:17:44 <soundnfury> kmc: people who like haskell in general
23:17:48 -!- monqy has joined.
23:17:53 <kmc> for talking about on IRC?
23:17:55 <Sgeo> kmc, a language to use for whatever purpose
23:18:10 <soundnfury> Sgeo: Write your own Lisp.
23:18:13 <kmc> soundnfury: did i even say i like haskell?
23:18:15 <Sgeo> Maybe finally trying web dev, maybe making IRC bots, maybe implementing an esolang.
23:18:36 <kmc> or did you infer that from the fact that i'm annoyed by your extremely ham-fisted attempts at bashing haskell
23:19:03 <soundnfury> kmc: well, maybe also people who don't like people who don't like haskell
23:19:05 <soundnfury> iunno
23:19:45 <kmc> ok
23:20:07 <kmc> it's not that you "don't like haskell" it's that the intellectual depth of your criticism is "LOL HASKELL SUX AM I RITE"
23:20:08 <soundnfury> /bin/bash -c "ghc" # bashing haskell
23:20:20 <Sgeo> kmc, also I like the idea of modifying a program while its running for developement purposes
23:20:30 <kmc> i've got plenty of gripes with haskell myself
23:20:59 <soundnfury> kmc: that's because going any deeper than that into haskell-speak saps my will to live
23:21:29 <kmc> ok
23:21:29 <soundnfury> and haskellers won't talk to you except in their categorical language
23:21:38 * shachaf sighs.
23:21:45 <kmc> the fact that you think haskell is about category theory indicates that you lack even a basic understanding of the language
23:21:56 <soundnfury> it's not that haskell is about category theory
23:22:28 <soundnfury> it's that haskell coders are about category theory
23:22:36 <kmc> only a minority of them
23:22:37 <kmc> but anyway
23:22:47 <kmc> there are plenty of pragmatic real-world-language grounds on which to criticize haskell
23:22:51 <kmc> which have nothing to do with category theory
23:23:05 <Sgeo> Being a fan of one concept inspired by category theory does not imply thinking about category theory
23:23:06 <soundnfury> and generally try to take far too mathematical an approach to programming
23:23:32 <Sgeo> kmc, does having to deal with monad transformers count as one of those reasons?
23:23:39 <kmc> potentially
23:24:01 <soundnfury> I mean, don't get me wrong, I'm a maths graduate myself, I *love* maths. But formal methods in programming really turn me off
23:24:17 -!- TeruFSX2 has joined.
23:24:50 <Sgeo> Haskell takes heavy inspiration from math, but that doesn't mean it's ... not sure what I'm trying to say
23:25:20 <kmc> haskell is not particularly about "formal methods" but the stuff that's *actually* called "formal methods" is pretty damn important
23:25:33 <kmc> if i'm riding in an airplane, i want to know that the software running the plane has been mathematically proven correct
23:25:44 <kmc> in addition to lots of real-world testing
23:25:49 <kmc> one is not a substitute for the other
23:26:07 <kmc> obviously if you're making a website to serve cat photos you don't need this degree of rigor
23:26:14 <kmc> again
23:26:16 <kmc> nothing to do with haskell
23:26:23 <kmc> haskell actually sucks as a language for proving shit about your code
23:26:26 <kmc> in theory it would be great
23:26:34 <kmc> but in practice the formal methods community cares about C because it's industrially relevant
23:26:50 <kmc> you can prove some stuff within the haskell type system, but there's real diminishing returns in terms of the complexity of doing so
23:27:14 <soundnfury> kmc: I'm not sure what I'm trying to say either, except that the haskell community and its jargon "smells bad" to me
23:27:43 <kmc> when something "smells bad" you should consider whether it's actually your own prejudices
23:27:53 <kmc> there is sadly a lot of anti-intellectualism among programmers
23:28:03 <kmc> but, i agree that there are many problems with the haskell community as well
23:28:06 <soundnfury> and I just wish this channel had more discussion of /other/ esolangs >snerk<
23:28:12 <kmc> i mean, i quit #haskell because it was constantly making me angry
23:28:17 <soundnfury> kmc: what kind of anti-intellectualism do you mean?
23:28:19 <kmc> after several years of hanging out there all the time
23:28:31 <kmc> soundnfury: the kind you are displaying
23:28:45 <soundnfury> taxonomy: http://esr.ibiblio.org/?p=4001
23:28:47 <kmc> making fun of the fancy math words and the book learnin' without any substantive complaint
23:29:01 <kmc> assuming anyone with a PhD cannot code
23:29:16 <soundnfury> ah, so thalamic?
23:29:19 -!- copumpkin has changed nick to TomWilliams.
23:29:35 <kmc> also programmers can be anti-intellectual in that they think all intellectual pursuits *other* than programming are inferior
23:30:02 <soundnfury> To that all I can say is "Hell no."
23:30:06 -!- TomWilliams has changed nick to copumpkin.
23:30:06 <kmc> they assume that if only a programmer bothered to look at one of these other fields, they would instantly revolutionize
23:30:13 <kmc> and i'm not going to read a long blog post by esr thanks
23:30:40 <soundnfury> I don't have a problem with "book learnin'" per se, just misapplication thereof
23:31:08 <kmc> also every language community has its own jargon
23:31:22 <kmc> haskell jargon is more unfamiliar because haskell is a unusual language
23:31:58 <soundnfury> I don't think that type of fancy math belongs in programming, I think programming is an analytic/synthetic discipline, whereas the fancy-math approach seems to be purely synthetic
23:32:25 <kmc> if something is both analytic and synthetic, then wouldn't you like some analytic tools and some synthetic tools?
23:32:27 <soundnfury> basically, programming in haskell looks like the equivalent of doing your calculus with greek geometry á la Isaac Barrow
23:32:57 <soundnfury> kmc: sure but the language has to accommodate both
23:33:21 <kmc> haskell accommodates most styles...
23:33:35 <soundnfury> I don't see much room for analysis in the strongly-typed world of haskell
23:33:37 <kmc> it definitely accomodates the loosely-checked, side-effect-full style favored elsewhere
23:33:45 <soundnfury> I think I've worked out what I don't like about haskell
23:34:03 <soundnfury> it's that the type system is too complicated
23:34:12 <kmc> your attitude is one of someone who has read all the hype about what makes Haskell unusual, but hasn't actually used the language and so doesn't know about the various ways in which it compromises on those unusual qualities
23:34:21 <kmc> the type system isn't that complicated
23:34:24 <kmc> it doesn't even have subtyping!
23:34:29 <soundnfury> I prefer simple ontologies like "everything is a cons" or "everything is a bag of bytes"
23:35:27 <kmc> so how much do you actually know about haskell
23:35:31 <kmc> i mean, how much code have you written
23:35:49 <soundnfury> well, as I've mentioned before, I don't know much about haskell
23:36:11 <soundnfury> but then I know even less about COBOL and I'm willing to hold opinions about it too
23:36:12 <kmc> you might want to hold off complaining about how unrelentingly 'synthetic' it is, then
23:36:28 <kmc> maybe that's unwise
23:36:32 <soundnfury> because I'm willing to substitute the judgement of others whom I trust for my own
23:36:34 <kmc> maybe it causes you to embarrass yourself in public
23:39:53 <kmc> i think the fanboys are to blame largely
23:40:34 <kmc> start learning haskell => write a prime number sieve => blog about how pure and mathematical haskell is
23:42:31 <kmc> there is this impression that Haskell is a pure object of mathematical beauty and that it forces you to program in a totally different way
23:42:32 -!- monqy has left.
23:42:34 <kmc> it's not, and it doesn't
23:42:55 <kmc> but that is the experience of beginners and that is the furthest most people get
23:44:18 <soundnfury> if most people only get that far, maybe the learning curve is the wrong shape?
23:44:33 <kmc> yeah, it is
23:44:37 <soundnfury> like, brick-wall-shaped instead of curve-shaped ;)
23:44:46 <kmc> this is one of the biggest problems with the language and the reason why it will never be mainstream
23:44:54 <kmc> you don't need to convince me about that
23:45:15 -!- impomatic has left.
23:46:10 <kmc> basically i think haskell is a good tool for solving certain problems, but not good enough to justify learning it on those grounds
23:46:13 <oerjan> `quote than haskell
23:46:17 <HackEgo> 844) <soundnfury> stanley: basically, the entire purpose of the esolang community is, we're trying to invent a language that's worse than Haskell. We're not there yet, though some of the funges are close.
23:46:24 <oerjan> `delquote 844
23:46:25 <kmc> it's only a practical tool if you've already learned it for fun
23:46:26 -!- elliott has joined.
23:46:28 <HackEgo> ​*poof* <soundnfury> stanley: basically, the entire purpose of the esolang community is, we're trying to invent a language that's worse than Haskell. We're not there yet, though some of the funges are close.
23:46:31 <elliott> i heard there was an argument about haskell
23:46:36 <elliott> oh, thank you for removing that quote
23:46:40 <elliott> i kept meaning to but then didn't
23:46:50 <kmc> and really learned, not just well enough to do prime number sieves and toy lisp implementations
23:46:52 <oerjan> elliott: after the current argument it suddenly didn't feel funny any more
23:46:53 <kmc> which takes a long time
23:47:34 <elliott> oerjan: well, the qdb can be used for preserving stupid things people say
23:47:36 <soundnfury> aw man, why did you delete it?
23:47:41 <elliott> but ideally they should be stupid things that take a little bit of thought to come up with
23:47:44 <elliott> rather than just dumb things
23:48:15 * soundnfury sulks
23:48:51 <kmc> i haven't seen anyone else with this much of an axe to grind about haskell, besides Jon Harrop
23:48:58 <kmc> soundnfury: are you Jon Harrop
23:49:01 <oerjan> soundnfury: i realized it was more sour gripe than humor.
23:49:25 <soundnfury> oerjan: actually, it wasn't sour gripe. It wasn't humor either. It was *humour*.
23:49:33 <soundnfury> kmc: No. Who is Jon Harrop?
23:49:50 <oerjan> has he ever been seen together with soundnfury?
23:49:51 <kmc> a person with an axe to grind about Haskell
23:50:06 <kmc> a troll who #haskell cannot stop talking about, proving his effectiveness
23:50:21 <elliott> <soundnfury> oerjan: actually, it wasn't sour gripe. It wasn't humor either. It was *humour*.
23:50:22 <kmc> but he does make substantive technical arguments and community criticisms besides LOL HASKELL SUX ITS WORSE THAN SHITE
23:50:25 <elliott> sorry can you be more obnoxious
23:50:34 <kmc> from time to time
23:50:35 <elliott> kmc: i wouldn't call harrop's arguments substantive...
23:50:46 <elliott> they are pretty shallow
23:50:53 <soundnfury> elliott: Ok.
23:51:09 <kmc> when he accused the haskell community of cherry-picking results to show how great haskell is, i was like
23:51:14 <kmc> "ouch... but i see where you're coming from"
23:51:49 <elliott> kmc: maybe i would take harrop quarter-seriously if he was not obviously and self-admittedly doing all this for the sole purpose of shilling for his shitty company
23:51:50 <soundnfury> elliott: Are you named after the Elliott Automation line of computers?
23:52:01 <soundnfury> in fact... are you an AI running on an Elliot 503?
23:52:03 <kmc> sure
23:52:09 <elliott> i think i am actually named after the amplifier brand or something
23:52:13 <elliott> at least half
23:52:36 <elliott> kmc: you should see some of his deleted stack overflow answers, they are pretty great
23:52:39 <elliott> at least one of them is
23:53:04 <elliott> he acused the DPH people of academic fraud or something because he didn't consider them competent on parallel computing
23:53:20 <soundnfury> ye outer gods, F#?
23:53:34 <elliott> *accused
23:53:42 <elliott> soundnfury: so what is your favourite language
23:56:09 <soundnfury> elliott: C
23:56:18 <elliott> soundnfury: hahaha ok
23:56:21 <soundnfury> Lisp would run it close if the dialects didn't all suck
23:56:25 <kmc> and why is C your favorite language
23:56:31 <elliott> soundnfury: hahaha ok II: the return of hahaha ok
23:56:31 <soundnfury> though obviously they're for different things
23:56:57 * nooga swats kmc
23:57:27 <oerjan> nooga: you took your time!
23:58:00 <soundnfury> kmc: because it's easy to mentally model the execution of the code, and because it's local
23:58:01 <Sgeo> Is it wrong to like newLisp's source and save functions?
23:58:37 <oerjan> Sgeo: yes. worse than murder.
23:58:37 <soundnfury> (in the sense that everything controlling the semantics of a piece of code is usually in or near that piece)
23:58:42 <elliott> soundnfury: if you think it is easy to mentally model the execution of some C code you have no idea how modern hardware works
23:58:45 <kmc> it is not easy to mentally model the execution of C code on modern compilers and processors :/
23:58:53 <soundnfury> (obviously preprocessor abuse can break this)
23:58:55 <elliott> soundnfury: that is also false. function calls exist
23:58:57 <elliott> pointers exist
23:58:58 <elliott> &c.
23:59:14 <pikhq> It's god damned hard to mentally model how *assembly* maps to hardware functioning.
23:59:26 <soundnfury> kmc: ah, but reordering and shizzle is supposed not to affect things
23:59:27 -!- monqy has joined.
23:59:43 <soundnfury> I guess what I mean is "I can emulate the C abstract machine in my head"
23:59:45 <pikhq> C is at least two layers of abstraction up!
23:59:45 <elliott> you might say it's just like optimisations performed a haskell -- or indeed any other language's -- compiler
2012-08-22
00:00:05 <kmc> soundnfury: sure, but in a real program it's very likely you'll do things that are technically undefined in C
00:00:09 <kmc> and then all bets are off
00:00:11 <soundnfury> elliott: maybe "semantics" was the wrong word
00:00:13 <elliott> anyone proficient in a language should be able to interpret it mentally... haskell is simpler for this because simple term reduction is a valid evaluation strategy
00:00:19 <pikhq> soundnfury: Sure, but that has very little to do with performance.
00:00:34 <soundnfury> kmc: I don't know what "real programs" you've been looking at
00:00:35 <pikhq> soundnfury: And I can in fact do the same with Haskell with little effort anyways.
00:00:40 <soundnfury> pikhq: did I mention performance?
00:00:46 <elliott> actually kmc is completely right
00:00:54 <elliott> if you think most programs don't invoke UB you have no idea how strict UB actually is
00:01:02 <soundnfury> elliott: Oh really?
00:01:05 <elliott> even code that doesn't need to use any system interfaces beyond really simple file IO is probably going to do it
00:01:07 <elliott> soundnfury: yes really.
00:01:10 <Sgeo> CL has a lot of undefined behavior, right?
00:01:15 <Sgeo> Or implementation-defined
00:01:16 <Sgeo> :/
00:01:17 <elliott> do you check every possible case of signed overflow before doing it, for instance?
00:01:18 <soundnfury> I've read N1256 several times. I post in comp.lang.c.
00:01:26 <elliott> wow you post in comp.lang.c
00:01:27 <elliott> sorry, expert
00:01:31 <nooga> oerjan: element of surprise
00:01:43 <pikhq> soundnfury: Do you ever use a type ending in _t?
00:01:49 <elliott> oh i forgot about the _t thing
00:01:52 <elliott> hehehehehe
00:01:59 <soundnfury> pikhq: I use them sometimes. I don't typedef them
00:02:00 <elliott> that's just invalidity though isn't it
00:02:10 <pikhq> That one's pernicious courtesy of everyone thinking it's normal style.
00:02:11 <soundnfury> (ie. I sometimes use stdint.h)
00:02:28 <Sgeo> Is newLisp's bizarre reference stuff the only way that source and save are able to work, or could one make another language that reasonably saves its "images" as source code?
00:02:35 <pikhq> elliott: It's reserved namespace. Making identifiers in reserved namespace is UB, not merely invalid.
00:02:44 <elliott> pikhq: ah, yes
00:02:58 <pikhq> And people do it all the god damned time.
00:03:09 <elliott> anyway i will let kmc individually quote examples of undefined behaviour, outlying the argumentation algorithm is good enough for me
00:03:13 <Sgeo> newLisp would be good for a nomic
00:03:14 <elliott> *outlining
00:03:17 <Sgeo> Merely because of save
00:03:18 * Sgeo ducks
00:03:23 <pikhq> So many people like _FOO_H header guards.
00:03:35 <kmc> nah i can't be bothered
00:03:37 <olsner> the fun thing with C is that most cases of UB still work just like you think it "should", so you mostly never notice when it happens
00:03:41 <kmc> sorry bros and bro-ettes
00:03:50 <soundnfury> ok so, I actually use #pragma once, which makes me a Bad Person
00:04:02 <elliott> kmc: well this is the first time i have ever seen you not want to argue something
00:04:04 <elliott> are you feeling ok
00:04:04 <pikhq> Yup, we don't actually use the Deathstation 5000.
00:04:15 <pikhq> soundnfury: That's implementation-defined behavior, not UB.
00:04:21 <soundnfury> pikhq: yes, I know
00:04:23 <elliott> Deewiant: you should finish your strict C compiler so we have an algorithmic implementation of this argument strategy
00:04:26 <pikhq> soundnfury: That still makes you a bad person mind. :)
00:04:28 <soundnfury> but it still makes me a Bad Person
00:04:35 <soundnfury> gmta
00:04:42 <Sgeo> pikhq, we should
00:04:43 * Sgeo ducks
00:04:44 <oerjan> the dinosaurs used the deathstation 5000.
00:04:45 <kmc> elliott: it's hardly the first time
00:04:54 <kmc> anyway i'm not enough of a C expert to quote chapter and verse
00:05:08 <elliott> calling Deewiant and fizzie :p
00:05:10 <elliott> and maybe ais523? I forget
00:05:38 <soundnfury> does ais523 write NH4, or Acehack, or something?
00:05:50 * soundnfury forgets which variant is which (since I only play vanilla)
00:06:39 <elliott> oh i actually only read how this argument started now
00:06:51 <elliott> surprisingly, it is even stupider than I could have possibly imagined
00:06:55 <soundnfury> anyway, if he's been near NH code, he must know his C
00:07:03 <olsner> nice, they subtitled everyone's ugh, uhh, agh, wah and aggh in the fight scene
00:07:10 <soundnfury> elliott: I like to exceed people's expectations ;)
00:07:21 <monqy> : )
00:07:31 <elliott> generally the expectation of being a jerk to people is not one you want to assume unless you are trying to be a bad person
00:07:34 <elliott> ";)"
00:07:37 -!- MoALTz has quit (Ping timeout: 240 seconds).
00:08:12 <soundnfury> elliott: I think it's just that I'm disappointed by how little actual esolang talk goes on in this channel
00:08:19 <soundnfury> (that is, unless you count Haskell as an esolang)
00:08:27 <kmc> yeah try starting some esolang talk then
00:08:32 <soundnfury> and I vent that disappointment through jerkish behaviour.
00:08:42 <elliott> plenty of esolang talk goes on when there is esolang stuff to talk about
00:08:42 <monqy> "i'm immature"
00:08:46 <kmc> tbh there isn't that much haskell talk either
00:08:55 <elliott> it is not a popular enough field to sustain 24/7 conversation
00:09:02 <kmc> a lot of it is just... not programming
00:09:10 <soundnfury> kmc: Ok. Has anyone tried to use my Eniuq, or looked at ternary ECL?
00:09:11 <kmc> me bitching about xkcd
00:09:21 <soundnfury> kmc: yeah, that I *cannot* excuse
00:09:23 <kmc> itidus21 presenting nonsensical analogies and theories
00:09:31 <elliott> soundnfury: are you an xkcd fan
00:09:35 <soundnfury> elliott: Very.
00:09:39 <kmc> hehehe
00:09:41 <elliott> hehehehehehehehehe
00:09:41 <elliott> this is good
00:09:49 <soundnfury> I admit it has declined over time
00:09:55 <kmc> soundnfury is a robot sent from the future to annoy me
00:10:10 <elliott> kmc: btw you forgot Sgeo {talking about,switching} languages
00:10:18 <kmc> right
00:10:19 * soundnfury waits for kmc to /nick SarahConnor
00:10:26 <kmc> Sgeo deciding which language is best for not doing anything
00:10:26 <monqy> what
00:10:56 <Sgeo> kmc, hey, I wrote a bot in Tcl recently!
00:10:57 <soundnfury> Oh and lots of Finnish-related stuff. That's the other thing in this channel.
00:10:57 <elliott> kmc: best for idling in IRC channel of; best for teaching people
00:11:08 <elliott> lots and lots of Finnish-related stuff
00:11:10 <elliott> are you high
00:11:26 <elliott> do you just mean oklopol or something...
00:11:47 <soundnfury> well, maybe not all that much
00:11:54 <soundnfury> but it does come up
00:11:54 <elliott> kmc: you also forgot zzo38 occasionally redeeming the channel
00:11:59 <oerjan> mitä!
00:12:09 <soundnfury> people talking about vowel harmony and suchlike a couple of weeks back
00:12:17 <soundnfury> some insanely long string of suffices
00:12:24 <kmc> minun ilmatyynyalus on täynnä ankeriaita
00:12:39 <soundnfury> all akkuukkää-ish
00:12:50 <kmc> yes zzo38 jumping into the middle of a conversation to ask us what our favorite pokémon card is
00:13:04 <olsner> yhdeksänkymmentäseitsemän
00:13:36 <soundnfury> this channel is certainly esoteric...
00:13:41 <olsner> ... ankeriaita
00:14:35 <oerjan> luojan kiitos googlen käännös
00:15:29 <olsner> tosiaanko
00:15:55 -!- zzo38 has joined.
00:16:01 <oerjan> speaking of the
00:16:44 <elliott> hi zzo38
00:16:53 <olsner> I think the last actually finnish person to speak was fizzie three hours ago
00:17:44 <elliott> kmc: anyway I am surprised you have the patience for this place
00:17:55 <kmc> i like it here
00:17:59 <kmc> everyone is crazy
00:18:03 <kmc> so i don't feel bad about being crazy
00:18:07 <oerjan> `? mad
00:18:10 <HackEgo> ​"But I don't want to go among mad people," Alice remarked. "Oh, you can't help that," said the Cat: "we're all mad here. I'm mad. You're mad." "How do you know I'm mad?" said Alice. "You must be," said the Cat, "or you wouldn't have come here."
00:18:15 <olsner> kmc: what, you're not crazy
00:18:30 <elliott> kmc is about as crazy as Vorpal
00:18:32 <elliott> but less annoying
00:18:51 <Phantom_Hoover> did vorpal talk or something
00:18:59 <olsner> well, that's not very crazy at all, now is it?
00:19:06 <Phantom_Hoover> i haven't seen vorpal for yonks
00:20:08 <elliott> well Vorpal is not actually annoying any more
00:20:12 <elliott> we all grow up eventually
00:20:14 <elliott> even I will, one day
00:21:08 <kmc> heh
00:21:09 <oerjan> I WON'T
00:21:26 <elliott> you already have
00:21:29 <oerjan> i'll just get crushed by the maturity demands
00:21:36 <elliott> aren't you like 50 now
00:21:40 <oerjan> 42
00:21:42 <elliott> how many maturity demands are even left
00:21:47 <elliott> btw i'm 17 now :/
00:21:50 <olsner> 42!?
00:21:51 <olsner> wow
00:22:02 <elliott> Phantom_Hoover: did you turn 18 yet
00:22:06 <elliott> i always forget how old you are
00:22:07 <shachaf> elliott; Now?
00:22:10 <shachaf> I thought it was Aug 22?
00:22:17 <shachaf> Oh, wait.
00:22:19 <elliott> $ date
00:22:19 <elliott> Wed Aug 22 01:23:59 BST 2012
00:22:56 <shachaf> Flime ties like an arrow. :-(
00:23:00 <oerjan> wait is it already more than a year since we celebrated elliott's 16th birthday
00:23:09 <shachaf> oerjan: No, it's just under a year.
00:23:10 <elliott> fsvo celebrate
00:23:15 <olsner> do we celebrate birthdays!?
00:23:22 <shachaf> elliott: Shall I eat cake in your honor?
00:23:29 <oerjan> oh!
00:23:32 <shachaf> Happy elliott++ !
00:23:40 <elliott> @karma elliott
00:23:40 <lambdabot> You have a karma of 22
00:23:44 <elliott> that's a lot of karma
00:23:49 <elliott> feeling "groovy"
00:23:53 <olsner> @karma chameleon
00:23:54 <lambdabot> chameleon has a karma of 0
00:23:57 <shachaf> 17:23 <preflex> elliott: 16
00:24:09 <shachaf> Hmm.
00:24:15 <elliott> 19:44:48: <AriesAsrael> hello
00:24:15 <elliott> 19:45:32: <AriesAsrael> anyone looking for a tarot reading?
00:24:16 <elliott> nice newbie
00:24:22 <shachaf> elliott: Did you know you have an entry in my Birthday file?!
00:24:27 <elliott> shachaf: :/
00:24:32 <elliott> how long is it
00:24:38 <shachaf> One entry.
00:24:57 <shachaf> Actually it's ~45, it looks like.
00:25:22 <shachaf> Next up is my mother.
00:25:24 <olsner> ah, that was fun, zzo38 very narrowly missed the opportunity to display his tarot reading bot before they disappeared
00:25:40 <shachaf> elliott: Anyway, how does it feel to be OLD?
00:25:47 <shachaf> elliott: (You're old now.)
00:26:05 <soundnfury> wait, 17?
00:26:08 <soundnfury> Yellow pig.
00:26:22 <olsner> sometimes I think zzo originally came here for the other esoterica but simply stayed anyway
00:26:23 <monqy> pigs aren't yellow, soundnfury
00:26:26 <monqy> they're pink
00:26:29 <soundnfury> monqy: It's a Thing
00:26:31 <soundnfury> hang on
00:26:35 <monqy> a wrong thing maybe
00:26:38 <shachaf> monqy: Yellow pigs are pink?
00:26:46 <ais523> http://www.haskell.org/haskellwiki/Image:Monad-tutorials-chart.png
00:26:49 <soundnfury> http://www.vinc17.org/yp17/index.en.html
00:26:52 <shachaf> monqy: You obviously haven't read any books by Michael Spivak. :-(
00:27:20 <soundnfury> shachaf: yay, someone recognised it :-)
00:27:40 <elliott> shachaf uses haskell tho
00:27:43 <elliott> "compromises; in life"
00:27:50 <soundnfury> elliott: that doesn't make him evil
00:27:54 <shachaf> soundnfury: I read portions of a book by Michael Spivak!
00:28:06 <shachaf> elliott: Also "uses haskell" is a contradiction because haskell is uesless qed
00:28:12 <shachaf> !!
00:28:16 <soundnfury> it's like that line of Stallman's: "Using vi isn't a sin, it's a penance"
00:29:07 -!- nooga has quit (Read error: Connection reset by peer).
00:29:14 <elliott> now we're quoting stallman. great
00:29:16 <elliott> i love this channel
00:29:21 <monqy> am i evil
00:29:43 <olsner> I don't trust people who eat their feet, especially not when they say bad things about vi
00:29:56 <monqy> i've heard stories about that
00:30:08 <monqy> it sounds gross !
00:30:17 <olsner> yeah, emacs users are yucky
00:30:18 <shachaf> monqy: You know what's gross?
00:30:21 <shachaf> Yellow pigs. :-(
00:30:28 <monqy> :(
00:30:36 <monqy> it's ok they're not real
00:30:36 <shachaf> monqy: Where do you live again?
00:30:36 <soundnfury> Escape Meta Alt Control Shift
00:30:38 <monqy> they're like ghosts
00:30:42 <monqy> and boogeymans
00:30:45 <soundnfury> Eighty Megs And Constantly Swapping
00:30:52 <soundnfury> Emacs Makes All Computers Slow
00:31:14 <shachaf> kmc: Wait, you're crazy?
00:31:19 <shachaf> I hadn't noticed. Am I crazy too?
00:31:20 <olsner> no matter how many times you press escape in emacs, you never end up in normal mode
00:31:24 <Gregor> The problem with the Eighty Megs acronym is that that's nothing now :)
00:31:24 <soundnfury> shachaf: we're *all* crazy here
00:31:25 <olsner> shachaf: no, you're sane
00:31:26 <elliott> soundnfury: wow these are good
00:31:33 <elliott> soundnfury: you must be getting these from the GNU Jokes Collection!
00:31:36 <elliott> olsner: i use vi and emacs, what does this make me
00:31:40 <olsner> shachaf: sorry :(
00:31:43 <Gregor> elliott: A bad person.
00:31:45 <soundnfury> Gregor: true
00:31:55 <soundnfury> elliott: an apostate?
00:32:08 <elliott> Eighthundred Megs and Constantly Swapping
00:32:10 -!- oerjan has set topic: elliott now constructible with compass and ruler | Just a remote control and some old gum | atriq is Taneb, just so you know | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
00:32:15 <elliott> "updated 4 the 'gnu' generation"
00:32:24 <olsner> elliott: must be some kind of multiple personality disorder
00:32:24 <elliott> oerjan: idgi
00:32:38 <oerjan> you're a regular 17-gon now, right?
00:32:40 <olsner> hmm, except they changed the name of that diagnosis
00:32:46 <elliott> oerjan: you should feel bad
00:32:55 <oerjan> always, elliott
00:33:16 <elliott> not like that
00:33:28 <olsner> hmm, istr the first part of the topic was the least boring one, you should've replaced the other parts instead
00:33:33 <soundnfury> Gregor: although actually, eighty megs for a /text editor/ is still a bit much
00:34:01 <Gregor> soundnfury: Not if you use GDocs as your text editor 8-D
00:34:01 <kmc> i still don't believe elliott is 17
00:34:21 <shachaf> I first joined #haskell when I was 15. :-(
00:34:22 <soundnfury> Gregor: I'm guessing that edits rich text?
00:34:40 <shachaf> I was young and foolish back then. Now I'm no less foolish, but also old.
00:34:40 <kmc> <Gregor> The problem with the Eighty Megs acronym is that that's nothing now :)
00:34:43 <kmc> paging nortti
00:34:49 <Gregor> soundnfury: Sure, but you could use it to edit plain text if you were stupid enough.
00:34:58 <olsner> eight megagigs?
00:35:05 <Gregor> olsner: lol
00:35:21 <elliott> kmc: i'm actually 71
00:35:30 <soundnfury> eight mobies? then it'd be constantly swapping!
00:35:39 <olsner> oh, but 8 myllion is 800 million, right?
00:35:44 <shachaf> elliottL more like 71 *dozen*!!
00:35:53 <olsner> but 800 MB is not that much either
00:36:04 <shachaf> 80 myllion, though...
00:36:36 <zzo38> olsner: I did not come here for the other esoterica, and I also do not have a tarot reading bot. However I have told them I was interested to have a tarot deck to play some card game.
00:36:38 <soundnfury> I think the term "moby" needs to be revived, given how prevalent swap/virtual memory is these days
00:36:52 <olsner> zzo38: I was ... extrapolating a bit
00:36:57 <oerjan> olsner: but then it would have outshone the glorious news!
00:36:59 <soundnfury> although maybe the need is being killed by 64-bit address spaces now
00:39:01 <olsner> 64-bit address space: lets you address more memory and use less swap!
00:40:47 <oerjan> technically those pants could have outshone anything, anyway
00:41:34 <olsner> ... and there I remembered what that part of the old topic was
00:43:24 <kmc> what's it mean soundnfury
00:51:17 <soundnfury> kmc: what, "moby"?
00:51:25 <soundnfury> either the size of a machine's physical RAM,
00:51:48 <soundnfury> or the machine's address space (more precisely, the maximum amount of memory a single process may address)
00:52:40 <soundnfury> the exact definition gets more complicated in the face of machines with sideways addressing schemes and other weirdness
00:52:59 -!- MoALTz has joined.
00:53:41 <soundnfury> http://www.catb.org/jargon/html/M/moby.html
00:55:33 <elliott> (also http://www.dourish.com/goodies/jargon.html grep /moby/, for the un-esr'd version.)
00:55:37 <elliott> (shame that page lacks anchors)
00:55:40 <Sgeo> Is the ability to save an image as source code sufficient to like a language's environment?
00:55:49 <Sgeo> Because I think that that's a good feature of newLisp
00:57:56 <zzo38> Have you seen/heard the finished version of my rearrangement of "The Internationale" music (including percussion)?
00:58:06 <zzo38> Sgeo: Can you explain?
00:58:22 <elliott> zzo38: i would like to see/hear your rearrangement
00:58:26 <soundnfury> elliott: what do you have against esr?
00:58:35 <soundnfury> actually, let's not start another argument
00:59:12 <Sgeo> zzo38, there's a function in newLisp, source, that can take the environment, all variables and objects etc., and turn it into a string that can be interpreted later to re-create the environment
00:59:53 <zzo38> Sgeo: That can be useful sometimes.
01:00:08 <elliott> soundnfury: well, he's a moronic, racist far-right-winger, so there's that
01:00:29 <Sgeo> zzo38, indeed. It means I could develop at the REPL and save my work
01:00:46 <soundnfury> elliott: lolwut
01:00:47 <Sgeo> And it seems like the perfect environment for a codenomic: The changes are all visible as source.
01:00:53 <elliott> more relevantly he edited the jargon file without any apparent understanding of the underlying material or its culture, so...
01:01:02 <soundnfury> also lolwut
01:01:06 <zzo38> elliott: These are all the files, the one "internationale.*" are the one I am mentioning. You need NES/Famicom emulator to play the music, and if you want to make some changes and recompile you need my improved version of PPMCK as well. http://2a03.free.fr/?p=pub&dir=zzo38
01:01:30 <soundnfury> I'm just going to walk away from this one
01:01:34 -!- pikhq_ has joined.
01:01:46 <zzo38> It is based on a arrangement I found on Wikipedia so this is now called a "rearrangement" instead of "arrangement", isn't it?
01:01:53 -!- pikhq has quit (Ping timeout: 265 seconds).
01:02:02 <Sgeo> 'and for essentially abandoning it when it reached a point that he considered "finished". '
01:02:03 <Sgeo> oops
01:02:06 <Sgeo> I tend to do that
01:02:10 <elliott> on the racism, cf. http://esr.ibiblio.org/?p=4270 among others -- uh, I can't find the link to his Bell Curve nonsense though
01:02:24 <elliott> for the far-right-winger part, no need to dig up links, he is vocal enough about it himself
01:02:46 <shachaf> elliott: Are you doing the Stripe flag thing?
01:03:03 <elliott> shachaf: the what
01:03:26 <soundnfury> ok, maybe I'm not going to walk away
01:03:45 <shachaf> elliott: The capture-the-flag thing.
01:03:50 <soundnfury> your definitions of both "racism" and "far-right-winger" are bizarre
01:04:12 -!- oerjan has quit (Quit: Gnite).
01:04:27 <elliott> are we actually at the point of "john derbyshire is not racist" now
01:04:28 <elliott> hehehehe
01:04:33 <soundnfury> I point those of you who have not already made up your minds here: http://esr.ibiblio.org/?p=4278
01:04:34 <elliott> you're really fucking stupid, btw
01:04:45 <elliott> like amazingly
01:04:48 <elliott> bye <3
01:04:49 -!- elliott has left ("Leaving").
01:05:08 -!- monqy has left.
01:05:15 <zzo38> elliott: Do you like this music?
01:05:16 <soundnfury> ... backatcha.
01:05:22 <soundnfury> zzo38: he's gone.
01:05:24 <soundnfury> They've all gone.
01:05:30 <soundnfury> And we're back.
01:05:32 <zzo38> Do you like that music?
01:06:17 <soundnfury> for the rest of you also: I don't know whether john derbyshire is racist or not. However, ESR isn't. Not even slightly.
01:09:29 <zzo38> Are you sure you are not racist?
01:09:50 <Gregor> I am racist against humans, ponies are best.
01:10:33 <soundnfury> Well, I don't prejudice my judgement of individuals by generalisations at all, let alone false ones. So no.
01:11:05 -!- DHeadshot has joined.
01:12:26 <soundnfury> I may sometimes make judgements about an individual-valued random variable based on generalisations, but to call /that/ $foo-ist is ludicrous
01:21:21 -!- derdon_ has joined.
01:24:11 -!- derdon has quit (Ping timeout: 245 seconds).
01:56:05 <Phantom_Hoover> Sgeo, wait, where did you get that accidental quote from.
01:56:42 <Sgeo> I didn't accidentally quote it, I deliberately quoted it and my "oops" was in reference to my tendency to do that
01:56:53 <Sgeo> http://rationalwiki.org/wiki/Eric_S._Raymond
02:00:01 -!- derdon_ has quit (Remote host closed the connection).
02:05:46 * pikhq_ blinks
02:05:49 <pikhq_> Deep-fried pizza?
02:06:06 <pikhq_> Kay, Scotland is the only country that can keep up with America in the "deep-fry everything" contest.
02:06:09 <Sgeo> Hmm, maybe I should try some
02:07:28 <pikhq_> I mean, they have deep-fried pizza and we have deep-fried Twinkies.
02:07:41 <Sgeo> Where can I get deep-fried Twinkies?
02:07:49 <Sgeo> And are those more calories than normal Twinkies?
02:07:59 <pikhq_> Fairs, ball games...
02:08:03 <pikhq_> Almost certainly.
02:08:16 <Sgeo> I should get some
02:08:21 <pikhq_> It's a twinkie battered and deep fried.
02:08:34 <Phantom_Hoover> Sgeo, ah, that article.
02:08:51 <Phantom_Hoover> Does it still censor ESR's racism, I forget?
02:09:36 <Phantom_Hoover> (There's a guy who ostensibly hates ESR to toe the party line but thinks he's this ~superhacker~ for writing libpng.)
02:10:02 <Sgeo> Phantom_Hoover, I didn't read the full article
02:10:36 <Phantom_Hoover> You wouldn't really notice it anyway, he just removed the parts that actually called it racist.
02:11:33 <pikhq_> ... ESR's responsible for libpng?
02:11:35 <pikhq_> HE SHALL PAY
02:11:47 <Phantom_Hoover> Is libpng terrible.
02:11:53 <shachaf> Is libpng bad?
02:11:59 <pikhq_> It's an example of how not to do APIs.
02:12:10 <Phantom_Hoover> soundnfury, also you are hilariously stupid?
02:12:16 <Phantom_Hoover> pikhq_, ahahaha.
02:12:39 <Sgeo> Why, what's libpng like?
02:12:48 <shachaf> "When libpng encounters an error, it expects to longjmp back to your routine. Therefore, you will need to call setjmp and pass your png_jmpbuf(png_ptr)."
02:12:54 <Phantom_Hoover> The guy was all like "well who are YOU to criticise ESR's programming did you know your browser WOULDN'T RUN if he hadn't written WHOLE PARTS of libpng and libgif"
02:12:57 <shachaf> Hmm.
02:12:59 <pikhq_> shachaf: That much isn't too bad.
02:13:12 * shachaf looks at the API documentation.
02:13:22 <pikhq_> shachaf: It's either that or returning error conditions.
02:13:41 <pikhq_> Not my favorite, but I'm not going to consider use of longjmp horrid.
02:13:52 <Phantom_Hoover> With the obvious implication that parsing PNGs is a terribly complex task requiring vast knowledge and skill.
02:14:11 <pikhq_> Pfft, gzip's literally the only hard part.
02:14:16 <pikhq_> And libpng punts that.
02:14:50 <kmc> http://geekz.co.uk/lovesraymond/archive/show-them-the-code
02:14:58 <Phantom_Hoover> Oh also, "Um, no. INTERCAL is one of the things that is ESR working in his sphere of powerful competence."
02:15:47 <pikhq_> Yeah, ESR's one of those figures mostly notable for being loud.
02:16:03 <soundnfury> Phantom_Hoover: no, why?
02:16:04 <kmc> he ruined the word "hacker"
02:16:14 <kmc> not singlehandedly but he's one of the culprits
02:16:18 <Phantom_Hoover> soundnfury, liking ESR for one.
02:16:28 <Phantom_Hoover> kmc, him and Stallman?
02:16:34 <kmc> real hackers like esr and xkcd
02:16:43 <kmc> does Stallman talk about hackers a lot? i don't know
02:17:04 <kmc> esr and paul graham ruined the word "hacker"
02:17:05 <pikhq_> kmc: Sometimes; used to more than he does now.
02:17:06 <kmc> and probably other people
02:17:43 <pikhq_> s/hacker/cracker/ is one of his hair-trigger things still I think.
02:19:37 <kmc> What y'all wanna do? / Wanna be hackers? Code crackers? Slackers / Wastin' time with all the chatroom yakkers?
02:19:59 <soundnfury> Okay, I don't know what kind of people edit RationalWiki, but I don't think their aggregate qualifies as "rational"
02:20:25 <Phantom_Hoover> It's a complete cesspit, but that's irrelevant.
02:20:45 <soundnfury> particularly the cite alleging that he "denies the existence of dark matter" when what he's actually claiming is "'dark matter' is useless as an explanatory device"
02:20:46 <Sgeo> I have to admit that this sentence seems to be a non-sequeter "The worst part of all is that he blames Alan Turing for his judicial punishment and suicide, even though Raymond, like every other computer programmer, owes Turing his career."
02:21:05 <Sgeo> I do find blaming Turing problematic, but not sure what the later part of the sentence has to do with it
02:21:06 <pikhq_> soundnfury: It's basically 1 part rationalist and 9 parts silly.
02:21:39 <pikhq_> Sgeo: That... Seems utterly inconsistent with ESR.
02:21:43 <Phantom_Hoover> Well, 9 parts snide, normally poor humour.
02:21:59 <kmc> Turing was a genius but it seems quite a stretch to claim that nobody would be programming computers today without him
02:22:03 <pikhq_> Oh, yeah, and a few parts irrational of course.
02:22:09 <soundnfury> An LWian would immediately recognise that argument; "dark matter" is a semantic stopsign
02:22:10 <kmc> plenty of other people were working on similar problems at the same time
02:22:20 <Phantom_Hoover> And the internal politics are astonishingly venomous.
02:22:35 <kmc> in fact most of Turing's practical engineering work remained classified for decades
02:22:55 <Phantom_Hoover> kmc, didn't Church resolve the halting problem before him anyway?
02:23:01 <kmc> not sure who was first
02:23:10 <Phantom_Hoover> I was under the impression that the substantial results on the LC came before Turing's work.
02:23:11 <Sgeo> kmc, even if computers could only exist because of him, that still doesn't mean he's perfect and unflawed. It seems unreasonable to say that his work makes him uncriticisable.
02:23:21 <pikhq_> soundnfury: How much overlap does RW have with LW anyways?
02:23:28 <pikhq_> ... Actually, I'm going with "very little".
02:23:34 <kmc> Sgeo: yeah, that too
02:23:37 <Phantom_Hoover> pikhq_, mutual contempt.
02:23:41 <soundnfury> pikhq_: I presume very little
02:23:44 <Phantom_Hoover> Well.
02:23:51 <kmc> Church beat him to the Entscheidungsproblem, anyway
02:23:59 <pikhq_> They both claim to be rational, and... LW seems to try?
02:24:01 <kmc> man, that was a golden age for esolang designers
02:24:10 <kmc> when designing an esolang could get you a Ph.D
02:24:17 <soundnfury> yeah, LW does more than just call itself rational
02:24:30 <Phantom_Hoover> LW doesn't really care and when RW brings it up it's normally negative.
02:24:58 * pikhq_ looks at RW on LW
02:25:04 <shachaf> What's RW and LW?
02:25:12 <Sgeo> RationalWiki and LessWrong
02:25:14 <pikhq_> shachaf: Rational Wiki, LessWrong
02:25:26 <pikhq_> I wouldn't normally abbreviate, but the context of the discussion made it unambiguous.
02:25:37 <kmc> read-write and laser walrus
02:25:43 <Phantom_Hoover> Of course they'd be the same if we were in China.
02:26:07 <pikhq_> Phantom_Hoover: s/China/Japan/
02:26:17 <kmc> isn't RationalWiki supposed to be a more or less direct response to Conservapedia
02:26:19 <pikhq_> Chinese languages, from what I understand, have different phonemes.
02:26:22 <kmc> and therefore completely doomed
02:26:36 <pikhq_> kmc: Seems to be a buttload less formal.
02:26:46 <pikhq_> More like TVTropes in tone.
02:26:55 <shachaf> I'm still not sure whether Conservapedia is satire.
02:27:19 <Phantom_Hoover> kmc, yes, although CP was dying a slow but steady death when I stopped caring.
02:27:19 <shachaf> E.g. http://www.conservapedia.com/E%3Dmc%C2%B2
02:27:21 <Sgeo> At least undetected trolling likely is
02:27:39 <Phantom_Hoover> shachaf, the thing about CP is that most of the authors are trolls.
02:27:52 <pikhq_> shachaf: I'm pretty sure it's one or two serious people surrounded by trolls.
02:28:01 <Phantom_Hoover> As indeed were most of the admins at one point.
02:28:19 <shachaf> That page was created by the founder, though.
02:28:49 <Sgeo> Conservapedia's problem with the theory of relativity seems to be that it has a word in it that's also in "moral relativity"
02:28:54 <quintopia> "For more than a century, the claim that E=mc² has never yielded anything of value." wow that does feel awful Poe-y.
02:28:55 -!- pikhq has joined.
02:29:14 <Phantom_Hoover> "This is a common way that scientific discoveries are made. But, as stated above, this is not how E=mc was discovered. But it could have been. But in the event, it wasn't." is blatant parody.
02:29:21 <pikhq> "Preaching "rationalism" as if it's a religion substitute." as a trait of a LWian?
02:29:26 * pikhq is confused
02:29:41 <kmc> Sgeo: also relativity conflicts with quantum
02:29:43 <Phantom_Hoover> shachaf, it's been edited by other people though.
02:29:44 <kmc> and quantum proves god exists
02:30:05 <Phantom_Hoover> Schlafly does have a really dumb hatred of relativity though.
02:30:28 <pikhq> I'm not entirely sure how you could read the sequences and have religious devotion to anything. Yudkowsky in particular.
02:30:48 <shachaf> LW is *such* a phyg, man!
02:30:56 <pikhq> "You'll be unsurprised to know that many in the LessWrong community self-diagnose themselves as being on the Asperger's/autism spectrum. They do all this because they are bad at human interaction."
02:30:57 <shachaf> I mean, come on. They use the word "phyg".
02:31:27 <kmc> how many white male STEM majors with self-diagnosed aspergers does it take to screw in a lightbulb
02:31:32 <pikhq> I. Um. What the fuck and where did that unsubstantiated attempt at ad hominem come from?
02:32:02 -!- pikhq_ has quit (Ping timeout: 240 seconds).
02:32:52 <Phantom_Hoover> pikhq, FWIW the guy largely behind that article is the same one who loves ESR.
02:32:53 <Sgeo> http://freefall.purrsia.com/ff2300/fc02232.png
02:33:01 <soundnfury> RW says: "That's about 300,000-450,000 words for [the core sequences]... For comparison, the Lord Of The Rings trilogy is 473,000 words... 'Read the sequences' is equivalent to 'fuck you'"
02:33:48 <soundnfury> Um, I think that if you tried to post on a forum about Tolkien without having read LotR they'd say "Read LotR"
02:34:27 <soundnfury> if you want to join a discussion community, it's reasonable to expect that you're familiar with at least the basics of the thing being discussed
02:34:29 <pikhq> Also, Yudkowsky would have to be fucking amazing at cults-of-personality to be running one at LW.
02:34:42 <pikhq> A quick glance suggests he doesn't post there.
02:34:45 <kmc> so how many sequences do i have to read before my thetans are gone
02:34:55 <Phantom_Hoover> OTOH you can skip most of those words and still have a near-total knowledge of LotR.
02:35:23 <kmc> or you can watch the films
02:35:41 <Phantom_Hoover> You just wouldn't know the exact tree that Legolas stood next to when he pulled arrows out of Grishnakh the orc.
02:35:48 <zzo38> I prefer to use LodePNG instead of libpng
02:36:37 <Phantom_Hoover> Yes zzo, but you also believe that LaTeX is a bloated mess.
02:37:05 <pikhq> Phantom_Hoover: To be fair, it is a mess.
02:37:18 <itidus21> it is just code to convert a png file into a bitmap data structure right?
02:37:30 <itidus21> bitmap being the vague term here
02:37:32 <pikhq> itidus21: And vice versa.
02:37:43 <itidus21> :D
02:37:50 <Phantom_Hoover> itidus21, it'll do the inverse and some more odds and ends, but yes.
02:39:00 <pikhq> Yeah, lodepng seems to be much nicer.
02:39:24 <pikhq> Simple usage is simple, advanced usage is still simpler than libpng.
02:41:34 <pikhq> Huh, the gzip stuff in it seems to be written by him too.
02:49:09 <Phantom_Hoover> <soundnfury> particularly the cite alleging that he "denies the existence of dark matter" when what he's actually claiming is "'dark matter' is useless as an explanatory device"
02:49:13 <Phantom_Hoover> is that because it's black
03:06:12 -!- rodgort` has quit (Ping timeout: 276 seconds).
03:08:11 -!- rodgort has joined.
03:08:24 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:08:29 <soundnfury> Phantom_Hoover: no, it's because it doesn't make any predictions
03:08:42 <soundnfury> it is, in a case of unfortunate terminology, a black box
03:11:27 <kmc> would you say it's the black sheep of theories
03:11:29 <kmc> a real black swan
03:11:30 <soundnfury> also it actually took me three minutes to realise that that was a racism joke
03:12:49 <soundnfury> no doubt this will now be used as evidence that I am somehow racist too. Of course, immediately seeing it would also have been evidence
03:13:29 <itidus21> depends on your definition of racist i think
03:13:32 <soundnfury> because the kind of people who bandy allegations of racism at people who are obviously /not/ Klansmen tend not to be too worried about niggling little things like Bayes' Theorem
03:13:38 <kmc> soundnfury: what horrible persecution you suffer
03:14:18 <soundnfury> kmc: non sequitur cabbage
03:14:46 <pikhq> soundnfury: I find it strange you immediately went to "evidence that I am somehow racist".
03:15:18 <kmc> and claiming that the KKK is the only sort of racism is a ridiculous false dichotomy
03:15:38 <kmc> racism refers also to pervasive social attitudes held subconsciously by more or less well-meaning people
03:16:17 <itidus21> i think if your trouble spending good times with people of another race is due to segregation or self-diagnosed autism, or fearing reverse-racism then you're not a bad person either way
03:16:25 <kmc> and yeah, i agree with pikhq
03:16:31 <kmc> it is strange that you went there
03:16:55 <soundnfury> kmc: yes, but it's silly to accuse an individual of the "pervasive subconscious attitudes" type of racism
03:17:03 <kmc> not at all
03:17:04 <soundnfury> and I went there mainly for the humour
03:17:10 <kmc> yeah, hilarious joke soundnfury
03:17:14 <pikhq> The humor fell remarkably flat.
03:17:23 <kmc> why don't you go back to awkwardly working your hatred of haskell into every discussion
03:17:26 <kmc> that was much better
03:17:37 <shachaf> :-(
03:17:42 <itidus21> less of a swan and more of a black elephant on the table?
03:17:42 <pikhq> It came across as a "thou doth protest too much" type situation.
03:18:02 <soundnfury> kmc: Okay. "The only good thing about Haskell is that it isn't racist."
03:18:08 <kmc> -_-
03:18:18 <kmc> what, with all that talk of "purity"
03:18:28 <pikhq> It's named for a white man; what could be more racist?
03:18:38 <soundnfury> pikhq: I guess because, anyone who'll accuse /ESR/ of racism clearly has loose epistemic standards as to what constitutes racism.
03:18:39 <shachaf> kmc: Not to mention the System.Process bug you found!
03:18:41 <shachaf> That was totally racist.
03:18:50 <soundnfury> pikhq: Is it named for a Dead White Male?
03:19:02 <itidus21> ah the esr thing..
03:19:04 <pikhq> soundnfury: Well, Haskell Curry is dead, white, and male. So, yes.
03:19:17 <soundnfury> Okay. I didn't know whether curry was dead
03:19:25 <pikhq> He died in '82 at the age of 82.
03:19:49 <kmc> well played
03:20:49 <itidus21> i read "<Phantom_Hoover> is that because it's black" as "is that because he's black"
03:21:05 <itidus21> only for a second
03:24:20 -!- pikhq_ has joined.
03:24:45 <itidus21> oh my very old laundry smells real freaking bad
03:26:16 -!- ais523 has quit.
03:27:43 -!- pikhq has quit (Ping timeout: 244 seconds).
03:28:24 <kmc> astounding
03:28:29 -!- rodgort has quit (Ping timeout: 260 seconds).
03:29:26 -!- rodgort has joined.
04:25:25 -!- pikhq has joined.
04:26:52 -!- pikhq_ has quit (Ping timeout: 246 seconds).
04:46:54 -!- c0rt3x2 has joined.
04:48:27 -!- MoALTz has quit (Ping timeout: 240 seconds).
05:09:21 -!- c0rt3x2 has quit (Ping timeout: 265 seconds).
05:35:43 <Sgeo> I was briefly convinced that newLisp had fixed image-based development
05:37:07 <Sgeo> But it occurs to me that saving out stuff doesn't necessarily imply that the output is in an ideal fashion to be modified
05:37:32 <Sgeo> Could be formatted differently, I don't know what happens to comments, etc. etc.
05:37:42 <Sgeo> So using the saved result as the source code may be less than ideal
05:38:00 <lexande> pikhq: Curry died at the age of 81
05:39:31 <pikhq> lexande: Balls.
05:53:50 -!- asieNetbook has joined.
06:06:11 -!- TeruFSX2 has quit (Ping timeout: 268 seconds).
06:19:36 -!- asieNetbook has quit (Read error: Connection reset by peer).
06:20:55 -!- asiekierka has joined.
06:20:57 -!- asie_ has joined.
06:21:07 -!- asiekierka has quit (Client Quit).
06:21:13 -!- asie_ has changed nick to asieNetbook.
06:31:30 <zzo38> I think the real time clock in my computer is slow
06:32:07 <zzo38> Do you know how to fix or replace that component?
06:38:11 <asieNetbook> not really
06:38:17 <zzo38> Make two seven-letter words rhyming for "OFFICIAL'S LYMPHOID TISSUES IN THROAT"
06:49:43 <zzo38> Do you like "hold second one as you hold a pencil"?
06:51:30 -!- epicmonkey has joined.
06:54:46 <itidus21> zzo38: my advice is just don't worry about the clock unless it's very slow
06:55:22 <zzo38> It does seem to be very slow. I set it a few months ago and today it was ten minutes behind until I fixed the time
06:56:15 <soundnfury> Hmm. Can this not be fixed with NTP?
06:58:12 <zzo38> Maybe it can but I would rather fix my computer.
07:09:16 <Sgeo> It strikes me that using clojure stuff from the Java side probably feels like using very poorly designed code, due to using one Java class for data in general
07:09:25 <Sgeo> (Or, that's what it would likely feel like)
07:14:01 <Sgeo> I think I might just try relaxing with Clojure
07:14:30 <fizzie> I suppose it's not just a battery issue like a slow RTC often is?
07:14:50 <Sgeo> It has a large community, it's a not too terribly hated Lisp, it's main problem from my perspective is probably the slowness of the JVM, and is that really a big deal?
07:16:34 <Sgeo> It's also more functional than CL
07:17:08 <Sgeo> I think the JVM gives it some impurities though
07:17:16 <Sgeo> I mean, how necessary are protocols when you have multimethods?
07:19:29 -!- epicmonkey has quit (Ping timeout: 260 seconds).
07:32:09 -!- impomatic has joined.
07:32:11 <Sgeo> <amalloy> probably possible, but any sane person would murder you
07:32:22 <Sgeo> (To something I said in #clojure )
07:32:23 -!- asieNetbook has quit (Read error: No route to host).
07:34:04 -!- asiekierka has joined.
08:17:03 -!- zzo38 has quit (Ping timeout: 244 seconds).
08:27:49 -!- nooga has joined.
08:31:36 -!- epicmonkey has joined.
08:39:32 <FreeFull> kmc: lol at everything soundnfury said about haskell
08:40:03 -!- kinoSi has quit (Read error: Connection reset by peer).
08:40:30 -!- kinoSi has joined.
08:42:53 <FreeFull> Ultimately Haskell is just another functional language
08:44:33 <itidus21> haskell is more than a programming language
08:44:54 <coppro> it is life itself
08:45:26 <FreeFull> I'd think life would be a Lisp dialect
08:47:14 <itidus21> i suppose i should point out i am a troll who doesn't know haskell
08:51:27 <Sgeo> main = putStrLn "Learn Haskell!" >> main
08:52:14 -!- impomatic has quit (Ping timeout: 260 seconds).
08:53:30 <itidus21> (good_idea) not
08:53:34 -!- oerjan has joined.
08:53:46 <itidus21> im joking.. but its just something i had on my mind
08:57:51 -!- oerjan has set topic: elliott now constructible with compass and ruler | come to think of it, he was last year too, and the previous. but not the next | Just a remote control and some old gum | atriq is Taneb, just so you know | With creativity, anything can be a topic | except this | http://codu.org/logs/_esoteric/.
08:59:15 <FreeFull> I think the RTC will be soldered somewhere on your motherboard
08:59:31 <FreeFull> I don't think it'd be easy to buy a new one
08:59:37 <itidus21> whoa, breaking news: technology website publishes article about large corporation being investigated for IT patent infringement
09:00:13 <oerjan> more breaking news: politician implicated in corruption, hypocrisy
09:00:23 <FreeFull> IT patents are a joke
09:00:26 <FreeFull> A joke I say
09:01:01 <oerjan> gallows humor
09:01:52 <FreeFull> Breaking news: Pop singer breaks up with movie actress!
09:07:09 <oerjan> Breaking news: Globe still warming.
09:08:25 <fizzie> Breaking news: Exiting a loop halfway through.
09:08:33 -!- AnotherTest has joined.
09:13:54 -!- asiekierka_ has joined.
09:16:27 <itidus21> it's actually incredible to me in hindsight how many patents can be created
09:16:59 <Sgeo> quintopia, no I'm not
09:17:01 <Sgeo> >.>
09:17:04 <FreeFull> Sending messages over a number of computers connected together
09:17:05 <itidus21> like i think about all the manmade objects in my house, and i just don't see 10s of 1000s of patents
09:19:02 <FreeFull> There aren't enough RPN-like languages
09:19:15 <FreeFull> Or possibly PN
09:19:56 <FreeFull> RPNised Lisp would have no ()s at all
09:20:49 <FreeFull> Might be harder to read though
09:20:58 <Sgeo> FreeFull, have you ever played with Factor?
09:21:01 <FreeFull> So you'd still do indentation for that
09:21:05 <Sgeo> Although admittedly it's not a Lisp
09:21:16 <FreeFull> I haven't
09:22:12 <FreeFull> Looks cool
09:24:08 -!- asiekierka has quit (Ping timeout: 268 seconds).
09:30:33 <AnotherTest> kmc: boost::spirit doesn't to work with C++ 11 lambdas
09:31:03 <AnotherTest> but maybe I can convert them to a function object? That should work.
09:33:11 <AnotherTest> well since it already is a function object
09:33:15 <AnotherTest> I don't see the actual problem
09:37:58 <itidus21> one thing i don't like about patent battles is that the essential disputes in each case could be sufficiently abstracted and simplified that orangutans could stand in for the lawyers
09:38:07 <itidus21> i believe they possess the necessary reasoning skills
09:40:29 <itidus21> the commentary would be approximately the same too
09:41:00 <oerjan> will there be flinging of feces?
09:41:31 <itidus21> Billy and Tommy continue to butt heads over patents and the licensing of each others' technologies.
09:42:45 <itidus21> The two orangutans are not friends, but Billy wants to be, months after the zookeeper acquired the orangutan -- as well as its patent troubles.
09:42:58 -!- sirdancealot has quit (Read error: Connection reset by peer).
09:43:15 <itidus21> i broke the analogy there though
09:44:02 -!- sirdancealot has joined.
09:44:29 <itidus21> oerjan: suffice to say that under experimental conditions, monkeys can experience executive stress and also get upset if someone is cheating
09:44:49 <itidus21> i don't know exactly how true that is, but it's enough to argue patents
09:45:45 <itidus21> like if you completely ignore the spirit of the patent, and see it as an abstract entity whose value is measured by the damage it can do to others
09:46:04 <oerjan> "We claim that Orangusoft has violated our patent on the upper hand fling."
09:46:34 <FreeFull> Orangusoft claims prior art
09:47:24 * itidus21 finds Greater Bronze Patent Collection.
09:48:20 * itidus21 has encountered a kobold weak against Wifi Patents.
09:48:27 <oerjan> "I am sorry but previous to Orangusoft's patent the upper hand fling was only used for _hard_ feces. Our patent pertains to overcoming to obstacles of using _soft_ feces. Thus our company name, of course."
09:48:36 <oerjan> *the
09:49:53 * itidus21 taps his Wifi Patent Card.
09:51:41 <FreeFull> "If you actually look at Orangusoft's patent, you'll notice that your company violates claims 3 and 4, which detail the use of trained chimpanzees to throw the feces rather than doing it manually."
09:51:58 <itidus21> my outburst is just that i am in a mood in real life.. i'll try watching some tv
09:56:47 <oerjan> "I am sorry but this is preposterous. Our company uses bonobos, an entirely different species."
10:01:59 <FreeFull> "Claim 5 covers the use of any ape as a replacement for the chimpanzees
10:08:41 -!- copumpkin has quit (Ping timeout: 240 seconds).
10:09:21 -!- copumpkin has joined.
10:13:22 -!- ais523 has joined.
10:18:28 -!- derdon has joined.
10:19:09 <Sgeo> "hello i will like to join you guys because im a big fan and i think it will be fun tell about all scp i see in real life
10:19:09 <Sgeo> "
10:23:46 -!- nooga has quit (Ping timeout: 245 seconds).
10:26:41 -!- nooga has joined.
10:37:38 -!- sirdancealot has quit (Read error: Connection reset by peer).
10:38:41 -!- sirdancealot has joined.
10:41:19 -!- copumpkin has quit (Ping timeout: 246 seconds).
10:41:51 -!- copumpkin has joined.
10:43:04 -!- DHeadshot has quit (Ping timeout: 260 seconds).
10:57:05 -!- oklopol has joined.
10:57:57 -!- oerjan has quit (Quit: leaving).
10:58:32 <oklopol> so about 16 percent of papers in the leading CA conference are ours this year. such a popular field :D
10:59:00 <oklopol> actually it's two conferences in one because both were so small.
10:59:24 <oklopol> so what's up
11:00:09 <oklopol> great topic
11:06:15 -!- nooga_ has joined.
11:06:57 -!- nooga has quit (Ping timeout: 256 seconds).
11:13:52 -!- ogrom has joined.
11:19:42 <nortti> 03:34 < kmc> paging nortti // What?
11:22:57 <fizzie> nortti: Gregor commented that the problem with the "EMACS -> Eighty Megs And Constantly Swapping" expansion is that 80 megs is "nothing" now.
11:23:09 <fizzie> nortti: I think kmc was hoping you'd disagree.
11:23:25 <fizzie> (Though the acronym was "eight" when I heard it.)
11:23:25 <Gregor> nortti would, yes.
11:23:28 <nortti> 80 megs it _much_
11:23:29 <Gregor> But nortti is nutty.
11:23:53 <nortti> *a lot
11:24:09 <fizzie> #esoteric: may contain nuts.
11:24:15 <nortti> :P
11:26:55 <oklopol> in my opinion even a _single_ bit is quite a bit of memory.
11:27:36 <Gregor> Every biiiiiiit is preeeeeecious!
11:27:41 <Gregor> Every biiiiiiit is gooooooood!
11:31:19 <fizzie> Hoh, the DS apparently has a memory-mapped hardware div/rem (64-bit in/out) and sqrt (64-to-32) things. Fancy.
11:32:24 -!- sirdancealot has quit (Ping timeout: 268 seconds).
11:45:51 -!- sirdancealot has joined.
11:52:25 -!- MoALTz has joined.
11:54:36 -!- MoALTz has quit (Client Quit).
11:57:41 -!- Lumpio- has quit (Ping timeout: 268 seconds).
12:00:31 -!- Phantom_Hoover has joined.
12:00:50 -!- MoALTz has joined.
12:16:24 -!- itidus20 has joined.
12:17:26 <Sgeo> "Where do babies come from? Well, when a man and a woman love each other very much [REDACTED] and then the mommy says 'Oooh, I've never seen one so big!' [REDACTED] seven dwarves, but not those seven dwarves, that'd be silly, [REDACTED] which is the exact moment your uncle Steve comes out from behind the camera [REDACTED] 17 monkeys, three camels, and a VERY frisky otter [REDACTED] which kind of makes sense, considering your hair color [REDAC
12:17:27 <Sgeo> TED] dirty, dirty, dirty whore [REDACTED] "It'll never fit!" [REDACTED] and then, nine months later, with your mother cussing the entire time, and plotting your eventual devise, bam, a baby is adopted from an Asian country by two happy lesbians."
12:17:50 -!- derdon has quit (Remote host closed the connection).
12:19:52 -!- itidus21 has quit (Ping timeout: 252 seconds).
12:21:24 <kmc> Sgeo: is JVM actually that slow? i mean, what are you going on here
12:22:26 <Sgeo> I think elliott saying he wouldn't use an esolang implementation written in Clojure affected me to perhaps an extreme degree
12:32:18 <FreeFull> Sgeo: Babies are made in China?
12:33:33 <FreeFull> fizzie: So you write the two values to memory and read back the result?
12:33:40 <FreeFull> Interesting
12:41:29 -!- Lumpio- has joined.
12:50:19 <kmc> http://en.wikipedia.org/wiki/Transport_triggered_architecture
12:56:05 <fizzie> FreeFull: Yes. And then there's a mode/status reg that can be asked for if it's busy or what.
13:14:19 -!- TeruFSX2 has joined.
13:44:25 -!- asiekierka_ has quit (Quit: Connection reset by PO).
13:55:54 -!- MoALTz has quit (Ping timeout: 246 seconds).
14:04:49 <kmc> afaik Sun/Oracle JVM is one of the faster implementations of any managed language
14:04:54 <kmc> the shootout agrees fwiw
14:04:55 <kmc> http://shootout.alioth.debian.org/u32/which-programming-languages-are-fastest.php
14:06:15 <kmc> they don't have LuaJIT :/
14:09:55 -!- c0rt3x has joined.
14:09:57 <fizzie> Well, people have been paid real money (not just Monopoly dollars) to worry about the efficiency of that JVM, it ought to have done something.
14:10:04 <kmc> yeah
14:10:09 <kmc> lots of people over decades
14:13:48 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:20:37 <fizzie> "If you see the machine doing something with dazzling speed, it's probably the built-in machine language doing it."
14:21:02 <fizzie> (Random youtube clicking took me to a two-hour C64 introduction video.)
14:24:16 -!- asiekierka has joined.
14:30:43 -!- copumpkin has joined.
14:33:26 -!- asiekierka has quit (Remote host closed the connection).
14:44:46 <kmc> i finally got around to watching _The Social NetworK_
14:52:42 -!- ogrom has quit (Quit: Left).
14:53:25 <FreeFull> You didn't have to
14:54:09 <FreeFull> The Commodore 64 isn't that complicated
15:03:17 <itidus20> i love the term built in machine language
15:11:56 -!- asiekierka has joined.
15:16:04 -!- epicmonkey has quit (Ping timeout: 260 seconds).
15:22:49 -!- sivoais has quit (Ping timeout: 244 seconds).
15:27:04 -!- cuttlefish has joined.
15:27:24 -!- boily has joined.
15:30:53 -!- sivoais has joined.
15:45:00 -!- copumpkin has quit (Ping timeout: 244 seconds).
15:47:08 <FreeFull> itidus20: Suggesting it could be not built in?
15:47:41 <itidus20> well actually this is the first time ive heard it but yes the comedy is there on many levels
15:48:25 <kmc> the degree to which machine language is "built in" varies widely
15:48:42 <kmc> for example operating systems will emulate instructions which are not implemented by your particular processor
15:50:23 <FreeFull> The processor might have separate microcode to define what instructions there are
15:50:47 <kmc> yeah, and microcode can sometimes be re-flashed
15:51:03 <itidus20> freefall, basically kmc has got my back to protect me from saying things which aren't true
15:51:06 <FreeFull> The N64 had changeable microcode for the graphics
15:51:26 <kmc> itidus20: i could never accomplish such a feat
15:51:37 <FreeFull> Most developers didn't make use of it
15:51:43 <FreeFull> But you could do some great things with it
15:51:58 <FreeFull> Most emulators won't emulate it though
15:52:04 <kmc> what could you do?
15:52:18 <itidus20> emulation is so bad ass
15:52:34 <itidus20> it has all the drawbacks of reality too
15:53:04 <FreeFull> Being clever, you could create graphics that would outdo the Playstation
15:53:13 <kmc> itidus20 have you used the debian/ubuntu magic qemulated chroots
15:53:15 <itidus20> its like trying to play videogames in hell (not that i believe in hell in that sense)
15:53:40 <kmc> it's pretty slick
15:53:43 <itidus20> its like.. ok the graphics look perfect.. the framerate is fine... but.. oh no.. i just tried to save and the emulator died
15:53:50 <kmc> but no you're just talking about video games
15:53:55 <itidus20> curse you.... foul... demon!
15:54:14 <itidus20> kmc: i always live in the shadows of the wonderful things
15:54:34 <itidus20> eg.. in programming languages i cant see beyond c++ and visual basic
15:54:45 <kmc> but C++ is fascinating!
15:54:47 <itidus20> and in math i can't see beyond middleschool math homework
15:54:52 <FreeFull> C++ is a big ball of mud
15:54:57 <kmc> no it's not actually
15:55:03 <itidus20> and in emulation i can't see past video games
15:55:25 <FreeFull> The N64 graphics chip allowed you to reprogram basically everything about it
15:55:31 -!- augur has quit (Remote host closed the connection).
15:55:33 <kmc> C++ is a bad language, but it's bad in almost the opposite way of most bad languages
15:55:38 <itidus20> but i guess i enjoy knowing theres more to things than i am aware of
15:55:56 <FreeFull> C++ is bad because it is a whole load of good elements mixed together
15:56:02 <itidus20> but i don't really know it
15:56:10 <kmc> in *theory*, all the C++ features fit together perfectly to form something that's powerful, conceptually consistent, elegant, and very unusual
15:56:15 <FreeFull> Most bad languages are just a whole load of bad elements
15:56:18 <kmc> if you really learn the language well, you start to see that
15:56:24 <itidus20> oh.. so its kind of the communism of programming languages?
15:56:34 <kmc> but, in *practice*, this amazing edifice they've built just kinda sucks for getting anything done
15:56:46 <kmc> it's not like PHP where idiots have just been adding features willy nilly
15:56:53 <kmc> the C++ designers put a *lot* of thought in
15:57:01 <FreeFull> In practice most people aren't smart enough to make full use of C++
15:57:01 -!- augur has joined.
15:57:14 <kmc> not smart enough, and/or don't have years of their life to waste on learning it
15:57:27 <FreeFull> That too
15:57:32 <kmc> there are a lot of similarities between C++ and Haskell
15:57:40 <kmc> with respect to the above
15:57:42 <itidus20> well.. c++ isn't good for people who read language standards
15:57:56 <itidus20> its apparently too big
15:58:31 <kmc> so real world projects end up using haphazardly chosen subsets of C++
15:58:48 -!- asiekierka has quit (Ping timeout: 268 seconds).
15:58:48 <kmc> and people approach it as "C with stuff grafted on"
15:59:14 <FreeFull> Haskell seems simpler than C++ to me
15:59:16 <kmc> and this is a lot *less* elegant than what C++ was intended to be
15:59:23 <kmc> but maybe also better for getting stuff done
15:59:24 <itidus20> i recall theres some test suite for C which has the name 9000 in it's name
16:00:19 <FreeFull> C++ would be better if it didn't start out with a C base, but it also would be less popular
16:00:35 <itidus20> maybe not
16:01:01 <kmc> FreeFull: yeah
16:01:11 <kmc> a lot of the avoidable ugliness is syntactic ugliness relating to that choice
16:01:32 <kmc> they could have just specified an interface to C without making it take over the language
16:01:40 <kmc> every other popular language has a way to call C
16:01:54 <itidus20> oh i recall now
16:02:02 <kmc> fruit fucker 9000
16:02:06 <itidus20> it was something to do with undefined behavior
16:02:34 <itidus20> ahh death station 9000
16:03:09 <itidus20> so, the existence of such things suggests that people have a grip on C
16:04:16 <itidus20> even if theres elements in truth in what im saying, i should stop. i know im bullshitting
16:04:23 <itidus20> i know it
16:05:58 <FreeFull> As far as I understand, you can only use $ with functions that take multiple arguments if the whole thing is in brackets or if the $ is before the last argument?
16:06:35 <FreeFull> So atan2 $ something something won't work
16:06:50 <FreeFull> Sorry, talking about Haskell
16:07:57 <ion> If ($)’s fixity was fixed (no pun inteded) one could use atan2 $ a $ b. Well, using $ with atan2 is horrible, but it would be useful in longer expressions where the parameters are on separate lines.
16:08:03 <kmc> > atan2 $ negate 3
16:08:04 <lambdabot> Overlapping instances for GHC.Show.Show (a -> a)
16:08:04 <lambdabot> arising from a use of `...
16:08:08 <kmc> god damn it lambdabot
16:08:13 <kmc> die in a fire and burn in hell
16:09:32 <FreeFull> > atan2 3 $ negate 3
16:09:33 <kmc> FreeFull: every function takes exactly one argument
16:09:33 <lambdabot> 2.356194490192345
16:09:41 <kmc> there are no "functions that take multiple arguments"
16:09:53 <kmc> the rule you stated seems messy, it's better to focus on what's actually going on i think
16:10:14 <itidus20> in one small program i wrote once, i found that trying to use c++ as oop gave me good results
16:10:17 <FreeFull> kmc: I'm thinking, if you do atan2 $ something, you create a function
16:10:23 <kmc> > let f = subtract $ negate 3 in f 4
16:10:24 <lambdabot> 7
16:10:40 <FreeFull> But you can't call it with your next argument without () or using let like you did
16:10:42 <kmc> :t atan2 $ ?x
16:10:44 <lambdabot> forall a. (RealFloat a, ?x::a) => a -> a
16:11:09 <ion> > let ($) = (Prelude.$); infixl 0 $ in atan2 $ 4 $ 5
16:11:09 <kmc> that seems like a true fact FreeFull
16:11:10 <lambdabot> 0.6747409422235527
16:11:22 <kmc> (well there are some other ways to name something, besides let)
16:11:22 <itidus20> maybe people who are highly experienced at coding, like having their 10,000 hours, can just read code easily
16:11:37 <kmc> itidus20: what an outrageous claim
16:12:09 <FreeFull> > sin . atan2 3 $ 3
16:12:13 <lambdabot> 0.7071067811865475
16:12:13 <itidus20> i think that reading code and seeing what it is doing is incredibly difficult
16:12:33 <FreeFull> itidus20: Depends on how it was coded
16:12:47 <itidus20> at the most novice level, sure i can read the identifiers and infer from them what the code is doing
16:13:06 <itidus20> but, relying on identifiers is surely bad
16:13:16 <FreeFull> When you see puts("Hello, World!");
16:13:19 <itidus20> i feel i rely on identifiers
16:13:25 <FreeFull> You can identify what that does quickly, right?
16:13:36 <itidus20> yes
16:14:22 <FreeFull> How about show 'H':'e':'l':'l':'o':[]
16:15:17 <itidus20> i am relying on the alphabetical characters to tell me what is happening which is.... showHello
16:15:39 <itidus20> well i guess.. i am not quite that desperate.. i know 'x' is a character
16:15:51 <FreeFull> Well, if you see something like A385BB35
16:16:08 <FreeFull> How are you going to know what it does without understanding what the identifiers mean
16:16:33 <FreeFull> A3 could be add, subtract, or even pop from stack
16:17:39 <FreeFull> It's always about using your current knowledge, and if you don't know enough, learning more
16:19:00 <itidus20> i guess thats the fun thing about esolangs
16:19:05 <itidus20> they rarely have identifiers
16:19:25 -!- c0rt3x2 has joined.
16:19:40 <itidus20> among all the other fun things about esolangs
16:19:57 <FreeFull> If you encounter something which has nothing to do with anything you learned before, no amount of being super awesome will help, you just have to look at the documentation
16:20:38 <FreeFull> Or look at the code
16:20:56 <kmc> itidus20: they rarely have identifiers because almost all of them are brainfuck clones
16:20:59 <kmc> ;)
16:21:57 <FreeFull> Brainfuck clones or a stack-based language
16:22:18 <FreeFull> Although "stack based" is a wide category
16:22:24 <FreeFull> Funges are technically stack-based
16:22:28 <nortti> true
16:22:35 <FreeFull> But certainly not your usual language
16:22:38 -!- c0rt3x has quit (Ping timeout: 265 seconds).
16:22:48 <nortti> there aren't that many lisp clones when I think about it
16:23:01 <FreeFull> They tend to be called lisp dialects
16:23:07 <kmc> how would you make an eso-lisp?
16:23:14 <kmc> i think there are a few on the wiki
16:23:19 <FreeFull> I would get rid of all the ()
16:23:25 <itidus20> well i got a psp and a ds recently... and homebrewing hardware.. and at some point i thought wow this is really cool.. emulation really has a lot of effects
16:23:43 <itidus20> but, it always seems to have drawbacks.. it's never quite there
16:23:44 <nortti> FreeFull: good luck using if with that
16:23:51 <nortti> (I tried)
16:24:14 <itidus20> its always a work in progress project waiting to curl up and die
16:24:15 <FreeFull> nortti: Lisp uses prefix syntax anyway
16:24:34 <FreeFull> The only issue is where you can have an arbitrary amount of parameters, or possibly with macros
16:24:43 <nortti> FreeFull: yes but how you know how many params function needs?
16:24:46 <itidus20> new hardware and new hacks get released and suddenly its wasteful to fix a broken emulator
16:26:41 <FreeFull> nortti: If it's something like + or *, it can have an arbitrary number of parameters, so you could either restrict them to 2 parameters or have the first parameters be the number of parameters afterwards
16:27:03 <FreeFull> Most functions have a fixed number of parameters
16:27:29 <FreeFull> And with a lambda you know how many parameters there are too, since that gets specified
16:27:57 -!- zzo38 has joined.
16:28:06 -!- epicmonkey has joined.
16:28:57 <FreeFull> An example lambda would be lambda list 3 'x 'y 'z * x * y z
16:29:07 <FreeFull> A lambda here expects two parameters
16:29:59 <FreeFull> And produces a function which expects three parameters
16:30:13 <FreeFull> lambda list 3 'x 'y 'z * x * y z 1 2 3 should print 6
16:30:24 <FreeFull> I admit it's not very readable though
16:30:44 <FreeFull> You can always split stuff into smaller chunks though
16:31:25 <FreeFull> defun multiply3 qlist 3 x y z * x * y z; multiply3 1 2 3
16:31:31 -!- asiekierka has joined.
16:31:52 <fizzie> There's a SRFI that adds "I-expressions", an indentation-based way of writing S-expressions. You can also mix-n-match. Though I think it was withdrawn, maybe.
16:32:19 <fizzie> Oh, it wasn't.
16:32:21 <fizzie> Well, anyway.
16:32:23 <FreeFull> You could have a preprocessor that converts (x y z) into list 3 x y z and '(x y z) into qlist 3 x y z
16:32:51 <nortti> fizzie: how do I write (foo (bar)(baz)) in I-expressions
16:35:29 <kmc> FreeFull: in scheme you can make a lambda which takes an arbitrary number of arguments
16:35:53 <kmc> you would have to restrict / change that ability as well
16:36:23 <fizzie> nortti: "foo\n group bar\n group baz" I think. There's a special "group" symbol to support lists whose first element is a list. Plain "foo\n bar\n baz" would have been (foo bar baz).
16:36:36 <FreeFull> kmc: You'd need to have the caller pass in the number of arguments
16:38:28 <FreeFull> Hey, apparently in lisp (*) is equivalent to 1 and (+) to 0
16:38:41 <nortti> yes
16:38:57 <FreeFull> So you could get rid of digits altogether
16:39:35 <FreeFull> And create all numbers using (*) (/) (+) (-)
16:39:58 <nortti> :P
16:40:08 <fizzie> Scheme, too. And (- x) is (- 0 x), while (/ x) is (/ 1 x). But the >2-argument extensions of - and / are optional.
16:40:34 -!- AnotherTest has quit (Quit: Leaving.).
16:41:15 -!- AnotherTest has joined.
16:41:45 <FreeFull> Does Haskell have a way to produce a number without using any digits?
16:42:15 <fizzie> > length "!!!"
16:42:16 <lambdabot> 3
16:42:18 -!- c0rt3x2 has quit (Quit: Nettalk6 - www.ntalk.de).
16:42:21 <FreeFull> That works
16:42:23 <ion> > maxBound :: Integer
16:42:24 <lambdabot> No instance for (GHC.Enum.Bounded GHC.Integer.Type.Integer)
16:42:24 <lambdabot> arising from...
16:42:29 <ion> > maxBound :: Int -- duh
16:42:30 <lambdabot> 9223372036854775807
16:42:35 <zzo38> Does the Lisp (*) (+) just multiply and add any number of arguments? If so then it makes sense that (*) would be 1 and (+) would be zero
16:42:38 <FreeFull> How about without using lists either?
16:42:41 <fizzie> zzo38: Yes.
16:43:18 <FreeFull> How would you use maxBound to produce numbers smaller than maxBound itself?
16:43:26 <ion> > fromEnum 'a'
16:43:26 <fizzie> Well, there's quite a few different maxBounds.
16:43:27 <lambdabot> 97
16:43:33 <FreeFull> Oh, I know
16:43:37 <FreeFull> Divide it by itself
16:43:40 <ion> > minBound :: Word8
16:43:41 <lambdabot> 0
16:44:03 <ion> > succ . minBound :: Word8
16:44:05 <lambdabot> Couldn't match expected type `GHC.Word.Word8'
16:44:05 <lambdabot> against inferred type...
16:44:07 <ion> > succ minBound :: Word8
16:44:09 <lambdabot> 1
16:44:24 <fizzie> > [fromEnum False, fromEnum True]
16:44:26 <lambdabot> [0,1]
16:44:36 <fizzie> Those are quite easy 0 and 1 there.
16:44:53 <FreeFull> > (maxBound :: Int) `div` (maxBound :: Int)
16:44:54 <lambdabot> 1
16:45:05 <FreeFull> succ works too
16:45:10 <ion> > join div maxBound
16:45:12 <lambdabot> Ambiguous type variable `a' in the constraints:
16:45:12 <lambdabot> `GHC.Enum.Bounded a'
16:45:12 <lambdabot> ...
16:45:14 <ion> > join div maxBound :: Int
16:45:16 <lambdabot> 1
16:45:44 <ion> > (join (-) . join div) maxBound :: Int
16:45:46 <lambdabot> 0
16:45:50 <FreeFull> What is join part of?
16:46:02 <ion> @type join
16:46:04 <lambdabot> forall (m :: * -> *) a. (Monad m) => m (m a) -> m a
16:46:16 <fizzie> It's part of Control.Monad if you mean where it's from.
16:46:16 <ion> where m ~ ((->) r)
16:46:32 <FreeFull> Yeah, that's what I meant
16:47:56 -!- MoALTz has joined.
16:48:58 <kmc> > (sum [], product [])
16:48:59 <lambdabot> (0,1)
17:01:23 <FreeFull> Yeah but that uses lists =P
17:07:15 -!- asiekierka has quit (Ping timeout: 268 seconds).
17:12:34 -!- copumpkin has joined.
17:12:38 -!- copumpkin has quit (Changing host).
17:12:38 -!- copumpkin has joined.
17:22:30 -!- asiekierka has joined.
17:30:49 -!- pumpkin has joined.
17:31:00 -!- asiekierka has quit (Remote host closed the connection).
17:31:55 -!- pumpkin has quit (Client Quit).
17:33:20 -!- atehwa_ has joined.
17:37:54 -!- mtve has quit (*.net *.split).
17:37:54 -!- atehwa has quit (*.net *.split).
17:37:55 -!- SimonRC has quit (*.net *.split).
17:37:55 -!- ssue has quit (*.net *.split).
17:37:55 -!- comex has quit (*.net *.split).
17:37:56 -!- oklopol has quit (*.net *.split).
17:37:56 -!- shachaf has quit (*.net *.split).
17:37:56 -!- aloril has quit (*.net *.split).
17:37:56 -!- fungot has quit (*.net *.split).
17:37:56 -!- TodPunk has quit (*.net *.split).
17:37:56 -!- hogeyui_ has quit (*.net *.split).
17:37:56 -!- nooga_ has quit (*.net *.split).
17:37:56 -!- lambdabot has quit (*.net *.split).
17:37:56 -!- mroman has quit (*.net *.split).
17:37:56 -!- kinoSi has quit (*.net *.split).
17:37:56 -!- FreeFull has quit (*.net *.split).
17:37:56 -!- yiyus_ has quit (*.net *.split).
17:37:56 -!- nortti| has quit (*.net *.split).
17:37:56 -!- ineiros has quit (*.net *.split).
17:37:56 -!- jix has quit (*.net *.split).
17:37:56 -!- quintopia has quit (*.net *.split).
17:37:56 -!- Gregor has quit (*.net *.split).
17:37:56 -!- pikhq has quit (*.net *.split).
17:37:57 -!- HackEgo has quit (*.net *.split).
17:37:57 -!- coppro has quit (*.net *.split).
17:37:57 -!- lifthrasiir has quit (*.net *.split).
17:37:57 -!- FireFly has quit (*.net *.split).
17:37:57 -!- cuttlefish has quit (*.net *.split).
17:37:57 -!- zzo38 has quit (*.net *.split).
17:37:57 -!- ion has quit (*.net *.split).
17:37:57 -!- kmc has quit (*.net *.split).
17:37:57 -!- Sgeo has quit (*.net *.split).
17:37:58 -!- oonbotti has quit (*.net *.split).
17:37:58 -!- lahwran has quit (*.net *.split).
17:37:58 -!- copumpkin has quit (*.net *.split).
17:37:58 -!- sivoais has quit (*.net *.split).
17:38:00 -!- kallisti has quit (*.net *.split).
17:38:00 -!- TeruFSX2 has quit (*.net *.split).
17:38:00 -!- itidus20 has quit (*.net *.split).
17:38:00 -!- sirdancealot has quit (*.net *.split).
17:38:24 -!- zzo38 has joined.
17:38:24 -!- ion has joined.
17:38:24 -!- kmc has joined.
17:38:48 -!- nooga_ has joined.
17:38:48 -!- lambdabot has joined.
17:38:48 -!- mroman has joined.
17:38:59 -!- comex has joined.
17:38:59 -!- kallisti has joined.
17:38:59 -!- TeruFSX2 has joined.
17:38:59 -!- itidus20 has joined.
17:38:59 -!- sirdancealot has joined.
17:39:47 -!- quintopia has joined.
17:39:57 -!- copumpkin has joined.
17:39:58 -!- pikhq has joined.
17:39:58 -!- HackEgo has joined.
17:39:58 -!- coppro has joined.
17:39:58 -!- lifthrasiir has joined.
17:39:58 -!- oklopol has joined.
17:39:59 -!- shachaf has joined.
17:39:59 -!- aloril has joined.
17:39:59 -!- fungot has joined.
17:39:59 -!- TodPunk has joined.
17:39:59 -!- hogeyui_ has joined.
17:40:05 -!- Sgeo has joined.
17:40:05 -!- oonbotti has joined.
17:40:05 -!- lahwran has joined.
17:40:37 -!- FireFly has joined.
17:40:41 -!- cuttlefish has joined.
17:40:46 -!- sivoais_ has joined.
17:40:47 -!- kinoSi has joined.
17:40:47 -!- FreeFull has joined.
17:40:47 -!- yiyus_ has joined.
17:40:47 -!- nortti| has joined.
17:40:47 -!- ineiros has joined.
17:40:47 -!- jix has joined.
17:40:47 -!- Gregor has joined.
17:44:58 -!- zzo38 has quit (*.net *.split).
17:44:58 -!- ion has quit (*.net *.split).
17:44:58 -!- kmc has quit (*.net *.split).
17:45:19 -!- zzo38 has joined.
17:45:19 -!- ion has joined.
17:45:19 -!- kmc has joined.
17:47:34 -!- sivoais_ has quit (Ping timeout: 246 seconds).
17:47:59 -!- sivoais has joined.
17:48:04 -!- ais523 has quit (Remote host closed the connection).
17:48:28 -!- ais523 has joined.
17:49:22 <boily> that netsplit made me learn something interesting: I'm on IPv6.
17:50:04 <zzo38> You have not known that before?
17:51:30 <fizzie> And how did the netsplit suddenly reveal it?
17:51:32 <zzo38> Can a computer's optical drive be sound-proofed?
17:51:40 <boily> no, it never dawned on me before. I usually connect to IRC in the morning before I had any coffee, so details like that tend to go unnoticed.
17:52:16 <boily> fizzie: because weechat shows the user@ip of persons that join/part.
17:52:19 -!- ssue has joined.
17:52:28 <boily> fizzie: --> | cuttlefish (~cuttlefis@2607:fad8:4:0:f2de:f1ff:fe6c:6765) a rejoint #esoteric
17:53:29 <fizzie> Ah, so it was someone "else's" rejoining.
17:53:59 <zzo38> Now I am the champion of the BBS boxing game
17:54:36 <zzo38> (I was 11th and am now champion)
17:54:47 <fizzie> Is there a prize?
17:55:35 <zzo38> I don't think so.
17:56:13 <fizzie> In the (now defunct) BBS system of a Finnish computer magazine, there was a "60 minutes per day" time limit, but you could win extra minutes in some of the games. (Though not in the "regular" games like LORD, I don't think; there was some lottery-like thing though where you could "pay" with minutes, and win minutes.)
17:56:16 <quintopia> go zzo38
17:56:40 <zzo38> This is X-BIT and it was defunct and one time but now it is back on.
17:57:16 <fizzie> (There was also a "time bank" that went up to... 240 minutes, maybe? Officially for long downloads. Can't get much more than a megabyte in an hour, after all.)
17:57:28 -!- sivoais has quit (Quit: leaving).
17:58:00 -!- sivoais has joined.
18:00:28 -!- sivoais has quit (Read error: Connection reset by peer).
18:00:55 -!- sivoais has joined.
18:04:29 -!- derdon has joined.
18:08:12 <zzo38> If you need to download something you could use FTP; Synchronet does support a lot of protocols (Telnet, SSH, rlogin, FTP, HTTP, gopher, IRC, NNTP, SMTP, POP3, ...)
18:10:17 <fizzie> The computer magazine did make the file archives available over... at least HTTP and I think FTP too, later, when the Internet really came along. (They also offered a dial-up Internet connection, IIRC.)
18:12:09 <kmc> the Stripe web security CTF thingy starts at the end of the hour
18:12:20 <kmc> (unless you're in one of those weird non-integral-GMT-offset timezones)
18:12:27 <kmc> https://stripe.com/blog
18:13:16 <Lumpio-> fizzie: MBnet!?
18:13:23 <fizzie> Lumpio-: Sure.
18:13:43 <Lumpio-> I think I used it exactly once
18:13:58 <Lumpio-> They had telnet access in the later years, right?
18:14:06 <fizzie> They did, yes.
18:14:13 <fizzie> The SModem-based "chat and download at the same thing" was, like, so futuristic.
18:14:21 <Lumpio-> I borrowed the user ID off a library copy of the magazine.
18:14:21 <fizzie> SModem itself is a Finnish invention, I think.
18:15:13 <Lumpio-> tbh it's pretty trivial to do if you just come up with a simple protocol on top of the raw teletype data
18:15:27 -!- sivoais has quit (Remote host closed the connection).
18:15:31 <Lumpio-> The fact that it took so long to invent says something about the laziness of BBS people.
18:15:34 <fizzie> Sure, but ZModem and the rest didn't do it.
18:15:37 <Lumpio-> And/or reluctance to change
18:15:55 -!- sivoais has joined.
18:16:06 -!- SimonRC has joined.
18:16:40 -!- ssue has quit (Changing host).
18:16:41 -!- ssue has joined.
18:16:55 <fizzie> It's also not completely trivial; at least ZModem isn't, I don't know about SModem. (There's a TCP-like sliding window ack thing and such.)
18:17:06 <zzo38> Telnet is the main protocol to access any modern Synchronet BBS, although there are other protocols too which may be enabled/disabled on some BBS. (Telnet can also be disabled although that would seem pretty useless.)
18:17:47 <zzo38> Well now we have internet, so you don't need that SModem if you can just make multiple connections, one to Telnet and one to FTP, or something like that
18:18:05 -!- MoALTz_ has joined.
18:20:02 <kmc> T R I V I A L
18:21:02 -!- MoALTz has quit (Ping timeout: 256 seconds).
18:22:21 -!- asiekierka has joined.
18:22:29 <kmc> what ever happened to the word "easy", anyway
18:22:37 <fizzie> It was too easy.
18:22:45 <zzo38> kmc: Is it too short for some people?
18:22:51 <zzo38> Especially long people?
18:22:56 <kmc> seems like
18:25:02 -!- MoALTz__ has joined.
18:26:19 <zzo38> I tried in Haskell to make something like the Free monad but specify a monad transformer instead of a functor, so you could have (TransFree Codensity) and so on; (TransFree (ReaderT x)) seem to be similar like (Free ((->) x)) I think but some are different. What would you think of it?
18:27:47 -!- MoALTz_ has quit (Ping timeout: 244 seconds).
18:30:24 <zzo38> data TransFree t x = TransPure x | TransFree (t (TransFree t) x); join (TransFree x) = TransFree (x >>= lift);
18:31:13 -!- MoALTz__ has quit (Quit: brb).
18:31:33 -!- MoALTz has joined.
18:32:12 <zzo38> data TransCofree t x = TransCofree x (t (TransCofree t) x); duplicate (TransCofree x y) = TransCofree (TransCofree x y) (y =>> lower);
18:37:19 -!- epicmonkey has quit (Ping timeout: 260 seconds).
18:40:04 -!- kinoSi has quit (Read error: Connection reset by peer).
18:40:31 -!- kinoSi has joined.
18:49:07 <olsner> kmc: I think trivial and easy mean different things ... something can be trivial but require loads of work, for instance
18:49:48 <olsner> but trivial is nicer because it points out how stupid someone is for not knowing that something is trivial
18:49:56 <kmc> yeah
18:50:01 <kmc> to me it's become just a douchebag version of "easy"
18:50:21 <kmc> and i don't like it when people describe conceptually simple but difficult-to-do things as "trivial"
18:50:53 <kmc> basically i think "trivial" should mean "so incredibly simple that there isn't anything to say about it at all"
18:51:07 <kmc> so when people say "trivial 100-line script" or "trivial one day project" it sounds like an absurd contradiction
18:51:11 <kmc> but who am i to say what words should mean
18:51:49 <kmc> i would be happy with the description of many programming tasks as "mathematically trivial" but that does not make them trivial to implement :)
18:52:25 <kmc> getting psyched for this CTF
18:53:00 <zzo38> I generally only use "trivial" when talking about mathematics, using in the way it is used in mathematics
18:53:11 <zzo38> Such as a "trivial ring" or whatever
18:54:04 <zzo38> So in other words just because something is easy does not necessarily make it trivial, and vice versa
18:58:30 -!- TeruFSX2 has quit (Ping timeout: 250 seconds).
19:01:24 <shachaf> kmc: Looks like step 1 of the CTF is to DDoS their website. :-(
19:01:52 <shachaf> Oh, or maybe my connection was just being problematic.
19:04:46 -!- MoALTz has quit (Quit: brb).
19:23:47 -!- AnotherTest has quit (Quit: Leaving.).
19:37:43 -!- mtve has joined.
19:43:44 <Phantom_Hoover> CTF?
19:46:30 <kmc> https://stripe-ctf.com
19:48:01 -!- TeruFSX2 has joined.
19:55:41 -!- copumpkin has changed nick to NEEDMOAR.
19:55:49 -!- NEEDMOAR has changed nick to copumpkin.
19:57:57 -!- ais523 has quit.
20:04:00 -!- impomatic has joined.
20:04:44 * impomatic is trying to write a quine in Mouse
20:06:07 <shachaf> kmc: Bah, frustrating.
20:08:40 <zzo38> impomatic: What did you try so far?
20:09:06 -!- TeruFSX2 has quit (Ping timeout: 264 seconds).
20:12:04 <FreeFull> I wonder what a Haskell quine looks like
20:12:07 * FreeFull looks it up
20:12:42 <shachaf> > ap(++)show"ap(++)show"
20:12:44 <lambdabot> "ap(++)show\"ap(++)show\""
20:13:41 <impomatic> zzo38: #f;34!'#f;34!'64!'$ f"#f;34!'#f;34!'64!'$ f"@
20:14:17 <impomatic> zzo38: it almost works, apart from ! in a string is converted to a newline :-(
20:14:18 <zzo38> Yes that is one way to make a Haskell quine, without I/O. But the other way would be to do with I/O.
20:14:41 <zzo38> impomatic: Oops! Try without ! then?
20:14:48 <shachaf> putStrLn$ap(++)show"putStrLn$ap(++)show"
20:15:20 <impomatic> It need ! because !' is the code to output a character
20:15:40 <zzo38> shachaf: And then put main= to make it a entire program
20:15:57 <zzo38> impomatic: Maybe you need 33!' to make a exclamation mark output?
20:16:11 <zzo38> Does that work?
20:16:43 <impomatic> zzo38: that's what I'm trying, but it makes things even uglier!
20:17:03 <zzo38> Probably you have to anyways
20:18:23 <FreeFull> Nothing beats a sh quine
20:18:26 <FreeFull> Which is an empty file
20:18:52 <olsner> that's also a C quine, for some dialects of C
20:19:05 <zzo38> But you have to make the quine program which is not empty file
20:24:27 <zzo38> In many programming language the empty program will also make no output ending successfully: Brainfuck, BASIC, INTERCAL, Forth, JavaScript, PHP, Perl, probably some others too. But, C, Haskell, they won't compile empty file.
20:41:36 -!- copumpkin has quit (Changing host).
20:41:37 -!- copumpkin has joined.
20:42:03 -!- quintopia has changed nick to Guest1458.
20:43:29 -!- sivoais has quit (Quit: leaving).
20:44:01 -!- sivoais has joined.
20:50:36 <itidus20> so the empty program is a polyglot?
20:50:53 <itidus20> heh
20:51:15 <olsner> the shortest polyglot
20:52:18 -!- FireFly has quit (Changing host).
20:52:18 -!- FireFly has joined.
20:53:03 <itidus20> and a quine too in most cases probably
20:56:40 <olsner> how can star trek enterprise have worse special effects than DS9?
21:02:26 <Phantom_Hoover> olsner, I never thought DS9's effects looked all that bad TbH.
21:02:44 <olsner> Phantom_Hoover: the point is that enterprise has worse effects
21:03:25 <olsner> oh, and DS9 was randomly chosen because the first ENT episode had shape shifters
21:03:45 <Phantom_Hoover> Please don't tell me they were Changelings.
21:04:02 -!- oerjan has joined.
21:04:32 <olsner> no, they were sulivan or somesuch
21:04:37 <olsner> iirc they never appear again
21:05:45 <fizzie> DualShock 9.
21:06:36 -!- oerjan has set topic: May contain nuts | elliott now constructible with compass and ruler | come to think of it, he was last year too, and the previous. but not the next | Just a remote control and some old gum | atriq is Taneb, just so you know | except this | http://codu.org/logs/_esoteric/.
21:06:40 <Phantom_Hoover> fizzie, that would just be a flat, controller-shaped touchscreen though.
21:06:59 <olsner> otoh, there was only 2 years between DS9 and Enterprise... and Odo was a major character that they could spend some money getting right
21:07:32 <kmc> playstation 9. teleport yours today.
21:07:56 <olsner> the temporal console wars
21:08:10 <Phantom_Hoover> olsner, there were 9 years between the first season of DS9 and Enterprise, though.
21:08:15 <olsner> true
21:08:27 <Phantom_Hoover> And Odo looked pretty decent even then.
21:08:55 <olsner> maybe enterprise is just a lot cheaper?
21:09:28 -!- nooga has joined.
21:09:45 <oerjan> nooga: welcome to our complex plane
21:09:49 <Phantom_Hoover> i guess it's set like 200 years earlier so maybe it was before the changelings had developed convincing morph animations
21:10:12 -!- nooga_ has quit (Ping timeout: 248 seconds).
21:10:55 <oerjan> <Gregor> Every biiiiiiit is preeeeeecious! <-- if a bit is wasted...
21:11:10 <olsner> another random note about enterprise: they actually mention curing cancer, I wonder if they mention cancer in any of the other series
21:12:15 <olsner> it seemed to be considered trivial there ... not that star trek should care about that, but I think that cancer will never be quite trivial
21:12:29 <Phantom_Hoover> Of course not, that would make the Federation something other than a perfect utopia where nothing goes wrong.
21:13:11 <olsner> maybe it's so trivial they have forgotten that it existed at all, like us and yersina pestis
21:13:24 <kmc> it seems almost impossible to cure all forms of cancer
21:13:32 <kmc> it seems like an inevitable failure mode of self-reproducing systems
21:13:54 <Phantom_Hoover> well we know that breast cancer has become a thing of the past by the time of memory alpha's writing
21:13:55 <kmc> but you can prevent the most common instances of that failure mode
21:15:05 <olsner> oerjan: speaking of complex plane, is there a UTF that involves complex numbers?
21:15:37 <fizzie> olsner: UTF-i, but it's imaginary.
21:15:39 <oerjan> no idea
21:17:05 <oerjan> <FreeFull> Sgeo: Babies are made in China? <-- why would babies be the exception?
21:18:33 <fizzie> Speaking of babies, should I have some sort of a birth certificate of myself? Do people normally bother to own a copy? I mean, non-Presidents and so on.
21:19:18 <oerjan> i think i've seen mine, so it's presumably somewhere
21:19:27 <olsner> I thought they only did the whole crtificate business in the US
21:19:47 <Phantom_Hoover> We have them in the UK too, I think.
21:19:47 <olsner> I put my trust the almighty government database
21:19:59 <olsner> I'm in a computer somewhere, I must be
21:20:43 <boily> birth certificates are kinda useless, without any photo or other biometric data that can link the paper to you...
21:20:43 <fizzie> I don't think I've seen mine, but there's a reasonable possibility my mother has some kind of paper.
21:25:16 <fizzie> Apparently there's some kind of an extract you can get from the Population Register Centre that can sort of serve if someone abroad requires a "birth certificate".
21:25:38 <fizzie> Maybe I'll let the Database take care of it.
21:27:53 <olsner> oh, if I'm correct about which document somehow corresponds to a birth certificate, I have seen it
21:29:23 <olsner> you just enter your personal number and they mail a copy to you
21:29:53 <fizzie> The extract I mentioned costs 5 eur, so I don't think I'll bother getting a copy.
21:30:00 <fizzie> They can lose it just as well without my help.
21:30:09 <oerjan> i recall it had my birth time on it. 20 something, but i've forgotten the minutes. useful for getting a horoscope.
21:30:33 <olsner> I don't know or remember what time it was, but I know that it was snowing
21:30:36 <fizzie> Oh, that'd be "useful". I've heard my time, but I can't remember it at all.
21:31:18 <oerjan> fizzie: you just say that because you're a capricorn.
21:31:45 <fizzie> I don't think I'm one of those.
21:32:05 <olsner> o.O youtube now only shows my stuff that has been shared to me on google+
21:32:29 <olsner> instead of that "stuff you're likely to like" thing they used to do
21:33:29 <fizzie> I think I'm a pig, though.
21:33:35 <fizzie> In that Chinese thing.
21:33:36 <olsner> you are indeed
21:37:41 <fizzie> Why is it that quite often these days I get "An error occurred. Please try again later." from youtube, either at start or just randomly in the middle of a video? (At least tha animated static behind the message is very nice.)
21:37:50 -!- asiekierka has quit (Quit: Leaving).
21:38:51 <Lumpio-> What was the command to get fungot's source again
21:38:52 <olsner> did you know that corn flakes were originally intended to discourage masturbation?
21:38:52 <fungot> Lumpio-: try 2 hav sm slep. din me nahi so payegi tu to 3 ko jana n waha pe links of ur competitor's sites to take it to god in prayer. b is an average i think...
21:39:04 <Lumpio-> fungot: help
21:39:05 <fungot> Lumpio-: ya. exam over le... lol...
21:39:08 <Lumpio-> derp
21:39:13 <olsner> ^source
21:39:14 <fungot> http://git.zem.fi/fungot/blob/HEAD:/fungot.b98
21:39:19 <Lumpio-> ah.
21:39:26 <Lumpio-> Thanks.
21:39:26 <olsner> fungot uses ^ as a prefix
21:39:27 <fungot> olsner: shal i tel u d way u lik. sry for the late reply. was giving tuition. dinner very short onela, but nvm i rmb to send me a virtual hug? school got so much love. confirm nice one. there. emulsified.
21:39:47 <olsner> there. emulsified.
21:39:48 <Lumpio-> 'tis down!
21:40:40 -!- Cryovat has joined.
21:41:01 <Cryovat> Lumpio- summoned me here
21:41:07 <Cryovat> Greetings
21:41:14 -!- NihilistDandy has joined.
21:41:27 <fizzie> Lumpio-: It'll get fixed as soon as the box sends a DHCP renew request the next time. (I *really* should puzzle out what on earth is up with that.)
21:42:04 <Lumpio-> You know, I get the same thing with my home cable connection.
21:42:26 <Lumpio-> From what I've been able to discern (it only does it randomly something like once a week so it's a bit hard to track down),
21:42:43 <fizzie> Lumpio-: This thing stays connectable-from-the-outside-world about 20-30 minutes, then things just... stop. And everything starts working perfectly right after the dhcp-renew.
21:42:43 <Lumpio-> It cuts the connection for just a few seconds and the DHCP lease also goes instantly stale.
21:42:59 <fizzie> It doesn't make a difference for connections from the inside out, though.
21:43:00 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
21:43:00 <Lumpio-> A renew fixes it.
21:43:11 <fizzie> I can reach the Internet just fine; it's just that the Internet can't reach me.
21:43:28 <fizzie> And another computer in the same switch is having no problems whatsoever, even though both have the same dhclient and etc.
21:43:30 <Lumpio-> Mine just drops off the Internet completely.
21:43:35 <fizzie> It's kinda bizarre.
21:43:42 <fizzie> Anyway, in the meanwhile, fungot source: http://sprunge.us/hGRJ
21:43:43 <fungot> fizzie: dnt u tel ur feelngs 2 hr session. lol
21:44:03 <Lumpio-> Cryovat: Check it out
21:44:23 <fizzie> fungot: And you stop speaking like a SMS-age teenager, please.
21:44:24 <fungot> fizzie: hw to send dis to al ur"valued frnds. always laughing is too simple... winning is tooo. haha meet at tpy first rply me i m cmng n bike one la i'm going school earlier to buybubble tea up his whole house... y da... gud nt
21:45:01 <fizzie> I don't think I want to know.
21:45:15 <olsner> ^style
21:45:16 <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
21:45:20 <olsner> ^style speeches
21:45:21 <fungot> Selected style: speeches (misc. speeches from Project Gutenberg)
21:45:27 <olsner> fungot: speech!
21:45:28 <fungot> olsner: moral effects of. what you say may have far-reaching effects, hence the importance of careful forethought in the planning and preparation of your speeches.
21:46:09 <olsner> fungot: speech!
21:46:09 <fungot> olsner: i only allude to mr. fnord
21:47:33 <oerjan> yes, best not to do more than allude
21:47:56 <fizzie> Some of the books of "speeches" might actually be books about how to write speeches.
21:48:09 <fizzie> I think I just grepped the gutenberg database for "speech".
21:48:22 <oerjan> 's peachy
21:48:50 <Cryovat> That's terrifying
21:49:51 <FreeFull> fizzie: Have you tried switching the ports the computers are connected to
21:50:08 <FreeFull> fungot
21:50:10 <fungot> FreeFull: thus much is certain: that the ages in which the true principles of philosophy were least understood were those in which taste has been most correct. it seems, a way of walking, a way as possible, into their elements, that he cannot know whether it is a very strange thing, and he examined it intently. " my wife has some relations in the presbyterian churches, and theatres, had found an asylum in the obscure dwelling w
21:50:58 <fizzie> FreeFull: Nnno, but it sounds very unlikely to do a thing. I mean, it's a very non-intelligent switch, non-manageable and so on. And it's specifically the DHCP renewal that fixes it; random (successful) traffic out doesn't help.
21:51:45 <fizzie> I think I'll need to verify the outgoing-connections thing, though, since that's an equally weird thing to work.
21:52:57 <fizzie> Apparently there was a DHCPREQUEST + DHCPACK five minutes ago, so I think it's working at the moment.
21:58:55 <olsner> http://www.stephenfrysmoustache.com/
22:00:45 * oerjan calls it a day
22:02:03 <olsner> calling it a day only 45 seconds in? that's giving up a tad early
22:02:49 <oerjan> well "it" refers to the previous day, obviously
22:09:24 -!- copumpkin has joined.
22:12:27 -!- boily has quit (Quit: Poulet!).
22:12:40 -!- cuttlefish has quit (Remote host closed the connection).
22:33:43 <zzo38> If you have if(Y=='#') A++; if(Y=='!') A--; then you could also do the same as if(Y>='#') A++; if(Y<='!') A--; and according some document that CPY should set the carry flag if greater or equal, then ADC add 1 if carry flag is set. Does GCC or LLVM have any kind of optimizations such as these?
22:42:26 <Lumpio-> Is Y guaranteed to be either # or !
22:42:29 <Lumpio-> What if it's 'a'
22:47:38 <zzo38> If it is guaranteed to be either '#' or '!' then it works.
22:48:04 <zzo38> Well, it could also be '"' and still works.
22:49:15 <zzo38> LLVM does have a range metadata to indicate the range of a value loaded from memory.
22:51:54 <oerjan> > ['!'..'#']
22:51:55 <lambdabot> "!\"#"
23:29:44 -!- monqy has joined.
23:37:48 -!- Guest1458 has changed nick to quintopia.
23:37:55 -!- quintopia has quit (Changing host).
23:37:55 -!- quintopia has joined.
2012-08-23
00:10:24 -!- impomatic has left.
00:15:44 -!- oerjan has quit (Quit: leaving).
00:25:35 -!- pikhq_ has joined.
00:27:38 -!- pikhq has quit (Ping timeout: 245 seconds).
00:36:12 -!- derdon has quit (Remote host closed the connection).
00:45:18 -!- nooga has quit (Ping timeout: 252 seconds).
01:08:11 -!- copumpkin has changed nick to gpumpwell.
01:13:16 -!- gpumpwell has changed nick to copumpkin.
01:28:34 * Phantom_Hoover wonders if strong commutative encryption is actually possible.
01:28:42 <Phantom_Hoover> (I'm asking if anyone knows, if it's not clear.)
01:30:47 <NihilistDandy> Phantom_Hoover: http://crypto.stackexchange.com/questions/1363/software-implementation-of-a-commutative-cipher
01:30:49 <zzo38> I was wondering the same thing a few years ago actually.
01:31:07 <NihilistDandy> Not strong, anymore, I guess, but it's a starting point
01:49:20 <kmc> shachaf: are you CTFing?
01:49:33 <Phantom_Hoover> has anyone ced t f
01:49:58 <kmc> not yet
01:50:21 <kmc> i got to the last level, then decided i've done enough for the day
01:51:44 <shachaf> kmc: Yes, though I've also been distracted with other things.
01:52:02 <shachaf> (Are we spoilering in here?)
01:53:54 <kmc> dunno
01:54:16 <NihilistDandy> What CTF is this?
01:54:23 <shachaf> stripe-ctf.com
01:54:53 <shachaf> kmc: When I got to level 4 it was down, so I downloaded the code and tried to make it work locally.
01:55:07 <shachaf> If my hypothesis is correct it's impossible to do locally because of an extra server-side component.
01:56:10 <kmc> true, though that component is nothing special
01:57:05 <shachaf> Well, sure, I can emulate it myself if I know that it exists.
01:57:48 <shachaf> But I was assuming my local copy was equivalent to the server.
01:58:08 <kmc> you're exploiting a web application that has other concurrent users
01:58:15 <shachaf> Right.
01:58:17 <kmc> the download does not include an emulation of those users
01:58:26 <shachaf> Yep.
01:58:33 <shachaf> I think I explicitly commented on this before the CTF started.
01:58:58 <shachaf> Ah, got it.
01:59:16 <Phantom_Hoover> Hmm, apparently Vi Hart's father is a maths professor.
01:59:24 <Phantom_Hoover> That... explains a good few things.
02:19:45 <NihilistDandy> This is kinda fun.
02:49:52 -!- augur has quit (Remote host closed the connection).
02:50:16 -!- augur has joined.
02:51:21 <Sgeo> I am addicted to the SCP wiki
02:54:48 -!- augur has quit (Remote host closed the connection).
02:55:00 -!- augur has joined.
03:10:40 -!- TeruFSX2 has joined.
03:11:19 -!- TeruFSX2 has quit (Client Quit).
03:18:48 <Phantom_Hoover> Sgeo, fortunately you'll burn through the good content pretty quickly.
03:19:32 <Phantom_Hoover> Then you rapidly realise that a lot of it is dreck that's either formulaic or written by people who don't get lasting horror.
03:20:02 <Phantom_Hoover> Too often the author's thought of the trick already and gives away too much.
03:21:16 <NihilistDandy> Phantom_Hoover: Have you played Slender, at all?
03:21:35 <Phantom_Hoover> No, and there is very little that will make me do so.
03:22:06 <NihilistDandy> Oh? I downloaded it last week but I haven't run it, yet.
03:22:18 <Phantom_Hoover> I scare *incredibly* easily.
03:23:13 <NihilistDandy> Neat
03:23:16 <Phantom_Hoover> I did not sleep at all the night after first browsing the SCP wiki, or after reading some Slenderman stuff.
03:23:35 <NihilistDandy> Slenderman was fascinating for a week or two.
03:23:39 <NihilistDandy> I love well-done horror
03:23:52 <Phantom_Hoover> I just can't stop myself from throwing reason to the wind and scaring myself shitless, which is a pity because I love well-done horror too.
03:23:55 <NihilistDandy> Don't show me the monster, make me fear him
03:24:11 <Phantom_Hoover> It's like alcohol but with a hangover that can linger for months I guess.
03:25:30 <NihilistDandy> The worst bit of it is how it draws you in. Once I get on a creepypasta kick or some kind of new horror binge, I just can't stop until I'm thoroughly tweaked
03:26:48 <zzo38> I think SCP wiki they keep deleting too many files.
03:27:34 <itidus20> maybe that's part of the horror. (but probably not)
03:28:10 <Sgeo> Phantom_Hoover, there's so much material I haven't seen before
03:28:15 <Sgeo> http://www.scp-wiki.net/scp-453
03:28:35 <zzo38> They also don't give enough detail of experiments. I have many idea of the kind of experiments but I don't tell them (they are not open enough) and even if I did, I don't think they would know how to do it; they are the most difficult kind of thought experiments.
03:32:16 <Phantom_Hoover> Sgeo, yes, but most of it is crap.
03:32:33 <Phantom_Hoover> zzo38 confirmed as lovecraftian horror.
03:33:03 <Sgeo> zzo38, one of my favorites was deleted some time ago
03:33:07 <Phantom_Hoover> Sgeo, have you read the various Foundation fictions BtW.
03:33:26 <Sgeo> It was a gem (a ruby I think) that needed to be suspended in mercury in a thing that rotated
03:33:28 <Phantom_Hoover> Some of them are pretty good, especially the now-deleted Wanderlust.
03:33:33 <Sgeo> Phantom_Hoover, the Foundation Tales? Yeah
03:33:38 <Sgeo> Well, some of them
03:33:49 <Phantom_Hoover> What was the ruby one.
03:33:51 <Sgeo> I think there's a new thing, A something something something, that I don't know about
03:34:14 <Sgeo> Phantom_Hoover, it would destroy solid objects it was on
03:34:53 <Phantom_Hoover> Sgeo has obviously been reading a little too heavily on... 512? 505? Whichever it is that's impossible to remember.
03:35:19 <Phantom_Hoover> Sgeo, also uh how did that work, was it a gradual decay process?
03:35:41 <Sgeo> Phantom_Hoover, I don't remember
03:36:10 <Sgeo> I think it was found at the bottom of the sea on some shipwreck. I think it was deleted because it should have destroyed the Earth already.
03:36:20 <Phantom_Hoover> It's kind of fun to look through the deleted SCPs sometimes though.
03:36:28 <Phantom_Hoover> Erm, s/deleted/deprecated/.
03:36:47 <Phantom_Hoover> Because some of them were actually pretty well-known mainstays, like telekill alloy.
03:42:14 <itidus20> in reality scp is the military version of wikileaks
03:43:09 <itidus20> but i say this from a position that i don't want to read scp because of the chance it might actually be scary
03:49:49 <Sgeo> Phantom_Hoover, Are We Cool Yet?
03:49:57 <Phantom_Hoover> wat
03:50:25 <Sgeo> Phantom_Hoover, that's the A something something something I said I was unfamiliar with
03:50:31 <Sgeo> http://www.scp-wiki.net/groups-of-interest#toc1
03:51:14 <Phantom_Hoover> it's ten to fucking five, sgeo
03:51:21 <Phantom_Hoover> i am not following any links to scp at this hour
03:51:47 <Sgeo> itidus20, some of them are, some of them aren;t.
03:51:50 <Sgeo> aren't.
03:53:12 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:07:11 <NihilistDandy> Phantom_Hoover: What about tvtropes? http://tvtropes.org/pmwiki/pmwiki.php/Main/ButNotTooWhite
04:07:30 <Sgeo> Phantom_Hoover quit.
04:08:02 -!- DHeadshot has joined.
04:08:57 <NihilistDandy> Aww. I turned join/part display off the other day due to noise, but now I just look a fool :/
04:11:55 <ion> I use something WeeChat calls a “smart filter”. It only hides those lines from users who haven’t been talking for an hour. (And you can toggle their visibility afterwards, too.)
04:12:27 <ion> For instance, Phantom_Hoover’s quit line is visible for me, but that’s the only one for 6 hours.
04:14:37 <NihilistDandy> Oh, that's neat. I should see if there's a setting like that
04:14:49 <NihilistDandy> If not, time for a feature request
04:15:19 <ion> Well, an hour in my settings. The default was shorter, i think.
04:17:20 <NihilistDandy> That's pretty useful
04:35:51 -!- asiekierka has joined.
04:38:28 -!- MoALTz has joined.
04:46:16 -!- MoALTz has quit (Ping timeout: 245 seconds).
04:49:59 -!- NihilistDandy has quit.
05:01:14 -!- NihilistDandy has joined.
05:01:22 -!- DHeadshot has quit (Ping timeout: 246 seconds).
05:05:23 -!- DHeadshot has joined.
05:09:46 -!- DHeadshot has quit (Ping timeout: 246 seconds).
05:36:19 -!- pikhq has joined.
05:37:13 -!- pikhq_ has quit (Ping timeout: 245 seconds).
06:09:29 -!- impomatic has joined.
06:25:56 <zzo38> Have you ever used to believe anything like these? http://forum.nationstates.net/viewtopic.php?p=10684076#p10684076
06:32:34 <Sgeo> I once... contemplated the possibility of God acting by manipulating supposedly quantum random events
06:33:28 <itidus20> but is god a quantum random event?
06:35:14 <zzo38> Sgeo: Me too
06:37:15 <itidus20> i know there are apples and oranges, but are apples the same as oranges? :D
06:37:55 <zzo38> Same in what way? They are made of the same atoms, protons, neutrons, electrons, etc
06:40:05 <itidus20> if some things are different can all things still be the same?
06:41:35 -!- nooga has joined.
06:44:43 <itidus20> zzo38: good question
06:55:54 <Sgeo> A while ago (and I still hold this to be true) I decided that at a certain level, the concept of "sameness" is just a human construct.
06:56:35 <Sgeo> Whether one object is the same object as another doesn't really make sense when parts of the object cease being parts of the object and other parts replace it
06:56:56 <shachaf> Can you step in the same (Loch) ness twice?
06:57:37 <itidus20> shachaf: oh crap.. not a new idea
06:57:54 <itidus20> at least i am not herodotus... i think
07:00:33 <itidus20> i am not the same person that is
07:02:10 <NihilistDandy> I am not him who is called "I am"
07:02:13 <itidus20> clearly you can step in a similar ness twice
07:07:19 -!- impomatic has quit (Read error: Connection reset by peer).
07:18:40 -!- epicmonkey has joined.
07:21:16 -!- Lumpio- has quit (Ping timeout: 245 seconds).
07:43:29 -!- BlueStarfire has joined.
07:44:18 -!- BlueStarfire has left.
07:57:57 <itidus20> what i am trying to say might be, if there is more than one member in a set that they aren't the same
07:59:45 <Sgeo> I'm starting to think that CLOS can emulate Clojure facilities easier than Clojure can emulate even some of the more basic CLOS facilies
07:59:54 <Sgeo> Such as inheritance with generic functions
08:04:38 -!- epicmonkey has quit (Ping timeout: 244 seconds).
08:05:28 -!- Lumpio- has joined.
08:08:44 <NihilistDandy> itidus20: What if the members of the set are the same?
08:10:11 <itidus20> i tried to forget that part
08:17:22 <zzo38> Can we make a .NSF music where one person write the A track, and then second person can see A track and writes B track, third sees A and B and writes the C track, and so on? (AB = square wave channel, C = triangle wave channel, D = noise, etc)
08:18:15 <itidus20> i guess in life, at some point many of us will reach a stage where we essentially accept that the outcomes of our battles are behind us, and all our fears have been tested, and we just live out our days in routine
08:18:33 <coppro> Sgeo: uh, yeah
08:18:38 <coppro> CLOS is very powerful
08:18:41 <coppro> Clojure is... not
08:18:57 <coppro> zzo38: oh man nationstates
08:18:59 <coppro> i used to play that
08:19:23 <NihilistDandy> I periodically start a nation again until I grow bored and let it go inactive
08:19:47 <Sgeo> coppro, I did used to be impressed with Clojure's any-function multiple-dispatch, but that's fakable in CLOS via making the generic function something that the normal function just calls
08:20:12 <Sgeo> Normal function converts args into a symbol for generic function to dispatch on, and methods can use eql specializers
08:21:21 <coppro> now I just play too much homestuck :/
08:28:55 <itidus20> zzo38: sort of like an online collaborative story thing except with music?
08:29:34 <itidus20> i guess thats not quite what you meant
08:30:15 <NihilistDandy> itidus20: http://en.wikipedia.org/wiki/Exquisite_corpse
08:33:01 <zzo38> itidus20: Yes it is not quite what I meant.
08:33:14 -!- zzo38 has quit (Remote host closed the connection).
08:40:46 -!- impomatic has joined.
08:44:35 -!- nooga has quit (Ping timeout: 268 seconds).
08:46:57 -!- NihilistDandy has quit.
09:00:02 <Sgeo> So far, advantages Common Lisp has over Clojure: Condition system, CLOS. Clojure over Common Lisp: More libraries accessible (whether or not there are more libraries idiomatic), and generally cleaner design
09:00:06 <Sgeo> And more functional
09:02:33 <FreeFull> Clojure has stuff for concurency
09:09:32 <Sgeo> Oh, that too
09:12:04 -!- AnotherTest has joined.
09:16:16 <Sgeo> Is debugging significantly harder in Clojure than Common Lisp due to .. stack trace issues and non-resumable exceptions?
09:16:37 <FreeFull> No idea, I haven't ever tried debugging any Clojure
09:23:36 -!- epicmonkey has joined.
09:51:21 -!- FreeFull has quit (Ping timeout: 246 seconds).
09:52:23 -!- FreeFull has joined.
09:52:29 -!- impomatic has left.
10:09:44 -!- derdon has joined.
10:28:09 -!- pikhq has quit (Ping timeout: 272 seconds).
10:31:16 -!- asiekierka has quit (Ping timeout: 268 seconds).
10:33:28 -!- ais523 has joined.
10:33:43 -!- pikhq has joined.
10:42:31 -!- impomatic has joined.
10:48:38 -!- monqy has quit (Quit: hello).
10:57:19 -!- heroux has quit (Ping timeout: 260 seconds).
10:57:51 -!- asiekierka has joined.
11:23:06 -!- monqy has joined.
11:55:24 -!- ais523 has quit.
11:56:06 -!- MoALTz has joined.
12:40:48 -!- Phantom_Hoover has joined.
13:06:47 -!- pikhq_ has joined.
13:06:48 -!- pikhq has quit (Ping timeout: 245 seconds).
13:10:27 -!- AnotherTest has quit (Quit: Leaving.).
13:11:10 -!- AnotherTest has joined.
13:13:20 -!- boily has joined.
13:19:16 -!- AnotherTest has quit (Ping timeout: 248 seconds).
13:28:56 -!- AnotherTest has joined.
13:34:28 -!- AnotherTest has quit (Ping timeout: 246 seconds).
13:40:54 -!- AnotherTest has joined.
14:00:20 -!- copumpkin has quit (Ping timeout: 248 seconds).
14:00:53 -!- copumpkin has joined.
14:07:02 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:22:45 -!- atriq has joined.
14:23:59 <atriq> The "except this" is now isolated :(
14:30:03 -!- copumpkin has joined.
14:30:06 -!- pumpkin has joined.
14:30:24 -!- copumpkin has changed nick to Guest61107.
14:30:40 -!- Guest61107 has quit (Client Quit).
14:31:14 -!- pumpkin has changed nick to copumpkin.
14:44:53 -!- PatrickRobotham has joined.
15:05:54 -!- ogrom has joined.
15:15:59 <boily> atriq: what's an "except this", why is it unconnected, and is it edible?
15:16:35 <atriq> Two words, someone changed the topic, yes
15:16:57 <boily> thanks.
15:31:47 -!- pikhq has joined.
15:31:47 -!- pikhq_ has quit (Ping timeout: 240 seconds).
15:34:56 -!- ogrom has quit (Quit: begone).
15:37:13 -!- AnotherTest1 has joined.
15:38:30 -!- AnotherTest has quit (Ping timeout: 265 seconds).
15:38:59 -!- ais523 has joined.
15:40:46 -!- copumpkin has changed nick to RealFlaccid.
15:40:58 -!- RealFlaccid has changed nick to copumpkin.
15:55:42 -!- copumpkin has changed nick to asspirate.
15:57:39 -!- asspirate has changed nick to copumpkin.
16:18:38 -!- ogrom has joined.
16:29:19 -!- zzo38 has joined.
16:42:04 -!- epicmonkey has quit (Ping timeout: 246 seconds).
16:42:06 -!- kinoSi has quit (Read error: Connection reset by peer).
16:42:36 -!- kinoSi has joined.
17:01:28 -!- ais523 has quit.
17:07:09 -!- atriq has quit (Ping timeout: 260 seconds).
17:11:29 -!- atriq has joined.
17:16:17 -!- Dovregubben has quit (Ping timeout: 252 seconds).
17:16:30 -!- Dovregubben has joined.
17:24:05 -!- monqy has quit (Quit: hello).
17:24:40 -!- augur has quit (Remote host closed the connection).
17:25:11 -!- augur has joined.
17:25:31 -!- cuttlefish has joined.
17:29:48 -!- augur has quit (Ping timeout: 276 seconds).
17:31:29 -!- atriq has quit (Read error: Operation timed out).
17:51:57 -!- ogrom has quit (Quit: Left).
18:02:50 -!- logicalguy has joined.
18:04:51 -!- atriq has joined.
18:05:10 -!- logicalguy has left ("Leaving").
18:09:08 -!- ais523 has joined.
18:10:13 <atriq> Help
18:10:18 <atriq> The internet's going out
18:11:01 <nortti> ok
18:11:10 <olsner> trip it over before it gets to the door
18:11:39 <atriq> It's handcuffed me to my chair
18:12:09 <olsner> you and your kinky internet, we don't want to hear about your "games"
18:12:35 <atriq> This isn't a game!
18:12:48 <atriq> It's never done this before!
18:13:09 -!- augur has joined.
18:51:46 -!- epicmonkey has joined.
18:53:34 <atriq> kmc, regarding what you said about Black Holes and Revelations...
18:53:40 <atriq> I just re-listened to it
18:53:49 <atriq> I know completely agree with you
18:54:47 <atriq> War is overdue/The time has come for you/To shoot your leaders down/Join forces underground
18:55:19 <kmc> yep
18:55:51 <kmc> "No one's going to take me alive / Time has come to make things right / You and I must fight for our rights / You and I must fight to survive"
18:56:20 <zzo38> What would you think of 0^(0^x) function? I would think of the C !! and the Haskell types (Cont Zero) and (Codensity Initialize).
18:57:28 <atriq> > 0 ^ (0 ^ 1)
18:57:29 <lambdabot> 1
18:57:31 <atriq> > 0 ^ (0 ^ 0)
18:57:32 <lambdabot> 0
18:57:39 <atriq> > 0 ^ (0 ^ 7)
18:57:40 <lambdabot> 1
18:57:55 <atriq> kmc, what do you think of the 2nd law so far?
18:58:14 <kmc> haven't heard it yet
18:58:19 <kmc> but thanks for reminding me it exist
18:58:21 <kmc> s*
18:58:29 <kmc> today i'm listening to the new Infected Mushroom album
18:58:35 <atriq> Madness, Survival, and The 2nd Law: Unsustainable are the songs that have been released
18:58:41 <atriq> What's it like?
18:58:46 <kmc> apparently they are now enamored with dubstep
18:58:57 <kmc> it's like... dubstep and electro-pop
18:59:02 <kmc> very different from their usual stuff
18:59:08 <atriq> ...that's the 2nd law
18:59:12 <olsner> everything is dubstep nowadays
18:59:13 <kmc> but it's still IM too
18:59:14 <kmc> haha
18:59:17 <kmc> i was afraid of that
19:00:03 -!- AnotherTest1 has quit (Quit: Leaving.).
19:00:12 <atriq> Well, it's time to make some Muse/MSPA fan art
19:00:18 <atriq> MusePA
19:02:22 <kmc> "A woman carrying her soon to be five-year-old son fell onto the Red Line tracks in Kendall Square Wednesday night, after she thought she was boarding a train that was stopped on the opposite track."
19:13:28 <atriq> http://25.media.tumblr.com/tumblr_m982mvEFm91rysy5go1_500.jpg
19:13:33 <atriq> Muse/MSPA art
19:14:19 <atriq> Even for here, that may be really off-topic
19:14:41 <kmc> i don't think that's possible
19:15:14 <olsner> atriq: what is that, it's completely unreadable
19:15:45 <atriq> All natural and technological processes proceed in such a way that the availability of the remaining energy decreases.
19:15:45 <atriq> In all energy exchanges, if no energy enters or leaves an isolated system, the entropy of that system increases.
19:15:45 <atriq> Energy continuously flows from being concentrated, to becoming dispersed, spread out, wasted and useless.
19:15:45 <atriq> New energy cannot be created and high grade energy is being destroyed. An economy based on endless growth is
19:15:55 <atriq> UNSUTSAINABBLE
19:16:48 <atriq> (words from http://www.youtube.com/watch?v=EF_xdvn52As )
19:16:55 -!- MoALTz has quit (Quit: brb).
19:17:05 <atriq> Except I spelt "Useless" wrong
19:17:10 <atriq> It's a sign
19:18:17 <olsner> is spelt spelt/spelled spelled or spelt?
19:18:41 <atriq> spelt is spelt spelt or spelled
19:18:50 <atriq> spelt is only really found in the UK
19:19:20 <fizzie> Splet.
19:19:29 <kmc> spelt is a type of flour
19:20:56 <olsner> oh, that spelt is also spelt spelt in english?
19:21:12 -!- MoALTz has joined.
19:21:30 <atriq> Presumably
19:24:13 -!- pikhq_ has joined.
19:27:02 -!- pikhq has quit (Ping timeout: 246 seconds).
19:36:10 <atriq> Oh dear god that's got 4 notes on tumblr
19:36:23 <atriq> That's like twice as many notes as anything I've ever done before
19:36:37 -!- oerjan has joined.
19:38:57 -!- mjv has joined.
19:39:21 <oerjan> `welcome mjv
19:39:32 <HackEgo> mjv: 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:39:39 -!- PatrickRobotham has quit (Ping timeout: 240 seconds).
19:43:53 <oerjan> <Phantom_Hoover> Then you rapidly realise that a lot of it is dreck that's either formulaic or written by people who don't get lasting horror.
19:44:10 <oerjan> your quest now is to turn _that_ into an scp somehow.
19:45:18 <oerjan> "PatrickRobotham"?
19:45:47 <atriq> Obviously a robot from Hexham called Patrick
19:45:57 <oerjan> clearly.
19:48:02 <oerjan> no, windows, it is _not_ acceptable to delay raising windows in order to trick me into clicking somewhere i never intended to.
19:48:26 <atriq> The Telegraph website gets me like that EVERY TIME
19:48:39 <atriq> Took me ages to get to the page for World NEws
19:48:45 <atriq> I don't care about its cookie policy
19:49:18 <zzo38> Use keyboard and/or adjust the setting of Windows?
19:51:15 <oerjan> zzo38: i have no idea what setting that would be. the machine was close to thrashing.
19:53:55 <oerjan> this time it wasn't a particular website. although the web newspapers sometimes get me that way - i need to click somewhere in the window in order to focus so scrolling works, but *poof* then suddenly there's something clickable there.
19:54:55 <oerjan> i've noticed that annoyingly for wikia i need to click on the scrollbar instead, clicking in the window itself _disables_ scrolling.
19:54:56 <zzo38> Push ALT+TAB or click the title? I think Windows does have a secret setting for hover focus too, like some UNIX systems have.
19:55:40 -!- mjv has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
19:55:52 <oerjan> zzo38: i guess ALT+TAB would have worked in this particular case.
19:58:54 <oerjan> <Phantom_Hoover> I scare *incredibly* easily. <-- i should point and laugh but i remember for _years_ after jurassic park came out i couldn't walk close to the neighborhood park without imagining dinosaurs watching me :P
20:00:11 <zzo38> I found someone made .NSF simulating the THX deep note using VRC6 and Namco expansions.
20:01:34 -!- ais523_ has joined.
20:02:02 -!- ais523 has quit (Disconnected by services).
20:02:04 -!- ais523_ has changed nick to ais523.
20:03:52 -!- asiekierka has quit (Remote host closed the connection).
20:13:28 <atriq> Hey, a 502 error
20:13:33 <atriq> Have I seen one of those before?
20:23:55 <FreeFull> zzo38: Yeah, I heard it
20:32:50 <FreeFull> atriq: Many times
20:49:59 -!- atehwa_ has changed nick to atehwa.
20:53:57 -!- epicmonkey has quit (Ping timeout: 244 seconds).
20:56:25 -!- ais523 has quit.
21:04:53 <kmc> shachaf: are you CTFing still?
21:04:53 -!- nooga has joined.
21:04:58 <kmc> what level are you on?
21:05:47 <shachaf> kmc: I left it off after finishing 6 yesterday. Haven't gotten back to it yet.
21:06:00 * shachaf has some other things to do but plans to finish it.
21:06:10 <kmc> cool
21:06:14 <shachaf> Looks like you haven't finished it either?
21:06:17 <kmc> yeah
21:06:20 -!- atriq has quit (Quit: Leaving).
21:06:26 <kmc> i got to the last level last night, then took a break
21:06:28 <kmc> now i'm back at it
21:06:31 <shachaf> I gather that level 8 is tricky.
21:06:41 <kmc> it is
21:07:03 <shachaf> I think this CTF is harder than the last one.
21:07:13 <kmc> it certainly aligns less with things i already know
21:07:36 <shachaf> I tried to run mosh-server on level02 but didn't manage it.
21:08:00 <shachaf> I ended up settling for sending command via HTTP.
21:08:15 <shachaf> Did you know mosh doesn't run when it can't read /etc/passwd?
21:08:45 <kmc> level 7 is quite fun :)
21:08:55 <kmc> there's an easier way to get a shell on level2
21:08:58 <kmc> do you want me to tell you?
21:09:12 <kmc> shachaf: I did know that, because you said it in #mosh earlier :)
21:09:17 <shachaf> Is a shell on level02 needed on either level 7 or level 8?
21:09:20 <shachaf> Oh, good point.
21:09:27 <shachaf> If it is then you shouldn't tell me.
21:09:35 <shachaf> Hmm.
21:09:41 <shachaf> But now you can't even tell me whether you can tell me.
21:09:49 -!- MoALTz has quit (Ping timeout: 260 seconds).
21:11:42 -!- elliott has joined.
21:11:50 -!- elliott has left ("Leaving").
21:15:08 <shachaf> Oh, there's an ssh server running.
21:16:49 <shachaf> But generating and uploading a key doesn't seem to work...
21:17:02 <lexande> shachaf: what kind of CTF?
21:17:07 <shachaf> lexande: stripe-ctf.com
21:17:13 <lexande> oh that exists again
21:17:14 <lexande> nice
21:17:22 <shachaf> It's a new one.
21:18:28 * shachaf wonders whether ssh supports login with uid instead of username.
21:19:12 <shachaf> Looks like it doesn't.
21:19:20 <shachaf> Oh, my username is my home directory's name.
21:19:28 <shachaf> kmc: I guess you pretty much did tell me.
21:20:06 <shachaf> kmc: I'm surprised there's no easy-to-download "standalone telnet server" or something, though.
21:20:10 <kmc> well you can already run arbitrary code on the box through php
21:20:21 <oklopol> which game?
21:20:23 <kmc> shachaf: every black hat has one lying around
21:20:36 <kmc> maybe just a copy of netcat that supports "-e" and is compiled static
21:20:44 <shachaf> Sure.
21:21:00 <shachaf> I compiled mosh-server with -static to upload it.
21:21:14 <shachaf> Then I thought maybe that got messed up so I uploaded all its dynamic libraries.
21:21:14 <zzo38> Can Checkout programs be compiled to hardware?
21:23:41 <shachaf> Anyway now I have a shell, but I'll get back to this later.
21:24:25 <zzo38> Can Checkout programs be compiled to: LLVM, some open-source GPU architectures, some GPU with open specification, VHDL, or some custom CPU/GPU architecture specifically designed for Checout?
21:24:52 <shachaf> There is not way that Checkout programs can be compiled to some cusom CPU/GPU architecture specifically designed for Checkout.
21:24:58 <shachaf> s/t//
21:27:31 -!- lexande has left.
21:29:38 <shachaf> Looks like we lost lexande.
21:32:44 -!- boily has changed nick to lexande-ersatz.
21:32:55 <lexande-ersatz> I can temporarily impersonate him...
21:33:44 <oerjan> zzo38: you probably should ask ais523 that. he's not here now, but checkout is his language and he _is_ an expert on compilation to hardware...
21:33:58 <zzo38> OK
21:35:42 <shachaf> kmc: Only four more spaces open in the top-20 list!
21:36:20 <kmc> ;P
21:36:28 <kmc> i'm not sure i'm happy about this leaderboard
21:40:37 <shachaf> The way it works or its existence?
21:40:55 <kmc> existence
21:41:17 * shachaf usually ignores leaderboards like that.
21:41:57 <kmc> it takes willpower to do that
21:41:58 <kmc> for me
21:42:13 <oerjan> <atriq> The "except this" is now isolated :( <-- *MWAHAHAHA*
21:42:24 <shachaf> That's true.
21:42:30 <oerjan> why is he not here to listen to my gloating
21:42:53 <shachaf> kmc: As you may know, I don't even own a television.
21:43:06 <fizzie> This new CTF thing is very webby; though I suppose that's what they said it was going to be. (Went to level 4, then got sidetracked to do other things.)
21:43:31 <shachaf> But sometimes at public places with televisions in them, I suddenly notice that I've been staring at a screen for the last 20 seconds.
21:43:40 <shachaf> It's a strange feeling. I don't even realize what I was looking at.
21:43:47 <fizzie> I've never even heard of all these Sinatras and whatnots.
21:44:14 <kmc> i'm happy with it being web stuff
21:44:16 <oerjan> you have all been staring at a screen for _much_ more than 20 seconds. *MWAHAHAHA* oh wait...
21:44:29 <kmc> because it's an opportunity to learn different things
21:44:37 <shachaf> oerjan: It's totally not the same!
21:44:48 <oerjan> NOW THE DENIAL
21:44:56 * shachaf notes that he's currently not making progress with either the CTF or the other things he was going to do.
21:44:58 <kmc> nothing they do is deeply dependant on arcane knowledge of a particular language or framework
21:45:17 <shachaf> Except JavaScript, maybe.
21:45:32 <kmc> i don't think you need *arcane* knowledge of javascript
21:45:55 <kmc> i think you need to know the very basics and to be comfortable poking around in "Inspect Element" or such
21:45:55 <shachaf> Perhaps not.
21:46:02 <kmc> i guess that's spoilers?
21:46:09 <shachaf> That's spoilers?
21:46:14 <shachaf> I can't even tell which level it's for.
21:46:27 <fizzie> It spoiled the fact that there's going to be some JavaScript. I haven't seen any, I don't think.
21:46:47 -!- lexande-ersatz has changed nick to boily.
21:46:47 <kmc> well i implied that you don't need to know subtle details of javascript
21:46:52 <kmc> which narrows down where one might look for hax
21:48:13 <shachaf> For the level with the regexp, I was trying to figure out a way to match against the program's own code in the git repository.
21:48:23 <shachaf> I wonder whether that's spoilers. At any rate it didn't work because git compresses things. :-(
21:48:25 <kmc> haha
21:48:28 <shachaf> (And it's a bare repository.)
21:48:50 <shachaf> But the line checking for the regexp actually does match the regexp.
21:49:04 * kmc mind = blown
21:49:30 <kmc> can you write a regex which matches only itself?
21:53:22 <FreeFull> That sounds like a challenge
21:53:38 <FreeFull> How about an empty regex
21:53:51 <oerjan> ooh a narcissist regex
21:53:54 <kmc> will match any line
21:54:00 <kmc> (that's the interpretation of "match" i'm taking)
21:54:10 <kmc> otherwise it's easy, any regex containing only literal characters (letters etc) would do
21:54:47 <FreeFull> Then a regexp containing the letter a
21:54:58 <FreeFull> Actually
21:55:03 <kmc> will match any line containing the letter a
21:55:05 <kmc> (that's the interpretation of "match" i'm taking)
21:55:06 <FreeFull> Hmm
21:55:14 <FreeFull> This is tricky
21:55:25 <oerjan> you need ^ and $ or something equivalent
21:55:32 <FreeFull> You basically have to make a regexp quine
21:55:42 <FreeFull> ^$ matches an empty line
21:55:56 <oerjan> http://esolangs.org/wiki/Narcissist
21:56:13 <oerjan> narcissists tend to be quine-like
21:56:20 <FreeFull> ^^$$ matches a line with ^$ on it
21:56:48 <oerjan> FreeFull: you need to handle escaping i think
21:56:53 -!- augur has quit (Remote host closed the connection).
21:56:55 <oerjan> which makes things much harder
21:57:18 <FreeFull> oerjan: You don't need to escape ^ or $ if they aren't at the start or end of the regex
21:57:28 <oerjan> you don't? hm.
21:57:50 <FreeFull> Or at least, there is something that makes ^^$$ work as intended
21:58:16 <oerjan> i guess that may be connected with the single-line/multi-line options (in perl)
21:58:43 <FreeFull> Maybe it's that you don't need to escape ^ or $ if you have them elsewhere in their real meanings
22:00:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
22:00:41 <FreeFull> Ok, this is tricky
22:02:18 -!- zzo38 has quit (Quit: zzo38).
22:05:52 <FreeFull> Unless there is a way of embedding a literal representation of the regex inside the regex
22:05:59 <FreeFull> It might be impossible
22:06:47 <kmc> it's almost certainly possible with perl's crazy extended "reg"exes
22:08:37 <FreeFull> http://www.cs.auckland.ac.nz/~jas/toys/inequ.html Looks like we aren't the only ones at it
22:12:42 <fizzie> FreeFull: Perl at least has no special magic about ^ matching a literal "^" if it's not the first thing. E.g. /^^foo/ matches 'foobar', doesn't match '^foobar'.
22:14:04 <FreeFull> grep does
22:14:35 <fizzie> !perl print join(" ", map { /^^foo/ ? "$_:yes" : "$_:no" } ("foobar", "^foobar"));
22:14:36 <EgoBot> foobar:yes ^foobar:no
22:15:11 <FreeFull> `echo '^foobar' | grep '^^foo'`
22:15:11 <FreeFull> ^foobar
22:15:14 <fizzie> So it seems. Fancy that.
22:15:15 <HackEgo> ​'^foobar' | grep '^^foo'`
22:15:24 <oerjan> huh, inequ is another name for narcissist then
22:15:34 <FreeFull> Lol at HackEgo
22:16:02 <fizzie> `run echo '^foobar' | grep '^^foo'
22:16:05 <HackEgo> ​^foobar
22:16:08 <fizzie> Anyway.
22:16:42 <fizzie> `run echo -e 'foobar\n^foobar' | grep -E '^^foo'
22:16:45 <HackEgo> foobar
22:16:58 <fizzie> It's different with extended RE.
22:18:53 <FreeFull> I see, so egrep
22:19:33 -!- copumpkin has joined.
22:19:33 -!- pumpkin has joined.
22:19:33 -!- copumpkin has quit (Changing host).
22:19:33 -!- copumpkin has joined.
22:19:54 -!- pumpkin has changed nick to Guest28134.
22:20:19 -!- Guest28134 has quit (Client Quit).
22:22:33 <kmc> shachaf: aww, I won't be in the top 20
22:26:54 <shachaf> kmc: Now you get to practice not caring about leaderboards!
22:27:01 <shachaf> I bet the leaderboard was sour anyway.
22:27:16 <kmc> i don't get it
22:28:18 -!- boily has quit (Quit: Poulet!).
22:28:37 -!- cuttlefish has quit (Remote host closed the connection).
22:29:09 <shachaf> The second thing was a joke about sour grapes. I know you said you didn't like the leaderboard even before -- it wasn't making fun of you in particular.
22:30:40 * shachaf sighs.
22:32:02 <Sgeo> Which community is more likely to want to play with monads, the Clojure community or the Common Lisp community
22:32:13 <FreeFull> grour sapes
22:32:37 <kmc> which community is more likely to want to play with themselves
22:32:49 <kmc> what's the connection to grapes?
22:33:13 <FreeFull> What's the hgronnection to capes?
22:33:31 * Sgeo kind of thinks that Clojure is a better language except for lack of CLOS and condition system
22:33:47 <shachaf> https://en.wikipedia.org/wiki/Sour_grapes
22:34:06 <FreeFull> That daemn esop
22:34:18 <kmc> what does it have to do with leaderboards
22:34:31 <shachaf> :-(
22:34:39 <kmc> idgi
22:34:53 <oerjan> itt: we discover kmc doesn't understand fables and proverbs
22:35:13 <kmc> whatever
22:35:16 <FreeFull> Hith wis fabcy fanles
22:35:37 <oerjan> also that FreeFull cannot spel
22:35:53 <Sgeo> I was on a leaderboard thing once
22:36:01 <FreeFull> C ian jell spust efin
22:36:33 <FreeFull> aat whre tou yalking tabou
22:36:43 <Sgeo> I don't think I can prove it :(
22:37:10 <FreeFull> Sgeo: You can.. with trime tavel!
22:37:45 <Sgeo> I can't even prove a connection between YouOS and myself
22:37:51 <Sgeo> And I think all my code is gone for good
22:38:21 <Sgeo> Dear Google: Not iOS. YouOS.
22:40:14 <FreeFull> That's why you "" everything
22:41:11 <Sgeo> The only actual connection that I get when I google "YouOS" "Sgeo" is a log of me in a Java chatroom mentioning it
22:41:17 <Sgeo> Which makes little to no sense.
22:41:36 -!- nooga has quit (Ping timeout: 246 seconds).
22:42:07 <Sgeo> http://echelog.com/logs/browse/java/1271368800
22:42:42 <Sgeo> Oh, context was someone talking about an OS in Java, and OSes that aren't really OSes and me mentioning a project with OS in its name that's not really an OS.
22:47:39 <kmc> bah, i beat level 8 but the web interface won't take my password
22:48:03 <fizzie> "You completed this level in -34914.789 seconds." That's... unlikely.
22:48:13 <fizzie> The others show reasonable (nonnegative) numbers.
22:48:21 <kmc> and the stripe ctf channel is full of "HALP HOW 2 SOLVE LVL 1" so i can't get the attention of admins
22:49:06 <FreeFull> lvl 1? They got past lvl 0?
22:49:28 <kmc> some of them
22:50:06 -!- monqy has joined.
22:51:52 -!- augur has joined.
22:52:54 <Sgeo> What game is this?
22:53:19 <kmc> https://stripe-ctf.com
22:55:18 <Sgeo> I have stuff I should be doing today
22:55:34 <kmc> like endlessly contemplating whether clojure is better than common lisp?
22:55:34 <Sgeo> Working on a sellable product in SL and repairing my IRC bot
22:56:27 <Sgeo> Maybe I should make a Lisp that compiles to LSL
23:01:01 <Sgeo> kmc, I don't like being timed
23:01:55 -!- zzo38 has joined.
23:05:17 <Sgeo> kmc, this is fun
23:06:45 <kmc> yep
23:07:27 <kmc> i wonder if it's the same shirt as last time
23:09:23 <shachaf> That was a somewhat low-quality shirt.
23:09:29 <shachaf> The regular Stripe shirts are much nicer.
23:09:42 <shachaf> On the other hand they make people think I work at Stripe.
23:09:55 * shachaf doesn't like shirts with text.
23:10:11 <zzo38> Can you somehow remove the text?
23:10:23 <Sgeo> Is Stripe CTF a finite duration thing?
23:10:28 <Sgeo> Or will it be open for a while/
23:10:30 <shachaf> Yes, one week.
23:10:38 -!- derdon has quit (Remote host closed the connection).
23:11:20 <kmc> one week from noon yesterday PDT
23:12:06 <ion> <kmc> i wonder if it's the same shit as last time <shachaf> That was a somewhat low-quality shit. <shachaf> The regular Stripe shits are much nicer. * shachaf doesn't like shits with text. <zzo38> Can you somehow remove the text?
23:12:06 * Sgeo will play more later, I'm a bit stumped, there's an obvious looking area here but it looks secure
23:12:37 <kmc> ion: is there like a simulacrum of #esoteric which lives inside your head?
23:12:45 <kmc> that would be frightening
23:12:56 <ion> Yes, a poo simulacrum.
23:13:04 <kmc> i mean it's one thing to be crazy but it's another thing to have a bunch of voices in your head who are themselves crazy
23:13:18 <FreeFull> THE GREAT BIG POO
23:13:31 <FreeFull> I mean
23:13:36 <FreeFull> THE GREAT MIGHTY POO
23:13:36 * kmc had a high quality shit while solving the ctf
23:13:52 <shachaf> kmc: If sane voices make you crazy, crazy voices must make you sane.
23:14:24 <kmc> i'm sure that's how it works
23:15:17 <ion> kmc: That’s just the crazy talking.
23:15:41 <kmc> are timezone acronyms like PDT useful?
23:15:46 <kmc> the US ones are pretty useful
23:15:57 <kmc> but is it the case that (e.g.) all points in EEST switch to EET on the same date?
23:16:05 <kmc> i think this was not the case before the 90's anyway
23:16:10 <oerjan> kmc: hey i'm _not_ crazy, it's just all these crazy voices confusing me all the time
23:16:15 <zzo38> I don't know.
23:16:30 <zzo38> oerjan: Are you sure you are not crazy?
23:16:33 <kmc> pax bruxellana
23:16:49 * shachaf prefers just "PT"
23:16:57 <oerjan> zzo38: The voices tell me I'm not.
23:17:00 <zzo38> What does "EEST", "EET" means?
23:17:11 <kmc> zzo38: Eastern European (Summer)? Time
23:17:27 <zzo38> OK.
23:17:35 <kmc> confusingly 'S' means DST in most of the world and not-DST in the USA
23:17:38 <oerjan> Eesti time
23:17:42 <kmc> yes!
23:17:44 <zzo38> I don't like daylight saving time and summer time
23:17:50 <kmc> it is eesti time
23:18:03 <kmc> i had some other pun involving C'EST
23:18:13 <kmc> why not zzo38?
23:18:15 <FreeFull> https://www.youtube.com/watch?v=0w5neFPat1w
23:18:28 <FreeFull> BST
23:18:33 <FreeFull> Means british summer time
23:18:43 <kmc> yes that is a fact
23:19:02 <kmc> they used to have double summer time too
23:19:25 <zzo38> I think you should use solar time and UTC, and then also use Italian hours and/or astrological houses if you need sunset time as well
23:19:28 <oerjan> that is clearly absurd, as it would imply the brits have summers
23:20:08 <kmc> also britain was on GMT+1 for all of 1969 and 1970
23:21:10 -!- copumpkin has changed nick to pirateat28.
23:23:56 <kmc> but in reality the universe was created in the afternoon (UTC) of Sunday, August 17, 1969
23:24:34 <kmc> and will be destroyed in 9661 after a false alarm in 1996
23:25:13 -!- pirateat28 has changed nick to copumpkin.
23:26:12 <zzo38> Sun-Neptune has a close opposition of ecliptic longitude at this time.
23:27:13 <Sgeo> Is regex really that terrible for web page processing in all circumstances?
23:27:34 <ion> The destruction date of the universe doesn’t matter to us that much after the 2012 destruction of the Earth.
23:27:39 <zzo38> I think regex can be used for web page processing.
23:28:04 <kmc> esr agrees
23:28:46 -!- SimonRC has quit (*.net *.split).
23:28:47 <zzo38> Are you sure the 2012 destruction of Earth? How will they get destroyed? Atom bomb?
23:28:49 <ion> Is XML really that terrible for video processing in all circumstances? I think XML can be used for video processing.
23:29:01 <kmc> ion: come on, we still have a few months to assemble a project orion generation ship
23:29:05 <zzo38> I wouldn't think XML would be good for video processing, though.
23:29:12 <FreeFull> zzo38: Will collide with an antiearth
23:29:30 <kmc> Earth cancelled due to lack of ratings
23:29:32 <zzo38> What antiearth?
23:29:57 <ion> There’s only one. That one.
23:30:24 <zzo38> Even if there is only one (assuming there is even one), I still don't know which one it is.
23:31:22 <oerjan> kmc: wasn't that a plot of some tv series
23:32:42 -!- SimonRC has joined.
23:32:53 -!- impomatic has left.
23:33:23 <oerjan> *tv cartoon series
23:35:29 <Gregor> YOU GUYS YOU GUYS https://bitbucket.org/GregorR/sysv-dev
23:35:46 * Sgeo is not a dinosaur. Or a pony.
23:36:00 <Sgeo> I assume that Gregor is a dinopony.
23:36:51 <oerjan> hm south park it seems
23:39:01 <kmc> Gregor: nice
23:39:27 <kmc> zzo38: I did a bunch of video editing with shell scripts that invoked netpnm on individual frames
23:39:30 <kmc> no xml though
23:40:44 <Sgeo> Does Common Lisp make more sense for video editing than Clojure, for performance reasons?
23:40:50 <Sgeo> Not that I plan to do video editing
23:42:18 <kmc> -_-
23:42:33 <kmc> oh Sgeo you so silly
23:42:35 <zzo38> kmc: Yes video editing can be done with shell scripts although invoking a program on each frame would seem to be slow. Parallel computing might be better way.
23:42:44 -!- elliott has joined.
23:42:47 <kmc> yes
23:42:48 <elliott> guys, i was planning on doing some video editing
23:42:54 <elliott> do you have any suggestions as to which lisp dialect i should use
23:43:03 <kmc> at the time I had like the only SMP machine among my friends
23:43:06 <kmc> those were the days
23:43:07 <zzo38> But I may modify pictures using ImageMagick.
23:43:22 <oerjan> SYNCHRONICITY
23:43:27 <shachaf> kmc: Hey, you finished it.
23:43:31 <kmc> yep
23:43:38 <zzo38> What about synchronicity?
23:43:43 <kmc> it was a dual socket single-core-Opteron machine
23:43:48 <kmc> those were the days
23:43:58 * shachaf will continue soon.
23:44:00 <oerjan> ...some day i'll snap and ban zzo38 for ruining my bad jokes
23:44:17 <kmc> later we found an even older SMP machine lying around
23:44:46 <kmc> it had four Pentium Pro chips
23:44:49 <elliott> you're all useless
23:44:51 <monqy> oerjan: zzo's already a hero but then he'll be a martyr
23:44:59 <monqy> is this what you want
23:45:00 <Sgeo> elliott, a hybrid of newLisp and Arc.
23:45:03 <oerjan> monqy: ok good argument
23:45:05 <elliott> Sgeo: thx
23:45:06 -!- elliott has left ("Leaving").
23:45:11 <kmc> and 1 GB of RAM on several cards, each the size of a modern PC motherboard
23:45:40 <Sgeo> I wonder what he would have said if I said something that wasn't a Lisp dialect
23:45:44 <Sgeo> Darn
23:45:45 <kmc> and it was the size of a refridgerator
23:45:57 <kmc> and i left it in a common area, which caused some annoyance to others
23:46:04 <Sgeo> Although I assume he can still read this
23:46:09 <kmc> i believe the exact threat was "if you do not move that computer, i will open up the case and take a shit inside"
23:47:34 <oerjan> how civilized
23:48:09 <kmc> yes
23:48:28 <kmc> pentium bros before pentium pros
23:48:54 <kmc> the student computing club also had some pre-release Itanium boxes which were even shittier than regular Itanium boxes
23:49:06 <kmc> they had some CPU bugs and were never properly supported by GCC
23:49:15 <kmc> i think they kept these as a way of hazing new sysadmins
23:49:22 <shachaf> Is Itanium that terrible?
23:49:37 <FreeFull> Avoid anything with CPU bugs
23:49:38 <Phantom_Hoover> shachaf, it's really hard to write compilers for I hear?
23:49:46 <FreeFull> Hardware bugs are nast
23:49:49 <FreeFull> nasty
23:49:51 <kmc> yeah, what Phantom_Hoover said
23:50:04 <kmc> to get good performance you have to pay intel for their crazy compiler
23:50:08 <kmc> though it might be free for academia
23:50:13 <FreeFull> Write everything in assembly!
23:50:19 <shachaf> What makes it so hard to write compilers for?
23:50:27 <shachaf> Is it something fundamental about the architecture?
23:50:33 <kmc> shachaf: the instruction stream contains hints about parallelism
23:50:41 <kmc> the sort of things a normal CPU figures out on the fly
23:50:49 <kmc> and it turns out, doing this on the fly is easier because you have more information
23:50:52 <FreeFull> Well, parallelism is hard
23:51:16 <kmc> you don't just write a sequence of instructions, you write a sequence of instruction *groups*, where each group happens in parallel
23:51:19 <kmc> or something
23:51:27 <kmc> read about it if you want to know the actual situation
23:51:35 <kmc> belongs to the VLIW class of architectures
23:51:41 <shachaf> Good point.
23:51:43 <kmc> which has (as a result?) fallen out of favor for general purpose architectures
23:51:48 <kmc> but is still popular for DSPs and such
23:52:23 <kmc> Itanium was also used largely to emulate x86 and HP PA-RISC
23:52:29 <kmc> and it kinda sucked at these
23:53:51 <Sgeo> I feel like I'm guessing at this level (level 2)
23:53:54 <Sgeo> :/
23:53:54 <kmc> i think Intel is contractually obligated to keep making Itanium chips
23:54:04 <kmc> as a result of the deal with HP where it replaced PA-RISC
23:54:07 <kmc> that might be bullshit tho
23:54:09 <kmc> Sgeo: want a hint?
23:54:17 <Sgeo> kmc, ok, sure
23:54:31 <Sgeo> >.>
23:54:37 <kmc> well, what do you have so far
23:54:40 <kmc> (feel free to PM)
23:54:44 <kmc> (i think we want to avoid spoilers here)
23:54:48 <shachaf> We do?
23:54:54 <kmc> oh maybe not
23:54:57 <kmc> whatevs
23:54:57 <shachaf> I don't think other people in here are doing it.
23:55:01 <shachaf> Maybe they will later, though.
23:55:07 <kmc> except you and me, but we're past level 2
23:55:10 <shachaf> Avoid spoilers for ≥7 :-)
23:56:52 <shachaf> Level 3 was much easier than level 2.
23:58:48 <kmc> i found it difficult for two
23:58:49 <kmc> reasons
2012-08-24
00:00:20 <kmc> one is that v qvqa'g erpbtavmr gur dhrel fgevat ohvyqvat nf hafnsr vzzrqvngryl
00:01:00 <kmc> and also v unq gb cbxr nebhaq va fdyvgr qbpf gb svaq bhg ubj gb rssrpgviryl nqq ebjf gb n fryrpg, pbagebyyvat bayl gur cneg bs gur dhrel v qvq
00:01:08 <shachaf> Maybe I should switch back to urxvt, which has built-in rot13.
00:01:13 <kmc> it does??
00:01:21 <shachaf> Ctrl-right-click
00:01:28 <shachaf> At least my installation does. Maybe it's a script that comes with it.
00:01:40 <kmc> jesus
00:01:42 <kmc> that's ridiculous
00:02:30 <oerjan> `run echo urxvt | tr a-z n-za-m
00:02:33 <HackEgo> hekig
00:02:51 <oerjan> vad hekigt
00:02:53 <shachaf> ^rot13 shachaf@carbon
00:02:53 <fungot> funpuns@pneoba
00:03:18 <oerjan> ^rot13 hydrogen helium lithium beryllium boron
00:03:18 <fungot> ulqebtra uryvhz yvguvhz orelyyvhz obeba
00:03:51 <kmc> shachaf: your name rot13s to funpuns? seriously?
00:04:02 <oerjan> ^rot13 nitrogen oxygen fluorine neon
00:04:02 <fungot> avgebtra bkltra syhbevar arba
00:04:10 <kmc> shachaf: that is amazing
00:04:24 <oerjan> ^rot13 kmc oerjan
00:04:24 <fungot> xzp brewna
00:04:32 <kmc> ^rot13 keegan
00:04:32 <fungot> xrrtna
00:04:51 <oerjan> furrfu
00:04:55 <kmc> ^rot13 ørjan
00:04:55 <fungot> øewna
00:05:01 <shachaf> kmc: Oh, you didn't know?
00:05:07 <kmc> no
00:05:15 <kmc> is this why you like puns so much
00:05:33 <shachaf> Maybe it's my name because my mother likes puns so much.
00:05:40 <Sgeo> Apparently I suck at understanding hints
00:06:00 <shachaf> (She was very pleased when I pointed it out, maybe 13 years later.)
00:06:11 <shachaf> Sgeo: What was your hint?
00:06:50 <FreeFull> ^rot13 Filip
00:06:50 <fungot> Svyvc
00:10:54 <shachaf> kmc: A lot of these puzzles are tricky to exploit, but things that would've never come up when writing the code in the first place, or reviewing someone else's code.
00:11:48 <shachaf> Mostly because the whole thing is flawed in a lot of ways -- just most of them happen not to be exploitable.
00:12:46 <Sgeo> I'm scared that I may end up writing that sort of code
00:12:53 <shachaf> I guess that doesn't apply to all of them.
00:15:09 <kmc> shachaf: I don't really agree
00:15:26 <kmc> well, i agree that the examples are a bit contrived
00:15:49 <kmc> but they are holes you see in real programs, and things you would want to look for in review
00:16:08 <shachaf> Right.
00:16:33 <shachaf> I guess what annoys me is the idea of reviewing exclusively for security holes, rather than other design issues.
00:16:43 <shachaf> But of course the latter can be a much bigger change.
00:17:02 <kmc> well, other design issues are outside the scope of this challenge :)
00:17:08 <kmc> maybe i'm missing the context of your complaint
00:17:49 <kmc> having lots of other issues makes it a more realistic challenge
00:18:31 <shachaf> That's true.
00:19:01 <kmc> and i think there is value in reviewing just for security holes
00:19:07 <kmc> having a separate person thinking about that all the time
00:19:24 <shachaf> Sure.
00:19:29 <kmc> with the caveat that they should be allowed to say "i don't see a hole in your code, but it's so poorly designed that i deem it insecure anyway'
00:19:44 <kmc> but this should be a higher bar than merely ugly code
00:20:19 <kmc> it's difficult as a reviewer to find that middle ground of "i would do this a different way, and i find your way gross, but i won't make you redo it"
00:21:29 <shachaf> Maybe I just mean that I'd rather have a challenge where there's some security hole but the puzzles still seem like "good code".
00:21:42 <kmc> yeah
00:21:47 <shachaf> Even though that might be less realistic. :-)
00:21:53 <kmc> well i don't think the code in this set is too bad
00:22:20 <kmc> except for the PHP levels, because they are written in PHP
00:22:34 <shachaf> Can anyone write good code in PHP, kmc?
00:22:52 <FreeFull> http://underhanded.xcott.com/ Related
00:22:55 <kmc> """Do not tell me that “good developers can write good code in any language”, or bad developers blah blah. That doesn’t mean anything. A good carpenter can drive in a nail with either a rock or a hammer, but how many carpenters do you see bashing stuff with rocks? Part of what makes a good developer is the ability to choose the tools that work best."""
00:23:01 <kmc> FreeFull: yeah, i like that thing
00:23:11 <kmc> i have plans to run an updated and more free-form version of it
00:23:45 <shachaf> Can God create a programming language so terrible that even God can't write good code in it?
00:23:51 <shachaf> (And is Rasmus Lerdorf God?)
00:24:02 * Sgeo wants eve and mallory's secrets
00:24:13 <shachaf> Sgeo: They are available.
00:24:19 <shachaf> If you can get bob's secret you can get them.
00:24:20 <kmc> shachaf: that would explain a lot
00:24:23 <kmc> dinner, bbl
00:24:30 <Sgeo> shachaf, working on it
00:25:13 <FreeFull> shachaf: A programming language that doesn't allow you to write any code would fulfill that purpose
00:25:43 <shachaf> FreeFull: You don't think there's such a thing as "code so bad it doesn't even compile"?
00:26:44 <FreeFull> shachaf: With this language, no code compiles
00:27:06 <shachaf> Exactly.
00:27:10 <shachaf> Oh.
00:27:23 * shachaf got it backwards.
00:28:23 <FreeFull> Well, brainfuck will compile anything
00:28:33 -!- oerjan has quit (Quit: Ok]).
00:30:53 <zzo38> I would think that yes God can create a programming language so terrible that even God can't write good code in it.
00:33:02 <zzo38> And yes one way is one that no code is valid.
00:42:29 -!- kinoSi has quit (Read error: Connection reset by peer).
00:42:31 -!- TeruFSX has joined.
00:42:57 -!- kinoSi has joined.
00:46:27 <ion> PHP
00:47:15 <Sgeo> Argh
00:51:00 <Sgeo> Ok, kmc went afk
00:51:04 <Sgeo> no wonder he's not helping me
00:51:58 <Sgeo> There's one blatantly obvious flaw in this code, and it's taunting me with my inability to abuse it
00:53:25 <Sgeo> Just realized I have other things I really need to do
01:14:49 -!- DHeadshot has joined.
01:22:50 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:57:22 -!- pikhq has joined.
01:57:59 -!- pikhq_ has quit (Ping timeout: 260 seconds).
01:58:07 <shachaf> Sgeo: Why are you unable to abuse it?
01:58:39 <Sgeo> shachaf, well, it only allows one SQL statement, but kmc gave me a hint about that, but right now working on something more important
01:59:01 <shachaf> Surely you mean FDY statement!
02:00:59 <kmc> -_-
02:07:25 <shachaf> Is a monad always covariant in its argument?
02:07:49 <shachaf> Oh, I guess it would have to be since you can write fmap.
02:11:13 -!- Tod-Autojoined has joined.
02:12:09 -!- vxhex has joined.
02:13:15 <kmc> i think that's more correctly stated as "Is Monad covariant in its argument?"
02:13:41 <shachaf> Is it? I mean "are instances of Monad covariant in their argument".
02:13:46 -!- TodPunk has quit (Ping timeout: 244 seconds).
02:13:48 <shachaf> For example, Reader is covariant in its argument.
02:13:57 -!- TodPunk has joined.
02:14:08 <kmc> what do you mean?
02:14:31 <kmc> do you mean (Reader t)?
02:14:42 <shachaf> Er, yes.
02:14:53 <shachaf> Sorry. (Reader t) is the instance of Monad, though.
02:14:56 <kmc> i don't know what "covariant" means in Haskell in general
02:15:03 <kmc> the usual meaning relates to subtyping, which Haskell lacks
02:15:11 <kmc> but a "covariant functor" is a particular kind of thing
02:15:22 <kmc> and every Monad is a covariant functor, yes
02:15:30 <kmc> it's the usual sort of functor captured by the Functor class
02:15:36 <shachaf> Right.
02:15:42 <kmc> and yeah, i think your phrasing is more correct
02:15:50 -!- Tod-Autojoined has quit (Ping timeout: 256 seconds).
02:15:50 <kmc> don't know what mine would mean -_-
02:16:08 <shachaf> I think saying that a type is covariant in a means that a only appears only to the left of an even number of ->s
02:16:48 <shachaf> If you look at -> as the branch of a tree, that is.
02:17:03 <shachaf> So "a" is covariant in "a", and so is ((a -> r) -> r)
02:17:24 -!- copumpkin has changed nick to dishonestbob.
02:17:25 <shachaf> But not (a -> r)
02:17:45 <kmc> oh, so you're asking whether the implementation of every monad (the RHS of data Foo t = ...) must satisfy this?
02:18:04 -!- Tod-Autojoined has joined.
02:18:18 -!- dishonestbob has changed nick to copumpkin.
02:18:46 <shachaf> Right.
02:19:07 -!- TodPunk has quit (Ping timeout: 240 seconds).
02:19:17 <shachaf> And I think it does, and any covariant functor (i.e. Functor) must satisfy it in general.
02:19:28 -!- Tod-Autojoined has quit (Client Quit).
02:19:44 <shachaf> Whereas a contravariant functor (i.e. Contravariant) must satisfy the reverse.
02:27:10 <shachaf> edwardk says that for newtype Search f a = Search { optimum :: f a -> a }, instance Contravariant f => Monad (Search f)
02:27:39 <shachaf> And that this is a fun exercise to prove, or something.
02:27:58 <copumpkin> it's not too hard to write, iirc
02:28:01 <copumpkin> djinn can probably do it
02:28:17 <shachaf> @djinn-add newtype Search f a = Search (f a -> a)
02:28:17 <lambdabot> Cannot parse command
02:28:21 <shachaf> @djinn-add data Search f a = Search (f a -> a)
02:29:00 <shachaf> @djinn ((a -> b) -> f b -> f a) -> (c -> d) -> Search f c -> Search f d
02:29:00 <lambdabot> Error: kind error: (KVar 5,KVar 2)
02:29:19 <shachaf> @djinn ((a -> b) -> f b -> f a) -> (c -> d) -> (f c -> c) -> f d -> d
02:29:19 <lambdabot> -- f cannot be realized.
02:29:36 <shachaf> Oh, I already wrote this, actually.
02:30:07 <shachaf> @djinn ((a -> b) -> f b -> f a) -> a -> (f a -> a) -> a
02:30:07 <lambdabot> f _ a _ = a
02:30:25 <shachaf> @djinn ((a -> b) -> f b -> f a) -> a -> f a -> a
02:30:25 <lambdabot> f _ a _ = a
02:30:32 <shachaf> Hmm.
02:30:48 <shachaf> @djinn ((a -> b) -> f b -> f a) -> (f (f a -> a) -> a) -> f a -> a
02:30:48 <lambdabot> -- f cannot be realized.
02:30:56 <shachaf> Oops, c and d.
02:31:03 <shachaf> @djinn ((a -> b) -> f b -> f a) -> (f (f c -> c) -> c) -> f c -> c
02:31:03 <lambdabot> -- f cannot be realized.
02:31:42 <shachaf> @djinn-add class Covariant f where contramap :: (a -> b) -> f b -> f a
02:31:47 <shachaf> Ah, djinn supports classes.
02:31:59 <shachaf> @djinn Contravariant f => (f (f c -> c) -> c) -> f c -> c
02:31:59 <lambdabot> Error: Class not found: Contravariant
02:32:04 * shachaf sighs.
02:32:08 <shachaf> @djinn Covariant f => (f (f c -> c) -> c) -> f c -> c
02:32:09 <lambdabot> -- f cannot be realized.
02:32:15 * shachaf stops djinnspamming.
02:35:55 -!- TodPunk has joined.
02:37:56 <kmc> we found a level where shachaf and i have completely different solutions :)
02:38:01 -!- vxhex has left.
02:38:06 <kmc> and probably mine is an unintended hole :)
02:46:11 <shachaf> kmc: They were talking in the CTF channel earlier about fixing some unintended holes. Maybe yours was one of them.
02:46:25 <zzo38> The Functor class is only for endofunctors of (->) category.
02:46:39 <shachaf> I would try to find out but I think I got my level 6 into an unusable state.
02:47:25 <kmc> do you know which unintended holes?
02:48:26 <shachaf> No -- the channel was mostly (a) people asking for spoilers, (b) people giving spoilers, and (c) people talking about when the servers that went down will be back up.
02:48:47 <shachaf> I only cared about (c) so I tried to avoid reading spoilers about other levels.
02:48:53 <zzo38> That newtype Search f a = Search { optimum :: f a -> a } I have also called Algebra (as a F-algebra is). I also think that if f is Predicate you get the "infinite search" monad that someone else described, and I think also (CodensityAsk Predicate) is also the same, too!
02:52:14 <shachaf> zzo38: No, it's not an algebra when f is contravariant.
02:52:35 <zzo38> shachaf: Well, yes, you are correct; nevertheless it is what I called that type.
02:53:05 <shachaf> "infinite search" is where it gets its name, though, yes.
02:53:08 <zzo38> Contravariant functor would be a functor from (->) category to its opposite, or vice versa. Therefore it is a functor and follows the same laws as a functor because it is a functor. Actually, there are other things can you can simply say, this must be a functor, etc
02:53:23 <shachaf> I don't know whether (CodensityAsk Predicate) is also the same, too as well. But it's possible.
02:53:42 <zzo38> shachaf: I think I have once proven that it is the same, by the Yoneda lemma.
02:53:55 <shachaf> I don't know what CodensityAsk is.
02:54:33 <zzo38> newtype CodensityAsk f x = CodensityAsk { runCodensityAsk :: forall z. f z -> (x -> z) -> z };
02:54:57 <zzo38> It is always a Monad. If f is Comonad then (CodensityAsk) is also a MonadPlus.
02:55:09 <zzo38> It is always a Monad. If f is Comonad then (CodensityAsk f) is also a MonadPlus.
02:55:54 <zzo38> There is also CodensityAskT which every "z" in that definition would be "m z" instead
02:56:41 <Sgeo> OH GOD I HATE MYSELF THIS CODE WHICH IS GOING TO BE IN PRODUCTION USE HAS SEVERAL FUNCTIONS THAT ARE IDENTICAL EXCEPT FOR THE NAME I SHOULD REFACTOR IT BUT I PROBABLY WON'T
02:57:21 <zzo38> Sgeo: Yes you should refactor it, and then if it need multiple name, then depending on the programming language you can do something about that (such as, in C, you can define a macro)
02:58:02 <shachaf> You can define macros in C/C++!
02:59:41 -!- centrinia has joined.
03:01:25 <zzo38> I sometimes make those kind of mistake too, but then usually try to fix it
03:01:41 <Sgeo> I'm basically abusing function names to act as a dispatch mechanism
03:01:50 <Sgeo> Since I thought these functions might greatly vary
03:01:55 <Sgeo> And one or two do
03:01:58 <Sgeo> But the rest are the same
03:02:17 <zzo38> How would they act as a dispatch mechanism, and what programming language is it?
03:04:07 <Sgeo> Tcl
03:04:29 <Sgeo> I call a function named partially by a variable
03:04:34 <Sgeo> As in, checkfeed-$method
03:04:45 <Sgeo> And then checkfeed-etag, for example, is one function
03:05:23 <zzo38> Does Tcl have first-class functions? If so, can you assign them as same using an assignment?
03:09:29 <Sgeo> I wouldn't call them first-class as such
03:10:05 <Sgeo> But you can call a function whose name you only know at runtime quite comfortably, and you do have anonymous functions, although require a funcall-like command to use them
03:17:26 <Sgeo> I can't help wondering if CLOS functionality would come in very useful here
03:22:30 <kmc> "recreational substances" is a great category if you take it to mean more than just drugs
03:23:01 <kmc> drugs, propane, helium, pudding, spray paint, lube
03:24:16 <shachaf> Those are even recreational chemicals!
03:24:37 <Sgeo> The big problem with refactoring is I don't get to touch the code that often
03:24:50 <Sgeo> I mean I do, but there's not often reason to work on it unless I'm adding a feature
03:25:04 <Sgeo> And deployment is annoying, becuase it consists of giving the code to the person actually running it
03:26:11 <kmc> i don't think pudding is a chemical
03:26:34 -!- Nisstyre has quit (Quit: Leaving).
03:26:54 <shachaf> True.
03:27:15 -!- Nisstyre_ has joined.
03:27:22 <kmc> spray paint is pretty complicated too
03:27:31 <Sgeo> Easiest thing to do would be to make the dispatcher check for the existence of the function it would call, and if it doesn't exist, call a default one
03:27:55 <shachaf> "dispatcher"? I just call that program "diff".
03:28:10 <shachaf> (Or maybe that's patch -R.)
03:28:20 <shachaf> whoa, dude, I haven't used patch in years!
03:28:31 <shachaf> Version control has taken over the world.
03:28:41 <kmc> i still use patch a lot
03:29:07 <shachaf> For what?
03:29:09 <kmc> like when i'm preparing a markdown document, but i want some custom tweaks to the generated html
03:29:31 <shachaf> That sounds like an unreliable system.
03:29:51 <kmc> yeah but it doesn't have to work 100% automatically every time
03:30:36 <shachaf> I was thinking in particular of "applying other people's patches to things".
03:30:43 <shachaf> Or "releasing patches".
03:31:38 <zzo38> WEB can automatically apply changes from an external file.
03:34:36 <Sgeo> shachaf, I did that once or twice
03:34:47 <Sgeo> Or, well, used diff
03:37:23 <Sgeo> I'm in AceHack http://patch-tag.com/r/ais523/acehack/snapshot/current/content/raw/doc/fixes36.0
03:37:44 <shachaf> Hmm, http://blog.sigfpe.com/2006/10/monads-field-guide.html are nice pictures.
03:39:20 <shachaf> monochrom says: seq is a suggestion. pseq is an order.
03:49:26 <TeruFSX> random question: what does Muller brainfuck do if you go past the cell limit?
03:55:34 <kmc> i miss monochrom's puns :/
03:55:47 <shachaf> @quote monochrom
03:55:47 <lambdabot> monochrom says: most people tend to deny the usefulness of useful alternative perspectives --- their entrenched vested interests demand it. as they grow older they also have more influence and power
03:55:48 <lambdabot> over "the state of the art" to preserve their self-fulfilling prophecy that "the alternative is useless" --- by controlling what practice looks like, they can control what looks useless.
03:56:38 * shachaf suspects that's not a pun.
03:56:40 <shachaf> @quote monochrom
03:56:41 <lambdabot> monochrom says: isTrue = (unsafeCoerce :: Either a b -> Bool) . (unsafeCoerce :: Maybe c -> Either a b) . (unsafeCoerce :: Bool -> Maybe c)
03:57:32 <shachaf> @quote monochrom
03:57:33 <lambdabot> monochrom says: All pointless debates can be settled by going polymorphic.
03:57:40 <Sgeo> Would that work for any types in place of Either a b and Maybe c?
03:58:03 <shachaf> Presumably.
03:58:04 <shachaf> @quote monochrom
03:58:05 <lambdabot> monochrom says: Welcome to #haskell, where @remember's are in majestic stereo!
03:58:36 <Sgeo> And does it actually have to maybe type with type? As in, it becomes a Maybe c and then the thing accepts a Maybe c, do those have to match?
03:58:53 <Sgeo> Or can it just be Bool in one end and out the other, regardless of whether the types in between fit?
03:59:13 <shachaf> The types definitely have to match.
03:59:39 <shachaf> unsafeCoerce :: A -> B is a real function that only accepts a value of type A and only returns a value of type B
04:00:03 <shachaf> It just happens to have a dubious implementation.
04:03:06 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
04:05:36 <centrinia> unsafeCoerce :: a -> b
04:06:07 <centrinia> Type variables start with lower case letters.
04:06:10 <shachaf> Yes, but once you explicitly give its signature as (Int -> Char), it'll be :: Int -> Char
04:06:18 <shachaf> Which is what I meant by A and B.
04:06:43 <centrinia> unsafeCoerce :: IO a -> a
04:15:08 -!- MoALTz has joined.
04:23:49 <zzo38> Are Canadian $1 coins made of plastic?
04:24:19 <pikhq> You tell me.
04:40:37 <zzo38> I don't know. That is why I ask.
04:44:13 <pikhq> But you're in Canada!
04:44:16 <pikhq> You can check!
04:44:30 <Sgeo> Light Table looks interesting
04:45:47 <zzo38> I cannot tell if it is plastic or just a different kind of metal. I do not currently have one of the new $1 coins, and when I did, I did not know. Someone told me it is plastic although I am unsure, and he told me later, he is also unsure.
04:48:24 -!- MoALTz has quit (Ping timeout: 276 seconds).
04:51:57 <shachaf> lem_lemma :: (Not a -> b) -> (a -> b) -> b
04:54:24 <quintopia> did you do that shachaf
04:54:30 <shachaf> Do what?
04:54:38 <shachaf> It's just the church encoding of lem.
04:54:49 <quintopia> invite lambda into lw
04:55:10 <shachaf> In a manner of speaking.
04:55:35 <zzo38> Law of excluded middle does not apply in intuitionistic logic, though.
05:02:07 -!- SimonRC has quit (*.net *.split).
05:18:51 <zzo38> I said I proved that (CodensityAsk Predicate) is actually the same as the infinite search monad; actually, I have only proven that the type is equivalent, not that the monad is equivalent. However, it seems to be equivalent monad from testing it.
05:20:09 <shachaf> kmc: You should make a CTF!
05:21:11 -!- quintopia has quit (Ping timeout: 252 seconds).
05:21:49 -!- quintopia has joined.
05:25:24 <zzo38> Maybe that church encoding of lem can be made using (Kleisli (Cont r)) instead of (->) category? You will already have Peirce's law (callCC).
05:26:05 <shachaf> Yes, in Haskell you would use Cont.
05:26:17 <shachaf> I just want to avoid all the syntactic nonsense that comes with it.
05:34:17 -!- impomatic has joined.
05:38:38 -!- copumpkin has changed nick to yeasayer.
05:39:03 -!- yeasayer has changed nick to copumpkin.
05:58:56 -!- asiekierka has joined.
06:05:18 -!- copumpkin has changed nick to AgentOfChaos.
06:07:52 -!- AgentOfChaos has changed nick to copumpkin.
06:31:24 -!- Tod-Autojoined has joined.
06:31:41 -!- TodPunk has quit (Read error: Connection reset by peer).
06:32:45 -!- epicmonkey has joined.
06:41:03 -!- Phantom_Hoover has joined.
06:41:07 <Sgeo> I don't like Clojure's ->, especially since there's a nice reader macro for lambda
06:41:29 <Sgeo> It should be easy to write an actual function -> that threads a value through the rest of the arguments as functions
07:04:35 <centrinia> > map ($2) [(+) 1, (*) 3]
07:04:36 <lambdabot> [3,6]
07:08:55 <Sgeo> <Sgeo> &(map #(% 2) [(partial + 1) (partial * 3)])
07:08:55 <Sgeo> <lazybot> ⇒ (3 6)
07:09:32 -!- zzo38 has quit (Remote host closed the connection).
07:13:21 -!- epicmonkey has quit (Ping timeout: 245 seconds).
07:14:15 -!- SimonRC has joined.
07:31:59 -!- asiekierka has quit (Remote host closed the connection).
07:40:07 -!- nooga has joined.
08:04:38 -!- nooga has quit (Ping timeout: 240 seconds).
08:15:53 -!- copumpkin has quit (Ping timeout: 260 seconds).
08:16:27 -!- copumpkin has joined.
08:19:18 -!- AnotherTest has joined.
08:28:17 -!- epicmonkey has joined.
08:34:18 -!- atriq has joined.
08:40:43 <atriq> Can anyone link me that XKCD with the guy talking to the guy on the phone
08:40:50 <atriq> The first guy isn't on the phone
08:41:03 <shachaf> TWIST: The second guy isn't on the phone either
08:41:11 <shachaf> Then who was phone?
08:41:13 <shachaf> (As they say.)
08:42:09 <Lumpio-> hello yes this is dog
08:43:36 <itidus20> hello dog, are you after human rights?
08:43:57 <centrinia> phon
08:45:29 <fizzie> Phone me a phoneme.
08:46:29 <Phantom_Hoover> I
08:46:31 <Phantom_Hoover> wow
08:46:43 <Phantom_Hoover> TV Tropes now has an interstitial on all outbound links.
08:47:06 <Lumpio-> Warning people of the dangers of the internet?
08:47:09 <Lumpio-> They're the moral police afterall
08:47:36 <atriq> I think they just want people like me to stay trapped
08:47:46 <atriq> Outbound links are my way out of there
08:55:04 -!- oerjan has joined.
08:58:17 -!- DHeadshot has joined.
09:03:57 <atriq> I just realised that the only reason I'm smiling is because the alternative is crying
09:04:01 <atriq> :)
09:04:12 * oerjan grins madly
09:04:37 * oerjan fails
09:04:54 * oerjan chews another piece of bread
09:08:12 -!- sirdancealot has quit (Read error: Connection reset by peer).
09:09:50 <atriq> I...
09:10:14 <oerjan> You...
09:10:14 <atriq> I think the best thing to do right now is try to get 100% on Avalancha on Medium on Guitar Hero 3
09:12:39 -!- sivoais has quit (Ping timeout: 265 seconds).
09:13:56 -!- heroux has joined.
09:21:41 -!- knott_rays has joined.
09:21:51 -!- knott_rays has left.
09:28:40 -!- nooga has joined.
09:37:40 -!- sivoais has joined.
09:43:47 <atriq> Well, I'm feeling a bit better now
09:47:01 <atriq> A bit shaky, though
09:55:56 -!- atriq has quit (Ping timeout: 252 seconds).
10:25:16 -!- ineiros has quit (Remote host closed the connection).
10:25:37 -!- ineiros has joined.
10:28:48 -!- derdon has joined.
10:28:53 -!- itidus20 has left ("Leaving").
10:36:22 -!- nooga has quit (Read error: Connection reset by peer).
10:42:05 -!- atriq has joined.
10:45:48 -!- impomatic has quit (Quit: http://RetroProgramming.com).
10:56:51 <shachaf> ion: Why is your nick "ion"?
10:57:05 <ion> shachaf: Why not?
10:57:25 <shachaf> Opportunity cost.
11:34:36 -!- MoALTz has joined.
11:50:34 <oerjan> "These are no _ordinary_ subterranean mecha-narwhals!"
11:51:20 -!- AnotherTest has quit (Read error: Connection reset by peer).
11:53:14 -!- AnotherTest has joined.
11:55:44 <atriq> oerjan, :)
11:56:16 <atriq> I'm going to think outloud here for a bit, if that's okay with everyone?
11:56:35 <atriq> The intellectual and cultural ancestors of Homestuck:
11:57:04 <Sgeo> " The let special form is used here for efficiency in the event that the first parameter, number, is passed as an expression instead of a simple value."
11:57:35 <Sgeo> Yes. Efficiency is totally the reason you want something to evaluate only once in an impure language.
11:57:35 <atriq> The most obvious is Problem Sleuth, Andrew Hussie's previous work, which had elements of choose-your-own-adventure/interactive fiction and film noir.
11:58:08 <atriq> Problem Sleuth also has many references to Jail Break, another of Andrew Hussie's works. Jail Break is just silly.
11:58:14 <atriq> (to be expanded upon)
11:58:55 <atriq> While there are few if any Bard Quest references in Problem Sleuth, there are a handful in Homestuck, for instance Gamzee's god tier outfit.
12:00:00 <atriq> Within Homestuck, there are references to Arthurian mythology, especially that Dave Strider encountered Caledfwlch, the Welsh name for Excalibur
12:00:31 <atriq> There are also Lord of the Rings references, such as Strider possessing a broken sword
12:01:09 <atriq> Lord of the Rings was influenced by Norse mythology
12:01:47 <atriq> And Old English (Anglo-Saxon) stories
12:02:37 <atriq> There are references to the Gospels, such as Jake kissing the head of Dirk, and "Being the Salome to [his] John the Baptist"
12:03:09 <atriq> Other elements of Abrahamic mythology are touched upon
12:03:12 -!- mig22 has joined.
12:03:47 <atriq> Such as the Angels being feared creatures, as they were throughout the Bible
12:04:00 <atriq> Graeco-Roman mythology is referenced especially with the Denizens
12:04:18 <atriq> For instance, Dave's denizen is Hephaestus, who was a Greek god
12:04:54 <atriq> The works of Oscar Wilde, Mark Twain, Shakespeare, Snoop Dogg, and many others are referenced
12:13:29 <oerjan> :t (0$0<$>)
12:13:30 <lambdabot> The operator `<$>' [infixl 4] of a section
12:13:30 <lambdabot> must have lower precedence than that of the operand,
12:13:30 <lambdabot> namely `$' [infixr 0]
12:16:27 <oerjan> :t print <$> readInt <$> getLine
12:16:28 <lambdabot> Overlapping instances for Show
12:16:28 <lambdabot> ((Char -> Bool) -> (Char -> Int) -> ReadS String)
12:16:28 <lambdabot> arising from a use of `print' at <interactive>:1:0-4
12:16:45 * oerjan swats lambdabot -----###
12:17:13 <shachaf> Why would you print <$> readInt <$> getLine?
12:17:26 <oerjan> beats me http://www.reddit.com/r/haskell/comments/ypyx4/why_does_print_readint_getline_return_an_ioio/
12:18:13 <shachaf> Hmm, so if my program compiles but doesn't work, I just need to put join $ in front of it?
12:18:39 <oerjan> i can see why it is _wrong_, but my housemate is playing music so loudly i cannot get my brain to infer why it _does_ type
12:19:15 <shachaf> @ty readInt
12:19:15 <oerjan> (and it looks to me like the comments use the wrong associativity for <$>)
12:19:16 <lambdabot> forall a. (Num a) => a -> (Char -> Bool) -> (Char -> Int) -> String -> [(a, String)]
12:19:27 <shachaf> I don't think that's the readInt you're thinking of.
12:19:37 <oerjan> oh duh
12:19:41 <oerjan> grmbl
12:19:44 <shachaf> @ty read <$> getLine
12:19:45 <lambdabot> forall a. (Read a) => IO a
12:19:45 <Sgeo> Oh god I've hit that issue before
12:19:48 <shachaf> @ty print <$> read <$> getLine
12:19:49 <lambdabot> IO (IO ())
12:19:52 <shachaf> See?
12:20:05 <oerjan> :t let readInt = read :: String -> Int in print <$> readInt <$> getLine
12:20:06 <lambdabot> IO (IO ())
12:20:13 <shachaf> (print :: a -> IO () in this case.)
12:20:15 <Sgeo> Therefore, Haskell's type system should be taken out and shot.
12:20:17 <shachaf> So you get iO (IO ())
12:20:39 <shachaf> Of course, join (print <$> x) == x >>= print
12:20:53 <oerjan> ok that makes sense, the first <$> just becomes .
12:20:57 <Sgeo> It lets through wrong programs! This is a travesty!
12:21:05 <shachaf> oerjan: No, it doesn't need to.
12:21:16 <oerjan> YES IT DOES
12:21:18 <shachaf> <$> is infixr
12:21:28 <oerjan> shachaf: um i just checked it's not
12:21:36 <shachaf> Oh, right.
12:21:40 <shachaf> But if it was it would still work!
12:21:50 <oerjan> quite possibly
12:21:51 <shachaf> <$> IS SO ASSOCIATIVE, IT ASSOCIATES ACROSS DIFFERENT TYPES!
12:21:53 <shachaf> (It's true.)
12:22:09 <oerjan> oh it does tend to do that
12:22:14 <shachaf> (x <$> y) <$> z == x <$> (y <$> z), when both type-check.
12:22:19 <shachaf> Even if it's different instances of <$>
12:22:23 <shachaf> Of Functor
12:26:13 -!- oerjan has quit (Quit: MUST... ESCAPE).
12:37:41 -!- kmc_ has joined.
12:42:32 -!- centrinia has quit (*.net *.split).
12:42:32 -!- ion has quit (*.net *.split).
12:42:32 -!- kmc has quit (*.net *.split).
12:48:19 -!- ion has joined.
12:49:12 -!- centrinia has joined.
12:52:52 -!- mtve has quit (*.net *.split).
12:52:59 -!- mtve has joined.
13:07:18 -!- boily has joined.
13:31:38 -!- epicmonkey has quit (Ping timeout: 244 seconds).
13:43:58 -!- mig22 has quit (Quit: mig22).
13:47:31 <atriq> Dear god Leeds is far south
13:50:52 <fizzie> Far out, man.
13:52:55 <atriq> Halifax is about halfway between me and ais523
13:56:51 -!- monqy has quit (Quit: hello).
13:58:19 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:00:53 <boily> halifax, as in nova scotia's halifax?
14:03:15 <atriq> As in the Halifax that's about halfway between Birmingham and Hexham
14:03:31 <atriq> Yorkshire, I think
14:04:33 <atriq> :/
14:05:53 -!- Tod-Autojoined has quit (Quit: This is me, signing off. Probably rebooting or something.).
14:06:03 <atriq> That Halifax is about halfway between me and somewhere off the west coast of Mexico
14:06:04 -!- TodPunk has joined.
14:06:07 <atriq> God, I'm far north
14:06:26 <atriq> Actually, I'm not that far North, it's just California
14:08:07 <boily> if someone was double the distance that separates me from halifax, in the same direction, he'd be a little bit on the damp side.
14:20:34 -!- copumpkin has joined.
14:26:11 -!- nortti has changed nick to []{}\|-_`^.
14:26:20 -!- []{}\|-_`^ has changed nick to []{}|\-_`^.
14:26:42 -!- []{}|\-_`^ has changed nick to nortti.
14:35:42 <atriq> Why is my num lock button flashing
14:35:45 <atriq> WHAT COULD THIS MEAN
14:36:33 <nortti> kernel panic
14:37:32 <atriq> Wouldn't a kernel panic stop IRC from working?
14:37:53 <nortti> yes
14:38:04 <atriq> Probably not a kernel panic, then?
14:38:12 <nortti> yeah
14:38:17 <nortti> what os?
14:38:57 <kmc_> pernel kanic
14:39:00 -!- kmc_ has changed nick to kmc.
14:39:11 <atriq> Ubuntu
14:39:17 <nortti> ok.
14:39:28 <nortti> there is your problem
14:40:04 <atriq> I think my problem is the cable that snapped when the right hinge for the screen broke
14:40:58 <Sgeo> :t (>>=) :: [a] -> (a -> [a]) -> [a]
14:40:59 <lambdabot> forall a. [a] -> (a -> [a]) -> [a]
14:41:10 <atriq> :t concatMap
14:41:11 <lambdabot> forall a b. (a -> [b]) -> [a] -> [b]
14:41:26 <atriq> :t concatMap `asTypeOf` (=<<)
14:41:27 <lambdabot> forall a b. (a -> [b]) -> [a] -> [b]
14:41:41 <atriq> Wait
14:41:46 <Sgeo> Long story short, I'm having trouble explaining mapcat to someone in #clojure
14:41:51 <Sgeo> Although they're now saying they get it
14:42:05 <atriq> It maps then squishes?
14:42:16 -!- cheater has joined.
14:42:21 <atriq> I don't know Clojure, though, so I couldn't say
14:42:54 -!- kinoSi has quit (Read error: Connection reset by peer).
14:43:20 <Sgeo> mapcat is concatMap
14:43:21 -!- kinoSi has joined.
14:44:08 <atriq> Okay, it turns out Numlock is actually switching on and off again repeatedly
14:45:12 <atriq> 644444464646464646464646464464646464646464664
14:45:23 <nortti> why?
14:45:30 <atriq> I don't know!
14:45:39 -!- boily has quit (Quit: Poulet!).
14:48:16 -!- Zuu has joined.
14:58:51 -!- soundnfury has quit (Quit: quIRC).
14:59:15 -!- soundnfury has joined.
15:01:08 <Sgeo> :t (<*>)
15:01:09 <lambdabot> forall (f :: * -> *) a b. (Applicative f) => f (a -> b) -> f a -> f b
15:01:14 -!- Gregor has quit (Excess Flood).
15:01:21 -!- Gregor has joined.
15:02:00 -!- DHeadshot has quit (Ping timeout: 276 seconds).
15:04:27 <Gregor> I present the most spurious patch ever: http://pcc.ludd.ltu.se/jira/browse/PCC-401
15:29:57 -!- atriq has quit (Ping timeout: 276 seconds).
15:30:13 -!- heroux has quit (Ping timeout: 252 seconds).
15:37:53 -!- heroux has joined.
15:56:27 -!- ogrom has joined.
16:15:06 -!- copumpkin has changed nick to ThreeFixt.
16:15:44 <pikhq> Gregor: :)
16:16:21 -!- ThreeFixt has changed nick to copumpkin.
16:22:46 -!- atriq has joined.
16:43:03 <Sgeo> Rich Hickey appears to be convinced that allowing uncoordinated reads is a good idea. For some reason, that bothers me.
16:43:25 <atriq> Uncoordinated read?
16:44:04 -!- ogrom has quit (Quit: begone).
16:44:05 <Sgeo> Reading STM refs outside of a transaction, for instance.
16:45:26 <atriq> Okay
16:45:38 <atriq> I've never done any STMy type things
16:47:06 <kmc> how does that differ from reading a STM ref in a transaction which consists only of that operation?
16:49:23 <Sgeo> kmc, I guess it doesn't particularly, except that requiring the transaction might... discourage idiots from doing it that way?
16:49:29 <Sgeo> I guess you're right
16:49:29 <Gregor> The fact that requiring it to be in an STM makes you think.
16:49:31 -!- ogrom has joined.
16:49:58 <Gregor> Also in principle there could be architectures where transactional memory is distinct from general memory, but that's unlikely.
16:58:41 <Sgeo> In Clojure, println is available in dosync
16:58:50 <Sgeo> "that would be a lot of overhead when it's generally not needed"
16:58:58 <Sgeo> (about defining println with io!)
16:59:18 -!- atriq has quit (Ping timeout: 244 seconds).
17:12:51 -!- atriq has joined.
17:43:58 -!- variable has quit (Read error: Connection reset by peer).
18:00:43 -!- variable has joined.
18:03:33 -!- Vorpal has joined.
18:04:23 -!- atriq has quit (Read error: Connection reset by peer).
18:11:53 <coppro> blargh
18:16:05 <Vorpal> hi
18:20:19 -!- atriq has joined.
18:22:09 -!- ais523 has joined.
18:25:58 <olsner> appelsiinit kerkiän
18:27:37 <fizzie> That's good.
18:28:38 <olsner> what does appelsiinit päähän mean?
18:29:00 -!- zzo38 has joined.
18:29:05 <fizzie> "Oranges to the head".
18:29:19 <fizzie> Head being the body part.
18:29:55 <fizzie> Like, "hatut päähän" could be "put on your hats".
18:30:10 <fizzie> It sounds like the same thing except for oranges.
18:30:32 <olsner> google translate translates päähän as "from the"
18:30:59 <olsner> I suppose it would be appelsiini X päähän or something, to mean oranges from the X?
18:32:36 <fizzie> "päähän" is the illative ("into", in most cases) case of pää 'head'.
18:33:25 -!- ogrom has quit (Quit: begone).
18:37:02 <fizzie> At least primarily. There's a different -han/-hän suffix (illative is -an/-en/etc., just changes a bit to work with "pää") it could also be, but I'm not exactly sure how that'd translate. It wouldn't fit in after the oranges, anyway.
18:37:03 <ion> Pää can also mean “side”, as in “this side of the room”.
18:37:26 <fizzie> http://en.wiktionary.org/wiki/-han that one.
18:37:54 <fizzie> Yes, I guess. Or I'd say more like "end" as in "this end of the room".
18:38:26 <ion> Indeed
18:39:40 <FreeFull> :0g,:93+`#@_1+
18:41:13 <Vorpal> does anyone know what difference there is between properly ejecting and just yanking out an usb stick with write cache disabled, and no open files, under windows 7? I know there is one (long story, can tell it if you want), but I don't know what it is.
18:42:07 <olsner> the universe implodes if you remove usb devices without completing the wizard
18:42:18 <Vorpal> olsner, what wizard?
18:42:27 <olsner> the eject devices wizard?
18:42:47 <Vorpal> olsner, eh, no need for that thing on windows 7, you can just right click the device in explorer and select eject
18:43:51 <Vorpal> olsner, anyway there is a difference, in one case the embedded controller we use at work accepts it to load the code from, in the other it doesn't.
18:43:52 <fizzie> FreeFull: "Output character on row 0, column corresponding to top of stack; if TOS > 12, stop; otherwise increment by 1 and continue"?
18:44:16 <fizzie> Quine, then?
18:45:24 <FreeFull> A random quine from the web
18:45:57 <fizzie> It's very reasonable, though I suppose a purist would say a g-quine is just boring.
18:46:17 <Vorpal> fizzie, huh?
18:46:28 <fizzie> FreeFull: Huh?
18:46:39 <fizzie> Uh, I mean, Vorpal: Huh?
18:46:49 <fizzie> (Huh.)
18:46:55 <FreeFull> g?
18:47:05 <FreeFull> Goedel?
18:47:06 <fizzie> FreeFull: One that uses 'g'.
18:47:09 <Vorpal> fizzie, why would a g-quine be boring?
18:47:10 <FreeFull> Oh
18:47:35 <fizzie> Vorpal: "Too easy," I believe is the reasoning.
18:47:45 <fizzie> Since it can just read the source.
18:47:59 -!- AnotherTest has quit (Quit: Leaving.).
18:48:21 <Vorpal> fizzie, ah
18:48:29 <fizzie> Not that the "-based ones are really any unboringer, I suppose.
18:48:52 <FreeFull> I have to yet write a quine
18:49:44 <olsner> hmm, I had an interesting idea related to quines a while ago, but I can't remember what it was
18:50:59 <fizzie> olsner: If you still have a binary of your idea, and it's related to quines enough, maybe running it will recover the original idea.
18:51:11 <olsner> no, the idea was only in my head
18:51:32 <FreeFull> olsner: Was it a program that prints a program in another language, that prints the original program?
18:51:53 <olsner> it shouldn't have been because I've read about programs like that before
18:52:07 <FreeFull> Yeah, they're pretty cool
18:52:49 <FreeFull> Ruby → Python → Perl → Lua → OCaml → Haskell → C → Java → Brainfuck → Whitespace → Unlambda
18:52:53 <FreeFull> And then back to Ruby
18:54:32 <olsner> once the program has managed to get out of ruby, why would it want to get back?
18:54:52 <FreeFull> I don't know
18:55:22 <FreeFull> To escape Unlambda?
18:56:04 <Vorpal> FreeFull, do you have a link to that quine?
18:59:06 <FreeFull> http://d.hatena.ne.jp/ku-ma-me/20090916/p1
18:59:52 <Vorpal> heh
19:01:29 <FreeFull> It's surprisingly short
19:03:55 <FreeFull> wc -c says 1945 bytes
19:05:09 <Vorpal> I don't have ruby, ocaml or lua installed, so meh
19:05:24 <Vorpal> nor do I have a whitespace interpreter
19:06:10 <FreeFull> Ruby 1.9 seems to error on it
19:06:24 <Vorpal> ouch
19:23:30 -!- Slereah has joined.
19:24:04 -!- oerjan has joined.
19:24:49 <kmc> butts
19:24:53 <kmc> butts
19:25:23 <oerjan> we all empathize with your tourette's, kmc
19:25:34 <olsner> I don't
19:25:46 <oerjan> except olsner
19:26:00 <oerjan> that's because he's swedish
19:26:10 <kmc> is that code supposed to have yen symbols all over
19:26:15 <kmc> or is this some character encoding fuckery
19:26:22 <olsner> oh, that could be backslashes
19:26:34 <kmc> yeah they are actually backslashes
19:26:41 <kmc> in fact when i copy-paste one it's a backslash, wtf
19:26:50 -!- Slereah_ has quit (Ping timeout: 252 seconds).
19:27:03 <oerjan> i've heard about that japanese encoding quirk before
19:27:05 -!- Slereah_ has joined.
19:27:20 <olsner> I think they assigned characters just before backslash became the second most useful character in ascii
19:27:22 <olsner> or something like that
19:27:53 <oerjan> well backslash _is_ one of characters that was commonly nationalized
19:27:56 -!- Slereah has quit (Ping timeout: 245 seconds).
19:28:03 <oerjan> [|]{\} afair
19:28:22 <oerjan> i think \ was used for Ø in norway
19:28:28 <kmc> us stages coup in iran in response to nationalizing backslash
19:28:52 <olsner> the infamous backslash backlash
19:29:04 <oerjan> kmc: i see you've nationalized backslash to mean oil
19:29:35 <kmc> $ echo '[|]{\}' | iconv -f iso646-no
19:29:35 <kmc> ÆøÅæØå
19:30:29 <kmc> int main() æ printf("Hei, verden!Øn"); å
19:30:37 <oerjan> XD
19:30:39 <olsner> interesting! iso646-se gives ÄöÅäÖå
19:31:11 <oerjan> olsner: which means they used consistent encodings rather than going by each alphabet's order
19:31:20 <olsner> so that's like from the 7-bit days?
19:31:23 <oerjan> yeah
19:31:37 <kmc> yep, ISO 646 is the international standard for ASCII and its variants
19:32:05 <olsner> UTF-.875
19:32:33 <shachaf> kmc: Are there any interesting theorems in plain typed-lambda-calculus Curry-Howard?
19:32:49 <shachaf> callcc not included.
19:33:15 <kmc> this is also why [\] are considered to be upper-case versions of {|} by some IRCds
19:33:32 <kmc> because they are ÄÖÅ and äöå respectively in iso646-fi
19:33:51 <kmc> olsner: :)
19:35:06 <oerjan> shachaf: simply typed lambda calculus is equivalent to intuitionistic propositional logic restricted to -> afaik.
19:35:20 <shachaf> oerjan: Right.
19:35:40 <oerjan> a theorem _about_ it is that it is PSPACE-complete to check propositions for theoremhood
19:36:04 <oerjan> (unlike NP-completeness for boolean logic)
19:36:59 -!- derdon has quit (Remote host closed the connection).
19:38:41 <shachaf> I was wondering if it would make a good puzzle game on its own if expressed in the right way.
19:38:47 <shachaf> But then I couldn't think of many interesting puzzles.
19:39:01 <oerjan> it should be on the level of sokoban, by complexity alone
19:39:32 <kmc> shachaf: did you see http://logitext.mit.edu/main
19:39:41 <shachaf> You can make puzzles that are a lot of work to solve, but I'm wondering if you can make ones that are interesting.
19:40:09 <shachaf> Polymorphism and rank-n types and so on can be permitted if they make it more interesting.
19:40:13 <shachaf> kmc: Nope.
19:41:25 <oerjan> polymorphism means at least hindley-milner, so doubly exponential time iirc
19:41:35 <shachaf> Oh, that's ezyang's thing.
19:41:45 <shachaf> He may have mentioned it before.
19:41:52 <oerjan> it was reddited
19:42:01 <shachaf> I missed that.
19:55:30 <shachaf> I find that sort of proof with turnstiles and \frac{...}{...} pretty hard to read.
19:56:27 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
19:59:57 -!- Vorpal has quit (Ping timeout: 240 seconds).
20:00:59 <oerjan> shachaf: made a comment out of our earlier discussion http://www.reddit.com/r/haskell/comments/ypyx4/why_does_print_readint_getline_return_an_ioio/c5y85z4?context=1
20:01:26 <shachaf> We had a discussion?
20:01:34 <oerjan> a brief one :P
20:01:38 <shachaf> Oh, yes.
20:01:55 <tswett> Something tells me that in C++, allocating sizeof(SomeClass) bytes and then casting the result to SomeClass* is a bad way of creating an object.
20:02:24 <kmc> it doesn't create an object; the constructor doesn't get called
20:02:28 <kmc> but you can use placement new for that
20:03:16 <tswett> I like it.
20:04:08 <kmc> SomeClass *x = malloc(sizeof(SomeClass)); new (x) SomeClass();
20:04:21 <olsner> allocating and casting is a bad way, but it's not illegal or anything
20:04:41 <ion> Huh, i don’t think i’ve ever seen that syntax.
20:04:54 <kmc> i think it's undefined behavior, unless the object is Plain Old Data
20:05:11 <shachaf> Placement new is undefined behavior?
20:05:19 <kmc> using an object without calling the constructor
20:05:27 <shachaf> Oh.
20:05:29 <shachaf> Makes sense.
20:05:44 <kmc> even if there's no explicit constructor code, there might be other stuff that needs to happen behind the scenes
20:05:53 <kmc> for example an object with virtual methods will likely need a vtable pointer
20:06:04 <olsner> right, I meant with placement-new to call the constructor, otherwise you're obviously getting uninitialized bytes anyway
20:06:42 <kmc> even if you're okay with all the explicitly named data fields being uninitialized, it's still undefined behavior
20:06:49 <shachaf> Is it valid to cast it in one place and then use placement new in another place?
20:07:14 <kmc> probably, but not 100% sure
20:07:31 <shachaf> SomeClass *x = malloc(...); doesn't compile, by the way (I think).
20:07:40 <kmc> oh, right, not in C++
20:08:06 <shachaf> ion: Do you know the syntax "foo.template bar()"?
20:08:25 <kmc> ion: http://www.parashift.com/c++-faq/placement-new.html
20:09:25 <kmc> void Foo::reset() { this->~Foo(); new (this) Foo(); }
20:10:04 <olsner> eww, destroying this and then constructing a new object in the same place
20:10:21 -!- Phantom_Hoover has joined.
20:10:51 <tswett> I'm beginning to wonder why, exactly, I'm using malloc() for objects at all...
20:11:56 <olsner> it's not a thing to do for no particular reason
20:12:10 <ion> shachaf: Nope
20:12:15 <olsner> if you want to do that safely you can implement new to call malloc instead
20:12:26 <olsner> otoh, most likely that's exactly the implementation you already have
20:12:56 <tswett> I'm declaring a class representing a header. I'm then allocating enough memory to hold the header and some additional data, then creating the header, and putting a pointer to the additional data in the header.
20:12:59 <kmc> what's even more fun is that you can overload "operator new"
20:13:13 <tswett> The only benefit to this is that the header and the data are next to each other.
20:13:18 <kmc> so that within "new (x) SomeClass()", x could be an object rather than a raw pointer
20:13:23 <kmc> such an object can implement a memory pool
20:13:26 <kmc> http://www.parashift.com/c++-faq/memory-pools.html
20:13:44 <olsner> I think you can also overload new in SomeClass such that new SomeClass does that
20:13:52 <tswett> And I don't think it's at al important that the header and the data be next to each other. The computer doesn't care too much.
20:14:09 <olsner> since there is no placement delete, overriding placement new is limitedly useful
20:14:47 <tswett> Placement delete...
20:14:58 <tswett> Remove a specific object from a specific location?
20:15:39 <olsner> well, delete-with-custom-arguments is more what I meant
20:15:40 <kmc> olsner: no, it lets you implement memory pools, and overloading "operator delete" plays an important role in that
20:15:53 <kmc> the link i just gave explains how
20:16:06 <olsner> you can define a delete operator with arguments, but afaik it's impossible to call it
20:16:42 <shachaf> olsner: Presumably you can use the regular delete operator, since you know where the pool is.
20:19:13 <olsner> sure, if you're willing to waste a pointer for each allocation you can store the Pool* there and override global delete
20:20:45 <olsner> the thing is, you can define and use a hundred news each with different frobs and wobnickles, but you don't really know which of them are known by delete foo
20:22:40 <shachaf> kmc: Did you see http://byorgey.wordpress.com/2012/08/24/unordered-tuples-and-type-algebra/ ?
20:22:52 <shachaf> (I don't remember if you were involved in the discussion about that a while ago.)
20:23:02 <tswett> There. Now I'm doing this the non-stupid way instead of the stupid way.
20:23:21 <tswett> Instead of allocating the whole thing at once and using placement new, I'm just using malloc() on the individual pieces individually.
20:23:25 <olsner> overrides of "placement delete" *look* like they'll do the right thing, but they only actually get called when constructors throw
20:24:38 <kmc> shachaf: no
20:28:27 -!- Nisstyre has joined.
20:40:41 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
20:55:13 <tswett> So, now we've got a simple object system.
20:55:23 <tswett> There is one object, called Class, of type Class.
20:56:36 <oerjan> a very classy system
20:57:10 <tswett> I guess classes ought to have superclasses. Class's superclass will probably be Object. Object's class can also be Class, and Object's superclass can also be Object.
20:57:31 <oerjan> will there be a method?
20:57:44 <tswett> Then again, metaclasses are pretty much mandatory.
20:57:50 <tswett> There will be methods at some point.
20:58:29 <kmc> we need a classless society
21:02:49 <ion> we need an assless society
21:03:58 <oerjan> we need a lassless society
21:06:45 <tswett> We need a lossless society.
21:07:01 <tswett> The extra bandwidth and disk space required would be worth the increase in reliability.
21:16:07 <tswett> JathObject*& JathClassObject::superclass() {return strongPtrs[SUPERCLASS];}
21:16:20 <tswett> I can't shake the feeling that I'm doing something horribly wrong.
21:19:30 <tswett> j_Class_class->_class = j_Class;
21:19:33 <tswett> "Class" is no longer a word.
21:19:42 <kmc> i wrote a program to figure out when the wait at the Registry of Motor Vehicles will be shortest
21:21:40 <oerjan> kmc: now investigate what will happen if _everyone_ uses such a program.
21:22:25 -!- atriq has quit (Remote host closed the connection).
21:28:52 <tswett> Presumably, it would not increase or decrease the speed at which people are served, so it would probably make everyone's wait time the same.
21:29:22 <tswett> Except that it would eliminate times at which there are no customers.
21:29:40 <tswett> Okay, so we've got objects, which have classes; and classes, which are objects and have superclasses.
21:30:13 <kmc> well most people have constraints on when they can go
21:30:36 <tswett> True.
21:31:20 <shachaf> kmc: How does it figure that out?
21:36:00 <kmc> the RMV lists wait times on their website
21:36:15 <kmc> updated every minute or so
21:36:29 <kmc> and indeed it's available in an extremely scrapeable AJAXy format at http://www.massdot.state.ma.us/DesktopModules/BranchMapDNN/GetWaitTimes.aspx?Town=Boston
21:41:10 <kmc> there is bike share all over Cambridge now
21:44:43 <shachaf> How does that work?
21:45:15 <kmc> which?
21:45:43 <shachaf> Bike share.
21:45:55 <kmc> http://www.thehubway.com/
21:46:01 <kmc> same as most city bike share programs
21:46:11 <kmc> they have stations around the city with electronically-locking bike racks
21:46:46 <kmc> you pay for a subscription (1 day, 3 days, or 1 year), which gives you the right to check out a bike for 30 minutes for free
21:46:49 <shachaf> Hmm, they had something similar in Tel Aviv when I was most recently there.
21:46:53 <kmc> (you can return it to a different station than the one where you got it)
21:47:00 <kmc> you pay more if you want more than 30 min
21:47:19 <kmc> the bikes are kinda crap though
21:47:28 <kmc> also they have no solution for helmets
21:47:36 <shachaf> Yep.
21:48:30 <shachaf> (I ended up using the thing in Tel Aviv.)
21:48:53 <kmc> i could actually use this, since my bike is broken at the moment
21:48:53 <shachaf> That was my experience.
21:49:20 <kmc> what was your experience?
21:49:26 <shachaf> Also once they didn't have enough bicycles at a station, so we had to manage with two bicycles for three people.
21:49:34 <shachaf> The bicycles weren't very good and we didn't use helmets. :-)
21:49:38 <kmc> that sounds inconvenient
21:50:40 <kmc> the amount of tourist-gouging in the pricing is always entertaining
21:51:05 <kmc> a yearly pass costs the same as 17 day passes
21:51:26 <shachaf> That doesn't seem unreasonable.
21:51:44 * shachaf ought to get a bicycle.
21:51:49 <shachaf> Well, I have a bicycle. But it's in WA.
21:52:52 <oerjan> west antarctica
21:54:40 <shachaf> Code like "cmpq $36,%rax; jl .Lc1jq; cmpq $36,%rax; jne .Lc1jo" is redundant, right?
21:55:26 <shachaf> I mean the second cmpq
21:55:49 <zzo38> At least to me it seem it is but I don't know exactly how the instructions operate.
21:55:50 <pikhq> For no good reason I've been contemplating Brainfuck stuff again.
21:55:59 <Phantom_Hoover> down that path lies only pain
21:56:06 <zzo38> Another possibility is if the second cmpq is a jump target
21:56:23 <zzo38> pikhq: What kind of Brainfuck stuff?
21:56:28 <pikhq> Namely, how to get a really damned compact threaded code compilation of it.
21:56:28 <shachaf> zzo38: That's true, but I assume it would have a label in that case.
21:57:03 <zzo38> shachaf: Yes I would think so. But without seeing the rest of the program I wouldn't know for sure.
21:57:16 <shachaf> zzo38: This is code being generated by GHC.
21:57:45 <kmc> which backend?
21:58:10 <shachaf> The default one.
21:58:14 <shachaf> -fasm, I guess.
21:58:20 <shachaf> Maybe this is one of the optimizations that -fllvm would do.
21:58:30 <zzo38> Does GHC ever compile a code where jump target addresses are computed from arithmetic?
21:58:48 <zzo38> If not, then you should complain about such a code like you wrote
22:00:12 <shachaf> Hmm, it looks like -fllvm generates similar code.
22:01:18 <zzo38> Will it generate a LLVM code or a native code, though?
22:01:36 <shachaf> I mean the x86 code generated by LLVM.
22:01:42 <shachaf> I'm just looking at the output of ghc-core here.
22:02:28 <zzo38> Then improve LLVM. LLVM seem to be missing many optimizations as far as I know.
22:02:34 <pikhq> First, I've got a single byte *ludicrously* packed. Next, I'm trying to figure out how I can get loops more compactly expressed...
22:02:58 <shachaf> I bet pikhq can fit a byte into 7 bits.
22:03:01 <shachaf> 6 on a good day.
22:03:06 <zzo38> pikhq: Explain more specifically?
22:03:14 <kmc> it all comes down to how hard you shove
22:03:21 <pikhq> What I'm thinking is that each loop can get expressed as a function, and any loops with identical bodies are the same function...
22:04:09 <zzo38> Are you trying to make program to compile a brainfuck code into another program?
22:05:20 <pikhq> zzo38: Two bits indicate whether you've got a tape add, a movement, or something else. If it's something else, then we've got the rest of the bits to express that. Otherwise, the rest of the bits indicate how much you add to the tape cell, or how far you need to move.
22:05:42 <pikhq> zzo38: Trying to get it to a ludicrously compact expression for no good reason *at all*.
22:06:01 <pikhq> zzo38: For, like, an interpreter or something.
22:06:03 <zzo38> pikhq: OK. Yes that makes sense and I have thought of similar things too, and possibly some other people have also done something similar.
22:06:25 <pikhq> It's silly, but it's Friday and I don't have much else going on. So. :P
22:07:09 <pikhq> Anyways, with just compacting the opcodes like that I've got LostKng.b in 216k.
22:07:52 <zzo38> I have been told that LLVM will not optimize brainfuck programs very good compared to other programs, perhaps optimization of pointer arithmetic and so on?
22:08:09 <pikhq> And I think making it so loop bodies only ever get expressed once could do better still...
22:09:57 -!- pikhq_ has joined.
22:10:11 <zzo38> Other ideas I have thought of for optimization in LLVM would be constraint analysis, BCD optimization (for target architectures which support it), analysis of representation of enumerations, etc
22:10:21 <pikhq_> As well as shoving references to particularly common ones inside of the byte, so e.g. [-] could be a single byte per instance as well as 2 more bytes per program.
22:10:28 <zzo38> And self-modifying code, too.
22:10:59 <zzo38> pikhq_: You could also make [-] a special case if it would seem to help
22:11:19 <pikhq_> About the only benefit this would have, of course, is letting you run LostKng.b from L1. :P
22:11:36 <zzo38> pikhq_: Another optimization is that sequences -+ +- <> >< +, -, should never occur.
22:11:47 <pikhq_> zzo38: I already handle those.
22:12:04 <oerjan> <>< is very fishy brainfuck
22:12:09 <zzo38> Therefore the packed representation should become unable to represent such sequences.
22:12:25 <pikhq_> I think the packed representation is theoretically capable of it.
22:12:47 <pikhq_> But it's never actually expressed.
22:13:08 -!- pikhq has quit (Ping timeout: 248 seconds).
22:13:37 <pikhq_> Once I'm done with this I'll probably make a simple interpreter, and have a LostKng binary in $tiny.
22:15:47 <fizzie> Phew, Stripe stroped.
22:17:06 <zzo38> Another thing I was thinking of is to make a Famicom-based software synthesizer in .NSF, possibly using FDS and MMC5 expansions so that you can use the 8-bit PCM, hardware multiplication, and extra RAM (using FDS expansion makes most of the ROM area into RAM, so combining it with PCM reading from the ROM area you might be able to make RAM PCM too).
22:21:21 <pikhq_> Hah. And gzip'd, LostKng is 40k after this...
22:21:21 <kmc> fizzie: ?
22:21:35 <pikhq_> (vs. 88k otherwise)
22:23:53 <fizzie> kmc: As in, "done".
22:26:23 <kmc> congrats
22:26:44 <Phantom_Hoover> fizzie, what stripe
22:26:55 <shachaf> Oh, I need to get back to that.
22:28:53 -!- oerjan has set topic: May contain strawberries | Just a remote control and some old gum | atriq is Taneb, just so you know | any topic history can be faked | except this | http://codu.org/logs/_esoteric/.
22:28:59 <kmc> Phantom_Hoover: stripe-ctf.com i assume
22:31:47 <fizzie> The above, yes.
22:48:35 <kmc> they had some fun levels
22:48:41 <kmc> i think i learned more than in the previous ctf
22:49:23 <fizzie> Ditto, due to the different topic.
22:49:34 <shachaf> fizzie: Which solution did you have for level 6?
22:50:25 -!- ion has set topic: May contain strawberries | Soy strawberries are more ethical | Just a remote control and some old gum | atriq is Taneb, just so you know | any topic history can be faked | except this | http://codu.org/logs/_esoteric/.
22:50:36 <fizzie> shachaf: A script-embedderistic one.
22:51:07 <shachaf> OK, so the same as mine, I assume.
22:51:10 <shachaf> kmc did something else.
22:51:57 <fizzie> shachaf: I saw a mention in the interwebs that there was a cookie-mungling-with-secrets-from-error-message solution that the Stripe folks patched out (by disabling the error messages in question).
22:52:11 <shachaf> Yep, that.
22:52:30 <shachaf> kmc: ☝
22:52:53 <kmc> yeah, that's what i did
22:56:19 -!- zzo38 has set topic: May contain: soy strawberries, people, computer programming, esoteric, THX deep note, ecliptic longitude, some CPU bugs, nonsensical analogies and theories, constructible with compass and ruler, matrix of solidity, lovecraftian horrors, and no tea. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki/Special:RecentChanges.
22:59:37 <oerjan> no tea? how naughty.
23:00:07 <fizzie> May contain tea, and no tea.
23:00:38 <zzo38> If you want tea you have to make tea.
23:01:01 <zzo38> fizzie: O, yes, I forgot that now you have to fix it
23:02:40 -!- fizzie has set topic: May contain: soy strawberries, people, computer programming, esoteric, THX deep note, ecliptic longitude, tea, some CPU bugs, nonsensical analogies and theories, constructible with compass and ruler, matrix of solidity, lovecraftian horrors, and no tea. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki/Special:RecentChanges.
23:02:53 <fizzie> I put it in the middle in order to not be as obvious.
23:02:57 <zzo38> OK
23:03:02 <zzo38> Yes that is good put it middle
23:03:13 -!- ion has set topic: May contain: soy strawberries, people, computer programming, esoteric, THX deep note, ecliptic longitude, tea, some CPU bugs, nonsensical analogies and theories, constructible with compass and ruler, matrices of solidity, lovecraftian horrors, and no Ice-T. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki/Special:RecentChanges.
23:04:01 <ion> or Mr. T
23:05:38 <kmc> Mr. ⊤
23:05:53 <kmc> but what about Mr. F?
23:05:59 -!- monqy has joined.
23:06:18 <shachaf> Mr. ⊤ and Mr. ⊥
23:12:23 <centrinia> Mister Bottom?
23:12:25 <Phantom_Hoover> i just got asked if monoid is pronounced "monowid".
23:12:54 <shachaf> Phantom_Hoover: When I first read the word, I pronounced it "mono'ID"
23:12:57 <shachaf> With a glottal stop.
23:13:05 <shachaf> That's probably because I was talking in Hebrew at the time.
23:17:53 <ion> Mono id or mono eye dee?
23:18:12 <shachaf> The former (I think).
23:18:21 <shachaf> The capitalization was for emphasis.
23:18:29 <ion> ok
23:20:18 <centrinia> Mon Oyd.
23:25:50 <kmc> i guess i should do the script embedding attack for level 6
23:25:52 <kmc> for completeness
23:26:17 <kmc> in the last CTF i used a timing attack on the last level, which was also not what they were looking for :)
23:26:41 <shachaf> kmc: It was, I think.
23:27:29 <shachaf> Actually I gather that they decided that the "impressive" solutions were the ones that used timing attacks and the "unimpressive" ones were the ones that were deterministic.
23:27:57 <shachaf> At least everyone I talked to who did a timing attack got a responds within a few hours, whereas it took them several days to get back to me.
23:28:28 <shachaf> Which is kind of backwards because the timing attack is the "obvious" thing to do -- it's what I started out by doing -- and the deterministic solution is much more situation-specific.
23:30:18 <kmc> but the timing attack is harder to actually get working, i think
23:30:40 <kmc> it was relatively easy for me, only because i had already spent days banging my head against a similar level in IO
23:31:29 <shachaf> kmc: It probably was. But that means I allocated my time better!
23:31:30 <kmc> also i'm entertained by the list of programming challenges on https://stripe.com/jobs
23:31:38 <shachaf> In particular the MBR demo?
23:32:00 -!- MoALTz has quit (Ping timeout: 244 seconds).
23:32:11 <kmc> yes
23:32:18 <shachaf> I spent a while on the timing attack, it turned out to be trickier than I thought, so I thought about the problem again and came up with the pipe solution.
23:32:21 <kmc> also the code search one, which is probably inspired by nelhage doing that exactly
23:32:22 * shachaf might just be bitter.
23:34:09 <kmc> i had like four tricks for making the timing attack more effective
23:34:17 <shachaf> That sounds interesting.
23:34:18 <kmc> which i thought of over days, and asked nelhage for one of them
23:34:29 <kmc> should i list them?
23:34:36 <shachaf> I should do io.sts. :-(
23:34:36 <kmc> i might write a blog post about this eventually
23:34:44 <shachaf> Which level has the timing attack?
23:34:51 <shachaf> (Which level was I at?)
23:34:57 <kmc> 12.
23:35:07 <shachaf> Man, I'm no good at coming back to CTFs.
23:35:24 <kmc> 11 is also really fun
23:35:31 <kmc> i didn't finish IO yet
23:35:51 <kmc> though i beat the last level, in beta test
23:36:54 <shachaf> kmc: You should run the underhanded code contest and then turn the solutions into CTF levels!
23:40:47 <kmc> also amused because i think the answer to the first question is given in _The Social Network_
23:41:49 <shachaf> "Given a corpus of voting data, how would you compute a total ordering?"
23:42:00 <shachaf> s/$/?/
23:43:30 <kmc> voting data being pairwise comparisons
23:43:46 <shachaf> I haven't seen the film.
23:48:01 <kmc> Zuckerberg made a website where it shows you two Harvard women and you click on which one is hotter
23:48:14 <kmc> and (in the film anyway) they calculated Elo ratings from this
23:57:17 -!- pikhq_ has quit (Ping timeout: 240 seconds).
23:57:24 -!- pikhq has joined.
2012-08-25
00:00:47 <shachaf> FireFlhi
00:01:27 <kmc> ?
00:01:43 <shachaf> Just saying hi to FireFly.
00:01:47 <kmc> ah
00:02:00 <FireFly> A shachaf
00:02:24 <shachaf> 17:01 <n00b6502> i prefer to say c/c++ because of the ability to overlap
00:02:58 <kmc> -_-
00:21:40 <kmc> it's hard to keep track of all the different shootings in america these days
00:22:04 <kmc> seems like practically every day some guy fires a gun into a crowd to let off some steam
00:22:56 <shachaf> http://www.theonion.com/articles/nation-celebrates-full-week-without-deadly-mass-sh,29293/
00:33:02 <shachaf> Maybe I should quit #haskell.
00:34:09 -!- Nisstyre_ has quit (Read error: Connection reset by peer).
00:35:30 <Phantom_Hoover> "A fired women's apparel designer shot dead a former colleague outside the Empire State Building in New York City before he was killed by police.
00:35:30 <Phantom_Hoover> Nine others were hit by bullets, some possibly fired by police, New York Mayor Michael Bloomberg said."
00:35:58 <Phantom_Hoover> Frankly hitting the right person at least 10% of the time is impressive for someone who couldn't even cut it as a women's apparel designer.
00:36:08 -!- Nisstyre has quit (Read error: Connection reset by peer).
00:36:37 -!- yours_truly has joined.
00:36:41 -!- Nisstyre_ has joined.
00:37:15 -!- yours_truly has quit (Read error: Connection reset by peer).
00:37:33 <oerjan> good, good, we can't have clones wandering about in the channel.
00:37:58 -!- Nisstyre has joined.
00:38:10 <oerjan> oh no
00:39:52 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
00:40:50 <kmc> you know i bet some of the best marks[wo]men in the world would be terrible at women's apparel designing
00:42:29 -!- oerjan has quit (Quit: Goodnight).
00:47:02 <kmc> "Facebook just announced that Frank Gehry of Gehry Partners... will design a new 3,400 employee engineering campus connected to its current HQ by an underground tunnel."
00:47:06 <kmc> hahahahaha suckers
00:48:15 <shachaf> ?
00:49:00 <kmc> he designed the Stata Center
00:49:00 <kmc> http://en.wikipedia.org/wiki/Ray_and_Maria_Stata_Center
00:49:03 <kmc> (which shachaf has been inside)
00:49:18 <kmc> it's a cool looking building, but it sucks at those boringly pedestrian building tasks
00:49:24 <kmc> such as "keeping water on the outside of the building"
00:49:27 <kmc> and "being navigable"
00:51:18 <shachaf> The MIT campus is pretty nice.
00:51:32 <kmc> it is
00:51:38 <shachaf> I liked it more than most other university campuses I've seen.
00:51:38 <kmc> i saw a bunny behind stata once
00:51:42 <shachaf> Which is admittedly not that many.
00:51:51 <kmc> it's cool how it's integrated with urban Cambridge and by extension Boston
00:53:02 <kmc> most college campuses i've been to are more like their own little worlds
00:53:11 <kmc> though there's selection bias there
00:53:22 <shachaf> The Stanford campus especially.
00:53:32 <shachaf> Probably because it's so big.
00:53:34 <kmc> i mean, i have walked around NYU buildings a whole lot without thinking "oh, i'm at NYU"
00:55:18 <kmc> stanford's campus seems annoyingly large
00:55:29 <kmc> caltech's campus is nicely compact
00:55:43 <kmc> i have biked from one corner to the other in about 4 minutes (recklessly)
01:02:34 <shachaf> Did you read _Cat's Cradle_?
01:02:54 <kmc> no
01:03:08 <Gregor> Bahaha, Oracle markets Solaris 11 as “The First Cloud OS”
01:03:45 <kmc> loloracle
01:28:12 <kmc> so (itidus21 mode engage) it's interesting that the global standard for distributing networked applications evolved from a system for distributing mere hypertext documents
01:28:30 <kmc> and in the meantime so many attempts at a deliberate standard for networked applications failed
01:28:40 <kmc> i wonder if there is any deep truth behind this or if it's just historical accident
01:30:18 <shachaf> I think most of those attempts were "before their time" in various ways.
01:30:22 <kmc> yeah
01:30:30 <shachaf> Some technical and some social.
01:30:34 <kmc> java plugins failed and so now we have flash instead :(
01:30:47 <shachaf> Whereas distributing documents is something that people have always done and wanted.
01:30:50 <shachaf> (Is it?)
01:30:53 <kmc> yes, i think so
01:31:27 <kmc> also the web's evolution means there was no particular point where some particular entity owned it, and could force bad technology to drive short-sighted business value
01:31:56 <shachaf> Yes. Did any of the "standards for networked applications" have that property?
01:32:11 <kmc> i don't know
01:32:16 <kmc> maybe i'm failing to come up with examples
01:32:26 <kmc> Java plugins are one (even if they piggybacked on the pre-application Web)
01:32:36 <shachaf> There was NeWS in the good old days.
01:32:39 <kmc> also the various proprietary online services like AOL
01:32:51 <kmc> i don't know about NeWS
01:32:53 <kmc> what is it?
01:33:24 <shachaf> https://en.wikipedia.org/wiki/NeWS
01:33:32 <shachaf> Like "AJAX" but with PostScript.
01:33:46 <kmc> exciting
01:33:50 <shachaf> Server-side applications that delivered Display PostScript code to clients.
01:34:07 <shachaf> I've never used it or anything but I gather it was pretty nice, at least in theory.
01:34:25 <shachaf> I wonder whether PostScript is better or worse than HTML+CSS+JavaScript.
01:34:45 <shachaf> NeWS was in the 1980s, anyway.
01:35:17 <kmc> oh, right, i can wikipedia something even if i can't google it
01:36:50 <shachaf> I wonder what it wolud take to replace web applications these days.
01:37:06 <shachaf> I hope something does. :-(
01:37:57 <kmc> eh
01:38:05 <kmc> i think it's a pretty good outcome
01:38:08 <kmc> compared to the alternatives
01:38:17 <kmc> (real and hypothetical)
01:38:33 <kmc> even if you designed something to be what web apps today are, and beautifully elegant
01:38:41 <kmc> people would immediately start abusing it to do all kinds of other things
01:44:06 <shachaf> Se "FreeT" in edwardkese is "Stream" in GHCese.
01:44:39 <shachaf> kmc: It's true. I hate evolution sometimes. :-(
01:44:53 <shachaf> (In a general sense of the word.)
01:44:55 -!- pikhq_ has joined.
01:45:32 <kmc> i think the web app stack is pretty sane compared to a lot of the things people have to deal with
01:45:36 <kmc> but ask me again in 6 months ;)
01:45:50 <shachaf> Hah.
01:46:03 <shachaf> I guess everything people build abstractions on top of is pretty insane.
01:47:38 <kmc> http://www.flickr.com/photos/25885309@N02/2431709647/in/set-72157604661612578/lightbox/
01:48:06 -!- pikhq has quit (Ping timeout: 264 seconds).
01:49:54 -!- mig21a has joined.
02:32:37 -!- DHeadshot has joined.
02:34:18 -!- mig21a has quit (Ping timeout: 264 seconds).
02:38:01 -!- mig21a has joined.
02:45:21 <zzo38> shachaf: I prefer "FreeT" (if it is the FreeT which I think of)
02:45:51 <shachaf> newtype Stream m a b = Stream { runStream :: m (Either b (a, Stream m a b)) }
02:47:57 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
02:52:36 -!- pikhq has joined.
02:53:04 -!- pikhq_ has quit (Ping timeout: 260 seconds).
03:02:30 <zzo38> It is similar to the FreeT. In this case: type Stream m a = FreeT ((,) a) m
03:03:06 <shachaf> Wait, isn't Stream just = FreeT?
03:08:39 <zzo38> No!
03:08:53 <shachaf> edwardk said it was.
03:10:55 <zzo38> Is edwardk on? Mention these thing see what they would say.
03:11:12 <zzo38> That type Stream is not even the correct kind to be a monad transformer, though.
03:13:12 <shachaf> Oh, I guess it is FreeT of (,) or something.
03:16:26 <kmc> i love how in television and movies, any time a fire alarm goes off, the sprinklers go off too
03:19:55 -!- mig21a has joined.
03:22:02 -!- mig22 has joined.
03:28:33 <zzo38> kmc: Make up a TV show that doesn't have sprinklers.
03:29:33 -!- mig21a has quit (Quit: Colloquy for iPhone - http://colloquy.mobi).
03:32:48 -!- pikhq_ has joined.
03:33:08 -!- pikhq has quit (Ping timeout: 248 seconds).
03:52:34 <Sgeo> My computer freezes momentarily when I put headphones in. HOW IS THAT EVEN A THING THAT SOFTWARE NOTICES?
03:58:38 <kmc> why shouldn't it be? it is useful information
03:59:17 <kmc> for example, many phones will pause playback when you unplug your headphones
03:59:40 <kmc> this prevents the situation where the headphones fall out, it plays through the speaker, and now everyone in the room hears your shitty embarassing music
04:00:15 <kmc> also it is useful to have different volume settings for speaker and headphones
04:00:27 <kmc> (but that could be accomplished by sending both settings to the sound card, without the driver finding out which one is in use)
04:01:15 <kmc> my laptop has the headphone jack on the edge closest to my abdomen / crotch
04:01:26 <kmc> and my headphone plug sticks out several cm
04:01:30 <kmc> and this is annoying
04:13:31 <shachaf> GHC and "base" code uses a surprising number of type classes.
04:25:31 -!- ogrom has joined.
04:39:31 -!- DH____ has joined.
04:40:21 -!- DHeadshot has quit (Ping timeout: 276 seconds).
04:44:14 -!- kinoSi has quit (Read error: Connection reset by peer).
04:44:41 -!- kinoSi has joined.
04:49:27 -!- DH____ has quit (Ping timeout: 276 seconds).
04:58:24 <Sgeo> I don't like the m-lift macro in the moand library someone wrote for Clojure (corresponding to a liftM*). afaict in Clojure it doesn't need to be a macro, due to variadic functions
05:01:15 <zzo38> It doesn't even have to be a monad it can be applicative: liftA, liftA2, liftA3, etc. With a functor it has be one, but applicative it can be zero or more. (This was actually also my idea for a function in WizardCard; map(f,x...) where there can be exactly one x for functor and zero or more x for applicative. I intended WizardCard to compile into Haskell. However I might change some things since I may need help too)
05:03:31 <zzo38> So you could have liftA0 = pure
05:05:06 <shachaf> Or unit :: m () and (*) :: m a -> m b -> m (a,b)
05:06:18 <zzo38> Yes I have thought of those things too. Your (*) I have made for applicative, liftPair :: (f x, f y) -> f (x, y)
05:07:40 <shachaf> It's defined thus in the original Applicative paper.
05:07:47 <shachaf> Strong lax monoidal functors.
05:07:49 <shachaf> Or somethign.
05:08:38 <zzo38> I have thought of to define applicative in terms of a endofunctor together with pure and liftPair for a tensor category.
05:09:15 <zzo38> Therefore applicatives can exist on tensor categories.
05:09:33 <shachaf> End o' fun ctor.
05:09:34 <shachaf> :-(
05:12:12 <zzo38> And then, depending on the category you may be able to make the applicative from any monad.
05:12:36 <shachaf> Can't you do that anyway?
05:13:13 <zzo38> I do not think you can with any category, but you can with Haskell, and some other categories.
05:14:39 <zzo38> I believe you can make a backward applicative from applicatives in any category, though, if you define the product of the tensor category backward.
05:21:02 <Sgeo> I don't think anyone made applicative or functor stuff for Clojure at this point
05:21:16 <zzo38> Monads are meaningless without functors though
05:21:53 <zzo38> Since first you need a category, and you need endofunctors, and then add return and join to make a monad.
05:22:26 <Sgeo> Clojure has map, it's probably user-extendible, not sure if the various monad libraries do that
05:38:52 -!- DHeadshot has joined.
05:49:15 -!- DHeadshot has quit (Ping timeout: 276 seconds).
05:52:34 -!- asiekierka has joined.
05:58:58 -!- DHeadshot has joined.
06:04:54 -!- ogrom has quit (Quit: begone).
06:26:45 -!- copumpkin has joined.
06:37:25 -!- pikhq has joined.
06:37:33 -!- pikhq_ has quit (Ping timeout: 260 seconds).
06:43:12 -!- DHeadshot has quit (Ping timeout: 276 seconds).
06:44:04 -!- copumpkin has quit (Ping timeout: 248 seconds).
06:53:14 -!- pikhq_ has joined.
06:53:25 -!- pikhq has quit (Ping timeout: 268 seconds).
07:43:48 -!- Lumpio- has quit (Ping timeout: 248 seconds).
07:54:31 <coppro> how to be funny:
07:54:39 <coppro> think of the funniest real-life thing that you've heard of
07:54:42 <coppro> tone it down a notch
07:58:18 <coppro> (if you try to use the funniest thing without toning it down, people will be unable to suspend disbelief)
08:00:01 -!- ogrom has joined.
08:02:59 -!- pikhq has joined.
08:03:06 -!- pikhq_ has quit (Ping timeout: 264 seconds).
08:27:49 -!- Lumpio- has joined.
08:49:15 <zzo38> I am trying to access http://groups.google.com/group/comp.lang.lisp/msg/4e1f782be5ba2841 but I hate this Google Groups it won't work can this Usenet message be accessed without a web page?
08:50:29 <nortti> ugh. the new google groups doesn't work with links2
08:52:31 <zzo38> Should they put a proper Usenet link?
09:00:33 -!- AnotherTest has joined.
09:06:47 <Deewiant> zzo38: https://groups.google.com/group/comp.lang.lisp/msg/4e1f782be5ba2841?dmode=source&output=gplain&noredirect ?
09:08:16 <nortti> zzo38: what browser are you using?
09:16:35 -!- oerjan has joined.
09:16:56 <zzo38> That works although it looks like the email addresses in the header are cut off.
09:17:42 <Deewiant> That's probably to hide them from spambots; you need to answer a captcha on the HTML + JavaScript page to view them there.
09:20:49 -!- MoALTz has joined.
09:24:59 <Sgeo> o.O there's a new version of Factor
09:25:04 <Sgeo> Guess it's not dead yet
09:29:06 <Sgeo> Got a pop-up saying "Please respond with 4:05. This iPad promotion can be awarded to another visitor if you dont participate."
09:29:24 <Sgeo> Going to wait a bit before closing it, I want to see what happens when it times out
09:30:18 <Sgeo> Hmm, afaict, looks like it's going to go back to the original amount of time
09:32:19 <oerjan> don't they all.
09:33:14 <Sgeo> Went from 0:00 to 5:00.
09:33:32 <Sgeo> Who would do something like this, just go on the Internet and tell lies?
09:33:56 <oerjan> evil people, Sgeo
09:34:32 <zzo38> Sgeo: You.
09:34:37 -!- zzo38 has quit (Remote host closed the connection).
09:34:46 <oerjan> if you respond you will be kidnapped and become a slave in their sweatshops. _after_ "giving" them your personal savings.
09:42:06 -!- oerjan has quit (Quit: leaving).
10:04:43 -!- cheater_ has joined.
10:07:36 -!- cheater has quit (Ping timeout: 265 seconds).
10:34:14 -!- chickenzilla has joined.
10:57:18 -!- ais523 has quit.
11:08:32 -!- pikhq_ has joined.
11:08:48 -!- pikhq has quit (Ping timeout: 252 seconds).
11:10:55 <Sgeo> I appear to have started a flame war in #haskell
11:11:14 <monqy> @ask elliott <Sgeo> I appear to have started a flame war in #haskell
11:11:14 <lambdabot> Consider it noted.
11:14:04 -!- impomatic has joined.
11:19:11 -!- zzo38 has joined.
11:20:44 <mroman> oh noez.
11:37:55 <zzo38> What?
11:39:33 <Sgeo> zzo38, probably referring to <Sgeo> I appear to have started a flame war in #haskell
11:39:40 -!- MoALTz_ has joined.
11:42:26 -!- MoALTz has quit (Ping timeout: 246 seconds).
12:04:08 -!- MoALTz has joined.
12:06:37 -!- MoALTz_ has quit (Ping timeout: 252 seconds).
12:11:35 * Sgeo cheats
12:11:39 <Sgeo> @src ap
12:11:39 <lambdabot> ap = liftM2 id
12:11:50 <Sgeo> ...I think I've checked that before
12:12:02 <Sgeo> @src liftM2
12:12:02 <lambdabot> liftM2 f m1 m2 = do { x1 <- m1; x2 <- m2; return (f x1 x2) }
12:13:03 <fizzie> @. pl undo do { x1 <- m1; x2 <- m2; return (f x1 x2) }
12:13:04 <lambdabot> (`fmap` m2) . f =<< m1
12:13:11 <fizzie> That bot is the best.
12:13:18 <fizzie> (I hope fungot didn't hear.)
12:13:20 <fungot> fizzie: ossian, character of the perfect historian is he in the ecclesiastical history of scotland. the parliament of the united states? is there a debt which had long slept a deep sleep, has been, a real alliance between the two indian members on the executive council, in charge of the criminals made such arrangements that the carriages reached tours at two in the morning, to st john's church, fnord fnord a cabinet so variousl
12:15:12 -!- Guest31873 has joined.
12:16:11 -!- Guest31873 has left.
12:17:03 -!- ogrom has quit (Quit: Left).
12:17:14 <FreeFull> ^style
12:17:15 <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
12:17:20 <FreeFull> ^style discworld
12:17:20 <fungot> Selected style: discworld (a subset of Terry Pratchett's Discworld books)
12:19:30 <FreeFull> fungot
12:19:31 <fungot> FreeFull: ' did they hurt you?" she said, for a start we're going straight to the jelly.
12:19:47 <FreeFull> Straight to the jelly
12:26:18 -!- ogrom has joined.
12:33:38 -!- derdon has joined.
12:42:56 <fizzie> For a start.
12:51:41 -!- Phantom_Hoover has joined.
13:04:02 -!- ogrom has quit (Quit: Left).
13:10:22 -!- MoALTz has quit (Ping timeout: 244 seconds).
13:20:39 -!- MoALTz has joined.
13:23:47 <Sgeo> Yay. I now have code under my name at github.
13:34:51 -!- ogrom has joined.
13:56:15 <FreeFull> fungot
13:56:16 <fungot> FreeFull: 27. file://localhost/ mnt/ space/ media/ books/ 1000+sci-fi%20books/%5bebooks%5d%201000+%20sciencefiction%20%26%20fantasy%20novels%20%28.lit%20forma/ pratchett%2c%20terry/ text/ 16/ fnord scale river trireme. every flat surface had been scrubbed. the fireplace had been fnord had been deserted to start with.
13:56:25 <FreeFull> fizzie
13:58:45 <fizzie> Heh.
13:59:11 <fizzie> I see it has hit some dumped links.
13:59:14 <fizzie> How embarrassing
13:59:19 <fizzie> ^style europarl
13:59:20 <fungot> Selected style: europarl (European Parliament speeches during approx. 1996-2006)
13:59:26 <fizzie> fungot: What do you have to say to that?
13:59:29 <fungot> fizzie: mr president, because i believe in europe, that the european parliament to express its views to the council was to try to arrive at a common position to be able to reject the treaty may be used instead. ( parliament adopted the joint text. i shall not waste your time, but i wish to emphasize that we are fighting, we must now have this reform for 1999 before us in writing.
13:59:47 <Phantom_Hoover> 1999 desperately needs a reform.
14:03:39 <fizzie> Let's reform like it's 1999.
14:23:28 -!- MoALTz has quit (Ping timeout: 245 seconds).
14:32:29 -!- copumpkin has joined.
14:36:55 -!- monqy has quit (Quit: hello).
14:39:27 -!- MoALTz has joined.
15:52:54 <kmc> bored
15:53:11 -!- copumpkin has quit (Ping timeout: 265 seconds).
15:54:33 -!- copumpkin has joined.
15:57:11 <kmc> how do i torrent things without getting busted
15:57:19 <AnotherTest> I2P
15:57:32 <AnotherTest> but that might be terribly slow
15:58:11 <kmc> huh
15:58:13 <kmc> how does it compare to Tor
15:58:18 -!- Vorpal has joined.
15:58:31 <AnotherTest> pretty good
15:58:40 <AnotherTest> besides the fact that it's implemented in Java
15:58:43 <AnotherTest> it's actually faster
15:58:50 <Vorpal> hi
15:58:52 <AnotherTest> and I find it easier to use
15:58:57 <AnotherTest> Hello
15:58:57 <kmc> is it actually a problem that it's implemented in Java?
15:59:04 <AnotherTest> No, just joking
15:59:12 <AnotherTest> although that wasn't actually funny
15:59:17 <kmc> correct
15:59:27 <AnotherTest> It's probably better than C
15:59:44 <AnotherTest> but I shouldn't be saying that in here :s
15:59:51 <Phantom_Hoover> <kmc> how do i torrent things without getting busted
15:59:55 <Phantom_Hoover> You're getting busted?
16:00:04 <fizzie> AnotherTest: Yeah, people who say things like that here tend to have... accidents.
16:00:04 <kmc> i don't currently torrent things
16:00:05 <Vorpal> btw, anyone know any good open source video editing programs? I need a bit more than just cut, such as tracking an object and using that as the center point (in order to stabilise the video).
16:00:12 <AnotherTest> my ISP lowers your bandwidth when you torrent
16:00:47 <kmc> C is great for network programming as long as you don't mind the fact that a tiny mistake will let attackers take over your entire machine
16:00:52 <AnotherTest> Vorpal: why does it need to be open source? or do you mean free?
16:00:57 <ion> vorpal: I don’t know of any good programs, but kdenlive seemed to suck less than the others when i tried a bunch of them the last time. It still sucked badly.
16:01:01 <Vorpal> AnotherTest, well, I prefer open source, but free is okay
16:01:08 <kmc> the usual response from C die-hards is that anyone who ever makes a mistake is an "idiot" and has a small penis
16:01:55 <AnotherTest> I do my network programming in C++
16:01:55 <kmc> also that managed languages are no safer because the compiler / VM might have a bug, anyway
16:01:59 <Vorpal> I have a couple of hours of unedited footage from a flight show.
16:02:07 <AnotherTest> and I'm so "lazy" that I use boost asio
16:02:12 <Vorpal> Definitely need to stabilise it by tracking the aircraft.
16:02:18 <fizzie> Vorpal: I've used Kino once, and it did that job, though I don't really have any points of reference to compare to, and don't know if it could do object-tracking like that. Possibly not, it seemed more oriented for just cutting and splicing things.
16:02:19 <kmc> to which I say, the kernel might also have a bug, does this mean all user software might as well run at ring 0
16:02:27 <kmc> they usually don't have a good response to that...
16:02:35 <AnotherTest> brb
16:02:55 <kmc> Vorpal: if someone asked me to do that, I would probably write some custom software using OpenCV
16:03:01 <kmc> i have no idea if there's something more ready-made
16:03:07 <ion> I don’t think kdenlive had any tracking capabilities either. But i haven’t touched it for a long time either.
16:03:07 <kmc> how distinctive is the object?
16:03:17 <Vorpal> kmc, opencv?
16:03:18 <kmc> if it's, like, the only red thing, it might be easy to track
16:03:22 <kmc> yes
16:03:24 <kmc> opencv
16:03:26 <Vorpal> what is that
16:03:30 <ion> @google opencv
16:03:31 <lambdabot> http://opencv.willowgarage.com/
16:03:31 <lambdabot> Title: Welcome - OpenCV Wiki
16:03:36 <kmc> it is a thing which can be googled
16:03:41 <Vorpal> hm okay
16:03:45 <Vorpal> well I don
16:03:50 <Vorpal> don't* have time to do that
16:03:59 <Vorpal> and I know there are costly editing programs which can do what I need
16:04:05 <Vorpal> hrrm
16:04:07 <ion> Is don’t* a pointer?
16:04:11 <fizzie> I'm pretty sure there's ready-made software for the express purpose of automatically deshaking videos.
16:04:19 <fizzie> ion: It's a pointer to a don't.
16:04:24 <kmc> don_t*
16:04:29 <kmc> pointer to don
16:05:02 <Vorpal> fizzie, btw do you know if it is possible to dump every frame from a video easily? I think that could be used for panorama making in combination with a good video camera
16:05:07 <kmc> (reserved by POSIX)
16:05:17 <Vorpal> probably a lot faster than using a DSLR too.
16:05:17 <kmc> Vorpal: mplayer can do that
16:05:19 <fizzie> Vorpal: ffmpeg into 'blah%04d.png' or some-such.
16:05:29 <fizzie> mplayer can also do it, yes.
16:05:30 <kmc> mplayer -vo png
16:05:40 <Vorpal> fizzie, fair enough
16:05:59 <ion> Btw: Hugin and Enblend are awesome for panoramas.
16:07:54 <Vorpal> I actually managed to get my phone to 47% charge after filming about 3 hours of max quality 1080p video. 11 GB of videos in total :D
16:07:58 <fizzie> Vorpal: Incidentally, I once made a "stabilised" bit of video by doing exactly that, then computing image orientations with panotools (autopano-sift points between consecutive frames), getting a smoothed spline approximation out of the yaw/pitch/roll to get a "camera track", and then doing the obvious remappings with nona to make it smooth.
16:08:20 <Vorpal> fizzie, and then importing it all back into a video?
16:08:22 <fizzie> Yes.
16:08:28 <Vorpal> sounds kind of annoying
16:08:29 <fizzie> IIRC, it worked well enough for a proof-of-concept, though there were some issues.
16:08:33 <Vorpal> ah
16:08:47 <Vorpal> fizzie, not something I want to do on 3 hours of footage then...
16:09:49 <Vorpal> hm the sound clipped...
16:09:55 <fizzie> Vorpal: Google claims Cinelerra (open-source video editor) has a bundled image stabilization plugin.
16:10:28 <Vorpal> non-linear video editor? Huh? What?
16:10:34 <fizzie> That's what they call them.
16:11:03 <fizzie> "-- system which can perform non-destructive editing on the source material. It is named in contrast to 20th century methods of linear video editing and film editing."
16:11:10 <fizzie> I've wondered about the name, too, sometimes.
16:11:58 <Vorpal> right
16:12:29 <kmc> http://en.wikipedia.org/wiki/Non-linear_editing_system#Main_differences_between_linear_and_non-linear_editing
16:12:30 <Vorpal> oh and I have somewhere around 700-1 GB of raw images from my not-quite-DSLR
16:12:45 <Vorpal> 700 MB*
16:13:23 <kmc> there was an episode of _House_ filmed entirely with a DSLR
16:13:31 <fizzie> http://cinelerra.org/docs/cinelerra_cv_manual_en.html#SEC206 is the bit of a manual about the motion tracker.
16:13:42 <kmc> http://en.wikipedia.org/wiki/Help_Me_(House)
16:14:08 <Vorpal> kmc, well I don't have a fast enough CF card to film.
16:14:24 <fizzie> (14.4.33.6 is about the stabilization thing.)
16:17:33 <fizzie> Speaking of the video-panorama, I did a quick try for that, with the reasonably sucky video recording of the phone. It had a lot of parallax problems (handheld, and short distances), but it was good enough to get some kind of an overview. Also I just picked every N'th frame; I think it'd have improved things a lot to use some heuristic to select only "sharp" frames; some of the ones with a lot ...
16:17:40 <fizzie> ... of motion were really quite blurry.
16:19:37 <fizzie> http://users.ics.aalto.fi/htkallas/videopano.jpg
16:19:53 <Lumpio-> videopano sounds like porn
16:20:00 <fizzie> Lumpio-: Only to Finns.
16:20:06 <Lumpio-> durh
16:20:36 <Vorpal> fizzie, well my phone produces reasonably good 1080p video
16:20:59 <Vorpal> especially with the camera app mod that I have, which ups the bit rate
16:21:26 <Vorpal> still, I had big issues with auto focus, it is possible to set a focus but only after you started recording
16:21:42 <Vorpal> and that is "focus on where I click, and keep that focused"
16:22:41 <ion> fizzie: The image might have been nicer if you had added some “vertical line” control points..
16:23:01 <Vorpal> <fizzie> Lumpio-: Only to Finns. <-- oh?
16:23:40 <fizzie> ion: The sort-of-a-point was to have it work completely automatically.
16:24:36 <fizzie> Vorpal: "fi:pano" is a vulgarism for "A lay, a fuck, a session of sexual intercourse", to quote wiktionary.
16:24:56 <fizzie> (It's also a deposit to a bank account.)
16:25:11 <Vorpal> heh
16:28:49 <kmc> haha
16:29:59 <Phantom_Hoover> fizzie, remind me what the Finnish words for 'oxygen' and 'vulva' are.
16:31:31 <fizzie> Phantom_Hoover: oxygen -> 'happi', vulva -> 'häpy'. They do pronounce quite differently, though.
16:31:39 <kmc> http://blog.sendapatch.se/2010/february/this-might-seem-silly-git-pull.html
16:34:16 <fizzie> kmc: Fortunately, fi:pulla (we'd mangle "pull" -> "pullata" to make a verb) just means bun, which is relatively innocuous.
16:38:28 -!- MoALTz has quit (Ping timeout: 245 seconds).
16:39:44 -!- atriq has joined.
16:41:05 <Vorpal> kmc, hm I was not aware that "pulla" meant that in Swedish.
16:41:29 <nortti> what it meant?
16:42:26 <centrinia> You should probably avoid uttering words with the suffix "-ulla" in Swedish as a general rule.
16:42:35 <FreeFull> In Polish, oxygen is tlen
16:42:39 <FreeFull> Nitrogen is azot
16:42:58 <fizzie> Vorpal: The N900 default camera app records at 848x480@24fps and still manages to lag every now and then, at least when writing to built-in flash. Could be somewhat of a software thing. I've read someone getting stable 720p@25 video with the custom camera drivers, so I suppose it's mostly about encoding that in time (which the hardware acceleration should be able to handle, given proper ...
16:43:04 <fizzie> ... software) and storing it somewhere.
16:43:54 <FreeFull> In german it's stickstoff
16:44:06 <FreeFull> Nitrogen I mean
16:44:35 <FreeFull> "Die deutsche Bezeichnung Stickstoff erinnert daran, dass molekularer Stickstoff Flammen löscht („erstickt“) oder dass in reinem Stickstoff Lebewesen ersticken."
16:45:03 <Vorpal> fizzie, well I was writing to a class 10 64 GB MicroSD
16:45:07 <Vorpal> it should be pretty fast
16:46:07 <fizzie> Yeah, writing to a fast µSD might well work better than the built-in flash even with the default resolutions and camera drivers.
16:54:07 -!- MoALTz has joined.
16:55:09 -!- mig22 has quit (Quit: mig22).
16:57:22 <fizzie> Come to think of it, I'm really deficient when it comes to video recording. The phone does bad-quality 848x480@24 MPEG4 that lags; the various webcams have horrible picture quality; and the camera writes good-looking and smooth but low-resolution 640x480@30 weird Quicktime MJPEG files and has some sort of a maximum recording time instead of streaming to card.
16:59:51 <fizzie> (Even though the video bitrate is just 1.3MB/s and this card claims a 7.7MB/s write speed.)
17:03:24 <kmc> german element names are funny
17:03:33 <kmc> wasserstoff
17:04:33 <fizzie> All kinds of stoff.
17:05:25 <fizzie> I remember from some book or another that their rocket fuels had names of the "X-Stoff" kind.
17:05:49 <fizzie> Heh, Wikipedia has a "List of stoffs".
17:06:02 <fizzie> A, B, Br, C, K, M, N, R, S, SV, T and Z-Stoff.
17:06:22 <kmc> was that book Gravity's Rainbow?
17:06:30 <fizzie> No, I think it was My Tank Is Fight.
17:06:34 <kmc> heh
17:07:01 <Vorpal> <fizzie> Yeah, writing to a fast µSD might well work better than the built-in flash even with the default resolutions and camera drivers. <-- sure, but the built in one in the S3 should be pretty fast too
17:08:09 <fizzie> Vorpal: I don't know if it's a hardware or a driver-tuneup-firmware kind of an issue, but doing a lot of IO on the N900 internal flash manages to grind other things to horrible slowness.
17:08:11 <Vorpal> fizzie, is fight?
17:08:13 <Vorpal> what
17:08:35 <Vorpal> also ouch
17:08:44 <kmc> should i feel bad using the x <= y < z sugar in python
17:08:54 <Vorpal> kmc, what does that do?
17:09:02 <kmc> it's equivalent to (x <= y) and (y < z)
17:09:07 <Vorpal> heh
17:09:19 <Vorpal> interesting ternary operator
17:09:44 <fizzie> Vorpal: It's a humorous name. It documents (in a funny way) some strange tank/plane/boat inventions from WW2.
17:09:56 <Vorpal> I'm surprised it works when parsing python though. Python is supposedly LL(1)
17:10:17 <Vorpal> fizzie, cool
17:10:30 <kmc> unfortunately it works for any relational operator
17:10:37 <fizzie> Vorpal: Possibly it just parses as "(x <= y) < z" and has a special meaning.
17:10:37 <kmc> leading to nonsense like #4 on http://web.archive.org/web/20101009122154/http://web.mit.edu/rwbarton/www/python.html
17:10:52 <Vorpal> fizzie, btw, "doing a lot of IO"... Does that include doing a lot of read IO?
17:10:56 <Vorpal> or just write IO?
17:11:11 <Vorpal> in the latter case, the system probably has a buffer that you fill then
17:11:30 <fizzie> Vorpal: Well, I haven't investigated too much. At least the effect is a lot more noticeable when it comes to writes.
17:12:11 <fizzie> Anyway, I wouldn't mind slowing down the writing task so much, but it lags the UI and everything else too.
17:13:15 <zzo38> Nobody else has tried to beat me at Word Warp last month, nor this month.
17:14:28 <fizzie> They have been demotivated by your Word Warp prowess.
17:15:07 <zzo38> Actually the last time someone else did play (a few months ago), they did win by a few points.
17:15:15 <fizzie> Is it another of those BBS games?
17:15:19 <zzo38> Yes.
17:20:13 <zzo38> The most recent messages posted to the local message boards seem to be last year, although a few people have posted on the wall recently, nobody has answered any questions I posted there.
17:22:56 <zzo38> They have access to alt.2600 and I posted a few message there but there seems to be none replies recently.
17:23:15 -!- pikhq has joined.
17:23:32 -!- pikhq_ has quit (Ping timeout: 244 seconds).
17:24:12 <zzo38> If your ISP still receives messages from that newsgroup, then perhaps the BBS configuration is broken.
17:27:32 <zzo38> I also tried to send some messages to myself but hasn't seem to been received; perhaps automatic QWK runs only overnight, and then it will be sent properly?
17:52:09 <fizzie> Latest alt.2600 posts on my ISP have the title "aardvark payment?" and the latter has date "Sat, 25 Aug 2012 06:27:25 -0700 (PDT)".
17:52:38 -!- AnotherTest has quit (Quit: Leaving.).
18:02:31 <zzo38> Is there anything I sent, on there? Or is that broken too?
18:17:55 -!- ogrom has quit (Ping timeout: 268 seconds).
18:18:49 -!- ogrom has joined.
18:36:27 -!- oerjan has joined.
18:41:38 -!- ogrom has quit (Quit: Left).
18:45:09 -!- sivoais has quit (Read error: Connection reset by peer).
18:45:39 -!- sivoais has joined.
19:02:45 <Vorpal> Phew, just finished adding metadata to all images (which plane type and geotagging)
19:30:19 <fizzie> Is there a standard metadata for airplane types?
19:30:23 -!- pikhq_ has joined.
19:32:46 -!- pikhq has quit (Ping timeout: 246 seconds).
19:32:52 <fizzie> zzo38: I don't know what it is that you sent. At least there seems to be nothing where the 'From:' fields contain the string 'zzo38', if my newsreader is to be believed.
19:33:59 <zzo38> Do any of them contain "xbit" or "x-bit"? Do any contain the FidoNet number for x-bit?
19:34:38 <zzo38> (The FidoNet number for x-bit is 1:340/10 and my user number is 39)
19:35:11 <Vorpal> fizzie, First photo uploaded: https://www.dropbox.com/sh/kddhwd2j42bucz3/QgKbpICEy_ (I flew in one of those helicopters, cost 350 SEK for a tour lasting about 7 minutes)
19:35:41 <Vorpal> fizzie, I will add more to that album as I work through the photos.
19:36:03 <Vorpal> <fizzie> Is there a standard metadata for airplane types? <-- not that I know of
19:36:11 <fizzie> zzo38: I'm not sure how to search for that. I *think* slrn's "author search" looks at the From: header; at least if I search for 'afraid' I get people with email addresses with 'afraid.org' in them. That search does not find anything containing 'xbit', 'x-bit' or '340'.
19:36:17 <fizzie> Vorpal: I was assuming some sort of an EXIF airplane tag.
19:36:52 <nortti> http://www.bbc.co.uk/news/world-us-canada-19381098
19:37:01 <Vorpal> fizzie, I believe there might be a IPTC one. It seems that my program ended up saving it in there
19:37:04 <Vorpal> IPTC Title
19:37:20 <fizzie> Vorpal: "Title: Robinson R-44 Clipper II"
19:37:22 <fizzie> So it seems.
19:37:23 <Vorpal> indeed
19:37:30 <Vorpal> did dropbox show it?
19:37:40 <fizzie> No, I picked "download" and ran exiftool on it.
19:37:43 <Vorpal> anyway I just googled the registration to find the model for that one
19:37:45 <Vorpal> ah
19:39:10 <fizzie> It has your name in the "Copyright", "Rights", "Creator" and "Copyright Notice" fields.
19:39:39 <zzo38> I have tried to send some messages to the system operator but it seem they have not received them.
19:40:39 <Vorpal> fizzie, cool
19:40:53 <Vorpal> fizzie, I just put it in in "author" in the program
19:41:08 <fizzie> I suppose it tries to put it in everything that's commonly used.
19:41:25 <Vorpal> probably
19:41:26 <kmc> nortti: :(
19:41:52 <Vorpal> fizzie, does the file say which program was used?
19:42:29 <fizzie> Vorpal: It reports "DiMAGE A2 Ver.1.13" as the "Creator Tool", and "Adobe XMP Core 5.3-c011 66.145661, 2012/02/06-14:56:27" as the "XMP Toolkit". (Some of these names might be exiftool-specific for all I know.)
19:42:37 <Vorpal> DiMage A2 is the camera
19:42:49 <Vorpal> as for the second, hm interesting
19:43:10 <fizzie> Vorpal: And "Microsoft Corporation" as the "Primary Platform", whatever that means.
19:43:21 <Vorpal> well I was booted into windows when I did it
19:43:29 <Vorpal> I shot the photo as RAW (12 bits per channel) and in the AdobeRGB as the colour space
19:44:14 <Vorpal> fizzie, I presume it has a colour profile embedded too?
19:45:00 <fizzie> Mhm, the jpeg has a "IEC 61966-2.1 Default RGB colour space - sRGB" Device Model Desc, and a "sRGB" Device Model, and then quite a few numbers.
19:45:11 <fizzie> http://sprunge.us/IROZ <- exiftool output.
19:45:56 <Vorpal> it stripped all the EXIF data though it seems
19:46:08 <fizzie> Yes, not much about the camera in there.
19:46:15 <fizzie> At least reported by this thing.
19:47:21 <fizzie> exiv2 (the other command-line EXIF tool I have) just says http://sprunge.us/FZSC which is pretty sparse.
19:47:24 <Vorpal> "Profile Copyright : Copyright (c) 1998 Hewlett-Packard Company"
19:47:26 <Vorpal> interesting
19:47:49 <Vorpal> fizzie, aww, it can't read IPTC (or you need to use an option for that)
19:48:17 <fizzie> Maybe it needs an option, the man page does mention IPTC.
19:48:18 <Vorpal> "Technology : Cathode Ray Tube Display" <-- really?
19:48:35 <fizzie> Ah, it defaults to a "summary" mode.
19:49:40 <Vorpal> fizzie, as for the program I used, it was Adobe Photoshop Lightroom CS6 + Adobe Photoshop CS6. Because Gimp fails at more than 8 bits per channel.
19:50:03 <fizzie> http://sprunge.us/hPDj <- 'exiv2 -p a' which should print all of Exif, IPTC and XMP.
19:50:13 <fizzie> It's a lot shorter than the exiftool output, still.
19:50:28 <Vorpal> nothing about profiles there for examp
19:50:30 <Vorpal> example*
19:51:20 <Vorpal> anyway the exif data would not make sense since I cropped the picture.
19:51:48 -!- asiekierka has quit (Remote host closed the connection).
19:52:46 <zzo38> If you need more than 8 bits per channel you could use ImageMagick Q16.
19:52:53 <fizzie> I was under the impression that Gimp was finally (at least close to) getting the high-depth cases right.
19:53:08 <Vorpal> oh?
19:53:12 <Vorpal> that is news to me
19:53:15 <fizzie> Apparently the current 2.9 devel branch does it.
19:53:19 <Vorpal> nice
19:53:30 <fizzie> "After 3.5 years of blood, sweat and tears the GIMP team announced the release of GIMP 2.8. But good things come in pairs.
19:53:33 <fizzie> The new stable version features improvements in almost all aspects: UI, tools, painting features, resources. A detailed review is in works, for now please have a look at the official release notes.
19:53:37 <fizzie> Now, the even better news is that since few days internal pipeline of the development version can work in 16bit and 32bit per color channel mode, both integer and float. This finally makes high bit depth precision available and opens up high dynamic range imaging for GIMP."
19:53:43 <Vorpal> also I'm debating if I want to remove the lens distortion or not on this image. The barrel effect is quite fitting in this case...
19:53:46 <fizzie> Maybe will take them a while to actually get it out.
19:53:59 <Vorpal> (I created a profile for my camera and lens in the fancy adobe tool)
19:54:26 <fizzie> I've heard Lightroom is pretty fancy.
19:54:36 <Vorpal> very good for organizing and tagging stuff
19:54:51 <Vorpal> like the geotagging by built in google maps thingy
19:57:10 <fizzie> I've tagged a few datasets by having the N900 record a .gpx track, and then using 'gpscorrelate' on a pile of files from the camera. (It reads a .gpx file, EXIF timestamps from images, and then fills the EXIF geotags by correlating between the .gpx track timestamps and the photos.)
19:57:57 <kmc> shiny
19:58:02 <Vorpal> fizzie, uploading another one
19:58:23 <fizzie> (Except I never remember to sync the camera clock with the GPS time beforehand, so I have to fiddle in an offset.)
19:58:32 <Vorpal> fizzie, and that would work yeah, I wonder if I can make one of those files on android. Probably
19:58:55 <Vorpal> would drain battery though
19:59:18 <Vorpal> still uploading...
19:59:33 <fizzie> Probably; GPX is kind of the de-facto standard interchange format. (And anyway gpsbabel translates between everything that can store a track.)
19:59:50 <Vorpal> uploaded
19:59:53 <Sgeo> Neil Armstrong's dead :(
20:00:07 <fizzie> I have a separate Garmin Geko 201-or-something GPS receiver, I've gotten some tracks from that too. Has the benefit of not draining the phone battery.
20:00:10 <Vorpal> fizzie, https://www.dropbox.com/sh/kddhwd2j42bucz3/QgKbpICEy_
20:00:39 <olsner> Sgeo: died on the moon along with the rest of the Apollo 13 crew?
20:00:50 <Vorpal> fizzie, I feel that the slight-fisheye effect and the vignetting added to the second image
20:01:01 <Vorpal> it was just too sterile otherwise
20:01:19 <Vorpal> there are some reflections from the window on the right
20:01:43 <fizzie> Yeah, I was just in the process of typing: Very slight window reflections, I see you weren't hanging out of the door of the chopper. :p
20:02:03 <Vorpal> fizzie, I don't think I would have been allowed that
20:02:06 <Vorpal> :
20:02:09 <Vorpal> :(
20:03:18 <Vorpal> hm this is a nice image of a gyrocopter...
20:03:29 <Phantom_Hoover> Neil Armstrong died?
20:03:32 <Phantom_Hoover> :((
20:03:37 <Vorpal> ouch
20:04:44 <fizzie> Phantom_Hoover: Fortunately, Lance Armstrong is still going strong. (Well, except for... you know.)
20:05:48 <Vorpal> fizzie, ufraw can't remove TCA can it? I guess hugin can but meh
20:06:15 <zzo38> Hold second one as you hold a pencil.
20:06:48 <Phantom_Hoover> They should bury him on the moon.
20:06:49 <fizzie> Vorpal: I'd guesstimate that it can't.
20:07:03 <Vorpal> right
20:07:52 <kmc> hm do i want this ThinkPad X1 Carbon
20:08:00 <fizzie> Vorpal: dcraw seems to have a thing that just enlarges the red/blue layers that you can use for ad-hoc chromatic aberration correction, but that sounds slightly fiddly.
20:09:54 <Vorpal> indeed
20:10:27 <Phantom_Hoover> "In 1972, Armstrong was welcomed into the town of Langholm, Scotland, the traditional seat of Clan Armstrong; he was made the first freeman of the burgh, and happily declared the town his home.[108] The Justice of the Peace read from an unrepealed 400-year-old law that required him to hang any Armstrong found in the town.[109]"
20:10:34 <Phantom_Hoover> Dodged a bullet there.
20:10:38 <Phantom_Hoover> Or a noose, I guess.
20:10:40 <Vorpal> fizzie, new photo up, this one should have a lot more metadata
20:12:19 <oerjan> <Sgeo> Neil Armstrong's dead :( <-- darn i was just earlier today wondering if he was still alive when talking with a friend
20:12:27 <Vorpal> fizzie, well? Analysed that yet?
20:12:34 <Vorpal> ;P
20:12:48 <oerjan> we were doing a quiz where he was the answer :(
20:13:08 <fizzie> Vorpal: http://hugin.sourceforge.net/docs/manual/Tca_correct.html has an example of how to run the standalone hugin "tca_correct" and then pick the parameters into dcraw. Though I'm not sure how sensible that'd be since the 'fulla' tool has more degrees of freedom.
20:13:41 <Phantom_Hoover> oerjan, was the question "is Neil Armstrong still alive"?
20:14:01 <fizzie> Vorpal: http://sprunge.us/WELZ - yeah, that's quite a lot more stuffs.
20:14:04 <Vorpal> History Software Agent : Adobe Photoshop Lightroom 4.1 (Windows), Adobe Photoshop Camera Raw 7.1 (Windows), Adobe Photoshop CS6 (Windows), Adobe Photoshop CS6 (Windows), Adobe Photoshop Camera Raw 7.1, Adobe Photoshop Camera Raw 7.1 (Windows) <-- huh? It added camera raw several times
20:14:09 <olsner> hurr, "temporal cold war" :(
20:14:58 <fizzie> Vorpal: Some sort of multi-stage process and it tags one every time it does a thing? :p
20:14:59 <oerjan> no. it was about who made a book in 2005 or thereabouts, and he was an obvious candidate if alive
20:15:16 <Vorpal> fizzie, yeah except there weren't quite that many stages :P
20:15:18 <fizzie> "History Action: saved, derived, saved, saved, converted, derived, saved, saved, saved"
20:15:24 <fizzie> That's a well-saved file.
20:15:51 <Vorpal> fizzie, it went lightroom -> camera raw -> photoshop -> (in photoshop): save for web
20:16:07 <Vorpal> oh yeah I cropped it a bit in photoshop too
20:16:36 <Vorpal> fizzie, hm looks like it excluded the vendor specific block?
20:16:45 <Vorpal> my camera tends to have a LOT of stuff in that
20:16:46 <fizzie> Well, from the timestamps, the two last stages happened during the same second, as did the two before that.
20:16:54 <fizzie> Possibly didn't know how to decode it.
20:16:57 <Vorpal> it had timestamps too!
20:16:59 <Vorpal> gee
20:17:17 <fizzie> Though it usually says if it doesn't know how to read some MakerNotes things.
20:17:21 <fizzie> I get that for N900 pics.
20:17:30 <Vorpal> fizzie, I know either exiftool or exiv2 can decode it... Maybe photoshop can't?
20:17:55 <fizzie> Perhaps that's where it fell off. Though it *could* just copy it forward.
20:18:03 <oerjan> oh right the book was "First man" (the quiz theme was "first and last")
20:18:21 <Vorpal> fizzie, ufraw copies it forward. But it doesn't handle the endianness properly
20:18:41 <Vorpal> so if you save as tiff it should byteswap it compared to the mrw raw file, but it doesn't
20:19:21 <fizzie> "Warning: [minor] Unrecognized MakerNotes" is what exiftool says on a N900 pic. Don't know if there's anything especially interesting in there, probably not.
20:20:39 -!- centrinia has quit (Read error: Connection reset by peer).
20:21:32 <fizzie> Also, there's something missing in the N900 EXIF metadata, because Hugin asks for a manual FOV entry, while for the camera picks it deduces it from the metadata.
20:21:57 <fizzie> (Well, FOV or the focal length multiplier, but anyway.)
20:23:05 <fizzie> Both images have the "Focal Length" tag as reported by exiftool, but the N900 one is missing the "Focal Length In 35mm Format", maybe that's it.
20:23:13 <Vorpal> hm
20:23:28 <fizzie> And the "Scale Factor To 35 mm Equivalent" for that matter.
20:23:36 <Vorpal> fizzie, right, it does that for my phone camera too
20:24:17 <Vorpal> fizzie, example exiftool -v output http://sprunge.us/Xigb showing which info is from the maker notes
20:24:38 <Vorpal> (quite a bit, though some is duplicated)
20:26:13 <fizzie> exiftool -v for my camera: http://sprunge.us/GcHO
20:26:24 <fizzie> It has all the most useful fields, like BabyAge.
20:26:49 <Vorpal> huh
20:26:51 <Vorpal> wtf is that
20:27:02 <fizzie> There's some sort of a baby photography mode.
20:27:06 <fizzie> I've only seen it in the manual.
20:27:09 <Vorpal> eh...
20:27:14 <fizzie> I don't really recall what it was all about.
20:27:18 <Vorpal> and it guesses their age?
20:27:23 <Vorpal> creepy
20:27:26 <fizzie> No, you enter the date of birth.
20:27:29 <Vorpal> I see
20:27:34 <fizzie> Then it records the age in the image, or something.
20:27:44 <fizzie> I don't really remember what the point was, if there even was one.
20:28:01 <Vorpal> well if 9999:99:99 means "no data", then they selected a stupid date... The camera is not future proof
20:28:14 <Vorpal> would have been better to go for a date far in the past
20:28:27 <fizzie> Yeah, it'll fail when it comes to the 99th day of the 99th month.
20:28:29 <Vorpal> or even out of band metadata
20:28:46 <Vorpal> fizzie oh come on, the earth's rotation slows down over time
20:28:59 <Vorpal> hm actually, that would go the other way
20:29:00 <Vorpal> right
20:29:03 <Vorpal> nvm
20:29:06 <fizzie> I have the PDF manual, let's see what the babies were all about.
20:29:12 <fizzie> There's BABY 1, BABY 2 and PET modes.
20:29:18 <kmc> this thing is basically the ThinkPad Air
20:29:21 <fizzie> I'm guessing they all use the BabyAge.
20:29:25 <Vorpal> kmc, what is?
20:29:34 <Vorpal> fizzie, what do they do?
20:29:38 <Vorpal> those modes I mean
20:30:14 <kmc> ThinkPad X1 Carbon
20:30:40 <Vorpal> heh
20:30:48 <Vorpal> kmc, you have one?
20:31:09 <kmc> no
20:31:58 <fizzie> Vorpal: Apparently the main thing they do is that after you've set the dates of birth for your BABY 1, BABY 2 and PET, then images taken with that mode active will show the age of the thing in question when browsing with the camera (and maybe with Panasonic's software?). But the BABY 1/BABY 2 modes do also "take pictures of a baby with a healthy complexion", plus it dials down the flash power.
20:32:26 <fizzie> "The age can also be printed on each picture by using the software [LUMIX Simple Viewer] or [PHOTOfunSTUDIO-viewer-] in the CD-ROM (supplied)."
20:32:29 <fizzie> Right.
20:32:35 <fizzie> Also PHOTOfunSTUDIO is possibly the stupidest name.
20:32:59 -!- atriq has quit (Ping timeout: 260 seconds).
20:33:11 <Vorpal> yes it is
20:34:34 <Vorpal> fizzie, at least my phone camera has a slightly useful gimmick... Face recognition. It shows a yellow box around the detected face in the gallery, then it lets you set who that is. And based on previous selections it even (moderately successfully) suggests names when tagging.
20:34:58 <Vorpal> Oh and it asks if you want to use that image as the profile picture for that contact every time you tag.
20:35:00 <fizzie> There's also a "TravelDay" field set to 65535, I see. That's probably some other silly mode that shows you which day of your vacation it is.
20:35:12 <fizzie> Don't have face detection here, but I've heard they've been putting that in.
20:36:29 <Vorpal> fizzie, at least my proper camera only have the usual portrait/sport/landscape/night gimmick modes
20:36:42 <fizzie> This one has quite a few.
20:37:18 <Vorpal> personally I just use mostly auto, auto shutter, auto time and full manual modes. There is also a second auto mode, that is even more auto than plain auto
20:37:22 <Vorpal> never use that
20:37:37 <fizzie> The "Scene mode" (i.e. gimmick mode) has: portrait, soft skin, scenery, sports, panning, night portrait, night scenery, food, party, candle light, baby 1, baby 2, pet, sunset, high sens., starry sky, fireworks, beach, snow, aerial photo.
20:38:17 <Vorpal> what do they do? (Apart from the utterly silly baby and pet ones)
20:38:22 <Vorpal> just different tinting and such?
20:38:30 <kmc> does it have hipster 1970's camera mode
20:38:40 <Vorpal> kmc, what does that look like?
20:38:43 <fizzie> Probably not much. I'll check, but the manual probably doesn't go into too much detail.
20:38:49 <kmc> it looks like instagram
20:39:10 <Vorpal> kmc, the pain
20:39:29 <fizzie> Vorpal: The "smooth skin" mode for example actually does some skin blurring. Since it warns: "If a part of the background etc. is a color close to skin color, this part is also smoothed."
20:39:47 <Vorpal> heh
20:40:24 <fizzie> Other than that, they mostly seem to tweak the automatics when it comes to shutter, aperture, WB and such.
20:40:25 <kmc> does it also blur black people
20:40:33 <fizzie> At least I assume so, it doesn't actually say.
20:40:48 <kmc> does it have a mode to automatically pixellate genitalia
20:41:05 <fizzie> Oh, and "high sens." mode goes up to ISO 3200 by decreasing the resolution.
20:41:09 -!- rodgort has quit (Ping timeout: 260 seconds).
20:41:36 <Vorpal> ouch
20:41:45 <fizzie> Incidentally, the "more auto than auto" mode this camera also has is pretty much useless, since it's an "intelligent ISO" mode, and the "intelligent" seems to be a synonym for "high", and the sensor's really very noisy for anything >100, esp. >=400.
20:41:59 <fizzie> At least in auto mode one can lock that, or give a maximum value.
20:43:22 <fizzie> Fireworks mode, sadly, won't actually do any kind of "look at fireworksy thing in the live preview", you'll still have to self know when to press the shutter key.
20:43:28 -!- rodgort has joined.
20:43:52 <fizzie> From what I've heard, modern cameras can go even sillier when it comes to special effects.
20:44:15 <fizzie> Mine doesn't even do the sepia tone thing, which I think is almost standard now for the "pocket" cameras.
20:44:32 <fizzie> They also have the "one part of the image in color, everything else in black-and-white" trick built-in.
20:45:32 <fizzie> Beach mode's warnings: "* Do not touch the camera with wet hands. * Sand or seawater will cause the camera to malfunction. Make sure that sand or seawater does not get into the lens or the terminals. * Problems caused by sand or seawater are not covered by the product warranty." :p
20:45:40 -!- atriq has joined.
20:46:07 <fizzie> And for aerial photo mode: "When using the camera, follow all instructions from the cabin crew."
20:46:18 <fizzie> I guess they couldn't resist adding some common sense in the manual too.
20:46:34 <fizzie> At least it doesn't say "don't drop the camera out of the plane".
20:47:04 <Vorpal> fizzie, another one done soon
20:48:51 -!- copumpkin has quit (Ping timeout: 276 seconds).
20:48:51 <Vorpal> fizzie, another one up
20:49:07 <fizzie> I think I'll just look at this one, instead of digging into the metadata. :p
20:49:23 <Vorpal> fizzie, yeah it is pretty stripped
20:49:29 <fizzie> Though it's a bit of a shame that Dropbox's album thing doesn't show the title anywhere.
20:49:36 <Vorpal> it is a AJ 37 Viggen
20:49:48 <Vorpal> fizzie, I believe you had those in Finland too?
20:49:48 <fizzie> "But of course." :p
20:50:09 <Vorpal> or was it J 35 Lansen you had?
20:50:17 <Vorpal> one of the two I think
20:50:32 <Vorpal> or hm, J 35 Draken?
20:50:57 <Vorpal> you had Draken.
20:51:01 <fizzie> 35 Draken's infobox lists "Finnish Air Force" as one of the "Primary users".
20:51:03 <fizzie> Yes.
20:51:36 <fizzie> I don't really know about this stuff; though my wife's brothers are very enthusiastic about trains and planes and such.
20:51:51 <Vorpal> heh
20:52:07 -!- copumpkin has joined.
20:52:14 <fizzie> I just know they've bought the US Hornets, and that only because the papers were full about the debates on whether that's worth the money.
20:53:07 <fizzie> (This was a reasonably recent thing.)
20:53:45 <fizzie> Also there was a recent headling about the Americans messing up some paperwork on a missile order for the F-18's.
20:54:51 <Vorpal> fizzie, you might want to watch the videos when I get around to them. I wonder where I would upload those. Youtube comes to mind but hrrm.
20:55:30 <Vorpal> anyway that is a lot of editing ahead to get something usable out of that
21:00:37 <Vorpal> fizzie, btw, was it worth the money?
21:00:58 <fizzie> I have no clue, just that people had different opinions on that.
21:01:10 <fizzie> They weren't exactly cheap, I remember that much.
21:02:11 <fizzie> 3.16 billion euros, apparently.
21:02:17 <Vorpal> each?
21:02:30 <fizzie> The whole order, I think.
21:02:53 <fizzie> 3.16 billion times 64 sounds a bit too much. :p
21:03:39 <fizzie> Also 1.625 billion euros for the current update/upgrade order they have going.
21:03:57 <fizzie> (I think this involves the missiles with the missing paperwork.)
21:04:17 <Vorpal> oh right, EUR
21:05:19 <fizzie> Apparently the per-plane price was something like 25 million EUR.
21:08:02 <fizzie> But they have a lot of "closing down locations and laying off 2200 people" savings plans happening, so people are commenting on the rationality of doing that while at the same time putting 1.6 billion to the Hornet upgrade.
21:09:13 <Vorpal> fizzie, another one uploaded (J 32 Lansen, the model before J 35 Draken, that you guys had): https://www.dropbox.com/sh/kddhwd2j42bucz3/QgKbpICEy_#f:lansen1.jpg
21:32:37 -!- atriq has quit (Ping timeout: 240 seconds).
21:37:56 -!- pikhq_ has quit (Ping timeout: 245 seconds).
21:38:10 -!- pikhq has joined.
21:46:18 -!- atriq has joined.
21:57:14 -!- monqy has joined.
21:57:19 -!- atriq has quit (Ping timeout: 252 seconds).
21:57:24 <Phantom_Hoover> fizzie, at least it's not as bad as the UK military deciding to pay for an aircraft carrier by not building any more planes.
22:01:05 <oerjan> ...
22:01:17 <oerjan> clever.
22:01:37 -!- MoALTz has quit (Ping timeout: 240 seconds).
22:06:33 -!- atriq has joined.
22:16:59 -!- augur has quit (Remote host closed the connection).
22:24:16 -!- atriq has quit (Ping timeout: 244 seconds).
22:36:14 <zzo38> Do you know if just intonation results in a better (or worse) audio compression than equal temperament?
22:39:39 -!- augur has joined.
22:39:57 -!- atriq has joined.
22:52:30 <Phantom_Hoover> "Smoking cessation (colloquially quitting smoking) is the process of discontinuing the practice of inhaling a smoked substance." -- WP
22:52:44 <Phantom_Hoover> Does anyone not call it 'quitting smoking'.
22:53:27 -!- ais523 has joined.
22:54:06 -!- atriq has quit (Ping timeout: 264 seconds).
23:02:06 -!- oonbotti has quit (Ping timeout: 276 seconds).
23:14:48 <kmc> medical literature
23:15:03 <kmc> and phrases like "smoking cessation aid" rather than "quitting smoking aid"
23:18:16 <Phantom_Hoover> Incidentally there are cigarette reviews on YouTube.
23:18:28 <Phantom_Hoover> I don't know why that surprised me, but it did.
23:24:35 <Vorpal> <Phantom_Hoover> fizzie, at least it's not as bad as the UK military deciding to pay for an aircraft carrier by not building any more planes. <-- they did that?
23:24:43 <Phantom_Hoover> More or less.
23:24:46 <Vorpal> ouch
23:25:19 <Vorpal> <Phantom_Hoover> Does anyone not call it 'quitting smoking'. <-- whoever wrote that text you quoted?
23:25:47 <Phantom_Hoover> That's Wikipedia, Wikipedia isn't a person.
23:26:13 <Vorpal> indeed, but somewhere a person wrote that line of text
23:26:35 <Vorpal> anyway, night
23:26:37 <Phantom_Hoover> I'm not certain that they did.
23:27:14 <Phantom_Hoover> Re aircraft carriers, http://www.bbc.co.uk/news/uk-politics-11570593
23:27:20 <Phantom_Hoover> "Axing the Harrier and Ark Royal means no planes will be able to fly from British aircraft carriers until 2019.
23:27:21 <Phantom_Hoover> "
23:27:47 <kmc> brilliant
23:28:35 <shachaf> zzo38: I would imagine that it doesn't make a difference if you're talking about the recording of any actual instrument.
23:29:04 <shachaf> Unless you're comparing across instruments, in which case it's a bit of a silly comparison anyway.
23:30:42 <oerjan> Vorpal: i just tried to look up "polarn" and "pyret" in wiktionary, i only found the former means "the buddy" in swedish, but what does the latter mean?
23:31:09 -!- Vorpal has quit (Ping timeout: 260 seconds).
23:31:15 <oerjan> darn he just said good night
23:31:32 <oerjan> olsner doesn't look awake either :(
23:32:08 * oerjan swats FireFly -----###
23:32:12 <oerjan> YOU'RE NEXT
23:35:11 <oerjan> 'So what does “Polarn O. Pyret” actually mean? Well it means “Buddy and the little one” in Swedish [...]'
23:35:17 <oerjan> ok then
23:48:13 -!- impomatic has quit (Quit: impomatic).
23:49:38 <kmc> maybe it's not completely nonsensical
23:49:46 <kmc> maybe it's easier to buy or build planes quickly in an emergency
23:50:42 * oerjan ponders this, watching the pigs fly by
23:52:28 <kmc> watching for pigs on the wing?
23:52:58 <zzo38> shachaf: But what if it is music programmed by computer?
23:54:13 -!- augur has quit (Remote host closed the connection).
23:57:57 -!- pikhq has quit (Ping timeout: 252 seconds).
23:58:00 -!- pikhq_ has joined.
2012-08-26
00:01:49 -!- augur has joined.
00:02:42 -!- augur has quit (Remote host closed the connection).
00:03:43 <Phantom_Hoover> Hey pikhq_?
00:04:09 <Phantom_Hoover> Remember that company we thought owned the world until we looked closer and realised they only owned like a percent of it?
00:04:13 <Phantom_Hoover> What was it called again?
00:05:30 <pikhq_> Don't remember at all.
00:08:17 <Phantom_Hoover> Argh.
00:08:37 <Phantom_Hoover> I remember that 'deposit-" and "company" were there somewhere.
00:36:40 -!- augur has joined.
00:45:34 -!- kinoSi has quit (Read error: Connection reset by peer).
00:45:44 <shachaf> zzo38: "just intonation" is a tricky thing for sufficiently complex music.
00:46:01 -!- kinoSi has joined.
00:46:22 <shachaf> You might in some cases have a lot of similar notes that are all approximated by the same eqaul-temperament note. So maybe that would compress worse?
00:46:25 <oerjan> i don't see why it should be so tricky, it's just intonation
00:46:28 <shachaf> (But why do you care?)
00:46:36 <shachaf> oerjan++
00:47:36 <kmc> "Then there's the nondescript design, and the marriage of necessity to business features like the TrackPoint (the red nub in the middle of the keyboard). The nub especially feels extraneous for most users now that the trackpad actually works the way it should, but business being business, alienating a mass of outmoded users isn't going to fly." -- gizmodo
00:47:41 <kmc> wow gizmodo you did not just say that
00:48:34 <Phantom_Hoover> Man that's a lot of needless Latinate.
00:49:11 <shachaf> kmc: I didn't know I was a business user. :-(
00:49:25 <kmc> apparently anyone who types a lot and dosen't want to get RSI from reaching to the mouse is "outmoded"
00:49:25 * shachaf doesn't use a ThinkPad at all anymore, actually.
00:49:37 <shachaf> But when I did I preferred the TrackPoint® to the touchpad.
00:50:19 <kmc> what do you use now?
00:51:17 <pikhq_> Urgh. Trackpoint's really kinda handy if you need small amounts of mouse movement.
00:51:41 <kmc> yes
00:51:43 <pikhq_> A touchpad's a bit better if you're going to be primarily mousing. Or, y'know, a real mouse.
00:51:45 -!- Rain777 has joined.
00:51:47 <ion> Yeah, the Thinkpad nipple is awesome.
00:52:04 <shachaf> A Dell XPS 15. It's not as good as the ThinkPad but it works.
00:52:17 <pikhq_> Of course, you can just use *both* depending on what's optimal for your current task.
00:52:48 <kmc> yeah, my current machine has both
00:52:49 <Rain777> good evening !!
00:52:55 <ion> Small touchpads are horrible. Tap-to-click is horrible as well. Apple touchpads are almost as good as nipples, though.
00:53:17 <pikhq_> Heck, for a wasd-style game the Trackpoint is pretty awesome I'd imagine...
00:53:24 <kmc> i use the trackpoint when i need a bit of mousing in the middle of writing something
00:53:36 <kmc> i use the touchpad when i'm just reading websites, mostly because it does the right edge scroll thing
00:53:48 <pikhq_> Given that there the mouse is being used more as directional input rather than pointing.
00:54:05 <ion> I used the hold-middle-mouse-button-down-and-move-nipple thing for scrolling.
00:54:08 <shachaf> I would like to change the way I use computers to require minimal mouse input.
00:54:11 <kmc> the X1 Carbon is pretty expensive :/
00:54:19 <ion> Much nicer than the side scroll thing with a touchpad IMO.
00:54:22 <pikhq_> shachaf: Have you considered using a tiling WM?
00:54:28 <kmc> though computers overall keep getting cheaper
00:54:30 <shachaf> A mouse is good for analog things, but very few of the things I do are analog.
00:54:41 <kmc> i remember when any halfway decent computer (for its time) would be at least $2000
00:54:44 <shachaf> pikhq_: I have used a tiling WM!
00:54:58 <shachaf> pikhq_: But I barely use the mouse with my current non-tiling WM.
00:55:41 <kmc> if you want to use the mouse more efficiently, you should switch to a toroidal mouse geometry
00:55:44 <kmc> seriously
00:55:48 <ion> I like how Ubuntu’s Unity project has enabled much more keyboard accessibility than before.
00:56:01 <pikhq_> $2000 practically buys you a behemoth nowadays.
00:56:21 <oerjan> `welcome Rain777
00:56:28 <shachaf> ion: It has?
00:56:31 <HackEgo> Rain777: 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:56:37 <ion> kmc: What’s toroidal mouse geometry?
00:56:41 <ion> shachaf: yeah
00:56:53 <kmc> when you move the mouse off the edge of the screen, it teleports to the opposite edge
00:57:02 <kmc> i have synergy configured to do this
00:57:42 -!- Rain777 has left.
00:57:44 <ion> You can launch programs by hitting Windows™ and typing a part of the program name; you can select menu items by hitting Alt and typing a part of the menu item name; you can switch to a specific window with Windows™-{1,2,3,…} etc.
00:58:12 <shachaf> ion: Wasn't it more application-oriented like Mac OS X?
00:58:24 <shachaf> Except done even worse.
00:58:27 <ion> Sorry, yeah, a specific application.
00:58:47 <ion> Dunno about worse since i’m not that familiar with OSX, but i’ve certainly liked Unity.
00:58:48 <kmc> i have a program which lets me launch programs by typing part of the name
00:58:51 <kmc> it's called a terminal ;)
00:59:06 * kmc http://twitter.com/1990sLinuxUser mode
00:59:23 <ion> Yeah, “setsid fire<tab> && exit” is convenient indeed.
00:59:31 <shachaf> Just about every mainstream X11 desktop environment has had Alt-F2 bound to that for quite a while.
00:59:50 <kmc> ion: why setsid?
00:59:51 <ion> Alt-F2 doesn’t know about applications’ descriptions and keywords.
01:00:15 <kmc> xmonad is not mainstream :/
01:00:16 <ion> kmc: To have the terminal window go away immediately.
01:00:20 <kmc> obviously because it involves monads
01:00:26 <ion> xburrito
01:00:27 <kmc> ion: isn't «firefox & exit» good enough?
01:00:36 <ion> zsh: you have running jobs.
01:00:38 <ion> %
01:00:46 <shachaf> kmc: xmonad has never claimed to be mainstream.
01:00:57 <kmc> oh, zsh
01:01:08 <shachaf> ...It's too mainstream for me, though.
01:01:19 <shachaf> Remember back when xmonad was called "thunk"?
01:01:23 <kmc> i should finish that window manager i started writing
01:01:28 <kmc> then i could be a cool kid
01:01:34 <shachaf> kmc: Do it!
01:01:34 <kmc> shachaf: was it really?
01:01:35 <shachaf> I would use it.
01:01:39 <zzo38> What window manager did you start to writing?
01:01:45 <shachaf> kmc: Yep, that was the name before "xmonad".
01:01:49 <kmc> a static tiling wm in haskell
01:01:55 <kmc> with nicer code than xmonad ;)
01:02:01 <kmc> not that xmonad's code is terrible, but mine is nicer :)
01:02:11 <shachaf> The nicest code is code that you don't write in the first place.
01:02:15 <shachaf> Therefore kmc's WM has the nicest code.
01:02:37 -!- oerjan has quit (Quit: Good night).
01:02:38 <kmc> no, i have almost 500 lines of code
01:02:42 <kmc> but they do not a window manager make
01:02:49 <kmc> and we all know xmonad is only 500 lines of code except not at all
01:03:01 <shachaf> Is it as good as xmonad 0.1?
01:03:20 <shachaf> kmc: You should put your code up!
01:03:27 <shachaf> Since it's basically a WM already.
01:03:37 <kmc> much of that is a SDL-based mockup of the keyboard UI
01:03:48 <kmc> designing a good UI for static tiling operations is not that easy
01:03:55 <kmc> i should look at what other WMs do
01:03:58 * shachaf has no idea how the keyboard UI would work for a WM that works the way he wants.
01:04:35 <shachaf> I don't know if the way I want is the same as the way you want, but it seems close enough.
01:04:43 <shachaf> You used to use Ion3, right?
01:04:45 <kmc> in my model, each workspace is a tree where branching nodes are horizontal or vertical splits
01:04:47 <ion> Hehe, 1990sLinuxUser is awesome.
01:04:58 <kmc> ion: i know, right? my favorite part is the background image
01:05:03 <ion> kmc: Indeed!
01:05:25 <kmc> i think the conceptually simplest UI for navigating this tree is to have a key for parent, child 1, child 2
01:05:30 <kmc> but i think this kinda sucks to use
01:05:42 <kmc> probably you also want keys for in-order traversal of the leaves
01:05:49 <shachaf> Is there a reason to special-case workspaces?
01:06:10 <kmc> well, each split is binary, except the split into workspaces
01:06:18 <shachaf> As opposed to them just being the root of an xmonad "Full"-style thing.
01:06:23 <shachaf> Oh.
01:06:25 <kmc> and each split has a parameter to say how space is divided, except the split into workspaces
01:06:35 * shachaf was thinking of n-ary splits.
01:06:44 <kmc> you could have those, but the second point would remain
01:06:52 <shachaf> In Ion3 any window can be a "workspace" of its own.
01:06:59 <shachaf> You can have floating workspaces and so on.
01:07:04 <kmc> yeah, that's cool
01:07:40 <shachaf> And also any "window" can have multiple windows inside it as tabs.
01:08:04 <zzo38> My opinion is how the keyboard UI works would be: All window and widgets are hover focus, and you can push the key to switch between widgets (such as TAB) and key to switch between windows (such as the window manager's key and TAB together), and doing so move mouse pointer to that position.
01:08:24 <kmc> zzo38: I'm mainly concerned with how you create, adjust, and delete splits
01:08:29 <zzo38> I would think it would be best to have both tiled and floating windows.
01:09:22 <kmc> i never put in the effort to learn how ion actually models all this
01:09:33 <kmc> from the outside it seemed excessively complicated
01:09:44 <zzo38> kmc: At least how I would do is, to adjust splits have one of the mouse buttons assigned for that purpose when you click the border using that button.
01:10:13 <shachaf> My list of "window managers that seemed interesting" also includes Enlightenment, although it's a floating WM.
01:10:16 <shachaf> I don't remember why.
01:11:06 <zzo38> I would have the widgets basically Athena-style except that keyboard commands can also be used instead of or in addition to the mouse.
01:13:11 <kmc> what are the choices for static tiling wms, anyway?
01:13:12 <zzo38> Some people might not like this of course; some people may prefer programs with Motif or GTK widgets. I prefer SDL.
01:13:25 <shachaf> kmc: You should get the WM to a working state before you're too busy to!
01:14:35 <zzo38> Yes
01:14:44 <shachaf> In one sense all floating WMs are static.
01:14:56 <shachaf> Oh, you did say "tiling".
01:15:26 <kmc> ion/notion, stumpwm, ratpoison, wmii, ?
01:16:15 <kmc> i think awesome is dynamic and the name annoys me anyway
01:16:16 <shachaf> wmii is very similar to dwm, isn't it?
01:16:33 <ion> “notion” would be an awesome name for a window manager.
01:16:41 <shachaf> ion: "notion" exists.
01:16:43 <shachaf> It's a fork of Ion.
01:16:45 <ion> duh
01:16:59 -!- derdon_ has joined.
01:17:01 <kmc> and wmii is from suckless.org which also annoys me
01:17:13 <kmc> for me, annoyance is a full time job
01:17:24 <kmc> shachaf: the thing is, xmonad is Good Enough
01:17:37 <shachaf> kmc: Xfce is also Good Enough.
01:17:37 <zzo38> I would think the window system should instead of X, it should be based on SDL. They can include some built-in commands for clipboard (although it could just be /proc/$WINPID/userfs/clipboard if you have that kind of user filesystem mode), fix 8x8 and 8x12 whatever monochrome fonts, etc
01:17:49 <shachaf> At least, the difference between xfce and xmonad is small enough that I haven't bothered to set it up.
01:17:57 <kmc> i get by fine in xmonad with just full and two-column layouts
01:18:18 <kmc> btw, gimp now has a "one window" mode which works pretty well
01:18:29 <kmc> xmonad's floating window support is pretty wonky
01:18:45 <shachaf> I used GIMP with xmonad.
01:18:53 <kmc> me too
01:19:08 <pikhq_> zzo38: Oddly enough, I think you'd at least somewhat like Wayland.
01:19:15 <shachaf> The idea of having a WM inside an application kind of annoys me.
01:19:27 <shachaf> Even though the application knows more about its windows.
01:19:30 <zzo38> pikhq_: Yes I do somewhat like Wayland.
01:19:50 -!- derdon has quit (Ping timeout: 252 seconds).
01:20:10 <kmc> yes
01:20:56 <kmc> the window managers i use are xmonad, screen, irssi, chromium, and finch
01:20:57 <ion> If it’s made into a library that *everything* uses so that all the windows behave the same way and look alike and if you can still move and close windows owned by processes that are stuck, i’m totally happy with it.
01:20:59 -!- augur has quit (Remote host closed the connection).
01:21:18 <kmc> i don't do splits with any except the first
01:21:34 <kmc> finch supports overlapping windows of any size, it's completely ridiculous
01:21:45 <shachaf> Also vim.
01:22:56 <kmc> i don't use vim for window management
01:26:02 <kmc> ok we're trying out the "irssi.so" window manager for GNT, the curses tooklit used by Finch
01:27:56 <kmc> trip report forthcoming
01:28:16 <shachaf> We?
01:28:59 <kmc> I, the royal "we"... you know, the editorial
01:31:27 <shachaf> A magazine I read when I was much younger had an editoral, which was called something like "words of the editor".
01:31:42 <shachaf> Except it had a handwritten font in which "editor" looked a lot like "crow".
01:31:55 <shachaf> So I thought it was "words of the crow".
01:34:49 <ion> I’d like to have a horizontally looping desktop of arbitrary width and a height equal to the monitor’s height. I’d like to be able to place windows to the desktop side-by-side (never overlapping and never with space between them) and to scroll horizontally whenever its width is greater than that of my monitor. The desktop should grow and shrink automatically to fit the windows. Scrolling should snap
01:34:51 <ion> windows’ left-hand edges to the monitor’s left-hand border, and moving windows’ right-hand edges to resize them should snap to the monitor’s right-hand border.
01:35:51 <ion> There should be keyboard shortcuts to scroll to the next/previous window (so that their left-hand edge will match with the monitor’s left-hand border).
01:36:57 <soundnfury> kmc: what's wrong with suckless.org?
01:37:33 <ion> One could have e.g. a browser and a terminal side-by-side so that they fill the monitor exactly, but also a music player next to the terminal so that if you scroll to the right, the terminal and the music player will fill the monitor exactly.
01:38:38 <soundnfury> ion: that sounds like an interesting idea
01:39:06 <soundnfury> but maybe it'd be even better to be able to have a list of 'views' of the windows
01:39:47 <soundnfury> so you could implement that, but you could also be able to, say, always have your IRC client on the left and effectively scroll through what else should appear on the right
01:40:34 <soundnfury> obviously you'd want to embed a scripting language (perhaps Python? A mini-Lisp?) to programmatically define the views
01:40:44 <soundnfury> rather than just having a set of canned modes
01:41:33 <soundnfury> Then again, all this might have been done already
01:48:20 <kmc> soundnfury: oh, i'm probably biased because of the person who complained that mosh doesn't work in st, and talked like a cult member
01:49:32 <shachaf> kmc: You have a lot of biases. :-(
01:49:35 <kmc> yeah
01:49:46 <soundnfury> yeah, maybe you should join #lesswrong and get them to fix it ;)
01:50:19 <kmc> in general i feel like all this "suckless" "minimalist" stuff means "works only for the author, comes with a screed about how this is all anyone should need"
01:50:24 <soundnfury> I just wondered if there was anything I should know about suckless, since they listed my IRC client on their "Stuff that rocks" page
01:50:48 <kmc> (that's not a criticism of suckless.org specifically, just of the attitude they are latching onto)
01:51:12 <soundnfury> Ok, now I understand... because I have an attitude that could be characterised that way too
01:51:48 <kmc> any feature you do not personally use is "bloat"
01:52:05 <kmc> and 10 half-baked solutions to the same problem is better than 1 complete solution
01:52:11 <kmc> because the half-baked solutions are each "minimalist"
01:52:30 <shachaf> The other extreme is perhaps more dangerous.
01:52:36 <kmc> both extremes are dangerous, yes
01:53:18 <kmc> the best is software which has many features, but which is architected in such a way that you don't pay for the features you don't use
01:53:30 <kmc> don't pay in terms of performance, but most importantly in terms of code complexity and bugs
01:53:46 <kmc> that is, the features you aren't using should not cause bugs in the parts you are using
01:53:49 <kmc> obviously this is very hard
01:53:56 <shachaf> What's an example of that?
01:54:04 <kmc> beats me
01:54:34 <shachaf> Ah, kmc.
01:54:54 <kmc> maybe a programming language interpreter
01:55:01 <kmc> i'm not affected by bugs in python modules i haven't loaded
01:55:18 <shachaf> Many people describe C++ that way.
01:55:28 <shachaf> Though I don't think that's quite right.
01:55:28 <kmc> and module maintainers have relatively little ability to force the core python interpreter to adopt bad design decisions
01:55:37 <kmc> the language itself is a pretty resiliant abstraction barrier
01:55:51 <kmc> shachaf: yeah, but they're talking only about space/time usage and not about cognitive burden
01:55:57 <shachaf> Right.
01:56:43 -!- DHeadshot has joined.
01:56:53 <zzo38> Depending on the program and how it is, some things can be external files and separate programs that can be processed separately or piped or whatever.
01:57:30 <soundnfury> Incidentally, since we're on the subject of software development...
01:57:36 <shachaf> Uh-oh.
01:57:47 <soundnfury> I'm currently trying to decide how to implement scripting in quIRC
01:58:17 <shachaf> Invent your own language which is backwards-compatible with IRC commands.
01:58:18 <soundnfury> I have some ideas (and a half-finished spec) for a scripting language, but I had another idea too: symbionts
01:58:24 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:58:43 -!- DHeadshot has joined.
01:58:44 <zzo38> soundnfury: Probably it depend what you are doing with? There are a few possible ways.
01:58:45 <soundnfury> that is, make quIRC invoke symbiont processes (the scripts) and talk an application protocol to them
01:59:35 <soundnfury> that way you gain the ability to write scripts in any language, but otoh you can only do things there are hooks for
02:01:20 * Phantom_Hoover notes that the present phase of the moon is a waxing gibbous.
02:01:30 <Phantom_Hoover> That's like the worst one for Armstrong to die during.
02:01:59 <zzo38> At least what I have done in PHIRC is the script commands and local commands are like IRC except you put a slash in front; since PHIRC is written in an interpreted language you can also use that interpreter too, though. So, partially your choice will depend what programming language you use, what user interface, and what operating system.
02:02:05 <zzo38> Phantom_Hoover: Why?
02:02:26 <Phantom_Hoover> Gibbouses are the dumbest phase.
02:02:53 <Phantom_Hoover> You can't even describe it very well, it's just "that phase that's a bit more than half full".
02:03:27 <zzo38> Just describe it by the degrees in ecliptic longitude?
02:03:30 <soundnfury> Phantom_Hoover: The Moon is Waxing Gibbous (67% of Full). Full moon in NetHack in 5 days.
02:03:46 <soundnfury> (from #nethack:!pom)
02:04:06 <Phantom_Hoover> Thank you soundnfury for telling me something that I had just demonstrated knowledge of.
02:04:08 <soundnfury> zzo38: C, curses-like, *nix
02:04:27 <zzo38> Or by percentage?
02:04:38 <soundnfury> Phantom_Hoover: I was giving you a more precise description than "a bit more than half full"
02:04:43 <zzo38> You don't need to describe it as "gibbous" if you don't want to.
02:04:59 <soundnfury> # Do, do, do, the funky gibbous
02:05:05 <soundnfury> # we are here to show you how
02:06:13 <zzo38> Sun ecliptic longitude at 3 Virgo, Moon at 23 Sagittarius, so you subtract 263-153=110 degrees. (180 degrees = full moon)
02:07:07 <soundnfury> doesn't that assume the solar and lunar orbits are coplanar?
02:07:09 <zzo38> By the direction you can know the moon is going forward motion (counterclockwise on the diagram) so you can tell on the diagram the direction of wax/wane, and by aspect lines, whether the full moon is slightly before or slightly after or exact.
02:07:38 <soundnfury> zzo38: I'm not sure I follow your PHIRC explanation
02:07:46 <zzo38> soundnfury: It would seem so. But actually if they are then it is an eclipse. This orbit is used for measurement.
02:08:04 <zzo38> (So actually it is approximate but you have to use some plane of measurement, so the ecliptic is used.)
02:08:47 <soundnfury> but surely what you want to measure is something to do with the proportion of the moon's solid angle that's lit, as viewed from Earth
02:08:53 <zzo38> Because if it is actually moon exactly opposite to the sun, then it will be a lunar eclipse because the Earth is in the way.
02:09:47 <zzo38> So using all the angles it would never actually light the entire face of moon seen by Earth because the Earth is in the way.
02:09:53 <soundnfury> yeah but at "new moon" if it's not a solar eclipse then it'll be a (very very slim) crescent
02:10:13 <zzo38> Yes, that too.
02:10:17 <soundnfury> ah well, it's not important
02:10:33 <zzo38> Using ecliptic longitude only is what is generally done to calculate the phase of moon, I think.
02:12:02 <zzo38> Another common way to calculate phase of moon is by the time instead of by angle.
02:12:03 <kmc> maybe this "don't pay for features you don't use" is actually the most important reason to move things out of a language core and into the standard library
02:13:09 <zzo38> kmc: Yes, I agree you should put thing in a library. Even with Forth you can include most of the control structures and a lot of other things including syntactic stuff in a standard library too. With other programming languages the way it is done will differ.
02:14:06 <shachaf> kmc: Do you know the problem "generate a string of the form /[abc]{N}/ such that no substring appears twice in a row"?
02:14:29 <kmc> i think you mentioned it before
02:14:38 <shachaf> Oh.
02:14:42 <kmc> de bruijn sequences?
02:14:47 <shachaf> No, unrelated.
02:14:52 <shachaf> (I think?)
02:15:23 <soundnfury> hmm, is this going to relate to prime numbers in some way?
02:15:31 <soundnfury> (just a hunch)
02:15:32 <shachaf> De Bruijn sequences are sequences such that you can figure out a substring's position from its contents.
02:15:46 <kmc> right, which means each one appears at most once
02:15:54 <zzo38> And then there is Ecclesiastical phase of moon, which is slightly off from the actual phase of moon and is used to calculate the date of Easter, due to tradition.
02:15:59 <kmc> but it's for subsequences of a specific length
02:16:12 <kmc> anyway, please go on about this problem
02:17:27 <shachaf> In this case you're allowed e.g. "abcacbabca"
02:17:41 <shachaf> But you're not allowed a sequence that contains "aa" or "abab" or "abcabc".
02:17:44 <kmc> oh, twice *in a row*
02:17:46 <kmc> i missed that
02:17:52 <soundnfury> kmc: doesn't "to go on about something" have a meaning /subtly/ different to what you meant?
02:18:13 <shachaf> soundnfury: I think the meaning was clear here.
02:18:20 <soundnfury> yeah, but it's still funny
02:18:25 <kmc> don't my nuts have a meaning subtly close to your face
02:18:32 <soundnfury> no, they don't
02:18:54 <kmc> well then
02:18:56 <kmc> glad that's settled
02:19:34 <shachaf> Anyway, you can generate arbitrary-length sequences with this property.
02:19:56 <kmc> how do you generate them?
02:20:01 <soundnfury> I think I'll go for the symbiont method, and then _maybe_ implement my scripting language as just one option
02:20:47 <soundnfury> kmc: I think you can do a tree search, though there may be a better way
02:21:18 <soundnfury> eg. start with an a, now you can have either b or c (isomorphism, doesn't matter which, we'll say b, now there's no further isomorphism left)
02:22:05 <soundnfury> now either we have an a next, so it must then be a c (can't have abaa or abab), or we have a c next, so either abac, abca or abcb (we can't have abcc)
02:22:33 <soundnfury> and so on, I don't know if the tree keeps getting wider or if the branches start to terminate
02:22:50 <shachaf> You can do it by generating and backtracking.
02:23:02 <soundnfury> (ie. if you start getting strings where you can't append any of [abc] without creating a repeat)
02:23:09 <kmc> okay, i was wondering if there was a better way
02:23:12 <shachaf> It's much trickier to do it without, though it's possible.
02:23:27 <shachaf> There is.
02:23:51 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:24:25 <kmc> how do you do it?
02:24:36 <soundnfury> can you do something recursive, is there some way to take a sequence and modify it so that you can concatenate the original and modified versions, thereby getting another valid string?
02:24:43 <shachaf> https://en.wikipedia.org/wiki/Squarefree_word
02:25:24 <kmc> heh
02:25:28 <soundnfury> ooh, nice
02:29:13 <Phantom_Hoover> "Thue-Morse sequence" is fun to say.
02:39:41 <zzo38> Yes OK I understand what you mean. Was there something like that on anarchy golf?
02:39:58 -!- augur has joined.
02:42:07 -!- DHeadshot has joined.
02:42:23 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
02:45:58 -!- augur_ has joined.
02:45:59 -!- augur has quit (Read error: Connection reset by peer).
02:54:27 <zzo38> I looked out the window and I can see the moon.
02:56:42 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:56:47 -!- DH____ has joined.
03:00:32 -!- derdon_ has quit (Remote host closed the connection).
03:06:30 -!- DH____ has quit (Read error: Connection reset by peer).
03:06:46 <shachaf> @ask elliott Apparently "travelling" is the British spelling and "traveling" is the American spelling.
03:06:47 <lambdabot> Consider it noted.
03:07:01 <shachaf> @tell elliott Can you make me British? :-(
03:07:01 <lambdabot> Consider it noted.
03:14:50 -!- DHeadshot has joined.
03:22:51 -!- ogrom has joined.
03:22:55 -!- pikhq has joined.
03:23:05 -!- pikhq_ has quit (Ping timeout: 260 seconds).
03:25:06 <shachaf> kmc: What is interesting in southern CA?
03:25:45 <kmc> kelso sand dunes
03:26:48 <shachaf> Hmm, that's rather far inland.
03:28:47 <kmc> are you going to southern CA?
03:28:56 <shachaf> Possibly.
03:31:01 <soundnfury> You know what's remarkable? Is how much of England looks in no way like southern California.
03:32:13 <kmc> what is your remark, then?
03:32:24 <soundnfury> It was a quote
03:32:36 <soundnfury> I possibly got it slightly wrong, not watched that for a while
03:33:03 <soundnfury> (it's from Austin Powers)
03:33:38 -!- pikhq_ has joined.
03:33:52 <kmc> ah
03:34:02 <kmc> it's a joke about how Southern California stands in for lots of places in films and tv
03:34:13 <kmc> i went to school at a college used frequently for film shoots
03:34:27 -!- pikhq has quit (Ping timeout: 276 seconds).
03:34:46 <shachaf> I know someone who's going to go there soon.
03:34:51 <shachaf> In a few weeks, I guess.
03:35:06 <kmc> i gather that there are a lot of fun things to do in LA, most of which i have not done
03:35:18 <kmc> i never even went to the beach, despite living a few minutes' bike ride away for a summer
03:35:44 <shachaf> They say it's a good beach. I've never been.
03:35:48 <kmc> which one?
03:35:58 <shachaf> The, uh, one in Los Angeles.
03:37:15 <kmc> there are a few
03:48:42 -!- pikhq has joined.
03:49:10 -!- pikhq_ has quit (Ping timeout: 256 seconds).
04:23:39 <kmc> we alone on earth can rebel against the tyranny of the selfish replicators
04:31:00 <kmc> pass it on
04:31:20 <shachaf> Can I pass it on in my genes?
04:31:33 <kmc> yes
04:32:58 -!- pikhq_ has joined.
04:33:27 -!- pikhq has quit (Ping timeout: 272 seconds).
04:50:38 <kmc> shachaf: the next CTF should focus on misuse of cryptographic primitives, don't you think?
04:50:45 <kmc> that would be fantastic
04:52:25 <shachaf> kmc: Oh, that would be fun.
04:52:53 -!- TeruFSX has quit (Read error: Connection reset by peer).
04:52:55 <shachaf> You should tell them!
04:52:59 <shachaf> Or make it.
04:53:03 <kmc> i told gdb already
04:53:41 -!- TeruFSX has joined.
05:02:27 <kmc> there are so many exciting ways to misuse cryptographic primitives
05:05:14 <shachaf> Yes. It's one of those things I should know more about.
05:06:14 <shachaf> (Though the right answer is generally "use higher-level primitives", not "know how to use low-level primitives correctly".)
05:10:05 <kmc> yeah
05:10:55 <shachaf> The situation with Haskell and cryptography libraries seems kind of terrible. :-(
05:10:56 <kmc> i wonder if that message would come across
05:11:58 <zzo38> What cryptographic primitives?
05:13:01 <kmc> i found it entertaining and enlightening to witness a discussion where each side accused the other of advocating the cardinal sin of "rolling your own crypto"
05:13:19 <kmc> and each side had valid arguments as to why their solution is less "rolling your own"
05:13:28 <shachaf> zzo38: I heard Julius Caesar was pretty cryptographically primitive.
05:13:35 <shachaf> kmc: I think I remember you mentioning that.
05:13:39 <shachaf> Was it with mosh?
05:13:41 <kmc> yeah
05:13:59 <kmc> mosh already rolls more crypto than is desirable
05:14:05 * shachaf doesn't remember the exact arguments.
05:14:29 <kmc> it would be nice to use something higher level like DTLS, but there are a few problems with doing so
05:14:41 <kmc> the argument in question was about OCB vs. CTR+HMAC, i.e. two block cipher modes
05:15:00 <shachaf> Ah.
05:15:02 <kmc> and plenty of comments from the peanut gallary about "if you have to pick a block cipher mode, you're doing it wrong"
05:15:12 <zzo38> I read somewhere that combining multiple ciphers is sometimes weak; however, I do not think it will be weak if the keys used for each are guaranteed not to be related.
05:15:20 <kmc> which is fair enough, but again, I don't think there was a suitable higher-level alternative
05:16:02 <shachaf> http://nacl.cr.yp.to/ looks like a nice high-level cryptography library.
05:16:16 <shachaf> I don't know enough to know whether it's actually good.
05:16:27 <zzo38> Can you do backward and forward, side effect, stream and block, superencrypted initialization vectors, with a suitable compression in many steps with long keys which do not repeat?
05:16:50 <shachaf> It uses the author's own encryption and authentication primitives, which is generally worrying.
05:17:12 <shachaf> zzo38: What's a superencrypted initialization vector?
05:17:53 <zzo38> In addition, optimize it to run fast and less memory but use a slow algorithm and insert random delays and RAM scrambler
05:18:24 <kmc> i don't trust random delays, statistics can still win out
05:18:50 <kmc> the library shachaf linked is based around the idea of "no data-dependent branches or memory addresses" which seems solid
05:19:01 <zzo38> shachaf: You have an initialization vector of a random length, which is then scrambled with the rest of the code and encrypted again using a different algorithm and with an unrelated key (it because insecure if you use related keys)
05:19:04 <kmc> or you can pick a fixed time that each operation should take, and wait the remainder
05:20:03 <zzo38> kmc: But then you need to also deal with power usage
05:20:38 <shachaf> I think situations where you have to deal with power usage are pretty rare.
05:20:50 <pikhq_> shachaf: RE: NaCl, I *think* DJB is more qualified than most to actually do crypto well.
05:21:05 <shachaf> pikhq_: Of course.
05:21:28 <shachaf> pikhq_: But even so.
05:21:31 <kmc> but the number of eyeballs looking for dumb implementation bugs may well be as important as a solid understanding of the theory
05:21:33 <shachaf> Also, they're only a few years old.
05:21:40 <pikhq_> I mean, crypto and crypto attacks is what his math career largely is. :)
05:21:51 <kmc> tarsnap guy is also qualified to do crypto well, and yet he had a catastrophic dumb implementation bug ;)
05:22:01 <pikhq_> Still, yeah.
05:22:26 <shachaf> pikhq_: I'd rather use a stupid algorithm that a lot of smart people have failed to break than a smart algorithm that only one smart person has failed to break.
05:22:32 <pikhq_> Crypto is one of those fields where minor bugs are nearly as catastrophic as "dur, rot13 is good".
05:22:53 <shachaf> (Not that that's the situation here.)
05:22:56 <kmc> security in general
05:23:03 <kmc> because it's about worst case rather than average case
05:23:23 <kmc> i love how many linux root exploits involve subsystems nobody ever uses, and/or code which never worked in the first place
05:23:33 <kmc> they finally removed econet
05:24:22 <zzo38> What does econet mean?
05:24:34 <shachaf> zzo38: Funny, it's just the sort of thing I'd expect you to use.
05:24:39 <kmc> econet is a networking protocol used by Acorn home computers from the 1980's
05:24:41 <kmc> yes
05:24:44 <shachaf> gopher over econet
05:25:00 <kmc> Linux had an implementation of it, which is mostly famous for a number of security holes
05:25:19 <kmc> it's unclear this implementation ever actually worked, and if so how long ago it was last used
05:25:47 <zzo38> In that case I suppose it is a good idea to remove it; whoever will use it can make a new implementation which has a better quality.
05:25:59 <kmc> another example is the code for loading 32-bit Video4Linux1 firmware onto a Video4Linux2 device on a 64-bit machine
05:26:23 <kmc> turns out, nobody had ever tried to do this, the code in the kernel had no chance of working but was easily abused to get root
05:26:47 * shachaf wonders whether the Firefox gopher code has security bugs.
05:26:54 <kmc> zzo38: yeah; what's worse is that many distributions shipped the econet module by default
05:27:09 <kmc> and even worse, they would automatically load it if you tried to use the protocol from an unprivileged program
05:27:11 <pikhq_> shachaf: Maybe. It's not there anymore though.
05:27:20 <zzo38> They should just remove most of the stuff in the kernel since a lot of it too complicated
05:28:27 <kmc> zzo38: also, any remaining users of Econet are almost certainly tunneling it over UDP, and might as well do that in userspace
05:28:31 <zzo38> No, I don't think the Firefox gopher code had security bugs; the Microsoft gopher code has many security issues, though.
05:29:15 <shachaf> zzo38: What about the Plan 9 gopher code?
05:29:40 <zzo38> kmc: No, the problem is using too complicated operating systems (whether it is Windows or Linux or something else, it is still too complicated).
05:29:43 <zzo38> shachaf: I don't know.
05:29:59 <shachaf> Hmm, I guess Glenda isn't a gopher. :-(
05:30:15 <shachaf> Is the golang mascot a gopher?
05:30:31 <zzo38> I don't know but I do not think it is relevant.
05:31:35 <shachaf> zzo38: True. But neither is gopher.
05:34:50 <zzo38> I make up the new computer system to not have all this complexity, it can be a single tasking system (if you need tasking switch you can store it on the hard drive) and not involving such complicated things as PDF and USB.
05:35:20 <kmc> there are many old computer systems with these properties
05:35:56 <zzo38> The old one is too slow and it is out of sale.
05:36:33 <kmc> you can run FreeDOS on your modern PC
05:36:38 <kmc> and there are free development tools for it
05:37:00 <pikhq_> Pretty certain he finds x86 objectionable.
05:37:09 <pikhq_> (as well he should)
05:37:40 <kmc> fair enough
05:37:53 <kmc> if you are talking about hardware and not just software, then yes it's much harder to remake everything to be simpler
05:38:11 <zzo38> I do happen to think FreeDOS is OK. There are certainly problems with x86 (I don't like the existence of CPUID command is one thing, and modern extensions to the instruction set tend to confuse everything)
05:38:23 <zzo38> kmc: That is why I have to try.
05:38:37 <kmc> i too find x86 objectionable
05:38:51 <kmc> though i disagree with the more specific claim that x86 assembly is so much harder to write by hand
05:38:59 <shachaf> 18:17 <kmc> for me, annoyance is a full time job
05:39:27 <shachaf> x86 assembly is in a lot of ways designed to be nice to write by hand.
05:39:42 <pikhq_> Some of the later addons less so.
05:39:50 <pikhq_> But certainly, at its core it's meant that way.
05:40:02 <kmc> x87 code is not nice to write by hand :(
05:40:40 <pikhq_> Then what *was* it designed for?
05:40:53 <pikhq_> A register-stack sure isn't good for compilers.
05:41:01 <kmc> i think it's just bad
05:42:01 <kmc> i don't know why it's designed the way it is
05:42:10 <pikhq_> It's bad for all involved.
05:42:18 <shachaf> Daniel Bernstein pointed out that 8-element stack + free swap can sometimes to more than an eight-register instruction set.
05:42:42 <kmc> what about an eight register instruction set with free swap
05:43:11 <pikhq_> shachaf: Way back when, that swap wasn't free. :)
05:43:43 -!- asiekierka has joined.
05:43:49 <kmc> shachaf: in what way is it better?
05:43:58 <shachaf> kmc: http://cr.yp.to/qhasm/20050210-fxch.txt
05:44:03 <kmc> zzo38: why don't you like CPUID
05:46:02 <zzo38> kmc: Because a program might not run if you replace the processor. In my idea one thing they could be able to do is, you can store the state of the program to disk and then replace all the components (including the disk) and turn on the program will still continue same as the other one (and if you copy it, both will run identically), is my idea of computer.
05:46:39 <kmc> shachaf: interesting
05:46:42 <zzo38> Including if all the parts are different manufacturer from what it was before.
05:47:01 <kmc> zzo38: but that's also true if different CPUs have different features, regardless of whether you have an explicit way to identify them
05:48:04 <kmc> this is a real problem though
05:48:13 <kmc> Xen can virtualize CPUID
05:48:22 <kmc> so that you can indicate a baseline set of features that all your VM hosts support
05:48:26 <zzo38> That is why it would be made to not have different features, or, if they do have different features have a pin which you can connect to ground to indicate to use compatibility mode or not, so that you can activate the new features or you can turn them off by hardware.
05:49:12 <kmc> (this is a problem for code that uses CPUID as a memory barrier)
05:49:36 <zzo38> Yes those may be some of the problems.
06:02:55 -!- pikhq_ has quit (Ping timeout: 240 seconds).
06:03:07 -!- pikhq has joined.
06:07:46 -!- pikhq has quit (Remote host closed the connection).
06:08:04 -!- pikhq has joined.
06:12:13 <kmc> gotta sleep, ttyl all
06:14:51 -!- zzo38 has quit (Remote host closed the connection).
06:18:54 <Sgeo> I hate Clojure protocols.
06:33:05 -!- ogrom has quit (Quit: Left).
06:39:08 -!- pikhq_ has joined.
06:39:42 -!- pikhq has quit (Ping timeout: 264 seconds).
06:46:13 -!- pikhq has joined.
06:46:28 -!- pikhq_ has quit (Ping timeout: 244 seconds).
07:03:19 <Sgeo> ,(apply (partial some identity) '(true true false))
07:03:25 <Sgeo> &(apply (partial some identity) '(true true false))
07:03:30 <Sgeo> oops
07:03:56 -!- Vorpal has joined.
07:32:43 -!- DHeadshot has quit (Read error: Connection reset by peer).
07:32:48 -!- DH____ has joined.
07:50:45 -!- pikhq_ has joined.
07:51:01 -!- pikhq has quit (Ping timeout: 244 seconds).
08:26:04 -!- AnotherTest has joined.
08:26:45 <AnotherTest> Hello
08:34:55 -!- DH____ has quit (Read error: Connection reset by peer).
08:35:00 -!- DHeadshot has joined.
08:37:02 -!- asiekierka has quit (Ping timeout: 244 seconds).
08:40:48 -!- sirdancealot7 has joined.
08:45:09 -!- DHeadshot has quit (Read error: Connection reset by peer).
08:49:04 -!- mig22 has joined.
08:56:26 -!- pikhq has joined.
08:56:40 -!- pikhq_ has quit (Ping timeout: 268 seconds).
09:10:14 -!- AnotherTest has quit (Read error: Connection reset by peer).
09:10:29 -!- AnotherTest has joined.
09:22:34 -!- ais523 has quit.
09:46:49 -!- pikhq_ has joined.
09:47:09 -!- pikhq has quit (Ping timeout: 260 seconds).
10:05:21 -!- cheater__ has joined.
10:08:24 -!- cheater_ has quit (Read error: Operation timed out).
10:18:55 -!- ogrom has joined.
10:36:17 -!- Lumpio- has quit (Quit: _o7).
10:36:30 -!- Lumpio- has joined.
10:39:59 -!- DHeadshot has joined.
10:42:19 -!- MoALTz has joined.
10:42:30 -!- MoALTz has quit (Remote host closed the connection).
10:47:21 -!- DHeadshot has quit (Ping timeout: 276 seconds).
10:58:08 -!- derdon has joined.
11:10:37 -!- Phantom_Hoover has joined.
11:20:54 -!- MoALTz has joined.
11:28:00 <Phantom_Hoover> Hmm, I think I had a dream last night that there was a video on YouTube where some guy was putting some kittens in a glass of water.
11:28:07 <Phantom_Hoover> I don't think they minded, actually.
11:28:57 <oklopol> kittens love water
11:36:04 <Phantom_Hoover> I don't remember checking the comments though.
11:37:31 <oklopol> ?????
11:37:36 <oklopol> you didn't check the comments????
11:37:47 <oklopol> what's the point then
11:40:57 <Phantom_Hoover> I know!
11:43:36 <Sgeo> I'm finally beginning to appreciate the idea of the right tool for the job, rather than one language to rule them all.
11:43:51 <Sgeo> As in, I think newLisp's the right language for a codenomic, but not for much else.
11:44:22 <Sgeo> >.>
11:45:12 -!- mig22_ has joined.
11:47:12 -!- mig22 has quit (Ping timeout: 252 seconds).
11:47:13 -!- mig22_ has changed nick to mig22.
11:57:06 -!- nooga has joined.
12:04:43 -!- ogrom has quit (Quit: Left).
12:05:08 -!- monqy has quit (Quit: hello).
12:36:34 -!- KingOfKarlsruhe has joined.
12:46:16 -!- kinoSi has quit (Read error: Connection reset by peer).
12:46:45 -!- kinoSi has joined.
13:01:34 -!- pikhq has joined.
13:01:54 -!- pikhq_ has quit (Ping timeout: 264 seconds).
13:14:36 <AnotherTest> // very readable code from boost
13:14:36 <AnotherTest> typedef std::string::const_iterator interator_type;
13:14:36 <AnotherTest> typedef client::employee_parser<interator_type> employee_parser
13:14:36 <AnotherTest> employee_parser g; // notice this is the first and last use of employee_parser
13:14:47 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 14.0.1/20120713134347]).
13:19:00 <AnotherTest> Why do they always give non-virtual destructors to their classes?
13:20:48 <fizzie> Do the classes have any virtual functions? If not, maybe just to save the vtable costs.
13:21:08 <AnotherTest> I get an error because of that
13:21:21 <AnotherTest> I have a class that derives from that class
13:21:30 <AnotherTest> normally that would only be a warning
13:21:34 <AnotherTest> but for some reason
13:22:08 <fizzie> Well, maybe "they" don't want you to derive.
13:22:20 <AnotherTest> Their example does derive
13:23:42 <AnotherTest> well their example doesn't work
13:23:42 <AnotherTest> http://www.boost.org/doc/libs/1_51_0/libs/spirit/example/qi/employee.cpp
13:23:42 <AnotherTest> Doesn't compile for me.
13:24:59 <fizzie> The best %= operator override ever.
13:25:16 -!- AnotherTest has quit (Read error: Connection reset by peer).
13:25:29 -!- AnotherTest has joined.
13:29:03 -!- AnotherTest has quit (Read error: Connection reset by peer).
13:29:19 -!- AnotherTest has joined.
13:31:03 -!- Phantom_Hoover has quit (Remote host closed the connection).
13:32:32 -!- Phantom_Hoover has joined.
13:34:07 -!- AnotherTest has quit (Client Quit).
13:34:17 -!- AnotherTest has joined.
13:41:12 -!- AnotherTest has quit (Quit: Leaving.).
13:42:01 -!- AnotherTest has joined.
13:45:57 -!- AnotherTest has quit (Read error: Connection reset by peer).
13:46:03 -!- AnotherTest1 has joined.
13:58:27 -!- Phantom_Hoover has quit (Ping timeout: 276 seconds).
14:05:45 -!- Phantom_Hoover has joined.
14:19:54 <AnotherTest1> hm. back to spirit classic
14:26:28 -!- pikhq_ has joined.
14:26:42 -!- pikhq has quit (Ping timeout: 252 seconds).
14:54:53 -!- mig22 has quit (Quit: mig22).
15:19:16 -!- cheater__ has quit (Ping timeout: 248 seconds).
15:20:29 -!- ineiros has quit (Quit: leaving).
15:20:58 -!- ineiros has joined.
15:23:51 <kmc> yeah i used boost::spirit once
15:23:53 <kmc> never again...
15:26:19 -!- cheater__ has joined.
15:27:02 -!- pikhq has joined.
15:27:07 -!- pikhq_ has quit (Ping timeout: 240 seconds).
15:37:13 <ion> http://goo.gl/maps/M9T0H
15:38:43 <kmc> yup
15:39:02 <kmc> Elephant Butte, New Mexico
15:39:08 <kmc> which is next to Truth or Consequences, New Mexico
15:39:27 <kmc> which is named after a radio show
15:49:07 -!- atriq has joined.
15:55:25 <atriq> I love it when one of mine comes up in CoaP
15:55:34 <atriq> Because I'm like, "This sounds familiar"
15:55:40 <atriq> Followed by, "This is awful"
15:55:48 <atriq> Then, "Oh, yay, it's one of mine."
16:01:10 <Phantom_Hoover> CoaP?
16:01:13 <Phantom_Hoover> Oh, right.
16:01:40 <kmc> ?
16:01:49 <Phantom_Hoover> Comments on a Postcard.
16:04:19 <atriq> The fourth least popular comic of DMM's
16:05:19 <atriq> After Infinity on 30 Credits a Day, Awkward Fumbles, at that one that never got off the ground
16:07:05 <Sgeo> I now understand Clojure enough to be able to comment about it in my post about name conflicts
16:07:06 <Sgeo> Maybe.
16:07:12 <Sgeo> Actually, no.
16:07:21 <kmc> lol
16:09:57 -!- Slereah_ has quit (Ping timeout: 265 seconds).
16:13:19 <kmc> Sgeo you so silly
16:14:16 -!- Slereah has joined.
16:16:24 -!- pikhq_ has joined.
16:16:37 -!- pikhq has quit (Ping timeout: 256 seconds).
16:21:24 -!- pikhq has joined.
16:22:24 -!- pikhq_ has quit (Ping timeout: 260 seconds).
16:26:51 <Sgeo> How many Java+other JVM language developers actually stick to the domain name convention, and how many.. well, don't?
16:27:44 <fizzie> I don't see how you could measure that, except by some sort of a silly poll.
16:37:42 <Sgeo> Oh god I want to like Clojure but I don't want to start learning Java.
16:39:29 <kmc> Java is easy
16:39:55 <kmc> and it's not like Clojure is based on Java, it just has a Java FFI
16:40:39 <Sgeo> Well, I have to start learning about classpaths and probably similar things
16:41:10 <kmc> that's true
16:41:19 <kmc> i found that aspect to be the worst part of using clojure, by far
16:42:42 <Lumpio-> JavaScript all the way everywhere
16:43:02 <kmc> 420 smoke javascript everyday
16:43:22 <Sgeo> Well, there is ClojureScript
16:44:12 <nortti> does it have anything to do wi6th Clojure
16:44:33 <Lumpio-> 262 code ecmascript everyday
16:45:02 <kmc> well if Javascript is Scheme with Java syntax, then presumably ClojureScript is Java with Scheme syntax
16:45:05 <kmc> obviously
16:46:03 <kmc> aka the least popular language you could possibly make
16:48:19 <Sgeo> kmc, other than classpath stuff, do you generally like Clojure?
16:52:55 -!- ogrom has joined.
17:04:40 -!- asiekierka has joined.
17:51:59 <AnotherTest1> wow
17:52:07 <AnotherTest1> I actually got boost::spirit working
17:52:14 -!- AnotherTest1 has changed nick to AnotherTest.
18:01:26 <kmc> Sgeo: have only used it a little bit, but yes
18:01:45 -!- aloril has quit (Ping timeout: 244 seconds).
18:11:40 <kmc> AnotherTest: congratulations
18:11:47 -!- pikhq_ has joined.
18:12:05 -!- pikhq has quit (Ping timeout: 244 seconds).
18:12:19 <AnotherTest> kmc: notice spirit classic; I don't think it's possible to get spirit 2 working
18:13:18 <kmc> heh
18:15:37 -!- aloril has joined.
18:15:57 <AnotherTest> mh... semantic actions can take functors
18:16:12 <AnotherTest> a lambda is a functor in C++...
18:16:20 <kmc> hm, the X1 Carbon has an optional USB 3.0 "dock" box with two DVI outputs
18:16:26 <kmc> i wonder how much video you can push through USB 3.0
18:17:27 <pikhq_> Well, it's nominally 5 Gbit/s.
18:17:38 <kmc> C++: annoying people by misusing the word "functor" since 1983
18:17:51 <pikhq_> Probably not an awesome video card, but should be acceptable at least.
18:17:54 <kmc> i know that USB 2.0 video boxes are usually rather shit
18:18:07 <kmc> anyway yeah, should suffice for business graphics
18:18:12 <nortti> yes
18:18:23 <AnotherTest> kmc: function object :D?
18:18:38 <pikhq_> Let's go with "closure".
18:18:42 <nortti> our school has usb2 kvm systems
18:19:07 <AnotherTest> pkhq_: no, a function object isn't always a closure; a closure is a function object though
18:20:11 <AnotherTest> reason: a function object does not have a capture
18:21:20 <pikhq_> So, you're distinguishing between closures that don't close and closures that do? :)
18:21:45 <quintopia> i like this new topic
18:21:48 <fizzie> kmc: Does it mention whether it has a video chipset on the dock, or just something to feed through the image generated by the computer itself? Single-link DVI maximum data rate is just 4 Gbit/s, you could almost even push that raw over USB, let alone encoded somehow. (Though it'd be weird.)
18:22:01 <AnotherTest> pkhq_: in C++, yes
18:22:04 <kmc> i'm not sure, i'm guessing it's a video chipset in the dock
18:22:10 <AnotherTest> pkhq_: and maybe always
18:22:13 <pikhq_> That's a highly arbitrary and meaningless distinction.
18:24:20 -!- donmarquis has joined.
18:25:01 <fizzie> kmc: Google says the dock has a http://www.displaylink.com/usb3/index.php on it, and the spec sheet of that speaks a lot about video compression.
18:25:15 -!- impomatic has joined.
18:26:28 -!- donmarquis has quit (Quit: Leaving).
18:28:26 -!- donmarquis has joined.
18:46:54 -!- atriq has quit (Ping timeout: 240 seconds).
18:53:04 -!- ogrom has quit (Read error: Connection reset by peer).
18:58:59 -!- donmarquis has quit (Quit: Leaving).
19:00:57 <Sgeo> https://www.refheap.com/paste/4643
19:07:18 -!- pikhq has joined.
19:07:47 -!- pikhq_ has quit (Ping timeout: 268 seconds).
19:08:24 <coppro> Sgeo: lol
19:08:40 <Sgeo> ?
19:08:44 <Sgeo> What's funny?
19:08:48 -!- AnotherTest has quit (Quit: Leaving.).
19:09:05 <Sgeo> Incidentally, the "WARNING! UNTESTED!" is now obsolete
19:10:25 -!- FreeFull has quit (Ping timeout: 260 seconds).
19:11:33 <Sgeo> Is my code really that bad that it's "lol" worthy?
19:11:39 -!- FreeFull has joined.
19:17:56 -!- zzo38 has joined.
19:33:06 <shachaf> kmc: To be fair, most everybody misuses the word "functor" somehow.
19:47:25 -!- pikhq has quit (Ping timeout: 252 seconds).
19:47:31 -!- pikhq_ has joined.
19:49:32 -!- augur_ has changed nick to augur.
19:49:40 <kmc> sure
19:56:11 -!- zzo38 has quit (Remote host closed the connection).
19:56:45 -!- oerjan has joined.
19:57:02 -!- ais523 has joined.
19:57:14 -!- pikhq has joined.
19:57:20 -!- pikhq_ has quit (Ping timeout: 246 seconds).
20:03:49 <oerjan> 03:35:06: <kmc> i gather that there are a lot of fun things to do in LA, most of which i have not done
20:03:52 <oerjan> 03:35:18: <kmc> i never even went to the beach, despite living a few minutes' bike ride away for a summer
20:04:58 <oerjan> i have gone through LA twice in my life, just enough to get a horrible sunburn on the beach the second time. (the first time we'd forgot to get visas so we had to stay at the airport, technically under guard)
20:06:24 <oerjan> i think this may have been one of the times i shed 3 layers of skin on my shoulders
20:08:02 <oerjan> i recall it was rather fascinating to watch once the pain got relieved
20:08:51 * oerjan wonders if he should have put a NSFL warning on that
20:09:56 <oerjan> 04:23:39: <kmc> we alone on earth can rebel against the tyranny of the selfish replicators
20:10:07 <oerjan> ...
20:10:39 <oerjan> paradoxical yet probably essential to humanity's survival.
20:11:59 -!- pikhq has quit (Ping timeout: 252 seconds).
20:12:02 -!- pikhq_ has joined.
20:16:36 -!- oerjan has set topic: May contain: soy strawberries, chocolate people, vanilla computer programming, natto esoteric, tarragon THX deep note, mutton ecliptic longitude, camomile tea, some CPU locusts, rutabaga nonsensical analogies and theories, hummus matrices of solidity, pudding lovecraftian horrors, and no Ice-9. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
20:17:54 <fizzie> Given our topics, it's maybe not so unexpected that people come here looking for the other sort of esoterica.
20:18:02 <oerjan> you think?
20:18:41 <nortti> also topic of #esoteric-en doesn't help
20:19:05 <oerjan> you think.
20:19:14 <fizzie> You, think!
20:19:30 <oerjan> youth ink
20:19:49 <nortti> 3:18 -!- Topic for #esoteric-en: Visit #esoteric if you want to speak about occultism andvwitchcraft
20:19:58 -!- asiekierka has quit (Remote host closed the connection).
20:20:20 <oerjan> apparently that's a festival
20:21:17 <fizzie> Hunk it, yo.
20:26:52 <shachaf> @quote kmc gentle.introduction
20:26:52 <lambdabot> kmc says: i started to read the "tutorial" and it was incomprehensible. makes the Gentle Introduction to Haskell look like Teach Yourself PHP in 24 Hours
20:27:04 <shachaf> kmc: Isn't the Gentle Introduction the "tutorial"?
20:30:12 <fizzie> http://sprunge.us/bEdX - N900 dmesg is the most useful ever. (All the hard keys are hooked to the GPIO pins, and the driver reports all state changes.)
21:11:46 -!- Arc_Koen has joined.
21:15:20 <FreeFull> fizzie: grep -v GPIO
21:16:18 <oerjan> `welcome Arc_Koen
21:16:27 <Arc_Koen> hello
21:16:29 <HackEgo> Arc_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.)
21:16:49 <oerjan> a bit quiet here right now
21:16:53 <fizzie> FreeFull: Doesn't help all that much since the GPIO stuff has pushed other things out of the message buffer. (Okay, it only matters for historic matters, but still.)
21:17:42 -!- pikhq has joined.
21:17:44 -!- pikhq_ has quit (Ping timeout: 252 seconds).
21:21:39 -!- nortti has quit (Ping timeout: 252 seconds).
21:24:01 -!- atriq has joined.
21:24:51 <oerjan> darn internet is slow :(
21:25:23 <fizzie> They should build a faster one.
21:25:29 <kmc> shachaf: the ATS tutorial
21:26:31 <shachaf> Oh.
21:26:45 * shachaf sympathizes.
21:28:04 <kmc> oerjan: do you know the context of the selfish replicators quote
21:29:37 <kmc> shachaf: why did you bring up that quote?
21:29:52 <shachaf> It came up in #haskell.
21:30:03 <shachaf> Which for some reason I'm still in.
21:30:12 <kmc> shachaf: did you think up some entertaining misuses of crypto for the next CTF?
21:30:16 <kmc> i'm composing a list in an email to gdb
21:30:24 <shachaf> edwardk has a new lens combinator for filtering, called "iwhere".
21:30:33 <kmc> filter combinators, reinvented
21:31:03 <shachaf> I don't know why I called it a "combinator".
21:31:12 <kmc> because anything sounds better if you call it a combinator?
21:31:15 <shachaf> Is it a combinator? Why did I even use that word? I don't know what it means. :-(
21:31:48 <shachaf> I was just reading <http://www.bsdcan.org/2010/schedule/attachments/135_crypto1hr.pdf>
21:31:49 <fizzie> Instead of taking the bus, take the mobile people combinator.
21:31:58 <shachaf> You could probably take each DON'T line and turn it into a fun CTF challenge.
21:32:14 <kmc> heh
21:32:23 <kmc> i got some ideas from http://chargen.matasano.com/chargen/2009/7/22/if-youre-typing-the-letters-a-e-s-into-your-code-youre-doing.html
21:32:35 <shachaf> kmc: Did you mention something about length-extension attacks?
21:32:51 <shachaf> Like the thing Flickr had.
21:33:19 <kmc> yes
21:33:56 <kmc> did you finish the web CTF then?
21:34:49 <shachaf> No. :-( I haven't worked on it.
21:34:58 <shachaf> But today is a good day for it, as soon as I finish $THING.
21:37:23 <kmc> ok
21:38:24 <kmc> shachaf: huh, that presentation says to use AES-256, despite the related-key attack
21:38:49 <kmc> also it says not to use combined authentication/encryption modes
21:38:52 <kmc> but doesn't say why
21:39:18 -!- Vorpal has quit (Ping timeout: 276 seconds).
21:39:56 <shachaf> I think he has a follow-up post that clarifies some of it.
21:40:41 <shachaf> Do related-key attacks generally matter?
21:41:35 <shachaf> http://www.daemonology.net/blog/2009-06-11-cryptographic-right-answers.html
21:42:36 <kmc> i think this related key attack doesn't matter specifically
21:43:02 <shachaf> Well, the one on AES-256 is only theoretical anyway.
21:43:05 <kmc> but there is a notion that cryptosystems with known but impractical attacks are more likely to develop practical attacks eventually
21:43:42 <kmc> "I did mention the issue of authenticated encryption modes, but to elaborate a bit: CTR mode has the very nice property that the attacker has absolutely no control over what operations you perform. This makes a big difference -- almost all side channel attacks require chosen inputs."
21:44:03 <kmc> fair enough
21:44:38 <kmc> heh, i had forgotten that using a separate HMAC requires you to choose between Encrypt-and-MAC, MAC-then-encrypt, and Encrypt-then-MAC
21:44:49 <kmc> and experts don't even agree on which of these is better
21:45:00 <kmc> this is a point in favor of authenticated encryption modes
21:45:11 <shachaf> I think everyone agrees that encrypt-and-MAC is bad.
21:46:54 <shachaf> There's also the argument that standalone authentication is much cheaper than decryption+authentication, so a system that can reject unauthenticated ciphertexts early is much more resilient to a DoS.
21:47:02 <shachaf> (Assuming you encrypt-then-MAC.)
21:47:11 <kmc> true
21:47:22 <shachaf> Oh, I guess he wrote about that.
21:47:26 <kmc> which relates to the side channel argument as well
21:52:10 <shachaf> SSH does encrypt-and-MAC?
21:52:31 <kmc> "If you're distributing client code which speaks to a server you operate, there is no need to use SSL; instead, you can distribute the server's public RSA key (or its hash) along with the client code, and "bootstrap" the security process that way. I do this in FreeBSD for the FreeBSD Update and Portsnap services, and I also do this in Tarsnap. It's simple; it works; and it's secure."
21:52:52 <kmc> if you squint right, this endorses what Mosh does
21:53:59 <shachaf> In the sense that "send-key-over-SSL" is similar to "send-key-over-SSH"?
21:54:15 <shachaf> By SSL I mean https when you're downloading the client code, presumably.
21:54:29 <kmc> yeah
21:54:39 <kmc> and rejecting the complexity of SSL for the client app itself, when you don't need it
21:54:51 <shachaf> mosh doesn't send an asymmetric key at all, does it?
21:54:56 <kmc> mosh goes further in having symmetric crypto only
21:54:57 <kmc> right
21:55:10 <kmc> obviously this doesn't work if you have multiple mutually-untrusting clients connecting to the same service
21:55:22 <shachaf> On the other hand that makes you more reliant on SSL/SSH, since you have to use it every time rather than just the first time.
21:55:37 <kmc> well, yes and no
21:56:00 <kmc> someone could write a special purpose mosh-server-launching daemon using RSA in the manner Tarnsap guy describes
21:56:11 <kmc> and it would still be a separate component from mosh-server itself
21:57:32 <shachaf> True.
21:58:14 <kmc> someone already wrote a HTTP-based mosh launcher
21:58:32 <kmc> with some questionable security properties
21:59:52 <shachaf> Why questionable?
22:00:31 <kmc> the docs said nothing about the fact that you should run it over HTTPS, and had an example of running it over HTTP-not-S
22:00:44 <kmc> when i pointed this out, the author said it was "obvious" that you needed to use HTTPS, so why bother putting this in the docs
22:01:15 <kmc> it had some other problems too, some of which they did fix
22:02:04 <kmc> it had some homebrew authentication mechanism, and i think v1 of this was vulnerable to a path traversal
22:02:22 <shachaf> I,I ln -s /usr/bin/mosh-server ~/public_html/cgi-bin/
22:02:34 <kmc> mosh doesn't contain public-key crypto code but perhaps more importantly, it doesn't contain authentication code
22:03:03 <shachaf> https doesn't really have a mechanism for client-side authentication.
22:03:45 <kmc> it has client certificates!
22:03:51 <kmc> these are used extensively at MIT
22:03:56 <shachaf> Oh, true.
22:04:00 <shachaf> I've never heard of anybody using them.
22:04:15 <kmc> MIT is weird :)
22:05:45 <kmc> shachaf: did you know that ECB mode is the default for Java crypto APIs?
22:05:57 <shachaf> ECB mode is the default for all crypto APIs that support it.
22:06:10 <kmc> shouldn't some APIs have no default?
22:06:17 <fizzie> CAcert.org uses SSL client certificates for user login.
22:06:21 <shachaf> "default" in the sense of "requires the fewest parameters"
22:06:26 <kmc> oh
22:06:31 <kmc> i mean that if you don't choose one, it uses ECB
22:06:33 <shachaf> If you don't know what you're doing, you'll pick the one that looks easiest.
22:06:34 <kmc> but i could be wrong
22:06:38 <kmc> yeah...
22:06:47 <fizzie> And OpenVPN setups use SSL client certificates quite often, I believe.
22:07:00 <kmc> level 0 of the crypto CTF would involve finding patterns in an ECB-encrypted file, i think
22:07:10 <kmc> like the Tux image on wikipedia
22:07:52 <shachaf> That's a great image.
22:10:58 <shachaf> Is there ever a reason to use a mode other than CTR mode when you're not doing combined encryption-authentication?
22:13:15 <kmc> hm
22:13:45 <kmc> CTR requires a nonce, which could be annoying
22:14:09 <shachaf> What mode doesn't?
22:14:15 <kmc> "Nevertheless, there are specialized attacks like a Hardware Fault Attack that is based on the usage of a simple counter function as input."
22:14:22 <kmc> CBC doesn't
22:14:30 <shachaf> CBC has an IV
22:14:38 <shachaf> What's the difference between an IV and a nonce?
22:14:41 <kmc> er, right, i guess that's the same thing basically
22:14:43 -!- atriq has quit (Ping timeout: 245 seconds).
22:16:07 -!- atriq has joined.
22:16:29 <fizzie> I have a crypto-failure T-shirt bought from Bletchley Park; it's describing the occasion when Germans once resent a message (with different typos) reusing -- against the regulations -- the Lorentz stream cipher settings that had been used for the original message. Both were intercepted, with predictable results: http://www.codesandciphers.org.uk/lorenz/fish.htm
22:16:53 <kmc> does the nonce have to be secret in either case?
22:17:05 <shachaf> No, it's not supposed to be secret.
22:18:32 <shachaf> Really there's no point in separating the nonce and the counter, as far as I can tell.
22:18:49 <shachaf> Instead of having an n-bit nonce and an n-bit counter, just have a 2n-bit counter that starts at a random point.
22:19:12 <kmc> 'The one snag with Enigma of course is the fact that if you press A, you can get every other letter but A. I picked up this message and—one was so used to looking at things and making instant decisions—I thought: 'Something's gone. What has this chap done. There is not a single L in this message.' My chap had been told to send out a dummy message and he had just had a fag [cigarette] and pressed the last key on the keyboard, the L
22:19:18 <kmc> So that was the only letter that didn't come out. We had got the biggest crib we ever had, the encypherment was LLLL, right through the message and that gave us the new wiring for the wheel [rotor]. That's the sort of thing we were trained to do. Instinctively look for something that had gone wrong or someone who had done something silly and torn up the rule book.'
22:19:47 <kmc> shachaf: yeah
22:20:03 <Lumpio-> ...they had to translate "fag" and "wheel"...?
22:20:05 <Lumpio-> Good grief
22:20:15 <kmc> someone objected that the incrementing plaintext nonce in mosh packets makes it easy to identify the traffic as mosh traffic
22:20:27 <kmc> by someone i mean jacob appelbaum
22:20:39 <shachaf> 15:17 <newsham> challenge/response protocol that is symetrical so that you can pass back the challenge to the remote as if it was your challenge
22:20:42 <shachaf> 15:17 <newsham> and the response you get ack can be used as your response
22:20:44 <shachaf> 15:17 <newsham> diffie-hellman without checking that the challenge you get is in the proper range (ie. so that the attacker can pass in a value that is zero modulu N)
22:20:47 <shachaf> 15:18 <newsham> using number-of-seconds-since-epoch as the seed to a PRNG which is used to generate an important secret.
22:20:50 <shachaf> 15:19 <newsham> using a weak PRNG which can easily be predicted from past values, or alternately one with a very small output space
22:21:09 <kmc> nice
22:21:19 <kmc> yes i've seen the srand(time(NULL)) used to generate AES keys
22:21:24 <kmc> saw this on stackoverflow anyway
22:21:27 <pikhq> Gah!
22:21:54 <shachaf> There is a program running on your system which generates random tokens using time(NULL). :-(
22:21:56 <kmc> you see on Windows, the OpenSSL PRNG requires seeding
22:21:58 <pikhq> C rand() should only be used for games and such where all the entropy that matters is "eh, looks random I guess".
22:22:14 <coppro> shachaf: what system?
22:22:43 <shachaf> I should probably report the bug before saying it, or something.
22:22:59 <coppro> pikhq: it's acceptable but not ideal for situations where the randomness is not as important as the fact that there are arbitrary numbers
22:23:00 <shachaf> 15:20 <newsham> having a buggy challenge-response implementation where you expect to get back Encr(n+1) as a verifier, but due to bug in impl you actualy require Encr(n) as verifier
22:23:05 <shachaf> 15:20 <newsham> (ie. the "n+1" function has bug that makes it a nop)
22:23:05 <coppro> (hash salts come to mind)
22:23:07 <fizzie> Low bits of old-old C rand()s shouldn't even be used for that. :p
22:23:07 <shachaf> 15:22 <newsham> having a strong RNG, but always using it after a fork() in a server daemon so that the value sent out by the daemon always uses the same random sequence for each session
22:23:11 -!- Nisstyre has quit (Quit: Leaving).
22:23:46 -!- newsham has joined.
22:23:47 <newsham> hi
22:23:51 <kmc> hi newsham
22:24:14 <kmc> can i pass on your suggestions to the people who might be running a crypto-related wargame?
22:24:18 <newsham> yup
22:24:20 <kmc> by "might be" i mean "i am trying to convince them to"
22:24:20 <kmc> thanks
22:24:30 -!- Nisstyre_ has quit (Quit: Leaving).
22:24:37 <shachaf> kmc: You should run it yourself!
22:24:46 <kmc> too much work
22:24:49 <newsham> - having a protocol where replaying a transaction can cause somethign bad to happen, and not having any liveness in the protocol that prevents an old message (encrypted/authenticated) to by simply replayed
22:25:27 <newsham> - having an authenticator that covers a bunch of important fields, but leaves some important field unprotected (and hence tamperable)
22:25:48 <newsham> possibly due to oversight or possibly due to bug where the authenticator length is incorrect
22:28:51 <newsham> - using a really small keyspace so that brute force is trivial
22:31:32 <kmc> hm, i bet you could construct a fun situation where the message length field is the unprotected one
22:31:40 <kmc> allowing you to send a truncation of any legitimate message
22:31:47 <kmc> kind of the opposite of a hash extension attack
22:32:39 -!- Arc_Koen has left.
22:33:22 <newsham> truncation attack.. woot
22:33:56 <newsham> or like you have an authenticator over the whole msg but not of the pseudodata like what session its from or what IP its from
22:34:01 <newsham> so that other sessions or other IPs can replay the msg
22:34:43 <newsham> ps: if this is going to be a public game, i'd love to hear about it.. love even more if its available for use offline after the game is done
22:35:29 <FreeFull> Security isn't easy
22:35:33 <kmc> i'm suggesting it to the people who are currently running https://stripe-ctf.com
22:39:57 -!- nooga has quit (Ping timeout: 260 seconds).
22:41:13 <kmc> FreeFull: indeed
22:43:25 <newsham> security is super easy
22:43:29 <newsham> its just hard to add functionality
22:44:03 <newsham> its all really turing and church's fault
22:44:58 <kmc> security was hard before computers too =(
22:45:27 * kmc spent a lot of time performing privilege escalation attacks on pin tumbler lock systems
22:45:45 -!- atriq has quit (Remote host closed the connection).
22:45:53 <FreeFull> It'd be really cool to know if one way functions exist
22:46:00 <newsham> eh.. locks arent designed to be hard to break
22:46:06 <newsham> they're designed to be cheap and convenient
22:46:40 <FreeFull> Feynman did a bit of stuff with locks
22:46:53 <kmc> well some of these were medeco "high security" locks
22:46:59 <newsham> i read abou that in "you're full of shit, mr. feynman"
22:47:03 <kmc> haha
22:47:16 <kmc> typical house locks are a joke, even i can pick those
22:47:38 <FreeFull> Ever heard of bump keys?
22:47:55 <newsham> yup. nifty when they work.. not always suitable
22:48:06 <newsham> youtube has a bazillion videos on em
22:48:28 <kmc> at school we had mailbox locks which were so shitty that basically any key could be used as a bump key
22:49:44 <FreeFull> I once tried my house key on a school door lock
22:49:47 <FreeFull> And it just happened to work
22:49:55 <FreeFull> Just that one lock though
22:49:56 <kmc> nice
22:50:26 <FreeFull> Then I calculated the chances of that happening with a random lock
22:50:29 <FreeFull> I forget what they were
22:50:43 <FreeFull> But higher than 1 in 70000
22:50:54 <FreeFull> I think anyway
22:51:01 <kmc> yeah
22:51:04 <newsham> was that in feynman's book, too?
22:51:15 <kmc> normal house key has 5 pins, with maybe 10 possible heights for each
22:51:40 <newsham> but if it was at a school they might have made master keys, which increases the odds of a random match
22:51:42 <kmc> possible the school lock was missing pins or was excessively worn such that more keys would open it
22:51:45 <kmc> or master keys, yeah
22:51:57 <FreeFull> That's 10⁵
22:52:23 <FreeFull> So 1/100000
22:52:25 <kmc> increases dramatically... if the master key doesn't share any heights with the other key, you now have 2^5 = 32 keys that can open that lock
22:52:29 <kmc> and many systems have more than one master
22:53:01 <kmc> the priv esc that i alluded to is that you can disassemble a few locks in low security areas and thereby compute the master key which works on high security areas too
22:53:05 <FreeFull> Are you sure about the 10 heights?
22:53:12 <FreeFull> I figure it's less than that
22:54:36 <kmc> schlage locks have 10 heights: http://www.clksupplies.com/shop/schlage-pins-bottom-pins-c-22_33_69.html?osCsid=3c7748ac9175559f241b14333637e96e
22:55:17 <newsham> and being off by 1/10th of the height results in no-open?
22:55:53 <kmc> depends
22:56:09 <kmc> i think a key which is halfway between official heights will open locks of either height, with enough jiggling
22:56:33 <kmc> you kind of learn the magic wiggle to make each of your handmade master keys open each lock
22:57:04 <newsham> so more like 5^x than 10^x?
22:57:07 <kmc> the master and non-master heights in a given pin will never be adjacent, though
22:57:16 <kmc> because the spacer between them would be too small
22:57:29 <kmc> well, FreeFull's house key is probably closer to spec
22:57:40 <kmc> and not exactly halfway between heights
22:58:16 <kmc> my guess is lazy locksmith at the school didn't fill all the columns
22:58:19 <kmc> but it could just be luck
22:58:28 <FreeFull> I bet luck
22:58:31 <kmc> if one thing happens to you every second, you should expect a one-in-a-million coincedence about once a month
22:58:32 -!- DHeadshot has joined.
22:59:07 <newsham> but its never the lotto
22:59:14 <newsham> its always the clock reading "1234"
22:59:33 -!- MoALTz has quit (Ping timeout: 260 seconds).
22:59:35 <newsham> or pbs having the mr. rogers neighbhood music video on right as you're flipping
23:02:36 <Phantom_Hoover> <kmc> at school we had mailbox locks which were so shitty that basically any key could be used as a bump key
23:02:57 <Phantom_Hoover> There was a locker in my old school that you could unlock by sticking your thumb in the middle and twisting.
23:03:02 <Phantom_Hoover> It may have been broken.
23:03:48 <kmc> also you can "pick" Master brand padlocks just by hitting a metal bit at the back of the lock
23:03:51 <kmc> ignoring the pins
23:07:34 -!- DHeadshot has quit (Read error: Connection reset by peer).
23:14:45 -!- monqy has joined.
23:15:45 <Phantom_Hoover> newsham, sadly news-ham is no longer among us
23:21:21 -!- impomatic has left.
23:24:53 -!- pikhq_ has joined.
23:27:13 -!- pikhq has quit (Ping timeout: 244 seconds).
23:27:38 <kmc> nice, Newegg sells a 21" monitor with 2560 x 2048 resolution
23:27:41 <kmc> for only $10,599
23:29:21 <newsham> http://www.bbc.co.uk/news/technology-19370582 Broadcasts in 8K will offer a resolution of 7,680 by 4,320 pixels - roughly the equivalent of a 32 megapixel photo.
23:29:41 <newsham> "I suspect that we won't see this become available to consumers below $10,000 until 2025," Paul O'Donovan, principal analyst at the tech consultancy Gartner, told the BBC.
23:33:21 <shachaf> I hear those fishy Korean 27" 2560xsomething LCDs are nice.
23:34:29 <newsham> also cool: outdoors
23:35:58 <kmc> i'm not sure what this "Large Format Monitor" category is
23:36:18 <kmc> they seem to be HDTVs, without the tuner?
23:36:38 <shachaf> newsham: Outdoors got way better when I got the high-resolution expansion.
23:36:48 <shachaf> I think kmc got that too recently.
23:36:49 <kmc> i smell price discrimination
23:36:55 <kmc> yep
23:47:10 <kmc> > 7680 * 4320
23:47:11 <lambdabot> 33177600
23:47:36 <pikhq_> Which is cheaper, HDTVs or those?
23:48:56 <pikhq_> Appears to be the HDTVs.
23:49:01 <pikhq_> Weird.
23:49:16 <kmc> here's a "Large Format Monitor Built in TV Tuner"
23:50:39 <kmc> HDTVs are a consumer product, LFMs are a business product, everyone knows a business can't just buy a consumer product even if it does the same exact thing
23:51:16 <pikhq_> It's a shame it's near impossible to get reasonably accurate measurements of the performance of displays...
23:51:33 <pikhq_> "1000000:1 contrast!"
23:51:34 <kmc> what sort of performance, and why is it impossible?
23:51:44 <kmc> oh sure, disregard the manufacturer's claims
23:51:55 <pikhq_> Bull fucking crap you're not getting 1000000:1 contrast.
23:51:57 <kmc> but there are a fair number of websites giving detailed data on contrast, color reproduction, etc
23:52:12 <kmc> http://www.tftcentral.co.uk/ has some pretty comprehensive tests
23:52:13 <pikhq_> Yeah, I was refering to manufacturer's claims.
23:52:19 <oerjan> pikhq_: "our patented blackbody monitors..."
23:52:27 <pikhq_> Obviously, if you look for enthusiasts who measure things sanely, you're good.
23:52:29 -!- zzo38 has joined.
23:52:50 <pikhq_> oerjan: "We accurately display both the brightness of 0k and the sun!"
23:53:00 <oerjan> actually can even a blackbody get that, at room temperature...
23:53:11 <pikhq_> Who said room temperature?
23:53:15 <oerjan> ah.
23:53:20 <oerjan> jolly good then
23:54:30 <pikhq_> Safety waiver required for purchase; temperatures of 0K may not be appropriate for corporeal beings.
23:54:46 <oerjan> nor the sun one, incidentally
23:55:05 <kmc> i think it's much easier for enthusiasts to objectively review monitors compared to (say) laptop battery life
23:55:20 <pikhq_> There are actual objective measurements to be made there.
23:55:21 <kmc> reviewers will come up with battery life numbers differing by 2+ hours on similar-sounding tests
23:55:37 <pikhq_> And what's more, the objective measurements map very well to *what you actually care about*.
23:55:57 <pikhq_> A monitor with bad contrast will actually look like shit.
23:56:17 <shachaf> "Area Man purchases Large Format Monitor with Built-in TV Tuner"
23:57:09 -!- Nisstyre has joined.
23:57:51 <kmc> hahaha
23:59:40 <oerjan> sadly that is probably too obscure for the onion?
2012-08-27
00:00:46 -!- newsham has left.
00:00:49 -!- Braber01 has joined.
00:01:01 <oerjan> `welcome Braber01
00:01:05 <kmc> what does a contrast spec like "DC 2,000,000:1 (1000:1)" even mean?
00:01:06 <HackEgo> Braber01: 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:01:13 <kmc> does it mean "here is a made up number and the real contrast is 1000:1"
00:01:19 <Braber01> Are All brainfuck interperters Diffret? I think I might be reading the Table wrong too.
00:01:27 <Phantom_Hoover> <pikhq_> oerjan: "We accurately display both the brightness of 0k and the sun!"
00:01:28 <Phantom_Hoover> Uh
00:01:33 <Braber01> *Diffrent
00:01:44 <Phantom_Hoover> That ratio would involve dividing by 0.
00:01:44 <oerjan> Braber01: which table?
00:02:02 <Braber01> ASCII table that's the one i need to use right?
00:02:12 <pikhq_> Phantom_Hoover: Yes, yes it would. :D
00:02:28 <oerjan> Braber01: please give a link
00:02:34 <pikhq_> Phantom_Hoover: Hence why I named only the smallest and largest points in the range, not the ratio.
00:02:35 <zzo38> Braber01: I do not understand what you mean
00:02:43 -!- elliott has joined.
00:02:44 <Braber01> http://duckduckgo.com/?t=lm&q=ASCII+table this.
00:02:47 <zzo38> Use the ASCII table for what purpose?
00:02:51 <elliott> X
00:02:57 <Phantom_Hoover> The sun is the hottest a blackbody can go?
00:03:17 <Braber01> to find the decimal value of a letter
00:03:23 <zzo38> Braber01: That ASCII table is OK, yes.
00:03:25 -!- Braber01 has changed nick to BraberAFK.
00:03:26 <elliott> Braber01: ASCII table? I don't know the context, but you should have basically ~no use for one of those in 2012.
00:03:30 <zzo38> Brainfuck does normally use ASCII.
00:03:37 <kmc> elliott: uh
00:03:38 <kmc> disagree
00:03:50 <elliott> Huh? No, brainfuck deals in 8-bit-binary-except-you-can't-input-the-NUL-byte.
00:04:17 <elliott> kmc: Well, rephrase: "if you think you want an ASCII table, there's a very high probability you're wrong; if you're not wrong, then you probably don't need to ask any questions about it, or whatever".
00:04:27 <zzo38> Actually you can input the NUL byte, but there isn't a way to distinguish EOF from whatever value is used for indicating EOF.
00:04:28 <pikhq_> Except for greater-than-8-bit Brainfuck, which instead deals in nobody-implements-that. :)
00:04:33 <elliott> kmc: Double rephrase: in an ideal world, you'd have no use for one. :(
00:04:35 <kmc> elliott: i mean, i use "man ascii" pretty often
00:04:54 <Phantom_Hoover> elliott, wait, how else are you meant to get a quick reference for ASCII?
00:05:02 <monqy> elliott: visiting #esoteric? what's the occasion
00:05:06 <elliott> kmc: Well, OK. But presumably in the context of using it as a subset-of-Unicode table. (Can we have "man unicodetable"?)
00:05:09 <kmc> if you want to call it a table of the first 128 Unicode characters and their UTF-8 encodings, rather than an ASCII table, sure
00:05:10 <elliott> monqy: party.
00:05:24 <zzo38> I prefer ASCII.
00:05:24 <elliott> Phantom_Hoover: It's the "ASCII" bit that's the problem.
00:05:34 <kmc> no but you can have "man iso-8859-1" :(
00:05:49 <pikhq_> 16-bit Brainfuck works decently if you let EOF=-1 and read bytes, for instance...
00:06:04 <pikhq_> Some Brainfuck programs will even work there.
00:06:06 <elliott> 16-bit brainfuck is ugly. So is EOF-as-0 brainfuck. So is EOF-as-unchanging brainfuck.
00:06:14 <elliott> Spoiler: there is no non-ugly brainfuck IO scheme!!
00:06:27 <kmc> i stick to ASCII so that i can use ISO 2022 to map line drawing characters into the upper half of byte space </troll>
00:06:30 <elliott> (But just use 8-bit-and-EOF-as-0, because everyone else does, except for the people who don't, but they're wrong.)
00:06:35 <pikhq_> Though none that I write; if I'm doing Brainfuck, I'm using the mod-2^8-1 arithmetic for all it's worth. >:D
00:06:36 <zzo38> pikhq_: Yes that does work. And, if the input is known 7-bit ASCII and using 8-bit cells then you could use 255 for EOF.
00:06:49 <zzo38> But the input might not be 7-bit ASCII, it might be 8-bit input instead.
00:06:53 <elliott> kmc: man iso-8859-1 upsets me.
00:06:55 -!- Nisstyre_ has joined.
00:07:03 <elliott> kmc: It doesn't even have a deprecation warning or a BUGS section.
00:07:20 <kmc> obviously you should use 0x03 or 0x04 for EOF
00:07:32 <oerjan> BraberAFK: brainfuck doesn't really care about character codes, it just uses binary except for that EOF problem. for example the brainfuck bots in this channel should work best if you use utf-8, since that's the recommended character set for this irc channel.
00:07:53 <zzo38> Yes you could use the end of transmission code just to indicate the end of transmission if your input only has one transmission.
00:07:56 <elliott> oerjan: Hey, can you use your wiki admin powers to block cpressey for reminding me of the featured language thing?
00:08:00 <oerjan> ^bf ,[.,]!Tëstung
00:08:01 <fungot> Tëstung
00:08:06 -!- BraberAFK has quit (Ping timeout: 268 seconds).
00:08:17 <oerjan> elliott: sure, sure, as soon as i get them
00:08:22 <elliott> oerjan: OK, done.
00:08:28 <elliott> http://esolangs.org/wiki/Special:Block/Chris_Pressey
00:08:30 <elliott> Go for it!
00:09:50 <zzo38> I don't really like ISO 8859-1; I prefer CP437.
00:10:20 <elliott> Where did newsham go?
00:10:29 <elliott> I was told there was newsham.
00:10:59 <elliott> kmc doesn't count, he's just an old sham.
00:11:04 <zzo38> I think there seem to be some problem using CP437 with Linux, but I made up a program to allow the full CP437 character set used with Linux, in addition to the shift-in/shift-out codes also work
00:11:06 <elliott> kmc: (the joke is you are old)
00:11:08 <kmc> -_-
00:11:12 <oerjan> elliott: gosh darn it there seems to be a bug preventing me.
00:11:25 <elliott> oerjan: Huh. I'm going to block you for exploiting a bug, then.
00:11:40 <kmc> zzo38: in the Linux VT?
00:11:43 <kmc> how does this program work?
00:11:44 <Phantom_Hoover> block mauriceling too
00:11:54 <pikhq_> zzo38: Well, I suppose if you're going to use an 8-bit encoding, you might as well use the classic one. :P
00:11:55 <monqy> apparently newsham left
00:12:03 <monqy> i didn't know he was even here
00:12:13 <monqy> but then how could he have left
00:12:35 <zzo38> kmc: Yes. The program works by loading stuff using the character encoding files, setting environment variables, and setting escape codes.
00:12:37 <elliott> monqy: that's a really good poem
00:12:55 <Phantom_Hoover> It's almost a haiku.
00:13:00 <elliott> kmc: Do you know Rust?
00:13:06 <elliott> `quote beautiful summer
00:13:09 <HackEgo> 471) <monqy> beautiful summer / fuck fuck fuck fuck fuck fuck fuck / fuck fuck fuck fuck fuck
00:13:25 <kmc> sadly "iconv -f cp437" does not have the graphical renderings for 0x00 - 0x1F
00:13:32 <kmc> elliott: no, but i've looked through the language docs here and there
00:13:46 <zzo38> kmc: I know; but my program fixes that so that you can use all of the graphical renderings.
00:13:52 <kmc> zzo38: I guess there is an ioctl() to set the console font?
00:13:56 <elliott> kmc: That's what "know" means, silly.
00:14:05 <elliott> monqy: remember when you said funny things like that
00:14:10 <monqy> :')
00:14:33 <zzo38> kmc: Maybe there is; I don't know. I am using a shell script (it must be loaded with . rather than as an executable file).
00:15:06 <zzo38> http://zzo38computer.cjb.net/backup/load_mzx_ascii http://zzo38computer.cjb.net/backup/newunimap.1
00:15:22 <Phantom_Hoover> http://esolangs.org/wiki/Ragaraja
00:15:28 <Phantom_Hoover> OK this is worse than I remember.
00:15:36 <kmc> what do the escape codes do?
00:15:42 <Phantom_Hoover> It's, like, the Platonic worst Brainfuck derivative.
00:15:52 <zzo38> kmc: Read the manual page
00:16:57 <zzo38> You will also need the file called "mzx_ascii.chr", you can get it in http://zzo38computer.cjb.net/mzx1/mzx_extended/megazeux_src.zip do a list before extracting it to find the directory it is in and extract the single file called "mzx_ascii.chr" from there.
00:17:07 <elliott> kmc: Anyway, tell me about Rust.
00:17:12 <elliott> I mean, if you want to.
00:17:27 <monqy> i remember glancing at the rust docs
00:17:28 <zzo38> The file "mzx_ascii.chr" appears to be in the root directory of the archive.
00:17:32 <monqy> I don't rmeember anything about the rust docs
00:17:38 <monqy> just that i glanced at them
00:17:47 <oerjan> Phantom_Hoover: it reminds me a bit of NSQX
00:18:26 <Phantom_Hoover> I know, but I don't think even he stooped this low.
00:18:35 <oerjan> and his Unicode edits
00:18:35 <elliott> excuse me, NSQX was an artist
00:18:44 <Phantom_Hoover> It's the ultimate in heaping worthless bloat onto Brainfuck.
00:18:45 <monqy> uniCode "at least it's not a brainfuck derivative"
00:18:54 <elliott> `pastlog no quality any ?more
00:19:25 <HackEgo> 2012-04-10.txt:11:55:58: * NSQX thinks there is no quality anymore
00:19:45 <elliott> See?
00:19:49 <oerjan> O KAY
00:19:49 <elliott> He knows the pain of bad esolangs.
00:20:34 <Phantom_Hoover> elliott, do i have administrative permission to make snide comments on mauriceling's talk page
00:21:00 -!- BraberAFK has joined.
00:21:22 <elliott> Phantom_Hoover: no.
00:22:15 <Phantom_Hoover> dammit man
00:22:31 <oerjan> wait didn't you already make some
00:23:27 <Phantom_Hoover> As it turns out that was on his mainspace article's talk page.
00:23:34 <Phantom_Hoover> So now I just feel stupid.
00:24:21 <elliott> @type foldr
00:24:22 <lambdabot> forall a b. (a -> b -> b) -> b -> [a] -> b
00:24:23 <elliott> @type foldl
00:24:24 <lambdabot> forall a b. (a -> b -> a) -> a -> [b] -> a
00:24:34 <oerjan> Phantom_Hoover: actually the snide comment on Talk:Ragaraja is ehird's
00:24:53 <Phantom_Hoover> That was from when it was a giant empty table though.
00:25:05 <oerjan> THEN IT GOT WORSE
00:25:27 <elliott> kmc: :(
00:25:33 <kmc> what?
00:26:01 <elliott> I told you to tell me about Rust and then I said "if you want to" and now I'm frowning.
00:26:03 <elliott> oerjan: That wasn't snide!
00:26:07 <elliott> oerjan: I actually honestly had no idea if it was a joke or not.
00:26:08 <kmc> sorry
00:26:12 <kmc> you should just read the docs
00:26:14 <elliott> oerjan: It had no commands at the time.
00:26:18 <elliott> kmc: I know. :(
00:26:30 <oerjan> elliott: Ö'QUAY
00:27:09 <elliott> kmc: But, you know, if you take "k", go five letters left on a QWERTY keyboard, press down, then go to "m", go up-right twice, press down, and then finally to go "c" and press it, and then press "s", you get "docs".
00:27:23 <elliott> kmc: So I think by "read the docs" you mean "ask me".
00:27:36 -!- BraberAFK has quit (Read error: Connection reset by peer).
00:27:46 <oerjan> argument by keyboard metric
00:29:12 -!- Braber01 has joined.
00:29:23 <Phantom_Hoover> oerjan, O'Quay, the famed Irish docking dynasty.
00:29:43 <Braber01> Sorry about that One of the new interfaces in Linux isn't working well.
00:30:14 <Braber01> to make a loop in bf. you would do someting like +++++[+>+++++<-] right?
00:30:24 <oerjan> Braber01: i suddenly realize that your problem is probably not really the ASCII table, since even if it's slightly inaccurate you'd probably be able to work with it...
00:30:35 <Phantom_Hoover> Braber01, yes.
00:30:50 <Phantom_Hoover> Although that loop is infinite, you probably meant something else.
00:31:21 <kmc> ^bf +[]
00:31:25 <oerjan> Phantom_Hoover: only with bignums
00:31:26 <fungot> ...out of time!
00:31:46 <oerjan> ^bf +++++[+>+++++<-]>.
00:31:51 <fungot> ...out of time!
00:32:00 <Phantom_Hoover> oerjan, nope, the cell used for testing the loop is unchanged by the loop body.
00:32:03 <Braber01> yeah, I'm a little confused on the syntax for loops it's been a long time since I worked with brain***
00:32:05 <oerjan> oh right
00:32:09 <elliott> brainass
00:32:14 <kmc> you can say "fuck" here
00:32:23 <elliott> no you can't
00:32:24 <oerjan> fuck, you can?
00:32:26 <elliott> no
00:32:33 <oerjan> ok fuck it then
00:32:34 <monqy> stop saying fuck!!!!!!!
00:32:44 <monqy> im so offended
00:32:47 <monqy> im crying
00:32:51 <elliott> look what you have done oerjan
00:32:53 <Braber01> I acually thought the language was called brainf*ck and the * was part of the language name :)
00:33:28 <oerjan> ok then, no one say fuck
00:33:58 <Phantom_Hoover> Braber01, [whatever] means "if the current cell is not 0, execute whatever, then execute [whatever]".
00:34:09 <oerjan> i guess brainf*ck is better than brainfork, as i think some have called it (although that's a derivative too i think)
00:34:28 * Phantom_Hoover wonders if Branefuck is a thing.
00:34:38 <Phantom_Hoover> It is not!
00:34:41 <oerjan> there is fuckyourbrane
00:34:44 <elliott> `pastlog branefuck
00:34:45 <Phantom_Hoover> IF ONLY I KNEW MORE STRING THEORY
00:34:51 <elliott> isn't it fukyorbrane
00:34:52 <HackEgo> No output.
00:35:10 <oerjan> elliott: seems so
00:35:11 <monqy> i wish i was as cultured on brainfuck derivatives as elliott and oerjan
00:35:48 <oerjan> "Here's the current FYB scoreboard:"
00:35:59 <oerjan> one might wonder if that's up to date
00:36:07 <monqy> I sure do
00:36:14 <Phantom_Hoover> I guess it could be like you have a space of branes and you have instructions to alter their harmonics.
00:36:37 -!- copumpkin has quit (Ping timeout: 260 seconds).
00:36:41 <Braber01> So go get the Ascii Char(68) that would be ++++++++>[+>++++++++<-]++++ ?
00:36:46 <monqy> phantom hoover invents brainfuck derivative, world in shock
00:36:48 <kmc> > map pred "gvdl"
00:36:49 <lambdabot> "fuck"
00:36:53 <Phantom_Hoover> Braber01, no.
00:37:03 <elliott> Braber01: ASCII is irrelevant here
00:37:07 <Braber01> there's a diritive called fuckfuck
00:37:14 <elliott> it just puts the number 68 on the tape (assuming the program is correct, I haven't looked at it)
00:37:29 <oerjan> ^bf ++++++++[->++++++++<]>++++.
00:37:29 <fungot> D
00:37:33 <Phantom_Hoover> Note that after executing the loop body the cell under the pointer remains unchanged.
00:37:36 <elliott> > ord 'D'
00:37:37 <lambdabot> 68
00:37:39 <Phantom_Hoover> oerjan's code is correct.
00:37:40 <elliott> apparently it does put 68 on the tape
00:37:50 <monqy> congratulations
00:38:00 <oerjan> YAY
00:38:15 <oerjan> !bf_txtgen YAY
00:38:20 <EgoBot> ​49 +++++++++++[>++++++>++++++++>+><<<<-]>>+.<-.>.>-. [121]
00:38:33 <oerjan> ^bf +++++++++++[>++++++>++++++++>+><<<<-]>>+.<-.>.
00:38:33 <fungot> YAY
00:38:49 <oerjan> ^bf +++++++++++[>++++++>++++++++><<<-]>>+.<-.>.
00:38:50 <fungot> YAY
00:39:28 -!- copumpkin has joined.
00:39:38 <kmc> YAAAAAAYYYYYYYYYYYYYYYYYYYYYYYYY
00:40:02 <kmc> !bf_textgen YAAAAAAYYYYYYYYYYYYYYYYYYYYYYYYY
00:40:10 <oerjan> ^bf +++++++++++[>++++++>++++++++><<<-]>>+.<-......>........................
00:40:10 <fungot> YAAAAAAYYYYYYYYYYYYYYYYYYYYYYYY
00:40:16 <elliott> ^rainbow yay
00:40:16 <fungot> yay
00:40:29 <kmc> !bf_textgen YAY
00:40:45 -!- derdon has quit (Remote host closed the connection).
00:41:01 <oerjan> i shall recommend corect spalling
00:41:09 <kmc> oh
00:41:11 <kmc> !bf_txtgen YAY
00:41:14 <EgoBot> ​59 +++++++++++++[>>+++++++>+++++><<<<-]>++.>--.>.<.<.++++++++. [240]
00:41:15 <elliott> oerjan: you should op me btw
00:41:17 <kmc> creat
00:41:24 <kmc> ^bf +++++++++++++[>>+++++++>+++++><<<<-]>++.>--.>.<.<.++++++++.
00:41:25 <fungot> YAY.
00:41:28 <Phantom_Hoover> oerjan, also you should give Gregor voice
00:41:50 <oerjan> all those duties
00:42:03 <elliott> no, just op me
00:42:06 <elliott> that's your only duty
00:42:11 <elliott> i bet even kmc supports
00:42:21 <oerjan> excellent, they're easier to ignore one by one
00:42:27 <Phantom_Hoover> support elliott for op on condition he voices Gregor
00:42:49 <monqy> support elliott for op on condition he doesn't use his powers to ban himself
00:42:57 <kmc> !bf_txtgen ▁▂▃▄▅▆▇█
00:42:58 <elliott> monqy: I promise I won't.
00:43:00 <elliott> I'm no lament.
00:43:00 <EgoBot> ​284 +++++++++++++++[>+++++++++++++++>++++++++++>+++++++++>+++++++++++++++<<<<-]>+.>.>------.>+.<<.>+.<<.>.>+.<<.>.>+.<<.>.>+.>.<<.>+.>.<<.>+.>.<<.--------------.------------------------------------------------------------------------------------------------------------------------------. [639]
00:43:05 <elliott> monqy: I won't even ban you!
00:43:07 <elliott> I'm incredibly kind.
00:43:27 <monqy> sounds like something a good op would say!
00:43:27 <kmc> ^bf +++++++++++++++[>+++++++++++++++>++++++++++>+++++++++>+++++++++++++++<<<<-]>+.>.>------.>+.<<.>+.<<.>.>+.<<.>.>+.<<.>.>+.>.<<.>+.>.<<.>+.>.<<.--------------.------------------------------------------------------------------------------------------------------------------------------.
00:43:27 <fungot> ▁▂▃▄▅▆▇█.
00:43:34 <kmc> why does it put a dot at the end
00:43:49 <elliott> for the newline
00:43:56 <oerjan> kmc: EgoBot includes the end of line, which fungot censors
00:43:57 <elliott> ais523: you can op me too
00:43:58 <fungot> oerjan: mr president, as we saw with some disquiet that the real problem. we have shown our capacity to manage change. our proposal builds extensively on the existing model? the problems this report raises the need to terminate the fnord term of office of the high level of human health protection in all member states have demonstrated unanimously and promptly, through mr guterres, we were under intense pressure. this is obvious
00:43:59 <fungot> oerjan: the impressive number of projects in collaboration with all the consequences of enlargement, and, commissioner, ladies and gentlemen, today the sbarbati report which helps the elderly has been adopted with specific provision for ict within thematic budget lines would not, at the risk of not being particularly keen on, we would no longer be taken for the future.
00:44:03 <kmc> ah
00:44:20 <Braber01> Okay both my bf interperters are showing me an L%, I'm using beef & bf I'm not sure I'm using the right numbers :(
00:44:20 <Phantom_Hoover> ^style
00:44:21 <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
00:44:50 <Phantom_Hoover> http://esolangs.org/wiki/Brainfuck_constants
00:45:01 <elliott> ^style nethack
00:45:02 <fungot> Selected style: nethack (NetHack 3.4.3 data.base, rumors.tru, rumors.fal)
00:45:04 <elliott> fungot: hi
00:45:05 <fungot> elliott: gunyoki: the two-headed giant, with a thick mixture of sportsman and collector, gentleman and world traveler, a panther. ( nightmare at 20,000 feet, mounted on shafts about four to five feet high at the foot of a neanderthal. its body around in such a tool is found on both its arms and feet.
00:45:08 <elliott> ^style c64
00:45:09 <fungot> Selected style: c64 (C64 programming material)
00:45:10 -!- ChanServ has set channel mode: +o oerjan.
00:45:10 <elliott> fungot: boop
00:45:10 <fungot> elliott: the commodore 64 programmer's reference guide as a semicolon causes the program.
00:45:15 <elliott> oh great it's time for me to be opped!
00:45:19 <Phantom_Hoover> Stick a dot at the end of one of those.
00:45:20 -!- oerjan has set channel mode: +b *!*cheater@*.dip.t-dialin.net.
00:45:20 -!- oerjan has kicked cheater__ Ban evasion.
00:45:31 <elliott> you pressed the wrong button!!!!!!!!!!!!!!!!
00:45:38 -!- oerjan has set channel mode: -b *!*cheater@*.dip.t-dialin.net.
00:45:46 -!- oerjan has set channel mode: +b *!*cheater*@*.dip.t-dialin.net.
00:46:08 <elliott> you could try $a:cheater. (that bans anyone identified with the nickserv account cheater)
00:46:14 <oerjan> ah
00:46:18 <elliott> ^^^ kind of irc wisdom you'd expect from an OP, eh???
00:46:30 <kmc> shit is getting real in here
00:46:39 <elliott> yes
00:46:42 <monqy> yes
00:46:42 <elliott> i think we should ban kmc next
00:46:44 -!- oerjan has set channel mode: -b *!*cheater*@*.dip.t-dialin.net.
00:46:46 <kmc> :x
00:47:01 -!- oerjan has set channel mode: +b $a:cheater.
00:47:03 -!- kinoSi has quit (Read error: Connection reset by peer).
00:47:05 <oerjan> like that?
00:47:17 <elliott> yes, IIRC
00:47:24 <Phantom_Hoover> ban aloril
00:47:27 <elliott> i haven't banned anyone for ages though!!! more reasons to op me
00:47:30 <Phantom_Hoover> who even is aloril
00:47:32 -!- kinoSi has joined.
00:47:36 <elliott> `welcome kinoSi
00:47:36 <Phantom_Hoover> they have never ever talked
00:47:39 <HackEgo> kinoSi: 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:48:18 <elliott> i have no idea if kinoSi is even new
00:48:20 -!- oerjan has set channel mode: -b *!*lament@184.71.170.*.
00:48:20 <elliott> i am so out of the loop
00:48:28 <kmc> `welcome elliott
00:48:31 <HackEgo> elliott: 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:48:34 <elliott> oerjan: wow, unbanning lament without discussing it with the op who banned lament???
00:48:38 <Phantom_Hoover> `welcome aloril
00:48:40 <elliott> how can you even consider unbanning lament without asking lament about it
00:48:42 <HackEgo> aloril: 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:48:45 <elliott> IMO: op abuse
00:48:57 <elliott> op me and i promise to ban oerjan for life
00:49:07 <elliott> (that's my campaign speech)
00:49:18 <monqy> abusive ops need rehabilitiation not banning!!!!!!
00:49:18 <kmc> elliott: who's your running mate
00:49:20 <monqy> support revoked
00:49:23 <Phantom_Hoover> will you ban aloril
00:49:25 <elliott> kmc: either me, or monqy
00:49:26 <Phantom_Hoover> and voice gregor
00:49:28 <elliott> oh apparently me
00:49:35 <pikhq_> kinoSi: #esotericにようこそ!
00:49:37 <elliott> monqy: oerjan can be rehabilitated away from polite society
00:49:44 <monqy> support unrevoked
00:49:54 <elliott> (by banning him from polite society)
00:49:59 <elliott> (polite society is #esoteric)
00:50:03 <Gregor>
00:50:19 <elliott> SOUP
00:50:22 <monqy> Q: is #esoteric really polite?????
00:50:24 <kmc> NUTS
00:50:33 <elliott> monqy: is #esoteric even a society
00:50:44 <monqy> is it possible to be away from #esoteric
00:50:49 <elliott> monqy: by the way I thought you gave up on this place
00:50:57 <elliott> or do you just keep joining for no reason like me
00:51:00 <elliott> i do that................
00:51:05 <monqy> i haven't given up enough to bother removing it from autojoin
00:51:09 <elliott> mmm
00:51:11 <elliott> the height of apathy
00:51:20 <monqy> i hang around for the off chance of some good quotes
00:51:26 <monqy> from certain people
00:51:29 <pikhq_> kinoSi: 国際的のエソテリックプログラミングの場所です。詳しく情報はウィキで読めます:http://esolangs.org/wiki/Main_Page (他のエソテリカはirc.dal.netの#esotericでいい)
00:51:37 <monqy> everyone else I don't particularly care about!!
00:51:46 <oerjan> <elliott> op me and i promise to ban oerjan for life <-- I CLAIM ENTRAPMENT
00:51:47 <elliott> wow monqy, you'll hurt the feelings of everyone else!!!!
00:51:50 <elliott> poor Dovregubben
00:51:58 <monqy> what if Dovregubben is a good quotes person
00:52:03 <monqy> (who's Dovregubben)
00:52:09 <elliott> i have no idea let's find out
00:52:11 <elliott> `pastelogs Dovregubben
00:52:22 <HackEgo> http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.9136
00:52:55 -!- oerjan has set channel mode: +o elliott.
00:52:58 <elliott> awesome
00:53:04 <monqy> congratulations
00:53:08 <elliott> i'm going to sit here doing nothing to show how responsible i am
00:53:16 <oerjan> sweet
00:53:24 <monqy> 2008-12-24.txt:10:27:07: <oerjan> I Dovregubbens hall
00:53:24 <monqy> 2010-03-05.txt:20:53:02: <AnMaster> hiato yet I like Grieg very much. But a lot of his isn't pompous even though it uses a full orchestra. (Of course some exceptions, like "I dovregubbens sal" (iirc, and "In the hall of the mountain king" in English))
00:53:28 <monqy> 2012-07-04.txt:05:35:59: -!- Dovregubben has joined #esoteric.
00:53:29 <Phantom_Hoover> req. voicing of Gregor
00:53:31 <monqy> the story behind the mystery man
00:53:35 -!- oerjan has set channel mode: -o oerjan.
00:53:48 <elliott> i will be a calming presence in this channel
00:53:52 <elliott> nothing can go wrong with me at the helm
00:53:54 <oerjan> WHO SAID THAT
00:54:34 <kmc> military coup seizes #esoteric, CNN brings you the latest tweets as they develop
00:55:02 <monqy> 2012-07-04.txt:05:47:34: <itidus21> Dovregubben: make yourself comfortable.. i think you're in the right place
00:55:03 <elliott> /mode +q kmc
00:55:06 <monqy> the itidus blessing
00:55:07 <Phantom_Hoover> military coup siezes #esoteric, fails to deliver on election promises
00:55:22 <elliott> what promises
00:55:30 <Phantom_Hoover> voicing Gregor
00:55:42 <elliott> i never promised to do that
00:55:54 <Phantom_Hoover> yes you did
00:55:56 -!- Braber01 has quit (Quit: Leaving).
00:55:58 <elliott> no
00:56:07 <monqy> is this what they call a hot button issue
00:56:11 <Phantom_Hoover> you just did it when +m was on
00:56:30 <Phantom_Hoover> and due to your general hostility towards voicing issues it went unrecorded
00:56:32 <elliott> ooh, instead of kicking people I don't like, I could just selectively +v people I do like and then set +m
00:56:40 <elliott> put it in my list of things to do when I go mad with power
00:56:44 <Phantom_Hoover> is Gregor a person you do like
00:56:49 <elliott> how can I possibly comment
00:56:52 <elliott> I haven't gone mad yet
00:56:57 <elliott> maybe I never will go mad!
00:57:04 <Phantom_Hoover> but if you do?
00:57:08 <elliott> idk
00:57:12 <elliott> how can I say what I'll do when I'm mad
00:57:33 <Phantom_Hoover> go mad for a bit and see what you do
00:57:37 <Gregor> You know what they say: power corrupts, absolute power corrupts absolutely. I vote we get elliott network ops.
00:57:49 <kmc> i vote we give elliott the launch codes
00:58:15 <elliott> but I get more responsible the more power I'm given, it's awful
00:59:07 <elliott> kmc: i challenge you to a game of hangman
00:59:14 <elliott> monqy: (how do i type hangman without accidentally typing hangedman instead)
00:59:54 <kmc> no thx
01:00:19 <monqy> elliott: get hangman in here and tab-complete
01:00:20 <elliott> kmc: excuse me.
01:00:31 <monqy> I had to try very hard not to type hangedman!!!!! it's a curse
01:00:36 -!- Phantom_Hoover has changed nick to hangman.
01:00:42 <Gregor> ___ _____ _____ ___ ______ ____ ___ ____ ___: 0/6
01:00:46 <elliott> alright
01:00:50 <elliott> who is playing
01:00:54 <hangman> o
01:00:58 <elliott> no
01:01:00 <elliott> you're not playing
01:01:02 <elliott> i will play
01:01:08 <elliott> e
01:01:09 <hangman> it can be collaborative
01:01:15 <elliott> no, everyone but me is terrible
01:01:20 <elliott> except possibly kmc
01:01:26 <hangman> opening with e is so mainstream
01:01:31 <Gregor> __E _____ __O__ _O_ ____E_ O_E_ __E ____ _O_: 0/6
01:01:59 <elliott> q
01:02:05 <monqy> hey, i was going to do q!!!!
01:02:06 <Gregor> __E Q____ __O__ _O_ ____E_ O_E_ __E ____ _O_: 0/6
01:02:13 <elliott> x
01:02:19 <Gregor> __E Q____ __O__ _OX ____E_ O_E_ __E ____ _O_: 0/6
01:02:23 <elliott> 0/6?
01:02:25 <elliott> oh
01:02:28 <elliott> ther'es actually an x
01:02:29 <elliott> good
01:02:31 <elliott> z
01:02:31 <Gregor> Six failures are allowed.
01:02:34 <monqy> can i guess the whole thing
01:02:37 <elliott> monqy: no
01:02:39 <monqy> because
01:02:41 <Gregor> __E Q____ __O__ _OX ____E_ O_E_ __E __Z_ _O_: 0/6
01:02:43 <monqy> i'll give a hint
01:02:45 <elliott> no
01:02:46 <elliott> i hate hints
01:02:48 <monqy> Gregor is a bad person!!!!!!
01:02:49 <monqy> that's the hint
01:02:51 <elliott> v
01:02:56 <oerjan> Gregor: The quick brown fox jumped over the lazy dog
01:02:58 <Gregor> __E Q____ __O__ _OX ____E_ OVE_ __E __Z_ _O_: 0/6
01:02:58 <monqy> you're falling into his trap!!!!
01:03:01 -!- elliott has kicked oerjan oerjan.
01:03:11 -!- oerjan has joined.
01:03:19 <elliott> i think we can all agree that action was justified
01:03:20 <monqy> oerjan "a martyr"
01:03:26 <Gregor> I DO NOT RECOGNIZE TRYING TO SOLVE THE PUZZLE
01:03:28 <oerjan> fancy
01:03:30 <Gregor> YOU MUST MAKE LETTER GUESSES
01:03:34 <elliott> ok
01:03:34 <elliott> y
01:03:40 <Gregor> __E Q____ __O__ _OX ____E_ OVE_ __E __ZY _O_: 0/6
01:03:40 <oerjan> Gregor: Ø
01:03:46 <Gregor> __E Q____ __O__ _OX ____E_ OVE_ __E __ZY _O_: 1/6 Ø
01:03:50 <elliott> 2
01:03:57 <Gregor> __E Q____ __O__ _OX ____E_ OVE_ __E __ZY _O_: 2/6 Ø2
01:04:01 <elliott> ok
01:04:02 <elliott> i got this
01:04:02 <elliott> t
01:04:05 <monqy> 2 isn't a letter elliott !!!!!
01:04:12 <Gregor> T_E Q____ __O__ _OX ____E_ OVE_ T_E __ZY _O_: 2/6 Ø2
01:04:14 <elliott> monqy: it is in my heart
01:04:16 <hangman> h
01:04:16 <elliott> h
01:04:18 <monqy> h
01:04:20 <elliott> h
01:04:22 <hangman> h
01:04:24 <elliott> h
01:04:25 <Gregor> THE Q____ __O__ _OX ____E_ OVE_ THE __ZY _O_: 2/6 Ø2
01:04:28 <elliott> u
01:04:33 <hangman> you ruined the symmetry goddamn it!!!
01:04:38 <Gregor> THE QU___ __O__ _OX _U__E_ OVE_ THE __ZY _O_: 2/6 Ø2
01:04:39 <elliott> a
01:04:54 <elliott> hurry up
01:04:54 <Gregor> THE QU___ __O__ _OX _U__E_ OVE_ THE _AZY _O_: 2/6 Ø2
01:04:55 <elliott> þ
01:05:07 <Gregor> ÞE QU___ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 2/6 Ø2
01:05:08 <elliott> p.s. do you lose at 6/6 or 7/6
01:05:13 <Gregor> 6/6
01:05:14 <elliott> ý
01:05:24 <Gregor> ÞE QU___ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 3/6 Ø2Ý
01:05:26 <elliott> p.s. that was funny i laughed
01:05:31 <elliott> ð
01:05:37 <Gregor> ÞE QU___ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 4/6 Ø2ÝĐ
01:05:43 <elliott> ö
01:05:49 <Gregor> ÞE QU___ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 5/6 Ø2ÝĐÖ
01:05:51 <elliott> uh oh!!! better think quick
01:05:52 <elliott> i
01:05:58 <Gregor> ÞE QUI__ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 5/6 Ø2ÝĐÖ
01:06:01 <elliott> c
01:06:09 <Gregor> ÞE QUIC_ __O__ _OX _U__E_ OVE_ ÞE _AZY _O_: 5/6 Ø2ÝĐÖ
01:06:10 <elliott> g
01:06:17 <Gregor> ÞE QUIC_ __O__ _OX _U__E_ OVE_ ÞE _AZY _OG: 5/6 Ø2ÝĐÖ
01:06:18 <elliott> r
01:06:27 <Gregor> ÞE QUIC_ _RO__ _OX _U__E_ OVER ÞE _AZY _OG: 5/6 Ø2ÝĐÖ
01:06:28 <elliott> k
01:06:33 <Gregor> ÞE QUICK _RO__ _OX _U__E_ OVER ÞE _AZY _OG: 5/6 Ø2ÝĐÖ
01:06:34 <elliott> b
01:06:40 <Gregor> ÞE QUICK BRO__ _OX _U__E_ OVER ÞE _AZY _OG: 5/6 Ø2ÝĐÖ
01:06:41 <elliott> f
01:06:46 <oerjan> æ
01:06:47 <Gregor> ÞE QUICK BRO__ FUCK _U__E_ OVER ÞE _AZY _OG: 5/6 Ø2ÝĐÖ
01:06:50 <elliott> oerjan: no
01:06:51 <elliott> only i am playing now
01:06:52 <Gregor> ÞE QUICK BRO__ FUCK _U__E_ OVER ÞE _AZY _OG: 6/6 Ø2ÝĐÖÆ
01:06:53 <Gregor> YOU LOSE
01:06:54 <elliott> no
01:06:58 -!- elliott has kicked oerjan ruining my fucking joke.
01:07:02 -!- oerjan has joined.
01:07:10 <monqy> oerjan "a double martyr"
01:07:11 <oerjan> someone is a little trigger happy
01:07:13 <elliott> i was going to wait until only one letter was left
01:07:15 <elliott> and then do æ
01:07:16 <elliott> but no!!
01:07:37 <hangman> Unfortunately there are no diaereses in that sentence.
01:07:40 <elliott> monqy: you go next
01:07:55 <Gregor> _: 0/1
01:07:55 <monqy> elliott: my locale is broken so i cant make funny unicode jokes
01:08:00 <monqy> they all show up as question marks!!!
01:08:05 <elliott> no monqy was going to be the one with the word
01:08:07 <elliott> but ok monqy can do this next one
01:08:08 <hangman> a
01:08:09 <hangman> b
01:08:09 <hangman> c
01:08:09 <hangman> d
01:08:10 <hangman> e
01:08:11 <hangman> f
01:08:11 <hangman> g
01:08:15 <elliott> no
01:08:16 <Gregor> You lose lose lose.
01:08:17 <elliott> only monqy is playing
01:08:17 <oerjan> Gregor: ñ
01:08:20 <elliott> wtf
01:08:21 <kmc>
01:08:28 <monqy> but my joke was the word was going to be a smiley face
01:08:28 <Gregor> kmc was right.
01:08:30 <elliott> monqy: come up with a word i'm ready
01:08:31 <monqy> but i cant type smiley faces
01:08:36 <hangman>
01:08:48 <elliott> monqy: it should be a proper word!
01:08:49 <elliott> i'm counting on you
01:08:56 <monqy> smiley faces are a word!!!
01:09:08 <elliott> no unicode !!!!! you funny broken unicode person
01:09:12 <elliott> let's call you oerjan 2
01:09:25 * shachaf return
01:09:29 <monqy> in other news i'm bad at thinking of words
01:09:31 <shachaf> elliott: Who died and made you op? :-(
01:09:33 <monqy> shachaf can you think of a word for me
01:09:42 <elliott> shachaf: oerjan
01:09:44 <elliott> R.I.P.
01:09:45 <shachaf> monqy: "telemarketer"
01:09:48 <monqy> ok
01:09:52 <monqy> let's see how many letters is that
01:09:57 <hangman> ______ 0/6
01:09:59 <elliott> no
01:10:00 <elliott> hangman
01:10:03 <elliott> get back in line
01:10:12 <monqy> > map (const '_') "telemarketer"
01:10:13 <lambdabot> "____________"
01:10:16 <monqy> ok
01:10:18 <elliott> it's a smiley
01:10:20 <elliott> "__"
01:10:20 <augur> _____ 9/-4
01:10:25 <shachaf> kmc: What happened in here. :-(
01:10:26 <shachaf> hlep
01:10:27 <augur> what are we doing
01:10:31 <elliott> augur: nothing
01:10:32 <augur> hi elliott
01:10:33 <hangman> ______ 0/6
01:10:33 <elliott> hi
01:10:33 <monqy> ____________: 0/6
01:10:35 <hangman> dammit
01:10:36 <elliott> monqy: 2
01:10:41 <shachaf> Are we still talking about misuse of cryptographic primitives?
01:10:41 <monqy> ____________: 1/6 2
01:10:44 <elliott> monqy: uhhh
01:10:44 <hangman> monqy, .
01:10:46 <elliott> monqy: hexagon
01:10:53 <monqy> ____________: 3/6 2.hexagon
01:10:55 <elliott> monqy: a bird
01:10:58 <hangman> monqy, levity
01:11:03 <monqy> ____________: 5/6 2.hexagona birdlevity
01:11:04 <elliott> monqy: lemarke
01:11:12 <shachaf> elliott: Can you go hangmanning somewhere else?
01:11:16 <elliott> shachaf: no
01:11:19 <shachaf> This is a bad channel for that.
01:11:23 <shachaf> oerjan: kick elliott
01:11:23 <monqy> you_lose_sorry 6/6 2.hexagona birdlevitylemarke
01:11:26 <elliott> monqy: lemarke is one of the letters in "telemarketer"!!!!!
01:11:36 <elliott> please correct
01:11:37 <oerjan> shachaf: hey i don't have ops
01:11:38 <monqy> lemarke isn't a ltter!!!!!!
01:11:40 <elliott> yes
01:11:41 <elliott> it is
01:11:50 <monqy> i don't have a lemarke key
01:11:52 <shachaf> lemarke is obviously a derivative of lexande
01:11:52 <elliott> i do
01:11:56 <elliott> i keep pressing it
01:11:59 <elliott> hlemarke monqy
01:12:00 <elliott> see?
01:12:11 <elliott> it's between "i" and "o"
01:12:18 <shachaf> oerjan: Yes you do. :-(
01:12:26 <monqy> also broken locale ruins me again: i wanted to put skulls and crossbones for every letter
01:12:27 <hangman> OK my turn
01:12:31 <oerjan> je think que you are missing lemarke
01:12:32 <shachaf> The quick brown fox jumps over the slithy tove.
01:12:36 <hangman> _____ 0/6
01:12:39 <elliott> hangman: four
01:12:48 <elliott> hangman: the pope
01:12:48 <hangman> _____ 1/6 4
01:12:57 <hangman> _____ 2/6 4the pope
01:12:58 <elliott> hangman: q
01:13:05 <hangman> _____ 3/6 4the popeq
01:13:09 <elliott> hangman: o
01:13:14 <oerjan> hangman: omega
01:13:18 <hangman> _____ 4/6 4the popeqo
01:13:19 <elliott> hangman: z
01:13:22 <shachaf> Wait, #haskell turned bad too.
01:13:24 <elliott> hangman: y
01:13:25 <hangman> _____ 6/6 4the popeqoomegaz
01:13:27 <elliott> hangman: help
01:13:42 <elliott> was the word
01:13:44 <elliott> _____
01:13:46 <hangman> 11630
01:13:52 <elliott> oh no
01:13:54 <elliott> now i ruined the joke
01:13:57 <oerjan> best word
01:14:03 <elliott> monqy: you should have done that.....
01:14:06 <elliott> make the word be a bunch of _s
01:14:11 <elliott> that would have been funny!!!
01:14:16 <monqy> yes.........................
01:14:21 <shachaf> Too late now!
01:14:24 <elliott> can we go back in time and fix that
01:14:24 <oerjan> _______ 0/6
01:14:25 <elliott> :(
01:14:27 <elliott> oerjan: _
01:14:30 <monqy> we can still do it!!
01:14:35 <oerjan> _______ 1/6 _
01:14:37 <elliott> help
01:14:38 <shachaf> monqy: I'm going to southern CA!
01:14:39 <monqy> > map (const '_') "________________________________________"
01:14:40 <lambdabot> "________________________________________"
01:14:42 <monqy> im ready
01:14:43 <shachaf> monqy: Maybe.
01:14:46 <shachaf> monqy: Should I go visit you?
01:14:52 <monqy> ________________________________________: 0/6
01:14:55 <shachaf> monqy: Do you even exist?
01:14:57 <elliott> monqy: q
01:14:58 <monqy> i dont exist
01:15:02 <monqy> ________________________________________: 1/6 q
01:15:04 <elliott> monqy: help
01:15:09 <monqy> ________________________________________: 2/6 qhelp
01:15:10 <elliott> monqy: no!!!
01:15:11 <kmc> > fix (map (const '_'))
01:15:15 <monqy> ________________________________________: 3/6 qhelpno!!!
01:15:15 <lambdabot> mueval-core: Time limit exceeded
01:15:16 <elliott> monqy: stop
01:15:26 <monqy> ________________________________________: 4/6 qhelpno!!!> fix (map (const '_'))
01:15:28 <elliott> monqy: stop this help me out
01:15:39 <monqy> with what do you need help
01:15:45 <elliott> you broke the rules
01:15:48 <elliott> please continue updating the board
01:15:53 <monqy> ________________________________________: 6/6 qhelpno!!!> fix (map (const '_'))monqy: stopmonqy: stop this help me out
01:15:55 -!- elliott has kicked monqy monqy.
01:16:01 -!- monqy has joined.
01:16:03 <elliott> you skipped 5/6
01:16:04 <shachaf> kmc: Can you kick elliott?
01:16:12 <monqy> you're a sore loser, elliott!!
01:16:18 <elliott> what was the word monqy
01:16:21 <monqy> it was
01:16:23 <monqy> uhh
01:16:24 <hangman> kmc, can you voice Gregor
01:16:27 <monqy> ________________________________________
01:16:29 <elliott> oh
01:16:31 <elliott> i guess _
01:16:36 <monqy> you already lost!!!!
01:16:39 <monqy> there's no turning back
01:16:46 <elliott> im turning!!!!
01:16:47 <shachaf> EVERYONE STAND STILL!!
01:16:52 <shachaf> I HAVE A VERY IMPORTANT POST TO READ
01:16:55 <shachaf> BY EZYANG
01:17:04 <elliott> but i already told monqy to read that post
01:17:05 <elliott> and also another post
01:17:05 <shachaf> So wait until I'm done reading it.
01:17:08 <elliott> which i haven't told you to read yet
01:17:11 <elliott> but i will if you read that one
01:17:26 <monqy> i was going to read them but now i think i'll do something else first
01:17:33 <elliott> monqy
01:17:34 <elliott> you betrayed me
01:17:40 <monqy> shachaf needs a turn too!
01:17:40 -!- hangman has quit (Remote host closed the connection).
01:17:41 <elliott> are you going to do spells4 instead
01:17:46 <monqy> I already did spells4
01:17:48 <elliott> oops
01:17:53 <elliott> i thought it wasn't done yet
01:17:56 <shachaf> monqy: Can you kick elliott. :-(
01:17:59 <Gregor> I remember implementing C standard library scrabble. Wonder if that's still around somewhere…
01:18:02 <monqy> im not an op :'[
01:18:07 -!- elliott has set channel mode: +o monqy.
01:18:09 <elliott> i trust you monqy
01:18:15 <monqy> heeeeeeeeeeeeelp
01:18:17 <shachaf> monqy: Can you op me. :-(
01:18:21 <monqy> shachaf: i think so
01:18:24 <elliott> do the responsible thing monqy
01:18:26 <shachaf> I won't kick anyone.
01:18:26 -!- monqy has set channel mode: +v shachaf.
01:18:27 -!- elliott has set channel mode: -o shachaf.
01:18:30 <elliott> whoops
01:18:30 <monqy> did i do it right
01:18:32 <elliott> trigger happy!!!
01:18:39 <shachaf> monqy: No. :-(
01:18:42 <shachaf> @admin - elliott
01:18:48 <monqy> @admin + shachaf
01:18:48 <lambdabot> Not enough privileges
01:18:52 <monqy> oh no!!
01:18:53 <shachaf> @admin + monqy
01:18:56 <shachaf> oopse!
01:18:57 <monqy> thanks
01:19:10 <elliott> monqy: can i have my lambdabot admin back please
01:19:15 <elliott> cale gave it to me!!
01:19:16 <monqy> @admin + elliott
01:19:16 <lambdabot> Not enough privileges
01:19:20 <elliott> shachaf...........
01:19:21 <monqy> no!!!!!
01:19:31 <elliott> i don't think shachaf deserves voice monqy
01:19:32 <elliott> what do you think
01:19:38 -!- monqy has set channel mode: -v shachaf.
01:19:41 <shachaf> elliott: I think you're already a lambdabot admin. :-(
01:19:42 <monqy> "you had yuore chance"
01:19:46 <elliott> @admin + me
01:19:48 <elliott> @admin - me
01:19:52 <elliott> "looks like i am"
01:19:53 -!- monqy has set channel mode: +v monqy.
01:19:57 -!- monqy has set channel mode: +v elliott.
01:19:59 -!- monqy has set channel mode: +v Gregor.
01:20:06 <shachaf> monqy: "i think you mean yuor'e chance"
01:20:07 -!- elliott has set channel mode: -v Gregor.
01:20:11 <shachaf> monqy: "learn to spell"
01:20:17 <elliott> campaign promise fulfilled
01:20:33 <shachaf> monqy: If I admin you will you op me. :-(
01:20:37 <shachaf> @uptime
01:20:37 <lambdabot> uptime: 23d 10h 19m 1s, longest uptime: 1m 10d 23h 44m 29s
01:20:38 <monqy> if only hangman was here!!!
01:21:02 <oerjan> he was tired of hanging out
01:21:33 <shachaf> oerjan: You should deop elliott.
01:21:39 -!- ChanServ has set channel mode: +o oerjan.
01:21:43 -!- oerjan has set channel mode: -o elliott.
01:21:45 <oerjan> O KAY
01:21:48 <elliott> monqy: please fix
01:21:54 -!- oerjan has set channel mode: -o oerjan.
01:21:55 <monqy> is voice not good enough for you!!!
01:22:00 <shachaf> I trust monqy!
01:22:02 <elliott> monqy: remember the calming presence
01:22:03 <monqy> i'll see what i can do
01:22:05 -!- monqy has set channel mode: +v elliott.
01:22:05 <shachaf> monqy won't bring chaos to #esoteric
01:22:06 <elliott> i feel calm going away
01:22:08 <elliott> from life
01:22:16 <elliott> i trust you monqy
01:22:17 <elliott> remember how i opped you
01:22:19 <elliott> all that way back
01:22:22 <elliott> that was because i believed in you
01:22:25 -!- monqy has set channel mode: -o elliott.
01:22:29 <monqy> what's the right button
01:22:31 <monqy> i cant find it
01:22:44 <elliott> monqy: maybe you just don't know how to be friends....with anyone............
01:22:46 <elliott> i hope that's not true monqy!
01:22:50 <monqy> oh no!!!!!!!!!!!
01:23:01 <elliott> i think you should prove you can be believed in, monqy!!!
01:23:18 <shachaf> monqy: i beielive in yoU!!
01:23:23 <shachaf> elliott: i belivev in u mad!
01:23:28 -!- monqy has set channel mode: +o-o elliott monqy.
01:23:31 <monqy> did i do it right
01:23:38 <shachaf> monqy: yes
01:23:44 <shachaf> Wait, no.
01:23:50 <oerjan> fancy
01:23:50 <monqy> oh no!
01:23:51 <shachaf> oerjan: Deop elliott!
01:23:52 -!- elliott has set channel mode: +o monqy.
01:23:55 <elliott> see
01:23:57 <elliott> everything is perfect now
01:24:03 <shachaf> oerjan: Op me!
01:24:19 -!- ChanServ has set channel mode: +o oerjan.
01:24:22 -!- oerjan has set channel mode: -o elliott.
01:24:22 -!- elliott has set channel mode: -o oerjan.
01:24:25 <oerjan> O KAY
01:24:32 <elliott> monqy: i still believe in you
01:24:41 <oerjan> fancy
01:24:42 <elliott> you can overcome this tyranny
01:24:43 -!- monqy has set channel mode: +oo-o elliott shachaf monqy.
01:24:46 -!- elliott has set channel mode: -o shachaf.
01:24:49 -!- elliott has set channel mode: +o monqy.
01:24:53 <elliott> it is perfect once again
01:25:07 <elliott> now, let us relax
01:25:23 <elliott> does anyone want to talk about brainfuck derivatives
01:25:25 <shachaf> monqy: Try again. :-(
01:25:42 <elliott> monqy: you tried your best & did the right thing
01:25:47 <monqy> shachaf: but elliott is already opped!!!!
01:26:05 <shachaf> monqy: op me :'(
01:26:23 <pikhq_> elliott: No, I only wish to discuss Befunge extensions.
01:26:28 <elliott> pikhq_: go for it!
01:26:30 <elliott> gopher it
01:26:38 <pikhq_> I'm not going to be happy until Befunge is impossible to implement.
01:26:50 <pikhq_> Oh, wait, that's easy.
01:26:58 <pikhq_> Halting oracle fingerprint.
01:27:15 <elliott> monqy: so do you have anything left to do with
01:27:16 <elliott> mspell
01:27:18 <elliott> or is it `all done'
01:27:20 <monqy> lots to do
01:27:27 <monqy> for example, the mspell part
01:27:31 <elliott> o
01:27:33 <elliott> ok
01:27:35 <elliott> good luck
01:27:51 <elliott> monqy: (so what have you done so far)
01:27:53 -!- ChanServ has set channel mode: -o elliott.
01:27:54 * pikhq_ creates Brainfunge. BWAHAHAHA
01:27:55 <monqy> i also have to do things like shower and eat and read these blog!!!
01:27:55 <elliott> (just the zap stuff?)
01:28:00 -!- ChanServ has set channel mode: -o monqy.
01:28:02 <monqy> i've done uh
01:28:04 -!- elliott has left ("Leaving").
01:28:04 <monqy> part of mspell
01:28:08 <monqy> rip
01:28:10 <shachaf> ChanServ++
01:28:13 <shachaf> oerjan++
01:28:15 <shachaf> oerjanserv++
01:28:37 <pikhq_> fungeot = INT_MAX
01:28:44 <pikhq_> fungot = INT_MAX // This too
01:28:44 <fungot> pikhq_: 10 get a character
01:29:44 <shachaf> fungot is signed?
01:29:45 <fungot> shachaf: open 794, 62282, 65472
01:29:48 <shachaf> fungot++
01:29:48 <fungot> shachaf: call address: ffdb ( hex) 65514 ( decimal). characters used to open a logical operator names. if none of the two extra colors from the information by means of the string.
01:34:08 <pikhq_> fungot = ~fungot + 1
01:34:09 <fungot> pikhq_: the vic-ii chip does much of the comparison. for more information, visit your commodore 64, all you need to change these contents using peripheral inputs, together with the commodore 64 has 4k of ram
01:34:24 <shachaf> pikhq_: We're already in undefined behaviorland.
01:34:38 <pikhq_> shachaf: Kay, *fine*.
01:34:49 <pikhq_> *fungot = 0;
01:34:49 <fungot> pikhq_: if you don't want to read or set the raster register is put a " semi-tutorial" approach to many sections of the port on the cnt line, the
01:42:41 <shachaf> ^style
01:42:41 <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
01:42:48 <shachaf> ^style youtube
01:42:48 <fungot> Selected style: youtube (Some YouTube comments)
01:42:50 <shachaf> fungot
01:42:50 <fungot> shachaf: no you idiots find this crap on another site. its best just to ignore? ::p box, and was rolling! hilarious!
01:43:00 <shachaf> monqy: hilarious!
01:44:30 <kmc> fungot
01:44:30 <fungot> kmc: i agree with xharlequin, her music and comedy. it failed. there were no passengers
01:44:54 <kmc> fungot for president
01:44:55 <fungot> kmc: plancrashinfo says:). it's great for tree removal and clearing land for housing! mmmm nothin' like blackend air bus, im beginning to believe only 3 people died
01:45:36 <kmc> fungot: butts
01:45:36 <fungot> kmc: god that's fucking hilarious. glad to see it
01:45:52 <kmc> finally, someone appreciates my sense of humor
01:47:11 <shachaf> That's a sense of humor?
01:49:10 <shachaf> kmc: Did you send off your email?
01:50:30 <kmc> to stripe? yes
01:51:27 <shachaf> I'll bug gdb about it next time I see him!
01:52:11 <kmc> do you see gdb often?
01:52:24 <kmc> did you start working at stripe secretly?
01:52:33 <shachaf> No, but I went to a couple of their hackathons.
01:52:36 <kmc> cool
01:52:38 <kmc> say hi for me
01:52:42 <kmc> say hi to nelson also if you see him
01:52:56 <shachaf> Maybe they'll have a CTF event like last time.
01:53:19 <kmc> Yeah
01:53:21 <kmc> YEAH
01:53:23 <kmc> yEAH
01:53:31 <shachaf> I told Nelson about bahaskell but it turns out he doesn't really do Haskell anymore.
01:53:34 <kmc> yeah
01:55:09 <shachaf> kmc: You should go work at Stripe!
01:55:17 <shachaf> I hear it's "the cool place to be".
01:55:31 -!- copumpkin has changed nick to napumpkin.
01:55:36 <kmc> it's far away
01:55:43 <kmc> also it's already, like, a big company
01:55:45 -!- napumpkin has changed nick to copumpkin.
01:55:47 <shachaf> It's pretty close to SF.
01:55:49 <shachaf> Is it?
01:56:15 -!- oerjan has quit (Quit: Good night).
01:57:53 <kmc> it's in SF
01:57:57 <kmc> that is far away from here
01:58:02 <kmc> and yeah, they have more than 30 people already
02:01:52 <kmc> i don't really do Haskell anymore
02:02:02 <kmc> i still use the language when appropriate
02:02:09 <shachaf> I.e. "never"
02:02:16 <kmc> but i don't particularly spend my free time talking about haskell anymore
02:02:22 <kmc> shachaf: you're soundnfury now?
02:02:35 <shachaf> soundnfury 'n' cheater combined
02:02:37 <kmc> wow
02:02:40 <kmc> the dream team
02:03:48 <kmc> i no longer feel like i have a vested interest in convincing other people to use haskell
02:04:09 <kmc> i'll probably go to the next boston haskell though
02:04:20 <kmc> if i'm free
02:05:05 <shachaf> I'm trying to arrange for the next boston haskell to be in SF.
02:05:18 <kmc> cool, good luck with that
02:05:28 <shachaf> Actually it seems likely.
02:05:40 <shachaf> Except by BostonHaskell I mean "bahaskell, but edwardk doing a talk".
02:06:01 <shachaf> Since he'll be in the area around then anyway.
02:06:50 <kmc> ah cool
02:07:01 <shachaf> And ezyang will be here too.
02:07:03 <shachaf> And maybe luite.
02:08:00 <shachaf> The Internet connection here is very slow.
02:08:14 <shachaf> I can use Mosh but other things are unpleasant to use.
02:08:36 -!- Jaurrison has joined.
02:08:56 <kmc> where are you?
02:09:55 -!- Jaurrison has quit (Client Quit).
02:11:16 <shachaf> Public-Internet-connection place.
02:11:25 <shachaf> kmc: Today I had a super burrito.
02:11:34 <shachaf> It was made of two tortillas rather than just one.
02:12:27 -!- copumpkin has changed nick to cyclops.
02:13:12 -!- cyclops has changed nick to copumpkin.
02:13:37 <shachaf> I have a hilight on funpuns now.
02:13:39 <shachaf> Thanks to lexande.
02:13:55 -!- DHeadshot has joined.
02:14:26 <kmc> thexande
02:34:42 -!- aloril has quit (*.net *.split).
02:34:42 -!- soundnfury has quit (*.net *.split).
02:34:42 -!- SimonRC has quit (*.net *.split).
02:47:45 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:47:50 -!- DH____ has joined.
02:51:11 <zzo38> What is it called in backgammon if you win while the other player still has pieces in jail?
02:51:17 <oklopol> so this dr who thing is british or did i take the wrong one?
02:51:24 <shachaf> zzo38: "winning"?
02:51:49 <zzo38> I know it is winning, but I wanted to know if it is anything special.
02:52:15 <oklopol> i wonder if there's us english dubs for it.
02:55:18 <kmc> how about subs
02:55:56 <Sgeo> I think unamb might not be that great an idea on Clojure, at least partially because using it to build a variadic parallel or seems annoying and difficult
02:56:11 <oklopol> i think i would read them as uk subs and they would be annoying.
02:57:34 <kmc> like how white people (e.g. me) watch The Wire with subs
02:58:00 -!- pikhq_ has quit (Ping timeout: 252 seconds).
02:58:08 <kmc> though that's like 4 layers of incomprehensible
02:58:38 <oklopol> why so?
02:58:41 <kmc> african american vernacular english + bawlmer accent + gangsta slang + non-professional actors
02:59:04 <oklopol> it's not so much hard to understand, it's just such a silly language.
02:59:26 <kmc> plus the show makes absolutely no attempt to hold your hand through understanding what's going on
02:59:40 <oklopol> cool
03:00:07 <oklopol> maybe i'll watch that just for the incomprehensibility
03:00:09 <shachaf> kmc: Is that a good show?
03:00:18 <kmc> yes The Wire is a good show
03:00:28 <kmc> i have a feeling i am being trolled, because of how often i talk about how good it is
03:00:33 <shachaf> I don't own a television, only a large form factor screen with T tuner.
03:00:33 <kmc> as well as how often everyone else talks about how good it is
03:00:41 <kmc> does that help you make better tea?
03:00:41 <shachaf> No trolling intended.
03:00:45 <kmc> is it ISO 3103 compliant?
03:01:04 -!- DH____ has quit (Read error: Connection reset by peer).
03:03:45 <shachaf> I should keep a list of which shows are good shows.
03:03:50 <shachaf> In case I ever want to watch some.
03:03:57 <shachaf> The Wire and Breaking Bad, what else?
03:04:05 <kmc> hm
03:04:09 <kmc> what kind of shows do you like
03:04:16 <oklopol> is the wire about actual wires because i like those
03:04:20 <kmc> there are some wires
03:04:28 <oklopol> yay
03:04:33 <kmc> it's not exactly about wires
03:04:49 <shachaf> I'm not sure... I don't own a television, see.
03:04:54 <kmc> but they play an important role
03:05:37 <oklopol> okay what wp says sounds interesting enough
03:06:11 <kmc> The Wire is unlike any other TV show
03:06:12 <oklopol> not that i see how wires could have anything to do with it.
03:06:25 <kmc> there are cops and drug dealers, but they're mostly not good and evil
03:06:32 <kmc> they're mostly just people trying to do their jobs well enough to not get fired
03:06:59 <shachaf> That sounds pretty good.
03:07:03 <oklopol> err, many shows are like that?
03:07:20 <shachaf> Well, I have no idea if it sounds like it'll make a good story. Hard to tell.
03:07:43 <oklopol> but that's like the most important thing in a show
03:07:58 <oklopol> so i should definitely watch it
03:08:01 <kmc> i haven't really seen another show like that
03:08:15 <kmc> in most TV shows, the cops are altruistic and a few are evil
03:08:20 <kmc> and the drug dealers are evil, and a few are altruistic
03:08:30 <kmc> in the wire (and in real life) people are mostly neither altruistic or evil
03:08:31 <oklopol> well i haven't seen it in a crime show
03:08:44 <oklopol> i have mostly seen it in shows with vampires and shit.
03:08:47 <kmc> heh
03:09:10 <oklopol> well
03:09:46 <oklopol> then it's mostly good/bad/psychopath-murderer-on-the-good-side-for-some-reason
03:09:48 <kmc> mostly the show is about institutions, and the people who either embody the institution's failures, or try to reform the institution (and are usually punished severely for it)
03:09:59 <kmc> but enough talk, watch the show :)
03:10:23 <shachaf> The next thing I watch will probably be _The Impostors_.
03:10:35 <shachaf> Because I have a DVD of it.
03:10:49 <shachaf> I hear you have to watch it several times before it makes sense.
03:12:43 <kmc> the impostors?
03:13:07 <shachaf> Yes.
03:13:23 <shachaf> I don't know much about it.
03:15:46 <Sgeo> Blah, future-cancel might not cancel a future.
03:15:53 <Sgeo> My unamb might leak memory
03:16:31 <oklopol> i think it says "oklo rigger duff radar" in a poster on the wall in dr who
03:16:46 <oklopol> if you watch it does it say kmc/shachaf/Sgeo?
03:17:03 -!- elliott has joined.
03:17:09 <elliott> Oh. No oerjan.
03:17:10 -!- elliott has left ("Leaving").
03:17:12 <kmc> Sgeo: won't the memory get reclaimed once the future is no longer reachable?
03:17:49 <Sgeo> kmc, hmm, why would it? It might have side-effects, at least I think the JVM might think so
03:18:00 <kmc> once the computation is finished, then?
03:18:20 <Sgeo> But what if a computation doesn't finish. future-cancel might not cancel a future
03:18:21 -!- monqy has quit (Quit: hello).
03:18:39 <kmc> doesn't finish? you mean if it enters an infinite loop?
03:18:49 <Sgeo> (future-cancel (future (loop [] (recur))))
03:19:01 <Sgeo> From what I gather in #clojure that won't actually cancel it
03:19:13 -!- monqy has joined.
03:19:23 <Sgeo> Because the JVM has no way to safely stop it
03:19:25 <kmc> hm, sucks
03:19:38 <kmc> you want to be able to use unamb in situations where one side terminates and the other loops
03:19:41 <kmc> (but you don't know which)
03:19:44 <Sgeo> There is .stop for threasd but that's unsafe
03:20:01 <kmc> what's unsafe
03:20:05 <Sgeo> Well, it's not all infinite loops that pose a problem, just some, I gather
03:20:16 <Sgeo> .stopping a Thread.
03:20:34 <Sgeo> http://docs.oracle.com/javase/1.4.2/docs/guide/misc/threadPrimitiveDeprecation.html
03:20:52 <kmc> i see
03:28:13 -!- DHeadshot has joined.
03:33:29 <zzo38> Is something having to do with send/receive messages on X-BIT are broken?
03:33:58 <zzo38> It seems to no longer send/receive on Usenet and also can no longer send/receive on FidoNet.
03:41:00 <shachaf> Is FidoNet a protocol that runs over econet?
03:41:10 <zzo38> I don't know.
03:42:22 <shachaf> zzo38: Why do you spend a lot of effort and time on all sorts of systems and protocols that no one uses anymore, like gopher?
03:42:43 <zzo38> It isn't true that nobody uses them anymore.
03:42:52 <shachaf> Well, very few people use them.
03:43:06 <shachaf> Why use Gopher instead of HTTP, for example?
03:43:07 <zzo38> OK
03:43:16 <Sgeo> A book about computers I had as a kid mentioned gopher
03:43:18 <zzo38> I have both gopher and HTTP.
03:43:41 <Sgeo> shachaf, it's fun is probably a sufficient reason, but not sure if it's zzo38's reason.
03:44:18 <shachaf> I'm wondering what zzo38's reason is.
03:44:56 <zzo38> It is better designed.
03:47:58 <zzo38> Modern HTML+CSS+HTTP+Flash+Windows+ActiveX+Linux+Unicode+HTTPS+JavaScript+DynamicHTML+... is too complicated and exposes a few things which shouldn't be and so on.
03:49:00 <shachaf> But you don't need to use HTML+CSS+HTTP+Flash+Windows+ActiveX+Linux+Unicode+HTTPS+JavaScript+DynamicHTML+...
03:49:07 <shachaf> I don't think anyone has used all of those at once.
03:49:13 <oklopol> ohhh that kind of wire.
03:50:38 <zzo38> shachaf: I think some people do, and even use a bunch of other things togheter with it. (Even Windows and Linux are sometimes used together with dual boot and with some server racks.)
03:50:51 <kmc> what's DynamicHTML
03:51:03 <kmc> nobody uses ActiveX anymore
03:51:09 <kmc> except corporate intranet IE6 backwaters
03:52:07 <shachaf> DynamicHTML is Microsoft's name for HTML + JavaScript, I think.
03:52:23 -!- ais523 has quit.
03:52:23 <shachaf> Maybe a little more general than that.
03:52:59 <Sgeo> I had a book called DHTML for Dummies
03:53:19 <Sgeo> Oh, it might have been Dynamic HTML for Dummies
03:54:05 <Sgeo> Hmm, except it wasn't exclusively Microsoft stuff
03:55:22 <Sgeo> I once had ActiveX for Dummies
03:55:42 <Sgeo> Reading it is what finally made programming "click" for me in my mind, but I broke the CD, so never played around with it
03:55:56 <Sgeo> Since those long ID things are scary, and the CD had some tool to deal with those
03:56:16 <Sgeo> If that CD didn't break, I wonder if I'd be a Microsoft fanboy programming ActiveX stuff today...
03:58:10 <zzo38> And then, they also use PDF, and all sorts of slow stuff, and all kind of videos even if they are not necessary, various pictures formats (SVG, JPEG, GIF, PNG, etc), ...
03:58:37 <Sgeo> HTTP only enables it, it doesn't enforce it
03:59:54 <zzo38> That is true, but sometimes you need those various headers anyways even though they are not used.
04:00:07 <zzo38> It can make it slow.
04:08:56 <Sgeo> Ugh, I can't tell which JRE .jars open in by default
04:12:47 -!- pikhq has joined.
04:15:38 <pikhq> Hey, right side of the split.
04:16:33 <Sgeo> "Well TCP has been superceded already by application layer protocols doing a more efficient congestion and flow control these days so its kind of a moot point"
04:16:40 <Sgeo> I feel dumber for having read that
04:16:51 <pikhq> It ate my intelligence.
04:17:31 <Sgeo> http://www.reddit.com/r/science/comments/yuoxx/stanford_biologist_and_computer_scientist/c5z244w
04:18:24 <pikhq> So, that person thinks we use HTTP pipelining to make TCP act less like TCP?
04:18:26 <pikhq> Strange.
04:18:57 <pikhq> I thought that was used to make HTTP act more like what TCP expects.
04:19:47 <pikhq> Namely, a somewhat long-lived connection.
04:19:59 <pikhq> A *single* somewhat long-lived connection.
04:20:33 * Sgeo looks up HTTP pipelining
04:20:47 <pikhq> That's where you run multiple HTTP requests over the same connection.
04:21:24 <pikhq> TCP is poorly suited to the tons-of-small-connections model HTTP in modern usage implies.
04:21:58 <Sgeo> Wikipedia says sending several requests before receiving a response. But if you're loading a page for the first time how can you know before the response what you'll need to request beyond that first page?
04:22:22 <pikhq> Typically what you do is load the HTML first and then request its dependencies once you've parsed it.
04:22:36 <pikhq> I bet he also thinks uTP is an example of "doing better than TCP".
04:23:31 <pikhq> ... When really it's more "TCP flow control made less aggressive, because buffer bloat means that otherwise BitTorrent cripples *everything*"
04:24:03 <kmc> Mosh fits that quote, though :D
04:24:18 <pikhq> Yes, Mosh is an example of *actually doing it better*.
04:24:37 <kmc> doing it better because you have application-level knowledge
04:24:43 <pikhq> In certain environments it's quite possible to kick TCP's ass.
04:24:51 <kmc> i don't think KeithW would claim Mosh flow control beats TCP for the general problem TCP solves
04:24:54 <kmc> that's his other project :)
04:25:11 <pikhq> When your application-level knowledge gives you alternative schemes, then hey.
04:25:32 <pikhq> I suspect TCP's pretty hard to beat for the general case. And SCTP is the one thing that beats it. :P
04:25:55 * Sgeo is actually considering installing Eclipse and Counterclockwise
04:25:55 <Sgeo> :/
04:26:38 <kmc> that project involves an explicit model of network elements, an explicit utility function, and Bayesian inference of network conditions
04:27:25 <pikhq> kmc: Sweet Jesus he's applying AI to the problem.
04:27:58 * pikhq approves
04:28:08 <kmc> yeah, or what passes for AI these days
04:28:28 <pikhq> Well. Yeah.
04:28:42 <kmc> it seems desirable (and yet extremely rare) for both ends of the connection to have an idea of what they're trying to accomplish
04:29:14 <kmc> if Google can make a billion hojillion dollars on "gather loads of data, then perform naive bayesian inference"
04:29:20 <kmc> then it should at least be worth a few papers :)
04:29:21 <pikhq> That'll be a changing target until we have a decent grasp on what it actually means for humans to be "intelligent" at a sufficiently low level we can algorithm it.
04:34:48 <kmc> it is the CS & AI Lab, after all
04:35:28 <oklopol> so i hear google translate uses finite transducers
04:36:27 <oklopol> a formal language theorist told me this. he was not happy about i.
04:36:30 <oklopol> it
04:37:27 <kmc> google made the best arabic translator, without having anyone on the project who speaks arabic
04:37:32 <oklopol> (not because google "did it wrong"; according to him, google tried the "correct" grammars too, but it didn't work)
04:39:02 <oklopol> perhaps they just use one of the known transducer learning algorithms, but on more samples than a human needs to learn the language.
04:52:17 <pikhq> Hmm. Looking at Mosh's terminal emulator stuff makes me realize that it'd probably be nice to write a not-terrible terminal emulator.
04:52:34 <pikhq> Like, one that does Unicode (to the extent it's possible).
04:55:23 -!- pikhq_ has joined.
04:55:28 <pikhq_> 22:52 < pikhq> Hmm. Looking at Mosh's terminal emulator stuff makes me realize that it'd probably be nice to write a not-terrible terminal emulator.
04:55:31 <pikhq_> 22:52 < pikhq> Like, one that does Unicode (to the extent it's possible).
04:55:34 <pikhq_> 22:54 * pikhq would rather not mosh into localhost to get proper terminal emulation; :P
04:56:19 <kmc> i find the unicode handling of rxvt-unicode to be adequate
04:56:26 <kmc> i don't see a big difference whether i'm using mosh or not
04:56:50 <pikhq_> ATM I'm using XFCE terminal (same underlying library as GNOME terminal)
04:56:52 <kmc> btw I think one of the programs in "src/examples/" in Mosh is just the terminal emulation layer
04:57:05 <kmc> pikhq_: ah, we got a lot of bug reports about VTE
04:57:48 <kmc> apparently it is pretty awful code -- the GTK calls to manipulate pixels are done right within the VT220 parser
04:57:56 <pikhq_> ... Excuse me WHAT
04:58:01 -!- pikhq has quit (Ping timeout: 246 seconds).
04:58:10 <kmc> you got so outraged that your ghost quit
04:58:25 <pikhq_> Yup.
04:58:39 <kmc> this is compared to maintaining some kind of "what's in every cell" data structure, and then rendering that in a straightforward way
04:58:43 <kmc> which is what mosh does
04:59:06 <pikhq_> Or what I'd expect anyone to do.
04:59:36 <pikhq_> That'd make VTE quite useful if they made such a structure and exposed it at API level.
04:59:42 <kmc> the main difference I see between urxvt and mosh-in-urxvt is a disadvantage of Mosh
04:59:57 <kmc> which is that, if the server side locale doesn't know about a particular Unicode character, it turns into the replacement character
05:00:03 <kmc> even if the local urxvt knows how to render it
05:00:29 <pikhq_> Good thing I use en_US.UTF-8 essentially unconditionally!
05:00:50 <kmc> sure, i mean you have to use a UTF-8 locale anyway
05:01:01 <kmc> but does the locale file on your server have the latest version of the Unicode character database
05:01:06 <pikhq_> Aaaah.
05:01:11 <kmc> with all the exciting OUTLINE OF JAPAN and PILE OF POO and so forth
05:01:14 <kmc> essential characters to be sure
05:01:36 <pikhq_> Well, there's a chance it's a musl system, in which case it's 10k in libc...
05:01:57 <pikhq_> Aaaand I have no idea how that interacts.
05:02:21 <kmc> there should be a piece of software named metamusl
05:03:35 <kmc> does mosh work in musl?
05:03:57 <pikhq_> Y'know, I've actually not tried.
05:04:51 <pikhq_> I'd have to actually set up a moderately-functional musl system again to test. :P
05:05:47 <pikhq_> Or poke Gregor once his try-all-of-pkgsrc script finishes again.
05:10:04 <pikhq_> Oh, it's C++; yeah, that's definitely a "should work" proposition there.
05:13:25 <pikhq_> Though Qt doesn't build currently. :/
05:15:31 <kmc> gotta sleep, ttyl
05:21:32 <tswett> Given a 128-bit block cipher, derive a 64-bit block cipher.
05:26:31 <tswett> The "obvious" way to do it is to expand the 64 bits to 128 bits, encrypt that, and collapse the resulting 128 bits into 64 bits.
05:26:37 <tswett> Unfortunately, the last step is impossible.
05:28:37 -!- Nisstyre_ has quit (Ping timeout: 246 seconds).
05:33:08 -!- pikhq_ has quit (Ping timeout: 248 seconds).
05:35:18 -!- pikhq has joined.
05:41:06 <zzo38> Disadvantage of Mosh? I think it is a disadvantage of Unicode.
05:42:29 <zzo38> (Which is that you even need a character database at all.)
05:44:52 <pikhq> zzo38: It's a weird combination of the needs of terminal emulation and international text display.
05:45:06 <pikhq> Namely, the terminal needs to know how many cells a given glyph will take.
05:45:25 <zzo38> "which is that, if the server side locale doesn't know about a particular Unicode character, it turns into the replacement character" I think it would have to, if the server wants to know how wide it is and stuff like that (they could dynamically generate it from asking the terminal emulator for the cursor position, but then there are complex scripts and stuff)
05:45:59 <zzo38> pikhq: Yes; and that is a problem with Unicode.
05:46:10 <pikhq> No, it's a problem with terminals.
05:46:16 -!- asiekierka has joined.
05:46:29 <zzo38> I don't think so. I think it is a problem with Unicode.
05:46:44 <pikhq> You'd have the same problem with anything handling that sort of text.
05:46:58 <zzo38> (One way to solve it would be if the character numbers were assigned differently)
05:47:00 <pikhq> Unless your answer is "those Arabs should use English".
05:47:17 <pikhq> That'd just be a particularly compact sort of database.
05:48:38 <zzo38> Mixing left-to-right and right-to-left text is always a problem; it has nothing specific to do with Unicode or terminals.
05:49:01 <pikhq> Unicode actually has an algorithm for that. :)
05:51:00 <zzo38> Yes I know but still it is no good. TeX-XeT also has an algorithm for that, but I still think it is not such a good idea to do line breaking in a RTL text which inside of a LTR sentence, and vice versa. (At least with TeX-XeT you do not need a character database.)
05:54:00 <zzo38> Both for complex scripts and for right-to-left, one thing which could be done to solve it easier would be: The program which is designed for this language will translate into presentation form when displaying.
05:55:29 <asiekierka> i'm installing mysql server on a 128MB ARM netbook
05:55:31 <asiekierka> i recommend you run
05:56:08 <zzo38> I don't want to run. The other people are sleeping and that would disturb them.
05:56:43 <pikhq> But 僕 信 に 他語的 text.
06:03:05 <zzo38> If you play the NES/Famicom square wave channels both the same except the first uses duty mode 1 and second is duty mode 3, and there is nobody around to hear it, does it make a noise?
06:04:32 <zzo38> (I am unable to test it on authentic hardware. I have a Famiclone hardware but no way to put software on a cartridge.)
06:13:33 -!- kallisti has changed nick to spirity.
06:13:45 <spirity> this is kind of like
06:13:48 <spirity> super saiyan.
06:13:52 <spirity> okay?
06:14:14 <spirity> (note: humor is always on topic)
06:14:21 <spirity> (even bad humor)
06:14:38 <monqy> hi
06:14:45 <spirity> monqy: hi.
06:14:48 <spirity> many name is spirity.
06:14:52 <spirity> s/an//
06:15:05 <spirity> so we should take Gregor's IRC log
06:15:24 <spirity> and count everyone's average time of typo correction.
06:15:31 <spirity> machine learning problem.
06:16:10 <spirity> a really specific one.
06:16:14 <spirity> involving computer code
06:16:51 <spirity> in which the computer learns the average time of typo correcion of everyone in the channel named #esoteric on the Freenode network hosted at irc.freenode.net
06:17:31 <spirity> also
06:17:56 <fizzie> Also I though this was elliott speaking for some reason.
06:18:06 <spirity> mind tricks.
06:18:33 <spirity> caused by incomplete sentences.
06:18:35 <spirity> see?
06:19:14 <spirity> also, a web interface to change/edit the topic.
06:19:22 <spirity> using a bot.
06:19:28 <spirity> and a web server.
06:19:35 <spirity> which I can provide.
06:19:40 <monqy> fizzie: elliott's offended
06:19:54 <zzo38> I don't see why you need to change the topic in that way.
06:20:10 <spirity> zzo38: describe the workflow of changing an IRC topic.
06:20:38 <zzo38> One thing that will cause is the topic message to be changed into spam messages too often?
06:20:49 <fizzie> monqy: Kitten Is Offended.
06:21:00 <zzo38> And anyways you can just use IRC.
06:21:09 <zzo38> Describe the workflow using IRC.
06:21:22 -!- elliott has joined.
06:21:24 <elliott> HI
06:21:25 <elliott> HI
06:21:25 <elliott> HI
06:21:26 <elliott> HI
06:21:27 <elliott> HI
06:21:28 <elliott> HI
06:21:30 <elliott> HI
06:21:32 <elliott> HI
06:21:34 -!- elliott has left ("BYE").
06:21:36 <monqy> hi
06:21:37 <monqy> oh
06:21:39 <monqy> woops
06:21:50 <spirity> zzo38: depends on client, operating system, graphics mananger. display manager.
06:21:55 -!- elliott has joined.
06:21:57 <elliott> I forgot one
06:21:58 <elliott> HI
06:21:59 <monqy> spirity: why did you say hi so many times???
06:21:59 -!- elliott has left ("Leaving").
06:22:06 <spirity> monqy: because I was excited.
06:22:16 <zzo38> spirity: Well, yes; everything does.
06:23:10 <spirity> zzo38: /topic, highlight in your terminal emulator of choice, copy into a /topic command
06:23:35 <spirity> using IRC client and command input scheme of choice.
06:24:02 <fizzie> zzo38: Is duty mode 3 just inverted duty mode 1?
06:24:11 <zzo38> fizzie: Yes, I think so.
06:24:52 <spirity> workflow for HTTP interface: go to extremely tiny easy to remember link using web browser of choice. change text in a textarea. submit POST request using favorite input method of choice.
06:25:26 <spirity> why not?
06:25:36 <zzo38> Yes, the workflow is different but I think the first way is obviously better.
06:25:52 <zzo38> Since you already will have IRC, if you are on IRC.
06:26:04 <spirity> specifically it elimates the copy command, which can be time consuming.
06:26:05 <zzo38> And you need not load another program.
06:26:24 <spirity> change topic by regex substition?
06:26:34 <spirity> in channel with bot?
06:26:34 <zzo38> Loading another program is even more time consuming
06:26:56 <spirity> easy to moderate spammers (on paper, anyway)
06:26:57 <zzo38> And depending on the IRC client you may not even need a copy command.
06:27:13 <spirity> indeed. are there any examples?
06:27:31 <spirity> if not, let's write an IRC client.
06:27:51 <zzo38> I don't know of any but it is definitely possible.
06:28:00 <spirity> yes.
06:29:01 <fizzie> What's the copy command for? If it's to copy the old one, all the gooey clients have it already in the text field.
06:29:02 <zzo38> I find the copy command is definitely less time consuming than loading another program and is also less time consuming than selecting a bunch of menus or whatever.
06:29:39 <spirity> yes, GUI clients typically have this.
06:29:54 <zzo38> (At least I am using PHIRC with the PuTTY terminal emulator; to copy text just highlight with left mouse button, and then click the right button (middle button if on UNIX).)
06:30:13 <spirity> right.
06:30:56 <fizzie> Freenode ChanServ has topicappend/topicprepend, though not quite topicregex.
06:30:57 <zzo38> So to copy the topic message, simply by typing TOPIC and then space and CTRL+C and then space, colon, highlight message and then paste (no explicit "copy to clipboard" command is necessary).
06:31:01 <spirity> regex is likely to be faster.
06:31:03 <spirity> in some situations.
06:31:12 <spirity> with some people.
06:31:53 <spirity> the HTTP interface is only a good idea for some kind of larger web-based system.
06:32:38 <spirity> dedicated web based client (already exists)
06:33:13 <zzo38> Well, yes, it is a good idea for some kind of larger web-based system, but a kind of larger web-based system is a bad idea anyways.
06:44:53 -!- Phantom_Hoover has joined.
06:44:53 -!- aloril has joined.
06:44:53 -!- soundnfury has joined.
06:44:53 -!- SimonRC has joined.
06:52:03 -!- Phantom_Hoover has quit (Remote host closed the connection).
07:07:27 -!- nooga has joined.
07:50:43 -!- DHeadshot has quit (Ping timeout: 246 seconds).
07:54:48 -!- DHeadshot has joined.
07:58:35 <coppro> blargh
07:58:45 <Sgeo> coppro, hmm?
07:58:54 <coppro> trying to set up email from my machine
07:58:57 <coppro> why is SMTP so hard
08:02:22 <fizzie> It's not hard, it's Simple; it says so right in the name.
08:10:59 -!- zzo38 has quit (Remote host closed the connection).
08:11:23 -!- AnotherTest has joined.
08:11:30 <AnotherTest> Hello
08:15:37 <fizzie> Does anyone happen to know how screen determines the encoding to speak to the terminal? I have LC_CTYPE=en_US.UTF-8 everywhere (both locally as well as remotely), but after they upgraded this workstation, I now have to use "screen -U" to convince it to speak (and listen) UTF-8 to (from) the terminal; it didn't use to require anything.
08:18:48 <fizzie> The -U option seems to just nwin_options.encoding = nwin_options.encoding == -1 ? UTF8 : 0;, but that doesn't really make sense, since it also if (((s = getenv("LC_ALL")) || (s = getenv("LC_CTYPE")) || (s = getenv("LANG"))) && InStr(s, "UTF-8")) nwin_options.encoding = UTF8; and that sure should be true.
08:19:45 <fizzie> Well, okay, it maybe does nwin_options.encoding = FindEncoding(nl_langinfo(CODESET)); instead, but certainly that should be the same thing.
08:20:48 -!- AnotherTest has quit (Read error: Connection reset by peer).
08:20:56 -!- AnotherTest1 has joined.
08:24:22 -!- AnotherTest1 has changed nick to Test.
08:24:27 -!- Test has changed nick to AnotherTest.
08:28:10 -!- AnotherTest has quit (Read error: Connection reset by peer).
08:30:40 <fizzie> Okay, it seems that the locale-setting returns errors if there's even a single LC_ variable that refers to a non-generated locale; I only had en_US ones generated, but due to something or other LC_PAPER was set to fi_FI.UTF-8; generating the fi_FI locales fixed it.
08:30:47 <fizzie> (Kind of stupef.)
08:31:14 <shachaf> What's wrong with en_FI.UTF-8?
08:32:55 <fizzie> "cannot open locale definition file `en_FI': No such file or directory" is what's wrong with it.
08:41:04 <shachaf> What's wrong with fi_FI.UTF-8, rather?
08:42:39 <fizzie> Nothing in particular, except that it hadn't been generated on the box I ssh to.
08:43:17 <fizzie> (In the context of LC_MESSAGES, what's wrong are the silly messages.)
08:44:44 <fizzie> (And I suppose the commas in context of LC_NUMERIC.)
08:46:14 <fizzie> Anyway, the "stupef" bit referred more to the fact that even if LC_PAPER is set to a locale that doesn't exist, it shouldn't break things that depend only on LC_CTYPE, which after all was set to a perfectly valid value.
09:28:57 <Deewiant> But of course you want fi_FI on LC_{MONETARY,PAPER,ADDRESS,TELEPHONE,MEASUREMENT} so there's no reason to not have it generated.
09:29:45 <shachaf> fi_FI_FI
09:30:13 <shachaf> FI
09:31:22 <Sgeo> http://www.youtube.com/watch?feature=endscreen&v=RrL2hLpCGwk&NR=1 wtf
09:32:24 <monqy> @ask elliott <Sgeo> http://www.youtube.com/watch?feature=endscreen&v=RrL2hLpCGwk&NR=1 wtf
09:32:24 <lambdabot> Consider it noted.
09:32:29 <monqy> im sure he';ll appreciate this video
09:32:54 <Sgeo> Does the person actually think this looks real? At all?
09:33:13 <monqy> @ask elliott <Sgeo> Does the person actually think this looks real? At all?
09:33:13 <lambdabot> Consider it noted.
09:33:22 <monqy> (important commentary, not to be without)
09:33:31 <shachaf> @ask monqy <hi> monqy
09:33:31 <lambdabot> Consider it noted.
09:33:36 <monqy> @messages
09:33:36 <lambdabot> shachaf asked 5s ago: <hi> monqy
09:33:43 <shachaf> thanks lambdabot
09:33:49 -!- sirdancealot7 has quit (Ping timeout: 244 seconds).
09:34:16 <shachaf> monqy: who's your favourite bot?? ??
09:34:27 <monqy> hm
09:34:31 <monqy> tough choice!
09:34:34 <monqy> i like a lot of bots
09:34:37 <monqy> for different reasons
09:34:46 <shachaf> "you gotta choose"
09:34:46 <monqy> they're incomparable, you could say
09:34:59 <shachaf> "bots form a semilattice"
09:35:43 <monqy> in which direction is the join????
09:36:00 <shachaf> up !
09:36:06 <monqy> : D
09:36:19 <monqy> a good direction as any, I'd say
09:36:27 <shachaf> is it as good as:
09:36:32 <shachaf> southeast??
09:36:57 <shachaf> southeast forms a semilattice with southeast as the top !
09:36:58 <monqy> and southsouthwest, and westnorthwest
09:37:08 <shachaf> and westwestwest
09:37:13 <monqy> westwestwest is boring
09:37:22 <monqy> three wests is overdone it!
09:37:30 <fizzie> Deewiant: Disk space!
09:37:33 <shachaf> eastwestwest
09:37:41 <monqy> now you're getting somewhere
09:37:46 <monqy> is the somewhere: west????
09:37:52 <shachaf> data direction equals east or easteast or easteasteast
09:38:52 -!- DHeadshot has quit (Ping timeout: 246 seconds).
09:38:54 <shachaf> monqy: did you know: i'm a bot! ?
09:38:58 <monqy> no
09:39:09 <monqy> i always thought you were a shachaf.............
09:39:13 <shachaf> elliotts is also a bot :'(
09:39:15 <monqy> have i been lied too?????
09:39:30 <shachaf> monqy: what if i=am shachaf bot??
09:39:32 <shachaf> ????
09:39:38 <monqy> :o
09:39:38 <shachaf> mystery: solved
09:41:02 <Deewiant> fizzie: Indeed, almost a 3.5" floppy disk's worth!
09:41:25 <shachaf> what about: a 3.5' floppy disk!
09:42:01 <shachaf> > 1.44/(3.5 * 3.5)
09:42:02 <lambdabot> 0.11755102040816326
09:42:28 <shachaf> > 0.11755102040816326 * (3.5*12 * 3.5*12)
09:42:28 <lambdabot> 207.35999999999999
09:42:42 <Deewiant> > 1.44 \* 144
09:42:43 <lambdabot> Not in scope: `\*'
09:42:50 <Deewiant> Oops, I'm too used to the command line
09:42:52 <Deewiant> > 1.44 * 144
09:42:53 <lambdabot> 207.35999999999999
09:42:56 <shachaf> that = a lot of megbytes.
09:43:01 <shachaf> Deewiant: You're making life too easy.
09:43:19 <shachaf> I bet I can make it even more complicated than that.
09:43:20 <Deewiant> Yes, that's more than a zip disk!
09:43:20 <FreeFull> Note that 1.44MB floppies are actually 1440*1024 bytes
09:43:38 <shachaf> @google 1440*1024 bytes in megabytes
09:43:39 <lambdabot> 1.40625 megabytes
09:43:39 <lambdabot> http://support.microsoft.com/kb/121839
09:43:40 <lambdabot> Title: Determining Actual Disk Size: Why 1.44 MB Should Be 1.40 MB
09:43:40 <Deewiant> > 1440 * 1024 * 144 / 1024 / 1024
09:43:41 <lambdabot> 202.5
09:43:57 <shachaf> thanks microsoft knowledge base
09:44:05 <shachaf> thicrosoft thowledge thase
09:46:43 <FreeFull> " There are 1024 bytes in a kilobyte, not 1000. " I'm glad Microsoft doesn't listen to HDD manufactureres
09:48:22 <fizzie> FreeFull: A HDD manufacturer would've called it a 1.47 MB floppy.
09:49:27 -!- DHeadshot has joined.
09:50:25 -!- MoALTz has joined.
09:51:13 <shachaf> > 1000 `isApproximatelyEqualTo` 1024
09:51:15 <lambdabot> True
09:51:19 <shachaf>
09:51:35 <Deewiant> > 1 `isApproximatelyEqualTo` 1024
09:51:37 <lambdabot> False
09:52:44 <monqy> useful function!
09:52:56 <Deewiant> > 999 `isApproximatelyEqualTo` 1024
09:52:58 <lambdabot> False
09:52:58 <monqy> @src isApproximatelyEqualTo
09:52:58 <lambdabot> Source not found. Maybe you made a typo?
09:53:04 <Deewiant> Methinks it's been optimized for this situation.
09:54:58 <fizzie> Ideas how to disable Gnome desktop icons "nowadays" (Ubuntu 12.04)? The old 'gconftool /apps/nautilus/preferences/show_desktop to false' doesn't seem to do anything.
09:55:07 <fizzie> I think this is the Gnome 3 fallback mode or whatever.
09:56:15 <fizzie> Google speaks of a 'dconf-editor' but I don't have a thing like that.
09:57:24 -!- atriq has joined.
09:59:18 <fizzie> And apparently I can't run the dconf-editor binary from the package because "Settings schema 'ca.desrt.dconf-editor.Settings' is not installed".
09:59:44 <Deewiant> Why make things simple when they could be complex?
10:00:09 <FreeFull> Why use Gnome 3?
10:00:24 <fizzie> I'm not entirely sure, to be honest.
10:01:00 <fizzie> I just thought, since they've bothered to fiddle together a "Gnome 3 fallback + XMonad" session file in the package, I might as well use it, since it's so close to what I used to do here.
10:03:36 <fizzie> Maybe I'll just live with the icons for now; at least it'll make me clean up the ~/Desktop/ for some cruft that has inexplicably ended up in there.
10:03:58 <FreeFull> Take a look at https://en.wikipedia.org/wiki/MATE_%28desktop_environment%29
10:06:03 <fizzie> I can't be bothered to actually start attempting to install something on this thing, as a non-root person.
10:14:07 <FreeFull> Ah
10:25:12 -!- Slereah has quit.
10:26:27 -!- Eladith has joined.
10:28:17 <fizzie> "Finally, the Department's Jura IMPRESSA Z5 coffee machine is (again) back from the maintenance -- Please observe that the IMPRESSA has a new usage policy: YOU ARE NOT ALLOWED TO USE THE IMPRESSA, unless you follow the usage policy at [url]. The reason for the strict policy is that the IMPRESSA has spent more time in maintenance than in active coffee service, because it has been broken several ...
10:28:23 <fizzie> ... times because of improper use. It is rather surprising in how many ways a complex scientific instrument like IMPRESSA, which has many buttons to push and parts to pull out etc., can be broken."
10:28:29 <fizzie> Man, this coffee machine is truly the gift that keeps on giving.
10:28:38 <fizzie> I don't even drink coffee, but the emails still manage to amuse.
10:30:34 <fizzie> The policy specifies Class A, B, C and D licenses for the coffee machine, and lists actions that you may perform at the different levels.
10:32:14 <fizzie> [Without a license:] "2. You are allowed to perform ONLY the following action: a. IF the display has a text COFFEE READY: i. Place a cup under the hot water spout (11). ii. Press the desired product button (10–12). iii. Wait WITHOUT TOUCHING ANYTHING until the cup is filled and the text COFFEE READY is displayed again. DO NOT TOUCH JURA if any other text than COFFEE READY is displayed, ...
10:32:20 <fizzie> ... strange sounds are emitted, or there are no lights, or if there are blinking lights! Instead, please contact a Jura License holder."
10:32:28 <fizzie> Coffee machines: serious business.
10:33:28 <fizzie> There's also a Google Docs provided online exam for qualification to the first level (Class A).
10:38:57 <Deewiant> With amusing questions.
10:40:27 <fizzie> "c. Escape from the crime scene."
10:40:31 <fizzie> The answers are not bad either.
10:41:03 <Deewiant> Yes, they provide most of the amusement.
10:41:45 -!- AnotherTest has joined.
10:47:05 -!- derdon has joined.
10:55:04 -!- DHeadshot has quit (Read error: Connection reset by peer).
10:55:09 -!- DH____ has joined.
10:55:25 <Sgeo> I'm going to make my computer cry in suffering and try to install Eclipse+Counterclockwise
11:01:46 -!- asiekierka has quit (Ping timeout: 268 seconds).
11:01:53 -!- Arc_Koen has joined.
11:03:36 <Arc_Koen> hello
11:04:14 <shachaf> `WELCOME Arc_Koen
11:04:23 <HackEgo> ARC_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.)
11:10:34 <FreeFull> I didn't know it had an ALL-CAPITALS version
11:10:52 <Sgeo> Well, now you do.
11:10:56 <Sgeo> The link doesn't work though.
11:11:04 <shachaf> `WELCOME FreeFull
11:11:08 <HackEgo> ​FREEFULL: WELCOME TO THE INTERNATIONAL HUB FOR ESOTERIC PROGRAMMING LANGUAGE DESIGN AND DEPLOYMENT! FOR MORE INFORMATION, CHECK OUT OUR WIKI: HTTP://ESOLAN
11:11:14 <shachaf> Does that link work?
11:11:43 <FreeFull> `WeLcOmE
11:11:47 <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.)
11:11:57 <fizzie> The link is cut off, isn't it?
11:11:59 <Deewiant> It's cut off after N so nope.
11:12:09 <FreeFull> `WELcome
11:12:12 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WELcome: not found
11:12:27 <fizzie> The mixed-caps link doesn't work either, though.
11:14:59 <fizzie> Hey, wow.
11:15:15 <fizzie> If I type in http://ESOLANGS.ORG/ in Chrome, it goes to esolangs.org.
11:15:25 <shachaf> What!
11:15:30 <shachaf> Scum.
11:15:49 <fizzie> "HTTP://ESOLANGS.ORG" only does a Google search, though.
11:15:58 <olsner> might be something they put in the idna "standard"
11:16:29 <shachaf> "i don't need a" "standard"
11:17:10 <fizzie> Straight-forward punycode on it would go to xn--mi7chahsld1af.xn--si7cpaj which I doubt exists.
11:17:16 <fizzie> Especially the xn--si7cpaj TLD.
11:17:38 <shachaf> xn-himonqy-xn.com
11:18:04 <shachaf> `quote solidity
11:18:07 <HackEgo> 273) <treederwright> enjoy being locked in your matrix of solidity
11:42:25 -!- atriq has quit (Ping timeout: 272 seconds).
11:49:08 <Sgeo> Oh hey, GreaseMonkey's getting involved in Homestuck
11:49:15 <Sgeo> </creepy-stalker>
11:49:22 <monqy> hi
11:49:30 <Deewiant> fizzie: It goes there in Firefox (15) as well.
11:53:18 -!- boily has joined.
12:07:43 <FreeFull> http://ESOLANGS.ORG/ goes to esolangs.org in Firefox. http://xn--mi7chahsld1af.xn--si7cpaj/ doesn't though
12:13:53 <FreeFull> http://esolangs.org/wiki/Slashes#Quine This is the best quine ever
12:27:36 -!- pikhq_ has joined.
12:28:09 -!- pikhq has quit (Ping timeout: 260 seconds).
12:32:49 -!- atriq has joined.
12:36:13 <atriq> :)
12:47:46 -!- kinoSi has quit (Read error: Connection reset by peer).
12:48:14 -!- kinoSi has joined.
12:54:43 -!- atriq has quit (Ping timeout: 245 seconds).
13:00:30 -!- cuttlefish has joined.
13:06:05 -!- monqy has quit (Quit: hello).
13:46:25 -!- sirdancealot has joined.
14:47:18 <kmc> LC_ALL=fi_IRC.UTF-8
14:48:01 <fizzie> irc_EN.
14:48:33 <fizzie> I vaguely recall that you can use three-letter language codes in the first part, too, often.
14:52:11 <kmc> presumably you can't use EN for the second part, though?
14:56:40 <Gregor> Beast Jesus is best Jesus.
14:58:49 <kmc> LC_ALL=kw_GB.UTF-8
14:59:22 -!- impomatic has joined.
15:13:14 <boily> LC_ALL=fr_CA.utf-8
15:14:00 <Gregor> LC_ALL=C
15:17:30 <kmc> :(
15:19:05 <FreeFull> en_GB.UTF-8
15:24:17 <pikhq_> LC_ALL=C.UTF-8
15:27:12 -!- donmarquis has joined.
15:27:28 <donmarquis> hello
15:27:55 <kmc> hi donmarquis
15:28:09 <donmarquis> lo
15:28:09 <donmarquis> l
15:28:12 <donmarquis> nuthead alert
15:28:47 <donmarquis> hey mate do you know anyway of writing an if statement if
15:28:50 <donmarquis> brainfuck
15:28:56 <donmarquis> *in brainfuck]
15:29:18 -!- heroux has quit (Remote host closed the connection).
15:30:32 <kmc> use the loop commands []
15:30:54 <kmc> with a body which makes sure the loop condition will be false on the next iteration
15:32:49 <donmarquis> example mate ?
15:32:56 <FreeFull> +++++++++++++++++++++++++++++++++++>+[<..>-]
15:33:05 <donmarquis> im kind of a beginner :P
15:33:31 <AnotherTest> (that moves to a cell that contains 0)
15:33:54 <FreeFull> ^bf +++++++++++++++++++++++++++++++++++>+[<..>-]
15:33:54 <fungot> ##
15:34:00 <FreeFull> ^bf +++++++++++++++++++++++++++++++++++>[<..>-]
15:35:10 <FreeFull> Do you get it?
15:35:12 <kmc> [foo] means while (current cell is not 0) { foo }
15:35:30 <kmc> so if the end of "foo" makes the current cell 0, by decrementing it or by moving to a different cell
15:35:38 <kmc> then it's equivalent to if (current cell is not 0) { ... }
15:37:26 -!- atriq has joined.
15:37:55 <AnotherTest> Hello atriq
15:38:01 <atriq> ...
15:38:02 <atriq> Hey
15:38:03 <FreeFull> Don't try to use brainfuck for anything serious unless you really want to
15:38:42 <atriq> I think that's true of most esolangs
15:38:50 <atriq> Maybe except Funge-98
15:39:26 <FreeFull> Funges are cool
15:39:45 <donmarquis> well i want to write a simple program :P nothing serious though
15:40:42 <FreeFull> Well, brainfuck is called a turing tarpit for a reason
15:41:11 <FreeFull> I bet most people who work with brainfuck actually end up writing programs to write the brainfuck for them
15:41:58 <AnotherTest> exactly
15:42:43 <kmc> hi atriq
15:42:48 <atriq> Hello
15:42:51 <atriq> AAaaaaah
15:44:51 <donmarquis> to write the brainfuck ?
15:45:15 <AnotherTest> Yes, a compiler or preprocessor
15:48:58 <fizzie> Oh, right; well, irc_FI, for the Finnish regional variant of the "IRC" language, and fi_IRC for the Finnish language as spoken in IRC, then.
15:51:36 <fizzie> atriq: I'm not sure you should be advocating even Funge-98 use in a "serious context" without the unless-you-want-to qualifier, even though it's admittedly a more feasible proposition than many other esolangs.
15:56:28 -!- Vorpal has joined.
15:57:19 -!- zzo38 has joined.
16:14:32 -!- DH____ has quit (Read error: Connection reset by peer).
16:24:18 -!- atriq has quit (Ping timeout: 245 seconds).
16:44:08 -!- impomatic has quit (Quit: impomatic).
16:51:49 -!- atriq has joined.
16:53:11 <Sgeo> I am beginning to hate Eclipse
16:53:18 <Sgeo> (Only because of what I assume is a bug)
16:57:26 -!- kinoSi0 has joined.
17:06:36 -!- kinoSi has quit (*.net *.split).
17:06:36 -!- AnotherTest has quit (*.net *.split).
17:06:36 -!- chickenzilla has quit (*.net *.split).
17:08:55 -!- chickenzilla has joined.
17:10:19 -!- AnotherTest has joined.
17:17:19 <Arc_Koen> hmm I'm trying to write an ocaml interpreter for Fueue http://esolangs.org/wiki/Fueue
17:18:34 <Arc_Koen> it's a queue-based language; apparently when the top element is a function, you must first check if the following elements are values of the appropriate type to be that function's parameters
17:18:52 <Arc_Koen> except some function (+, *, /, for instance) are expecting two elements
17:19:56 <Arc_Koen> and I can only "look" at the first element; if I want to see the second, I must first pop the first element... and if the second element is not suited for the function, I have to put the first one back on top of the queue...
17:20:09 <Arc_Koen> which is not possible since it's a queue
17:20:27 -!- augur has quit (Remote host closed the connection).
17:21:35 <Arc_Koen> would you guys have any ideas? (besides pushing the first element at the end of the queue and then making a full queue rotation to have it on top again)
17:22:05 <Sgeo> Use a structure other than a queue?
17:23:34 <Arc_Koen> are you implying I got fooled by the "Fueue is a http://esolangs.org/wiki/Queue-based http://esolangs.org/wiki/Esoteric_programming_language" at the beginning of the wiki page?
17:24:31 <Sgeo> You have no way of peeking ahead in the queue?
17:24:35 <Sgeo> Oh
17:25:02 <Sgeo> Wouldn't be a problem if you used Haskell, since you would be able to peek, yet still have the old queue
17:25:18 <Arc_Koen> I guess I'd have to make my own chained-list queue
17:25:20 <Sgeo> It's mutability's fault :p
17:25:39 <Arc_Koen> ocaml only allows me to pop the first element, peek the first element, and push an element
17:25:43 <Arc_Koen> well, thanks :)
17:29:27 -!- ogrom has joined.
17:31:22 <atriq> You could temporarily store them in a different data structure
17:39:26 <zzo38> With Haskell it is possible to program in what is allowed and what is not allowed.
17:42:16 <Sgeo> Funny, I'm beginning to get frustrated with Clojure sandboxes
17:42:23 <atriq> @ping
17:42:23 <lambdabot> pong
17:43:28 <atriq> Oh, that's not a good sign
17:43:39 -!- copumpkin has changed nick to pirateat41.
17:43:58 -!- impomatic has joined.
17:44:43 <zzo38> I was trying to invent and implement WizardCard programming language, although I might want to change it more similar to Lisp and/or Scheme. It is for compiling into Haskell. Maybe there should be an explicit syntax to indicate where a symbol is declared though, and I think it should have rulebooks like in Inform 7 but first-class rulebooks (as well as first-class functions).
17:45:42 <zzo38> However I am not exactly sure. Opinions?
17:46:19 -!- pirateat41 has changed nick to copumpkin.
17:46:47 <zzo38> One of the features I intended it to have is some mechanism by which it can read text from Magic: the Gathering cards and similar games and convert them into the AST.
17:56:48 -!- AnotherTest has quit (Quit: Leaving.).
17:58:41 -!- atriq has quit (Read error: Connection timed out).
18:13:06 -!- augur has joined.
18:24:01 -!- atriq has joined.
18:24:31 <atriq> Today's Freefall is quite good
18:26:13 -!- asiekierka has joined.
18:29:49 <FreeFull> Sam doesn't need to know what he's doing
18:31:47 <atriq> I also liked today's Girl Genius
18:32:10 <atriq> Today's xkcd reminded me of an old Brawl in the Family
18:38:26 <kmc> i like http://what-if.xkcd.com/8/
18:38:39 <atriq> Yeah, that was good
18:38:41 <kmc> except that i don't think randall munroe knows what "light rail" is
18:39:01 <kmc> but, common mistake :)
18:41:16 -!- zzo38 has quit (Remote host closed the connection).
18:44:16 -!- Eladith has quit (Ping timeout: 268 seconds).
18:55:48 -!- sivoais has quit (Ping timeout: 248 seconds).
18:55:54 -!- donmarquis has quit (Ping timeout: 276 seconds).
18:57:02 <Sgeo> Are Clojure developers always going to make the language uglier in their pursuit of performance?
18:57:11 <atriq> Yes?
18:57:32 <atriq> Clojure's the lispy one for JVM, right?
18:57:59 <Sgeo> Yeah
18:59:03 <Sgeo> Performance is the reason arithmetic doesn't automatically go up to BigInteger if needed
19:00:39 <kmc> nearly every language does that to some degree
19:00:50 <kmc> almost no language "always" does that
19:02:04 <kmc> ø_ø
19:02:14 <kmc> °_°
19:03:00 <kmc> that one looks like Roberto from Futurama
19:08:57 -!- sivoais has joined.
19:18:47 <kmc> i like trains
19:18:49 -!- ais523 has joined.
19:19:41 -!- mtve has quit (Ping timeout: 244 seconds).
19:20:02 -!- mtve has joined.
19:23:07 -!- nortti has joined.
19:27:20 -!- nortti has changed nick to nortti_.
19:29:21 <boily> kmc: trains are cool. we just don't have enough of them here to satisfy the generic trainspotter's appetite.
19:29:36 * boily has repressed trainspotter tendencies.
19:30:29 -!- Eladith has joined.
19:34:37 <fizzie> Mountains are nice.
19:35:04 * impomatic prefers mountains to trains
19:35:06 <kmc> here = where?
19:35:20 <fizzie> On the channel.
19:35:25 <fizzie> I've seen very few trains on #esoteric.
19:36:13 <boily> kmc: here = montréal.
19:38:21 <kmc> ah
19:38:41 <fizzie> I'd paste U+1F684 HIGH-SPEED TRAIN, U+1F685 HIGH-SPEED TRAIN WITH BULLET NOSE and U+1F686 TRAIN to remedy the #esoteric train situation, but I'm afraid some piece of software or another would just eat the astral planes, and then it'd be all embarrassing.
19:38:46 <fizzie> 🚄 🚅 🚆 WORTH A TRY
19:39:20 <fizzie> Doesn't look very promising.
19:39:28 <fizzie> (Nothing ever works out right.)
19:40:28 <fizzie> Well, I'unno; in my bouncer log they do seem like reasonable UTF-8 sequences.
19:40:37 <fizzie> Don't have the fonts, of course.
19:42:38 <kmc> i don't have the fonts, and mosh doesn't have the character info either
19:43:11 <olsner> there was a trains and trams theme day on #esoteric a while ago, I think it was when kmc was in estonia
19:43:14 <kmc> boily: well, there is a metro at least
19:43:52 <olsner> it might also have been a few sentences about trains, but a trains and trams theme day sounds like more fun
19:44:08 <kmc> an interesting system, with rubber tires and automatic train control
19:45:05 <kmc> and electromagnetic brakes
19:46:03 <fizzie> There was a plan to upgrade the Helsinki metro trains to some kind of automatic control, in negotiations right this summer, and it was this || close to happening, but at the last possible moments the talks with Siemens (I think) broke down, and they opted not to.
19:46:41 <fizzie> At least I think that's what happened. They announced they weren't going ahead with the deal, then they announced they actually still are going ahead with it, and finally they announced again that it's not going to happen.
19:46:48 <fizzie> They may have flopped once more for all I know.
19:48:29 -!- atriq has quit (Ping timeout: 256 seconds).
19:55:00 -!- ogrom has quit (Quit: Left).
19:56:33 <boily> kmc: the metro is nice, if not a little bit too warm in the summer.
19:57:52 -!- oerjan has joined.
20:01:26 <oerjan> <oklopol> so this dr who thing is british or did i take the wrong one? <-- now you got me considering the idea of an american remake...
20:03:47 <olsner> omg, an american doctor who ... that could be the worst thing ever
20:03:49 <fizzie> oerjan: The "Doctor What", then?
20:04:31 <oerjan> obviously.
20:05:16 <olsner> I think the americans will have difficulty understanding that kind of wordplay
20:05:37 <olsner> it would be "Doctor Time"
20:05:38 <oklopol> except that the american version is always better
20:05:42 <oklopol> in everything
20:05:50 <fizzie> oklopol: Also bigger.
20:06:21 <oklopol> doctor who is a play on words? :D
20:06:57 <oerjan> <elliott> Oh. No oerjan. <-- shocking.
20:07:08 <oklopol> i thought it just meant like "doctor *who*??"
20:07:16 <oerjan> i shall assume he wanted me to ban shachaf for being a soundnfury/cheater chimera
20:07:19 <oklopol> because no one knows who he is and shit
20:07:23 <oklopol> anyway nig
20:07:24 <oklopol> h
20:07:25 <oklopol> t
20:08:06 <fizzie> oerjan: That's an eminently portmanteauable word-pair. I shall be saying "oh, noerjan" a lot in the future, if I just remember to.
20:08:07 <oerjan> oklopol: i think it's clearly established his name is not "who", at least
20:09:01 <oerjan> fizzie: that's ok my log search will find that.
20:09:21 <shachaf> oerjan: Am I?
20:09:30 <oerjan> shachaf: the logs clearly suggest it
20:09:56 <oerjan> <shachaf> soundnfury 'n' cheater combined
20:11:51 -!- elliott has joined.
20:12:14 <elliott> oerjan: You should op me.
20:12:40 <oerjan> i suddenly have this _remarkable_ sense of deja vu
20:13:17 <elliott> I promise to voice oerjan.
20:14:15 -!- asiekierka has quit (Remote host closed the connection).
20:14:33 <oerjan> that oerjan guy doesn't deserve a voice, he just blathers nonsense.
20:14:45 <elliott> OK. I promise to voice ais523.
20:15:05 <oerjan> will that make him complete feather?
20:15:50 <elliott> Yes.
20:15:52 <elliott> Or no.
20:15:54 <elliott> Nobody can tell.
20:16:00 <elliott> It'll just be whatever is best for the universe.
20:16:00 <oerjan> ah.
20:16:02 <elliott> That's my promise.
20:16:42 <oerjan> i dunno, whatever is best for the universe has a tendency to be painful for me
20:16:47 -!- asiekierka has joined.
20:17:07 <elliott> oerjan: But you are the universe!
20:17:10 <elliott> I guarantee it.
20:17:33 <oerjan> i was afraid of that.
20:17:55 <elliott> oerjan: But there is no fear! I also guarantee this.
20:17:58 <shachaf> elliott: Wait, were you telling oerjan to ban me?
20:17:58 <oerjan> i read that "the egg" thing, i thought it seemed depressing
20:18:32 <oerjan> shachaf: he never said what he wanted but that was the obvious conclusion.
20:18:53 <shachaf> elliott: Did you hear that I'm a soundnfury/cheater chimera?
20:19:33 <elliott> I won't ban shachaf. That's my promise.
20:19:43 <oerjan> good, good.
20:19:55 <elliott> (What "the egg" thing?)
20:20:06 <olsner> elliott: ban shachaf
20:20:35 <oerjan> http://www.galactanet.com/oneoff/theegg_mod.html
20:20:40 <elliott> olsner: I won't ban shachaf. But maybe I'll op you.
20:21:03 <shachaf> What if you op me?
20:21:09 <shachaf> @admin - elliott
20:21:20 <olsner> why would you op me?
20:21:21 <elliott> oerjan: Did you ever read Fine Structure?
20:21:27 <elliott> `quote trust olsner
20:21:31 <HackEgo> 557) <ais523> this strikes me as probably better than a singularity, because you can't trust a random AI, but you can probably trust olsner
20:21:35 <oerjan> nope
20:22:07 <elliott> oerjan: It's good.
20:22:14 <olsner> oh great, apparently you can probably trust me :(
20:22:17 <elliott> shachaf: Did you ever read that blog post?
20:23:15 <oerjan> he meant what he said and he said what he meant, an olsner is faithful 100%
20:25:36 <shachaf> :-(
20:26:08 <elliott> shachaf: Is that a no?
20:26:26 <oerjan> it's a frowney
20:27:07 <olsner> a sad-ist?
20:27:20 <elliott> oerjan: How about you just op olsner?
20:27:26 <elliott> I mean, he's olsner.
20:28:13 <oerjan> what would the world look like if i started opping swedes
20:28:17 <olsner> I read that as "<elliott> olsner: How about you just op olsner?"
20:29:53 <shachaf> opsner
20:30:06 <oerjan> more like oopsner
20:30:41 <olsner> øpjan
20:31:33 <elliott> oerjan: olsner doesn't even count as a Swede.
20:31:36 <elliott> He's too nice.
20:33:18 <olsner> what, swedes are nice
20:36:43 <elliott> as you can see, olsner is flawed
20:37:24 <shachaf> flød
20:37:40 <olsner> more like flåd
20:38:49 <elliott> olsner: Do you know Rust?
20:41:06 <olsner> elliott: pretty sure I've read about it but I don't remember which one it is
20:41:53 <elliott> It's the thing.
20:41:57 -!- Vorpal has quit (Ping timeout: 252 seconds).
20:42:00 <elliott> shachaf: So did you read the post?
20:42:23 <olsner> elliott: do you have followup questions that would motivate me googling for rust to refresh my memory?
20:42:34 <elliott> olsner: Sort of?
20:43:37 <olsner> neat, "It is designed to be practical" (says wikipedia anyway)
20:44:06 <Sgeo> elliott, did you finish FS?
20:44:13 <elliott> olsner: They have closures and stuff.
20:44:15 <elliott> Sgeo: Ages ago, yes.
20:44:18 <kmc> WOW CLOSURES
20:44:22 <elliott> kmc: Yes!
20:44:22 <kmc> BLEEDING EDGE TECHNOLOGY
20:44:32 -!- asiekierka has quit (Remote host closed the connection).
20:44:33 <copumpkin> lol
20:45:00 -!- zzo38 has joined.
20:45:04 <olsner> oh, remind me how closures doesn't really mean what most people think about when languages "have closures"
20:45:08 <elliott> kmc: Well, they're not allocating everything on the heap and so on, so it's not as trivial as it could be.
20:45:23 <kmc> yeah, Rust has some interesting uniqueness typing stuff going on
20:45:39 <kmc> it's an attempt at a new systems programming language, made by people who know OCaml and Haskell in addition to C and C++
20:45:44 <kmc> unlike Go
20:45:45 <elliott> kmc: I like uniqueness types. But edwardk tells me they're bad because they stop you doing a bunch of optimisations you really want and stuff.
20:45:49 <olsner> hmm, wikipedia is bad for programming languages, it groups all the buzzwords in the first sentence making it sound like hogwash
20:45:49 <elliott> But I don't want to believe him, because they're nice.
20:46:13 <elliott> olsner: They have a tutorial thing.
20:46:15 <elliott> Rust, I mean.
20:46:23 <olsner> "an experimental, concurrent, multi-paradigm, compiled programming language [...] supporting pure-functional, concurrent-actor, imperative-procedural, and object-oriented styles."
20:46:51 <nortti_> do you have any experience with go?
20:46:53 <kmc> take Java, dumb it down even more, and then make the syntax weird enough that C elitists will accept it
20:46:56 <kmc> that's go
20:47:10 <elliott> Go is pretty bad in a bunch of ways, but that's a silly way of putting it.
20:47:20 <elliott> (It doesn't really have objects, for one.)
20:47:38 <olsner> alGOl
20:47:40 <kmc> it has x.f(y) syntax of course it has objects!!!!!!!!
20:47:55 <elliott> objects, n. a module system
20:49:33 <nortti_> does it have anything good?
20:49:49 <kmc> it's a memory-safe language attempting to eat C's market share
20:49:55 <kmc> this is good
20:50:01 <olsner> hmm, rust limits type inference to local variables? sounds a bit boring
20:50:05 <elliott> i suspect nortti_ would like go
20:50:16 <nortti_> why?
20:50:29 <oerjan> because you're a go getter
20:50:31 <zzo38> What is uniqueness types?
20:50:34 <kmc> it's hard to replace C because you have to convince C programmers that the new thing is not a slight to their manhood
20:50:48 <kmc> you have to make your new language seem weird and H4RDC0R3
20:51:21 <zzo38> There are many programming languages for different use.
20:51:32 <kmc> everyone knows Java is for "idiot code monkeys"
20:51:44 <copumpkin> loljava
20:51:49 <elliott> kmc: Have you written anything in ATS?
20:51:51 <kmc> i'll gladly accept a near certainty of exploitable security holes in exchange for not being an "idiot code monkey"
20:51:55 <kmc> no
20:52:00 <kmc> ATS is incomprehensible
20:52:07 <elliott> That's what they say about Haskell.
20:52:14 <olsner> incomprehensible === really really good
20:52:14 <copumpkin> ooh, burn
20:52:21 <elliott> (I find ATS code usually looks pretty reasonable if you're not actually writing a algorithm with a proof of correctness.)
20:52:26 <elliott> (Then it just looks like Agda.)
20:53:16 <olsner> the only ATS code I've read is from the shootouts, and those programs are all written by a madman
20:53:29 <olsner> (I think)
20:53:29 <kmc> i thought those were basically C
20:53:59 <kmc> using some ATS embedded C feature
20:57:47 <elliott> kmc: You should write a Haskell compiler that compiles down to code faster than C.
20:57:53 <elliott> Also make it better than Haskell.
20:57:54 <elliott> I'd use that.
20:58:38 <shachaf> Also make it @
20:58:51 <shachaf> elliott: Anyway, that already exists.
20:58:57 <shachaf> @google ndm supero
20:58:58 <lambdabot> http://community.haskell.org/~ndm/supero/
20:58:59 <lambdabot> Title: Neil Mitchell - Supero
20:59:04 <shachaf> @quote monochrom einstein
20:59:04 <lambdabot> monochrom says: einstein's theory implies that haskell cannot be faster than c
20:59:58 <zzo38> How can Einstein's theory imply that Haskell cannot be faster than C? I think it would depend much on the compilers and the computers it runs on.
21:00:24 <oerjan> <FreeFull> http://esolangs.org/wiki/Slashes#Quine This is the best quine ever <-- you're welcome :)
21:00:26 <shachaf> zzo38: Einstein's theory implies that it cannot be faster than c.
21:00:28 <elliott> shachaf: I don't think Supero is better than Haskell.
21:00:33 <elliott> The language it compiles, I mean.
21:00:45 <elliott> @ask monqy <zzo38> How can Einstein's theory imply that Haskell cannot be faster than C? I think it would depend much on the compilers and the computers it runs on.
21:00:45 <lambdabot> Consider it noted.
21:01:29 <shachaf> @hi monqy
21:01:29 <lambdabot> No match for "monqy".
21:01:44 <shachaf> monqy should quit smoking. :-(
21:01:45 <Sgeo> zzo38, it's a joke, pretending to confuse C the language with c the physics constant.
21:02:00 <shachaf> GOOD JOKE
21:02:03 -!- heroux has joined.
21:02:11 <elliott> oerjan: Also if you op me I will kick shachaf.
21:02:20 <olsner> shachaf: also it's much better now that Sgeo explained it
21:02:39 <Sgeo> I don't like it when people are left out of the loop
21:02:40 <zzo38> Sgeo: O, yes.
21:02:44 <zzo38> You are correct.
21:02:51 <zzo38> I forgot.
21:02:55 <FreeFull> olsner: Did you write that quine?
21:03:00 <shachaf> elliott: You promised to not kick shachaf. :-(
21:03:11 <elliott> shachaf: I lied.
21:03:18 <olsner> FreeFull: no
21:03:23 <elliott> for (;;) {};
21:03:24 <elliott> Sgeo;
21:03:28 <kmc> #define ever (;;)
21:03:30 <elliott> Sgeo: I left you out of the loop.
21:03:37 <shachaf> @ask monqy elliott = el-lie-ott. proof:: 14:03 <elliott> shachaf: I lied.
21:03:37 <lambdabot> Consider it noted.
21:03:46 <kmc> el lie bot?
21:03:46 <oerjan> <shachaf> monqy should quit smoking. :-( <-- he clearly took up smoking to ease the "hi" abstinence
21:03:57 <elliott> Smoking gets you hi.
21:05:26 <shachaf> There are better ways to get hi. :-(
21:06:33 <elliott> (Where did this monqy smoking thing come from?)
21:06:35 <oerjan> shachaf: technically i think he only promised not to _ban_ you
21:07:00 <shachaf> @ask monqy never mind elliott was telling the truth. he lied when he said he lied :'(
21:07:00 <lambdabot> Consider it noted.
21:07:08 -!- nortti_ has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
21:07:16 <oerjan> FreeFull: i think you mistabexpanded
21:07:25 <shachaf> misbetareduced
21:07:26 <oerjan> (and yes i wrote it)
21:07:39 <elliott> oerjan: Don't lie. olsner deserves the credit.
21:07:44 <elliott> olsner: You're so good at ///!
21:07:46 <oerjan> well generated it with haskell
21:08:03 <olsner> elliott: thanks
21:08:31 <olsner> FreeFull: I wrote the quine, don't listen to the norwegian
21:08:59 <shachaf> FreeFull: I wrote that quine, don't listen to the Norwegian and the Swede.
21:09:03 <elliott> op me and i'll kick oerjan for lying
21:10:10 <oerjan> shachaf: i suddenly wonder, does elliott mean something in hebrew?
21:10:50 <oerjan> it almost sounds like it could be a hebrew word
21:11:41 <olsner> not enough consonants, I think
21:11:50 <ais523> just heard on the news: "President Obama has declared Louisiana an emergency state – a state of emergency"
21:12:10 <oerjan> ais523: which news, i wonder
21:12:24 <ais523> BBC news
21:12:32 <ais523> I think they got it wrong twice
21:12:43 <ais523> and it's one of those sentences that's just wrong enough to be confusing
21:12:56 <shachaf> oerjan: Nothing in particular, I think.
21:13:15 <oerjan> darn, i was hoping for "incorrigible liar"
21:14:41 <shachaf> incorrigible lyre
21:14:56 <olsner> oerjan: you're the lying norwegian, why don't you just add that to the wisdom file?
21:15:03 <oerjan> shachaf: that sounds bad
21:15:07 <oerjan> `? oerjan
21:15:10 <HackEgo> Your evil overlord oerjan is a lazy expert in future computation.
21:15:17 <shachaf> `? shachaf
21:15:20 <HackEgo> shachaf sprø som selleri
21:15:35 <olsner> sprø = crispy?
21:15:40 <shachaf> Bitter?
21:15:49 <shachaf> Brittle.
21:15:53 * shachaf unable to read. :-(
21:16:00 <oerjan> `echo "Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian." >wisdom/oerjan
21:16:03 <HackEgo> ​"Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian." >wisdom/oerjan
21:16:15 <oerjan> olsner: it means both crispy and crazy in norwegian
21:16:19 <elliott> oerjan: Ew, double-spacing.
21:16:24 <shachaf> `echo "Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian." >wisdom/oerjan
21:16:27 <HackEgo> ​"Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian." >wisdom/oerjan
21:16:28 <shachaf> ==elliott
21:16:31 <shachaf> Er.
21:16:35 <shachaf> `run echo "Your evil overlord oerjan is a lazy expert in future computation. Also a lying Norwegian." >wisdom/oerjan
21:16:38 <HackEgo> No output.
21:16:43 <olsner> shachaf: I think the corresponding swedish word does mean brittle as well
21:16:47 -!- MoALTz has quit (Ping timeout: 252 seconds).
21:16:54 <oerjan> olsner: oh, that in norwegian too
21:17:09 <oerjan> well vaguely anyhow
21:17:29 <olsner> but for crispy stuff we'd usually use krispig, not spröd
21:18:43 <olsner> oerjan: btw, I meant that you should add to elliott's file that his name means incorrigible liar in hebrew
21:18:55 <oerjan> also "sprø som selleri" vaguely means something like "mad as a hatter"
21:19:01 <shachaf> `? elliott
21:19:04 <HackEgo> elliott wrote this learn DB, and wrote or improved many of the other commands in this bot. He probably has done other things?
21:19:26 <oerjan> olsner: hm i am somewhat loathe to edit zzospeak
21:19:42 <shachaf> That's not zzo's peak!
21:19:57 <elliott> zzo38 did not write my entry.
21:20:10 <shachaf> I think he did.
21:20:33 <oerjan> elliott: well then it's a good impression.
21:20:43 <elliott> Not really.
21:20:50 <elliott> It was Gregor.
21:20:56 <oerjan> always the argumentative
21:21:11 <oerjan> also "loathe" seems to be only a verb, what am i really thinking of?
21:21:36 <oerjan> oh loath
21:21:48 <oerjan> it's even listed under "not to be confused with"
21:22:30 <olsner> oh, there are few things as annoying as realizing that you've needlessly listened to half the enterprise theme without using your ability to skip forward in the video
21:22:57 <shachaf> What about: realizing that you've needlessly listened to three quarters of the enterprise theme without using your ability to skip forward in the video
21:23:09 <shachaf> Or: realizing that you've needlessly listened to seven eighths the enterprise theme without using your ability to skip forward in the video
21:23:34 <elliott> olsner: It's such a good theme, though!!!!!!!!!!!!!!!! SO GOOD.
21:23:44 <shachaf> What's the enterprise theme?
21:23:53 <elliott> Bad.
21:23:56 <shachaf> Is that the Jave theme song?
21:24:50 <shachaf> Is it: http://www.youtube.com/watch?v=-8OpsPok6iQ
21:24:54 <shachaf> Because :-(
21:25:00 <olsner> elliott: you know, I have a vague memory of arguing that it was not so bad
21:25:07 <olsner> (I take it all back)
21:25:39 <elliott> I think you did, yes.
21:26:30 <olsner> otoh, the theme is not as bad as captain archer
21:28:35 -!- Yonkie has joined.
21:35:10 <elliott> `welcome Yonkie
21:35:13 <HackEgo> Yonkie: 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:35:15 <elliott> kmc: What should I port 100k lines of C++ to?
21:35:22 <elliott> (Well, more like 80-90k lines.)
21:35:47 <kmc> your butt
21:36:21 <oerjan> elliott: PL/I
21:54:20 <olsner> hmm, I may have accidentally tried to change the topic
21:54:28 <olsner> elliott: PHP
21:55:17 <kmc> once again everyone is obsessing over languages
21:55:29 <kmc> i thought that usage of "port" would mean a new platform
21:56:31 <shachaf> #esoteric stop obsessing over languages!!
21:56:35 <elliott> kmc: The obsession is: I don't want to write any more C++.
21:56:42 <elliott> So I want to port the code to something else.
21:56:51 <shachaf> elliott: Use an FFI!
21:56:56 <shachaf> Anyway, C++ isn't that bad.
21:56:56 <olsner> if it's a platform port you're after, you want to port it to Symbian 2nd edition
21:57:02 <olsner> I think it comes with gcc 2.7.2
21:57:51 -!- nys has joined.
21:59:17 <olsner> elliott: port it to @
21:59:37 <elliott> No.
21:59:41 <nys> ice-9
21:59:44 <olsner> Ok.
21:59:49 <shachaf> i-snine
21:59:49 <elliott> `welcome nys
21:59:52 <HackEgo> nys: 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:59:58 <nys> i've already
21:59:59 <elliott> i snine with my little nie
22:00:00 <nys> rrgh
22:00:03 <shachaf> `WElCOME NYS
22:00:06 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WElCOME: not found
22:00:09 <shachaf> ...How do you mistype that?
22:00:18 <elliott> nys: i've already rrgh too
22:00:24 <oerjan> shachaf: carefully
22:00:24 <nys> i mean
22:00:40 <nys> whateever
22:01:10 <shachaf> @yarr
22:01:10 <lambdabot> I'll keel haul ya fer that!
22:01:21 <elliott> nys: whatever?
22:01:31 <shachaf> whate ever
22:01:36 <shachaf> whateëver
22:01:37 <olsner> shachaf: I think the unspoken rule is that you provide an alternate welcome text when you do that
22:01:44 <nys> i've already been welcomed twice is what i meant
22:01:55 <shachaf> olsner: It was unspoken until you spoke it. :-(
22:02:01 <nys> don't u remember me
22:02:02 -!- Arc_Koen has left.
22:02:07 <oerjan> the formerly unspoken rule
22:02:11 <olsner> shachaf: alas it has become the spoken rule
22:02:11 <elliott> I am bad at remembering people. :(
22:02:22 <oerjan> nys: your nick is too short to remember
22:02:24 <nys> well i guess i haven't really done anything memorable :3
22:02:39 <oerjan> although fortunately it means "sneeze" in norwegian
22:02:50 <nys> oh sweet
22:02:55 <olsner> in swedish too
22:02:59 <nys> that's so cool
22:03:00 <shachaf> olsner: A spoken unspoken rule.
22:03:11 <nys> is it the actual word or the onomatapoeia
22:03:24 <oerjan> shachaf: maybe we'll still be ok as long as no one reads it aloud
22:03:31 <oerjan> actual word
22:03:44 <nys> this is awesome
22:03:45 <oerjan> the onomatopoeion would be "atsjo"
22:03:50 <olsner> the imperative form of the verb even
22:03:52 <shachaf> sne̊e̊ze̊
22:04:19 <oerjan> also the noun
22:04:29 <olsner> oh? that's nysning here
22:04:38 <olsner> a sneezing
22:06:47 <nys> well, nyssa is my actual name
22:07:32 <oerjan> i don't think that means anything in norwegian, although it sounds like it could be swedish
22:07:37 <olsner> one too many s'es or it would've been "to sneeze"
22:08:17 <oerjan> or actually...
22:10:34 <oerjan> it could be the plural of http://en.wiktionary.org/wiki/nyss , although no one ever uses that.
22:11:01 <elliott> poor cods
22:11:11 <oerjan> (other than in the set phrase, that is)
22:11:40 <oerjan> erm http://en.wiktionary.org/wiki/nyss#Etymology_2
22:11:51 <oerjan> the cods have the wrong plural ending
22:12:22 <nys> well that doesn't seem as cute as a sneeze
22:12:40 <elliott> we'll just call you sneezy
22:13:09 <nys> aww :3
22:13:25 <oerjan> elliott is grumpy, or would that be me
22:13:49 <elliott> shachaf: Hey, read that post.
22:14:04 <olsner> oerjan: norwegians lack the ability to be anything but cheerful, must be elliott being grumpy
22:14:10 <oerjan> ah.
22:14:21 * oerjan cheerfully swats olsner -----###
22:14:41 <olsner> aww
22:16:13 <olsner> getting swatted with cheerfulness was a weird sensation
22:18:22 <olsner> ban shachaf, he's threatening to leave IRC
22:18:37 <shachaf> Bolsner.
22:19:51 <elliott> olsner: is he
22:19:59 <shachaf> Belliott.
22:20:00 <shachaf> Yum yum.
22:20:36 <olsner> elliott: "<shachaf> I should probably leave IRC for a while, really."
22:20:45 <olsner> uttered just moments ago in another channel
22:21:08 <shachaf> elliott: Remember revenantphx?
22:21:35 <elliott> shachaf: Vaguely?
22:22:00 <shachaf> olsner: Make elliott make me read that post.
22:22:24 <olsner> shachaf: what post?
22:22:32 <shachaf> That post.
22:23:52 <coppro> elliott: how would you implement a logging system in Haskell that allows you to pull out logs of actions affecting only a given subset of things
22:23:55 <olsner> elliott: am I interested in helping shachaf getting you to convince him to read that post?
22:24:14 <coppro> (analogous to grabbing all commit messages that affect a certain file
22:24:41 <elliott> coppro: that sounds easy but uninteresting to write
22:24:47 <elliott> olsner: no
22:25:02 <coppro> elliott: what would you use, though? Just a Writer?
22:25:25 <olsner> shachaf: apparently I am not interested in helping you
22:25:30 -!- monqy has joined.
22:25:34 <shachaf> monqy!
22:25:37 <elliott> either Writer directly, or just a free/prompt monad and handle the actual logging in a backend
22:25:41 <shachaf> @ask monqy why hello there
22:25:41 <lambdabot> Consider it noted.
22:25:42 <monqy> hi
22:25:42 <lambdabot> monqy: You have 4 new messages. '/msg lambdabot @messages' to read them.
22:25:44 <coppro> free/prompt monad?
22:25:49 <monqy> oh hey elliott is here !!!
22:25:54 <monqy> occasion?
22:26:04 <elliott> occasion.
22:26:04 <shachaf> monqy: complaninang :-(
22:26:11 <elliott> coppro: free monad and/or prompt monad. (they are basically equivalent)
22:26:11 <coppro> occaision
22:26:36 <shachaf> elliott: What's this called? newtype Stream m a b = Stream { runStream :: m (Either b (a, Stream m a b)) }
22:27:12 <elliott> shachaf: ugly
22:27:28 <shachaf> no U gly
22:28:02 <shachaf> elliott: Did you know: Robert Harper posted another post about how laziness is bad!
22:28:42 <elliott> Yes.
22:29:45 <coppro> elliott: also what's your record on nested monads?
22:30:00 <shachaf> A monad nested... INSIDE ITSELF
22:30:17 <shachaf> M O N A D C E oerjan: kick shachaf :'(
22:30:33 <elliott> coppro: What?
22:30:41 <coppro> elliott: how many monads have you nested at once?
22:30:48 <elliott> I don't know what a "nested monad" is.
22:30:54 <elliott> Do you mean monad transformers?
22:32:35 <coppro> yes
22:33:17 <elliott> Probably like 5-6, but deeply-nested monad transformer stacks are a sign of bad design IMO
22:33:35 <elliott> (Even monad transformers themselves are fairly ugly in a few ways, but some use of them tends to be a bit unavoidable.)
22:33:42 <shachaf> If you have a deeply-nested monad transformer stack...
22:33:53 <shachaf> You'd better arrange for it to be a deeply-tested monad transformer stack.
22:34:03 <shachaf> oerjan: kick shachaf :'(
22:34:36 <coppro> elliott: well I'm looking at 3 different levels of nestedness
22:34:37 <oerjan> i cannot kick him, he's stuck in a non-allocating infinite loop
22:34:53 <oerjan> it's non-allocating because there is no actual content
22:34:57 <elliott> coppro: you might be doing something wrong then ;)
22:35:05 <shachaf> Ouch. :-(
22:35:07 <coppro> elliott: ok well I'm trying to write scripts for managing Agora state
22:35:28 <coppro> elliott: the idea is that the log can be a (things, text) pair
22:35:41 <shachaf> elliott: Have you read GHC code? :-(
22:35:51 <elliott> shachaf: Yes, it's bad.
22:36:06 <elliott> coppro: OK. (It probably shouldn't be a tuple.)
22:36:18 <coppro> elliott: or some other type which has the same info
22:36:52 <elliott> Right.
22:37:18 <coppro> then to make it easier, the 'things' half should be auto-generated based on operations, since some operations might affect multiple things (e.g. sending rubles to change voting limits would be logged both on the assessor and general secretary logs)
22:37:36 <coppro> the obvious implementation of this is a Writer backed by a Set
22:37:59 <coppro> possibly a third layer for emails
22:38:10 <coppro> (but that layer is less necessary)
22:39:25 <coppro> elliott: does this seem sane?
22:39:57 <elliott> Set isn't even a monad... "Writer (Set a) r" doesn't involve any monad transformers
22:40:05 <elliott> (well, except that Writer is implemented over WriterT over Identity)
22:40:16 <elliott> (in fact, even if Set was a monad, that would not be a transformer stack)
22:41:17 <coppro> but I'd have two Writers
22:41:22 <coppro> don't think I'd need transformers here
22:41:29 <coppro> but with Writer there's no difference
22:41:42 <elliott> I'm not sure why you need two Writers here, maybe I'm missing something
22:43:08 <coppro> one to turn actions on things into a set of tags
22:43:15 <coppro> and another to create the actual log
22:43:38 <elliott> What would your transformer stack look like in code?
22:44:15 <coppro> not sure
22:44:22 <coppro> haven't thought that far in advance :P
23:21:56 -!- pikhq has joined.
23:22:18 -!- pikhq_ has quit (Ping timeout: 264 seconds).
23:26:47 <kmc> perhaps bonghits will fix your monad transformer stack
23:27:22 <coppro> kmc: brilliant
23:27:24 <coppro> thank you
23:27:26 <coppro> a true genius
23:28:32 <elliott> perhaps bonghitz will fix your monad transformer stack
23:28:48 * oerjan detects possible meme, still confused
23:35:52 <shachaf> Bong's Greatest Hits
23:36:06 <monqy> greatest hitz
23:36:15 <shachaf> greatezt hitz
23:36:16 <elliott> monqy: explain bonghitz to oerjan please
23:36:40 * shachaf >>=
23:36:43 <monqy> I don't think bonghitz can be explained
23:36:45 <monqy> only experienced
23:39:18 <oerjan> i'm not referring to the meaning of "bong hits" as the meme, it just looked like "perhaps bonghits will" might be a meme
23:39:55 <oerjan> ah something shows up
23:40:24 -!- Nisstyre_ has joined.
23:41:26 <oerjan> i find hits but no explanation of the source
23:42:37 <kmc> it's from jerkcity
23:42:42 <kmc> http://www.jerkcity.com/jerkcity490.html [nsfw language]
23:45:49 <oerjan> thx
23:47:08 <kmc> thx 1138
23:49:40 -!- DHeadshot has joined.
2012-08-28
00:05:22 -!- DHeadshot has quit (Read error: Connection reset by peer).
00:05:27 -!- DH____ has joined.
00:05:57 -!- nooga has quit (Ping timeout: 272 seconds).
00:06:57 -!- DHeadshot has joined.
00:07:02 -!- DH____ has quit (Read error: Connection reset by peer).
00:09:03 -!- copumpkin has quit (Ping timeout: 244 seconds).
00:10:55 -!- copumpkin has joined.
00:11:43 * kmc starts a new job tomorrow
00:11:51 <copumpkin> where??
00:12:58 <kmc> i'll be employee #1 at a startup founded by a bunch of former ksplice people
00:13:06 <copumpkin> ooh!
00:13:14 <oerjan> kentucky fried splice
00:13:19 <copumpkin> doing what, and where geographically? still around boston area?
00:13:56 <kmc> doing secret things :) (for now)
00:14:01 <kmc> yeah, boston area
00:14:09 <kmc> will have offices in central square most likely
00:14:12 <copumpkin> zomg secret
00:15:11 -!- DHeadshot has quit (Read error: Connection reset by peer).
00:16:55 <augur> copumpkin: you should go by their offices and take some photos
00:17:11 <copumpkin> will do
00:17:20 <copumpkin> except I'm across the ocean right now
00:17:25 <augur> :O
00:17:25 <copumpkin> but maybe next week
00:17:29 <augur> where what why
00:17:36 <copumpkin> I'm in italy for family shit
00:17:40 <kmc> offices are currently being procured
00:17:46 <kmc> some walls need to be knocked down
00:17:58 <copumpkin> let me know if you need to burn any bridges
00:17:59 <copumpkin> I'm good at that
00:18:00 <kmc> haha
00:18:09 <kmc> i already offered to take down the walls myself, but noooooo
00:18:23 <kmc> when i was at the hedge fund in NYC, LimeWire's offices were one floor below us
00:18:25 <copumpkin> that sounds kinda fun actually
00:18:28 <copumpkin> with a sledgehammer
00:18:32 <kmc> and then they moved to new offices
00:18:49 <kmc> and they had a moving out party which consisted of everyone getting piss drunk, spraypainting the walls, and then hitting them with sledgehammers
00:19:00 <copumpkin> lol
00:19:02 <augur> o-o;
00:19:04 <copumpkin> nice
00:19:05 <augur> is that.. what
00:19:06 <augur> i dont even
00:19:20 <kmc> unfortunately in the heat of the moment, a distinction between interior walls and structural exterior walls was not observed with the degree of care one might hope for
00:19:29 <elliott> hahhahaha
00:19:32 <kmc> so there were Damages
00:20:09 <augur> did the building collapse
00:20:11 <kmc> no
00:20:14 <augur> o
00:20:23 <kmc> just cost someone a bunch of money
00:20:36 <elliott> was the someone limewire
00:20:49 <kmc> maybe
00:21:02 <kmc> not sure if the expense was collectivized to the Lime Group
00:21:04 <copumpkin> kmc had to pay out of pocket
00:21:11 <copumpkin> because he was the one who did the damage
00:21:14 <kmc> haha
00:21:15 <copumpkin> he neglected to include that detail
00:21:17 <kmc> no, i wasn't even at the party
00:21:23 <kmc> i just walked through the wreckage the next day
00:21:37 <copumpkin> if I were doing that, I'd have contributed a bit
00:21:39 <copumpkin> who's gonna notice, right?
00:21:43 <kmc> heh, true
00:21:53 <kmc> we were actually there to loot the remaining non-damaged furniture
00:21:57 <copumpkin> lol
00:21:59 <augur> wait
00:22:02 <kmc> which provided most of the tables and chairs necessary for a 3-person apartment
00:22:03 <augur> through the wreckage?
00:22:13 <augur> oh inside you mean
00:22:15 <kmc> my friend had the presence of mind to rent a U-Haul for this occasion
00:22:31 <augur> i thought you meant the wreckage of the exterior wall
00:22:58 <kmc> they also left some computers behind, but we weren't sure whether they were technically evidence in an ongoing lawsuit
00:24:33 <copumpkin> yeah, wouldn't want to do anything illegal
00:24:39 <copumpkin> that's why you only stole the furniture
00:24:40 <copumpkin> >_>
00:24:47 <copumpkin> <_<
00:25:01 <kmc> yeah well, petty theft > federal obstruction of justice
00:25:08 <kmc> besides we had the tacit approval of the CEO to take the furniture
00:25:15 <kmc> or so I was assured >_<
00:27:21 <elliott> `addquote <kmc> yeah well, petty theft > federal obstruction of justice
00:27:23 <HackEgo> 857) <kmc> yeah well, petty theft > federal obstruction of justice
00:34:37 -!- DHeadshot has joined.
00:38:12 -!- augur has quit (Remote host closed the connection).
00:38:21 <copumpkin> :)
00:44:28 <shachaf> kmc: Ah, tomorrow?
00:45:06 <shachaf> (Please disregard previous message.)
00:50:20 <kmc> what was previous message?
00:50:52 <shachaf> Are you asking because you've already disregarded it?
00:53:26 <kmc> no
00:53:30 <kmc> 'm confuseod
00:55:02 <shachaf> I asked if you were starting your new job tomorrow. Then I realized it was a silly question because you just said you did, and I didn't have anything to add.
00:55:07 <kmc> ok then
00:55:21 <shachaf> Exactly.
01:02:08 <shachaf> elliott: GUESS WHAT
01:02:19 <elliott> You didn't read the post?
01:02:23 <shachaf> WRONG
01:03:30 <elliott> You read the post?
01:03:38 <shachaf> Yes.
01:03:44 <oerjan> *gasp*
01:03:53 <shachaf> It was a grueling, arduous task.
01:04:05 <oerjan> i feel such responsible behavior sets a bad precedent for the channel.
01:04:15 <shachaf> But I grit my teeth and and did it!
01:04:17 <elliott> shachaf: I have another post for you to read.
01:04:25 <shachaf> I did it! I did it! You said I couldn't do it but indeed I did!
01:04:50 <shachaf> @tell monqy what's the another post?
01:04:50 <lambdabot> Consider it noted.
01:05:48 <monqy> @messages
01:05:48 <lambdabot> shachaf said 58s ago: what's the another post?
01:05:57 <monqy> @ask elliott
01:05:57 <lambdabot> Consider it noted.
01:06:09 <elliott> shachaf: OK so, read http://www.impredicative.com/ur/tutorial/tlc.html first. Then read http://blog.ezyang.com/2012/07/polymorphic-variants-in-urweb/.
01:06:09 <lambdabot> elliott: You have 1 new message. '/msg lambdabot @messages' to read it.
01:06:18 <ion> @ask monqy
01:06:18 <lambdabot> Consider it noted.
01:06:26 <elliott> Or just skip to the second one. But the other one is good too.
01:06:28 <shachaf> elliott: Can I other order ;(
01:06:31 <shachaf> Oh.
01:14:17 <elliott> shachaf: Are you reading???
01:14:31 <shachaf> @ask elliott no :"(
01:14:31 <lambdabot> Consider it noted.
01:15:07 <elliott> @clear-messages
01:15:07 <lambdabot> Messages cleared.
01:15:16 <shachaf> @clessages
01:15:16 <lambdabot> You don't have any new messages.
01:15:50 <elliott> monqy: Did you ever read that one?
01:16:03 <monqy> @clear-messages
01:16:03 <lambdabot> Messages cleared.
01:16:12 <monqy> the blog thing?
01:16:20 <elliott> ye
01:16:21 <monqy> i read at least the first paragraph
01:16:27 <elliott> good job monqy
01:16:29 <monqy> but i wasnt in a reading mood
01:16:41 <elliott> did mspell get any furthre btw ..
01:16:43 <elliott> *further
01:16:48 <elliott> oerjan: btw op me
01:16:59 <monqy> ye
01:17:14 <shachaf> elliott: btw op me :'(
01:17:15 <elliott> monqy: how frtuher
01:17:26 <monqy> um
01:17:35 <monqy> i removed both kinds of special abilities!
01:18:06 <elliott> grats
01:18:16 -!- derdon has quit (Ping timeout: 246 seconds).
01:18:19 <elliott> I like the symmetry between product and sum types.
01:18:40 <shachaf> YOU MEAN PRODUCTS AND COPRODUCTS
01:18:58 <shachaf> elliott: Did you know all monads were covariant??!?!
01:19:05 <shachaf> "amazing"
01:19:06 <elliott> switch :: (a -> r, b -> r) -> (a | b) -> r; swotch :: (a -> r | b -> r) -> (a * b) -> r
01:19:09 <elliott> shachaf: yes
01:19:37 <shachaf> switch swotch
01:20:13 <shachaf> switch : (a -> r * b -> r) -> (a | b) -> r
01:20:32 <shachaf> switch : (r^a * r^b) -> (a + b) -> r
01:20:40 <shachaf> swotch : (r^a + r^b) -> (a * b) -> r
01:22:28 <shachaf> r^a * r^b = r^(a+b)
01:23:00 <shachaf> (a -> r) + (b -> r) = (a*b)^r
01:23:07 <shachaf> Um, r^(a*b)
01:23:09 <shachaf> What?
01:23:23 <elliott> What?
01:23:24 <shachaf> r^a + r^b = r^(a*b)?
01:23:27 <shachaf> That's nonsense.
01:23:39 <elliott> It's not =.
01:23:45 <elliott> a -> b isn't a = b.
01:23:56 -!- derdon has joined.
01:24:00 <shachaf> Oh, it's not nonsenes because r^a + r^b has a bit more information.
01:24:15 <shachaf> (A BIT get it)
01:24:20 <monqy> :')
01:24:29 <shachaf> s/not //
01:24:33 <shachaf> It *is* nonsense because ...
01:24:47 <shachaf> elliott: You know the way foldr's type should mirror unfoldr's?
01:24:57 <elliott> switch and swotch let you get all the information out, right?
01:25:05 <elliott> swotch (Left id), swotch (Right id) are fst and snd...
01:25:11 <elliott> So I guess so.
01:25:27 <shachaf> Well, it's not polymorphic.
01:25:33 <elliott> Huh?
01:25:43 <shachaf> Oh, no.
01:25:44 <elliott> shachaf: Anyway, if you read that post I linked you'd understand why the sum-product relation is even more cool!
01:25:53 <elliott> It's a continuation of that other post. Except it does sum types instead.
01:25:56 <shachaf> What I'm saying is that you can't ((a * b) -> r) -> (a -> r | b -> r)
01:26:04 <shachaf> It's a one-way thing.
01:26:20 <shachaf> Just like you can't (a -> b) -> Either (Not a) b. Or something.
01:26:34 <monqy> i guess i'll read the post.......................................
01:26:41 <shachaf> monqy: NO WAIT
01:26:47 <shachaf> monqy: THINK ABOUT WHAT YOU'RE DOING
01:27:01 <elliott> monqy: ur gr8
01:27:09 <shachaf> monqy: ur web
01:27:24 -!- augur has joined.
01:27:35 <elliott> shachaf: The post also shows you how you can do scrap-your-boilerplate-type things with the system elegantly!
01:27:40 <elliott> As in "without any ugly deriving (Data) stuff".
01:27:59 <shachaf> elliott: Logitext is "vnev more ocool!!"
01:28:07 <elliott> What?
01:28:23 <shachaf> http://logitext.mit.edu/main
01:28:26 <shachaf> "the future"
01:30:08 <elliott> This looks boring.
01:30:23 <shachaf> DID YOU PROVE ALL THE PROOFS
01:31:32 <elliott> no
01:32:00 <coppro> elliott: i am a terrible person
01:32:08 -!- oerjan has quit (Quit: Good night).
01:32:17 <coppro> I have a ... -> x that I want to turn into a ... -> Type x
01:32:26 <coppro> where ... can be any arity
01:32:30 <coppro> and clearly TH is the way to go
01:32:43 <elliott> it's ok, everyone does shit like that when they start out
01:32:57 <elliott> you realise why it's a bad idea later
01:33:23 <shachaf> Unless you're Oleg.
01:33:46 <elliott> oleg doesn't really do things like that
01:34:18 <elliott> kmc: should i make a perfect language
01:35:34 <coppro> elliott: I know why it's a bad idea now
01:35:38 <coppro> and it's not stopping me
01:36:28 <monqy> are you what they call a "bad person"
01:36:40 <shachaf> monqy: oh no
01:36:46 <shachaf> monqy: are you a "bad person" too
01:36:54 <shachaf> because "it takes one to know one"
01:36:59 <shachaf> "as they say"
01:37:01 <monqy> ye
01:37:05 -!- azaq23 has joined.
01:37:07 <elliott> coppro: people think they know why it's a bad idea to start with, too
01:37:13 <shachaf> does that make me "a bad person" !
01:37:18 <monqy> ye
01:37:39 <monqy> it takes one to know that it takes one to know one
01:37:41 <monqy> as they say
01:38:38 <monqy> elliott this is a good blog post
01:38:38 <coppro> elliott: well then you tell me why i am wrong
01:38:49 <elliott> coppro: but being old is so much easier
01:38:56 <elliott> monqy: i can't tell if you're being serious or not...........................
01:39:03 <monqy> im serious it's good !!
01:39:06 <elliott> yaey
01:39:07 <monqy> is that wrong of me.....
01:39:23 <elliott> nop
01:39:30 <elliott> people are sarcastic often and it is had to tell!!
01:39:40 -!- derdon has quit (Remote host closed the connection).
01:40:04 <shachaf> elliott: When you say foo.bar in Rust, can bar just be a regular function?
01:40:26 <shachaf> Or is it a "method of the class of foo" "as they say"
01:40:27 <elliott> coppro: but in summary (a) TH in general is bleh for many reasons (some theoretical, most practical) and self-preservation dictates to avoid it wherever possible; (b) you will run into pain whenever you end up writing higher-order functions of some kind with this method; (c) it does not really save you much at all blah blah
01:40:37 <elliott> shachaf: I don't think Rust has "classes" proper?
01:40:44 <shachaf> elliott: Oh.
01:40:48 * shachaf doesn't know Rust.
01:40:56 <shachaf> elliott: How does "for 5.times" work?
01:40:59 <elliott> shachaf: It has ADTs and traits (which are like OOP interfaces).
01:41:02 <coppro> elliott: yes, those are the reasons
01:41:06 <elliott> And you can implement traits for ADTs.
01:41:09 <coppro> i am choosing to ignore them because i am stupid
01:41:31 <elliott> coppro: It's OK, you'll do it the proper way when it slows down your compilation times 2x.
01:41:45 <elliott> shachaf: I think that's the implementation of a trait for the integer types.
01:42:00 <elliott> So 5.times is actually implementation_of_times_for_the_relevant_integer_type.times(5).
01:42:08 <shachaf> OK.
01:42:12 <shachaf> "but still"
01:42:48 <elliott> What do you mean but still?
01:44:29 <elliott> shachaf: I don't understand what your question is.
01:44:44 <shachaf> Noq uestion.
01:47:19 <elliott> shachaf: https://github.com/mozilla/rust/blob/master/src/libcore/iter.rs#L19, https://github.com/mozilla/rust/blob/master/src/libcore/int-template.rs#L91, https://github.com/mozilla/rust/blob/master/src/libcore/uint-template.rs#L83, which are then instantiated like this: https://github.com/mozilla/rust/blob/master/src/libcore/int-template/i64.rs.
01:47:36 <shachaf> elliott: I thought there was no question. :-(
01:47:58 <shachaf> Also, please mark your URLs in an easy-to-copy way.
01:48:04 <shachaf> Don't mix valid punctuation into them. :-(
01:52:46 <elliott> shachaf: Does that answer your non-question?
01:53:06 <elliott> (Also apparently traits are like typeclasses in some way.)
01:53:13 <elliott> (So I guess they're more powerful than Java interfaces.)
02:20:39 -!- DHeadshot has quit (Read error: Connection reset by peer).
02:20:44 -!- DH____ has joined.
02:37:16 -!- DH____ has quit (Read error: Connection reset by peer).
02:37:21 -!- DHeadshot has joined.
02:37:45 -!- kinoSi0 has quit (Read error: Connection reset by peer).
02:38:13 -!- kinoSi has joined.
02:48:32 <shachaf> cvttsd2si
02:48:35 <shachaf> What a great instruction name.
02:55:35 -!- azaq23 has quit (Quit: Leaving.).
03:00:05 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:00:28 -!- DHeadshot has joined.
03:38:44 <tswett> So, there's this library that's supposed to tell you the distance between a point you give it and the nearest point in the database.
03:39:01 <tswett> The thing is, the library breaks. You can only use it about ten times before it starts giving you numbers that are obviously wrong.
03:39:10 <shachaf> Trial period expired.
03:39:16 <tswett> Once, it gave a number that was too high by over a hundred orders of magnitude.
03:39:19 <shachaf> INSERT COIN
03:39:33 <shachaf> Anyway, that doesn't necessarily mean it's wrong.
03:39:53 <tswett> It was wrong by over a hundred orders of magnitude.
03:47:18 <kmc> a hundred orders of magnitude isn't cool
03:47:43 <kmc> you know what's cool? a hundred and three orders of magnitude
04:03:14 <kmc> https://www.google.com/search?q=goats+in+trees&tbm=isch
04:06:15 -!- DHeadshot has quit (Read error: Connection reset by peer).
04:18:38 -!- MoALTz has joined.
04:36:08 -!- heroux has quit (Ping timeout: 244 seconds).
04:41:30 -!- MoALTz has quit (Ping timeout: 264 seconds).
04:55:25 <zzo38> There is a open source FPGA, called ZUMA. However, no implementations exist, as far as I know.
04:56:04 <shachaf> I thought ZUMA was a game with marbles.
04:56:37 <kmc> http://www.computer.org/portal/web/csdl/doi/10.1109/FCCM.2012.25
04:56:51 <kmc> it's an FPGA implemented on another FPGA °_°
04:57:02 <kmc> "Previous attempts to map an FPGA architecture into a commercial FPGA have had an area penalty of 100x at best. Through careful architectural and implementation choices to exploit low-level elements of the host architecture, ZUMA reduces this penalty to as low as 40x."
05:03:02 -!- impomatic has quit (Ping timeout: 244 seconds).
05:04:09 <elliott> good
05:08:12 <kmc> progress
05:13:21 <elliott> hey kmc did mosh get any releases in the past ever
05:13:23 <elliott> maybe i should update my shit
05:13:53 <elliott> also does anyone know if that ghc version with type-level strings came out yet
05:13:54 <elliott> shachaf?
05:14:04 <shachaf> YAWG
05:14:18 <kmc> the latest mosh release is in the topic in #mosh
05:14:20 <kmc> and on mosh.mit.edu
05:14:39 <elliott> shachaf: Yawg?
05:14:43 <elliott> kmc: :(
05:14:46 <shachaf> My server is running an old version of mosh. :-(
05:14:49 <elliott> kmc: I need a personal social web 2.0 connection with my software, man!
05:14:51 <elliott> That means asking you.
05:14:52 <shachaf> So I can't file bug reports until I upgrade.
05:14:55 <shachaf> But upgrading is a hassle!
05:14:58 <shachaf> HLEP
05:15:11 <elliott> Also I don't even know what version I have, so ha.
05:15:35 <shachaf> $ mosh --version
05:15:38 <shachaf> 1.2.3
05:15:44 <shachaf> POINT 4
05:15:52 <elliott> I'm on 1.1.94d.
05:16:00 <elliott> I bet that's old.
05:16:16 <elliott> Apparently 1.2.2 is the latest release.
05:18:13 <elliott> shachaf: Is there a way I can tell g++ and/or clang++ that a macro I have is an assertion macro?
05:18:28 <shachaf> What should it do differently?
05:18:59 <elliott> shachaf: I don't know. Not complain about me assuming what I asserted later on?
05:19:23 <shachaf> Oh, be smart like that? Can it even do that?
05:19:32 <shachaf> Does it happen with #include <assert.h>'s assert()?
05:19:55 <elliott> shachaf: I think so?
05:20:03 <elliott> I want to be as fancy as assert.h.
05:20:14 <elliott> Alternatively, is there a way to hook into when an assert fails or something?
05:20:22 <elliott> I want my fancy stuff *and* the platform's fancy stuff. :(
05:21:09 <kmc> assert() raises SIGABRT doesn't it?
05:21:31 <kmc> it will still kill the process even if you handle SIGABRT
05:21:50 <shachaf> All the big C++ codebases I've used defined their own assert, but I've never noticed anything smart like "telling the compiler about your assumptions".
05:22:07 <shachaf> Some asserts raise SIGTRAP in debug mode. Or do other things.
05:22:34 <shachaf> Hmm, I wonder whether SIGTRAP has much of an advantage over SIGABRT.
05:22:35 <elliott> There's some inline asm in the current assert() implementation. :(
05:22:50 <shachaf> Is it asm("int3")?
05:22:56 <elliott> Snippet of the fun: http://sprunge.us/RQcf
05:23:05 <elliott> shachaf: Close enough: #define MyDebugBreak() _asm {int 3}
05:23:13 <shachaf> You're working with Win32 code?
05:23:23 <elliott> Oh, whoops. I actually removed IsDebuggerPresent95.
05:23:41 <elliott> BUT before I did,
05:23:47 <elliott> shachaf: (how do I see a file at a revision in git)
05:23:50 <elliott> (Without checking it out.)
05:23:57 <shachaf> git show?
05:23:57 <kmc> if you mark your custom abort function as attribute((noreturn)), and/or insert a __builtin_unreachable()
05:24:02 <kmc> then gcc can do clever things
05:24:19 <shachaf> I think unreachable is better than noreturn?
05:24:23 <elliott> [elliott@dinky source]$ git show 5e814759930bf282ba3b5741643bebe1587557f1 debug.cc
05:24:23 <elliott> [elliott@dinky source]$
05:24:24 <elliott> Help.
05:24:34 <kmc> git show commitish:filename
05:24:46 <elliott> thx
05:24:50 <kmc> yw
05:25:21 <elliott> shachaf: http://sprunge.us/FaBg
05:25:28 <elliott> kmc may also click that link. Everyone else is forbidden.
05:25:37 <shachaf> elliott: thx
05:25:42 <kmc> that's some code
05:25:43 <shachaf> on kmcs bhlf
05:26:02 <elliott> By the way, this isn't some 90s nonsense, this code is from ~2005-ish.
05:26:18 <elliott> (Okay, maybe this bit is older. But it's newer than, like, 2000.)
05:26:25 <kmc> what is it
05:26:28 <shachaf> Crawl?
05:26:56 <elliott> It's monqy.
05:27:16 <shachaf> monqy: ruopensouce?!!
05:28:00 <elliott> monqy's codebase has some great comments.
05:28:03 <kmc> monqypatching
05:28:04 <elliott> // XXX: must fix species abils to not use duration 15
05:28:04 <elliott> // -- ummm ... who wrote this? {dlb}
05:28:23 <elliott> The unforgivable faux pas of not signing your todo comments.
05:28:35 <shachaf> elliott: has this been in git since 2005??
05:28:58 <elliott> If by "2005" you mean "2011ish", then yes.
05:29:11 <shachaf> 2011 is the year of git on the desktop
05:30:37 <elliott> kmc: Did you know Windows still exists? :(
05:30:53 <shachaf> http://gcc.gnu.org/onlinedocs/gcc-4.7.0/gcc/Function-Attributes.html
05:30:58 <shachaf> gcc has a lot of fancy attributes
05:32:18 <elliott> shachaf: Do you want to hear a joke? I know you love jokes.
05:33:19 <shachaf> elliott: Oh boy, a joke!
05:33:50 <elliott> shachaf: The joke is const correctness.
05:35:20 <elliott> shachaf: Do you want to hear another joke?
05:35:50 <elliott> Time's up.
05:35:54 <elliott> monqy: What about you?
05:36:11 <monqy> ye
05:36:14 <elliott> monqy: Tough.
05:36:35 <monqy> probably for the best
05:36:40 <monqy> im eating so if i laughed bad things might happen
05:36:46 -!- williannys has joined.
05:36:52 <monqy> like that
05:37:12 <elliott> `welcome williannys
05:37:15 <HackEgo> williannys: 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.)
05:37:21 <elliott> Wait, are you the sneeze person?
05:38:44 <kmc> going to sleep, 'night all
05:38:53 <elliott> kmc sleeps?
05:39:11 <kmc> yes i sleep quite a lot
05:40:10 <elliott> Weird.
05:40:53 -!- williannys has left.
05:45:58 <Sgeo> Ok, so I heard JVM startup time is slow, but this is insane
06:19:20 <zzo38> Disadvantages of existing FPGA architectures includes: * Proprietary nature of hardware. * Requires you to use their software, specific to certain operating systems and certain computers. * Vendor locked. * No dynamic reconfiguration (some have this feature, but again, you need to use their software so you cannot do it with your own software).
06:19:40 <zzo38> Therefore you cannot use it to make your own computer system since it can only be used with the computer systems they say it can be used!
06:20:08 <zzo38> Another disadvantage: * They don't sell them for a long enough time. After they sell it, they will be obsolete and you have to buy another one.
06:39:07 <shachaf> elliott: Yes!
06:39:23 <shachaf> elliott: What's the another joke?
06:39:41 <shachaf> elliott: He has, like, a job and stuff now, man.
06:39:44 <shachaf> He sold out on us!
06:40:06 <shachaf> He's probably going to sleep early because of that!
06:44:32 -!- zzo38 has quit (Remote host closed the connection).
06:46:34 -!- nys has quit (Quit: quit).
06:47:35 <shachaf> `? zzo38
06:47:40 <HackEgo> zzo38 is not actually the next version of fungot, much as it may seem.
06:47:46 <shachaf> `? fungot
06:47:46 <fungot> shachaf: he looks gay.
06:47:49 <HackEgo> fungot cannot be stopped by that sword alone.
06:47:52 <shachaf> fungot: thx
06:47:52 <fungot> shachaf: what the hell would anyone srvive that the computer, it was dat. oh and apologies in advance for the most beautiful girl i've ever heard of nick pitera on this
06:48:30 <fizzie> ^style
06:48:30 <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*
06:48:34 <fizzie> Ah.
06:49:07 <fizzie> In retrospect, "of course".
06:49:26 <shachaf> ^style darwin
06:49:26 <fungot> Selected style: darwin (Books by Charles Darwin -- you know, that evilution guy)
06:49:31 <shachaf> fungot
06:49:33 <fungot> shachaf: :( i was too glad to accept :) this, in fact, take them away from any spot which itches: monkeys search each other for aid; and as they flit from tree to tree, and what i lay much stress on it, and really great, if we take/ fairest standard :) comparison because, :)/ corals just mentioned, and :)/ other photographs given by dr. o. regnelli,/ illegitimate unions :) dimorphic and trimorphic plants, as described by himsel
06:49:49 <shachaf> Charles Darwin sure used a lot of smileys.
06:50:00 <fizzie> He was just such a fun guy.
06:50:24 <shachaf> fungot: are you a fun guy???????
06:50:25 <fungot> shachaf: a species may depart from/ type :) both its parents were common peacocks. lastly, i have had some strange proceedings on board/ :( beagle" anchored a few miles, i could see this argument answered.
07:08:43 <elliott> shachaf: it seems like noreturn is the same as normal function call + unreachable
07:08:55 <elliott> http://gcc.gnu.org/onlinedocs/gcc/Other-Builtins.html#index-g_t_005f_005fbuiltin_005funreachable-3286
07:09:12 <shachaf> elliott: Oh.
07:09:17 <shachaf> elliott: Is exit() noreturn?
07:09:43 <shachaf> If I write if (x == 0) exit(1); will the compiler assume that x is != 0 or something?
07:09:50 <shachaf> I think it ought to be allowed to assume that for unreachable.
07:11:41 <elliott> I think exit is noreturn, yes.
07:11:41 <fizzie> C11 standard prototype for exit is "_Noreturn void exit(int status);"
07:11:49 <elliott> At least in glibc.
07:12:13 <elliott> shachaf: I suspect GHC might insert a __builtin_unreachable() after every call to a noreturn function, implicitly.
07:12:42 <shachaf> That's very clever of GHC.
07:12:46 <elliott> gcc.
07:13:00 <shachaf> Anyway, that makes sense.
07:13:17 <shachaf> Oh, you mean the noreturn comes *after* the return from the function call.
07:13:30 <shachaf> Makes sense.
07:13:56 <fizzie> The unreachable, you mean?
07:14:03 <shachaf> Yes.
07:16:41 <fizzie> http://sprunge.us/hXUh -- assumptions: it has those.
07:17:25 <elliott> <shachaf> Oh, you mean the noreturn comes *after* the return from the function call.
07:17:26 <elliott> Huh?
07:17:33 <shachaf> 00:13 <fizzie> The unreachable, you mean?
07:17:34 <shachaf> 00:14 <shachaf> Yes.
07:18:31 -!- nooga has joined.
07:19:30 <fizzie> There's a GCC option '-Wsuggest-attribute=noreturn' that will make it add warnings that suggest attribute ((noreturn)) for functions that it thinks don't seem to be returning.
07:19:41 <fizzie> (It can do the same for pure, const, format.)
07:21:07 <fizzie> http://sprunge.us/SZXT like that.
07:21:37 <shachaf> That's not a default?
07:21:44 <shachaf> How do you get all the good warnings?
07:22:03 <fizzie> It's not a default, and it's not enabled by -Wall or -Wextra either.
07:22:17 <fizzie> Though -Wextra does cause a "comparison is always true due to limited range of data type" warning on it.
07:22:47 -!- heroux has joined.
07:23:33 -!- impomatic has joined.
07:23:55 <fizzie> The -Wsuggest-attribute=format can at least have false positives; don't know about the others.
07:24:56 <elliott> shachaf: There's a clang option to turn on every single warning.
07:24:58 <elliott> It's an experience.
07:25:12 <elliott> @time
07:25:13 <lambdabot> Local time for elliott is Tue Aug 28 08:26:58
07:25:15 <elliott> shachaf: tell me to go to sleep
07:25:28 <fizzie> Is it called "-Wfucking-all-and-i-mean-it"?
07:25:50 <shachaf> I hate IRC faux pas. :-(
07:26:08 <elliott> shachaf: fauxiliary pacification
07:26:11 <elliott> -fauxiliary-pacification
07:27:26 <pikhq> elliott: You should write some Forth.
07:30:28 <elliott> -forthxiliary-pacification
07:30:51 <elliott> shachaf: -Weverything. Try it on your nearest codebase.
07:30:54 <elliott> It's depressing :(
07:31:22 <shachaf> elliott: I know what it is. I have.
07:31:35 <elliott> )-:
07:31:40 <elliott> :-( )-:
07:31:45 <elliott> )-: :-(
07:31:47 <elliott> )-:-(
07:31:52 <elliott> :-()-:
07:32:11 <olsner> nice, I'll have to try that
07:32:14 <elliott> . .
07:32:15 <elliott> |
07:32:16 <elliott> (
07:32:22 <elliott> . .
07:32:22 <elliott> |
07:32:26 <elliott> /-\
07:32:36 -!- elliott has left (": - )").
07:32:40 <shachaf> · .
07:32:41 <shachaf> |
07:32:45 <shachaf> \_/
07:32:49 <olsner> I think most of "my" code isn't even -Wall clean (in gcc), so it might be ... interesting
07:34:53 <fizzie> On the other hand, you just might to find a bug not caught by your thorough set of unit tests.
07:35:27 <olsner> tests? what tests?
07:35:40 <fizzie> Unit ones.
07:35:52 <Deewiant> Re. the clang flag, it's called -Weverything
07:36:13 <fizzie> Deewiant: UR LATE
07:36:16 <olsner> <elliott> shachaf: -Weverything. Try it on your nearest codebase.
07:36:23 <shachaf> In case anyone was wondering what the clang flag was: It's -Weverything
07:36:54 <fizzie> -Weevil warns of extreme evil.
07:36:59 <Deewiant> Crap, I missed that line
07:37:04 <olsner> shachaf: but what's the flag called? elliott left
07:37:19 <Deewiant> I just saw the -fauxorth nonsense and that got mixed in it all
07:37:27 <Deewiant> Sorry for the noise
07:40:39 -!- asiekierka has joined.
07:41:59 -!- mig22 has joined.
07:42:41 <impomatic> Rebol to be killed off? http://www.rebol.com/article/0510.html :-(
07:48:45 <Sgeo> I think I installed REBOL once
07:49:48 <Sgeo> Maybe REBOL will just go open source?
07:49:55 <Sgeo> That wouldn't be a bad fate, would it?
07:51:39 -!- AnotherTest has joined.
07:51:52 <AnotherTest> Hello
07:53:15 <shachaf> `welcome ANOTHER TEST
07:53:18 <HackEgo> ANOTHER: TEST: 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.)
07:53:36 <Sgeo> http://re-bol.com/rebol.html#section-1
07:54:05 <Sgeo> Uh, I... it's a thing also usable for non-programming tasks?
07:57:00 -!- AnotherTest has quit (Quit: Leaving.).
07:57:26 <fizzie> `WELCOME does_it_uppercase_the_nick_too
07:57:30 <HackEgo> DOES_IT_UPPERCASE_THE_NICK_TOO: 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.)
07:57:37 <fizzie> Apparently the answer is YES.
07:58:00 -!- AnotherTest has joined.
07:59:37 <AnotherTest> since when am I getting greeted :D?
08:01:24 <lifthrasiir> `WELCOME will_it_correctly_uppercase_á
08:01:28 <HackEgo> WILL_IT_CORRECTLY_UPPERCASE_á: 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.)
08:01:34 <lifthrasiir> Answer: no.
08:04:41 <coppro> that's actually not that bad of a greeting
08:04:51 <fizzie> `cat bin/WELCOME
08:04:54 <HackEgo> ​#!/bin/sh \ welcome "$@" | perl -ne 'print uc($_)'
08:05:04 <fizzie> `run welcome blärg | perl -ne 'BEGIN { binmode STDIN, ":utf8"; } print uc($_)'
08:05:08 <HackEgo> BLRG: 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.)
08:05:46 <fizzie> That would, though I guess it'd really need an encoding-fallback kind of thing.
08:06:18 <Deewiant> `run welcome blärg | perl -CS -pe '$_=uc($_)'
08:06:21 <HackEgo> BLÄRG: 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.)
08:06:44 <shachaf> `run runghc
08:06:46 <fizzie> Oh, there's a flag.
08:07:01 <shachaf> `run ghc -e 'print 1'
08:07:05 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
08:07:07 <Deewiant> `run welcome blärg | perl -CSL -pe '$_=uc($_)'
08:07:11 <shachaf> @where zalgo
08:07:11 <lambdabot> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
08:07:11 <HackEgo> BLäRG: 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.)
08:07:16 <HackEgo> No output.
08:07:27 <shachaf> `run echo "import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar" > zalgo.hs
08:07:30 <HackEgo> No output.
08:07:33 <fizzie> Deewiant: No UTF-8 locale, I guess.
08:07:39 <shachaf> `run echo hello | runhc zalgo.hs
08:07:42 <HackEgo> bash: runhc: command not found
08:07:46 <shachaf> `run echo hello | runghc zalgo.hs
08:07:50 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
08:07:51 <Deewiant> fizzie: Evidently not. That'd be the right "fallback" method, I guess, though.
08:07:53 <shachaf> WHAT!
08:08:16 <shachaf> Who runs HackEgo?
08:08:21 <shachaf> Is it you, Gregor?
08:08:25 <fizzie> It is.
08:08:26 <shachaf> Gregor: ☝
08:18:14 -!- AnotherTest has quit (Quit: Leaving.).
08:18:24 -!- AnotherTest has joined.
08:21:42 <Sgeo> "REBOL is a mix of both closed and open source. The kernel of REBOL, which must be kept extremely consistent between hardware platforms and operating systems, is closed. This keeps platform specific variations to a minimum, allowing your programs to run on Windows, Linux, Unix, and other systems without modification. Our consistent, controlled design process also keeps REBOL very small - its core is less than 250KB."
08:21:43 <Sgeo> WTF?
08:22:31 <Sgeo> I guess they're saying that they're afraid if people fork it, it will be more annoying to write REBOL code because some must run on the forks?
08:23:12 -!- AnotherTest has quit (Ping timeout: 268 seconds).
08:24:27 -!- mig22 has quit (Quit: mig22).
08:24:49 -!- ais523 has quit.
08:30:24 <Sgeo> I wonder how well a REBOLNomic would work
08:33:36 -!- lahwran has quit (Ping timeout: 276 seconds).
08:35:01 -!- soundnfury has quit (Quit: recompiling).
08:35:18 -!- soundnfury has joined.
08:41:49 <Sgeo> Ok, I like REBOL's approach to optional/keyword arguments
08:41:55 <Sgeo> Well, maybe
08:44:52 -!- lahwran- has joined.
08:50:50 <Sgeo> This is a test of writing to the clipboard from REBOL
08:55:57 <Sgeo> I am giving this clipboard stuff more credit than it deserves
08:59:53 -!- DHeadshot has joined.
09:07:22 -!- kinoSi0 has joined.
09:12:02 -!- monqy_ has joined.
09:16:47 -!- DHeadshot has quit (*.net *.split).
09:16:48 -!- kinoSi has quit (*.net *.split).
09:16:48 -!- Nisstyre_ has quit (*.net *.split).
09:16:48 -!- monqy has quit (*.net *.split).
09:17:06 -!- monqy_ has changed nick to monqy.
09:17:19 -!- AnotherTest has joined.
09:24:15 -!- AnotherTest has left.
09:25:56 -!- DHeadshot has joined.
09:26:06 -!- Nisstyre_ has joined.
09:48:24 <Sgeo> I decided to try print layout [size 400x300]
09:48:40 <Sgeo> That is a lot of what I assume is code in the view DSL scrolling by on my screen
10:21:13 -!- derdon has joined.
10:49:08 -!- kinoSi has joined.
10:51:48 -!- kinoSi0 has quit (Ping timeout: 245 seconds).
10:54:05 -!- copumpkin has quit (Ping timeout: 252 seconds).
10:56:33 -!- copumpkin has joined.
11:03:08 -!- DHeadshot has quit (Read error: Connection reset by peer).
11:03:14 -!- DH____ has joined.
11:06:00 -!- soundnfury has quit (Quit: quIRC).
11:14:07 -!- atriq has joined.
11:14:23 <atriq> > sum.map(1/)$scanl1(*)[1..18]
11:14:25 <lambdabot> 1.7182818284590455
11:14:29 <atriq> > e
11:14:30 <lambdabot> e
11:14:32 <atriq> :(
11:14:45 <atriq> > e :: Double
11:14:46 <lambdabot> Couldn't match expected type `GHC.Types.Double'
11:14:46 <lambdabot> against inferred ty...
11:14:50 <atriq> :t e
11:14:51 <lambdabot> Expr
11:20:27 <Deewiant> > exp 1 :: Double
11:20:28 <lambdabot> 2.718281828459045
11:20:59 <atriq> > sum.map(1/)$scanl1(*)[0..18]
11:21:01 <lambdabot> Infinity
11:21:09 <atriq> That's why that doesn't work
11:21:13 <atriq> > sum.map(1/)$scanl1(*)[1..18]
11:21:15 <lambdabot> 1.7182818284590455
11:21:18 <atriq> > sum.map(1/)$scanl1(*)[1..18]+1
11:21:19 <lambdabot> No instance for (GHC.Num.Num [a])
11:21:19 <lambdabot> arising from a use of `e_1111181' at <...
11:21:27 <atriq> > 1+$sum.map(1/)$scanl1(*)[1..18]
11:21:28 <lambdabot> Not in scope: `+$'
11:21:36 <atriq> > 1 + (sum.map(1/)$scanl1(*)[1..18])
11:21:37 <lambdabot> 2.7182818284590455
11:21:42 <atriq> > exp 1
11:21:43 <lambdabot> 2.718281828459045
11:21:55 <atriq> Slightly more precise!
11:22:49 <fizzie> The last digit is worng. :/
11:22:53 <fizzie> 2.71828182845904523536028747135266249775724709369995... it goes.
11:23:00 <atriq> Hmm
11:23:08 <atriq> > 1 + (sum.map(1/)$scanl1(*)[1..1000])
11:23:10 <lambdabot> 2.7182818284590455
11:24:32 <fizzie> 16 decimal digits is the rule-of-thumb accuracy for doubles, so that's all you can ask, I suppose.
11:24:55 <fizzie> But I'd kind-of maybe expect "exp 1" to be the closest possible double to e; I wonder if it is.
11:25:19 -!- MoALTz has joined.
11:25:38 <fizzie> > 1 + (sum.map((1 :: CReal)/)$scanl1(*)[1..20])
11:25:40 <lambdabot> 2.7182818284590452353397844906664158861464
11:26:19 <fizzie> Numberwise, that seems to be correct up to 2.7182818284590452353.
11:26:27 <atriq> > 1 + (sum.map(1::CReal/)$scanl1(*)[1..100])
11:26:28 <lambdabot> <no location info>: parse error on input `)'
11:26:39 <atriq> > 1 + (sum.map((1 :: CReal)/)$scanl1(*)[1..100])
11:26:42 <lambdabot> mueval-core: Time limit exceeded
11:26:46 <atriq> > 1 + (sum.map((1 :: CReal)/)$scanl1(*)[1..50])
11:26:49 <lambdabot> 2.7182818284590452353602874713526624977572
11:27:29 <atriq> Where can I get CReal from in GHCi?
11:29:00 <fizzie> Wikipedia says Euler himself only computed it up to 23 decimal digits.
11:29:59 <fizzie> Hayoo says it's in Data.Number.CReal of 'numbers'.
11:30:01 -!- ogrom has joined.
11:30:10 <atriq> Thanks
11:30:29 <fizzie> @list
11:30:30 <lambdabot> http://code.haskell.org/lambdabot/COMMANDS
11:30:53 <fizzie> It has Hoogle, but I suppose it hasn't got a Hayoo.
11:31:37 <atriq> > 1+sum(map(1/)$scanl1(*)[1..34])::CReal
11:31:38 <lambdabot> 2.7182818284590452353602874713526624977572
11:36:35 <atriq> This method approaches e a lot faster than (1 + 1/n) ^ n, it seems
11:37:00 <atriq> > (1.001 ^ 1000) :: CReal
11:37:01 <lambdabot> 2.7169239322358924573830881219475771889643
11:37:08 <atriq> > (1.0001 ^ 10000) :: CReal
11:37:10 <lambdabot> 2.7181459268252248640376646749131465361138
11:37:16 <atriq> > (1.00001 ^ 100000) :: CReal
11:37:20 <lambdabot> mueval-core: Time limit exceeded
11:47:23 <fizzie> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 10 $ 2 : ([2,4..] >>= (1:).(:[1]))
11:47:25 <lambdabot> 2.7182817182817183
11:47:46 <fizzie> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 50 $ 2 : ([2,4..] >>= (1:).(:[1]))
11:47:48 <lambdabot> 2.7182818284590455
11:48:00 <fizzie> There's that, too.
11:49:07 <fizzie> It's the 2+1/(1+1/(2+1/(1+1/(1+1/(4+1/(1+...)))))) aka [2; 1,2,1, 1,4,1, 1,6,1, ...] expansion.
11:51:30 -!- azaq23 has joined.
11:51:31 <atriq> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 50 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:51:33 <lambdabot> 2.7182818284590452353602874713526624977572
11:51:42 <atriq> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 3 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:51:44 <lambdabot> 2.75
11:51:48 <atriq> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 34 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:51:50 <lambdabot> 2.7182818284590452353602874713525970360921
11:51:56 <atriq> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 36 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:51:58 <lambdabot> 2.7182818284590452353602874713526612384938
11:52:04 <atriq> > let scf [] = 1; scf (a:b) = a + 1/(scf b) in scf . take 40 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:52:06 <lambdabot> 2.7182818284590452353602874713526624977495
11:52:29 <fizzie> The terminating condition of scf might be a bit worng, though, I think optimally it should end up in just ...+1/t instead of the current ...+1/(t+1).
11:59:05 <fizzie> > let scf (a:[]) = a; scf (a:b) = a + 1/(scf b) in scf . take 40 $ 2 : ([2,4..] >>= (1:).(:[1])) :: CReal
11:59:07 <lambdabot> 2.71828182845904523536028747135266249819
12:12:05 -!- atriq has quit (Remote host closed the connection).
12:14:17 -!- ogrom has quit (Quit: begone).
12:17:53 -!- lahwran- has changed nick to lahwran.
12:17:54 -!- lahwran has quit (Changing host).
12:17:54 -!- lahwran has joined.
12:26:47 -!- lahwran has changed nick to lahwran-.
12:26:54 -!- lahwran- has changed nick to lahwran_.
12:26:58 -!- lahwran_ has changed nick to lahwran.
12:51:41 -!- t3cht| has joined.
12:57:52 -!- t3cht|_ has joined.
12:57:59 -!- t3cht|_ has quit (Client Quit).
13:01:23 -!- t3cht| has quit (Ping timeout: 245 seconds).
13:05:31 -!- boily has quit (Quit: Poulet!).
13:05:36 -!- cuttlefish has quit (Remote host closed the connection).
13:09:36 -!- cuttlefish has joined.
13:10:27 -!- nortti has joined.
13:10:48 -!- boily has joined.
13:37:10 -!- monqy has quit (Quit: hello).
13:38:56 -!- Arc_Koen has joined.
13:39:00 -!- ogrom has joined.
13:40:41 -!- augur has quit (Remote host closed the connection).
14:19:54 -!- soundnfury has joined.
14:26:55 -!- augur has joined.
14:32:24 -!- pikhq has quit (Ping timeout: 244 seconds).
14:32:25 -!- pikhq_ has joined.
14:37:10 -!- nortti_ has joined.
14:48:51 -!- nortti_ has quit (Remote host closed the connection).
14:49:51 -!- nortti_ has joined.
14:51:43 -!- nortti_ has quit (Remote host closed the connection).
15:06:31 -!- Yonkie has quit.
15:12:00 -!- nortti_ has joined.
15:13:11 -!- nortti_ has quit (Client Quit).
15:16:21 -!- nortti_ has joined.
15:18:37 -!- atriq has joined.
16:03:22 -!- zzo38 has joined.
16:15:26 -!- zzo38 has quit (Remote host closed the connection).
16:31:21 -!- Vorpal has joined.
16:54:25 -!- atriq has quit (Ping timeout: 260 seconds).
17:03:01 <impomatic> Hmmm... the esolang wiki doesn't like inline references.
17:10:17 -!- atriq has joined.
17:25:02 -!- ogrom has quit (Read error: Connection reset by peer).
17:41:40 -!- ais523 has joined.
17:48:41 -!- azaq23 has quit (Ping timeout: 272 seconds).
17:50:35 -!- nortti_ has quit (Ping timeout: 272 seconds).
17:55:51 -!- nortti_ has joined.
18:02:25 -!- Phantom_Hoover has joined.
18:03:57 -!- zzo38 has joined.
18:04:49 <zzo38> If ZUMA FPGA was made commercial, I would probably buy it; it eliminates the advantage of existing commercial FPGAs.
18:08:04 <zzo38> I wonder how efficient would be computer using LFSR based instruction pointer with reconfigurable taps?
18:22:15 -!- DH____ has quit (Ping timeout: 272 seconds).
18:34:55 -!- sirdancealot has quit (Read error: Connection reset by peer).
18:38:10 <kmc> that is a true mad genius idea
18:40:07 <zzo38> I have various other ideas too in the design of a computer microprocessor.
18:51:12 -!- sirdancealot has joined.
19:08:36 -!- sivoais has quit (Ping timeout: 248 seconds).
19:24:44 -!- oerjan has joined.
19:37:50 -!- Eladith has quit (Ping timeout: 268 seconds).
19:38:28 -!- nortti- has joined.
19:51:40 <oerjan> <elliott> shachaf: fauxiliary pacification
19:51:47 <oerjan> fauxiliary is a good word
19:55:48 -!- asiekierka has quit (Ping timeout: 244 seconds).
19:59:17 -!- sivoais has joined.
20:07:07 <fizzie> Oh, noerjan.
20:10:07 <Arc_Koen> don't we say "fauxiliarification" nowadays?
20:11:39 <oerjan> nah, too easy to confuse with floccinaucinihilipilification
20:12:14 <Arc_Koen> so many words are easy to confuse with floccinaucinihilipilification
20:12:47 <oerjan> you'd think
20:13:30 <Arc_Koen> so what exactly does it mean? flow control incinerated and annihilated in a pile of amplifications?
20:14:53 <Arc_Koen> or am I confusing it with floccinerannihilipilification
20:15:48 <Arc_Koen> (I'm glad; people used to make acronyms all the time and I couldn't figure them out... everything is so simple now)
20:16:09 <oerjan> "The act or habit of describing or regarding something as unimportant, of having no value or being worthless."
20:17:38 -!- lifthrasiir has quit (Ping timeout: 245 seconds).
20:18:17 <Arc_Koen> wait
20:18:28 <Arc_Koen> did you just make up an entry in the wiktionnaire?
20:18:47 <Arc_Koen> in ten languages
20:18:52 -!- pikhq has joined.
20:19:31 <oerjan> i work fast.
20:19:37 <oerjan> also with time travel.
20:19:45 -!- lifthrasiir has joined.
20:19:49 <Arc_Koen> ah, right
20:20:57 <Arc_Koen> (as long as you don't forget your jelly doughnuts)
20:21:41 -!- pikhq_ has quit (Ping timeout: 252 seconds).
20:22:04 <atriq> Did that guy who was implementing Fueue in OCaml get anywhere?
20:23:01 <Arc_Koen> that's me
20:23:20 <Arc_Koen> well, since the Queue module was not good enough, I switched to C
20:23:57 <Arc_Koen> actually I try to continue with the ocaml version, accepting the sacrifice of "not checking if the operation can be performed before trying to perform it"
20:24:04 <oerjan> you'd probably want a deque
20:24:13 <Arc_Koen> (which would not match the specifications from the wiki, but whatever)
20:24:31 <Arc_Koen> deque, is that already implemented?
20:24:42 <oerjan> in _some_ languages it is...
20:25:03 * oerjan knows not regarding ocaml
20:25:08 <Arc_Koen> I'm gonna check again but I don't think I found it in ocaml's standard library
20:25:17 -!- copumpkin has changed nick to stickle.
20:25:41 <Arc_Koen> so of course I could have made my own structure but in that case I thought I'd rather make it in C
20:26:23 <atriq> :)
20:26:41 <atriq> You now know more about Fueue than the language's creator
20:26:56 <Arc_Koen> that's scary
20:27:06 <atriq> That's me
20:27:16 <Arc_Koen> the wiki said something about a certain "Taneb"
20:27:24 -!- atriq has changed nick to Taneb.
20:27:32 <Taneb> I'm Taneb
20:27:47 <Arc_Koen> ooooh
20:27:48 <Taneb> I'm also Ngevd
20:28:02 <Arc_Koen> you're so many people!
20:28:11 <Taneb> No, only 4.
20:28:27 -!- stickle has changed nick to copumpkin.
20:28:30 <Arc_Koen> I heard you were also Superman, and an elf
20:28:47 <oerjan> but is he elvis?
20:28:47 <Taneb> Only one of those things is actually true!
20:29:03 <Arc_Koen> anyway yeah the problem was that the wiki page said "it's a queue-based language, and everything happens in the queue"
20:29:25 <Arc_Koen> so I started making a program in ocaml with the Queue module
20:29:31 <Arc_Koen> (or whatever a module is called in english)
20:29:52 <Taneb> You really need a deque, I'm afraid
20:29:56 <oerjan> it's like ocaml isn't even trying to be functional with that module
20:29:59 <Taneb> Or an immutable queue
20:30:11 <oerjan> see: haskell, Data.Sequence
20:30:35 <Arc_Koen> and then the wikipage told me "if you pop a function, you must first check if the arguments are in the queue, and then perform the operation; if they're not, send the function back to the queue
20:30:51 <Taneb> It's...
20:30:56 <Taneb> It's not the best designed language
20:31:09 <Arc_Koen> I found it quite interesting
20:31:34 <Taneb> :)
20:31:38 <Arc_Koen> most languages are imperative and many esolangs use stacks
20:31:45 <Arc_Koen> yours is a functional queue
20:31:53 <oerjan> Arc_Koen: i'm wondering _how_ efficient that transfer function is, if it's really constant time you might be able to use it to get around the lack of peeking
20:32:01 <oerjan> (it says it is)
20:32:09 <Arc_Koen> what's the transfer function?
20:32:17 <olsner> oerjan: does "stackars" mean the same in norwegian?
20:32:22 <oerjan> http://caml.inria.fr/pub/docs/manual-ocaml/libref/Queue.html last one
20:32:41 <oerjan> olsner: stakkars is a word, presumably means the same
20:32:58 <Arc_Koen> transfer q1 q2 adds all of q1’s elements at the end of the queue q2, then clears q1. It is equivalent to the sequence iter (fun x -> add x q2) q1; clear q1, but runs in constant time.
20:33:00 <olsner> i.e. stackars språk = language of stacks = poor language?
20:33:02 <oerjan> "poor" in a non-monetary sense
20:33:21 <oerjan> olsner: oh, that wouldn't be used
20:33:35 <Arc_Koen> oh
20:33:37 <Arc_Koen> what
20:33:40 <Arc_Koen> whao*
20:33:57 <Arc_Koen> ok, so the transfer function is kind of magical
20:34:07 <olsner> oerjan: probably wouldn't ever be used for language of stacks in swedish either, except if you're trying to make a pun
20:34:35 <olsner> vilka är det mest synd om i skogen? myrstackarna!
20:34:35 <oerjan> olsner: the referent of "stakkars" really needs to be something capable of suffering :P
20:35:20 <Arc_Koen> it's like my eyes stopped after the fold function. or maybe "transfer" sound too much different than what I needed
20:35:53 <oerjan> hm actually i could imagine it being used about something else in jest
20:36:02 <oerjan> like food
20:36:43 <Arc_Koen> Taneb: yeah, so thanks to oerjan I could continue the ocaml program
20:36:57 <Arc_Koen> though I've started the C one now, and kind of want to finish it first
20:36:58 <oerjan> Arc_Koen: i suspect it's not _really_ constant time if you do it repeatedly for concatenation
20:37:14 <Arc_Koen> I don't need to do it repeatedly, do I?
20:37:49 <Arc_Koen> they say the result is *the same* as the iter/push method, but I guess the reason they included it and why it's constant time is that it actually uses the way Queue is defined
20:37:51 <oerjan> well you might need to do it many times
20:37:54 <Arc_Koen> ie as some kind of chained list
20:38:00 <oerjan> oh right
20:38:21 <Arc_Koen> well basically it allows me to push_as_if_it_were_a_stack
20:38:22 <oerjan> so the clearing is essential because it uses that structure
20:38:25 <zzo38> Another idea for computer design is a harvard architecture but with the ability to swap the program memory with the data memory.
20:38:47 <Arc_Koen> except it pushes it in a new queue
20:39:03 <Arc_Koen> and since I'm lazy I made the queue a global variable
20:39:33 <Arc_Koen> so I'd need to make my interpreter fully-functional by making the queue an argument of the processing function
20:39:51 -!- copumpkin has changed nick to orifice.
20:40:41 <fizzie> Arc_Koen: But if the transfer function is really constant-time, you can just transfer the new queue into the (cleared) global queue.
20:40:44 <Arc_Koen> Taneb: when I'm finished do you have some example Fueue programs to test it on?
20:40:58 <Arc_Koen> good point
20:42:41 <oerjan> a few fueue programs
20:42:53 <Arc_Koen> nice
20:43:01 <Arc_Koen> which we could porte-manteau
20:43:16 <Arc_Koen> "a fueueue programs"
20:43:43 -!- orifice has changed nick to copumpkin.
20:43:44 <oerjan> i think yueue are taking it too far
20:45:42 <oerjan> where are the orifices of a pumpkin anyhow
20:46:53 <zzo38> There can be registers: * program address register * program value register * primary data memory address register * primary data memory value register * secondary data memory address register * secondary data memory value register * write enable register * memory switching register * arithmetic register * accumulator * stack pointer * LFSR tap register
20:46:57 <Taneb> Arc_Koen, no I don't, I'm afraid
20:46:59 <fizzie> oerjan: Wherever the knife goes, I suppose.
20:47:01 <Taneb> They're pretty hard to write
20:47:16 <Arc_Koen> well a hello world program would be pretty easy
20:47:27 <Arc_Koen> oh yeah I had a question though
20:47:30 <olsner> oerjan: maybe a copumpkin is made out of the orifices of a pumpkin
20:47:50 <Arc_Koen> "if the top element is a number, prints the character of matching unicode value"
20:47:56 <olsner> not sure which implications that has for the copumpkin
20:48:06 <Arc_Koen> do I really need to do that?
20:48:10 <Arc_Koen> I mean, unicode
20:48:17 <Taneb> Character set of your choice
20:48:23 <Taneb> > chr 100
20:48:24 <lambdabot> 'd'
20:49:06 <Arc_Koen> I mean, I understand ascii
20:49:40 <oerjan> göôd
20:49:45 <Arc_Koen> and from that I figured "then computers evolved and became more powerful, but you don't need to know how the heck they can display japanese and regular a-z at the same time"
20:49:54 <Taneb> > chr 1506
20:49:55 <lambdabot> '\1506'
20:49:57 <Taneb> Hmm
20:50:03 <Taneb> ascii should be okay?
20:50:13 <fizzie> I have a vague recollection that OCaml wasn't exactly Unicode-friendly either.
20:50:18 <oerjan> @read "\1506"
20:50:18 <lambdabot>
20:50:46 <Arc_Koen> well to print the ascii in ocaml I would just do "print_char (char_of_int n)"
20:51:02 <Arc_Koen> or even "print_char (char n)"
20:51:27 <Arc_Koen> or whatever other random name they have for the print_char function
20:51:34 <zzo38> Instructions can then be: * copy register to register * wait for multicore synchronization * multiplexer (as Muxcomp esolang) * push to stack * pop from stack
20:51:59 <fizzie> "val chr : int -> char: Return the character with the given ASCII code. Raise Invalid_argument "Char.chr" if the argument is outside the range 0--255." But what does it do if the argument is in the range 128--255? ASCII doesn't go that far.
20:52:00 <zzo38> And then arrange in checkboard pattern for multi-cores, as described on the esolang list of ideas they have a diagram of such thing
20:52:31 <Arc_Koen> fizzie: I'm guessing they use the latin-1 extension of ascii
20:52:43 <Arc_Koen> or something like that
20:52:44 <oerjan> that page with ocaml utf8 module won't load
20:52:59 <fizzie> Arc_Koen: They could, filthy liars that they are.
20:53:06 <Arc_Koen> which would have the same effect for me since my terminal doesn't work well with accents and the like
20:53:59 <Arc_Koen> (yes, char_of_int, char, Char.chr are the same function...)
20:54:17 <fizzie> How hörriblë.
20:54:54 <Arc_Koen> oerjan: I have the reference manual as a pdf and it doesn't have a utf8 module
20:55:05 <Arc_Koen> (though it may be date a couple years)
20:55:10 <oerjan> Arc_Koen: it was the "batteries included" site
20:55:12 <zzo38> Some algorithms can be implemented efficiently using only a few multiplexers.
20:55:27 <oerjan> which presumably contains more stuff
20:55:34 -!- Vorpal has quit (Ping timeout: 246 seconds).
20:55:50 <Arc_Koen> so the reference manual would not be the absolute reference?
20:56:07 * Arc_Koen 's been lied to
20:56:15 <fizzie> It's not the absolute reference to Swedish folk art, for example.
20:56:25 <fizzie> Nor nonstandard modules that hairy hippies may or may not have written.
20:56:28 <zzo38> What would you think about these strange ideas of a computer?
20:56:37 <fizzie> oerjan: It would be TYPICAL if that site did not, in fact, contain a "Battery" module.
20:56:47 <oerjan> fizzie: indeed
20:57:03 <oerjan> maybe its battery ran out, and that's why it doesn't load
20:57:29 <fizzie> I wonder how many battery-operated HTTP servers there are currently publicly available in the global internet network.
20:57:36 <fizzie> Certainly a few.
20:57:48 <fizzie> And/or crank-operated.
20:57:55 <fizzie> In the mechanical sense, not the psychological.
20:58:06 <fizzie> The latter there's no shortage of.
20:58:10 <Arc_Koen> and don't forget that guy who's hosting his website on his bicycle-driven personal computer
20:59:45 <fizzie> Wiki says that bicycle dynamos produce generally about 3W at 6V; that's certainly enough to run a computer.
21:00:05 <fizzie> I'm also grateful that the worldwide encyclopedia everyone can edit had this piece of information.
21:00:23 <fizzie> Sometimes, it has happened that I went to wikipedia looking for something, and it *wasn't there*.
21:01:03 <Arc_Koen> Taneb: "Hello world" in Fueue is as simple as "72 101 108 108 111 32 (etc.)"
21:01:06 * boily is shocked.
21:01:07 <Arc_Koen> isn't it?
21:01:42 <Taneb> I think so
21:03:08 <Arc_Koen> (also, the wiki page says in the case of a function, "the function and its arguments are popped", but it doesn't say so for a number, so I would be tempted to make it that when the top element is a number, you're stuck in an infinite loop of printing the first character)
21:03:44 <oerjan> fizzie: did you get a feedback button to tell them you found what you were looking for?
21:04:25 <fizzie> oerjan: No. It lacks even such a basic feature.
21:04:32 <fizzie> (I don't recall what I was looking for any more.)
21:04:36 <Arc_Koen> you can use the discuss page
21:04:46 <oerjan> fizzie: i occasionally get such buttons
21:04:46 <Taneb> Arc_Koen, that sounds mean
21:05:09 <fizzie> oerjan: Sometimes I get dialog boxes that ask "was this information useful to you?"
21:05:12 <Arc_Koen> well that certainly would solve the problem "is it Turing-complete"
21:05:17 <fizzie> Not on Wikipedia, though.
21:05:54 <Arc_Koen> fizzie: yeah but what when you're looking for certainly-not-useful stuff? that happens to me all the time
21:06:00 <oerjan> fizzie: i have got them on wikipedia
21:07:05 <Arc_Koen> Taneb: since we're lacking example programs, I could write my first 99 bottles of beer in fueue!
21:07:11 <Taneb> Good luck!
21:07:43 <Arc_Koen> would probably be slightly more complicated than it sounds though
21:08:01 <Arc_Koen> since making a loop uses the full queue
21:08:20 <Arc_Koen> oh no we can use blocks
21:08:32 <Arc_Koen> so it *should* be easy
21:09:17 -!- nortti- has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
21:09:20 <Arc_Koen> "until n is 0, make the 'n bottles of beer' stuff, then deblock the end of the song"
21:09:39 <Arc_Koen> wait
21:09:54 <Arc_Koen> isn't Fueue missing an if statement or something?
21:10:14 <oerjan> shocking
21:10:54 <Taneb> I think you can use $ on a block as an if
21:11:20 <Arc_Koen> oh
21:11:46 <Arc_Koen> ok, so let's forget I ever said it would be easy
21:13:07 <oerjan> forget what?
21:13:36 -!- Eladith has joined.
21:13:50 <Arc_Koen> something about a soishbeesy, but I don't remember what it means
21:18:30 -!- Taneb has quit (Ping timeout: 256 seconds).
21:19:40 -!- Taneb has joined.
21:27:23 <oerjan> does this give an infinite loop ):[65):]
21:28:13 -!- Taneb has quit (Ping timeout: 268 seconds).
21:28:18 -!- boily has quit (Quit: Poulet!).
21:28:23 <oerjan> Arc_Koen: ^
21:28:35 <olsner> oerjan: asking us to solve your halting problems for you?
21:29:08 <oerjan> i'm just trying to write a nontrivial loop in fueue
21:29:47 <Arc_Koen> oerjan : do you mean 65 or 6 5 ?
21:29:48 <oerjan> my interpretation is that it should print AAAAAAAAAAAAAAa...
21:29:53 <Arc_Koen> (though it doesn't change much)
21:29:55 <oerjan> er
21:30:01 <oerjan> Arc_Koen: 65
21:30:14 <oerjan> of course that can be an arbitrary string to print
21:30:38 <oerjan> it requires that the test for correct argument types works though (for the ( )
21:30:51 <oerjan> er )
21:31:05 <Arc_Koen> as far as I'm concerned, yes, that's an infinite loop
21:31:36 <oerjan> good, good
21:32:52 <Arc_Koen> http://pastebin.com/rF0xBtBU
21:32:53 <oerjan> hm this means that as long as your functions don't take functions as arguments, you get arguments evaluated with enough iterations
21:35:49 <Arc_Koen> oerjan: I think the hard part is make a non-infinite loop that deblocks the rest of the program when ended
21:36:44 <Arc_Koen> though as Taneb said you could use the $ to emulate an "if this is the last iteration, then deblock the remaining"
21:40:02 * Sgeo thinks the idea behind REBOL's... not sure what to call it is interesting
21:40:11 <Sgeo> But REBOL seems to be a wasteland of no activity
21:41:48 <oerjan> <<<<( will eventually swallow up 5 values
21:44:05 <Arc_Koen> but not necessarily the next 5
21:44:31 <oerjan> indeed
21:46:19 <oerjan> hm i sense the argument order of $ is inconvenient
21:46:46 <zzo38> Another idea is connect the data of one RAM chip to the address of another, to do indirect addressing.
21:47:28 <oerjan> it's the only command that can trigger when something is a number and produce something which isn't
21:47:47 <oerjan> but the number is squeezed in the middle
21:48:06 <olsner> Sgeo: is rebol related to cobol?
21:48:28 <Sgeo> olsner, only in the fact that the name is traditionally capitalized.
21:48:34 <Sgeo> And the last three leters.
21:48:35 -!- MoALTz has quit (Ping timeout: 252 seconds).
21:48:56 <Sgeo> And that there are 5 letters
21:49:43 <Arc_Koen> oerjan: what about : (dupplicate) and ~ (swap)? they should be helping
21:50:04 <oerjan> Arc_Koen: the problem is that neither of them can be delayed until the arguments are the right type
21:50:46 <olsner> oh, it's "a cross-platform data exchange language and a multi-paradigm dynamic programming language"
21:51:24 <olsner> and "Although it can be used for [programming], its greatest strength is [other stuff]"
21:51:42 <Arc_Koen> I guess the main purpose of blocks is to delay - though you still may have to delay the deblocking or something (but I don't really know what I'm talking about)
21:52:27 <oerjan> Arc_Koen: they ought to be useful for moving larger amounts of information around as well
21:53:10 <oerjan> by analogy with underload's () blocks
21:55:36 <oerjan> hm you can probably do some finer synchronization with nested )[)[ stuff
21:56:16 <oerjan> that way you can do a delayed : as )[)[)[:]]] and the like
21:56:54 <oerjan> which i guess follows from what you said
22:00:13 <Arc_Koen> Taneb: have you considered an "ignore" operator?
22:00:31 <oerjan> taneb has probably gone to bed
22:00:37 <oerjan> he has that weird habit
22:01:10 <oerjan> hm what do you mean by an ignore operator? maybe we can simulate it
22:01:11 <Arc_Koen> which would simply send the next value back at the end, not popping it nor evaluating it
22:01:43 <Arc_Koen> so basically would be like (, except you don't need to deblock it afterwards
22:01:50 <Arc_Koen> oh
22:01:53 <Arc_Koen> )( works
22:02:07 <oerjan> excellent
22:02:27 <Arc_Koen> I think we should add that kind of stuff to the wiki
22:03:25 <Arc_Koen> hmmm
22:03:43 <oerjan> $%: n [...]
22:03:45 <Arc_Koen> at first I thought "since we have binary + and unary -, we trivially have binary -"
22:04:07 <Arc_Koen> but it's not thzt simple
22:04:34 <oerjan> +-1 works to decrement
22:04:58 <oerjan> in two steps
22:04:59 <Arc_Koen> it will work next turn
22:05:24 <oerjan> turn synchronization is probably going to be a big part of programming queue
22:05:28 <oerjan> *fueue
22:05:40 <Arc_Koen> +-1n doesn't work, since the n is popped out immediately
22:05:58 <oerjan> oh right
22:06:03 <Arc_Koen> ok I think I can make it work
22:06:09 <oerjan> +-1)(
22:06:13 <Arc_Koen> yeah
22:06:18 <oerjan> or wait
22:06:43 <oerjan> the -1 gets popped then
22:06:59 <Arc_Koen> uh
22:07:10 <oerjan> )[+-1])(
22:07:16 <Arc_Koen> +)[-1])(
22:07:31 <oerjan> or that
22:07:37 <Arc_Koen> I don't think yours work
22:07:55 <Arc_Koen> we get a +-1n at the end of the queue with yours
22:08:21 <oerjan> no, we get +-1[n]
22:08:23 <oerjan> er
22:08:24 <zzo38> How easy could a Muxcomp computer be made from 74xx parts?
22:08:25 <oerjan> no, we get +-1)[n]
22:08:48 <Arc_Koen> oh, right
22:09:01 <Arc_Koen> but that's the same isn't it :)
22:09:06 <Arc_Koen> oh no it's not
22:09:22 * Arc_Koen 's starting to hate fueue
22:09:23 <oerjan> yeah it doesn't matter where you put the + since it always waits for all numbers
22:09:38 <Arc_Koen> yep but the -1 doesn't wait
22:09:55 <oerjan> no but yours and mine do the same thing to it
22:10:10 <Arc_Koen> right
22:10:15 <Arc_Koen> )( takes two turns
22:10:28 <Arc_Koen> so we should make it ))[[-1]]
22:10:46 <oerjan> oh hm
22:10:54 <oerjan> +-1+0
22:11:20 <Arc_Koen> oh wait, -1 pushes the -1 to the end
22:11:27 <oerjan> +0 only takes one turn
22:11:29 <Arc_Koen> so I was just talking nonsense for the last five minutes
22:11:53 <Arc_Koen> so i'll go back to implementing an interpreter and i'll let you master fueue :)
22:12:36 <Arc_Koen> about your $%: n [...] : what is it supposed to do?
22:12:44 <impomatic> Does anyone know a neat trick to find the highest of two signed integers in assembly? This is what I have http://twitcode.org/show/323/find-the-signed-max-of-ax-bx
22:12:56 <Arc_Koen> it evaluates as nn[...]$% and then I guess the n's are popped out
22:13:35 <oerjan> Arc_Koen: oh why did i put the : there...
22:13:42 <oerjan> oh right hm
22:13:54 <Arc_Koen> aaaaah no I'm wrong once again
22:13:59 <Arc_Koen> the : puts the nn back to the end
22:14:01 <oerjan> the idea was to get a test on a number while still preserving a copy
22:14:22 <Arc_Koen> so [...]$%nn
22:14:26 <Arc_Koen> which should work
22:14:50 <oerjan> well not quite, the n copy gets printed
22:14:58 <Arc_Koen> right
22:15:37 <oerjan> hm maybe best to keep the n's blocked until used
22:15:42 -!- nooga has quit (Ping timeout: 264 seconds).
22:16:53 -!- ais523 has quit.
22:19:36 <Arc_Koen> so how does $ work?
22:19:48 <Arc_Koen> I mean, does $0x destroy the x?
22:19:53 -!- atriq has joined.
22:20:01 <oerjan> i'd assume so yes
22:20:07 <oerjan> ah he's back
22:20:08 <Arc_Koen> and thus $1x is the proper ignore we were looking for
22:20:13 <Arc_Koen> heya atriq
22:20:26 <oerjan> oh right that would woek
22:20:26 <atriq> Hey
22:20:27 <oerjan> *r
22:20:48 <Arc_Koen> atriq, does $0x destroy the x?
22:21:02 <atriq> Yes
22:21:10 <atriq> It pushes 0 copies of x
22:21:19 <Arc_Koen> the ! function is not needed then
22:21:26 <oerjan> heh
22:21:44 <atriq> Neither's :
22:21:50 <atriq> : is $2
22:21:51 <Arc_Koen> right
22:21:55 <oerjan> well you might want to do !! or something :)
22:22:19 <Arc_Koen> !! is a nop
22:22:45 <oerjan> well i imagine the first ! is conditionally created
22:26:49 <oerjan> hm oh. $0~ vs. $1~ might be a nice way to do clean branching
22:27:39 <oerjan> if two blocks follow to be chosen between
22:28:04 -!- nooga has joined.
22:28:31 <atriq> Except the ~ will be pushed at the back
22:28:43 <atriq> So you'd need to wait for the entire thing to rotate round
22:28:49 <oerjan> well of course.
22:29:04 <Arc_Koen> (that's kind of the big issue with fueue but you're the one we're gonna blame)
22:29:06 <oerjan> i don't expect to do much in a single round here
22:30:09 <Arc_Koen> ok, the three block functions to go, then numbers, then I'm almost done
22:30:37 <Arc_Koen> (almost meaning "hey you forgot the complete rotation input thing")
22:30:50 <oerjan> heh
22:31:19 <Arc_Koen> so my idea is to have the size of the queue be part of the queue structure, and the (recursive) processing function have "time" as an argument
22:31:52 <Arc_Koen> with time set to 0 at every "I just did something" and time++ at every "I just sent your value back to the end"
22:32:25 <Arc_Koen> and a comparison between time and q.size at the beginning of each iteration
22:32:58 <oerjan> hm an interesting question. is the empty program a nop or a cat :)
22:33:37 <Arc_Koen> I would think cat
22:33:39 <oerjan> that will affect that check
22:33:56 <Arc_Koen> otherwise I'm sure atriq wouldn't have include the Halt function :p
22:34:13 <atriq> empty is a cat
22:37:04 <Arc_Koen> though your function / effect / before / after might imply that H clears the queue
22:37:18 <Arc_Koen> and thus every program that ends becomes a cat
22:37:37 <Arc_Koen> (also, empty is an infinite loop of cats, right?)
22:40:28 <Arc_Koen> on a totally unrelated matter, i'm kind of disappointed by how fast and easy it is to describe a new language like fueue, as opposed to how long and boring it is to implement that description
22:41:11 <Arc_Koen> maybe that ~english esolang fixes that
22:41:23 <oerjan> nah just use haskell >:)
22:41:47 <Arc_Koen> the c program is like an endless succession of "case 'x':" with nested if's
22:42:27 <Arc_Koen> maybe I should make a program that writes a C program that interprets fueue
22:44:04 * oerjan sneezes
22:44:20 <oerjan> i should have known nys and that other guy was an omen
22:49:07 <FreeFull> Arc_Koen: You should write a fueue interpreter in fueue
22:49:23 <Arc_Koen> interesting
22:49:48 <Arc_Koen> hmm
22:49:58 <Arc_Koen> not so much, actually
22:50:26 <Arc_Koen> oh wait yes
22:50:35 <Arc_Koen> should be pretty easy though
22:51:22 <Arc_Koen> hmmm
22:51:30 <Arc_Koen> now I'm just thinking out loud am I not?
22:52:16 <Arc_Koen> (and let's forget the soishbeesy again, shall we?)
22:53:23 -!- monqy has joined.
22:58:44 -!- nooga has quit (Ping timeout: 244 seconds).
22:58:57 <oerjan> )$-----0[][...] is a nice way to delay evaluation, i think
22:59:49 <Arc_Koen> empty block
22:59:50 <Arc_Koen> sweet
23:00:08 <Arc_Koen> and you're gonna destroy it anyway
23:00:11 <oerjan> )$------1[...] will also work if the number of -'s is even
23:00:34 -!- atriq has quit (Quit: Leaving).
23:00:39 <Arc_Koen> waaaait
23:00:44 <Arc_Koen> I was about to ask atriq a question
23:00:50 <Arc_Koen> are empty blocks legal
23:00:58 <oerjan> cannot imagine why not
23:01:03 <Arc_Koen> they can't be made during the evaluation
23:01:17 <Arc_Koen> the only way to have an empty block is to manually write [] when writing the program
23:01:52 <oerjan> heh
23:19:03 <Arc_Koen> ok, program is finished
23:19:17 <Arc_Koen> except some parts are comments in english of what that part is supposed to do
23:19:41 <Arc_Koen> time to sleep, see you
23:20:22 <oerjan> good night
23:20:48 <Arc_Koen> (also I lied, I haven't done the string fueue program -> queue conversion yet but that should be easy)
23:21:16 <Arc_Koen> and tomorrow i'll explain why I'm so happy to have found that #esoteric place
23:22:49 -!- Arc_Koen has left.
23:25:04 -!- augur has quit (Remote host closed the connection).
23:26:58 <shachaf> You know what's terrible?
23:26:59 <shachaf> #haskell
23:29:37 <oerjan> ok mr. soundandcheateraf
23:41:59 <coppro> oerjan: I didn't know you played agora
23:42:47 <oerjan> indeed
23:52:16 <kmc> so why don't you leave shachaf
23:52:40 <shachaf> hi kmc
23:52:53 <shachaf> How's $NEW_JOB?
23:52:56 <kmc> fun
23:53:09 * shachaf is slightly sick.
23:53:15 <shachaf> I need to finish the Stripe CTF today!
23:53:16 <oerjan> he's too drawn to the carnage
23:54:05 -!- oerjan has set topic: Virus spreading on channel, film at 11 | May contain: soy strawberries, chocolate people, vanilla computer programming, natto esoteric, tarragon THX deep note, mutton ecliptic longitude, camomile tea, some CPU locusts, rutabaga nonsensical analogies and theories, hummus matrices of solidity, pudding lovecraftian horrors, and no Ice-9. | http://codu.org/logs/_esoteric/ | http://esolangs.o.
23:54:12 <oerjan> oops
23:54:31 <shachaf> Esoleric tanguages.
23:54:35 -!- oerjan has set topic: Virus spreading on channel, film at 11 | May contain: soy strawberries, chocolate people, vanilla computer programming, natto esoteric, tarragon THX deep note, mutton ecliptic longitude, some CPU locusts, rutabaga nonsensical analogies and theories, hummus matrices of solidity, pudding lovecraftian horrors, and no Ice-9. | http://codu.org/logs/_esoteric/ | http://esolangs.org/wiki.
23:56:08 <kmc> shachaf: hope you feelbetter
23:56:19 <kmc> how many CTF levels do you have lefT?
23:56:27 <shachaf> Still at the same place I was at before.
23:56:34 <shachaf> Haven't started level 7 yet. I hear it's fun.
23:56:44 <kmc> It is!
23:57:27 <kmc> so fun
23:57:40 <shachaf> There's a Stripe CTF event in SF on Thu!
23:58:05 <shachaf> I guess you won't be there this time.
23:58:33 <shachaf> But I'll bug gdb if I end up being there.
23:58:39 <kmc> cool
23:58:49 <kmc> i think nelhage isn't there yet
23:58:52 <shachaf> I keep thinking of him when I see things like https://www.hackerschool.com/blog/5-learning-c-with-gdb
23:58:54 <kmc> i had lunch with him today in cambridgema
2012-08-29
00:02:41 <zzo38> On the document for ZUMA FPGA, I see no reference to the actual code, nor any date telling when the report was written.
00:05:50 <oerjan> > let test = (-); infixr 0 test in 3 `test` 4 `test` 5
00:05:51 <lambdabot> <no location info>: parse error on input `test'
00:06:03 <oerjan> > let test = (-); infixr 0 `test` in 3 `test` 4 `test` 5
00:06:04 <lambdabot> 4
00:06:32 <oerjan> hm so why are there fixity declarations without `` in https://github.com/mgsloan/api-compat/blob/master/examples/template-haskell.api.diff ?
00:06:59 <oerjan> !haskell let test = (-); infixr 0 test in 3 `test` 4 `test` 5
00:07:11 <EgoBot> ​\ /tmp/runghcXXXX23754.hs:1:26: parse error on input `test'
00:08:07 <shachaf> kmc: Your company should run CTFs!
00:13:13 <oerjan> oh wait that's not actually a haskell file, it's an api printout
00:13:43 <shachaf> Can we make HackEgo run Haskell?
00:13:49 <shachaf> runghc is installed but broken.
00:14:24 <oerjan> it has worked before, although elliott for some reason refused to let the working command stay...
00:14:58 <oerjan> `which runghc
00:15:00 -!- augur has joined.
00:15:01 <HackEgo> ​/usr/bin/runghc
00:15:13 <oerjan> it's installed globally, and with wrong setup
00:15:32 <oerjan> `run ghc -e 'print "test";'
00:15:36 <HackEgo> ghc: can't find a package database at /usr/lib/ghc-6.12.1/package.conf.d
00:16:46 <oerjan> !sh which runghc
00:16:47 <EgoBot> ​/usr/bin/runghc
00:16:56 <oerjan> !sh which ghc
00:16:56 <EgoBot> ​/usr/bin/ghc
00:17:05 <shachaf> `run ls -d /usr/lib/ghc*
00:17:09 <HackEgo> ​/usr/lib/ghc-6.12.1
00:17:12 <oerjan> !sh ghc -e 'putStrLn "test";'
00:17:15 <EgoBot> ​<interactive>:1:15: parse error on input `;'
00:17:27 <oerjan> wat
00:17:31 <oerjan> !sh ghc -e 'putStrLn "test"'
00:17:34 <EgoBot> test
00:17:45 <shachaf> I want it on HackEgo.
00:18:30 <oerjan> well only Gregor can fix that installation
00:18:41 <shachaf> Gregor: !
00:18:47 <shachaf> oerjan: Slap Gregor for me, would you?
00:18:57 <oerjan> i am not sure that is productive
00:18:58 <shachaf> I mean swat.
00:19:08 <shachaf> You know, that thing you do.
00:19:19 <shachaf> @slap Gregor
00:19:19 * lambdabot hits Gregor with a hammer, so they breaks into a thousand pieces
00:19:30 <shachaf> They brokes into a thousand pieces!
00:19:34 <shachaf> Counterproductive. :-(
00:19:42 <oerjan> toribull
00:20:41 <Gregor> I removed ghc because it was friggin' enormous
00:20:42 <kmc> http://www.quora.com/Would-becoming-homeless-be-a-good-strategy-to-cut-costs-1
00:24:28 <oerjan> Gregor: but you left the executables...
00:24:49 <shachaf> kmc: SOunds like fun.
00:24:59 <shachaf> I should try that.
00:25:13 <pikhq> Gregor: "GCC is enormous; rm -rf /usr/lib/*.so"
00:25:30 <Gregor> pikhq: Pretty much.
00:25:36 <shachaf> pikhq: That would be a better argument if GHC did dynamic linking.
00:25:39 <pikhq> Well, actually, more like.
00:25:42 <Gregor> However, I had ghc installed to /opt/ghc
00:25:49 <Gregor> So, y'know, rm -rf /opt/ghc
00:25:50 <pikhq> "GCC is enormous; rm -rf /usr/include"
00:26:01 <shachaf> "GCC is enormous; rm -rf /"
00:26:22 <pikhq> "GCC is enormous; play-a-game"
00:26:40 <shachaf> /usr/games/wump
00:26:55 <oerjan> "A strange game. The only winning move is not to play."
00:46:02 <kmc> gcc is enormous, netcraft confirms it
00:46:28 * shachaf is finding it difficult to concentrate on anything. :-(
00:46:57 <shachaf> Except for mindless things like telling people in #haskell why they're wrong.
00:47:16 <shachaf> Which is another reason to leave.
00:48:59 -!- Concreto has joined.
00:49:12 <oerjan> `welcome Concreto
00:49:16 <HackEgo> Concreto: 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:49:17 <kmc> wump the humpus
00:49:21 <Concreto> oerjan: thank you
00:49:28 <shachaf> (I'm actually not doing that.)
00:49:43 <shachaf> `WeLcOmE wumpus
00:49:47 <HackEgo> WuMpUs: 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:50:06 -!- kinoSi has quit (Read error: Connection reset by peer).
00:50:35 -!- kinoSi has joined.
01:03:13 <FreeFull> `WelComE
01:03:15 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WelComE: not found
01:06:20 * oerjan suddenly wonders if one could somehow put `welcome in a case-insensitive directory and get it to work for all combinations
01:07:22 <oerjan> i vaguely recall something about mounting case-insensitive file systems, or something
01:09:31 <oerjan> i suppose the repository model might get in the way
01:13:32 -!- derdon_ has joined.
01:16:38 <oerjan> quadruple sneeze :(
01:17:05 -!- derdon has quit (Ping timeout: 272 seconds).
01:26:41 <Phantom_Hoover> hello
01:27:15 <oerjan> mörn
01:28:19 -!- oerjan has quit (Quit: Good night).
01:30:18 -!- derdon_ has quit (Remote host closed the connection).
01:48:18 -!- Braber01 has joined.
01:48:26 <Braber01> !bf_textgen
01:49:10 <Braber01> Just out of cuoristy could mushcode be consider3ed an Esoteric programming language?
01:49:33 <ion> `run cat bin/WeLcOmE
01:49:36 <HackEgo> ​#!/bin/sh \ welcome $@ | python -c "print (lambda s: ''.join([ (s[i].upper() if i%2==0 else s[i].lower()) for i in range(len(s)) ]))(raw_input())"
01:49:38 <FreeFull> mushcode?
01:49:59 <ion> Eww at not quoting sh variable references
01:50:06 <FreeFull> `run mkdir bin/WelCome
01:50:08 <HackEgo> No output.
01:50:18 <FreeFull> `WelCome
01:50:21 <Braber01> `bf_textgen
01:50:21 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: WelCome: not found
01:50:24 <HackEgo> ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: bf_textgen: not found
01:50:35 <FreeFull> !bf_textgen Try actually writing something.
01:50:39 <FreeFull> ^bf_textgen Try actually writing something.
01:50:54 <FreeFull> `run echo echo
01:50:58 <HackEgo> echo
01:51:09 <FreeFull> I am really tempted to forkbomb ):
01:51:12 <Braber01> ~bf_textgen Will you go out with me?
01:51:13 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
01:51:28 <FreeFull> ~yi
01:51:28 <cuttlefish> Your divination: "Gorge" to "Dispersing"
01:51:43 <FreeFull> ~duck
01:51:44 <cuttlefish> --- ~duck query
01:51:44 <cuttlefish> --- Query information from Duck Duck Go
01:52:03 <Braber01> !bf_textgen Test
01:52:05 <FreeFull> `run :(){ :|:&};
01:52:08 <HackEgo> No output.
01:52:16 <FreeFull> Oh, it terminated :o
01:52:38 <FreeFull> Oh wait
01:52:41 <FreeFull> I didn't actually run :
01:52:50 <FreeFull> `run :(){ :|:&};:
01:52:53 <HackEgo> No output.
01:53:06 <FreeFull> `run exec sh -e ':(){ :|:&};:'
01:53:09 <HackEgo> sh: Can't open :(){ :|:&};:
01:53:19 <Braber01> There a wiki where one could look up bot commands? for this channel?
01:53:23 <ion> -c
01:53:29 <FreeFull> `run exec bash -e ':(){ :|:&};:'
01:53:32 <HackEgo> bash: :(){ :|:&};:: No such file or directory
01:53:49 <Braber01> `run bash ls
01:53:51 <HackEgo> ​/bin/ls: /bin/ls: cannot execute binary file
01:54:12 <ion> -c
01:54:27 <FreeFull> `run bash -e ls
01:54:30 <HackEgo> ​/bin/ls: /bin/ls: cannot execute binary file
01:54:35 <ion> -c
01:54:36 <FreeFull> `run /bin/ls
01:54:39 <HackEgo> bin \ canary \ foo \ karma \ lib \ paste \ quotes \ share \ wisdom \ zalgo.hs
01:55:04 <ion> `run cat zalgo.hs
01:55:07 <HackEgo> import Random;main=mapM_((>>(י=<<randomRIO('̀','ͯ'))).י)=<<getContents;י=putChar
01:55:27 <Braber01> Am I the only one who can see LOLCODE being a full-flegded OOEPL?
01:55:37 <FreeFull> `run exec bash
01:56:08 <Braber01> !bf_textgen Hi.
01:56:09 <HackEgo> bash: cannot set terminal process group (-1): Inappropriate ioctl for device \ bash: no job control in this shell \ bash-4.1$
01:56:22 <zzo38> Braber01: What is OOEPL?
01:56:36 <Braber01> Object Oriented ESOTERIC Programming Language :P
01:56:53 <shachaf> zzo38: How's Ibtlfmm?
01:58:06 <Braber01> If cats could program, LOLcode is def the language they would use.
01:58:28 <FreeFull> `run bash -c ':(){ :|:&};:'
01:58:31 <HackEgo> No output.
01:58:35 <Braber01> `run bash -e %blow
01:58:38 <HackEgo> bash: %blow: No such file or directory
01:58:46 <FreeFull> `run nohup bash -c ':(){ :|:&};:'
01:58:49 <HackEgo> nohup: ignoring input and redirecting stderr to stdout
01:59:17 <ion> Pro tip: fork bombs won’t work.
01:59:23 <Braber01> `run tcsh -e %blow
01:59:26 <HackEgo> bash: tcsh: command not found
02:01:12 * Braber01 really want's HackEgo to say blow: No such job.
02:02:01 <FreeFull> `run a="exec bash -c \"$a\""; exec bash -c "$a"
02:02:03 <HackEgo> No output.
02:02:08 -!- pikhq_ has joined.
02:02:29 <Braber01> `run bf_textgen test
02:02:32 <HackEgo> bash: bf_textgen: command not found
02:02:36 <Braber01> >:(
02:02:42 -!- pikhq has quit (Ping timeout: 265 seconds).
02:02:58 -!- copumpkin has changed nick to irregardless.
02:03:42 <FreeFull> My attempted quinebomb doesn't seem to nest
02:04:26 <FreeFull> Fail =P
02:05:28 <FreeFull> I think you can make a pretty cool quine with printf
02:12:32 <FreeFull> Harder than I thought
02:19:20 -!- Braber01 has quit (Quit: Leaving).
02:20:11 <FreeFull> It's the damn quoting that kills it
02:26:20 <FreeFull> Oh
02:26:38 <FreeFull> I didn't think of using \47 instead of \"
02:28:22 <shachaf> kmc: Finally looking at level 7.
02:28:25 <shachaf> h.update(self.api_secret + message)
02:29:08 <shachaf> Looks like the thing I was talking about earlier...
02:30:53 <kmc> yep
02:32:14 * shachaf wonders whether you can do this using just the sha1sum executable.
02:33:04 <shachaf> I have an implementation of sha1 lying around, fortunately.
02:33:16 <shachaf> It wasn't working until now, but I found the bug in it!
02:34:21 <kmc> an implementation you wrote?
02:34:26 <shachaf> Yes.
02:34:31 <kmc> cool!
02:34:34 <kmc> i've never done that
02:34:42 <kmc> i just downloaded a reference implementation for the CTF level
02:34:47 <shachaf> It's pretty much copying the pseudocode on Wikipedia.
02:34:53 -!- DHeadshot has joined.
02:35:25 <shachaf> I wrote it back when I heard about the Flickr attack, in fact. :-)
02:35:39 <kmc> heh
02:35:40 <zzo38> shachaf: I still have no proper documentation for Ibtlfmm but I have stuff on the IRC and stuff on paper
02:35:44 <shachaf> http://slbkbs.org/r.rb.txt
02:35:46 <kmc> i didn't hear about the flickr attack until this CTF
02:36:35 <shachaf> At the time I didn't care enough to find the bug, though. I was using the length in bytes instead of bits.
02:37:02 * shachaf wonders whether adding the length on is necessary.
02:37:48 -!- irregardless has changed nick to copumpkin.
02:42:08 <shachaf> I mean, for the guarantees SHA1 gives you.
02:42:48 <shachaf> I guess most hash functions people use are built the same way.
02:43:56 <shachaf> https://en.wikipedia.org/wiki/Merkle%E2%80%93Damg%C3%A5rd_construction doesn't give reasoning for it other than "To harden the hash even further also".
02:44:05 <zzo38> Is LFSR faster than arithmetic in hardware? What if the taps can be reconfigured at runtime?
02:50:41 -!- elliott has joined.
02:50:44 <elliott> shachaf: You know C++11, right?
02:51:18 <shachaf> elliott: Not really?
02:51:27 <shachaf> I've never actually used it.
02:51:29 <shachaf> I've read a bit about it.
02:52:00 <shachaf> elliott: You should do stripe-ctf.com!
02:52:05 * kmc <3 C++11
02:52:05 <shachaf> Roughly 12 hours until they turn it off.
02:52:22 <kmc> i've only used a few of the new features, but they are nice
02:52:37 <shachaf> Hmm, I think you need a bit more cleverness than just knowing that you can append arbitrary things.
02:52:43 <kmc> like iteration-based loops
02:52:54 <elliott> kmc: Do you know about the "enum class" stuff?
02:53:19 <kmc> oh i used variadic templates for something too, but i forgot what and it's probably for the best
02:53:22 <kmc> elliott: no
02:53:24 <kmc> nelliott
02:53:32 <elliott> :(
02:53:40 <kmc> also i'm really really glad that shared_ptr is in the stdlib now
02:53:47 <shachaf> What about unique_ptr?
02:53:51 <elliott> kmc: Variadic templates are nice because you can use them to do regular variadic functions, except they don't need any terminating NULLs or anything.
02:53:54 <elliott> And they don't mangle types up.
02:54:14 <kmc> change my pitch up / mangle my type up
02:56:54 -!- elliott has left ("Leaving").
03:00:22 * shachaf wonders whether there's a client bot for level 7 like for the other levels.
03:00:48 <shachaf> Oh, hah.
03:04:49 <kmc> shachaf: something like unique_ptr was in C++98 right?
03:05:03 <shachaf> kmc: Was it?
03:05:12 <kmc> i don't actually know the difference between auto_ptr and unique_ptr
03:05:56 <pikhq_> One's got 2 u's.
03:05:56 <shachaf> Move semantics and all that.
03:07:30 -!- DHeadshot has quit (Read error: Connection reset by peer).
03:07:36 -!- DH____ has joined.
03:09:36 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
03:09:55 <shachaf> Ugh, I can't use curl to make this http request because \0? :-(
03:10:00 * shachaf hates it when tools are annoying.
03:10:59 <kmc> curl --data-binary @filename
03:11:20 <shachaf> kmc++
03:11:29 <shachaf> You're totally giving away the solution here, man.
03:11:31 <kmc> :3
03:11:44 <fizzie> There's the supplied client tool too, to give away alternatives.
03:15:08 <shachaf> I like the part where "count=10&lat=37.351&user_id=1&long=-119.827&waffle=eggo" is 440 bits long.
03:16:01 <fizzie> Do you like the part where the secret+that is just a bit over 512 bits long?
03:17:16 <kmc> no good spoofing an eggo waffle
03:17:21 <shachaf> Ugh, I forgot about the secret. :-(
03:17:41 <shachaf> Wait, why is spoofing an eggo no good?
03:17:48 <shachaf> I mean, if you add &waffle=liege to the end.
03:17:51 <shachaf> You probably shouldn't answer taht.
03:18:54 <fizzie> What if the answer is "wait, right, it doesn't matter"?
03:18:55 <kmc> yeah that will probably work
03:19:01 <kmc> i'm remembering wrong
03:19:08 <shachaf> fizzie: 448 is the number that matters, anyway, not 512
03:19:22 <kmc> 31337 is the number that matters
03:19:54 <fizzie> As for unique_ptr, arguably the semantics are more ot less the same, it makes the "move" operation explicit as opposed to something that looks like a copy, so you (and more to the point, someone's template algo doing "a = b") doesn't get confused. (And it can free pointers-to-arrays with delete[] as an unrelated improvement.)
03:35:54 <kmc> ah
03:36:18 <kmc> i think possibly new[] / delete[] should not be in C++
03:36:30 <kmc> either you should use something like std::vector
03:36:47 <kmc> or you are implementing such a library yourself, and can deal with allocating a big chunk of memory and using placement new
03:37:28 <kmc> i think C++ would be better with a more explicit separation between the high-level applications programming features and the features which exist for implementing the core libraries (which are extensions of C features, largely)
03:39:00 <shachaf> Ah, got level 7.
03:39:15 <shachaf> Great news: 10 liege waffles will soon be flying your way!
03:40:06 <shachaf> It's trickier to implement this than to "know how it works".
03:40:42 <kmc> yeah
03:40:47 <kmc> it took me longer than that, for sure
03:41:02 <shachaf> Well, I already had the Ruby code and basically knew how it worked.
03:41:55 <kmc> your exploit for the flickr thing?
03:41:58 <pikhq_> kmc: C++ would be much better if they removed features.
03:42:14 <kmc> probably
03:42:48 <kmc> but i do think the features in C++ fit together better than in most bad languages
03:42:55 <kmc> there are still too many
03:43:02 <shachaf> Well, it's just a regular implementation of SHA1 -- I just wrote it to have a version to fiddle with at the time. But I mean that I was familiar with how the hash and attack work.
03:43:08 <kmc> ah right
03:43:20 <kmc> it took me a while to figure out the right kind of padding and such
03:43:26 <pikhq_> It's a bad language designed by people who are actually decent programmers.
03:43:37 <pikhq_> Which makes it... Nearly unique in that regard, near as I can tell.
03:43:43 <kmc> yeah
03:44:09 <shachaf> You get completely useless error messages when doing something like this. :-)
03:44:31 <shachaf> Now I have 15 hours to do level 8.
03:44:45 <shachaf> (And sleep. I have hoping to sleep.)
03:44:47 * shachaf is still finding it hard to concentrate...
03:47:06 <shachaf> You completed this level in 500560.354 seconds
03:57:13 <pikhq_> Why, that's nearly 0.000002 levels per second! You'll lick it in no time.
03:58:27 <shachaf> ion: Did you know there really is a Haskell report?
03:59:31 <ion> I thought it was just a legend told by salty seamen.
04:19:54 -!- TeruFSX has quit (Read error: Connection reset by peer).
04:20:43 -!- MoALTz has joined.
04:21:52 -!- TeruFSX has joined.
04:22:15 <zzo38> I have composed and written some music on my computer. It has a moment of silence (i.e. a fermata and rest together) somewhere in the middle.
04:27:25 * shachaf suspects port-scanning level08-2.stripe-ctf.com is on the wrong track.
04:44:30 -!- MoALTz has quit (Ping timeout: 252 seconds).
05:01:00 -!- DH____ has quit (Read error: Connection reset by peer).
05:01:06 -!- DHeadshot has joined.
05:08:30 -!- DHeadshot has quit (Read error: Connection reset by peer).
05:18:58 <shachaf> kmc: Did you know you escape non-BMP characters in JSON by using a surrogate pair?
05:19:39 <zzo38> Does JSON use UTF-16?
05:20:00 <shachaf> Whichever encoding your file is encoded in.
05:20:26 <shachaf> JavaScript apparently does the same thing.
05:20:42 <zzo38> JSON is a subset of JavaScript, though.
05:21:56 -!- pikhq_ has quit (Ping timeout: 248 seconds).
05:22:02 -!- pikhq has joined.
05:31:23 <zzo38> Here is the hex of a file I have created to test how a terminal display backspace and line breaks: 54 65 72 6D 69 6E 61 6C 20 54 65 73 74 65 72 0D 0A 31 32 33 08 34 35 36 7F 37 38 39 0D 0A 31 32 33 0D 34 35 36 0A 37 38 39 0D 0A 3F 0D 0A
05:37:38 -!- evincar has joined.
05:45:14 -!- evincar has quit (Quit: leaving).
05:45:45 -!- jon__ has joined.
05:46:45 -!- jon__ has left.
05:48:52 -!- evincar has joined.
05:51:23 <zzo38> Does LLVM have anything to deal if the target's bytes are not 8 bits long?
05:52:13 <pikhq> Probably a developer's middle finger is all.
05:53:41 <zzo38> I would suggest to add a "B" specification to the target layout specification, with a default value of eight, used to specify the number of bits in a byte.
05:54:01 <shachaf> What if your target is a ternary computer?
05:54:49 <zzo38> Then you have to emulate binary like C does, I suppose, or you have to use ternary LLVM instead of the normal LLVM.
06:09:11 -!- monqy has quit (Ping timeout: 245 seconds).
06:17:00 <zzo38> The LLVM IRC they refused to answer my questions.
06:30:06 <zzo38> Can do-notation be used with monads on any Cartesian closed category?
06:31:14 <fizzie> What is there in LLVM that expects 8-bit bytes? Couldn't a CHAR_BIT == 16 system just have something like "i1:16:16 i8:16:16 i16:16:16 i32:32:32 ... n16:32" and then clang (or whatever C frontend there is) should just make 'char' generate i16's? (Disclaimer: I don't know much at all about LLVM internals.)
06:34:30 <zzo38> fizzie: I don't really know, but it seems in many places it expects 8-bits; one thing is it requires stack alignments to be a multiple of eight bits, and pointer arithmetic might not work properly, it has no void* and requires i8* in its place, etc
06:34:50 <fizzie> I suppose there's something, since I see people interested in having a LLVM DCPU-16 backend complain about it.
06:37:41 <fizzie> I see someone's done some sort of work for a CHAR_BIT == 24 DSP system, including a "StorageUnitSize" in TargetData and fixing clang/llvm pointer arithmetic to use that, but it doesn't seem to be public work.
06:39:54 <zzo38> There are also a lot of other things I wanted for LLVM but seem they don't have, such as metadata for specifying penalties for optimization.
06:42:39 -!- impomatic has quit (Quit: impomatic).
06:44:13 -!- nooga has joined.
06:50:57 -!- asiekierka has joined.
06:56:29 <zzo38> Do you know if a category can have more than one way of cartesian closed?
06:57:42 -!- Concreto has quit (Quit: Leaving...).
07:36:10 <shachaf> kmc: Are requests to level08 supposed to take a two-digit number of seconds to complete?
07:36:20 <shachaf> Or is it that everyone is doing what I'm doing? :-)
07:50:45 -!- evincar has left.
07:51:42 <fizzie> shachaf: When I was doing it, sometimes single requests took quite a long time (not two-digit numbers usually, though), but sending multiple using the same connection usually got the whole pile done in a short time.
07:53:20 <fizzie> shachaf: When I was doing it, sometimes single requests took quite a long time (not two-digit numbers usually, though), but sending multiple using the same connection usually got the whole pile done in a short time. Maybe they're all as slow.)
07:54:29 <fizzie> What.
07:54:42 <fizzie> That's not what I was saying.
07:55:02 <fizzie> If you haven't done too much work, you can always reset and hope you end up on a less busy box. (Didn't try that. Maybe they're all as slow.)
07:55:07 <fizzie> That was.
07:55:18 <fizzie> IRC is hard.
07:58:01 <fizzie> Also, sometimes there were bursts of a lot of activity. (Maybe people attempting something timing-related despite the hint?)
07:58:43 <fizzie> (Or just impatient people, I guess.)
07:58:56 <shachaf> Or maybe it's that they've all waited until the last day, like me.
08:00:54 <fizzie> That could be. I did get half-a-minute delays every now and then, but for the most part it was something like two seconds per request.
08:11:54 -!- lahwran has quit (Ping timeout: 276 seconds).
08:14:00 -!- kinoSi has quit (Read error: Connection reset by peer).
08:14:28 -!- kinoSi has joined.
08:16:31 -!- zzo38 has quit (Remote host closed the connection).
08:22:47 -!- olsner has quit (Quit: Leaving).
08:27:10 -!- lahwran has joined.
08:27:15 -!- lahwran has quit (Excess Flood).
08:30:40 <Sgeo> Hmm
08:30:46 <Sgeo> I just found out about WebGoat
08:30:56 <Sgeo> Is it generally a better thing to work through than HackThisSite?
08:39:21 -!- lahwran has joined.
08:39:21 -!- lahwran has quit (Excess Flood).
08:47:35 -!- Sgeo_ has joined.
08:50:24 -!- Sgeo__ has joined.
08:50:54 -!- Sgeo has quit (Ping timeout: 276 seconds).
08:54:06 -!- Sgeo_ has quit (Ping timeout: 264 seconds).
08:56:51 -!- Sgeo has joined.
08:59:09 -!- Sgeo__ has quit (Ping timeout: 240 seconds).
09:00:52 -!- Sgeo has quit (Read error: Connection reset by peer).
09:01:19 -!- Sgeo has joined.
09:04:54 -!- lahwran- has joined.
09:04:58 -!- lahwran- has quit (Excess Flood).
09:18:48 -!- atriq has joined.
09:43:23 -!- FreeFull has quit (Ping timeout: 246 seconds).
09:44:25 -!- FreeFull has joined.
09:44:52 -!- atriq has left ("Leaving").
09:44:56 -!- atriq has joined.
09:45:00 <atriq> I've got to disable that
09:45:06 <atriq> You know what annoys me?
09:45:28 <atriq> Facebook pages that are supposedly for the north-east of England but advertise events in Leeds
09:46:37 <shachaf> fizzie: Getting a lot of false positives...
09:47:29 <shachaf> I wonder if I'm doing something wrong. Presumably I can do a few passes to get it cleared out.
09:48:46 * shachaf wonders whether there's more than one technique for doing this.
09:48:56 <shachaf> This isn't a place I normally think of as leaking information.
09:49:15 -!- lahwran- has joined.
09:49:15 -!- lahwran- has quit (Excess Flood).
09:52:16 <shachaf> It did get much better when I rewrote the code to reuse an HTTP connection.
09:52:17 <fizzie> shachaf: I got about 10% to 2% (a rough guess) false positives depending (presumably) on how much other stuff was happening, at least when doing... uh, I don't know how much in detail I can go before it's too spoilery.
09:52:28 <fizzie> Okay, yes, that was what I was going to say after the ...
09:52:36 <shachaf> You already said that, though.
09:52:49 <fizzie> Yes, but not as directly. Just that it improved the response time. :p
09:53:03 <shachaf> Anyway I think I'm getting ~1/3 false positives.
09:53:10 <shachaf> Which will mean running this a bunch of time.
09:53:13 * shachaf is still on the first pass.
09:53:55 <fizzie> There were periods of time when I got close to 1 false positives for half an hour or so. It's possible you've just picked a lot busier time than I.
09:54:08 <shachaf> It's possible.
09:54:17 <shachaf> It *is* ending in 9 hours, after all.
09:54:35 <shachaf> 828, 300 false positives.
09:54:46 <atriq> I have no idea what you are talking about
09:54:53 <shachaf> atriq: stripe-ctf.com
09:54:59 <shachaf> See if you can finish it in 9 hours!
09:55:45 -!- lahwran- has joined.
09:55:45 -!- lahwran- has quit (Excess Flood).
09:56:26 <shachaf> I wonder why it gets false positives.
09:56:44 <fizzie> > logBase 3 1000
09:56:45 <lambdabot> 6.287709822868153
09:56:57 <fizzie> That's not too many passes if you get the set cut to 1/3 every time.
09:57:12 <shachaf> I mean, it could be because the REDACTEDs are already used, but that's kind of strange.
09:57:23 * shachaf didn't even know they were sequential.
09:59:51 <fizzie> shachaf: The process for selecting the REDACTED works so that there's a single global consecutive counter, and then a hash function computed out of the... other things of the target thing except the REDACTED, and a crypto-safe fixed random bit. So you get unpredictable values for things going towards different things, but for a single thing they're sequential; and you get this without having ...
09:59:57 <fizzie> ... to keep multiple incrementing counters.
10:00:11 <fizzie> (So you get false positives when the counter gets incremented due to unrelated things happening.)
10:00:31 * shachaf wonders whether the REDACTIONs mean anything at this point.
10:00:43 <fizzie> (There's a RFC about best-practice in selecting the REDACTED, and it has a summary of how different operating systems do it.)
10:00:46 <fizzie> Probably not. :p
10:01:16 <shachaf> At least that means we have the same solution.
10:01:59 <shachaf> @localtime
10:02:02 <lambdabot> Local time for shachaf is Wed Aug 29 03:01:59 2012
10:02:07 <shachaf> It might be a while before I get to sleep... :-(
10:02:12 <shachaf> Not good for my health.
10:03:09 <fizzie> The... last round of the whole thing goes quite a bit faster, since you don't have to care about potential false positives.
10:03:19 <shachaf> fizzie: Oh, wait a moment, that means I can parallelize it?
10:03:34 <shachaf> If I use a second REDACTED on a second REDACTED?
10:03:52 <shachaf> Or not, I guess, if there's a global counter.
10:05:39 <fizzie> I... suppose you could, theoretically, if you kept the attempts in sync and looked at the largest difference, but it sounds a bit complicated, and of course a single false-positive would then ruin both (or all) the simultaneous parallel attempts.
10:06:33 <shachaf> OK, doing pass 3 of round 1.
10:06:47 * shachaf could have automated this a lot more.
10:07:40 <fizzie> I didn't automate my thing a whole lot, there was a lot of manual clickery and number-copying involved. On the other hand, I did have time to waste, too.
10:07:54 <fizzie> I had a rather manual approach to the previous CTF's somewhat-similar thing too.
10:08:25 <fizzie> In that I only had a thing to do a single round, and then tweaked that to do more.
10:08:41 <fizzie> IIRC it had quite a long flag too, longer than this.
10:08:46 <shachaf> Yes.
10:08:56 <shachaf> I did a half-shell half-C thing.
10:09:17 <shachaf> Did you have a deterministic or non-deterministic solution for that one?
10:09:52 <fizzie> Deterministic, based on an almost-filled pipe that blocked at just the right '.'-write.
10:09:58 <shachaf> That was mine also.
10:10:13 <shachaf> kmc used timing but he says that was pretty tricky.
10:10:26 <shachaf> Some people used rlimits.
10:11:03 <fizzie> I've seen that people have put solution-tutorials online, but haven't bothered comparing mine with them.
10:11:34 <shachaf> I went to the Stripe-meetup-thing about it.
10:11:47 <fizzie> It would've been a bit far from here.
10:12:28 <shachaf> kmc went, and he lives >4000km away!
10:12:45 -!- lahwran| has joined.
10:14:49 <shachaf> Hmm, this is strange.
10:15:16 <shachaf> I'm getting 3 for X, 2 for Y, and a weird number for Z.
10:15:37 <shachaf> Z is consistently getting strange numbers and X is consistently getting 3.
10:16:02 <fizzie> That's kinda weird; I didn't see any particular Z's.
10:16:18 <shachaf> Oh, never mind.
10:16:28 <shachaf> It's because I was consistently testing Z after X.
10:17:49 <shachaf> OK, time to add a little bit of autoamtion.
10:18:01 <fizzie> I ran my tests by sending each number twice, and looking only at the diff of those two, which is I guess a bit subtimal in terms of the total number of requests. (But it's asymptotically the same, so who cares, right?)
10:19:10 <shachaf> At this hour of night, even I care about constant factors.
10:23:40 <FreeFull> REDACTED REDACTED REDACTED REDACTED REDACTED
10:34:44 <fizzie> FreeFull: I totally agree.
10:47:11 -!- Arc_Koen has joined.
10:51:26 <shachaf> Weird, I'm getting a Z again.
10:51:42 <shachaf> Ah, there we go.
10:52:34 <shachaf> Round 3.
11:05:32 <fizzie> "Round 3... Fight!"
11:06:01 <shachaf> It's amazing how much difference a tiny bit of automation makes.
11:08:20 -!- astronick has joined.
11:12:21 -!- Phantom_Hoover has joined.
11:13:49 <shachaf> fizzie: Perhaps the lock thing would make it unparallelizable anyway.
11:48:42 -!- astronick has left ("Leaving").
11:49:06 -!- MoALTz has joined.
11:51:05 -!- Concreto has joined.
11:57:07 -!- Concreto has quit (Quit: Leaving...).
11:58:11 -!- Concreto has joined.
11:59:42 -!- oerjan has joined.
12:03:20 <Arc_Koen> atriq: I think the interpreter is working now
12:03:27 <atriq> Brilliant!
12:03:38 <atriq> Now we just need to write some programs, heh
12:03:42 * oerjan notes a lot of misspelling of !bf_txtgen in the logs
12:03:42 <Arc_Koen> though I haven't tested it yet so there probably are some errors in it
12:04:46 <Arc_Koen> let's test it on an empty program first
12:05:44 <fizzie> oerjan: It's noerjan wonder, since the Java class is called "textgen".
12:05:55 <oerjan> OKAY
12:06:15 <Arc_Koen> wouuuuuuh
12:06:31 <fizzie> fungot: bf_TEXGUN Hello, wodlr!
12:06:32 <fungot> fizzie: k., letter to. on submerged reefs. areas :) subsidence and :) elevation. in descending from/ mountains :) borneo.
12:06:32 <Arc_Koen> empty fueue: input a character, then segmentation fault
12:06:42 <Arc_Koen> half the work already :p
12:06:45 <oerjan> Arc_Koen: promising
12:06:55 <Arc_Koen> (it didn't output it though)
12:07:58 * oerjan suddenly realizes efficient fueue probably needs garbage collection of some kind
12:08:24 <Arc_Koen> I heard a lot about garbage collection since I joined this channel, but I still have no idea of what it could mean
12:08:34 <oerjan> YOU ARE DOOMED
12:09:21 <oerjan> it means that data structures get automatically freed when no longer referred to. automatic in ocaml, quite awkward in C.
12:09:25 <atriq> I'm not sure what garbage there would be to collect. It's a queue that slides about
12:09:39 <atriq> IT WILL TRAVERSE YOUR MEMORY
12:09:49 <oerjan> atriq: : copies things. you can construct blocks on the fly.
12:10:05 <oerjan> so blocks, basically.
12:10:10 <Arc_Koen> hmm, well, now that you mention it, I probably didn't bother to empty the queue after meting the "halt" function
12:10:40 <oerjan> ...garbage collection isn't necessary when halting, the os frees your memory anyhow.
12:11:09 <oerjan> it's necessary for long-running programs that create a lot of temporary structures
12:11:31 <Arc_Koen> yes I'm glad the os has been here to stop the computer from crashing since I started programming
12:11:48 <fizzie> But a disk-eating hard crash is how you learn!
12:12:03 <Arc_Koen> (it didn't completely stop the rm -Rf / I tried once, though)
12:12:22 <oerjan> ...
12:12:46 <Arc_Koen> what?! I was thinking "no way I can destroy everything that easily"
12:13:02 <oerjan> i guess you learned.
12:13:12 <fizzie> I am become Death, the destroyer of worlds.
12:13:23 <oerjan> although i think there's a failsafe on / i particular nowadays.
12:13:29 <oerjan> *in
12:13:36 <fizzie> oerjan: Better try it out to be sure.
12:13:45 <Arc_Koen> yes, the computer still works well
12:13:59 <Arc_Koen> and half the things that were on it still are
12:14:11 <fizzie> (man rm: --no-preserve-root: do not treat `/' specially / --preserve-root: do not remove `/' (default).)
12:14:43 <oerjan> fizzie: fortunately i don't have root access on my linux account.
12:15:06 <fizzie> I suppose you could as easily convince a person willing to rm -rf / to add a --no-preserve-root option too.
12:15:09 <Arc_Koen> it's like the computer has been designed to be operated by a human
12:15:32 <Arc_Koen> (and it's very mean from you to have mentionned that --no-preserve-root option in front of me)
12:16:43 <fizzie> "GNU rm refuses to execute rm -rf / if the --preserve-root option is given, which has been the default since version 6.4 of GNU Core Utilities was released in 2006."
12:16:47 <fizzie> That's not so old.
12:17:12 <fizzie> We've got a system-wide default alias of rm to "rm -i" here at work.
12:18:17 <fizzie> I suppose the prototypical absent-minded professors were deleting their important files all the time.
12:18:35 -!- itidus21 has joined.
12:19:30 <Sgeo> What about rm -rf /*
12:19:31 <Sgeo> ?
12:20:08 <oerjan> Sgeo: then you're on your on.
12:20:20 <oerjan> sadly sulking in the corner.
12:22:34 -!- boily has joined.
12:24:04 -!- lahwran| has changed nick to lahwran.
12:24:05 -!- lahwran has quit (Changing host).
12:24:06 -!- lahwran has joined.
12:33:07 -!- MoALTz has quit (Ping timeout: 256 seconds).
12:41:36 <fizzie> That's probably not special-cased, no. Especially since the rm will only see the actual files in /.
12:42:31 * itidus21 delivers some cake to the sad sulking corner.
12:43:08 <itidus21> the postman's protocol is just to leave the cake at the location regardless of whether noone is there
12:44:17 <oerjan> i foresee some even sadder sulking when someone finds a moldy cake.
12:44:38 <oerjan> (nah, there are people there all the time)
12:46:42 <itidus21> the cake also contains an address where another cake can be found
12:47:02 <fizzie> A cake*, then.
12:47:30 <itidus21> i guess it's {cake, cake*}
12:47:44 <itidus21> uhhh
12:47:46 <itidus21> no i mean
12:47:57 <fizzie> But if cake is {cake, cake*}, that's very confusing.
12:48:00 <itidus21> i guess it's cakebox{cake, cakebox*}
12:48:08 <fizzie> That sounds reasonable.
12:48:15 <itidus21> yay!
12:48:51 <itidus21> although my notation is not a real notation
12:49:31 <itidus21> or, is it
12:50:03 <Sgeo> WTF
12:50:04 <Sgeo> "[Hot] How to tweet from Rebol in One line (using Twitter API)!"
12:50:25 <Sgeo> (Which amounts to using a line of code to set up some script that the person who wrote that wrote)
12:50:33 <Sgeo> And then tweet "Hello World!"
12:50:41 <Sgeo> That's... kind of lame
12:54:44 <boily> aaaaaaaurgh. pentadactyl not compatible with firefox 15. *grmbl* *rant* *not happy*
12:58:12 <fizzie> They don't really seem to be gaining on Chrome all that much. They're at 15, Chrome is at 21. A year ago, they were at 6, and Chrome was 13.
12:58:16 <fizzie> Still, I suppose it's progress.
12:59:29 <Sgeo> What happens when Firefox wants to redo everything and break compatibility with stuff?
13:03:00 <Arc_Koen> yeaaaaaaah
13:03:10 <Arc_Koen> atriq: it works
13:03:15 <Arc_Koen> with program hello world
13:03:17 <fizzie> Hey, FF's "Show PDF inline" is targeting FF16. That's soon.
13:03:24 -!- Concreto has quit (Read error: Connection reset by peer).
13:03:55 <Arc_Koen> so the program is 72 blablablaasciihelloworld 100 H
13:04:04 <Arc_Koen> and the output is: Hello worldAbort trap
13:08:25 <oerjan> now try ):[72 blablablaasciihelloworld 100 10 ):]
13:10:18 <Arc_Koen> it works properly now
13:10:24 <fizzie> All Fueue problems seem so sad.
13:10:37 <fizzie> ):
13:10:47 <fizzie> Programs, not problems.
13:10:50 <Arc_Koen> there was just an (obvious) error in the "deletetop" function so the numbers were not really deleted
13:11:47 <Arc_Koen> however there should still be a bug with the input (apparently using scanf is bad, so I used fgets instead, but apparently there is still a problem, so I'll try something else)
13:12:18 <oerjan> isn't there a getc()
13:12:58 <Arc_Koen> (for my defense, this is my first program in c for years)
13:13:20 <oerjan> or is it getchar()
13:14:03 <Arc_Koen> both exist and are in the same man entry apparently
13:14:07 <oerjan> hm fueue has no EOF detection
13:14:37 <Arc_Koen> eof ? it has 'H' and it has infinite cat loop on empty queue
13:14:58 <oerjan> i'm talking about EOF in the _input_
13:15:16 <oerjan> you cannot do anything useful after the input has ended
13:15:29 <Arc_Koen> how so?
13:15:57 <oerjan> ...there is no character to read, so the program either halts or loops indefinitely
13:16:10 <oerjan> i guess you could read -1
13:16:26 <oerjan> which those C functions do, iirc
13:17:11 <oerjan> or well that may not be quite portable.
13:18:47 <Arc_Koen> I'm not sure what you mean... is this what happens if the user enters an eof character?
13:19:57 <oerjan> Arc_Koen: it's what happens if stdin ends. it could be piped from a file.
13:20:13 <Arc_Koen> oh, ok
13:20:41 <oerjan> or the user might push ^D on start of line, in most unix-like terminals
13:21:20 <Arc_Koen> well the only reason why I would push ^D is if I want the execution to brutally end
13:21:29 <oerjan> no that's ^C
13:21:41 <Arc_Koen> (I usually try both)
13:22:13 <oerjan> ^D ends the input (on start of line). afaik it has no effect if input isn't being read
13:22:26 <Arc_Koen> oh, that would explain a lot of things
13:23:40 <oerjan> also this is in the usual terminal mode. editors and such will probably choose a mode that they can handle it themselves.
13:24:50 <Arc_Koen> ah, getchar seems to be working
13:25:09 <Arc_Koen> that is, if I try it on the empty queue
13:25:25 <Arc_Koen> it waits for me to input a line
13:25:26 <oerjan> it seems pushing ^D _twice_ works even if not on start of line.
13:26:09 <oerjan> Arc_Koen: the waiting for a whole line is part of the input buffering btw, which can be set separately.
13:26:10 <Arc_Koen> if I input "A" and press enter, it ouputs the A, then it inputs the \n, outputs the \n, and then only wait for a new input
13:26:26 <oerjan> but it's the usual setting for terminal input
13:26:54 <Arc_Koen> ok so I can input future characters
13:27:03 <oerjan> wat
13:27:13 <Arc_Koen> well, if I run the program on the empty queue
13:27:23 <Arc_Koen> it's an infinite cat loop, right?
13:27:44 <oerjan> we agreed on that yeah
13:28:00 <Arc_Koen> if I use getchar() to get the input, it waits for me to input something
13:28:08 <Arc_Koen> and I can input a whole line
13:28:16 <Arc_Koen> and it doesn't wait for me until the whole line has been read
13:28:36 <oerjan> yep. i'm just saying that's not specific to getchar().
13:28:58 <fizzie> oerjan: EOF is only guaranteed to be negative, not exactly -1, at least by C.
13:29:06 <fizzie> -1 is what it usually is, though.
13:29:12 <oerjan> fizzie: i thought something like that
13:29:36 <oerjan> although i was wondering if it could also be positive larger than max char
13:29:38 <Arc_Koen> so should I just replace getchar by a function that calls getchar, then clears the input buffer?
13:30:01 <Arc_Koen> (for the record if my input is "ABC^D" it only reads ABC before waiting for me)
13:30:02 <fizzie> I thought this thing was in OCaml, not C.
13:30:07 <Arc_Koen> (so the ^D isn't read at all)
13:30:08 <oerjan> Arc_Koen: no, then you lose the rest of the line!
13:30:23 <Arc_Koen> well that's the idea
13:30:48 <Arc_Koen> otherwise when I type "A\n" the next character will always be \n
13:31:00 <fizzie> That's what it should be.
13:31:00 <oerjan> Arc_Koen: but that's not the behavior most would expect. if someone pipes a file into your program, it should print all of the file
13:31:09 <Arc_Koen> oh, okay
13:32:45 <Arc_Koen> uho
13:32:46 <oerjan> Arc_Koen: ^D not on the start of line seems to cause just that much to be read yes.
13:33:02 <oerjan> and pushing it once more then ends input
13:33:16 <Arc_Koen> for whatever reason I recompiled the file and tried again and ^D not on the start of line makes an infinite loop of "printing question mark"
13:33:28 <oerjan> huh
13:34:01 <fizzie> oerjan: EOF is returned also by fscanf, which might legally be larger than UCHAR_MAX.
13:34:22 <oerjan> fizzie: ok
13:34:35 <oerjan> Arc_Koen: hm that's curious
13:34:44 <fizzie> (Though I'd hate to see a program with more than 255 elements in a scanf format string.)
13:35:07 <Arc_Koen> oerjan: one moment ago my program contained a lot of printf functions which were only there to tell me what was happening, so that I know when errors occurred
13:35:24 <Arc_Koen> since it worked fine, I removed them all, recompiled, and tried again
13:35:30 <oerjan> aha
13:35:33 <Arc_Koen> and then it had that odd behaviour
13:36:46 <fizzie> oerjan: If the "read character" Fueue 'operation' returns -1 for EOF, then the empty-program cat will in fact print an infinite amount of -1's after the actual contents.
13:36:49 <oerjan> Arc_Koen: you might want to do a fflush(stdout) before the getchar()
13:36:50 <Arc_Koen> anyway, let'ss write a "string fueue program to queue" function now so that the interpreter can be truly useful
13:37:05 <Arc_Koen> uh, ok
13:37:10 <Arc_Koen> no idea why though
13:37:19 <oerjan> i'm not sure if that's related, but it shouldn't hurt
13:37:42 <fizzie> The fflush might be nice for all those Fueue programs that print a prompt like "> " and then wait for input.
13:37:56 <oerjan> yep
13:38:20 <oerjan> it tends to make interactive programs behave better
13:38:23 <fizzie> But an infinite loop of printing ? sounds like the expected behaviour.
13:38:46 <oerjan> fizzie: oh if it reaches EOF, right
13:38:49 <Arc_Koen> the infinite ? is still there
13:39:06 <Arc_Koen> funny thing is, if I write "H^D"
13:39:07 <oerjan> Arc_Koen: yeah that's probably because reading EOF turns into that
13:39:10 <fizzie> oerjan: If you don't provide an infinite amount of input, it will, eventually.
13:39:28 <Arc_Koen> it actually writes "HHD" (the second H must be the output from the program, but the ^has disappeared)
13:40:22 <Arc_Koen> I mean, before I removed all the error printf, I could use ^D as a way to end the input without an extra \n
13:40:22 <oerjan> Arc_Koen: oh right. that's probably an artifact of how ^D works - it doesn't actually move the cursor
13:40:49 <Arc_Koen> now the first ^D just writes that D on the screen
13:40:50 <oerjan> Arc_Koen: you still can, just press it twice
13:41:09 <Arc_Koen> yep, but when I do, it launches the infinite ?
13:41:21 <fizzie> The first ^D will also get your input to the program, as shown by the fact that it printed the H.
13:41:30 <Arc_Koen> oh, you're right
13:41:37 <Arc_Koen> it works fine then
13:41:55 <oerjan> we should ask atriq what he wants to happen when EOF is read
13:42:14 <fizzie> A Fueue cat that properly halts on EOF (assuming EOF = read -1) sounds like a nice little exercise for you folks, too.
13:42:15 <oerjan> atriq: WHAT DO YOU WANT TO HAPPEN IN FUEUE WHEN EOF IS READ
13:42:26 <atriq> Implementation dependant!
13:42:31 <atriq> Possibly 0!
13:42:52 <fizzie> But then you can't distinguish between '\0' and EOF!
13:43:12 <oerjan> atriq: um -1 _is_ more useful i think.
13:43:54 <oerjan> although neither allows the empty program to be a properly ending cat
13:43:56 <fizzie> Or '\1' and EOF, if that was in fact 0!!
13:44:12 <oerjan> that may be too much to ask for, though
13:44:47 <atriq> Probably -1, then
13:45:04 <atriq> I've never really thought about EOF
13:45:09 <atriq> In any of my esolangs
13:45:44 <Arc_Koen> that may be because they're esolangs
13:46:00 <fizzie> And esolangs NEVER END.
13:46:12 <oerjan> 'struth
13:46:24 <fizzie> It stretches into the distance like a 30-minute Kraftwerk song.
13:46:29 <fizzie> (A quote.)
13:48:55 <oerjan> hm how in the world would one handle keeping a fueue program doing nothing for one round, and then managing to handle a character read afterwards...
13:49:18 <oerjan> _without_ destroying the character immediately.
13:50:10 <oerjan> i'm not sure that's actually possible.
13:51:01 <oerjan> this might be a problem.
13:52:07 <oerjan> hm i see a very roundabout possibility... it requires copying a block as many times as the character read
13:53:06 <oerjan> rather inefficient, mind you.
13:54:37 <oerjan> oh and it probably cannot handle a negative EOF representation.
13:55:57 <atriq> You could add something first
13:56:48 <oerjan> i don't see a way to add something that can be kept stable for the "doing nothing for one round" part
13:57:15 <oerjan> the problem is, if + 1 doesn't add immediately, the 1 gets printed
13:57:30 <atriq> Oooh
13:57:39 <atriq> I have designed one evil esolang
13:58:25 <oerjan> for normal use, you can fix that by using + )[1] instead, but that doesn't count as doing nothing to trigger input...
13:59:49 <Arc_Koen> atriq: I'd actually be relieved if you could prove fueue was not turing-complete, then add a few functions that would make it both turing complete and usable
14:00:15 <oerjan> oh i do think it is turing-complete. it just has some trouble handling input.
14:00:17 <atriq> I have no idea if it's Turing-Complete or not
14:00:31 <oerjan> especially EOF.
14:00:37 <atriq> I'm pretty sure it's more than linear-bounded
14:00:39 <Arc_Koen> on the other hand if you can prove it's turing-complete we're gonna have the hell of a time programming with it
14:00:51 <atriq> And it's sneakily not a PDA
14:01:13 <atriq> If it's not Turing-Complete, it's something nobody's ever thought of.
14:01:54 <Arc_Koen> you'd be surprised by what people tend to think of
14:03:55 <oerjan> )$!![...] is the way i see to handle non-negative input. it makes n copies of the [...] block where n is the character read, then executes the first copy, and surely something can be put for ... to reconstruct the character in a more useful form from that.
14:04:34 <oerjan> inefficient, but it ought to work.
14:05:00 <atriq> The number will end up behind the block, slide to the front of the queue, and get printed
14:05:16 <oerjan> um no the number should end up in the !! spot...
14:05:44 <oerjan> i mean for the !! to be the last thing executed before the do-nothing-cycle
14:06:05 <atriq> Oh, I see
14:07:16 <atriq> If I changed the language so printing was explicit, it would be so much easier to work with
14:07:44 <atriq> Less fun, though
14:08:39 <oerjan> heh
14:09:20 <atriq> You can tell I play Dwarf Fortress.
14:09:40 <oerjan> OKAY
14:13:09 <atriq> ):[):] is a Fueue infinite loop, I believe
14:13:09 <Arc_Koen> oh, so the !! nop is actually useful
14:13:52 <oerjan> Arc_Koen: heh right it's just about the shortest
14:14:14 <oerjan> although the second ! can be replaced by other things
14:14:52 <Arc_Koen> "doing nothing is doing something" could be Fueue's slogan
14:15:28 <oerjan> sounds zen, or something
14:16:04 <oerjan> atriq: already discovered :)
14:16:10 <atriq> :)
14:16:25 <oerjan> it's almost like underload :^
14:16:36 <oerjan> * ): is
14:17:09 <atriq> I think Underload was the main inspiration for Fueue
14:18:33 <Arc_Koen> where does the F come from?
14:19:27 <oerjan> http://www.mezzacotta.net/owls/?comic=476
14:20:26 <Sgeo> Should I watch 12 Angry Men instead of sleeping?
14:20:32 <oerjan> Gregor: you should see that i think
14:21:13 <Gregor> oerjan: Hyuk.
14:21:48 <oerjan> critics.
14:32:22 <oerjan> argh another quadruple sneeze
14:35:54 <fizzie> I think that's commonly called a 'queeze'. There's also the relatively common 'treeze', and the very rare 'quinteeze'. (Disclaimer: lie.)
14:39:06 <oerjan> shocking
15:05:27 <Arc_Koen> oerjan: I think it's all working now, do you have some interesting fueue program for me to test?
15:07:10 <oerjan> well have you tested the ):[72 blablablaasciihelloworld 100 10 ):] program yet?
15:07:54 <Arc_Koen> (should I add a H after the 10?)
15:08:00 <oerjan> no
15:08:05 <oerjan> most definitely not
15:08:18 <Arc_Koen> segfault :(
15:08:18 <oerjan> also keep ^C handy :)
15:08:22 <oerjan> oops
15:08:40 <Arc_Koen> sooooo let's add a lot of printf to see where this segfault comes from
15:08:45 <oerjan> NB: blablablaasciihelloworld is meant to be whatever you used in the previous one
15:08:51 <Arc_Koen> yup
15:09:01 <Arc_Koen> 72 101 108 108 111 32 119 111 114 108 100 10
15:10:07 <oerjan> hint: make a DEBUG macro so you can just disable it without removing all the places you use it
15:10:40 <oerjan> or whatever, it's possible the name DEBUG is reserved
15:10:41 <Arc_Koen> ouh, nice
15:11:21 <Arc_Koen> actually I'm pretty sure the segfault comes from the quare brackets
15:11:31 <Arc_Koen> do you have a program without them?
15:11:39 <fizzie> There are also these things called debuggers, they can be handy tools to learn.
15:11:50 <oerjan> um i was sort of trying to give you a loop to test...
15:11:59 <oerjan> and you cannot do that without blocks
15:12:21 <oerjan> but anyway we can test other pieces first.
15:13:17 <Arc_Koen> fizzie: what would your reaction be if I told you I was writing a C program using TextEdit and counting the lines manually when gcc tells me there's an error at a certain line?
15:13:55 <fizzie> Arc_Koen: Well, it's no skin off my nose. (Is that an idiom?)
15:14:40 <oerjan> Arc_Koen: * - - 4 * * 2 2 + 2 2 should print a @ before becoming cat
15:15:07 <fizzie> Arc_Koen: Just as an interesting tip, you can type "command-L" and type in a line number; it will jump to that line.
15:15:17 <fizzie> As far as I know, there's no way to get visible line numbers, though.
15:15:40 <oerjan> oh hm
15:15:45 <Arc_Koen> thank you sooooo much fizzie
15:15:52 <Arc_Koen> oerjan: it does nothing, then becomes a cat
15:15:56 <oerjan> darn
15:16:08 <Arc_Koen> oh, wait
15:16:55 <Arc_Koen> ok, random bug to be fixed later: if a program ends with a number, that number disappears
15:17:09 <Arc_Koen> in the meantime let's end the program with a whitespace
15:17:22 <oerjan> huh
15:17:33 <Arc_Koen> it does indeed print an @
15:18:50 <oerjan> / 100 3 should print ! or was that "
15:19:00 <oerjan> > '\33'
15:19:01 <lambdabot> '!'
15:19:38 <fizzie> > chr 33
15:19:39 <lambdabot> '!'
15:19:44 <fizzie> What, the character constants are decimal, not octal?
15:19:49 <oerjan> yep
15:19:54 <fizzie> How... modern.
15:20:00 <Arc_Koen> befunge are decimals too
15:20:19 <fizzie> Befunge doesn't have escaped characters, as far as I know.
15:20:25 <oerjan> ) $ % 100 [ H ] should go into a cat loop, ) $ % 0 [ H ] should halt
15:20:36 <oerjan> oh wait you had trouble looping
15:20:43 <oerjan> er blocking
15:21:00 <Arc_Koen> it's ok, I have to fix it anyway
15:21:05 <oerjan> '\0o55'
15:21:07 <oerjan> > '\0o55'
15:21:09 <lambdabot> <no location info>:
15:21:09 <lambdabot> lexical error in string/character literal at chara...
15:21:15 <oerjan> no such luck
15:21:18 <oerjan> > 0o55
15:21:19 <lambdabot> 45
15:22:11 <fizzie> > ['\o55' (chr 0o55)]
15:22:12 <lambdabot> Couldn't match expected type `t1 -> t'
15:22:12 <lambdabot> against inferred type `GHC.T...
15:22:25 <fizzie> > '\o55'
15:22:26 <lambdabot> '-'
15:22:29 <oerjan> oh right
15:22:32 <fizzie> Tried to be too clever there.
15:22:47 <oerjan> fizzie: you might want a comma
15:22:53 <fizzie> Yes.
15:23:10 <fizzie> It looks like one of those handwavy things.
15:23:15 <fizzie> '\o7'
15:23:32 <fizzie> > '\o7'
15:23:33 <lambdabot> '\a'
15:24:35 <oerjan> Arc_Koen: + 1 65 65 should print AB
15:26:03 <boily> > '\x266a'
15:26:04 <lambdabot> '\9834'
15:26:24 <boily> ~eval '\x266a'
15:26:27 <cuttlefish> Error (1): Could not find module `Data.Numbers.Primes'
15:26:27 <cuttlefish> Use -v to see a list of the files searched for.
15:26:51 <boily> ~eval '\x266a'
15:26:52 <cuttlefish> '\9834'
15:26:58 <boily> meh. figured as much.
15:27:18 <oerjan> > "\x1111111111111"
15:27:19 <lambdabot> <no location info>:
15:27:19 <lambdabot> lexical error in string/character literal at chara...
15:27:48 <oerjan> > "\x111111"
15:27:49 <lambdabot> <no location info>:
15:27:49 <lambdabot> lexical error in string/character literal at chara...
15:27:51 <oerjan> > "\x11111"
15:27:52 <lambdabot> "\69905"
15:28:27 <oerjan> > maxBound :: Char
15:28:28 <lambdabot> '\1114111'
15:28:39 <oerjan> > showHex 1114111 ""
15:28:40 <lambdabot> "10ffff"
15:29:33 <fizzie> > chr (17*0x10000-1)
15:29:34 <lambdabot> '\1114111'
15:29:37 <fizzie> 17 planes and all.
15:31:06 <oklopol> hellooooooon
15:31:06 <atriq> > return 1 2
15:31:07 <lambdabot> 1
15:31:22 <Arc_Koen> haha
15:31:33 <Arc_Koen> oerjan: the [ didn't work because it started an infinite loop
15:31:52 <oerjan> Arc_Koen: well it _was_ supposed to...
15:32:00 <Arc_Koen> no, I mean my string to queue function
15:32:09 <oerjan> ok
15:32:18 <Arc_Koen> it's suppose to call itself on the subprogram
15:32:33 <Arc_Koen> I think it called itself on the [, thus calling itself again immediately
15:32:52 <oerjan> ah.
15:33:06 <fizzie> But, but, but: wasn't all this OCaml?
15:33:15 <oerjan> C.
15:33:20 <fizzie> Yes, but yesterday!
15:33:52 <Arc_Koen> fizzie: I started Ocaml, realized Queue was inadapted, thought "in that case it would be more interesting for me to write it in C, since I haven't written in C for years"
15:33:57 <fizzie> I suppose the Oaml dropped off, leaving only C.
15:34:10 <Arc_Koen> and after that you guys told me about Queue.transfer which solved everything
15:34:15 <Arc_Koen> but let's finish the C version first
15:34:17 <oerjan> ocaml's queue module was too impure
15:34:24 <Arc_Koen> the Ocaml version is probably gonna be much much simpler
15:35:30 <Arc_Koen> uh
15:35:46 <oerjan> i'm not actually sure Queue.transfer solves everything - you still have in-place update and that means : cannot share data if you use the queues for blocks
15:35:53 <Arc_Koen> ok so now it calls itself five times instead of one
15:36:17 <Arc_Koen> I chose to use simple lists for blocks
15:36:38 <Arc_Koen> which is a bit weird since lists are functional stacks
15:37:07 <Arc_Koen> but since blocks are not executed it's ok, I just have to reverse the list when unblocking it
15:37:51 <oerjan> ok
15:38:31 <oerjan> that makes < more efficient, actually
15:48:18 <Arc_Koen> i don't get it
15:49:10 <Arc_Koen> can you help me with http://pastebin.com/hfuAewHu ?
15:49:59 <Arc_Koen> apparently when it encounters a '[' it calls itself back on the first char of the string
15:50:07 <Arc_Koen> when it should calls itself on the char that follows the [
15:51:34 -!- Vorpal has joined.
15:51:45 <Arc_Koen> given the three functions pushval, pushfun and pushblock which create a new item (respectively a number, a function or a block) and push it
15:54:21 <Arc_Koen> my apologies if the code is not clear enough :/
15:54:43 <Arc_Koen> basically it processes the given string using a counter
15:54:51 <oerjan> Arc_Koen: um shouldn't the k++ in line 56 be (*k)++ ?
15:55:07 <Arc_Koen> oh, crap, yes
15:55:19 <Arc_Koen> that would certainly explain the segfault
15:55:31 <Arc_Koen> though I'm surprised the segfault doesn't happen sooner
15:55:57 <oerjan> also you might want to check that it has read a ] rather than \0 after returning
15:56:12 <Arc_Koen> right
16:01:33 <oerjan> also for the top program that it has ended on \0 rather than ], although that won't cause a segfault.
16:02:30 <Arc_Koen> I don't know the fueue specifications about that :)
16:02:46 <oerjan> i assume that's a syntax error, since the ] would be unmatched
16:03:09 <oerjan> this is pretty much the same as parsing brainfuck [] blocks
16:03:21 <Arc_Koen> yep
16:03:32 <Arc_Koen> but I did that in Ocaml so it was much faster
16:03:39 <oerjan> heh
16:03:47 <Arc_Koen> I mean, faster to write the program
16:04:26 <Arc_Koen> atriq: if a [ is unmatched, are we assuming there is an implicit ] at the end of the program?
16:04:40 <atriq> I think that ought to be an error
16:05:26 <oerjan> you have to check for it regardless, otherwise you run past the \0
16:05:55 <oerjan> whether or not you choose to ignore it after checking
16:06:55 <Arc_Koen> yes
16:12:19 <Arc_Koen> )$%0H halts
16:12:34 <oerjan> oops
16:12:37 <oerjan> oh wait
16:12:40 <oerjan> that's right
16:12:41 <Arc_Koen> )$%0[H] is a cat :(
16:13:02 <oerjan> that's not right
16:13:36 <oerjan> what about )[H] ?
16:13:42 <Arc_Koen> probably the deblock function doesn't work
16:13:45 <Arc_Koen> yes, let's try that
16:14:11 <Arc_Koen> )[H] is a cat as well
16:14:18 <oerjan> darn
16:14:27 <Arc_Koen> all this nonsense wouldn't be happening with ocaml!
16:14:38 <oerjan> *MWAHAHAHAHA*
16:16:52 <oerjan> > '\91'
16:16:53 <lambdabot> '['
16:16:56 <oerjan> > '\90'
16:16:57 <lambdabot> 'Z'
16:17:20 <Arc_Koen> http://pastebin.com/31nVgVtn
16:18:31 <Arc_Koen> oh, I forgot to pop the block
16:22:30 <fizzie> The * in is_empty(*q) is a bit confusing. "Normally" I'd expect that to take a Queue * instead of Queue, too. (Not that it's a problem to pass-by-value it, just that I wouldn't expect that.)
16:22:52 <Arc_Koen> it confuses me too
16:23:20 <oerjan> Arc_Koen: you still aren't using Queue's to store the blocks, right?
16:23:28 <Arc_Koen> yes, I am
16:23:33 <oerjan> oh.
16:23:56 <oerjan> in that case i'm _deeply_ worried about the interaction of copying blocks and mutating them.
16:24:26 <Arc_Koen> http://pastebin.com/T8nURuri
16:25:06 <Arc_Koen> every element in the queue contains an int, a char and a block
16:25:47 <Arc_Koen> two of those three variables are supposed to have their default value (0, 0, or empty), and the third to contain what it has to contain
16:26:15 <oerjan> Arc_Koen: what about a union?
16:26:28 <Arc_Koen> would work exactly the same wouldn't it?
16:26:36 <oerjan> yes, but less space
16:27:01 <Arc_Koen> I figured "I remember there's that union thing, but it still sounds weird and why bother"
16:27:06 <oerjan> anyway this doesn't comfort me until i see how : and < are implemented
16:28:05 <oerjan> if things aren't going to break, _somewhere_ it has to be ensured that Queues aren't shared and mutated at the same time
16:28:32 <Arc_Koen> http://pastebin.com/G3KLDsXw
16:28:52 <Arc_Koen> queues are not supposed to be share
16:29:21 <Arc_Koen> I mean, a queue can either be the main queue, or one block
16:29:44 <Arc_Koen> and ) appends a block to the main queue, then pops the block
16:30:24 <oerjan> and : doesn't share Queue's, even nested ones?
16:30:25 <Arc_Koen> (which made me realise the deletetop function was missing some garbage collection: if the top element contains a block, the queue inside is not freed
16:30:30 -!- soundnfury has quit (Quit: Shooting).
16:30:55 <Arc_Koen> well, I'm pretty sure I wrote the copy function in a way that it doesn't
16:30:58 <Arc_Koen> let's see
16:32:27 <Arc_Koen> http://pastebin.com/g5U2jrSr
16:32:47 <Arc_Koen> copyQueue and copyToken are mutually recursive
16:32:58 <Arc_Koen> so it should copy everything and share nothing
16:33:33 <fizzie> Arc_Koen: That's at least a memory leak right there: c->block = *copyQueue(&(x->block));
16:33:37 <oerjan> ok a deep copy, well that helps.
16:33:53 <fizzie> copyQueue returns a newly-malloc'd Queue, and then you take the contents of that and copy them to the Queue object inside the token.
16:34:04 <oerjan> (it may also be inefficient if large blocks get copied a lot, but them's the breaks)
16:34:05 <fizzie> Any pointers to the just-malloc'd object is lost.
16:35:13 <Arc_Koen> oh, right
16:35:56 <Arc_Koen> memory leaks usually comes the other way around so I did not think about it
16:38:18 -!- ais523 has joined.
16:40:32 <Arc_Koen> )[H] is still an infinite loop cat though
16:42:20 -!- soundnfury has joined.
16:42:35 <itidus21> i just had a fairly trippy idea
16:42:45 -!- augur has quit (Remote host closed the connection).
16:43:18 <itidus21> the idea is 2 or more people are wearing vr goggles
16:43:19 -!- asiekierka has quit (Quit: Connection reset by PO).
16:43:37 <itidus21> and there is a camera to the side.. lets suppose its a tennis match
16:43:49 <itidus21> a tennis match where the players are wearing vr goggles
16:44:04 <Arc_Koen> so they're playing third person?
16:44:08 <itidus21> and.. each player sees in their goggles the image as shown from the camera
16:44:15 <itidus21> yup
16:44:56 -!- asiekierka has joined.
16:45:10 <itidus21> this is what happens when i think too hard while watching third person video games on youtube
16:46:20 <Sgeo> You know about experiments where visual imagry tricks the brain into thinking things about the body?
16:46:28 <itidus21> in general its a bad idea..
16:47:47 <atriq> How about each player sees from a camera located on the other player's head!?
16:47:50 <Arc_Koen> many people are good at third-person video games, so i'm guessing the third-person real life could work as well
16:48:06 <itidus21> except that eyes are best as they are...
16:48:48 <itidus21> despite steve mann's best intentions, it's really not a good thing for healthy people to avoid looking at things directly
16:50:20 <itidus21> well it leads to a dependance on the cameras too
16:50:25 <itidus21> and the cameras can lie
16:50:51 -!- kinoSi has quit (Read error: Connection reset by peer).
16:51:19 -!- kinoSi has joined.
16:51:53 <itidus21> they are mechanical/electrical, and have all the inherent drawbacks which leads the internet to be full of forums of people having endless troubles with mechanical/electrical things
16:52:00 <atriq> What if the cameras switch to a Toyata advert?
16:52:05 <itidus21> oh
16:53:02 <atriq> Well, this idea isn't working
16:53:27 <itidus21> atriq: you could pay your taxes by watching ads :D
16:54:42 <itidus21> so it seems the more sane i become, the more insane i become, if my comments here can be regarded as insane
17:13:56 <Arc_Koen> atriq: what if / is followed by two numbers but the second is a zero
17:14:14 <Arc_Koen> does it result in a Division_by_zero kind of error, or is the / sent back?
17:14:19 <atriq> Arc_Koen, presumably a divide by 0 error
17:14:27 <Arc_Koen> ok
17:15:48 <fizzie> atriq: It's funny how it's your language, but you're still all "presumably foo" about it.
17:16:00 <atriq> I have no idea what I was doing when I made it
17:16:10 <atriq> All my languages are pretty vague, I'll be honest
17:16:24 * oerjan notes that besides wrapping in )[ ... ], another way to delay execution is to strategically sprinkle with ~ ; this is often shorter.
17:16:25 -!- augur has joined.
17:16:44 <Arc_Koen> nice
17:17:14 <oerjan> as long as there are not too many spots that need to be sprinkled
17:18:13 <oerjan> ~[ ... ]~) can delay three steps as long as there isn't a block following
17:18:13 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
17:18:21 <oerjan> thank you cuttlefish
17:18:40 <fizzie> Incidentally, did you know: glibc removed the 'gets' declaration from stdio.h when _GNU_SOURCE is defined, i.e. in -std=gnu90/gnu99 modes. (And in C11 mode, but that's just following the standard.)
17:19:02 <fizzie> (Predictably quite a lot of things broke.)
17:19:37 <oerjan> only things that deserved it, i assume
17:22:05 -!- augur has quit (Ping timeout: 268 seconds).
17:23:26 -!- MoALTz has joined.
17:23:38 <fizzie> oerjan: Quite a few things broke because gnulib headers included in them had the line _GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead"); as an attempt to get a warning if some developer had accidentally used gets.
17:23:51 <fizzie> oerjan: With the declaration missing, those just-in-case warnings also broke.
17:23:56 <oerjan> XD
17:24:28 -!- impomatic has joined.
17:24:45 <fizzie> /* Assume it is always declared, since it is required by C89. */ is what the comment above the _GL_WARN_ON_USE says.
17:25:05 <fizzie> Goes on to show that when you assume...
17:25:15 <oerjan> so is there a variant of _GL_WARN_ON_USE that won't assume that?
17:25:25 <Arc_Koen> so basically people are falling because someone planted a "mind the gap" sign and someone else filled the gap?
17:25:50 <fizzie> I don't think there is. I'm not sure if it's possible to write.
17:26:10 <fizzie> A sed -i '/gets is a security hole/d' command apparently fixes most of the problems.
17:33:08 <atriq> @unmtl MaybeT (StateT IO Integer)
17:33:09 <lambdabot> Plugin `unmtl' failed with: `MaybeT (StateT IO Integer)' is not applied to enough arguments, giving `/\A. IO -> Integer (Maybe A, IO)'
17:33:23 <atriq> @unmtl MaybeT (StateT Integer IO)
17:33:23 <lambdabot> Plugin `unmtl' failed with: `MaybeT (StateT Integer IO)' is not applied to enough arguments, giving `/\A. Integer -> IO (Maybe A, Integer)'
17:33:44 <atriq> @unmtl MaybeT (StateT Integer IO) Double
17:33:44 <lambdabot> Integer -> IO (Maybe Double, Integer)
17:34:04 <atriq> That is...
17:34:09 <atriq> That is PRECISELY what I'm after
17:34:12 <atriq> Except not Double
17:34:51 <atriq> @unmtl MaybeT (StateT Integer IO) (Seq Char)
17:34:51 <lambdabot> Integer -> IO (Maybe (Seq Char), Integer)
17:59:18 <fizzie> "The kings came to the agreement between themselves that they would cast lots by the dice to determine who should have this property, and that he who threw the highest should have the district. The Swedish king threw two sixes, and said King Olaf need scarcely throw. He replied, while shaking the dice in his hand, "Although there be two sixes on the dice, it would be easy, sire, for God ...
17:59:24 <fizzie> ... Almighty to let them turn up in my favour." Then he threw, and had sixes also. Now the Swedish king threw again, and had again two sixes. Olaf king of Norway then threw, and had six upon one dice, and the other split in two, so as to make seven eyes in all upon it; and the district was adjudged to the king of Norway."
18:00:06 <fizzie> Sounds plausible.
18:00:30 <oerjan> it rings a bell.
18:01:44 <fizzie> It was a quote from: Heimskringla or The Chronicle of the Kings of Norway - Saga of Olaf Haraldson: Part III - Online Medieval and Classical Library Release #15b.
18:02:30 <oerjan> hey olaf was a saint, clearly such things happened to him all the time.
18:03:08 <fizzie> Oh yes, saints are well-known cheaters.
18:03:51 <fizzie> Apparently the Swedish king was also an Olaf, if I read this right.
18:04:23 <oerjan> not from what you quoted anyhow
18:04:42 <fizzie> It doesn't mention the name.
18:05:05 <fizzie> But before that there's stuff like "Olaf the Swedish king was then remarkably mild in manner, and agreeable to talk with."
18:05:25 <fizzie> Though it speaks of the Swedish kings in plural.
18:05:28 <fizzie> Maybe they had a couple.
18:05:32 <fizzie> I'm not very historic.
18:06:47 <fizzie> As in, "Thereafter ambassadors were sent to Norway to King Olaf, with the errand that he should come with his retinue to a meeting at Konungahella with the Swedish kings, and that the Swedish kings would there confirm their reconciliation. -- There the Swedish kings also came; --"
18:06:54 -!- donmarquis has joined.
18:08:52 <fizzie> "Then said Thorvid the Stammerer, 'Atte -- quarrel -- some -- greedy -- jealous -- deceitful -- dull.'" An appropriate name there.
18:08:55 <oerjan> ok there was one in about the right time http://en.wikipedia.org/wiki/Olof_Sk%C3%B6tkonung
18:09:02 <oerjan> *at
18:09:05 <fizzie> This was apparently around year 1019.
18:09:15 -!- augur has joined.
18:10:47 <fizzie> That Olaf seems to be a saint too.
18:10:53 <fizzie> "According to a legend he was martyred at Stockholm after refusing to sacrifice to pagan gods. He's venerated as a saint in the Catholic Church."
18:11:15 <fizzie> I suppose Olaf of Norway was saintier.
18:11:19 <Sgeo> I feel like I should be ashamed that REBOL's clipboard stuff actually makes me happy
18:11:32 <donmarquis> topic pls :) ?
18:11:54 <Sgeo> `welcome donmarquis
18:12:04 <HackEgo> donmarquis: 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:12:07 <donmarquis> hi Sgeo
18:12:25 <oerjan> fizzie: the saintiest!
18:12:49 <donmarquis> saint talk ?
18:13:01 <fizzie> oerjan: The daintiest saint.
18:13:21 * oerjan cleaves fizzie skull with an axe
18:13:29 <oerjan> DON'T YOU SPEAK LIKE THAT
18:13:41 <fizzie> oerjan: I see Norwegians have strong feelings about this Olaf.
18:14:17 <fizzie> (Also we're not really helping the "other kind of esoteric" confusion factor with all the sainty stuff.)
18:14:18 <oerjan> trondheim has a yearly olaf festival in july/august
18:15:00 <fizzie> I could even guess an axe might've been involved in that d6-gives-a-seven throw.
18:15:48 <oerjan> a very small one.
18:18:03 -!- donmarquis has quit (Quit: Leaving).
18:19:37 -!- donmarquis has joined.
18:25:38 -!- augur has quit (Remote host closed the connection).
18:31:51 -!- zzo38 has joined.
18:37:29 -!- Phantom__Hoover has joined.
18:40:18 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
18:53:43 -!- ais523 has quit.
18:54:10 <oerjan> Arc_Koen: )$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]
18:55:55 <oerjan> atriq: ^
18:56:22 <zzo38> The reason I asked about LLVM with different length of bytes is, I wanted to invent a virtual machine with 32-bit bytes, 18-bit addresses, bank switching, etc
18:57:12 <zzo38> In addition I wanted to allow it to work with LLVM.
18:59:05 * oerjan would be cackling evilly if he felt better
19:01:47 <boily> oerjan: don't you have a +3 axe of evil cackling with you?
19:01:53 <oerjan> (*cough*)
19:02:04 <oerjan> no but...
19:02:09 * oerjan swats boily -----###
19:03:05 * boily blocks with his penguin plushie of protection!
19:09:41 <quintopia> those penguin plushies are heavy
19:09:45 <quintopia> thats a -2 to speed
19:09:59 <quintopia> roll a reflex check
19:12:56 <kmc> zzo38: I am really interested in your LFSR configurable tap instruction pointer
19:13:02 <kmc> you should put together a simulator for that
19:13:17 <kmc> "esolang or billion dollar company"
19:13:45 <quintopia> i'd play that game
19:13:49 -!- donmarquis has quit (Quit: Leaving).
19:14:14 <zzo38> kmc: Yes perhaps I could make a simple simulator for that. What is "esolang or billion dollar company"? Do you mean the company that makes this computer? Perhaps it can be both, and perhaps a company can have such a name, too
19:16:44 <boily> ~dice 20
19:16:45 <cuttlefish> 9
19:17:12 <boily> failed my check. I accept with gratitude the metalness of oerjan's axe.
19:17:31 <quintopia> what was your modifier?
19:17:41 <quintopia> it was only dc15
19:18:01 <shachaf> kmc: I captured the flag. Level 8 was annoying.
19:18:21 <atriq> ~dice 6
19:18:22 <boily> +0, I haven't trained plush-fu yet.
19:18:22 <cuttlefish> 2
19:18:31 <atriq> Shouldn't that be "~die"?
19:18:59 <boily> it has dice quantity as an optional argument, and I'm too lazy to have two separate commands.
19:19:12 <shachaf> It looks like the SF event is going to be 21+. I vaguely I wish I was <21 so I could self-righteously complain about it.
19:19:31 <oerjan> atriq: I FIND YOU INSUFFICIENTLY IMPRESSED BY MY LATEST FUEUE PROGRAM
19:20:18 <quintopia> ~dice 5d10
19:20:18 <cuttlefish> 4
19:20:31 <quintopia> ~dice 5*10
19:20:31 <cuttlefish> 4
19:20:37 <quintopia> how it works boily
19:20:44 <oerjan> now where was that sulking corner and is the cake still there
19:21:06 <boily> ~dice 12 5
19:21:06 <cuttlefish> 9 8 4 3 1
19:21:16 <atriq> oerjan, I find myself confused
19:21:21 <oerjan> ~dice 12 5
19:21:21 <cuttlefish> 11 8 4 1 4
19:21:24 <quintopia> ~dice 10 5
19:21:24 <cuttlefish> 9 6 8 7 8
19:21:26 <oerjan> atriq: good, good
19:21:38 <atriq> ~dice 100 3
19:21:38 <cuttlefish> 6 91 23
19:21:44 <quintopia> boily: it needs to display sum because i am too lazy to add them up
19:21:54 <quintopia> ~dice 1 50
19:21:54 <cuttlefish> 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
19:22:18 <quintopia> i THINK that adds up to 50
19:22:20 <atriq> > 65 - 91
19:22:21 <lambdabot> -26
19:22:21 <quintopia> not sure
19:24:15 <zzo38> I have written a dice program on TI-92 calculator, once. I still have it.
19:24:36 <boily> quintopia: you're forcing my laziness...
19:25:03 <quintopia> boily: be less lazy so i can be more lazy
19:25:05 <oerjan> an unstoppable force and an immovable object
19:26:06 <zzo38> I play Dungeons&Dragons game sometimes (but I use real dice; except for character generation).
19:27:00 <quintopia> zzo38: do you use your random generator, or intentionally select stuff using dndinsider tools
19:27:17 <zzo38> quintopia: I use my random generator.
19:27:31 <zzo38> I use my calculator.
19:28:06 <atriq> Wow, I have just thought up an evil prng for Haskell
19:28:12 <atriq> Needs testing
19:28:29 <atriq> unsafeCoerce id :: Int, use that as a seed value
19:28:54 <oerjan> instance RandomGen () where ...
19:29:31 -!- cuttlefish has quit (Remote host closed the connection).
19:29:47 -!- cuttlefish has joined.
19:29:56 <boily> ~dice 10 10
19:29:56 <cuttlefish> 6 3 2 5 5 5 9 6 4 1 --- Sum = 46
19:31:05 <quintopia> thanks boily
19:31:11 <quintopia> ~dice 1 50
19:31:11 <cuttlefish> 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 --- Sum = 50
19:31:17 <zzo38> atriq: Would it work? I think Int has only one constructor and it is specific to GHC anyways, and it would also depend on how the memory allocation is done, it might not work so well
19:31:23 <quintopia> ha i was right! it does addd up to 50
19:31:57 <atriq> zzo38, gave me two different numbers if I restart GHCi inbetween
19:32:30 <oerjan> quintopia: shocking
19:32:54 <zzo38> And anyways id is a function and I don't know what would be expected to happen if you use unsafeCoerce between function and data, I think the documentation mentions mess with doing so; so even if it work with GHCi it might not work in compiled programs.
19:33:05 <atriq> It's not supposed to do anything
19:33:11 <atriq> It's supposed to be evil, rather
19:33:18 <zzo38> atriq: Yes it may do so, but on a single-tasking computer it might give the same number each time.
19:33:46 <atriq> ~dice 1000
19:33:47 <cuttlefish> 482 --- Sum = 482
19:34:50 <mroman> If every number had the same probablity of being "diced", then what would the average sum be?
19:35:09 <atriq> Infinity
19:35:28 <mroman> for 10 throws with a 6 sided dice or so
19:35:37 <Sgeo> 0.
19:35:42 <atriq> number of rolls * number of sides on dice / 2
19:36:02 <oerjan> um no
19:36:25 <oerjan> number of rolls * (number of sides on dice + 1) / 2
19:36:29 <atriq> Good point
19:36:44 <Sgeo> You're both assuming the dice doesn't have 0 or negative numbers
19:36:47 <atriq> So, for 10 6 sided dice, we'd expect about 35
19:36:50 <fizzie> oerjan: But what if it's a programmers 0-indexed... right.
19:36:51 <atriq> ~dice 6 10
19:36:52 <cuttlefish> 4 6 6 2 3 3 1 5 1 6 --- Sum = 37
19:36:54 <atriq> ~dice 6 10
19:36:55 <cuttlefish> 5 1 2 2 3 2 3 1 6 2 --- Sum = 27
19:36:56 <atriq> ~dice 6 10
19:36:56 <cuttlefish> 3 1 2 6 4 2 1 3 6 2 --- Sum = 30
19:36:57 <atriq> ~dice 6 10
19:36:58 <cuttlefish> 1 6 1 2 2 5 6 5 5 1 --- Sum = 34
19:36:58 <atriq> ~dice 6 10
19:36:59 <cuttlefish> 2 3 1 4 5 5 4 6 6 1 --- Sum = 37
19:37:10 <atriq> > sum [37,27,30,34,37] / 5
19:37:11 <lambdabot> 33.0
19:37:14 <atriq> Not bad
19:37:18 <fizzie> @dice 50d1
19:37:18 <lambdabot> 50d1 => 50
19:37:39 <quintopia> lambdabot is much more concise
19:37:46 <oerjan> @dice 500000000000d10
19:37:46 <lambdabot> 500000000000d10 => 2749998886333
19:38:12 <quintopia> @dice d6
19:38:12 <lambdabot> unexpected "d": expecting number
19:38:16 <quintopia> @dice 1d6
19:38:16 <lambdabot> 1d6 => 1
19:38:26 * quintopia trips and falls in a pit
19:38:36 <oerjan> a pity
19:38:50 <oerjan> which reminds me it's time for my weekly check of oots
19:38:51 <fizzie> octave:6> mean(sum(floor(1+6*rand(10000,10)), 2))
19:38:52 <fizzie> ans = 34.971
19:38:59 <fizzie> octave:7> mean(sum(floor(1+6*rand(1000000,10)), 2))
19:38:59 <fizzie> ans = 35.007
19:39:13 <fizzie> Well, whaddaya know, it *is* approaching oerjan's 35.
19:39:35 <oerjan> fizzie: see: law of large numbers
19:39:39 <zzo38> Since the TI-92 is slow, I have done some things to make the program fast. One is to compile the dice specification when it is entered, and if you ask for a reroll it just uses the precompiled specification, making subsequent rolls faster than the first one.
19:39:42 <fizzie> (That was a million sets of sums of 10 throws.)
19:40:34 <oerjan> including the introduction example :)
19:40:47 <oerjan> (on wp)
19:44:22 <oerjan> atriq: btw that program _should_ print the alphabet.
19:44:29 <atriq> Wow
19:46:39 <oerjan> it takes 10 cycles per letter
19:47:40 -!- asiekierka has quit (Remote host closed the connection).
19:48:23 -!- augur has joined.
19:48:47 <fizzie> octave:17> var(mean(floor(1+6*rand(1000,1000))))
19:48:47 <fizzie> ans = 0.0028878
19:48:47 <fizzie> octave:18> (6^2-1)/12/1000
19:48:47 <fizzie> ans = 0.0029167
19:48:49 <fizzie> Ooh, and look, the variance of the sample mean is pretty close to sigma^2/N for N repeats of 1000 throws. Amazing!
19:51:22 <oerjan> it's like those statisticians know what they are doing, or something
19:54:23 <kmc> shachaf: congrats
19:54:34 <kmc> gratschaf
19:54:45 <fizzie> As for the (6^2-1)/12, it's almost as if E(X^2)-E(X)^2 and E(f(X)) = sum_i p(X_i) f(X_i).
19:54:50 <copumpkin> lol
19:55:01 <shachaf> Level 8 was very contrived.
19:55:53 <fizzie> They seem to have kind of a "thing" for those passwords-checked-in-steps kind of things.
19:56:09 <fizzie> The corresponding CTF1 one was kind of contrived too.
19:56:29 <shachaf> Most of CTF1 was contrived.
19:56:47 <zzo38> kmc: About my LFSR configurable tap instruction pointer, I had other ideas too such as four memory buses (primary program, secondary program, primary data, and secondary data) where any of them can be swapped with others, so you can treat program as data as well, it is like harvard, and can be as fast as harvard.
19:57:02 <fizzie> Well, maybe. I've lost my notes. But the code for that one was (IIRC) so convoluted compared to a straight-forward strcmp.
19:57:12 <shachaf> It was.
19:57:21 <shachaf> It did several strlen()s for each iteration.
19:58:55 <shachaf> On the other hand level04 was "void fun(char *str) { char buf[1024]; strcpy(buf, str); }"
19:58:57 <zzo38> In addition, having multiplexing instructions (like Muxcomp esolang, but operating on registers instead of memory), having the address bus and data bus of each memory to also be a register, and some other ideas too.
19:59:23 <fizzie> shachaf: It did have some kind of ASLR on, at least.
19:59:39 <fizzie> But yes, it's not exactly the most useful function.
20:00:12 * shachaf brute-forced his way through the ASLR instead of being clever.
20:00:36 <zzo38> shachaf: If it is optimized I would expect it to do nothing, but if it is not optimized I would expect that something would go wrong if the string is too long.
20:00:50 <fizzie> shachaf: The strcpy leaves 'buf' in %eax, so I just picked a "call *%eax" (in the code) to return to.
20:01:09 <shachaf> zzo38: You mean "something to go *right*".
20:01:13 <shachaf> fizzie: Right. I didn't notice that.
20:01:24 <fizzie> (I found the email I sent them, just not my code-and-notes directory.)
20:01:31 <zzo38> shachaf: Well, it will go right if you specifically make it go right, I suppose.
20:01:44 <shachaf> I just gave a very long string full of nops over and over again. It was 32 bits so it didn't take long.
20:01:58 <fizzie> shachaf: On the other hand, what I executed was the first google-hit for "/bin/sh shellcode", so that's kinda lazy too.
20:09:01 -!- nortti- has joined.
20:11:42 <FreeFull> 100 iota [ 1 + iota sum . ] each
20:13:49 <FreeFull> Guess the language
20:16:19 <fizzie> It looks kinda Factorish.
20:16:25 <FreeFull> It is Factor
20:16:30 <fizzie> Well, then.
20:16:36 <fizzie> (I haven't written any, but I've seen snippets.)
20:17:44 <fizzie> How's that 'each' thing know how much to sprungle?
20:18:16 <FreeFull> iota returns a sequence
20:18:29 <fizzie> Oh, so it's not just that many numbers.
20:20:26 <FreeFull> USING: math.ranges ; 100 [1,b] [ [1,b] sum . ] each (this is probably better)
20:21:31 <FreeFull> Could put it in a function
20:21:42 <fizzie> > sum . enumFromTo 0 <$> [0..99] -- I suppose it's something kinda like that.
20:21:44 <lambdabot> [0,1,3,6,10,15,21,28,36,45,55,66,78,91,105,120,136,153,171,190,210,231,253,...
20:22:07 <FreeFull> 100 [1,b] goes from 1 to 100 (inclusive)
20:22:20 <fizzie> "For example, calling iota on the integer 3 produces a sequence containing the elements 0, 1, and 2." http://docs.factorcode.org/content/article-sequences-integers.html
20:22:23 <fizzie> I was following that one.
20:22:42 <FreeFull> Yeah, iota isn't the most convienient when you want to start from 1
20:22:51 <FreeFull> Since you have to add 1 to all elements
20:23:26 <fizzie> Well, but if you start with a 100 iota, the last one is 99, and you have "1 + iota" so that's another 100 iota so the last sum is up to 99 there.
20:23:30 <Sgeo> 1,827 comments in 23 minutes http://www.reddit.com/r/IAmA/comments/z1c9z/i_am_barack_obama_president_of_the_united_states/
20:24:08 <FreeFull> My iota thing does print 100 numbers as well, but it starts with 0 instead of 1
20:24:39 <fizzie> Yes, well, so does the [0..99], obviously.
20:24:46 <FreeFull> Yeah
20:24:56 <FreeFull> Anyway
20:31:14 <boily> Sgeo: that's why I can't get my reddit fix right now...
20:35:30 -!- Vorpal has quit (Ping timeout: 276 seconds).
20:35:31 -!- pumpkin has joined.
20:36:16 -!- copumpkin has quit (Ping timeout: 245 seconds).
20:36:17 -!- pumpkin has changed nick to copumpkin.
20:38:50 <oerjan> Sgeo: it won't load i see...
20:39:09 <oerjan> well if it were genuine i guess that would explain why it won't load :P
20:39:51 <oerjan> does this mean obama managed to reddit reddit?
20:40:49 <oerjan> hm appending .nyud.net doesn't help...
20:41:17 <Sgeo> oerjan, seems to be genuine
20:41:27 <oerjan> i guess it _is_ election year
20:41:32 <Sgeo> https://twitter.com/BarackObama/status/240903767350968320
20:42:58 <oerjan> that blue checkmark means it's a verified twitter account right? i cannot seem to get any tooltip for it.
20:43:21 <atriq> Yeah
20:43:43 <Gregor> Yup, Obama killed reddit.
20:43:47 <Gregor> Tricky tricky.
20:43:52 <shachaf> I should verify my Twitter account.
20:44:41 <oerjan> shachaf: i vaguely thought they'd stopped doing that.
20:45:00 <atriq> Jeb of Mojang fame recently got the tick
20:45:07 <shachaf> œrjan: Yes, but surely they can make a special case for someone like me?
20:45:18 <oerjan> shachaf: well obviously you have a point.
20:45:37 <oerjan> also a strange spelling of ø
20:47:12 <shachaf> o̼rjan
20:47:29 <shachaf> ø̼r̼j̼a̼n̼
20:47:43 <shachaf> 033C COMBINING SEAGULL BELOW [̼]
20:47:54 <boily> seagull???
20:48:13 <shachaf> o͆rjan
20:48:50 <oerjan> > '\x33C'
20:48:51 <lambdabot> '\828'
20:48:54 <shachaf> o͡rjan
20:48:55 <boily> so ørjan is a seagull that combines from below.
20:49:00 <oerjan> @read '\x33C'
20:49:00 <lambdabot> Plugin `dummy' failed with: Prelude.read: no parse
20:49:06 <oerjan> @read "\x33C"
20:49:07 <lambdabot> <
20:49:17 <boily> we're not even friday, and I'm already confused.
20:49:23 <oerjan> wut
20:49:36 <shachaf> > 0x33c `mod` 256
20:49:37 <lambdabot> 60
20:49:40 <shachaf> > chr 60
20:49:41 <lambdabot> '<'
20:49:43 <oerjan> boily: no shachaf is a seagull. he's trying to pretend it's just his name, though.
20:50:10 <boily> aaah. as tvtropes would have said, it makes as much sense in context.
20:51:05 <oerjan> just ask Odd-Even and Bent over there
20:56:31 -!- hagb4rd has joined.
20:56:50 -!- boily has quit (Quit: Watch out for combinatoric seagulls!).
20:57:32 <oerjan> http://www.smbc-comics.com/index.php?db=comics&id=2703#comic :P
20:57:40 <oerjan> (it's not quite new)
20:58:11 <oerjan> > 6000/52
20:58:12 <lambdabot> 115.38461538461539
21:00:37 <fizzie> > 2012-6000/52
21:00:38 <lambdabot> 1896.6153846153845
21:02:41 <fizzie> Isn't that around when Mac OS <=9 epoch is?
21:03:05 <fizzie> Oh, that was 1904. About as far from 1900 but to the other direction.
21:03:38 <hagb4rd> > 2.45/1
21:03:39 <lambdabot> 2.45
21:05:05 * oerjan wonders what hagb4rd was expecting
21:06:18 <atriq> oerjan, maybe he was checking maths still works in the future
21:06:22 <hagb4rd> i tried to recall that few decimals that one cannot store as float, at least not exactly
21:06:32 <atriq> > 1/3
21:06:33 <lambdabot> 0.3333333333333333
21:06:41 <atriq> > 100000000000/3
21:06:42 <lambdabot> 3.3333333333333332e10
21:06:45 <hagb4rd> well.. that is not a decimal
21:06:51 <atriq> True
21:06:53 <oerjan> atriq: ah yes. there was an smbc about that.
21:07:29 <atriq> > 0.9 * 1000000000
21:07:30 <lambdabot> 9.0e8
21:07:43 <atriq> Wait
21:07:55 <oerjan> hagb4rd: it would still print the simplest decimal representation for that double
21:07:56 <atriq> I'm not thinking in terms of floating point numbers
21:08:19 <oerjan> > 0.1 -- not an exact double
21:08:20 <lambdabot> 0.1
21:08:47 <hagb4rd> we have encountered problems with floattype and well ..yes..prices
21:09:38 <oerjan> > 0.1 :: Rational
21:09:39 <lambdabot> 1 % 10
21:09:53 <oerjan> if the denominator is not a power of 2, it's not exact.
21:11:13 <fizzie> !perl printf("%.30f", 0.1);
21:11:14 <EgoBot> 0.100000000000000005551115123126
21:11:16 <hagb4rd> yea
21:11:43 <Phantom__Hoover> http://en.wikiquote.org/wiki/Rasmus_Lerdorf
21:11:51 <Phantom__Hoover> I love it when Wikipedia gets nasty.
21:12:37 <hagb4rd> which turns fast to larger amounts (more than a cent :) when not rounded before doing the sum
21:12:41 <hagb4rd> for example
21:12:47 <hagb4rd> this can be evil
21:13:37 <hagb4rd> good it's not that hard to implement a decimal type if not present
21:14:07 <hagb4rd> kids, don't try this at home
21:14:56 <Phantom__Hoover> oh
21:14:58 <Phantom__Hoover> dear
21:14:59 <zzo38> I have written something about some kind of "algebraic infinity" nobody replied perhaps I can write more see what you would think about it. This value called "infinity" can be treated as a algebraic variable representing a positive real number (so most of the same rules apply), except that it is considered to be greater than any real number, and it is not a real number.
21:15:00 <Phantom__Hoover> hagb4rd
21:15:10 <hagb4rd> Phantom__Hoover
21:15:45 <Phantom__Hoover> you brought itidus21 down upon us
21:15:56 <Phantom__Hoover> and you dare to return?
21:16:30 <hagb4rd> ah yes. i kind of missed you
21:17:03 <Phantom__Hoover> you tread upon thin ice my friend
21:17:04 <Phantom__Hoover> thin
21:17:04 <Phantom__Hoover> ice
21:17:27 <hagb4rd> angels dancing
21:17:30 <hagb4rd> angels dying
21:17:40 <zzo38> Please specify thickness (in decimicrons).
21:18:26 <oerjan> zzo38: http://en.wikipedia.org/wiki/Levi-Civita_field
21:18:45 <zzo38> oerjan: O, is that like what I have described?
21:18:47 <Phantom__Hoover> the first of the last will deliver the old
21:18:58 <Phantom__Hoover> dammit oerjan
21:19:25 <oerjan> zzo38: it seems similar
21:20:15 <zzo38> Yes it does, although it seem based on infinitesimals instead of infinity (although even in what I described, you have have one over infinity to make infinitesimal numbers)
21:22:03 <oerjan> yeah that's just a simple renaming, more significant is that they use infinite formal series instead of just sums
21:22:17 <oerjan> *finite sums
21:22:58 <zzo38> OK
21:23:55 <atriq> Okay, this is the looooooooooooooongest single Haskell function I have ever written
21:24:12 <atriq> Even longer than the factorial calculator
21:24:51 <hagb4rd> attriq: share it please
21:25:38 <hagb4rd> *atriq ..pardon
21:25:43 <oerjan> but what if it doesn't fit in our universe?
21:25:54 <atriq> It's not THAT long
21:25:59 <atriq> About 60 lines
21:26:12 <atriq> For a Fueue interpreter
21:26:23 <hagb4rd> drop down that pants
21:26:26 <oerjan> i guess that's still long for haskell
21:26:42 <oerjan> yeah let us horribly dissect it!
21:26:50 <oerjan> wait, is that not motivational. i forget.
21:27:05 <atriq> It's just a case expression, in a monad, in a Kleisli wrapper
21:27:19 <atriq> Its type is Kleisli (MaybeT (StateT Integer IO)) (Sequence FueueItem) (Sequence FueueItem)
21:27:40 <oerjan> don't you mean Seq
21:27:43 <atriq> Yes
21:27:45 <atriq> Probably
21:28:24 <Sgeo> Oh hey http://www.reddit.com/user/PresidentObama/comments/ worked for me
21:28:37 <atriq> Make a mirror
21:29:32 <zzo38> oerjan: Do you know what categories can do-notation work with? Does it work with Cartesian closed categories in general?
21:29:45 <oerjan> atriq: that feels a bit like overkill :P
21:29:56 <atriq> I'm in an overkill mood
21:30:35 <oerjan> zzo38: well in haskell even with options afaik it's always desugared to use ordinary lambdas, so seems hard to get very general
21:30:39 <oerjan> *in ghc
21:31:03 <zzo38> oerjan: I don't mean in Haskell, I mean in general.
21:31:19 <Sgeo> Uh, have this? http://pastie.org/4612756
21:31:28 <oerjan> otoh cartesian closed categories are supposedly what you need to be able to embed typed lambda calculus
21:32:03 <oerjan> so presumably you could desugar using that embedding?
21:32:05 <zzo38> Is it the case that categories supporting do-notation are those which all monads are applicative?
21:32:26 <oerjan> now you are way over my head :P
21:45:19 <zzo38> Are you sure?
21:45:47 <oerjan> pretty sure
21:49:13 -!- nortti- has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
21:58:09 <oerjan> hm it seems hard in fueue to move information conditionally leftward
22:03:47 <atriq> Right, I'm up to <
22:06:28 -!- copumpkin has quit (Ping timeout: 244 seconds).
22:07:40 -!- copumpkin has joined.
22:10:10 <atriq> @unmtl MaybeT (StateT Int IO) (Seq FueueItem)
22:10:10 <lambdabot> Int -> IO (Maybe (Seq FueueItem), Int)
22:23:20 <atriq> @unmtl StateT Int (MaybeT IO) (Seq) (FueueItem)
22:23:21 <lambdabot> Plugin `unmtl' failed with: `Int -> IO (Maybe (Seq, Int))' is not a type function.
22:23:27 <atriq> @unmtl StateT Int (MaybeT IO) (Seq FueueItem)
22:23:27 <lambdabot> Int -> IO (Maybe (Seq FueueItem, Int))
22:25:17 <oerjan> all this @unmtl is just fueuetile
22:31:21 <atriq> Okay, got it right
22:32:03 <oerjan> yay
22:33:17 -!- MoALTz has quit (Quit: brb).
22:37:34 <atriq> http://hpaste.org/73921
22:38:00 * Sgeo is reading about Push3
22:38:46 <atriq> oerjan, that's the crazy function in there
22:39:54 <oerjan> heh i think the obama post is already no. 3 ever on reddit
22:40:39 <Phantom__Hoover> Sgeo, are you learning another goddamn language
22:41:05 <oerjan> atriq: someone doesn't like if then else :P
22:41:09 <Sgeo> Phantom__Hoover, if it helps, it's not a general purpose language, and even I can't twist it as such.
22:41:27 <atriq> oerjan, someone realised he didn't have to use Ordering way too late, and has now switched
22:41:34 <Sgeo> Unless you mean Clojure, in which case, yes.
22:41:40 <oerjan> ah
22:41:49 <Phantom__Hoover> oh for--
22:42:01 <atriq> (to if-then-else)
22:42:05 <Phantom__Hoover> Not only are you learning another goddamn language, you're two-timing as well?
22:42:11 <atriq> Oh wait
22:42:29 <atriq> For the first case expression, I've switched it to an if-then-else
22:42:35 <Sgeo> Phantom__Hoover, again, Push3, which I only heard of for the first time today, is probably not realistically usable as a general purpose language.
22:42:36 <atriq> All the others remain case expressions
22:45:52 <atriq> Sentences you don't hear often: "Actually, it's probably the lack of Mormon Jesus"
22:46:06 <oerjan> atriq: hm i see it's annoying that you cannot pattern match more than one level on a Seq with a single pattern
22:46:18 <atriq> Yeah
22:46:42 <atriq> Hence all the multiple levels of viewl
22:46:53 <Sgeo> Guess what dividing by 0 does in Push? Absolutely nothing whatsoever, it's a no-op
22:47:05 <atriq> In this implementation of Fueue, it pushes 0
22:47:25 <atriq> (this is not part of the specification of Fueue)
22:47:25 <oerjan> atriq: pattern guards might help, perhaps?
22:47:35 <atriq> I'm not sure how
22:48:06 <atriq> Also I like to try to stick to vanilla Haskell
22:49:25 <atriq> Well, TOMORROW I LEARN PARSEC
22:49:31 <atriq> Don't let me not learn Parsec
22:49:38 <atriq> (the Haskell parsing library)
22:49:45 <atriq> Goodnight
22:49:46 -!- atriq has quit (Quit: Leaving).
22:50:10 <Phantom__Hoover> @tell atriq don't not learn parsec
22:50:10 <lambdabot> Consider it noted.
22:50:14 <zzo38> I do think it is a good parsing library; you often do not even need the monad operations usually applicative will do.
22:51:27 <fizzie> It's also not just a "parsing library", it's a parser COMBINATOR library, and as any rube knows, combinators improve ANYTHING.
22:52:04 <oerjan> @tell atriq pattern guards _are_ vanilla haskell, they were added in haskell 2010
22:52:04 <lambdabot> Consider it noted.
22:57:29 -!- kmc has quit (Quit: leaving).
22:58:11 <shachaf> Uh-oh.
22:58:18 <shachaf> kmc will never be back. :-(
23:02:01 <Phantom__Hoover> oh no :(
23:02:59 <Phantom__Hoover> Anyway, I love how the WP article on Lady Chatterley's Lover has a single paragraph on the actual plot and then the rest of the article is literary criticism and an account of the controversy.
23:06:58 -!- nooga has quit (Read error: Connection reset by peer).
23:12:01 <Arc_Koen> atriq: In this implementation of Fueue, it pushes 0
23:12:12 <Arc_Koen> what implementation?
23:12:19 <Phantom__Hoover> He's offline.
23:12:24 <Arc_Koen> oh, right
23:12:42 <oerjan> he's writing a haskell one
23:13:00 <Arc_Koen> great
23:13:23 <Phantom__Hoover> Arc_Koen, hey do you feel like writing an Eodermdrome interpreter.
23:13:48 <Arc_Koen> I already have all the pain not mistyping fueue
23:14:01 <Arc_Koen> and you want me to work with "eodermdrome"?
23:14:30 -!- nooga has joined.
23:14:33 <Phantom__Hoover> It's easy enough to remember once you interpret it with its own semantics!
23:14:43 <oerjan> Arc_Koen: i made a bigger program )$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]
23:15:17 <Arc_Koen> don't tell me what it does; I'll save it and as soon as one of my two interpreters works properly I'll try it
23:15:36 <oerjan> ok don't read the logs then as i told atriq :)
23:15:56 <Arc_Koen> my logs only go as far as 3 hours ago
23:16:09 <Arc_Koen> (btw apparently someone highlighted me but it's not on my logs)
23:16:24 <Phantom__Hoover> (I'm half joking; the reason Eodermdrome is interesting is also the reason it's a bitch to implement.)
23:16:36 <Phantom__Hoover> http://codu.org/logs/_esoteric
23:16:39 <FreeFull> oerjan: What does it do?
23:16:51 <Arc_Koen> :(
23:16:52 * oerjan swats FreeFull -----###
23:17:11 <oerjan> Arc_Koen: i highlighted you when i made the program
23:17:16 <Arc_Koen> on such a channel I'd almost expect everyone to have a public key or something
23:18:11 <zzo38> I do have a SSH public key.
23:22:12 -!- MoALTz has joined.
23:23:54 <zzo38> If you have a grid filled with 1 and 0, what is the algorithm to represent it as the fewest number of rectangles such that the rectangles contain all 1 and everywhere that is not inside of a rectangle will be 0 (overlapping rectangles is OK)?
23:27:13 -!- augur has quit (Remote host closed the connection).
23:27:14 <zzo38> For example [110;111;011] becomes [0,0,2,2;1,1,3,3]
23:27:42 <Arc_Koen> I disagree
23:27:55 <zzo38> You disagree with what?
23:28:00 <Arc_Koen> 1 rectangle is always enough
23:28:11 <Arc_Koen> and since 0 is never enough
23:28:18 <Arc_Koen> the algorithm is pretty easy :)
23:28:29 <zzo38> Actually 0 is sometimes enough, and 1 is not always enough.
23:28:46 <zzo38> For example [00000;00000;00000;00000] becomes [] no rectangles are required.
23:28:48 <Arc_Koen> if 1 is not always enough then I haven't understood the problem properly
23:28:48 <oerjan> i don't think zzo38 meant there to be any 0's inside the rectangles, although i too read it that way at first
23:29:25 <zzo38> oerjan: I mean that all points inside one or more rectangles are 1 and all other points are 0. Sorry if I have been unclear.
23:29:37 -!- MoALTz has quit (Ping timeout: 268 seconds).
23:29:37 <zzo38> I have an example, in case that helps.
23:29:53 <Arc_Koen> oh, ok
23:29:59 <oerjan> i understand the problem, although i'm not sure there is a unique solution always
23:30:21 <zzo38> The solution needs not be unique; any one will do.
23:30:24 <oerjan> in fact there clearly isn't always
23:30:30 -!- monqy has joined.
23:30:50 <Arc_Koen> I'm guessing (but not certain) a greedy algorithm would do the job
23:31:21 <oerjan> on the opposite end, i can imagine this being NP-complete
23:32:30 <oerjan> i certainly don't know an efficient algorithm, anyway
23:36:33 -!- copumpkin has changed nick to honestbob.
23:36:39 -!- honestbob has changed nick to copumpkin.
23:37:07 <Arc_Koen> oerjan: can you prove "take the first 1, then find the biggest rectangle that englobes it, then continue with the next 1" doesn't work?
23:37:34 <Arc_Koen> (though "continue with the next one" is hiding the "it can overlap" problem)
23:37:57 <oerjan> i assumed you meant "next uncovered one"
23:42:19 <oerjan> not on the spot, no
23:44:20 <oerjan> i suddenly got a strong intuition not to think about it
23:46:46 <Arc_Koen> yes, next uncovered one
23:48:47 <zzo38> Why you got a strong intuition not to think about it?
23:49:24 <oerjan> (my) intuition never gives reasons.
23:50:35 <oerjan> but i can guess that i'm too tired to think it through.
2012-08-30
00:02:54 <zzo38> I also try to think of the best way to make WizardCard programming language; perhaps the syntax should be made more like Lisp and/or Scheme. Intentions are that it includes: * Open macros (new patterns can be added in other files, and new list items too) * Compiles to Haskell ((->) category is probably too weak, so use a Kleisli category or something) * First-class functions * First-class rulebooks (like Inform 7 rulebooks) * Mechanism to read
00:03:00 <zzo38> (did this get cut off?)
00:03:21 <oerjan> *
00:03:21 <oerjan> Mechanism to read
00:03:31 <zzo38> * Mechanism to read text from Magic: the Gathering and other games to convert to AST
00:03:36 <zzo38> That is all.
00:07:59 <Arc_Koen> zzo38: by "WizardCard programming language" do you mean some kind of Dvorak language?
00:08:30 <zzo38> Arc_Koen: No. It is the name of the programming language. I have already done a few things but I intend to change it a bit.
00:09:07 <Arc_Koen> yes, but I assume you didn't name it so for no reason
00:09:21 <zzo38> Of course there is a reaon.
00:09:21 -!- augur has joined.
00:12:06 <zzo38> The reason is for implementing Magic: the Gathering cards although it could be used for other purposes too.
00:12:50 <Arc_Koen> that's great!
00:13:09 <Arc_Koen> dvorak is a game where you can create the cards while playing
00:13:36 <zzo38> Maybe it is capable to do that too; I don't know yet.
00:14:50 -!- pikhq_ has joined.
00:17:30 -!- pikhq has quit (Ping timeout: 256 seconds).
00:18:20 -!- nooga has quit (Ping timeout: 268 seconds).
00:47:19 -!- copumpkin has changed nick to imsaguy4.
00:47:37 -!- imsaguy4 has changed nick to imsaguy9.
00:47:57 -!- imsaguy9 has changed nick to copumpkin.
00:59:56 -!- DHeadshot has joined.
01:20:29 -!- augur has quit (Remote host closed the connection).
01:32:52 <Arc_Koen> ./ofueue ")$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]"
01:32:52 <Arc_Koen> Fatal error: exception Fueue.Unknown_operand(104)
01:33:10 <oerjan> fancy
01:33:10 <Arc_Koen> I was so hoping for it to work immediately
01:33:31 <Arc_Koen> that's 'h' right?
01:33:38 <Arc_Koen> > chr 104
01:33:39 <lambdabot> 'h'
01:34:02 <Arc_Koen> where the hell did that find a 'h'
01:34:14 <oerjan> presumably. i didn't think H was supposed to be case insensitive...
01:35:08 <Arc_Koen> well I don't know what atriq would say about it, but in my implementation 'H' is a function and 'h' is nothing
01:35:14 <oerjan> does it get past the parsing stage?
01:35:20 <Arc_Koen> let's see
01:35:29 <zzo38> (card (name "Counterspell") (type instant) (mana-cost U U) (text (counter (target spell))))
01:36:11 <Arc_Koen> nope
01:36:23 <oerjan> well that should narrow it down, then :P
01:37:06 <oerjan> perhaps it reads past the final \0? try rerunning it and see if you get the same number/error
01:37:23 <Arc_Koen> it's always 104
01:37:32 <Arc_Koen> errors are always so weird
01:38:15 <Arc_Koen> ok let's try without blocks
01:39:08 <Arc_Koen> 72 101 108 108 10 H
01:39:30 <oerjan> ^chr 72 101 108 108 10
01:39:30 <fungot>
01:39:36 <oerjan> ack
01:39:45 <Arc_Koen> ./ofueue "72 101 108 108 10 H"got passed it hehe
01:39:45 <Arc_Koen> Fatal error: exception Invalid_argument("char_of_int")
01:40:08 <Arc_Koen> ok, so without blocks it can pass the parser
01:40:21 <Arc_Koen> though not sure whether it passes it right; I'll make a print function
01:40:50 <oerjan> you're definitely going to need a print function if you need to trace execution...
01:41:56 <Arc_Koen> well I see nothing wrong with the only use of char_of_int
01:42:13 <Arc_Koen> | Num x -> print_char (char_of_int x)
01:42:24 <oerjan> oh you went back to ocaml?
01:42:30 <Arc_Koen> yeah
01:42:40 -!- ais523 has joined.
01:43:21 <Arc_Koen> now both versions are at the stage "there's at least one thing wrong somewhere but you have no idea wheeeeeere"
01:43:30 <Arc_Koen> which is the part I hate in programming
01:43:57 <oerjan> well make a print_queue function so you can see exactly what is on the queue at each step until it crashes.
01:44:56 <oerjan> because it's much easier to debug if you can see exactly when the data starts getting wrong
01:53:51 <Arc_Koen> ./ofueue "72 101 108 108 10 H"
01:53:52 <Arc_Koen> 600 5429 5436 5436 538 H
01:54:08 <oerjan> hm...
01:54:12 <Arc_Koen> well, at least I got the number of numbers right :)
01:54:18 <oerjan> :t readInt
01:54:20 <lambdabot> forall a. (Num a) => a -> (Char -> Bool) -> (Char -> Int) -> String -> [(a, String)]
01:54:39 <oerjan> > readInt 10 (const True) ord "72"
01:54:40 <lambdabot> [(600,"")]
01:54:57 <Arc_Koen> I have no idea what you just did
01:55:26 <Arc_Koen> is that haskell or something?
01:55:27 <oerjan> thought so. you are forgetting to subtract int_of_char '0' or whatever it's called
01:55:31 <oerjan> yes.
01:55:37 <Arc_Koen> oh of course
01:55:49 <Arc_Koen> that because of the C program
01:56:40 <Arc_Koen> I mean, switching back to ocaml I was like "no need to substract now, we have the int_of_char function
01:56:40 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:56:49 -!- DH____ has joined.
01:58:42 <Arc_Koen> ok, 72 101 blabla works
01:58:54 <oerjan> yay
01:59:04 <Arc_Koen> Fatal error: exception Fueue.Unknown_operand(104)
01:59:13 <Arc_Koen> well that would have been too easy
01:59:40 <oerjan> try something simpler like ):[):]
02:00:11 <Arc_Koen> if I recall correctly that's an infinite loop
02:00:14 <oerjan> yep
02:00:30 <Arc_Koen> seems to be working
02:00:55 <oerjan> time to find a minimal breaking example, then
02:01:16 <Arc_Koen> well I'll try on empty
02:01:42 <Arc_Koen> ok, empty works
02:02:10 <oerjan> by that, i mean taking the program which doesn't work, and try smaller pieces of it
02:02:35 <oerjan> until you find the smallest piece which breaks
02:03:34 <oerjan> )$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]
02:03:56 <oerjan> say )$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]
02:04:44 <Arc_Koen> ./ofueue "+-*/%:~!$(<)H"
02:04:44 <Arc_Koen> ./ofueue "+-*/%:~"))[[H]]"(<)H"
02:04:44 <Arc_Koen> -bash: syntax error near unexpected token `)'
02:04:53 -!- Concreto has joined.
02:05:03 <Arc_Koen> funny I thought no fueue function had to be escaped
02:05:08 <oerjan> um you have a " in there.
02:05:50 <Arc_Koen> uh
02:06:19 <Arc_Koen> the ! was replaced by my previous argument
02:06:21 <Arc_Koen> apparently
02:06:31 <oerjan> use '' instead of "" to escape, anyway
02:06:42 <oerjan> *to quote
02:06:51 <Arc_Koen> ok
02:07:33 <Arc_Koen> ok, so the program "sequence of all fueue functions" works
02:08:00 <oerjan> as i said, try breaking the non-working program down.
02:08:01 <Arc_Koen> ah
02:08:09 <Arc_Koen> it seems to be working
02:08:20 <Arc_Koen> ./ofueue ')$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]'
02:08:20 <Arc_Koen> )$2 [)$--------2 ~)~~[)[)~(~[~[$~H~]~)%+~91 -):]~1 +:])]]
02:08:20 <Arc_Koen> got passed it hehe
02:08:43 <Arc_Koen> though I have no idea what it is supposed to do, so I can't tell if it's behaving properly or not
02:08:55 <oerjan> hm have you tried '' around the whole program? maybe it was quoting problems all along.
02:09:00 <Arc_Koen> but it was parsed correctly
02:09:28 <Arc_Koen> yeaaaaah
02:09:34 <Arc_Koen> works as well
02:09:47 <oerjan> what does it do? >:)
02:10:00 <Arc_Koen> it waits for me to input something
02:10:12 <oerjan> oops. it's not supposed to do that.
02:11:11 <Arc_Koen> (so now must be the time where I confess I kind of skipped the input part of the program, and replace it with a "read_int")
02:11:40 <oerjan> well you might, except my program isn't supposed to do any input :(
02:12:22 <Arc_Koen> does your program work? :p
02:12:26 <oerjan> there is of course the possibility of bugs
02:12:45 <oerjan> i have only emulated it by hand
02:13:09 <Arc_Koen> well trying a program we're not sure of against an interpreter we're not sure of was optimistic
02:13:35 <oerjan> does it print anything before asking for input?
02:13:51 <Arc_Koen> it prints the program and "got passed it hehe"
02:14:06 <oerjan> can i get a print of the queue just before it asks for input?
02:14:10 <Arc_Koen> ./ofueue ')$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]'
02:14:10 <Arc_Koen> )$2 [)$--------2 ~)~~[)[)~(~[~[$~H~]~)%+~91 -):]~1 +:])]]~[$~H~])%+-91 )[65 ][65 ]
02:14:10 <Arc_Koen> got passed it hehe
02:14:11 <Arc_Koen> 66
02:14:11 <Arc_Koen> 66
02:14:11 <Arc_Koen> Fatal error: exception Invalid_argument("char_of_int")
02:14:17 <Arc_Koen> oh, right
02:14:30 <Arc_Koen> let's add a print_queue somewhere in the middle
02:15:32 <oerjan> it does seem to print an equivalent program
02:16:08 <Arc_Koen> the only difference should be: removed all the whitespace, and added one whitespace after each number
02:16:24 <Arc_Koen> (so as to not be confused by two consecutive numbers)
02:16:41 <Arc_Koen> ohgod
02:16:51 <oerjan> hm?
02:16:52 <Arc_Koen> ok, fasten your seatbelt
02:17:18 <oerjan> ok
02:17:59 <Arc_Koen> http://pastebin.com/rafSr1KR
02:18:45 <Arc_Koen> ah, crap
02:18:59 <Arc_Koen> the print_queue function doesn't make a difference between - 2 and -2
02:19:13 <Arc_Koen> ok, I'll make the space appear before numbers instead of after
02:19:24 -!- kmc has joined.
02:19:33 <oerjan> heh right. i used _2 for the number when designing it :P
02:20:45 <Arc_Koen> http://pastebin.com/TEJcPYyr
02:20:57 <Arc_Koen> though all minuses were the function, I think
02:21:28 <Arc_Koen> it seems to ask for input just before applying minus to 2
02:21:41 <oerjan> i hope not, there should definitely be some negative numbers in there
02:22:06 <Arc_Koen> ok so here is what goes after input
02:22:46 <Arc_Koen> http://pastebin.com/bmS873ub
02:23:01 <Arc_Koen> (this follows the previous paste, and 66 and 67 are my inputs)
02:24:23 <Arc_Koen> it's probably a problem with my interpreter though, cause the line seems too long to have been processed entirely since the last function was executed
02:26:08 <Arc_Koen> oh, the char_of_int error was cause by trying to print a negative number
02:26:10 <oerjan> yes, i guess there's a length miscalculation
02:26:44 <oerjan> it shouldn't do that, although i guess reading a character into it will mess things up
02:27:23 <Arc_Koen> ok, so the length is calculated this way:
02:27:35 <Arc_Koen> the function "main" which processes the queue has only one argument, "time"
02:27:57 <Arc_Koen> time is supposed to be equal to the number of "sendback" operations since last active operation
02:28:26 <Arc_Koen> and there's a global variable "fength" which is supposed to be equal, at all time, to the length of the queue
02:28:42 <Arc_Koen> I'll try replacing it with Queue.length fueue or whatever
02:29:50 <Arc_Koen> and it seems to be working
02:30:06 <Arc_Koen> although the print_queue flooding prevents me from knowing what it does
02:30:47 <Arc_Koen> ./ofueue ')$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]'
02:30:47 <Arc_Koen> )$ 2[)$-------- 2~)~~[)[)~(~[~[$~H~]~)%+~ 91-):]~ 1+:])]]~[$~H~])%+- 91)[ 65][ 65]
02:30:48 <Arc_Koen> got passed it hehe
02:30:48 <Arc_Koen> ABCDEFGHIJKLMNOPQRSTUVWXYZ
02:30:50 <Arc_Koen> yeaaaaaaaah
02:30:55 <oerjan> yay!
02:31:34 <Arc_Koen> now to replace the read_int by a function that does what you said it should do
02:31:44 <Arc_Koen> and then this will be THE FIRST FUEUE INTERPRETER
02:32:00 <oerjan> excellent
02:33:12 <Arc_Koen> at first when I read about befunge and esolangs it all sounded like 90's and early 2000's
02:33:42 <Arc_Koen> and all those articles about "the now defunct xxx mailing list"
02:34:07 -!- mtve has quit (Ping timeout: 240 seconds).
02:34:07 <oerjan> the mailing list was nice :(
02:34:39 <Arc_Koen> and then I talked with ais and he told me he did a lot of esolangs
02:34:50 <Phantom__Hoover> RIP mailing list, 90s-early 2000s
02:34:52 <oerjan> the community is somewhat smaller now, i think.
02:34:54 <Phantom__Hoover> "it was nice"
02:35:07 <oerjan> but we're not dead yet
02:35:07 <Arc_Koen> and then I found 2008, 2009, 2010, 2011 and even 2012 created esolangs
02:35:15 <Arc_Koen> and this channel
02:35:20 <Phantom__Hoover> oerjan, depends, are we including people who make Brainfuck derivatives?
02:35:25 <oerjan> Phantom__Hoover: NO
02:35:27 <Arc_Koen> I feel like I'm part of history now
02:35:57 <pikhq_> Arc_Koen: Most of us don't talk esolangs much, TBH.
02:36:12 <pikhq_> (though that's not to say we're uninterested in it. :))
02:36:16 <Arc_Koen> you're not bilingual??
02:36:58 <pikhq_> いや、しかし、日本語はイソラングじゃないと思う。
02:38:22 * Arc_Koen digs out his very rusty japanese
02:38:41 <pikhq_> "Uh, well, Japanese isn't an esolang, I think."
02:38:52 <pikhq_> Well, more idiomatic.
02:38:53 <Arc_Koen> "no, shisomethingshi, nihonsomeeeeeeethingitoblacksomething
02:39:01 <pikhq_> "Uh, well, I don't think Japanese is an esolang."
02:39:28 <Arc_Koen> well my japanese interpreter doesn't work well, apparently
02:40:08 <pikhq_> "iya, shikashi, nihongo wa isorangu ja nai to omou" or, more pedantically, "iya, sikasi, nihonnkò ha isorannkù sìȳanai to omou"
02:40:29 <Arc_Koen> イソラングじ izoranguji ?
02:40:34 <Arc_Koen> haha
02:41:05 <pikhq_> Nah, the tokenization is a bit different there. ;)
02:42:37 <Arc_Koen> well, じ is most definitely ji, isn't it?
02:43:04 <Arc_Koen> I mean, shi is like the only syllable I always remember correctly
02:43:18 <pikhq_> Yes, but that mora doesn't exist in that sentence. じゃ is "ja", not "jiya".
02:43:27 <Arc_Koen> oh, right
02:43:58 <Arc_Koen> I confused that with a miniature "tsu" which would double the next syllable
02:44:14 <pikhq_> I guess it looks a little like the sokuon.
02:45:22 <pikhq_> つっやゃ Yeah, some similarity I guess.
02:45:46 <zzo38> Small "tsu" does not double the next syllable it should be like a pause, romaji written by doubling the next consonant which is also what it is like.
02:46:04 <zzo38> Japanese writing is not by syllables anyways it is by moras.
02:47:38 <pikhq_> To be very technical, small "tsu" indicates gemination of the next consonant.
02:47:46 <zzo38> OK.
02:47:51 <Arc_Koen> I've never heard mora before today, but I'm guessing it's some kind of japanese translation of syllable? :p
02:47:52 <coppro> morae
02:47:55 <coppro> Arc_Koen: no
02:48:02 <pikhq_> Arc_Koen: It's actually a Latin origin term.
02:48:11 <Arc_Koen> oh
02:49:03 <pikhq_> Arc_Koen: A "mora" is a unit of sound between a syllable and a phoneme...
02:49:09 <pikhq_> *Most* kana are a single mora.
02:49:50 <Arc_Koen> is the n kana a whole mora?
02:50:05 <pikhq_> Though the ones where you have a compound sound (like with a small "ya", "yu", or "yo") are a single mora from two kana.
02:50:07 <zzo38> I think the small kanas are not a whole mora except for a small tsu.
02:50:08 <pikhq_> Arc_Koen: Yes.
02:50:21 <pikhq_> zzo38: You're right.
02:50:40 <pikhq_> Small tsu is a mora.
02:50:51 <zzo38> Big kanas always are a mora, I think.
02:51:01 <pikhq_> にっぽん is 4 morae.
02:51:03 -!- augur has joined.
02:51:06 <pikhq_> zzo38: I think so, yeah.
02:51:50 <Phantom__Hoover> When the moon hits ya eye like a big pizza pie, that's a morae....
02:52:04 <pikhq_> Arc_Koen: Also, e.g. とうきょう is 4 morae but only two syllables.
02:52:42 <Arc_Koen> to u somethingo u ?
02:52:49 <pikhq_> toukyou
02:53:16 <Arc_Koen> so close :)
02:53:31 -!- pikhq_ has quit (Quit: Reconnecting).
02:53:43 -!- pikhq has joined.
02:53:48 <Arc_Koen> so why isn't it written (tsu)to(tsu)kyo?
02:53:50 <pikhq> 20:52 < pikhq_> toukyou
02:54:14 <zzo38> Arc_Koen: Why would it be? That doesn't make sense
02:54:24 <zzo38> It would be a different word.
02:54:35 <pikhq> Arc_Koen: Because it's not ttokkyo?
02:54:45 <zzo38> Except, n and small tsu never comes first as far as I know.
02:54:49 <Arc_Koen> oh that doubles the consonaaaaaaant
02:55:41 <Arc_Koen> it's been so long I was completely confusing the "u" thing and the "tsu" thing
02:55:46 <pikhq> zzo38: If somehow it did, the small tsu would probably be a glottal stop.
02:56:28 <pikhq> zzo38: And apparently ん starts a couple loan words?
02:57:25 <pikhq> Also, other Japonic languages apparently start words with it.
03:06:31 <Arc_Koen> oerjan: according to the reference manual, "input_char stdin" should have the behaviour you were expecting
03:07:31 <Arc_Koen> when trying it on the empty fueue program though, it looks like there is nothing to trigger the end of "waiting for an input"
03:07:42 <Arc_Koen> niether ^D nor enter
03:10:22 <Arc_Koen> echo 'ABCD' | ./ofueue ' ' prints ABCD then Fatal error: exception End_of_file
03:12:41 <oerjan> Arc_Koen: iirc (it's been a long time since i did ocaml) to handle EOF you actually need to catch that exception.
03:15:02 <Arc_Koen> try (input_char stdin) with | End_of_file -> WAIT FOR MORE
03:15:57 <Arc_Koen> crap, 5am
03:16:15 <oerjan> Arc_Koen: pretty much.
03:16:30 <Arc_Koen> so, do i get to have my name in the wiki for my interpreter or something? :)
03:16:40 <Arc_Koen> along with a few fueue programs
03:17:04 <oerjan> Arc_Koen: sure
03:18:17 <oerjan> note that everything put directly on the wiki must be public domain / CC0 licensed
03:19:14 <oerjan> also it's not very good for large programs.
03:19:55 <zzo38> It is possible to do literate Haskell directly on the wiki.
03:20:03 <zzo38> (It still needs to be public domain)
03:20:27 <Arc_Koen> well, I don't know much about licenses but "CC0" doesn't sound so scary
03:20:56 <Arc_Koen> I'm guessing it stands for the same commutative commons as wikipedia, or something
03:20:57 <zzo38> CC0 is public domain; no copyright.
03:21:06 <zzo38> No it is not the same as Wikipedia.
03:21:07 <oerjan> it basically means "as close to public domain as we can get in your jurisdiction"
03:21:28 <Arc_Koen> I'm ok with that
03:21:29 <oerjan> Arc_Koen: it's creative commons, but a different license
03:22:17 <Arc_Koen> (the main question is, is my code readable enough and will it not put shame on me or something :p)
03:22:36 <oerjan> larger programs are usually put elsewhere and linked from the wiki.
03:23:03 <oerjan> well we haven't actually _seen_ that much of your code, have we >:)
03:23:40 <Arc_Koen> I can send it to you by email or something
03:23:51 <oerjan> oops
03:24:23 <oerjan> i'm sure it's fine, anyway
03:24:44 <oerjan> (elliott will be merciless regardless >:) )
03:25:12 <Arc_Koen> except for that fength bug which I "corrected" by replacing fength by Queue.length fueue when it was used
03:25:35 <Arc_Koen> that means I have a lot of function trying to keep the correct length at all time, and who fail at that
03:26:23 <oerjan> well you can always remove that part when you use Queue.length instead.
03:27:16 <oerjan> it might be constant time, anyhow, although i'm not sure how to see the source
03:27:19 <Arc_Koen> aaaand bug fixed
03:28:01 -!- Phantom__Hoover has quit (Read error: Connection reset by peer).
03:28:06 <oerjan> in fact _if_ Queue.length is constant time, it's sort of silly to keep track yourself.
03:28:15 <Arc_Koen> good point
03:28:45 <Arc_Koen> though I'm guessing they would have mentioned it if it was constant time
03:29:26 <oerjan> maybe they considered it obvious.
03:30:27 <Arc_Koen> I doubt that; List.length's and Queue.length's description are quasi-identical, and List.length is definitely not constant time
03:31:14 <oerjan> well it's only constant time if they cache the length
03:31:55 <Arc_Koen> my point is, if they cached the length then Queue.length would be using "something you can't use" and they would have said it
03:32:12 <Arc_Koen> the same way they said Queue.transfer was constant time
03:32:43 <Arc_Koen> I'll ask someone tomorrow
03:35:22 <oerjan> it would be easy if i could just find the source :(
03:37:17 <Arc_Koen> I'm note sure there even is an ocaml source
03:38:54 <oerjan> i managed to find a stackoverflow thread about it
03:39:53 <oerjan> "The queue's length is "
03:39:54 <oerjan> 33 also recorded, so as to make [length] a constant-time operation.
03:40:00 <oerjan> http://caml.inria.fr/cgi-bin/viewvc.cgi/ocaml/version/4.00/stdlib/queue.ml?revision=12217&view=markup
03:41:42 <Arc_Koen> urh, they made it cyclic
03:42:23 <Arc_Koen> you win then, I'm removing all fength stuff
03:43:13 <oerjan> \o/
03:44:20 <Sgeo> Wait, how is length a constant time operation?
03:45:07 <oerjan> Sgeo: because it's stored in the structure
03:45:16 <Sgeo> Ah
03:45:45 <Arc_Koen> the hell is that
03:45:47 <Arc_Koen> tail = Obj.magic None
03:46:00 <Arc_Koen> I told you it was magic
03:47:03 <Arc_Koen> this library looks almost more like C than Ocaml though
03:48:17 <oerjan> i recall back when i was looking at ocaml, their yacc-alike was a C program modified to output ocaml source :)
03:49:29 <oerjan> i don't know if they've rewritten ocamlyacc in ocaml proper
03:50:19 <oerjan> Arc_Koen: iiuc that tail = Obj.magic None was because they didn't want the space overhead of _actually_ using options
03:50:42 <Arc_Koen> oh
03:51:03 <Arc_Koen> so Obj.magic basically means "do what you want while pretending you're not doing it"?
03:52:25 <Arc_Koen> external magic : 'a -> 'b = "%identity" that reminds me... I have never used the objective part of ocaml
03:52:33 <Arc_Koen> anyway, have a good night
03:52:39 <Arc_Koen> or whatever's left of it
03:52:44 <oerjan> good night
03:53:28 <Arc_Koen> if you or atriq want me to send them my interpreter my email is ltn.koen@gmail.com
03:53:38 -!- Arc_Koen has left.
03:54:09 -!- oerjan has quit (Quit: Not much, anyhow).
03:54:44 -!- zzo38 has quit (Remote host closed the connection).
03:56:06 -!- zzo38 has joined.
04:04:42 <kmc> " The idea behind the build is allowing people to explode a watermelon with their mind using a Star Wars Force Trainer EEG toy."
04:15:39 -!- xuzh1 has joined.
04:16:40 -!- MoALTz has joined.
04:16:58 -!- DHeadshot has joined.
04:17:03 -!- DH____ has quit (Read error: Connection reset by peer).
04:27:11 -!- Concreto has quit (Quit: Concreto).
04:27:24 -!- Concreto has joined.
04:27:52 <kmc> "Making sure a baby is still breathing with lasers and a wiimote"
04:28:09 <kmc> "HOME OF THE WIKI WEAPON. A COLLABORATIVE PROJECT TO CREATE FREELY AVAILABLE PLANS FOR 3D PRINTABLE GUNS."
04:28:18 <kmc> stupid cyberpunk future
04:32:20 <kmc> <zzo38> CC0 is public domain; no copyright.
04:32:28 <kmc> as oerjan said, this may or may not be true, depending on your jurisdiction
04:32:51 <kmc> in some places copyright is one of those rights you can't sign away, and there's no way to dedicate your work to the public domain other than to die and wait x years
04:33:23 <zzo38> Yes I know that. But why do some juristictions have that?
04:33:37 <kmc> so CC0 attempts to provide as broad a license as possible, in very explicit terms
04:33:53 <kmc> which means it's a good deal more verbose than WTFPL or your standard "public domain dedication"
04:34:00 <pikhq> CC0 is a pointer to whatever the least restrictive status is.
04:34:16 <kmc> no, it's a pretty long document
04:34:25 <pikhq> I'm saying *conceptually* that's what it is.
04:34:30 <kmc> it doesn't just say "This shall be under the least restrictive status"
04:34:36 <zzo38> Yes, I understand, it would make it public domain if possible. WTFPL is like public domain but always copyright and much shorter
04:34:51 <kmc> it enumerates in some detail all the things you are explicitly allowed to do
04:34:57 <kmc> i think that's conceptually very different from a "pointer"
04:35:24 <kmc> zzo38: i don't know why you can't sign away copyright. perhaps legislators thought that employers would force their employees to do so?
04:35:29 <pikhq> Isn't it like the other CC licenses, where it refers to a different license for each country?
04:35:41 <kmc> but i think in such jurisdictions you can still assign copyright to your employer for work for hire
04:35:56 <kmc> pikhq: i don't believe so
04:35:59 <pikhq> Ah, no, it's a single text.
04:36:09 <kmc> http://creativecommons.org/publicdomain/zero/1.0/legalcode
04:36:20 <pikhq> I thought it was like the other CCs.
04:36:41 <kmc> also, it waives other copyright-like things, and provides a warranty disclaimer
04:37:00 <kmc> which you don't automatically get with WTFPL etc
04:37:18 <pikhq> So, it's a much more general MIT license.
04:37:33 <zzo38> Well, yes; WTFPL is designed to be very simple.
04:37:58 <zzo38> CC0 is designed to be very complete.
04:38:48 <kmc> CC0 lacks this restriction from the MIT license: "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software."
04:39:36 <pikhq> Ah, right.
04:39:48 <pikhq> The MIT is merely mostly permissive, not all-permissive.
04:39:48 <zzo38> Maybe they should include CC0 in Haskell cabal if you push "public domain" it include CC0 in case it is not public domain in your jurisdiction.
04:40:42 <kmc> yeah that would be nice
04:41:38 <zzo38> Some people have told me not to select public domain license because some jurisdictions do not allow it.
04:44:17 <kmc> apparently defensedistributed.com succeeded in 3D printing an AR-15 lower receiver
04:45:29 <pikhq> That's going to do some interesting things to gun laws.
04:46:30 <kmc> yeah
04:46:55 <kmc> this is significant because the lower receiver is the part which is legally a gun in the USA
04:47:01 <kmc> the rest of the parts can be purchased without restriction
04:47:42 <kmc> "Firearms require a good deal more precision than a Bre Pettis bobblehead"
04:48:01 <kmc> bahaha
04:48:28 <pikhq> Can't you make functioning (if shitty) guns in practically any garage?
04:48:38 <kmc> so i've heard
04:50:24 <kmc> but it will suck compared to an AR-15 made with real parts except for the LR, which doesn't have much mechanical or heat stress anyway
04:51:45 <pikhq> Yeah.
04:52:02 <pikhq> An AR-15 with stock-parts-modulo-the-lower-receiver is, well, a real modern firearm.
04:52:12 -!- MoALTz has quit (Ping timeout: 265 seconds).
04:53:04 <kmc> but also I think it's not hard to just buy a complete AR-15 in the USA
04:53:31 <pikhq> It's not.
04:54:27 <pikhq> From what I understand it's no harder than any other firearm.
04:54:42 <kmc> and printing the LR doesn't particularly help you convert it to full auto, or add other illegal stuff
04:55:10 <pikhq> Does mean you could get your hands on one without complying with purchasing restrictions though.
04:55:34 <kmc> california has strict rules about assault rifles
04:55:43 <kmc> but you can just drive to nevada
04:56:06 <pikhq> There's federal purchasing regulations that you wouldn't need to deal with, either...
04:56:16 <kmc> yeah
04:56:19 <kmc> i don't know about those
05:22:34 -!- impomatic has quit (Ping timeout: 244 seconds).
05:24:51 -!- sivoais has quit (Read error: Connection reset by peer).
05:25:30 -!- sivoais has joined.
05:31:26 -!- Concreto has quit (Quit: Concreto).
05:52:05 -!- asiekierka has joined.
06:11:53 <zzo38> Did you see my code (card ...) I have posted earlier today?
06:14:33 <coppro> apparently the following is going to be played at the academic sessions for first years in the math faculty: http://www.youtube.com/watch?v=UQHaGhC7C2E
06:18:35 <coppro> orientation should be good this year
06:42:54 <zzo38> Teleportation needs orientations.
06:45:28 <zzo38> Did you see my code (card ...) I have posted earlier today? I would intend that WizardCard compiler would read such things as part of a larger program, and then compile it into a Haskell code (not only in one place, but considering its effects on the rest of the program so that part gets compiled elsewhere too).
06:52:12 <coppro> I did not
06:55:34 -!- xuzh1 has quit (Ping timeout: 244 seconds).
06:55:44 <zzo38> Would you know anything about such things?
06:55:56 <zzo38> (Read the logs if it is necessary to do so)
06:58:27 <coppro> I don't have the time
06:58:41 <zzo38> OK, then please don't.
06:59:29 <zzo38> (or do you not have the time for "don't" either?)
06:59:33 <coppro> hha
06:59:37 <coppro> yeah, that
07:15:14 -!- xuzh1 has joined.
07:21:57 -!- zzo38 has quit (Quit: Hold second one as you hold a pencil.).
07:41:22 -!- xuzh1 has quit (Ping timeout: 265 seconds).
07:44:19 -!- xuzh1 has joined.
07:44:19 -!- xuzh1 has left.
08:13:57 -!- ais523 has quit.
08:14:30 -!- DHeadshot has quit (Ping timeout: 264 seconds).
08:17:20 -!- DHeadshot has joined.
08:28:04 <itidus21> zzo: does don't take > 0 time?
08:28:46 <itidus21> "don't" is surely an overhead
08:36:32 -!- atriq has joined.
08:51:52 -!- kinoSi has quit (Read error: Connection reset by peer).
08:52:19 -!- kinoSi has joined.
09:09:51 -!- ineiros has quit (Ping timeout: 240 seconds).
09:10:05 -!- ineiros has joined.
09:31:49 -!- nooga has joined.
09:41:47 <atriq> It occurs to me that I have no idea how to write a parser
09:41:47 <lambdabot> atriq: You have 2 new messages. '/msg lambdabot @messages' to read them.
09:41:52 <atriq> @messages
09:41:52 <lambdabot> Phantom__Hoover said 10h 51m 42s ago: don't not learn parsec
09:41:52 <lambdabot> oerjan said 10h 49m 48s ago: pattern guards _are_ vanilla haskell, they were added in haskell 2010
09:42:18 <atriq> @tell Phantom_Hoover I won't not learn parsec!
09:42:18 <lambdabot> Consider it noted.
09:42:34 <atriq> @tell oerjan Wow, I better learn them too!
09:42:34 <lambdabot> Consider it noted.
09:46:18 -!- FreeFull has quit (Ping timeout: 264 seconds).
09:46:57 -!- FreeFull has joined.
09:48:22 <fizzie> atriq: You take some kind of input, and produce a parse tree or some other kind of parsed result; that's how you write a parser.
09:48:37 <atriq> Wow
09:48:42 <atriq> You learn something every day
09:48:47 <atriq> And it's not even 11 o'clock yet!
09:49:12 <fizzie> Here, it is.
09:49:19 <atriq> Wow!
09:49:52 <fizzie> @localtime fungot
09:49:53 <fungot> fizzie: we are become more happy and less fnord, now that/ law is :) universal fnord but many good observers to rank as a geographical race; and possibly hereafter out :)/ mouth have to be admitted.
09:50:05 <fizzie> Oh, right, that was based on CTCP time.
09:50:15 -!- Phantom_Hoover has joined.
09:50:21 <fizzie> Maybe I should add some CTCP replies some day; VERSION, at least.
09:52:59 -!- impomatic has joined.
09:55:12 -!- ais523 has joined.
10:08:38 -!- ais523 has quit.
10:38:07 -!- derdon has joined.
10:50:14 -!- Arc_Koen has joined.
10:50:38 <Arc_Koen> hello
10:50:55 <Arc_Koen> atriq: so how's that Haskell interpreter going?
10:51:19 <Arc_Koen> also, I had a question: in the initial program, is it possible to use negative numbers?
10:51:45 <Arc_Koen> if so, what's the distinction between "the function - followed by a positive number" and "a negative number"?
10:54:49 -!- ais523 has joined.
11:00:53 <ais523> 30 kilobel per second is far too slow for a software package download, right?
11:01:02 <ais523> (I assume it means kilobyte)
11:04:23 -!- TeruFSX has quit (Ping timeout: 265 seconds).
11:07:10 <fizzie> I don't know; it could also mean, you know, 30 kilobel; i.e. 300 000 dB. Did it mention a bandwidth too? You could use that and the Shannon-Hartley theorem to get bits per second out of it.
11:07:31 <ais523> no obvious bandwidth mentioned
11:07:42 <fizzie> 30 kilobel is a really good channel, anyway.
11:07:58 <ais523> also loud enough to destroy the Earth if interpreted as sound intensity
11:08:14 -!- MoALTz has joined.
11:08:42 <Arc_Koen> global security recommends that you don't download this package
11:08:45 <fizzie> Assuming the standard reference value, at least.
11:08:47 <ais523> I'm waiting for cygwin to install all packages matching *ocaml* on a work computer
11:08:56 <ais523> and it's spending a long time just on the download
11:09:02 <ais523> Arc_Koen: huh, didn't expect to see you here
11:09:07 <ais523> small world indeed…
11:09:34 <Arc_Koen> well, you're kind of the one who brought me here
11:09:36 <fizzie> It's a bit hard to say whether the "kilobel" is a kilobyte or a kilobit without any other context. It's reasonably slow in both cases, though.
11:12:32 <ais523> I don't think I've seen capital B for bit before
11:12:37 <ais523> although it's commonly misused for byte
11:12:59 <Arc_Koen> would be like using capital M for the minimum function
11:13:25 <ais523> I guess it's possible to argue that KB genuinely does mean kilobyte or perhaps even kibibyte (because capital K is not an SI prefix), but kB, as shown in the Cygwin installer, is pretty uncontroversially kilobel :)
11:14:06 <fizzie> Ah, it was as "KB".
11:14:07 <ais523> incidentally, *ocaml* seems like too broad a pattern (it includes, for instance, Emacs' ocaml-mode, which means it pulls in all of Emacs), but it's not me who's doing the install, just me who's waiting for it to finish
11:15:41 <ais523> hmm TIL: trollface.{png,jpg} dates from 2008, I somehow assumed it was much older
11:17:04 <fizzie> Anyway, kB is as uncontroversially kilobel as kb is a kilobarn.
11:17:20 -!- ais523 has quit (Read error: Connection reset by peer).
11:17:35 -!- ais523 has joined.
11:19:33 -!- ais523 has quit (Read error: Connection reset by peer).
11:19:40 -!- ais523_ has joined.
11:19:45 -!- ais523_ has changed nick to ais523.
11:21:29 <fizzie> That was noisy.
11:26:59 -!- mig22 has joined.
11:29:02 -!- impomatic has quit (Quit: impomatic).
11:29:55 -!- hogeyui_ has quit (Ping timeout: 244 seconds).
11:32:47 <atriq> Arc_Koen, it isn't possible to have negative numbers in the initial program
11:33:01 <Arc_Koen> ok
11:33:14 <Arc_Koen> my ocaml interpreter seems to be following all specifications then :)
11:33:16 <atriq> I'm struggling to write a parser because I suck at parsers
11:33:26 <atriq> Also I can't type because Guitar Hero
11:33:32 -!- itidus20 has joined.
11:33:34 <atriq> My fingers hurt now
11:33:38 <Arc_Koen> haha
11:34:10 <atriq> Do not let me try to do Cliffs of Dover past medium difficulty
11:34:36 <Arc_Koen> out of curiosity, what are you using for blocks?
11:34:44 <Arc_Koen> the same structure as for the main queue?
11:34:46 <atriq> Yeah
11:35:08 <Arc_Koen> that's what I was doing with the C version but in Ocaml it sounded way more natural to use simple lists
11:35:08 <atriq> That was what I intended when I wrote the spec, I tried to make them as close to actual queues as possible
11:35:22 <fizzie> For some reason I had the thought "Guitar hero? But then shouldn't that mean it's your feet that hurt."
11:35:27 <fizzie> Brains: sometimes they don't work.
11:35:35 <atriq> :)
11:35:42 <Arc_Koen> since blocks are not executed, they don't need to be in an actual queue
11:36:27 <Arc_Koen> the only functions on them are "add one element" and "deblock it all"
11:36:42 -!- itidus21 has quit (Ping timeout: 264 seconds).
11:36:47 <atriq> It's convenient to have them the same as the main queue, because they are essentially the same as the main queue in terms of how they can be used
11:37:09 <atriq> Arc_Koen, the elements are added to the back, but when it's deblocked, they are deblocked front first
11:37:17 <Arc_Koen> I know
11:37:32 <ais523> <Anonymous> OMG no. You didn't just write "Some of the GNU Fortran runtime is written in m4."
11:37:39 <Arc_Koen> the deblock function reverses the list, which is not constant time, but I think it's worth it
11:37:51 <ais523> Arc_Koen: you have an OCaml interp?
11:37:55 <ais523> what language is it written in?
11:37:57 <Arc_Koen> for Fueue
11:38:05 <Arc_Koen> no, a Fueue interpreter written in ocaml
11:38:09 <ais523> ah, OK
11:38:21 <ais523> I thought it was a bit of a large lang for writing custom interps for
11:38:29 <Arc_Koen> indeed
11:38:52 <Arc_Koen> I had the project to write an interpreter in ocaml for a reduced set of ocaml
11:39:00 <Arc_Koen> but it was so boring
11:39:32 <Arc_Koen> it was all "if you meet a sum, then sum it. if you meet a function application, then applicate the function. if you meet an x, do an x."
11:40:25 <Arc_Koen> (by "reduced set" I mean "lists, variables, constants, let...in, if...then...else, function application, and very very few other things"
11:41:35 -!- hogeyui_ has joined.
11:43:12 <ais523> Arc_Koen: that's how interpreters generally work
11:43:17 <ais523> and why they're often quite easy to write
11:43:43 <Arc_Koen> yep, but writing it in its own language made it even more redundant
11:44:20 <Arc_Koen> at some point the question "why the hell did I want to do that?" must have become too loud for me to continue
11:47:40 <fizzie> We ran a thing in one of our courses on the SICP meta-circular interpreter.
11:47:54 <fizzie> Because it had some resource limits (counted as Scheme primitives) to apply.
11:52:45 <ais523> my automarker script does its resource limits with alarm and prctl
11:53:22 <ais523> prctl is kind-of neat for the purpose, because if something uses too much memory, then malloc ends up getting sigkilled when it tries to call brk
11:55:17 <atriq> I think my parser works
11:57:42 <fizzie> ais523: But are the time limits exactly fair in terms of executed things? (We later went to Java and setrlimit anyway, though.)
11:57:51 <atriq> So, ignoring the 72 line function and the fact it doesn't actually do anything yet, I think I've got a good program
12:14:03 <FreeFull> I always make my programs do something first and then iterate
12:14:30 <atriq> Ah, the top-down approach
12:14:57 <atriq> I take the "I have no idea what I'm doing" approach
12:15:01 <atriq> I don't finish many things
12:15:20 <oklopol> i do depth first
12:15:25 <oklopol> and sometimes A*
12:15:37 <oklopol> but never top down or bottom up, that's just silly
12:16:26 <FreeFull> Starting with a program does something has the advantage of you being able to see it do something each time you make a change
12:16:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
12:17:04 <oklopol> usually that means you play with it for half an hour every time you do anything.
12:17:26 <FreeFull> If you have a REPL you can just test parts of the program in the same way, rather than the whole program at once
12:18:02 <FreeFull> oklopol: So I should write it all at once and then figure out that I did everything wrong and have to redo it?
12:18:26 <fizzie> I think oklopol's opinion is that you shouldn't write it wrong in the first place.
12:18:29 <fizzie> (He doesn't.)
12:18:34 <fizzie> Unless I'm remembering someone else.
12:18:42 <oklopol> first of all i'm just saying random things. second of all imo the sensible way is to write a few tests for each function.
12:18:44 <FreeFull> Sometimes you don't even know what you want
12:19:27 <FreeFull> oklopol: Let's say I want to write a program for the purpose of "displaying something pretty"
12:19:36 <FreeFull> How do I write an automatic test for prettiness? =P
12:20:20 <oklopol> well true true, and similar with games which are nowadays my main projects
12:20:41 <oklopol> but anyhow you will probably have most of the actual functions doing well-defined things which you can test
12:20:55 <oklopol> the prettiness is done by finding a nice way to mangle these together
12:21:00 <oklopol> maybe.
12:21:02 <oklopol> maybe not.
12:21:03 <FreeFull> But those I tend to write correctly
12:21:11 <oklopol> right
12:21:27 <oklopol> well that's the important part.
12:21:33 <oklopol> who cares if it actually works
12:21:42 <FreeFull> I imagine tests are useful if you have a large project and don't want to break anything
12:22:10 <Arc_Koen> atriq: can I get a look at your program? I've never seen haskell before
12:22:23 <atriq> This probably won't be the best example
12:23:08 <atriq> http://hpaste.org/73936
12:23:49 <atriq> I'm not the most literate programmer
12:24:46 <Arc_Koen> oh
12:25:09 <Arc_Koen> my items are just "Fun of char, Num of int, Block of item list"
12:25:28 <atriq> I prefer it like this, due to the enhanced safety
12:25:46 <atriq> Any illegal character is caught during parsing, and I don't have to worry about adding some later
12:26:08 <FreeFull> atriq: That code looks very C-ish
12:26:40 <atriq> How so?
12:26:56 <oklopol> what an insult
12:32:19 <atriq> How is that C-ish at all?
12:32:37 <atriq> Other than being nigh-unreadable
12:36:56 <Arc_Koen> it looks like a simple pattern matching on the functions but I have no idea what it does with those functions
12:37:37 <atriq> It doesn't work
12:44:18 <Arc_Koen> compare « (FPop :< fs) -> case viewl fs of EmptyL -> modify succ >> return prog (_ :< fs') -> put 0 >> return fs' » and « | Fun '!' -> if (matchpeek Any Zero) then ignore (pop ()) else (push (Fun '!'); whatsnext := Sentback) »
12:46:03 <atriq> I really need to start using pattern guards
12:46:04 -!- boily has joined.
12:49:28 -!- ais523 has quit (Ping timeout: 256 seconds).
12:49:39 <FreeFull> atriq: I'm thinking in C it'd be just a giant switch statement
13:00:40 <atriq> I really need to use more comments, too
13:00:48 <Arc_Koen> hum apparently my fueue interpreter discards blocks instead of sending them back to the end
13:01:03 <Arc_Koen> and the deblock function is always sent back even when followed by a block
13:03:25 <fizzie> Arc_Koen: Regarding debugging prints and whatever, you could consider adding a trace/single-step kind of mode that'd print the fueue contents (or maybe say up to K first and last items) at each step; it might even be useful for all the Fueue developers, in addition to making debugging easier.
13:03:29 <atriq> YES
13:03:31 <atriq> Brilliant
13:03:39 <atriq> I worked out what I was doing wrong
13:03:42 <atriq> I had < instead of >=
13:04:06 <atriq> So it receiving input all the time
13:04:32 <Arc_Koen> fizzie: good idea; I already have a print_queue function I use for debugging but when it works i'll try to add an option to do that
13:11:36 <Arc_Koen> atriq: are empty blocks allowed in fueue programs? I may have asked that already
13:12:42 -!- DHeadshot has quit (Ping timeout: 264 seconds).
13:13:24 -!- atriq has quit (Ping timeout: 248 seconds).
13:19:21 -!- ais523 has joined.
13:20:20 <Arc_Koen> ok, I think it works
13:20:26 <Arc_Koen> let's try it on the ABCD program
13:20:58 <nortti> http://qdb.us/307731
13:21:42 -!- atriq has joined.
13:22:06 <Arc_Koen> )$ 2[)$-------- 2~)~~[)[)~(~[~[$~H~]~)%+~ 91-):]~ 1+:])]]~[$~H~])%+- 91)[ 65][ 65]
13:22:06 <Arc_Koen> ABCDEFGHIJKLMNOPQRSTUVWXYZthis has properly ended
13:22:27 <Arc_Koen> atriq: both my Ocaml and C versions of the interpreter work
13:22:47 <Arc_Koen> though the ocaml versions has some issues with input
13:22:52 <atriq> Yay!
13:23:09 <fizzie> fungot: See nortti's link; maybe you could be friends?
13:23:10 <fungot> fizzie: dunno what ephemeral arrays are, i'll leave it at that. any custom adt.
13:29:07 <atriq> Mine seems to have a problem with it
13:30:01 <Arc_Koen> echo "ABCD" | ./ofueue ' ' prints ABCD then raise an End_of_file error
13:30:43 <Arc_Koen> ./ofueue ' ' without the pipe waits for me to make an input, prints it, and then things become weird
13:30:54 <atriq> > ord '\n'
13:30:55 <lambdabot> 10
13:31:21 -!- ais523_ has joined.
13:31:48 -!- ais523 has quit (Read error: No route to host).
13:32:16 <Arc_Koen> that could be fixed with something like "try (input_char stdin) with | End_of_file -> wait for more" except I have no idea how to make it understand "wait for more"
13:34:38 <fizzie> Not just End_of_file -> -1?
13:34:46 <fizzie> Assuming that's the "standard".
13:35:13 <Arc_Koen> well if I did that it wouldn't wait for my input
13:35:37 -!- augur has quit (Remote host closed the connection).
13:36:04 <fizzie> What, so "input_char stdin" is some kind of a non-blocking thing? That'd be weird.
13:36:32 <Arc_Koen> well I'm trying to understand why sometimes it blocks and sometimes not
13:37:54 -!- ais523_ has quit (Ping timeout: 252 seconds).
13:38:48 <fizzie> I don't know OCaml, but I'd certainly expect it would always block unless there is input available to be read, or the end of file has happened. (And after the latter, there won't be any more input ever.)
13:39:52 <Arc_Koen> yes, but how do you know whether there is input available to be read?
13:40:20 <Arc_Koen> apparently "there is no input available" and "the next input is end_of_file" are the same
13:40:29 -!- monqy has quit (Quit: hello).
13:40:56 <fizzie> That sounds very unlikely, but certainly possible.
13:41:15 <fizzie> It's just that normally, if you don't do any kind of tricks, input functions will in fact wait if there is no input.
13:42:25 <fizzie> I mean, if there is no input but there is still a chance that there could be some input later.
13:42:42 <Arc_Koen> well, it kind of waits, but (at least in the case of the infinite cat loop) it doesn't actually print anything until it reaches end_of_file
13:42:53 <Arc_Koen> I guess the problem is with the print_char function then
13:43:34 <Arc_Koen> the same thing happened yesterday in C when I used printf to debug and the printf didn't print anything cause I hadn't included \n in it
13:44:23 <fizzie> Yes, stdout-y things tend to be line-buffered by default; but I suppose in most cases your input would have a \n in it, and therefore the output too, and things should become visible at that point.
13:44:49 <Arc_Koen> that's what it does with the C program
13:45:54 <Arc_Koen> that is, if I type a char followed by enter, it takes the char and the \n; if I type a char and ^D, it takes the char only
13:46:09 <Arc_Koen> but with the ocaml version ^D has absolutely no effect
13:46:27 <Arc_Koen> and "enter" does give him a \n but without making things visible
13:47:26 <atriq> You need to change the buffering settings
13:47:33 <atriq> I think I know how to do it in Haskell
13:47:59 <fizzie> Possibly you could just "flush stdout" manually after every output?
13:48:36 <fizzie> Some googling would sort of indicate that OCaml's stdout/stderr channels are fully buffered by default.
13:50:05 <atriq> Well, that's an interesting error
13:50:26 <fizzie> At least based on someone complaining that when he writes complete lines to stdout and stderr, the ordering still gets mixed up.
13:50:47 <atriq> ~ was broken
13:50:47 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
13:51:10 <atriq> ~ab... became b...ba
13:51:12 <fizzie> What's ~duck do?
13:51:17 <atriq> ~duck
13:51:17 <cuttlefish> --- ~duck query
13:51:18 <cuttlefish> --- Query information from Duck Duck Go
13:51:23 <atriq> ~duck hello
13:51:23 <cuttlefish> hello definition: an expression or gesture of greeting used interjectionally in greeting, in answering the telephone, or to express surprise.
13:51:31 <atriq> ~duck laconic
13:51:31 <cuttlefish> A laconic phrase is a concise or terse statement, named after Laconia, a polis of ancient Greece surrounding the city of Sparta proper.
13:51:32 <fizzie> Oh, so it's like Google except with a duck.
13:51:40 <atriq> More like a dictionary
13:51:46 <atriq> ~duck fiery
13:51:46 <cuttlefish> fiery definition: consisting of fire.
13:51:52 <atriq> ~duck ironic
13:51:52 <cuttlefish> Irony is a rhetorical device, literary technique, or situation in which there is a sharp incongruity or discordance that goes beyond the simple and evident intention of words or actions.
13:51:55 <fizzie> ~duck ways to make soap
13:51:55 <cuttlefish> --- No relevant information
13:51:57 <fizzie> aw.
13:52:22 <atriq> YES
13:52:26 <atriq> oerjan's program works
13:52:41 <fizzie> I was under the impression that DDG was a general-purpose search engine, with all kinds of small inventions.
13:53:01 <atriq> ~duck Hexham
13:53:01 <cuttlefish> --- No relevant information
13:53:07 <atriq> ~duck Helsinki
13:53:08 <cuttlefish> Helsinki is the capital and largest city of Finland.
13:53:15 <atriq> ~duck Istanbul
13:53:16 <cuttlefish> Formerly Constantinople The largest city of Turkey, in the northwest part of the country on both sides of the Bosporus at its entrance into the Sea of Marmara.
13:53:28 <atriq> Istanbul isn't Constantinople!
13:55:03 <fizzie> ~duck Constantinople
13:55:04 <cuttlefish> --- No relevant information
13:56:02 <fizzie> It seems to be what DDG returns for "define X".
13:56:31 <fizzie> Or maybe not quite, because that also knows about Hexham.
13:56:45 <fizzie> (Returning a Wikipedia reference.)
13:56:56 <fizzie> All the matching definitions so far have been the Free Dictionary ones.
14:06:02 <atriq> Okay, the final bit of this interpreter is being annoying
14:14:16 -!- mig22 has quit (Quit: mig22).
14:16:35 <FreeFull> ~duck Constantinopole
14:16:36 <cuttlefish> Constantinople (ɽıĹ, ɽıĹ - Konstantinopolis, Konstantinopoli; Constantinopolis; - Qostantiniyye; and modern 0stanbul) was the capital of the Eastern Roman Empire, the Latin and the Ottoman Empire.
14:17:07 <atriq> What!?
14:17:15 <atriq> ~duck Hexhaom
14:17:15 <cuttlefish> --- No relevant information
14:19:34 <FreeFull> ~duck Hexham
14:19:34 <cuttlefish> --- No relevant information
14:23:10 -!- soundnfury has quit (Remote host closed the connection).
14:23:52 -!- augur has joined.
14:25:38 <boily> there I am, gently working my day out, and when I switch to IRC what do I see: people abusing my bot once again.
14:25:59 <boily> I knew you guys were reliable for this kind of matters :D
14:26:41 <boily> ~duck duck duck
14:26:42 <cuttlefish> Software description: duck duck is a quick application launcher for Gnome.
14:27:07 -!- Phantom_Hoover has joined.
14:27:13 <atriq> ~duck XChat
14:27:14 <cuttlefish> XChat is a popular Internet Relay Chat client.
14:27:25 <atriq> ~duck Firefox
14:27:26 <cuttlefish> Firefox A very popular open source Web browser for Windows, Mac and Linux from the Mozilla project.
14:27:32 <atriq> ~duck Edinburgh
14:27:33 <cuttlefish> The capital of Scotland, in the eastern part of the country on the Firth of Forth.
14:27:40 <atriq> ~duck Forth
14:27:41 <Phantom_Hoover> hey taneb
14:27:41 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
14:27:41 <cuttlefish> A river of south-central Scotland flowing about 187 km eastward to the Firth of Forth, a wide inlet of the North Sea.
14:27:44 <atriq> Phantom_Hoover, hey
14:27:47 <Phantom_Hoover> did you do that thing
14:27:57 <atriq> The thing that I think you mean?
14:27:58 <atriq> Yeah
14:32:31 <atriq> Okay, for my Fueue interpreter
14:32:34 <atriq> The Interpreter works
14:32:38 <atriq> The Parser works
14:32:42 <atriq> The input doesn't work
14:32:52 <Phantom_Hoover> input schminput
14:34:11 <atriq> File input, that is
14:34:25 <atriq> Well, file input and parsing aren't playing nice
14:34:28 <atriq> I think they both work
14:47:22 <atriq> @ask oerjan Can I get you to write the main function for me?
14:47:22 <lambdabot> Consider it noted.
14:47:43 <atriq> I saw a van today marked "Elliot [sic] Hird and co."
14:49:15 <Arc_Koen> atriq: my C version is working, and can use --print as an option to print the current queue at each iteration
14:49:34 <atriq> :)
14:49:38 <atriq> Wow
14:50:08 <Arc_Koen> if you have a corner of the web dedicated to fueue I would be glad to have the interpreter there, so that we can get rid of the "unimplemented" on the wiki
14:50:44 <Arc_Koen> and we could also add a few programs on the wiki, such as (empty), hello world, the infinite loop ):[):], and oerjan's ABCD...
14:51:26 <atriq> Gregor, can Arc_Koen put his interpreters for Fueue in the Esoteric File Archive?
14:52:14 <Arc_Koen> btw, yesterday I had an idea for my first esoteric language
14:52:18 -!- kinoSi has quit (Read error: Connection reset by peer).
14:52:23 <Arc_Koen> it'd be called "Ftack"
14:52:30 <Gregor> atriq: Do I have access to the Esoteric File Archive? >_>
14:52:37 <atriq> Gregor, the wiki says you do
14:52:46 -!- kinoSi has joined.
14:52:49 <atriq> Are you the same Gregor as normal?
14:52:57 <Gregor> Why does the wiki say I do <_<
14:53:08 <atriq> Maybe because you do?
14:53:27 <Gregor> I might…
14:53:52 <atriq> http://esolangs.org/w/index.php?title=The_Esoteric_File_Archive&diff=prev&oldid=8132
14:53:56 <atriq> Your past self thinks you do
14:54:35 <Arc_Koen> atriq: so in Ftack, everything is like Fueue except we're using a stack instead; if the first value is a function which cannot be executed immediately, or if it's a block, it is sent back to the top of the stack
14:54:56 <atriq> So it's a deque?
14:55:01 <Arc_Koen> no, it's a stack
14:55:15 <Arc_Koen> (it's a joke, actually)
14:55:16 <atriq> Oh, I read that wrong
14:55:19 <Gregor> Gee, even I forgot I have write access I guess.
14:55:27 <Gregor> Well, if I can remember my username and password, gimme dem files.
14:55:53 <Arc_Koen> shall I send you an email, or may I try the dcc stuff?
14:55:53 <atriq> Arc_Koen, send Gregor your interpreters, he'll put them in the esoteric file archive
14:56:10 <atriq> atriq, stop pretending nobody but you knows what they're doing
14:56:21 <Gregor> Feel free to try DCC.
14:57:03 <Gregor> Anybody know if you can check whether you have svn commit access without committing? X-D
14:57:57 <atriq> "In this analogy, the orange is the Trojan, the person is Earth, and the Ferris wheel is our orbit around the sun."
14:58:26 <Gregor> "In this analogy, the orange is the Trojan™, the person is Earth, and the Ferris wheel is our orbit around the sun."
14:58:32 <Gregor> Oh what a difference a ™ can make.
14:59:06 <Arc_Koen> can it still be edited once it's in the archive?
14:59:20 <Gregor> It's svn, it can always be updated.
14:59:27 <Arc_Koen> ok
14:59:45 <Arc_Koen> I'm just asking in case someone points out how dirty my code is, or something
15:00:05 <Gregor> Your code is bad and you should feel bad.
15:01:20 -!- pikhq_ has joined.
15:01:29 <Gregor> Received a malformed DCC request from Arc_Koen.
15:01:36 <Gregor> Mayhap email ;)
15:01:38 <Arc_Koen> well that's a start
15:02:01 -!- pikhq has quit (Ping timeout: 268 seconds).
15:02:45 <Arc_Koen> is that better?
15:02:55 <Gregor> I clicked 'accept' but nothing is happening.
15:04:06 <Arc_Koen> ok, then it's probably not working
15:10:24 <Arc_Koen> aaand sent
15:21:24 <FreeFull> Arc_Koen: How about something with circular buffers?
15:21:43 <FreeFull> With the feature that one of the elements possible of the circular buffer is a circular buffer
15:22:16 <Arc_Koen> the first would seem cool, but I'm not quite sure I understand how the second works
15:23:04 <FreeFull> Let's say you have a circular buffer with the values 1, 2, 'a', "something" and another circular buffer as a value
15:23:10 <FreeFull> That's what I mean
15:23:33 <FreeFull> You could make the circular buffers fixed size so that it's harder
15:23:49 <FreeFull> Or variable size for ease
15:24:15 <Arc_Koen> ok, but how do you use the buffer?
15:31:26 <Phantom_Hoover> > 1077379 / 60
15:31:27 <lambdabot> 17956.316666666666
15:33:47 <Arc_Koen> atriq: if $ is to be applied to a negative number, does it result in an error or is $ sent back?
15:33:57 <Arc_Koen> also if the top value is a negative number?
15:34:07 <atriq> For $, an error, I would think
15:34:21 <FreeFull> You basically would use the buffer as a circular stack
15:34:26 <atriq> Possibly also an error as the second
15:34:44 <FreeFull> And I'm thinking you'd get 1 non-buffer register, or access to two separate buffers
15:35:09 <FreeFull> And you can go to a sub-buffer, where all operations now will apply to the sub-buffer
15:35:10 <atriq> I think wherever the specs are ambiguous or lacking, it's implementation-depenedant
15:35:16 -!- atriq has quit (Quit: guitar hero time).
15:35:50 <FreeFull> The program is ran in an infinite loop unless a halt statement is encountered
15:35:53 <Arc_Koen> don't try to do cliffs of dover past medium difficulty!!!
15:36:09 <Arc_Koen> ohhhhhh you're talking about fueue?
15:36:19 <Arc_Koen> the word "buffer" confused me
15:36:35 <FreeFull> No, I'm talking about a theoretical language
15:36:43 -!- boily has quit (*.net *.split).
15:36:43 -!- lifthrasiir has quit (*.net *.split).
15:36:43 -!- fizzie has quit (*.net *.split).
15:36:45 -!- Cryovat has quit (*.net *.split).
15:36:50 <FreeFull> That doesn't exist yet
15:36:54 <Arc_Koen> ok :)
15:37:19 <FreeFull> So let's say you want to create a program that calculates fibbonacci numbers
15:37:43 <Arc_Koen> I'm not sure how this works though
15:39:42 <Arc_Koen> so, when the next value is encountered
15:39:48 <FreeFull> { 0 1 } v dup 1 rot + .
15:40:13 <FreeFull> { } creates a sub-buffer
15:40:14 <Arc_Koen> "rot" basically acts as "send it back to the end of the queue", right?
15:40:30 <FreeFull> Arc_Koen: Sure, but you can also rotate a negative amount
15:40:31 -!- ais523 has joined.
15:40:31 -!- boily has joined.
15:40:31 -!- lifthrasiir has joined.
15:40:31 -!- Cryovat has joined.
15:40:31 -!- fizzie has joined.
15:40:35 <Arc_Koen> right
15:41:08 <FreeFull> And code on a buffer by default loops
15:41:12 <Arc_Koen> and what happens with functions like "dup" and "+", where is the result stored?
15:41:35 <Arc_Koen> (that is, is there an automatic "rot 1" after every function?)
15:41:42 <Arc_Koen> (or rot 2 for dup)
15:42:21 <FreeFull> Basically, if you have { 0 1 }, after the dup you have { 0 1 1 }, and after the 1 rot you have { 1 0 1 }
15:42:31 <FreeFull> rot rotates right by default
15:42:36 -!- donmarquis has joined.
15:42:47 <Arc_Koen> so v means "get one level deeper" or something?
15:43:15 <FreeFull> Yes
15:43:29 <FreeFull> ^ would go up one level (or stop the program)
15:43:38 <Arc_Koen> so the instructions are still in the main buffer, but apply to the subbuffer?
15:44:38 <FreeFull> v creates a new code buffer, and ^ ends it
15:45:12 <FreeFull> So in lisp, code and data is lists, in cbuf, it's circular buffers
15:45:21 <Arc_Koen> yeah but I mean if v stucks us into the subbuffer we cannot access the dup 1 rot + any longer
15:45:42 <FreeFull> No, the dup 1 rot + only apply to the subbuffer
15:46:48 <Arc_Koen> ok, so the program is always the main buffer, and subbuffers are only data?
15:50:08 <FreeFull> The code between the v and ^ has no way of accesing the data in the external buffer
15:50:37 -!- AnotherTest has joined.
15:50:48 <FreeFull> Other than by moving it into the secondary buffer
15:50:51 <AnotherTest> Hello
15:50:56 <FreeFull> Hi
15:52:48 -!- zzo38 has joined.
15:52:53 <FreeFull> If you create a function, that function can only accept only one argument
15:53:02 <FreeFull> But you can make that argument a buffer
15:54:27 <FreeFull> dup could be defined as something like dup: x x
15:54:47 <FreeFull> Where x is the value passed
15:55:45 <Arc_Koen> well that looks interesting but I think I need more "visual" explanations
15:56:18 <zzo38> Were there some versions of Anarchist Cookbook that were not released to the public?
15:57:02 <FreeFull> Arc_Koen: It's basically like programming with stacks of arbitrary elements, except you can rotate the stack
15:57:17 <Arc_Koen> yes, that part I understand
15:57:30 <Arc_Koen> I'm having trouble visualizing what the subbuffers are
15:57:40 <Arc_Koen> are they inside the main buffer?
15:57:47 <FreeFull> Yes
15:58:21 <FreeFull> And you can do something like { } v { 1 2 } { 3 4 } ^
15:58:37 <FreeFull> Which creates a buffer, with two buffers as elements
15:59:34 -!- ais523_ has joined.
15:59:37 <FreeFull> What is between the { and } is just the initial values for the buffer
15:59:53 <FreeFull> To change what's in it afterwards, you use v
16:00:03 -!- ais523 has quit (Ping timeout: 252 seconds).
16:00:46 -!- ogrom has joined.
16:01:25 <FreeFull> I'm thinking about the logistics of putting code in the initial values too
16:02:01 <FreeFull> { 0 dup . } e
16:02:10 <FreeFull> This would print an infinite amount of zeroes
16:02:26 <FreeFull> Although
16:02:33 <FreeFull> It might have to be { dup . 0 }
16:02:55 <FreeFull> So that you always start with the rightmost value at the top
16:03:23 <FreeFull> e means execute
16:03:36 <FreeFull> Hmm, how would you push code in as data...
16:05:42 <FreeFull> I should write an interpreter for this
16:08:15 <FreeFull> x would explode a buffer
16:08:24 <FreeFull> So { 1 2 3 } x is the same as 1 2 3
16:08:42 <Arc_Koen> how about a command "flatten" that explodes all buffers
16:09:41 <FreeFull> That could be implemented as a function
16:12:55 * FreeFull looks up where he left the source of his RPN calculator
16:16:13 <FreeFull> Writing it in C would be a bit inconvienient because I'd have to handle resizing the buffers myself
16:16:27 <FreeFull> But that shouldn't be too complicated
16:16:55 <FreeFull> Famous last words
16:17:35 <FreeFull> The bigger challenge would be having arbitrary types of elements
16:17:44 <Arc_Koen> unions
16:18:02 <Arc_Koen> oh, you mean like bools, chars, ints, etc.?
16:19:04 <Arc_Koen> I would recommend ocaml though, it's perfect for interpreters
16:22:10 -!- itidus20 has changed nick to itidus21.
16:27:40 <Gregor> Sometimes I wish the US had political parties with platforms more sophisticated than “we hate the other political party”.
16:28:29 -!- ais523_ has quit.
16:28:55 <itidus21> this millenium it's all about website law
16:29:54 <itidus21> my life is so boring o.o
16:30:58 -!- AnotherTest has quit (Quit: Leaving.).
16:31:05 -!- AnotherTest has joined.
16:35:33 <itidus21> and i know the ugly truth about marriage.. if you go into it unwilling to change.. you will come out of it, much like leaving an elevator, unchanged
16:36:40 <itidus21> or maybe more to the point, if you go into it expecting or needing it to change you, it will let you down
16:36:55 <FreeFull> Arc_Koen: But then I would have to learn OCaml before writing the interpreter =P
16:37:15 <Arc_Koen> two birds one stone!
16:37:17 <itidus21> somehow at age 30 change seems impossible
16:37:26 <Arc_Koen> or maybe two stones one bird, depending on how you look at it
16:38:38 <itidus21> i guess you have to be open to change, which means a risk that things could get better while also getting worse
16:39:49 <Gregor> Arc_Koen: Please add attribution and copyright/licensing headers to these files.
16:40:07 <itidus21> or, maybe at 30 you realize that a change is simply a new routine replacing an old routie
16:40:27 <Arc_Koen> ok
16:40:54 <Arc_Koen> is there a list of infos I'm supposed to put in there or should I go with my imagination?
16:41:25 <itidus21> works of art seem to be mere dice which invoke this emotion or that emotion
16:42:51 <itidus21> just how it can seem
16:43:13 <Gregor> Arc_Koen: Go to copyfree.org, click a random license, and splat it at the top with your name or pseudonym. Or, if you want to actually think, then do something else. I'm just not going to upload files with no attribution or licensing.
16:44:04 <itidus21> \0
17:01:04 <Arc_Koen> sent!
17:02:34 <Gregor> As usual, you give someone without experience using licenses license to license [read that three times fast], and inevitably they will write something obnoxious and non-F/OSS themselves.
17:02:36 <Gregor> I'll add it.
17:05:40 <Gregor> Hm.
17:05:47 <Gregor> And now we play the "guess what my password might have been" game.
17:06:04 <fizzie> Gregor: Try "1234" or "passwort".
17:07:09 <itidus21> begin by creatin---
17:07:17 <itidus21> try "1234" or "passwort"
17:07:47 <Arc_Koen> does it sound obnoxious?
17:07:50 <Arc_Koen> it was not intended to
17:08:22 <Gregor> In principle, I have commit access. In practice, I haven't committed anything in six years and don't really recall my password, which may very well have been specific to this account.
17:08:41 <Gregor> Arc_Koen: It's not F/OSS.
17:08:48 <itidus21> oh guess your own password. that game sucks
17:09:16 <zzo38> Describe what you have written. And then we can see that it is obnoxious and non-F/OSS, and then fix both problems.
17:10:04 <Arc_Koen> uh well I meant to write that people were free to use it or do whatever with it, but that it would be very appreciated if they could let me know what use they made of it
17:10:33 <Gregor> You restricted commercial use. That's non-F/OSS. And quite ridiculous given that nobody under any circumstances is going to use it commercially.
17:10:36 <Arc_Koen> and then I thought maybe I have to add something about the use being for non-profit goals or something
17:11:21 <Arc_Koen> then maybe I should just delete that line
17:11:50 <Gregor> Or maybe you shouldn't try to be clever and write your own license when there are dozens, if not hundreds, of good ones out there already X_X
17:11:55 <Gregor> The bigger issue right now is that I simply don't have access to commit this X-D
17:11:56 <zzo38> Arc_Koen: Write that it is appreciated but not required to let you know what use they make of it. And you also have to not restrict commercial use (except possibly trademark licenses)
17:11:57 <Gregor> I mean, maybe I do.
17:12:09 <Gregor> But it's been six years.
17:12:41 <Arc_Koen> isn't there a standard license for the esoteric file archive?
17:12:47 <Gregor> No.
17:13:17 <Gregor> So long as it's legal o distribute it via the file archive, it can be put there. I take objection to your license on personal grounds.
17:13:23 <Gregor> *legal to
17:13:53 <Gregor> But it's all moot since you're going to have to find somebody else to put it online X-D
17:15:30 <Arc_Koen> well I'll try to find something better until I can find someone else then :)
17:15:33 <zzo38> I can make a copy too, if the license is acceptable. Send it using netcat or sprunge and I will then make a public backup copy.
17:19:59 <zzo38> Arc_Koen: Can you host it yourself?
17:20:08 <Arc_Koen> not really no
17:21:09 <zzo38> I can host it under my HTTP server and/or gopher server if the license is acceptable, if you want to.
17:22:29 <Arc_Koen> that would be great - I'm kind of in a hurry now though
17:22:31 <Arc_Koen> thank you
17:22:36 -!- Arc_Koen has left.
17:22:46 -!- atriq has joined.
17:26:06 <atriq> Well, the parser section of my PROgram is 22 lineS
17:26:27 <atriq> THis IS agAInsT THE iNTERpretER seCTIon OF my CODE whicH IS 72
17:26:34 <atriq> welL
17:26:36 <atriq> 74
17:27:04 <atriq> IT IS HArder TO Type WHEN your BROTHer is sPOradiCALLy hOLDING DOwn ThE sHiFt BuTtOn
17:27:09 <fizzie> @wn archive
17:27:10 <lambdabot> *** "archive" wn "WordNet (r) 3.0 (2006)"
17:27:10 <lambdabot> archive
17:27:10 <lambdabot> n 1: a depository containing historical records and documents
17:27:10 <lambdabot> v 1: put into an archive [syn: {archive}, {file away}]
17:27:12 <fizzie> I see the esoteric file archive is living up to its name, if it can't be written to.
17:27:26 <atriq> !rot13 atriq
17:27:28 <EgoBot> ngevd
17:27:36 <fizzie> I never even realized that!
17:27:53 <boily> ~duck ngevd
17:27:54 <cuttlefish> --- No relevant information
17:27:58 <boily> meh.
17:28:17 <atriq> I WAS deMoNSTAtING thE etYmoLogy OF my NIck TO THe aFOREMENtioNED sIBLiNg
17:28:48 <fizzie> `WeLcOmE atriq
17:28:49 <atriq> HI
17:28:52 <HackEgo> AtRiQ: 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:29:00 <zzo38> Tell your brother to go away
17:29:40 <atriq> I Have doNe SO> hE proMises To DepArt sooN
17:30:05 <itidus21> atriq: i think its fun to share the keyboard with your brother
17:30:23 <atriq> You would.
17:30:25 <itidus21> zzo is a bit uptight about it
17:30:28 <atriq> oh NO HE'S BACK
17:30:35 <atriq> BOOM
17:30:50 <atriq> God he's a quick typer
17:31:03 <atriq> That was with one finger
17:31:12 <atriq> AND I COULDN'T STOP HIM
17:32:12 <itidus21> sorry zzo, i guess i am living in my childhood still
17:33:06 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds).
17:36:12 -!- atriq has quit (Quit: Leaving).
17:36:24 <itidus21> !rot13 AND I COULDN'T STOP HIM
17:36:25 <EgoBot> NAQ V PBHYQA'G FGBC UVZ
17:36:48 <boily> guess his bro won the complete access to their computer...
17:37:00 <itidus21> hmm
17:37:34 <itidus21> i guess i don't understand what happened
17:39:53 <itidus21> but still, nations are born and die within the minds of men, and yet, for all this, mortality does not retire for the individual
17:40:29 <itidus21> really a nation is just a toy
17:40:58 <itidus21> something fabricated by bored individuals
17:41:39 <AnotherTest> I doubt they were bored
17:41:47 <AnotherTest> It's possible though
17:43:14 <itidus21> well, at least i am wrong
17:43:19 <itidus21> its a good start
17:46:46 <itidus21> AnotherTest: well its 3:40am, and i have an appointment at 9:40am... still not sure if i'll be sleeping or staying awake
17:47:09 <itidus21> it gets me agitated whenevr i have to do something the next day
17:49:46 <AnotherTest> Why do you get up at 3:40 AM when you have your first (I assume) appointment of the day at 9:40 AM
17:51:05 <itidus21> ive been awake since about 1:30pm
17:51:16 <itidus21> ahahaha
17:51:26 <itidus21> anyway, check out this screenshot of ebay http://oi45.tinypic.com/og9htf.jpg
17:52:37 <AnotherTest> itidus21: that still does not answer my question
17:53:16 <itidus21> first = only :D
17:53:40 <itidus21> well
17:55:09 <itidus21> having an appointment actually increases my inability to sleep
17:55:23 <itidus21> because i see it as a constraint on how much i can do that night
17:55:31 <itidus21> and so suddenly i want to do more that night
17:55:53 <AnotherTest> but the appointment is not at night
17:56:05 <AnotherTest> so how is it a constraint on what you can do at night?
17:56:40 <itidus21> because having to sleep means i lose control of when i sleep
17:59:08 <AnotherTest> So now you are bored because you have no idea what to do?
17:59:23 <AnotherTest> Well, that's generally the case.
17:59:37 <AnotherTest> What you should do is:
17:59:41 <AnotherTest> make yourself useful
18:00:09 <itidus21> i like sleeping because i'm the sort of person who very quickly gets tired without sleep
18:01:03 <AnotherTest> then sleep, for it is most useful
18:01:28 -!- Eladith has quit (Ping timeout: 268 seconds).
18:01:50 <itidus21> i don't get bored though :D
18:01:56 <itidus21> i have that on my side
18:02:45 <itidus21> i get tired and anxious.. those could be related to broed
18:02:48 <itidus21> ^bored
18:03:15 <AnotherTest> anxious how so?
18:03:23 <itidus21> i don't know :)
18:03:33 <AnotherTest> is this appointment a presentation?
18:03:37 <itidus21> the person i am seeing is a psychologist
18:03:39 <itidus21> :P
18:04:10 <AnotherTest> ah
18:04:19 <AnotherTest> so you don't have to actually talk too much?
18:04:32 <itidus21> oh.. its very active
18:05:02 <AnotherTest> But there are not many people around...?
18:05:26 <itidus21> yeah, its not like i am being paid
18:06:36 <itidus21> but its going well... slowly some things in my life becoming healthier
18:07:15 <itidus21> like he talked me into having showers
18:08:32 <AnotherTest> great
18:08:37 <AnotherTest> why wouldn't you take a shower?
18:09:06 <itidus21> im not entirely sure
18:09:47 <AnotherTest> So you always took a bath instead of a shower? Well not sure what's wrong with that either.
18:09:57 <itidus21> i never said i took a bath
18:10:06 <AnotherTest> Although showers take less time than baths.
18:10:16 <AnotherTest> I assumed you did.
18:10:20 <itidus21> ya
18:10:43 <itidus21> this is the aha moment of why i am seeing psychologist
18:10:57 <AnotherTest> I already knew
18:10:58 -!- Arc_Koen has joined.
18:11:06 <itidus21> i mean, not shower, not bath
18:11:21 <itidus21> its just one facet of things
18:12:01 -!- Arc_Koen has quit (Quit: Are you telling me you can build a time machine but you can't cook a cheese soufflé? You've got your priorities all wrong!).
18:12:22 -!- Arc_Koen has joined.
18:14:14 -!- soundnfury has joined.
18:24:45 -!- donmarquis has quit (Remote host closed the connection).
18:34:32 -!- AnotherTest has quit (Quit: Leaving.).
18:50:17 <kmc> r
18:50:20 <kmc> replacing string code-building with closures = joy
18:52:25 -!- kinoSi has quit (Read error: Connection reset by peer).
18:52:53 -!- kinoSi has joined.
18:55:35 -!- atriq has joined.
19:06:21 -!- krofna has joined.
19:07:29 -!- krofna has quit (Remote host closed the connection).
19:15:26 -!- oerjan has joined.
19:17:51 <oerjan> @messages
19:17:52 <lambdabot> atriq said 9h 35m 17s ago: Wow, I better learn them too!
19:17:52 <lambdabot> atriq asked 4h 30m 29s ago: Can I get you to write the main function for me?
19:18:03 <oerjan> atriq: maybe
19:18:32 <shachaf> @massages
19:18:32 <lambdabot> You don't have any new messages.
19:18:41 <atriq> oerjan, http://hpaste.org/73947
19:19:00 <atriq> Actually, that's not right
19:23:37 -!- hagb4rd has quit (Read error: Operation timed out).
19:24:47 -!- ogrom has quit (Quit: Left).
19:35:49 -!- atriq has quit (Ping timeout: 268 seconds).
19:38:18 <oerjan> @hoogle IO String
19:38:19 <lambdabot> Did you mean: :: IO String
19:38:19 <lambdabot> System.IO.Error ioeGetErrorString :: IOError -> String
19:38:19 <lambdabot> System.IO.Error ioeSetErrorString :: IOError -> String -> IOError
19:38:24 <oerjan> @hoogle :: IO String
19:38:24 <lambdabot> Prelude getContents :: IO String
19:38:24 <lambdabot> System.IO getContents :: IO String
19:38:25 <lambdabot> Prelude getLine :: IO String
19:40:16 <oerjan> :t readFile
19:40:18 <lambdabot> FilePath -> IO String
19:43:12 <Arc_Koen> oerjan: thanks to zzo38 my interpreters are accessible now
19:43:31 <Arc_Koen> http://zzo38computer.cjb.net/esoteric/Arc_Koen/
19:55:02 -!- nortti- has joined.
19:56:48 -!- pikhq has joined.
19:57:08 -!- pikhq_ has quit (Ping timeout: 248 seconds).
19:58:55 -!- asiekierka has quit (Remote host closed the connection).
20:01:47 -!- pikhq_ has joined.
20:01:54 -!- pikhq has quit (Ping timeout: 244 seconds).
20:06:04 <oerjan> :t hPutStr
20:06:05 <lambdabot> Not in scope: `hPutStr'
20:06:19 <oerjan> @hoogle Handle -> String -> IO ()
20:06:19 <lambdabot> System.IO hPutStr :: Handle -> String -> IO ()
20:06:19 <lambdabot> GHC.IO.Handle hPutStr :: Handle -> String -> IO ()
20:06:20 <lambdabot> System.IO hPutStrLn :: Handle -> String -> IO ()
20:08:20 -!- atriq has joined.
20:11:09 <oerjan> > error "Test"
20:11:32 <oerjan> argh
20:11:32 <oerjan> > 2+2
20:11:36 <oerjan> @ping
20:11:39 <oerjan> :(
20:11:50 <lambdabot> pong
20:11:50 <lambdabot> 4
20:11:51 <lambdabot> mueval-core: L.hs: removeLink: does not exist (No such file or directory)
20:11:59 <oerjan> > error "Test"
20:12:00 <lambdabot> *Exception: Test
20:16:53 -!- esowiki has joined.
20:16:57 -!- esowiki has joined.
20:16:57 -!- esowiki has joined.
20:17:14 -!- esowiki has joined.
20:17:18 -!- esowiki has joined.
20:17:18 -!- esowiki has joined.
20:18:01 -!- esowiki has joined.
20:18:01 -!- glogbot has joined.
20:18:01 -!- glogbackup has left.
20:18:05 -!- esowiki has joined.
20:18:05 -!- esowiki has joined.
20:18:17 -!- sivoais has quit (Ping timeout: 256 seconds).
20:19:59 <oerjan> oh wait darn
20:20:24 -!- sivoais has joined.
20:20:31 <atriq> Yeah, I tried before and it failed for some strange reason
20:21:03 -!- Phantom_Hoover has joined.
20:23:45 <oerjan> atriq: pasted again, i got some things in the wrong order
20:24:01 <oerjan> (ironically half cancelling each other out, but not quite)
20:27:32 -!- impomatic has joined.
20:27:47 -!- boily has quit (Quit: Poulet!).
20:27:47 <oerjan> atriq: i leave to you to actually test it >:)
20:28:15 -!- cuttlefish has quit (Remote host closed the connection).
20:29:40 -!- FireFly has joined.
20:32:00 -!- boily has joined.
20:34:44 <oerjan> <atriq> It occurs to me that I have no idea how to write a parser <-- you seem to have learned fast :P
20:34:59 <atriq> I mostly guessed and got lucky
20:35:38 <Arc_Koen> atriq: why are the fueue functions characters rather than words like "dup", "pop", etc.?
20:35:53 <Arc_Koen> it would probably have been more readable
20:35:54 <atriq> Arc_Koen, inspired by Underload
20:36:06 <atriq> I was following underload'lead
20:36:19 <atriq> *+s\
20:36:26 <Arc_Koen> ah, everybody here seems to be praising that mysterious language...
20:36:30 <Arc_Koen> I careful did not step into it
20:39:14 <oerjan> ^ul (12)S(*a(~:)~*^~):((1)S)~*~((2)S:*)~*:(~:()~)~*^(a(:^)*~a(*()~)~*^~^):^
20:39:16 <fungot> 122112122122112112212112122112112122122112122121121122122112122122112112122121122122112122122112112212112122122112112122112112212112112212211212212112212212112112212211212212112112212112122112112122121122122112122122112112122112112212212112122112112212112112212212112122112112122122112122121121122122121122122112122122112112 ...too much output!
20:39:20 * oerjan whistles innocently
20:39:56 <FreeFull> ^bf +[+.]
20:39:56 <fungot> .. !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ...
20:40:02 <FreeFull> >_> <_<
20:40:16 <oerjan> but that's not the kolakoski sequence.
20:42:57 * oerjan obviously stepped _way_ too deeply in it, seeing as he is the source of most of the wiki page.
20:46:53 <oerjan> <ais523> also loud enough to destroy the Earth if interpreted as sound intensity <-- * the universe hth
20:47:50 <oerjan> (no, a mere vacuum isn't going to stop 300000 dB. trust me.)
20:50:51 <oerjan> i think compiling underload minus S (but including (...)S) into fueue should be doable
20:51:41 <oerjan> (the "minus S" is so we don't need to preserve the string representations)
20:51:50 <oklopol> i hear no one knows pretty much anything about the kolakoski sequence
20:52:18 <oerjan> oklopol: all computational evidence says it's 50% 1's, but no one knows for sure
20:53:43 -!- MoALTz_ has joined.
20:53:43 <oklopol> ah yes. they study this stuff in my uni but i haven't really touched it (CA are 50% more awesome).
20:54:11 <oklopol> i think there are many simpler open problems about it which have partial answers
20:57:13 -!- MoALTz has quit (Ping timeout: 268 seconds).
20:59:13 <oerjan> <atriq> Arc_Koen, it isn't possible to have negative numbers in the initial program <-- added to wiki
21:00:05 <Arc_Koen> feel free to mark it as no longer unimplemented :)
21:00:39 <Arc_Koen> here are the fueue.c and fueue.ml implementations: http://zzo38computer.cjb.net/esoteric/Arc_Koen/
21:01:19 -!- FireFly has quit (Changing host).
21:01:19 -!- FireFly has joined.
21:01:20 <Arc_Koen> I also asked him a few other questions, like what happens when trying to divide by 0, or to apply $ with a negative first argument
21:02:15 <Arc_Koen> apparently, for all functions: if arguments of the right type are present but some have invalid values, then it results in an error
21:02:22 -!- TeruFSX has joined.
21:02:44 <oerjan> is arc koen your real name?
21:02:57 <Arc_Koen> also an error for negative numbers to be output
21:03:01 <Arc_Koen> nope
21:03:12 <oerjan> how shall i refer to you on the wiki?
21:03:14 <Arc_Koen> but I did include my real name in the files
21:03:19 <oerjan> oh hm
21:03:46 <zzo38> Is colorburst a greenish-yellow color?
21:05:13 <oerjan> ok your real name is now on the wiki
21:07:30 <Arc_Koen> sweet! what about a few programs: (empty), "72 101 108 108 111 44 32 119 111 114 108 100 33 10 H", "):[):]", and your dazzling alphabet ")$2[)$--------2~)~~[)[)~(~[~[$~H~]~)%+~91-):]~1+:])]]~[$~H~])%+-91)[65][65]"
21:07:31 -!- Vorpal has joined.
21:09:09 <oerjan> > chr . read <$> words "72 101 108 108 111 44 32 119 111 114 108 100 33 10"
21:09:11 <lambdabot> "Hello, world!\n"
21:13:45 -!- nooga has quit (Ping timeout: 244 seconds).
21:15:19 <oerjan> Arc_Koen: done!
21:16:44 <Arc_Koen> oerjan: I had an idea for a new language!
21:16:50 <Arc_Koen> it would be called: "Ftack"
21:18:10 <Arc_Koen> it works exactly like fueue, except with a stack; if the top element isn't either a number or a function with appropriate values directly behind it, it is sent back to the top of the stack.
21:18:31 -!- boily has quit (Quit: Poulet!).
21:18:44 <oerjan> Arc_Koen: um that's basically underload.
21:18:51 <Arc_Koen> oh
21:18:53 <Arc_Koen> is it?
21:18:58 <atriq> No it isn't
21:18:58 <oerjan> oh wait not with the type checks
21:19:09 <oerjan> ok then
21:19:12 <atriq> It's an almost useless joke language
21:19:17 <Arc_Koen> yes :)
21:19:59 -!- augur has quit (Remote host closed the connection).
21:20:05 <oerjan> well we _do_ have a joke languages category :)
21:21:50 <Arc_Koen> ironically I'm guessing some small programs that were hard to write in fueue would be easy to write
21:22:08 <Arc_Koen> because the duplicating works well for loops
21:24:16 <Gregor> PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANTS
21:24:41 <atriq> The pants of Narcissus?
21:25:10 <fizzie> AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANTS in the PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANTS.
21:27:03 -!- nortti- has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
21:28:37 <oerjan> oh hm
21:28:55 <oerjan> :: is another infinite loop for both fueue and ftack :)
21:29:06 <Gregor> atriq: Indeed.
21:29:11 <Gregor> atriq: I have three more pair now.
21:29:18 <atriq> Oh dear god
21:29:30 <atriq> Are you sure they aren't just reflections of the first pair in a pool?
21:30:22 <Gregor> Well, they're different colors.
21:30:23 <Gregor> So yeah.
21:31:01 <Arc_Koen> have a good night
21:31:11 -!- Arc_Koen has quit (Quit: Are you telling me you can build a time machine but you can't cook a cheese soufflé? You've got your priorities all wrong!).
21:34:14 <oerjan> in ftack, it's useless to duplicate (with : or $) anything other than a number and :~!
21:35:05 <oerjan> anything else will either give you something which doesn't evaluate, or something which turns soon into a block (which doesn't evaluate) or halts.
21:36:01 <oerjan> in particular < and ( are completely useless
21:38:22 <oerjan> this means you can never usefully increase the number of blocks in a program...
21:40:54 <oerjan> also duplicating a : gives you immediately an infinite loop. anything else reduces the number of :'s in the program.
21:41:00 <oerjan> pretty useless indeed.
21:48:51 <pikhq_> Hmm. Silliest possible way of running Win3.1 programs on modern Windows: Desqview/X hosting Windows 3.1 programs, served over X, onto a Windows X server.
21:52:11 <fizzie> Didn't know it did that too; just thought it was a X server.
21:54:06 <pikhq_> It runs Windows 3.1 and DOS as X programs via hax.
21:54:35 <pikhq_> DOS by using a virtual VGA framebuffer and scraping it, Windows 3.1 by installing a video driver that makes it render via X11.
21:56:28 <Gregor> I thought it ONLY did that, I don't think it was an X server.
21:56:40 <fizzie> It does have an X server too.
21:56:43 <pikhq_> It is an X server.
21:56:48 <pikhq_> And a partial UNIX.
21:56:59 <Gregor> *ports Microcosm*
21:57:15 <pikhq_> (that is, it provides enough of a libc that you can have native X programs without Pain and Agony)
21:57:26 <pikhq_> I've IRC'd from it before.
21:58:20 -!- Vorpal has quit (Ping timeout: 265 seconds).
22:00:09 <pikhq_> It actually ships with TWM and the Motif WM.
22:00:48 -!- MoALTz_ has quit (Quit: brb).
22:02:20 <pikhq_> o.O'
22:02:25 <pikhq_> They had a real mode xlib?
22:04:34 -!- pikhq has joined.
22:06:54 -!- pikhq_ has quit (Ping timeout: 268 seconds).
22:07:05 -!- atriq has quit (Remote host closed the connection).
22:15:58 -!- augur has joined.
22:38:22 <zzo38> Idea for Magic: the Gathering card: All "may" must always be selected instead of being that player's choice.
23:40:06 <kmc> and what if another choice must be made?
23:50:31 <zzo38> The player still makes the choice such as targets and so on. If something says "you may discard a card" then he must discard a card if he has one but he can select which one.
23:52:01 <zzo38> If this card is in effect and another effect says "you may draw a card", then the player must draw a card (there are no other choices to be made); if he has no cards to draw, he loses the game.
23:56:40 <kmc> ok
23:56:46 <kmc> you could also have a variant which gives the choice to someone else
23:57:13 -!- monqy has joined.
23:58:21 <zzo38> Yes, that is another possible variant.
2012-08-31
00:15:34 <oerjan> ^ul !
00:15:35 <fungot> ...out of stack!
00:16:16 <oerjan> > unwords $ map (show . ord) "...out of stack!"
00:16:18 <lambdabot> "46 46 46 111 117 116 32 111 102 32 115 116 97 99 107 33"
00:33:07 <kmc> the computer i want is available with i5 or i7 processor, and 4GB or 8GB of RAM... but you can't get the i7 with 8GB of RAM
00:33:13 <kmc> (the RAM is not upgradeable)
00:39:43 -!- derdon has quit (Remote host closed the connection).
00:41:33 <oerjan> another day, another TC proof.
00:43:00 <shachaf> kmc: What computer is that?
00:48:33 -!- DHeadshot has joined.
00:53:18 -!- DHeadshot has quit (Write error: Connection reset by peer).
00:53:48 -!- DHeadshot has joined.
00:56:51 -!- pikhq has quit (Ping timeout: 252 seconds).
00:56:57 -!- pikhq_ has joined.
00:57:56 -!- nortti has quit (Ping timeout: 248 seconds).
00:58:04 <Phantom_Hoover> shachaf, the Dilemmatech 3000.
01:01:38 <shachaf> @freshname
01:01:38 <lambdabot> Hahd
01:08:17 -!- itidus21 has changed nick to Jon_Frakes.
01:09:10 <oerjan> @freshname
01:09:10 <lambdabot> Hahe
01:09:13 <oerjan> @freshname
01:09:13 <lambdabot> Hahf
01:09:14 <oerjan> @freshname
01:09:14 <lambdabot> Hahg
01:09:28 <oerjan> i sense a certain lack of creativity
01:12:13 <kmc> shachaf: ThinkPad X1 Carbon
01:12:46 <kmc> ThinkPad Air
01:13:03 <kmc> so i have to choose between 1 MB of L3 cache or 4 GB of RAM
01:13:46 <zzo38> Choose based on what things you are doing on your computer, which would work better for what you do
01:14:00 <zzo38> I don't know what you are using your computer for.
01:14:43 <kmc> or waiting
01:14:52 <kmc> someone should make a Haskell library called Hahahahahahaha
01:15:01 <zzo38> (Alternatively, choose by the price.)
01:16:39 <kmc> yeah, that's a good tiebreaker :)
01:17:16 <shachaf> kmc: That's an exciting-looking computer.
01:17:32 <kmc> i5/8GB is $60 more, but also it can ship next week rather than "more than 4 weeks"
01:17:37 <kmc> but maybe i don't want to buy now, anyway
01:18:12 <shachaf> 1600x900
01:18:15 <shachaf> Hmm.
01:18:22 * shachaf should probably care about resolution less than he does.
01:19:02 <kmc> shachaf: yeah, it's more exciting than the X230
01:19:06 <kmc> which is 1366x768 :/
01:19:20 <shachaf> You should wait until you can get a Haswell laptop!
01:19:30 <kmc> maybe
01:19:57 <shachaf> Then you can use AVX2.
01:20:34 <kmc> and hardware transactional memory!
01:20:36 <kmc> (is that in AVX2?)
01:21:06 <kmc> i don't know anything about AVX instructions
01:21:13 <kmc> i guess they are mostly SSE extended to 256 bits
01:21:19 <shachaf> AVX is 256-bit SSE.
01:21:21 <shachaf> Yes.
01:21:34 <shachaf> Hmm, there are a lot of new instructions.
01:21:39 <shachaf> http://software.intel.com/en-us/blogs/2011/06/13/haswell-new-instruction-descriptions-now-available/
01:21:56 <kmc> they should have 16×16 binary matrix multiply!
01:22:36 <shachaf> They should have it for 8×8 first.
01:22:40 <zzo38> Some CPU instructions I would like to see are INTERCAL select, unselect (fills unset bit positions with zero), and multiplexer.
01:23:15 <kmc> the X230 is still better if you want crazy battery life by carrying around multiple batteries
01:23:49 <kmc> but the X1C can charge from 0% to 80% in 35 minutes, which is cool
01:28:17 <kmc> zzo38: multiplexer would have three inputs, and use one input to select between the other two bitwise?
01:28:45 <shachaf> x86 should have more three-operand instructions.
01:29:33 <zzo38> kmc: Actually many more inputs; it would be like the Muxcomp esolang instruction (although depending on the computer, it could differ in many ways, such as addressing modes and so on).
01:29:45 <shachaf> Well, it has three-operand addition.
01:30:20 <zzo38> Multiplication matrix would also be useful, though.
01:31:08 <shachaf> MXOR is a great instruction!
01:31:09 <kmc> i wonder what is the next cryptosystem to get added after AES
01:31:21 <zzo38> Another thing I might like to have is an instruction for triple indirect jump with post increment.
01:31:41 <kmc> i wonder if SHA-3 will be based on AES enough to use the AES round instruction
01:32:10 <kmc> i don't think any of the candidates are that closely related
01:32:56 <zzo38> The "too much CISC" computer would include Super Mario game as a single instruction.
01:34:00 <shachaf> Maybe it'd have SUPERMARIO and SUPERMARIOLAST for the last round.
01:34:16 <zzo38> Of course this is silly.
01:34:17 <quintopia> SUPERMARIOWITHGAMEGENIEPLUGGEDIN
01:34:59 <zzo38> But one instruction I would actually like to have is an instruction to reconfigure the microcode at runtime so that the instruction set can be optimized for whatever it is that you are making.
01:35:14 <shachaf> One of the SHA-3 finalists is at least somewhat related to AES.
01:35:43 <quintopia> what's wrong with rijndahl again?
01:36:09 <kmc> er, AES is Rijndael
01:36:13 <kmc> i don't understand the question
01:36:15 <shachaf> I wonder why they have an instruction per round rather than just one instruction.
01:36:44 <shachaf> S-boxes make it very tricky to implement without being vulnerable to cache timing attacks, apparently.
01:37:04 <kmc> yeah, i have heard that
01:37:45 <shachaf> There was a "constant-time lookup" instruction proposed that would get a block of memory, make sure the whole thing was in the cache, and then do a lookup in it.
01:37:52 <quintopia> what's sha-2?
01:38:07 <shachaf> SHA-256, SHA-512, etc.
01:38:20 <kmc> http://en.wikipedia.org/wiki/SHA-2
01:40:45 <kmc> i wonder if git will have to switch away from SHA-1 soon
01:47:30 -!- DHeadshot has quit (Read error: Connection reset by peer).
01:47:42 <oerjan> > ord 'x'
01:47:44 <lambdabot> 120
02:01:22 <zzo38> An instruction per round? Are each round have any use by itself?
02:08:29 -!- kmc has quit (Quit: leaving).
02:09:06 -!- kmc has joined.
02:15:36 <kmc> $ glxgears
02:15:37 <kmc> 48647 frames in 5.0 seconds = 9729.383 FPS
02:15:43 <kmc> OVER NINE THOUSAND FPS
02:15:57 <kmc> unfortunately, the window is completely black
02:18:01 <kmc> this channel has a lot of bots
02:18:03 <kmc> maybe i should run a bot
02:18:05 <kmc> what should it do?
02:18:17 <pikhq_> It should bot.
02:18:24 <Phantom_Hoover> dispense useful advice
02:20:31 <kmc> i wonder what would be the social effects of a bot which allows anyone in the channel to anonymously send messages to the channel
02:24:30 <pikhq_> Once upon a time Egobot did.
02:26:01 <kmc> and how did that go
02:26:13 <pikhq_> Not that much happened.
02:27:57 <kmc> you could use blind signing to make it so the bot operator doesn't know who's submitting each message, only that they're in the channel (or working with someone who is)
02:28:06 <kmc> under some rather unrealistic assumptions about traffic analysis and such
02:39:11 <kmc> hah, cold boot attack in a spy show on television :)
02:39:31 -!- edwardk has joined.
02:43:41 -!- mjrosenb has joined.
02:44:22 <pikhq_> kmc: Neat.
02:44:32 <pikhq_> Simultaneously real *and* flashy enough to work on TV.
02:45:19 <Sgeo> Phantom_Hoover, monqy if you didn't see there's a major update
02:45:30 <mjrosenb> kmc: ah-hah, found you!
02:45:43 <kmc> hi mjrosenb :)
02:45:54 <kmc> how's it going?
02:46:11 <kmc> `welcome mjrosenb
02:46:14 <HackEgo> mjrosenb: 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:46:27 <mjrosenb> pretty good, now living on the east coast again
02:46:49 <kmc> state college, pa?
02:46:55 <mjrosenb> yup.
02:46:59 <Phantom_Hoover> oh for the love of
02:47:08 <Phantom_Hoover> i'm not watching a flash at this hour Sgeo
02:47:13 <kmc> man, that's like 200 miles inland ;)
02:47:45 <coppro> oh god
02:47:46 <coppro> the homestuck
02:47:59 <mjrosenb> also trying to get my compose key to output "†"
02:48:31 <mjrosenb> does a horrible implementation of a somewhat esoteric language count? :-p
02:49:31 <oerjan> i'd say that counts as 90% of the wiki
02:51:17 -!- edwardk has quit (Quit: Computer has gone to sleep.).
02:52:18 * mjrosenb has made some half-assed attempts to polish it as an ioccc entry, but: http://www.club.cc.cmu.edu/~mjrosenb/unlam-gc.c
02:52:36 <oerjan> ooh unlambda?
02:54:25 <pikhq_> Any bets on how long it'll take for the Wii U to get cracked?
02:54:47 <oerjan> mjrosenb: test out my self-interpreter http://oerjan.nvg.org/esoteric/interpreter.unl :)
02:55:37 <oerjan> oh you only do part of it
02:55:46 <pikhq_> Some people for god-knows-what-reason have them already, so the clock starts now.
02:56:25 <oerjan> no continuations :(
02:57:15 <mjrosenb> oerjan: yeah, I have pseudo-support for them
02:57:21 <mjrosenb> but it is *completely* untested
02:57:42 <oerjan> mjrosenb: well you don't have the input functions anyhow
02:58:20 <Gregor> mjrosenb: Dang it, I was thinking of doing something with a GC for IOCCC :)
02:58:25 <mjrosenb> it should be pretty easy to add those
02:58:40 <oerjan> mjrosenb: assuming your continuations work properly, yes
02:58:45 <mjrosenb> Gregor: i'm sure your gc would look nothing like mine
03:00:45 <mjrosenb> oerjan: oh right, unfortunately, c and gc are going to interact in particularly heinous ways
03:00:58 <oerjan> heh
03:02:49 <mjrosenb> kmc: you know how to add bindings to X's compose functionality, right?
03:04:34 <kmc> yeah i wrote a blog post about it
03:06:02 <mjrosenb> oh right, what is your blog again?
03:06:56 <kmc> http://mainisusuallyafunction.blogspot.com/
03:07:08 <kmc> http://mainisusuallyafunction.blogspot.com/2010/10/typing-mathematical-characters-in-x.html
03:10:12 <mjrosenb> kmc: do you know if there is a program that will parse .Xcompose after X has started?
03:15:46 <kmc> no :/
03:15:53 <pikhq_> kmc: I feel I still need to applaud you for calling C++ (rightfully) an esolang.
03:18:50 -!- kmc has quit (Quit: Lost terminal).
03:19:47 -!- kmc has joined.
03:32:58 -!- DHeadshot has joined.
03:34:36 <Phantom_Hoover> Sgeo, damn you
03:35:00 <Phantom_Hoover> otoh i have read the sufferer dialogue sooner than i otherwise would have and my life is infinitely better for it
03:36:09 <Sgeo> tswett, you too
03:36:27 <tswett> Me too what?
03:36:41 <Sgeo> Major Homestuck update
03:36:47 * tswett nods.
03:36:48 <tswett> Thanks.
03:36:49 <Sgeo> Huge walkaround
03:36:53 <Sgeo> You're welcome
03:39:55 <Phantom_Hoover> Thus far I've had to restart once, I've gotten lost twice, and I caused a minor sequence break.
03:45:09 <zzo38> Please tell me your opinion what I wrote so far about this: http://zzo38computer.cjb.net/roguevm/roguevm.tex
03:50:50 <coppro> Phantom_Hoover: haha
03:51:01 <coppro> Sgeo: I also homestuck
03:51:10 <coppro> but I saw right away on the feed
03:51:27 <Phantom_Hoover> Terezi's ancestor is King Radical, calling it now
03:52:29 <pikhq_> zzo38: Thus far, seems like a reasonable spec for a VM.
03:52:59 <pikhq_> zzo38: Designed to support a rogue-like text UI, but at least slightly more flexible than that, I take it?
03:53:32 <coppro> ****SPOILER ALERT***
03:53:36 <coppro> Phantom_Hoover: karkat's is the best
03:53:40 <coppro> mainly due to one conversation
03:53:47 <Phantom_Hoover> yes
03:53:49 <Phantom_Hoover> yes he is
03:54:16 <coppro> Phantom_Hoover: have you had the conversation between him and latula yet?
03:54:22 <Phantom_Hoover> yes
03:54:23 <pikhq_> zzo38: It looks like you've got it set up to be relatively sane to emulate, as well; the instruction coding, though not the *simplest* to decode, is fairly reasonable.
03:54:24 <Phantom_Hoover> yes i have
03:54:28 <Phantom_Hoover> I just finished it.
03:54:32 <coppro> it is the best
03:54:41 <Phantom_Hoover> His previous conversations were good too.
03:54:42 <coppro> the face at the end is priceless
03:54:53 <pikhq_> (the absolute simplest would give you 16-bit addresses, so it's a single opcode to grab the address)
03:55:07 <Phantom_Hoover> (btw theoretical logreading elliott don't bitch at me for spoilers, bitch at coppro.)
03:55:15 <coppro> hey
03:55:19 <coppro> i put a spoiler alert in
03:55:27 <coppro> and also hussie says don't give a fuck
03:55:30 <coppro> people should homestuck first
03:55:36 <coppro> then things that may have spoilers
03:55:55 <coppro> I didn't figure out if getting hussie to run away does anything
03:55:56 <coppro> did you?
03:56:05 <Phantom_Hoover> Dunno.
03:56:06 <pikhq_> zzo38: Also, just out of curiosity, do you intend for code to execute out of RAM, or only out of ROM?
03:57:41 <Phantom_Hoover> 'corporealnormative'
04:00:02 <coppro> Phantom_Hoover: YES
04:00:04 <coppro> oh god yes
04:04:10 <Phantom_Hoover> OK so that took me an hour.
04:04:30 <Phantom_Hoover> I definitely recall thinking "how long can it take, Cascade is only 13 minutes2.
04:04:33 <Phantom_Hoover> *"
04:05:20 * Phantom_Hoover -> sleep
04:05:22 -!- Phantom_Hoover has quit (Quit: Leaving).
04:06:23 <oerjan> @tell atriq Try 48 ~!~)): [[48 [)):] [~!~)):] ~~) !][49 [~!~)):] [)):] )~]]
04:06:23 <lambdabot> Consider it noted.
04:06:36 <oerjan> @tell Arc_Koen Try 48 ~!~)): [[48 [)):] [~!~)):] ~~) !][49 [~!~)):] [)):] )~]]
04:06:36 <lambdabot> Consider it noted.
04:17:52 <zzo38> pikhq_: Both ROM and RAM.
04:18:12 -!- MoALTz has joined.
04:18:18 <zzo38> And, yes it is designed to support a rogue-like text UI, but at least slightly more flexible than that.
04:18:29 <zzo38> It says so in the introduction.
04:18:52 <pikhq_> zzo38: Neat.
04:20:03 <Sgeo> @tell Phantom_Hoover It's not Flash (except for the Intro). It's HTML5
04:20:03 <lambdabot> Consider it noted.
04:20:34 <zzo38> I case I did not say: The .tex and .dvi are in the same directory; I distribute both.
04:20:37 <coppro> Sgeo: really?
04:20:46 <coppro> hmm actually
04:21:01 <zzo38> Also, some chapters are very short so there is empty space on the page; some artwork could be placed there as well as on the title page possibly.
04:21:02 <Sgeo> https://github.com/Gankro/Jterniabound
04:22:49 -!- oerjan has quit (Quit: Good night).
04:34:25 -!- kmc has quit (Quit: leaving).
04:43:40 <zzo38> I will write more of this file later today, probably.
04:43:43 <FreeFull> I got myself a puzzle
04:44:09 <FreeFull> Given a lexicographic permutation, generate the next one
04:47:09 <FreeFull> So, given something like "0123" it will return "0132"
04:47:16 -!- MoALTz has quit (Ping timeout: 248 seconds).
04:48:01 <pikhq_> There's a standard algorithm for that. Is this homework?
04:48:16 <FreeFull> More eulerwork
04:48:26 <pikhq_> The following algorithm generates the next permutation lexicographically after a given permutation. It changes the given permutation in-place.
04:48:27 <FreeFull> I looked at the algorithm already
04:48:29 <pikhq_> Find the largest index k such that a[k] < a[k + 1]. If no such index exists, the permutation is the last permutation.
04:48:32 <pikhq_> Find the largest index l such that a[k] < a[l]. Since k + 1 is such an index, l is well defined and satisfies k < l.
04:48:34 <pikhq_> Swap a[k] with a[l].
04:48:37 <pikhq_> Reverse the sequence from a[k + 1] up to and including the final element a[n].
04:48:39 <FreeFull> I looked at the algorithm already
04:48:47 <FreeFull> Just got to implement it
04:48:54 <pikhq_> Well there you go.
04:48:57 <FreeFull> Going to do it in haskell I guess
04:50:21 <FreeFull> Oh hey, pattern matching (x:y:ys) works
04:52:45 <FreeFull> Seems I'm not as comfortable with functional programming yet as I should be
04:54:06 <pikhq_> I realize this defeats the point of the exercise, but isn't there a "permutations" function in Haskell? :)
04:55:29 <FreeFull> There is but it doesn't return them in lexicographic order =P
04:55:55 <pikhq_> Ah.
04:56:45 <FreeFull> I guess for what I want something that returns a list of strings would be better
04:56:49 <coppro> lexicogrpahic ordering of permutations is annoying
05:06:33 <FreeFull> I wonder if a foldl here is the right idea
05:08:04 <FreeFull> Maybe not
05:12:04 <fizzie> If you want to generate all of them, I don't think you need the slightly tricky next-permutation thing, unless you want it of course.
05:12:11 <fizzie> > let perms [] = [[]]; perms l = concatMap (\i -> map (i:) (perms $ delete i l)) l in perms "1234"
05:12:12 <lambdabot> ["1234","1243","1324","1342","1423","1432","2134","2143","2314","2341","241...
05:12:20 <fizzie> > let perms [] = [[]]; perms l = concatMap (\i -> map (i:) (perms $ delete i l)) l in perms "123"
05:12:21 <lambdabot> ["123","132","213","231","312","321"]
05:13:16 <fizzie> In other words, "all permutations with the smallest element in the first place; then those with the second-smallest in the first place; etc."
05:14:00 <fizzie> (With a sort if the input items aren't in lexicographical order, and something else than 'delete i l' if there can be duplicates.)
05:18:56 -!- kmc has joined.
05:19:09 <kmc> when will i learn my lesson
05:19:14 <kmc> that i should never upgrade X
05:38:16 <mjrosenb> kmc: upgrade to waylan!
05:38:24 <mjrosenb> kmc: you'll never need to touch X again!
05:48:16 <fizzie> "Wayland - way cool!"?
06:21:31 -!- impomatic has quit (Quit: http://RetroProgramming.com).
06:23:22 * shachaf gyres and gimbles in the Wayland.
06:23:28 <shachaf> kmc: Did you give up on irssi+mosh?
06:24:01 -!- asiekierka has joined.
06:29:53 -!- mig22 has joined.
06:33:42 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
06:36:22 <pikhq_> Wow. Y'know how nop on x86 is actually xchg ax, ax (xchg eax, eax in 32-bit mode)?
06:36:48 <pikhq_> x86_64 came *this close* to jacking it up: xchg eax, eax would do nothing and then clear the high 32 bits of eax.
06:36:51 <shachaf> Except it's not in 64-bit mode, right?
06:37:03 <shachaf> Yes. But it's an explicit nop.
06:37:11 <shachaf> I mean, you gotta have a nop, right?
06:37:18 <pikhq_> So they went and just said 0x90 is explicitly nop, and gave xchg eax, eax a different encoding.
06:37:31 <pikhq_> If you for some reason want to clear the high 32 bits of eax that way.
06:38:44 <shachaf> Presumably you can also mov eax, eax?
06:38:55 <pikhq_> Yeah, think so.
06:39:27 <fizzie> They do have some nops that really are only nops too, these days. (And IIRC both Intel and Amd optimization manuals have their own recommended "fastest" nop sequences for lengths up to 16 bytes or so.)
06:40:09 <pikhq_> In pretty much all x86 CPUs for $long_time xchg eax, eax has been hard-coded as a nop anyways.
06:40:33 <pikhq_> (so you don't have a dependency in the pipeline on eax, and it doesn't take as long to execute, etc. etc.)
06:41:29 <fizzie> From what I can recall, some of those sequences were really kinda silly if you look at the meanings; piles of prefixes that don't really matter since it's a nop, and so on.
06:44:27 -!- zzo38 has quit (Remote host closed the connection).
06:45:21 <shachaf> Oh, neat.
06:45:27 <shachaf> I just made llvm-mc segfault.
06:45:44 <shachaf> Looks like it happened because of -triple=blah
06:46:23 <mjrosenb> shachaf: -mc?
06:47:15 <shachaf> mjrosenb: Oh, you're in here already.
06:47:38 <shachaf> I guess my /msg was redundant as well as incomplete.
06:47:44 <shachaf> mjrosenb: llvm-mc is great.
06:47:58 <shachaf> echo 'mov %eax,%eax' | llvm-mc -show-encoding
06:48:19 <mjrosenb> oic, that sounds like a project I half-finished a month ago
06:48:26 <mjrosenb> which I think I told you about elsewhere
06:48:38 <shachaf> The REPL?
06:48:42 <shachaf> This is just an assembler.
06:48:52 <shachaf> (And disassembler, and things.)
06:48:55 <shachaf> I still want the REPL!
06:49:27 -!- nooga has joined.
06:49:46 <shachaf> mjrosenb: I was "reverse-engineering" some code with some Windows debugger and it was pretty nice.
06:50:22 <shachaf> At every step it shows you all the registers and memory, whether the current jump will be taken, effects of the current instruction, etc.
06:52:08 <mjrosenb> shachaf: i'm still planning on working on it
06:52:19 <mjrosenb> i should put some sort of a license on that code
06:52:30 <shachaf> Then other people will surely contribute!
06:55:49 <shachaf> whoa, dude, QFC isn't a national supermarket chain.
06:59:40 * mjrosenb has never heard of QFC
07:00:11 <shachaf> Apparently it's only in some parts of the Pacific Northwest.
07:02:15 <fizzie> Quantum Fried Chicken?
07:24:36 -!- mig22_ has joined.
07:24:36 -!- mig22 has quit (Read error: Connection reset by peer).
07:24:37 -!- mig22_ has changed nick to mig22.
07:53:25 -!- Jon_Frakes has changed nick to itidus21.
08:40:49 -!- Eladith has joined.
09:11:19 <shachaf> kmc: I talked to gdb about the cryptography CTF thing and he seems unenthusiastic about doing one which is entirely about cryptography.
09:11:52 <shachaf> But he said he'd love to play one if someone else made it, hint hint.
09:12:19 <oklopol> centucky tsicken fried
09:14:59 -!- TeruFSX has quit (Read error: Connection reset by peer).
09:16:35 -!- TeruFSX has joined.
09:18:38 -!- AnotherTest has joined.
09:18:47 <AnotherTest> Hello
09:18:52 -!- Nisstyre has quit (Ping timeout: 246 seconds).
09:21:57 -!- Nisstyre has joined.
09:36:04 -!- mig22 has quit (Read error: Connection reset by peer).
09:36:26 -!- mig22 has joined.
10:24:09 -!- oklofok has joined.
10:24:17 <oklofok> do i hv utf8 now
10:24:53 <oklofok> it seems to be impossible to get mirc to use it
10:29:22 <oklopol> i'm sure you can tell just from that one character
10:29:41 <oklopol> you can probably extract my credit card number from it
10:31:20 <shachaf> http://en.wikipedia.org/wiki/CESU-8
10:31:22 <shachaf> How exciting.
10:32:38 <oklopol> i have that?
10:32:45 <shachaf> I hope not.
10:33:07 <shachaf> Hmm -- I wonder whether *I* have that.
10:33:08 <shachaf> Eek.
10:34:40 <shachaf> `echo 㯿
10:34:46 <shachaf> `run echo 㯿
10:34:49 <shachaf> ^echo hi
10:34:49 <fungot> hi hi
10:34:51 <HackEgo> ​㯿
10:35:05 <HackEgo> ​㯿
10:35:30 <oklofok> should i be seeing that as something other than nonsense?
10:35:59 -!- oklofok has quit.
10:36:51 -!- oklofok has joined.
10:37:02 <oklopol> 13:34:17 shachaf • `echo 㯿
10:37:09 <oklofok> still nonsense here
10:37:16 <shachaf> Your UTF-8 is completely broken, yes.
10:37:30 <oklopol> is it bröken here?
10:37:47 <oklopol> oklopol is mirc, oklofok is kvirc
10:38:19 <oklopol> in both i'm supposedly using utf-8, but apparently it's just too hard to do right.
10:39:21 <oklofok> ö
10:39:41 <shachaf> ó
10:39:50 <shachaf> økløpøl
10:39:54 <oklofok> i'm seeing myself right, but oklopol doesn't even see itself right :D
10:40:00 <oklofok> hey those look right!
10:40:22 <oklofok> incidentally, that's how you actually write my name
10:40:38 <oklofok> well, the last ø also has an umlaut
10:41:28 <shachaf> økløpø̈l
10:41:42 <oklofok> yes
10:42:03 <oklofok> although really the first ø also has an underumlaut.
10:42:15 <oklofok> (pronounced exactly as you'd expect)
10:42:25 <oklofok> (double the ö but reversed)
10:51:24 <itidus21> oklofok is kvircy
10:53:31 -!- kinoSi has quit (Read error: Connection reset by peer).
10:53:59 -!- kinoSi has joined.
11:18:05 -!- Phantom_Hoover has joined.
11:19:03 -!- derdon has joined.
11:27:31 -!- oklo has joined.
11:28:05 -!- Arc_Koen has joined.
11:28:19 <Arc_Koen> hello
11:28:19 <lambdabot> Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it.
11:29:09 -!- Arc_Koen_ has joined.
11:29:09 -!- Arc_Koen has quit (Read error: Connection reset by peer).
11:29:09 -!- Arc_Koen_ has changed nick to Arc_Koen.
11:36:11 -!- oklofok has quit (*.net *.split).
11:39:06 <Arc_Koen> > char 48
11:39:07 <lambdabot> No instance for (GHC.Num.Num GHC.Types.Char)
11:39:07 <lambdabot> arising from the literal `4...
11:39:21 <Arc_Koen> > char '\48'
11:39:22 <lambdabot> 0
11:39:36 <shachaf> > '\48'
11:39:37 <lambdabot> '0'
11:39:50 <shachaf> @ty char
11:39:51 <lambdabot> Char -> Doc
11:39:57 <shachaf> Hah.
11:41:56 <fizzie> > chr 48
11:41:57 <lambdabot> '0'
11:42:01 <fizzie> Is probably the intention.
11:42:14 <Arc_Koen> most definitely
11:42:29 <fizzie> lambdabot: Just how many symbols you have in there after your default imports?
11:42:43 <shachaf> @google inurl:L.hs
11:42:45 <lambdabot> http://prospectheights.patch.com/articles/int-l-hs-teacher-takes-kids-ice-skating-for-first-time
11:42:47 <shachaf> @google inurl:L.hs lambdabot
11:42:49 <lambdabot> https://bitbucket.org/zeekay/lambdabot/src/0e7b40d401e7/State/L.hs
11:43:03 <shachaf> Well... Not the optimal result, but it'll do.
11:43:29 <fizzie> > cake !! 1
11:43:31 <lambdabot> "One can prepared coconut pecan frosting."
11:43:50 <shachaf> > reverse . take 8 . reverse . map head $ cake
11:43:52 <lambdabot> "ASCIICAT"
11:44:05 <fizzie> Amazing.
11:44:16 <shachaf> "meow"
11:44:18 <shachaf> -- asciicat
11:51:37 <Arc_Koen> so I had an idea for a new language
11:52:06 <Arc_Koen> it draws inspiration from "spacechem"
11:53:37 <Arc_Koen> it's 2-dimensional, with befunge-like commands ><v^, and it's "mutilinear" or whatever it's called to have several independent instruction pointers working at the same time
11:54:22 <Arc_Koen> each ip (let's call them workers) can either be empty-handed, or carrying a number
11:54:39 <fizzie> Concurrent Funge-98 is a bit like that, except the IPs have full stacks instead of numbers.
11:55:01 -!- MoALTz has joined.
11:55:54 <Arc_Koen> workers can DROP the number they're carrying, or PICK up a number (but there has to be a number where they are at that moment)
11:57:06 <Arc_Koen> for every worker there is an input emplacement, in which appears a number when the worker meets the input command
11:57:27 <Arc_Koen> two numbers can never be in the same place, and a worker carrying a number can never walks over a number
11:57:40 <Arc_Koen> (so the input has to be picked up before it can produce a new number)
11:58:37 <Arc_Koen> operations can be made with adjacent numbers : for instance, if a worker walks over a '+' while carrying a number, his number is incremented by each number which is on the floor on an adjacent '+'
11:59:14 <Arc_Koen> there's also an output zone that prints numbers when they are dropped there
11:59:33 <Arc_Koen> and that's pretty much how far I've been :)
11:59:49 <fizzie> It sounds a bit finite.
12:00:32 <Arc_Koen> well, there can be as many workers as the programmer has declared
12:01:02 <Arc_Koen> each worker has his one commands - a worker's ><v^ don't affect the other workers
12:01:24 <Arc_Koen> and there are synch commands to force a worker to wait for another
12:02:58 <fizzie> Yes, but it sounds like there'd be a finite amount of storage, if you can't have more than one number in one cell (be it carried or dropped), and if numbers can't be dropped further away than what there are commands written to.
12:03:27 <Arc_Koen> yes, that's a problem
12:03:58 <fizzie> Unless the workers can write new commands to non-tracky regions, in which case it just sounds very difficult.
12:04:08 <Arc_Koen> haha
12:04:20 <fizzie> I did like SpaceChem quite a lot, FWIW.
12:04:30 <fizzie> Possibly due to the fungey connections.
12:04:55 <fizzie> fungot: Did you like SpaceChem? I would think you'd have a real aptitude for it.
12:04:56 <fungot> fizzie: oh tusho, i want to experiment with depends on who you're talking with scheme programmers here. my hair keeps obscuring my vision out there.
12:05:08 <Arc_Koen> I could allow carrying workers to walk over numbers as long as they don't try to pick it up, but that wouldn't really solve the problem (at least not in a usable way)
12:05:43 <fizzie> I suppose if the numbers can be arbitrarily large, that could be enough.
12:05:55 <Arc_Koen> right
12:06:18 <Arc_Koen> also my problem is that one-char commands are not really appropriate
12:06:31 <Arc_Koen> so maybe each worker's playfield should be preceded by a few define
12:06:53 -!- DHeadshot has quit (Ping timeout: 246 seconds).
12:06:57 <Arc_Koen> like "define A to be the 'synch with worker x' command"
12:07:35 <Arc_Koen> also it would be way more readable if several workers could be define at the same place, like in spacechem
12:07:50 -!- DHeadshot has joined.
12:08:10 <fizzie> You could have a graphical editor for it, with the support for showing an arbitrary subset of layers.
12:08:18 <Arc_Koen> oooooh
12:08:22 <Arc_Koen> nice
12:08:36 <Arc_Koen> I've never programmed anything graphical though
12:08:40 <fizzie> A bit of extra work, of course.
12:14:56 -!- cuttlefish has joined.
12:15:00 -!- boily has joined.
12:16:19 <Arc_Koen> wait, did Oerjan just prove Fueue was turing-complete while I was sleeping?
12:18:17 -!- ogrom has joined.
12:22:21 <boily> sleep: the main cause of turing-completeness proving.
12:22:55 <fizzie> I must've been sleeping for that.
12:24:02 <boily> mine was briefly interrupted at 3:00am after a nightmare.
12:24:15 <boily> (last night's chinese restaurant was good, but I shouldn't have eaten that much...)
12:24:34 <fizzie> Lastlog just says "03:41 < oerjan> another day, another TC proof." with not much context.
12:24:49 <boily> ah. good to hear the proof is still good.
12:27:03 -!- Kestral has joined.
12:27:37 -!- Kestral has left.
12:36:02 -!- pikhq has joined.
12:36:05 -!- pikhq_ has quit (Ping timeout: 252 seconds).
12:57:39 -!- impomatic has joined.
13:02:32 -!- ogrom has quit (Quit: Left).
13:03:07 -!- ogrom has joined.
13:56:22 <Gregor> “According to my map of the yellow woods, this road diverges here.” “It doesn't matter which road we take: later we'll just TELL people we took the more indie one!” “Nice! I'm glad we didn't misunderstand this quote as is commonly done.”
14:01:09 -!- soundnfury has quit (Ping timeout: 252 seconds).
14:15:44 <Phantom_Hoover> Gregor
14:15:44 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
14:15:48 <Phantom_Hoover> are you quoting something
14:20:27 <itidus21> i looked it up, apparently the first sentence relates to a robert frost poem
14:21:23 <Gregor> Phantom_Hoover: Dinosaur Comics.
14:21:39 <Gregor> itidus21: And that's the obvious part. If that's "apparently" then you should consider, y'know, reading something. Ever.
14:22:28 <kmc> shachaf: hm? i've been using irssi+mosh for a while now
14:28:51 <itidus21> "I don't know what the fuck was going on with the scottish education board in the 1970s. Do you like whiskey? Do you hate kids? The job's yours."
14:31:45 <Phantom_Hoover> itidus21, obviously this was not written by a Scot.
14:32:17 <itidus21> well it could be a sellout
14:32:52 <Gregor> Yeah, a True Scotsman wouldn't have even bothered to ask, “do you like whiskey?”
14:32:54 <Gregor> That's implied.
14:33:14 <itidus21> i do sense how jarring it is
14:33:24 <itidus21> as if it was written by me
14:33:40 <kmc> shachaf: my connection was dropping because i was rebooting the machine on which i run irssi :)
14:33:53 <Phantom_Hoover> Gregor, no, a true Scotsman wouldn't spell whisky with an 'e'.
14:34:08 <itidus21> ok i did write it!
14:34:20 <itidus21> you win
14:35:00 <Phantom_Hoover> Google says it's from Craig Ferguson, but it's also from a standup routine so the travesty is entirely the fault of whoever transcribed it.
14:35:07 <itidus21> i transcribed it
14:35:22 <Phantom_Hoover> Scottish whisky doesn't have an 'e' you dolt!
14:35:46 <itidus21> i hand a feeling something was wrong with it
14:35:49 <itidus21> ahhhh
14:35:56 <itidus21> whats wrong with my spelling
14:36:12 <itidus21> ahem.
14:36:13 <Phantom_Hoover> It has an 'e' in it, as I have now told you for the third time.
14:36:28 <itidus21> this time im complaining about "i hand a feeling"
14:36:32 <itidus21> yeah..
14:36:44 <itidus21> but i did sense something was wrong with it. i just couldn't place it
14:37:10 <itidus21> wow language is fun.
14:38:52 <boily> ~echo test
14:38:53 <cuttlefish> test
14:39:03 <boily> hm... strange... my bot is still alive here.
14:39:15 <Phantom_Hoover> ~help
14:39:16 <cuttlefish> --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi
14:39:21 <Phantom_Hoover> ~duck
14:39:22 <cuttlefish> --- ~duck query
14:39:22 <cuttlefish> --- Query information from Duck Duck Go
14:39:29 <Phantom_Hoover> ~duck whisky
14:39:30 <cuttlefish> whisky definition: a liquor distilled from fermented wort (as that obtained from rye, corn, or barley mash).
14:40:05 <Gregor> ~duck whiskey
14:40:05 <cuttlefish> Whisky or whiskey is a type of distilled alcoholic beverage made from fermented grain mash.
14:40:10 -!- cuttlefish has quit (Remote host closed the connection).
14:40:54 <itidus21> ~duck no true scotsman whiskey
14:41:11 <itidus21> fair enough
14:41:39 -!- cuttlefish has joined.
14:41:51 -!- boily1 has joined.
14:42:33 -!- boily1 has quit (Client Quit).
14:43:01 <itidus21> " "it's the Scotch-Irish (whiskey) in me (lie alert!--I don't drink the stuff)" I believe you. No true Scotsman would spell whisky that way! "
14:43:25 -!- cuttlefish has quit (Remote host closed the connection).
14:44:25 -!- boily has quit (Ping timeout: 252 seconds).
14:45:46 -!- boily has joined.
14:46:51 -!- cuttlefish has joined.
14:48:32 <boily> ~duck sake
14:48:32 <cuttlefish> sake definition: end, purpose.
14:49:10 <itidus21> ~duck fungot
14:49:11 <cuttlefish> --- No relevant information
14:49:11 <fungot> itidus21: less fnord ,you could have a fnord sxml there, and those pointers only point to the first
15:00:04 -!- ogrom has quit (Ping timeout: 255 seconds).
15:00:57 -!- MoALTz has quit (Ping timeout: 260 seconds).
15:01:56 -!- MoALTz has joined.
15:08:28 <itidus21> old news "Fabio is rushed to a Virginia hospital after his oddly-proportioned face collides with a goose while he rode in the front of a Busch Gardens roller coaster."
15:09:46 <itidus21> "Many women wish they could have been in that goose's place on that fateful day. Many women wish they were worthy enough to die on Fabio's face."
15:13:39 -!- Eladith has quit (Ping timeout: 268 seconds).
15:21:51 -!- sirdancealot has quit (Ping timeout: 265 seconds).
15:36:33 -!- monqy has quit (Quit: hello).
16:04:35 -!- ais523 has joined.
16:09:49 -!- augur has quit (Remote host closed the connection).
16:10:16 -!- augur has joined.
16:14:37 -!- augur has quit (Ping timeout: 252 seconds).
16:19:27 -!- ais523 has quit.
16:19:48 -!- ais523 has joined.
16:20:16 <fizzie> fungot: Did you hear: you're not relevant?
16:20:17 <fungot> fizzie: what about numbers? i'm looking for.
16:22:35 -!- impomatic has quit (Quit: impomatic).
16:26:10 -!- ais523_ has joined.
16:26:30 -!- ais523 has quit (Ping timeout: 255 seconds).
16:27:54 -!- ais523_ has changed nick to ais523.
16:30:47 -!- Eladith has joined.
16:32:59 <AnotherTest> Does a language with the name 'X' already exist?
16:33:24 -!- mig22 has quit (Quit: mig22).
16:33:29 <AnotherTest> (It seems likely, but I couldn't find anything on duckduckgo/the esolangs wiki)
16:36:52 <pikhq> No, but a fairly major program does.
16:37:20 <AnotherTest> Okay, I don't like the name that much anyway
16:37:51 <AnotherTest> I would use it only as the file extension for programs
16:37:54 -!- nooga has quit (Ping timeout: 264 seconds).
16:40:31 -!- nooga has joined.
16:53:31 -!- augur has joined.
16:59:53 -!- copumpkin has joined.
17:02:46 -!- jlaire has quit (Ping timeout: 252 seconds).
17:07:10 -!- ogrom has joined.
17:09:42 -!- jlaire has joined.
17:15:01 -!- zzo38 has joined.
17:15:05 <zzo38> ?messages
17:15:05 <lambdabot> You don't have any new messages.
17:16:29 <Sgeo> @tell zzo38 Now you have a message.
17:16:29 <lambdabot> Consider it noted.
17:28:17 -!- FreeFull has quit (Quit: Rebooting.).
17:33:25 -!- Guest6575 has joined.
17:34:20 <Guest6575> any one knows what is this virus behiver Shamoon
17:37:26 -!- Guest6575 has quit (Remote host closed the connection).
17:46:10 -!- derdon has quit (Remote host closed the connection).
17:47:10 -!- ais523 has quit (Ping timeout: 246 seconds).
17:50:32 <kmc> \pedantic{not a program, but a protocol and a set of specifications}
17:50:44 <kmc> notwithstanding /usr/bin/X
17:53:04 <AnotherTest> What if $X() were the name? I guess that would be fine?
17:54:24 -!- atriq has joined.
17:56:28 <atriq> @messages?
17:56:28 <lambdabot> atriq: You have 1 new message. '/msg lambdabot @messages' to read it.
17:56:35 <atriq> @messages
17:56:35 <lambdabot> oerjan said 13h 50m 12s ago: Try 48 ~!~)): [[48 [)):] [~!~)):] ~~) !][49 [~!~)):] [)):] )~]]
17:58:07 <zzo38> http://2a03.free.fr/?p=pub&dir=zzo38 Now with Mickey Mouse stuff!!
17:58:07 <lambdabot> zzo38: You have 1 new message. '/msg lambdabot @messages' to read it.
17:58:09 <atriq> @ask oerjan Thue-Morse sequence?
17:58:09 <lambdabot> Consider it noted.
18:00:43 -!- AnotherTest has quit (Quit: Leaving.).
18:00:46 <FireFly> What language is that in oerjan's message?
18:00:51 <atriq> Fueue
18:01:01 -!- AnotherTest has joined.
18:01:04 -!- AnotherTest has quit (Client Quit).
18:02:35 <fizzie> I just got a "Segmentation fault (core dumped)" when I tried to feed it to that fueue.c.
18:03:12 <atriq> I used my Haskell one that I can't seem to compile with a working main but works in GHCi
18:03:28 <fizzie> That's not in the wiki, though.
18:03:33 <atriq> Nah
18:03:38 <atriq> Hmm
18:03:44 <atriq> Arc_Koen, ^^^
18:04:28 <fizzie> atriq: oerjan @told him the same thing.
18:04:54 <atriq> Okay
18:04:54 <fizzie> Though I suppose not about the segfault.
18:04:59 <fizzie> But the program.
18:05:00 <atriq> Sgeo, did you see the update?
18:05:29 <atriq> Ah, you did
18:08:16 -!- AnotherTest has joined.
18:10:08 <atriq> The Thue-Morse sequence looks like good movie binary
18:10:19 -!- impomatic has joined.
18:12:17 <zzo38> atriq: What does that mean?
18:12:39 <atriq> If I was making a movie and wanted binary to flow down the screen
18:12:48 <zzo38> OK
18:12:48 <atriq> To say to viewers "This chap is good at computers"
18:12:58 <atriq> The Thue-Morse sequence would be good for that
18:13:12 <kmc> in this business you're either a one or a zero, alive or dead
18:15:27 <Sgeo> "However, there are no cubes: instances of XXX."
18:15:37 <Sgeo> That's a bit too nuts for me.
18:16:38 -!- FreeFull has joined.
18:16:45 <atriq> Sgeo, I've watched the update twice. The second time was in a McDonalds, reading out some of the speech
18:17:02 <atriq> My friends don't like that I give Dave a rural Texan accent
18:26:07 -!- AnotherTest has quit (Quit: Leaving.).
18:32:50 <itidus21> in follow up to
18:33:12 <itidus21> `quote world peace
18:33:16 <HackEgo> 848) <itidus21> world peace is for fascists
18:33:30 <atriq> Ooh, this looks good
18:33:41 <itidus21> i say, imagine an xkcd what-if about what would happen if there was world peace
18:34:19 <itidus21> things never turn out how they're supposed to in a what-if
18:34:44 -!- copumpkin has quit (Read error: Connection reset by peer).
18:35:41 -!- copumpkin has joined.
18:35:46 <Gregor> I wonder if there's a program that creates random but plausible-looking UIs that movie audience think look hackery.
18:37:15 <itidus21> Gregor: well theres about 1000 programs to imitate the the matrix UI :D
18:37:34 <Gregor> That's not a UI, that's junk scrolling over a screen.
18:37:47 <Gregor> UIs involve /interfacing/.
18:37:51 <itidus21> damn
18:37:54 <atriq> The file browser in Jurassic Park was a real thing
18:38:05 <atriq> That could have been plausibly installed on the computer in question
18:38:14 <atriq> Even though it was ridiculous
18:38:24 <Gregor> *looks it up*
18:38:38 <itidus21> the famous quote is said by the little girl
18:39:09 <itidus21> i was reading someone criticizing that line the other day
18:39:23 <Gregor> Hahah yes there's a free clone!
18:41:00 <itidus21> http://omassix.com/wp-content/uploads/2012/04/dennis_nedry_cryocan_01.jpg
18:42:58 <itidus21> i hope that guy loses weight some day
18:43:14 <itidus21> i want him to live to a ripe old age
18:51:28 <kmc> nmap is in a bunch of films
18:51:37 <kmc> including at least one porno
18:52:40 -!- Vorpal has joined.
18:53:02 <Gregor> kmc: But is it used /metaphorically/ in the porno?
18:53:16 <Gregor> “Looks like you've got some… wide open ports.”
18:53:22 <kmc> c.c
18:53:32 <Gregor> “I'm gonna need to probe for security vulnerabilities.”
18:53:52 <Gregor> “Look, what I'm trying to say is, bend over that chair.”
18:58:15 -!- ais523 has joined.
19:04:09 <fizzie> I have an IRIX system that I vaguely recall I tried to install fsn on, but failed, because it didn't have all the necessary development things, and I didn't have the OS media.
19:05:15 <fizzie> IRIX 5.4, I think.
19:05:38 <fizzie> Or maybe 5.2. Who knows.
19:07:09 <fizzie> Actually, checking the logs, it for some reason had 6.5 stuck on it. (It was one of the R4k models of Indigo.)
19:07:13 <fizzie> It was horreebly slow.
19:09:28 <ais523> happy australian mailman mailing list reminders day!
19:09:57 <fizzie> s/Indigo/Indy/
19:10:09 <fizzie> (The "Indigo without the 'go'".)
19:10:46 <atriq> It's kind of weird having one of your languages sit relatively obscure for a couple of months then is suddenly implemented and proven probably turing complete
19:11:47 <ais523> "proven probably turing complete"?
19:12:06 <atriq> oerjan has made a translation to it from a subset of Underload
19:12:10 <atriq> Hasn't tested it
19:12:23 <atriq> May not be QUITE enough to be Turing complete
19:16:25 <fizzie> ais523: It's like "almost undecidable", or "just a little bit dead".
19:17:05 <atriq> "slightly pregnant"
19:17:58 <atriq> Okay, it's enough to be Turing Complete if it works
19:26:45 -!- rodgort has quit (Ping timeout: 276 seconds).
19:32:58 <itidus21> so are operating systems a good thing?
19:33:07 <quintopia> operating systems
19:33:15 <quintopia> is the worst class i ever took
19:34:42 <itidus21> humm
19:34:49 <itidus21> well.. ok sooner or later
19:35:49 <itidus21> computer programs are sure to become robust in the same way as a text, or a painting, or a sculpture
19:37:03 <itidus21> i guess in the case of a text they're not all that robust without knowledge of the language
19:37:15 <fizzie> I head that operating systems are responsible for all those wanton shootings. That batman movie shooter guy? He used an operating system before.
19:37:55 -!- ogrom has quit (Quit: Left).
19:39:26 -!- glogbackup has quit (Ping timeout: 268 seconds).
19:39:26 <itidus21> maybe in the future, the idea will be you can modify a cpu to understand any machine code
19:39:34 <ais523> atriq: that's more of a probable proof of Turing Completeness
19:39:42 <ais523> as in, you're not sure if it's a proof or not, but it probably is
19:39:55 <ais523> itidus21: future?
19:40:05 <itidus21> hmm
19:40:11 <ais523> you can do that right now with FPGAs, it's just really inefficient
19:40:18 <itidus21> humm
19:40:27 <itidus21> well
19:40:33 <ais523> and mostly pointless if you aren't reconfiguring them to be massively parallel and special-cased to the program you're trying to run on them
19:40:43 <itidus21> akin to the way that, a human can process any text in any language, by learning the new language
19:41:07 <itidus21> so such a cpu could process any program in any machine code, by learning the new machine cde
19:41:46 <ais523> what would it learn /from/, though?
19:41:55 <ais523> surely a computer would learn best from the equivalent of a dictionary
19:42:10 <itidus21> thats how i imagine it
19:42:43 <ais523> and the equivalent of a dictionary is basically an implementation of each command
19:42:46 <Phantom_Hoover> itidus21, so you mean a hardware emulator.
19:42:55 <itidus21> its probably too late at night for me
19:42:58 <ais523> which is what you provide to an interpreter (to get an emulator) or an FPGA (to get a synthesized circuit)
19:43:08 <Phantom_Hoover> A generalised hardware emulator, that is.
19:43:55 <itidus21> Phantom_Hoover: yeah but i guess that such a thing should always have limits
19:44:27 <itidus21> i really don't like grey goo
19:58:31 <atriq> It's gooey
19:59:55 <atriq> And dear god Tumblr has exploded with Homestuck
20:03:10 <itidus21> thats non-good
20:03:25 <Phantom_Hoover> atriq, this surprises you
20:03:27 <atriq> Unless you like Homestuck
20:03:29 <itidus21> from what i saw of homestuck... it probably shouldn't spread
20:03:50 <Phantom_Hoover> It's pretty spread already.
20:04:07 <atriq> It hasn't been referenced in xkcd or SMBC
20:04:19 <itidus21> lets keep it that way, quintopia
20:04:33 <Phantom_Hoover> I think iti has lost it./
20:04:44 <itidus21> a little
20:05:03 <atriq> Or has arranged his keyboard into alphabetic order and missed the P for Phantom_Hoover
20:05:34 <itidus21> im just ... tripping out
20:05:55 <Phantom_Hoover> are
20:05:58 <Phantom_Hoover> are you on drugs
20:06:01 <itidus21> no
20:06:08 <atriq> I think he's on itidus-iness
20:06:11 -!- rodgort has joined.
20:06:36 <atriq> `welcome rodgort
20:06:38 <itidus21> i just don't think its for the greater good if the world at large discovers homestuck
20:06:39 <HackEgo> rodgort: 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:06:44 <itidus21> but i was out of line
20:07:45 <zzo38> FPGAs can be inefficient although every one is different from each other and requires special software to be able to program. My suggestion would be to use a actual CPU as well as FPGA, but open specification versions of both.
20:08:12 -!- oerjan has joined.
20:09:07 <itidus21> anxiety got the better of me tonight
20:10:55 <zzo38> Probably with certain kinds of CPU might be able to speed it up, as well as the way the memory is being connected, and with FPGA as a part of it.
20:11:12 <zzo38> And also be able to reprogram the CPU's microcode at runtime if it has any.
20:11:17 -!- jlaire has left.
20:11:59 <itidus21> maybe a better question is, is it possible to describe a natural human language in such terms as to be able to decipher it without reference to another language
20:12:19 <itidus21> these days it seems to be the case
20:13:46 <oerjan> @messages
20:13:46 <lambdabot> Arc_Koen said 8h 26m 39s ago: 48 ~!~)): [[48 [)):] [~!~)):] ~~) !][49 [~!~)):] [)):] )~]] prints an infinite loop of 0 and 1s... except it doesn't print anything until the loop is over, which never
20:13:46 <lambdabot> happens.
20:13:46 <lambdabot> Arc_Koen said 8h 25m 4s ago: interestingly, infinite loops with the ocaml interpreter seem to go forever; with the C interpreter they always end up in a segfault
20:13:46 <lambdabot> atriq asked 2h 15m 37s ago: Thue-Morse sequence?
20:14:30 <atriq> Wow, it seems my Haskell interpreter would be the best if I could just get the goddamn main function working
20:14:43 <oerjan> atriq: didn't the one i pasted work? :(
20:14:45 <kmc> main isn't a function
20:14:47 <kmc> in haskell
20:15:15 <atriq> kmc, "main" is a function that makes a haskell program an executable if you define it with type IO (), I mean that one
20:15:16 <atriq> I think
20:15:29 <kmc> that's not a function
20:15:31 <zzo38> But (IO ()) is not a function type.
20:15:32 <kmc> it doesn't have a -> in its type
20:15:36 <zzo38> A function type is (->)
20:15:43 <oerjan> Arc_Koen: i know, it's probably because it never prints a newline, EgoBot's interpreters have the same problem (i modified my /// interpreter for it specifically to get around it)
20:15:44 <atriq> I...
20:15:49 <atriq> I just call everything a function
20:15:52 <atriq> 7 is a function
20:15:55 <atriq> () is a function
20:15:56 <kmc> that's wrong
20:16:01 <atriq> I know it's wrong
20:16:02 <kmc> you are saying wrong things
20:16:04 <kmc> so don't do that
20:16:12 <atriq> It's just how I think and sometimes when I think things I end up saying them
20:16:16 <atriq> The "main" thingymabob
20:16:20 <kmc> "value"
20:16:25 <kmc> or in this case "IO action"
20:16:25 <atriq> That sounds wrong
20:16:26 <oerjan> Arc_Koen: adding fflush(stdout) before every printing _should_ fix that.
20:16:29 <kmc> yeah but it's not wrong
20:16:41 <atriq> If I could get main working
20:16:44 <oerjan> oh he doesn't seem very present
20:17:21 <zzo38> You could call all the function, IO, etc, all a "value", just because in Haskell they are a first-class value.
20:17:41 <oerjan> @tell Arc_Koen Adding fflush(stdout) before each printing may fix the trouble of the thue-morse program not printing anything, EgoBot's interpreters have the same problem (i modified my /// interpreter for it specifically to get around it)
20:17:41 <lambdabot> Consider it noted.
20:18:29 <atriq> I think I know exactly what the problem is
20:18:40 <atriq> The parser doesn't handle whitespace QUITE correctly
20:18:41 <oerjan> atriq: (that's a yes to your question too)
20:18:47 <atriq> (okay)
20:19:19 <atriq> I really need that function from Prelude.Generalize
20:19:28 <atriq> But I don't want to force people to use an obscure library
20:20:21 <zzo38> Which function from Prelude.Generalize? If you do not want to force people to use that library, just copy the function. Prelude.Generalize is in the public domain.
20:20:21 <oerjan> atriq: what is wrong with my main :(
20:20:36 <fizzie> oerjan: It's mainly in Spain.
20:20:37 <atriq> Nothing, it's a problem with the parser
20:20:41 <oerjan> aha
20:21:01 <oerjan> atriq: yeah in parsec you usually want to skip space after every token read
20:21:06 <atriq> It fails when there's whitepsace at the back
20:21:22 <oerjan> and at the very beginning
20:22:02 <oerjan> this means every new subparser can start on non-whitespace, which simplifies things
20:22:18 <atriq> Works now!
20:22:51 <atriq> And now I'm encountering the same problems as Arc_Koen
20:22:57 <oerjan> XD
20:23:08 <atriq> Due to different default buffering stuff in GHCi and compiled programs, I presume
20:23:12 <zzo38> atriq: Tell me which function you needed from Prelude.Generalize I am interested to know which one.
20:23:30 <oerjan> atriq: hflush stdout before printing should help there too :)
20:23:41 <oerjan> er after, i guess
20:23:45 <atriq> zzo38, (<>>=)
20:23:59 <oerjan> @tell Arc_Koen um i mean _after_ printing, of course
20:23:59 <lambdabot> Consider it noted.
20:24:41 <oerjan> i guess that setbuffering stuff might not also be used
20:24:50 <zzo38> atriq: OK. Just copy it to your program; it is public domain.
20:25:10 <atriq> zzo38, it's easier to just name it and return it later
20:25:26 <zzo38> OK then, do it that way if you prefer.
20:26:05 <oerjan> <FreeFull> There is but it doesn't return them in lexicographic order =P <-- they decided to make it work on infinite lists instead.
20:26:12 <atriq> oerjan, fixed it
20:26:18 <atriq> hSetBuffering stdout NoBuffering
20:26:25 <oerjan> right
20:27:21 <oerjan> > permutations "abcde"
20:27:22 <lambdabot> ["abcde","bacde","cbade","bcade","cabde","acbde","dcbae","cdbae","cbdae","d...
20:27:46 <itidus21> > permutations "01"
20:27:47 <lambdabot> ["01","10"]
20:28:01 <oerjan> hm is it actually lexicographical order of the reverse?
20:28:26 <oerjan> > reverse <$> permutations "edcba"
20:28:27 <lambdabot> ["abcde","abced","abedc","abecd","abdec","abdce","aedcb","aedbc","aebdc","a...
20:28:37 <oerjan> nope not even that
20:28:55 <atriq> > reverse $ permutations "edcba"
20:28:56 <lambdabot> ["dbeac","dbaec","dabec","adbec","debac","deabc","daebc","adebc","edbac","e...
20:29:02 <atriq> Not that either
20:29:08 <atriq> @src permutations
20:29:08 <lambdabot> Source not found.
20:29:16 <oerjan> it's a pretty new function
20:29:23 <oerjan> in Data.List
20:29:31 <atriq> I know where it is
20:29:37 -!- asiekierka has quit (Ping timeout: 240 seconds).
20:30:12 <fizzie> ... where perms [] _ = []; perms (t:ts) is = foldr interleave (perms ts (t:is)) (permutations is) where interleave = complicated-looking stuff.
20:31:22 <oerjan> lexicographic order of the reverse would have been more logical, i think
20:31:38 <oerjan> since it works even for infinite lists
20:32:37 <oerjan> (well with a reverse that returns a leftward infinite list)
20:32:47 <fizzie> > take 10 $ take 3 <$> permutations [1..]
20:32:48 <lambdabot> [[1,2,3],[2,1,3],[3,2,1],[2,3,1],[3,1,2],[1,3,2],[4,3,2],[3,4,2],[3,2,4],[4...
20:34:30 <fizzie> Is it just a coincidence that take 6 $ take 3 <$> permutations [1..] equals permutations [1,2,3] or not?
20:37:31 -!- augur has quit (Remote host closed the connection).
20:41:14 <oerjan> fizzie: no that's intentional, it does all permutations of the first n before even looking whether there is more in the list
20:41:37 <oerjan> > take 3 <$> permutations ("abc" ++ undefined)
20:41:39 <lambdabot> ["abc","bac","cba","bca","cab","acb"*Exception: Prelude.undefined
20:41:56 <fizzie> Yes, that sounded a'sense.
20:43:37 <oerjan> maximal laziness and all that.
20:51:42 -!- pikhq has quit (Ping timeout: 245 seconds).
20:51:46 -!- pikhq_ has joined.
20:52:16 <oerjan> atriq: btw i assume this means my thue-morse sequence worked?
20:52:21 <atriq> Yes
20:52:24 <atriq> Yes it did
20:52:31 <oerjan> then i can put it on the wiki.
20:53:52 <FreeFull> You guys still talking about permutations
20:55:29 <oerjan> no, now we're talking about fueue
20:59:43 <fizzie> Perfueuetions. Fuemutations. Permueues.
21:00:16 <oerjan> <itidus21> i say, imagine an xkcd what-if about what would happen if there was world peace <-- after the .75 c (or so) baseball and the jumping i think we can all see how that would go.
21:00:51 <fizzie> Also the half-full glass that ended up in someone's face.
21:00:55 <oerjan> right.
21:01:22 <atriq> I'm probably the only person who wanted Haskell syntax highlighting on Tumblr
21:01:50 <oerjan> i think xkcd what-if needs better navigation soon, there isn't even a link to the first one
21:02:00 <oerjan> *direct link
21:03:01 <oerjan> haskell is no tumblr land
21:05:19 -!- boily has quit (Quit: Poulet!).
21:05:43 -!- boily has joined.
21:05:43 -!- boily has quit (Client Quit).
21:05:48 -!- cuttlefish has quit (Remote host closed the connection).
21:06:02 <oerjan> <atriq> May not be QUITE enough to be Turing complete <-- i'm pretty confident of the basic principle, even if my translation might have bugs
21:06:14 <atriq> I realised that later
21:06:48 <oerjan> *in
21:07:01 <atriq> My doubt was caused by a misremembrance of Underload
21:08:12 <atriq> Wow, this is slow
21:08:56 <oerjan> i think it would be possible to do the rest of the underload functions as well, except plain S, but they take two stack arguments and * and a would need to build something complicated so they would be much more work
21:09:54 <oerjan> ~ might be somewhere in between
21:11:29 <oerjan> hm apparently "confident of" and "confident in" are both considered correct
21:11:48 <atriq> English.
21:11:58 <oerjan> well by this one person anyhow :P
21:12:28 <atriq> Can't decide between the genitive and the locative.
21:12:54 <oerjan> i vaguely recall those were equal for some latin nouns
21:13:34 <oerjan> like "domi"
21:13:46 <atriq> Latin isn't English.
21:15:00 <oerjan> english doesn't really have locative
21:15:02 <atriq> Making English Latin is to, despite all common sense, cling to an ideal that, many centuries ago, you ascended from.
21:15:14 <atriq> It doesn't really have genitive either
21:15:32 <oerjan> no, but at least 's is descended from it
21:15:46 <atriq> That's the possessive, which is different, I think?
21:16:18 <oerjan> -s is a pretty common genitive ending in those germanic languages which still have it
21:16:25 <atriq> Is it?
21:16:26 <atriq> Hmm
21:16:51 <oerjan> (norwegian still has -s, but it's mostly used like in english so may not count)
21:17:12 <itidus21> demi, term meaning half and also eponymous name describing the ratio of her age to her partners
21:18:03 <oerjan> um you realize that ratio isn't constant right?
21:18:12 -!- soundnfury has joined.
21:18:19 <itidus21> turns out their actual ages are 49 and 34
21:18:47 <itidus21> so its a vast exaggeration
21:19:04 -!- Vorpal has quit (Ping timeout: 252 seconds).
21:24:48 -!- Taneb has joined.
21:24:51 <fizzie> oerjan: If you round ages to years and switch every year...
21:25:03 -!- atriq has quit (Ping timeout: 276 seconds).
21:25:58 <oerjan> fancy
21:28:12 -!- Taneb has changed nick to atriq.
21:28:50 -!- augur has joined.
21:31:48 -!- atriq has quit (Quit: Goodnight).
21:39:23 <zzo38> I have added some of the instructions to RogueVM now, and fixed a few other things; tell me if you have any suggestions/comments, and if you have idea what other instructions you think should be needed.
21:45:25 <oerjan> http://www.sheldoncomics.com/archive/120831.html :P
21:51:59 <shachaf> kmc: Ah. The .ma.comcast.net and frequent disconnections misled me.
21:58:17 <kmc> it shouldn't be disconnecting anymore :)
21:58:46 <kmc> the host running irssi is my desktop in ma on comcast
22:02:43 <Arc_Koen> fizzie: if you have any idea why infinite loops end up in a segmentation fault with fueue.c, please let me know
22:02:44 <lambdabot> Arc_Koen: You have 2 new messages. '/msg lambdabot @messages' to read them.
22:02:49 <Arc_Koen> @messages
22:02:49 <lambdabot> oerjan said 1h 45m 9s ago: Adding fflush(stdout) before each printing may fix the trouble of the thue-morse program not printing anything, EgoBot's interpreters have the same problem (i modified my /
22:02:49 <lambdabot> // interpreter for it specifically to get around it)
22:02:49 <lambdabot> oerjan said 1h 38m 50s ago: um i mean _after_ printing, of course
22:03:47 <oerjan> Arc_Koen: there is probably also some function to set stdout to unbuffered, but i don't recall what it is in C.
22:06:11 <Arc_Koen> ok, fflush(sdtout); seems good enough
22:06:13 <Arc_Koen> 0110100110010110100101100110100110010110011010010110100110010110100101100110100101101001100101100110100110010110100101100110100110Segmentation fault
22:06:25 <Arc_Koen> though I still don't get what the segfault is here for
22:06:28 <oerjan> ic
22:06:36 * Arc_Koen should check tail-recursivity
22:06:39 <oerjan> and it happens after several iterations...
22:06:49 -!- MoALTz has quit (Ping timeout: 268 seconds).
22:06:49 <Arc_Koen> yes, it always happen with infinite loops
22:06:58 <oerjan> but not many enough to have run out of memory
22:07:03 <Arc_Koen> the ocaml version seems quite happy to go on forever, though
22:07:19 -!- osdevcapacitor has joined.
22:07:27 <Arc_Koen> oerjan: now that I think of it, someone pointed out a few memory leaks
22:07:35 <Arc_Koen> I should fix them
22:08:07 <oerjan> perhaps you are freeing too much at some point too?
22:08:26 <Arc_Koen> last time I did that gcc kept me informed
22:09:00 <Arc_Koen> if I download a thuemorse interpreter and pipe the result, will it work?$
22:09:17 <zzo38> Is it allowed in C for a void function to return f(...) if f is also a void function?
22:09:22 <Arc_Koen> (is it really an infinite loop? or does it stop at some point?
22:09:43 <oerjan> Arc_Koen: it is infinite yes
22:10:07 <oerjan> also thue-morse isn't a language, it's an infinite sequence.
22:10:13 <Arc_Koen> oh
22:10:30 <Arc_Koen> I got confused by the expression "the thue-morse program"
22:11:00 <Arc_Koen> ok, imagine I make a program that takes binary code as an input
22:11:19 <Arc_Koen> (or at least a sequence of 0s and 1s, cause I think binary code is something else)
22:11:40 -!- osdevcapacitor has quit (Ping timeout: 245 seconds).
22:11:42 <Arc_Koen> is there a way to have the two of them work simultaneously, via a pipe or stdin or whatever
22:11:58 <oerjan> sure, a pipe will do
22:12:39 <Arc_Koen> interestig
22:14:24 <oerjan> i note many of your functions suppose q not empty. it might be an idea to put in a debug check that the supposition isn't violated.
22:15:19 <oerjan> it's the kind of thing that could easily give a segmentation fault, i think
22:17:41 <oerjan> Arc_Koen: the ):[):] loop also gives a segmentation fault?
22:17:51 <Arc_Koen> yup
22:18:19 <Arc_Koen> hmmm
22:19:01 <Arc_Koen> btw, how are errors signaled in C, usually?
22:19:17 <Arc_Koen> I mean, if I use "return -1" or something it's not very explicit
22:19:27 <Arc_Koen> should I make an error function that prints stuff on stderr?
22:19:53 <Arc_Koen> (for instance is there an equivalent to ocaml's exceptions?)
22:23:11 <oerjan> printing on stderr is good, i think. also exit(EXIT_FAILURE); is the portable way to do a failure exit, if i understand exit's manpage correctly.
22:25:47 <oerjan> on linux, other values are used by some programs, and anything not 0 is some kind of error.
22:25:55 <Arc_Koen> (is_empty(q) && errorfunction("empty"));
22:25:56 <oerjan> afair
22:26:08 <Arc_Koen> ok that may not be the best way to write that
22:26:16 <oerjan> heh
22:28:08 <oerjan> i don't think s != "" is the correct way to check for string emptyness. otoh you never _call_ matchwhat with an empty string so it doesn't matter.
22:28:42 <Arc_Koen> oh, right
22:29:23 <Arc_Koen> yesterday I tried to compare argv[1]'s content with a quote-enclosed string :-)
22:29:27 <Arc_Koen> using ==
22:31:59 <fizzie> !*s is the idiomatical empty-string test, I'd say.
22:33:14 <Arc_Koen> I'm not sure I should take those habits
22:33:32 <fizzie> As for "tail-recursivity", no such thing in C.
22:33:39 <Arc_Koen> oh
22:33:54 <Arc_Koen> so how do I avoid a stack overflow or the like?
22:33:58 <fizzie> Unless you happen to get a really clever compiler, and turn enough optimization flags on.
22:34:03 <fizzie> You don't recurse infinitely.
22:34:04 <zzo38> Well yes !*s is a way to test empty string in C, and is what I use too.
22:34:34 <Arc_Koen> don't we have a nice "strempty" function or somethign?
22:34:55 <fizzie> strcmp(s, "") == 0 is a possible semantically semantical way.
22:35:00 -!- copumpkin has quit (Ping timeout: 248 seconds).
22:35:18 <fizzie> FWIW, gcc -O2 makes your fueue.c not segfault in the oerjogram, for me.
22:35:19 <zzo38> I don't think so but I prefer !*s and I think is better way.
22:35:27 <fizzie> And the non-optimized build segfault is a stack overflow issue.
22:35:49 <fizzie> (Run in gdb, ask for backtrace, get a long list.)
22:36:57 <oerjan> aha
22:37:02 <fizzie> What sort of infinite recursion you have there, anyway? I didn't notice anything else than processFueue, with a self-call all the way in the end.
22:37:14 <oerjan> so then tail-recursiveness might be the problem
22:37:21 <fizzie> You can fix that by wrapping the entire thing inside a do { ... } while (!halts);
22:37:28 <Arc_Koen> well processFueue is recursive and oerjan's program is an infinite loop
22:37:34 <fizzie> It even calls itself with the same arguments.
22:37:41 <Arc_Koen> so processFueue won't stop calling itself until the program ends, which never happens
22:38:03 <Arc_Koen> not quite - it calls itself with the same queue, but the queue has been slightly modified
22:38:19 <fizzie> Yes, but it's been modified even if you just loop.
22:38:32 <fizzie> It's the same 'q' in both cases.
22:38:36 <oerjan> yeah just turn that into a do while
22:38:45 <Arc_Koen> ok :(
22:39:06 -!- copumpkin has joined.
22:39:09 <fizzie> You might need to do something about "Queue newq", though, if references to that are actually kept.
22:39:34 <Arc_Koen> oh, right
22:39:53 <Arc_Koen> well, I'd have to make it a Queue* instead
22:39:56 <fizzie> Where "something" might be e.g. Queue *newq and a newq = malloc(sizeof *newq) in the ( handler. But not necessarily.
22:40:08 <fizzie> It might not really be used.
22:40:34 <Arc_Koen> it's used by the fueue function '('
22:40:46 <fizzie> Yes, but since the queue elements have an actual "Queue" in them, so I suppose pushblock() makes a copy.
22:41:03 <fizzie> Instead of storing a pointer to newq itself anywhere.
22:41:20 <fizzie> I mean, it has to, it's even called-by-value by giving a newq.
22:41:34 <Arc_Koen> yeaaaaaah more or less
22:41:41 <Arc_Koen> the queue is copied
22:41:54 <Arc_Koen> but Queue is a structure that basically contains a length and two pointers
22:42:02 <fizzie> That doesn't matter.
22:42:04 <Arc_Koen> so these two pointers aren't modified by pushblock
22:42:07 <oerjan> if you make it nonrecursive then you don't need the halts variable, you can just do return directly
22:42:29 <fizzie> All that is in the stack (i.e. locals of processFueue) is the 'Queue' structure itself.
22:42:32 <Arc_Koen> while(true)? that seems mean
22:42:39 <fizzie> while (1), you mean.
22:42:41 <fizzie> There is no 'true'.
22:42:52 <Arc_Koen> uh, right
22:42:54 <fizzie> Though for (;;) is kind of common too.
22:43:10 <Arc_Koen> I made a #define TRUE 1 though
22:43:18 <zzo38> I happen to like for(;;)
22:43:22 <Arc_Koen> (after gcc told me he didn't know what true was)
22:43:38 <Arc_Koen> (also he told me he didn't know a function named bool :) )
22:44:07 <fizzie> What would that function even do?
22:44:20 <Arc_Koen> zzo38: in english I'd tend to read "for(;;)" as "while no condition is true"
22:44:40 <fizzie> If you #include <stdbool.h> in a C99 system, you will get a type called 'bool', and constants 'true' and 'false'.
22:44:44 <zzo38> Arc_Koen: C is not English.
22:44:51 <fizzie> (Even if you don't, '_Bool' is a type in C99.)
22:45:06 <fizzie> Not that there's any particular reason to go for C99 features if you don't already.
22:45:11 <Arc_Koen> do people use C99?
22:45:15 <fizzie> Yes.
22:45:17 <Arc_Koen> I thought C89 was the reference
22:45:18 <fizzie> But not all people.
22:45:33 <fizzie> Some people even use some C11.
22:45:52 <zzo38> gcc and a few other compilers can also use GNU extensions, GNU89 and GNU99. (I prefer GNU89 for my own programs.)
22:45:56 <fizzie> C99 isn't terribly rare, though it suffers in popularity due to Microsoft's compiler not doing it.
22:45:58 <Arc_Koen> someone developed a version of C in 1911? wow, they were ahead of their time!
22:48:32 <fizzie> According to valgrind, incidentally, the program still leaks memory. About a megabyte per second when running the oerjogram.
22:49:07 <Arc_Koen> well, there's this immediate dereferencing of a function-returned pointer you mentioned
22:49:21 <Arc_Koen> and probably others as well
22:49:49 -!- ais523 has quit (Ping timeout: 246 seconds).
22:49:56 <Arc_Koen> also the queue is not emptied when the program halts, but I was told the OS would take care of that
22:50:07 <fizzie> Oh, that's still there? But that's fixable simply by changing copyQueue to return a Queue instead of a Queue*.
22:51:09 <fizzie> Queue copyQueue(const Queue *q) { Queue c; ...; return c; } c->block = copyQueue(...) and that should be it. Well, with some &s added in copyQueue.
22:51:28 <Arc_Koen> ok, it's fixed
22:52:06 <fizzie> I think I'll do some sleeping now. But all the reported leaked blocks were from the malloc call in copyQueue, at least.
22:53:28 <Arc_Koen> in my head it went "a Queue basically is a pointer, so using Queue* is silly" then "no, it makes a lot of sense to use Queue* in some cases" then "there's no reason why not to use Queue* everywhere"
22:54:00 <Arc_Koen> can I put a return in a void function?
22:54:04 <fizzie> Yes.
22:54:12 <fizzie> As long as it's just a "return;".
22:54:15 -!- kinoSi has quit (Read error: Connection reset by peer).
22:54:17 <Arc_Koen> ok
22:54:44 -!- kinoSi has joined.
22:54:49 <fizzie> You could use more Queue*s sensibly if your struct Token had a Queue* instead of a Queue, but I suppose that might make it easier to accidentally share Queues.
22:55:46 <itidus21> natural language is really bad at describing a large set of elements of the same type with different values
22:56:15 <fizzie> zzo38: Oh, since you asked: "A return statement with an expression shall not appear in a function whose return type is void. A return statement without an expression shall only appear in a function whose return type is void."
22:56:30 -!- nortti has joined.
22:57:09 <itidus21> such as a 10 by 10 grid of random colours from {red, green, blue, violet, orange}
22:57:47 <zzo38> That is why we have mathematics and computer files
22:58:37 -!- nooga has quit (Ping timeout: 268 seconds).
23:04:03 <Arc_Koen> is it? they told me it was because wells were not hexagons
23:08:03 <Arc_Koen> (now to write a book where wells are hexagons and mathematics don't exist)
23:08:33 * quintopia packs up to move to Arc_Koen's Well of Souls
23:09:48 <zzo38> RogueVM now includes a complicated instruction 0x11 which can be used inside of a string.
23:10:22 <oerjan> i should point out that my thue-morse program _does_ cause the queue to grow indefinitely, as every printed digit other than the first is accompanied by appending blocks for two later digits.
23:10:45 <oerjan> but i assume valgrind doesn't count that as leakage
23:11:34 <oerjan> fizzie: in case you're still here ^
23:11:34 <Arc_Koen> oerjan: I tried your program with fueue.c; as it didn't work I tried it with fueue.ml; as it didn't work I tried it with fueue.c using --print
23:11:46 <oerjan> ouch
23:11:55 <oerjan> well it worked for atriq
23:12:08 <Arc_Koen> it was just the fflush problem
23:12:13 <oerjan> ok
23:12:26 <Arc_Koen> is atriq's interpreter working?
23:13:04 <Arc_Koen> (using --print the huge queue was all over the place)
23:14:02 <Arc_Koen> fizzie: yeah, I'm convinced I don't need to do anything about newq
23:15:03 <oerjan> Arc_Koen: i think so, he also had a buffering problem but fixed it with hSetBuffering instead of hFlush
23:17:21 <oerjan> hypothesis: a ftack program can only run something like m*n steps before either halting, catting, or endlessly copying :'s; where m is the maximal number in the program and n is the program length.
23:19:39 -!- Sanqui has joined.
23:21:12 <zzo38> Now you have to prove it.
23:24:11 <oerjan> well it's basically (1) because all arithmetic results get immediately printed, a $ can never use higher numbers than those in the original program (2) every function other than : and $ shorten the program (3) everything you can copy other than : either goes into the three end states immediately or removes itself one copy per step
23:24:50 <oerjan> *shorten the queue
23:25:12 <oerjan> actually no, program, ) only shortens if you consider the length of the block contents
23:25:47 <Arc_Koen> what if I produce a counter example
23:25:49 <Arc_Koen> right now
23:25:52 -!- pikhq_ has quit (Ping timeout: 245 seconds).
23:25:54 -!- pikhq has joined.
23:26:15 <oerjan> * shorten the queue or goes into an end state
23:26:35 <oerjan> argh, *program
23:27:00 <oerjan> because ( lengthens but gives a block on top
23:27:02 <Arc_Koen> )[)[)[)[)[)[)[)[)[)[)[)[)[)[)[0H]]]]]]]]]]]]]]]
23:27:27 <Arc_Koen> as many steps as ')' (plus the 0 and H)
23:27:34 <Arc_Koen> yet m is 0, so m*n is 0 as well
23:27:44 <oerjan> XD
23:28:11 <oerjan> that's why i said "something like", i expect there might need to be a small added constant.
23:28:31 <quintopia> or an extra factor/
23:28:52 <Arc_Koen> ( and < both produce immediate cat
23:28:58 <oerjan> yeah
23:29:23 <Arc_Koen> because they are either lacking an argument (-> immediate cat) or they have correct arguments and produce a block (-> immediate cat)
23:29:45 <oerjan> quintopia: i _think_ that's unnecessary.
23:30:19 <quintopia> oerjan: can Arc_Koen's example be extended indefinitely?
23:30:41 <oerjan> quintopia: well sure. although it's the 0 that's the point, not the rest.
23:31:05 <oerjan> so (m+1)*n, or possibly (m+C)*n, is my guess
23:31:14 <quintopia> yeah i was gonna suggest the first
23:31:52 <Arc_Koen> I'm starting to think it's dangerous to make jokes in front of religious or computerish people
23:32:08 <quintopia> i know a joke
23:32:12 <quintopia> it's good
23:32:14 <quintopia> it's so good
23:32:16 <quintopia> you want to hear it
23:32:19 <quintopia> ?
23:32:36 <quintopia> it may have been posted here before ...
23:32:42 <Arc_Koen> oerjan: the point is that )[x] has always exactly one more step than x
23:32:51 <Arc_Koen> I included the 0 to be sure what m was
23:33:08 <Arc_Koen> quintopia: does your joke involve a duck?
23:33:19 <quintopia> Arc_Koen: no
23:33:36 -!- Nisstyre has quit (Read error: Connection reset by peer).
23:34:15 <quintopia> it's a proof that the cube root of 2 is irrational. :P
23:34:40 <Arc_Koen> haha
23:34:49 * oerjan prepareth the swatter
23:34:58 <Arc_Koen> (wait, was that not the joke?)
23:35:04 <quintopia> no
23:35:38 <Arc_Koen> fizzie: even with copyQueue fixed and processFueue a while loop, I still get a segfault on oerjan's thuemorse program
23:35:43 <quintopia> okay, here it goes: If it were rational, then we could express it as a fraction p/q, p,q integers
23:36:02 <quintopia> so 2=p³/q³
23:36:08 -!- nortti has quit (Quit: AndroIRC - Android IRC Client ( http://www.androirc.com )).
23:36:13 <quintopia> so 2q³=p³
23:36:29 <quintopia> so q³+q³=p³
23:36:38 <quintopia> which contradicts the fermat-wile theorem
23:36:43 <quintopia> thus, cube root of 2 is irrational
23:36:49 <Arc_Koen> oO
23:36:57 <oerjan> Arc_Koen: i don't think fizzie is listening at the moment
23:37:00 * oerjan swats quintopia -----###
23:37:17 <Sgeo> q=1 p=1 doesn't violate Fermat
23:37:18 <oerjan> also it's wiles
23:37:18 <quintopia> oerjan: you don't like it? :P
23:37:24 <quintopia> sorry
23:37:34 <Sgeo> ...I can't add
23:37:45 <Sgeo> Apparently 1+1=1 in my world.
23:37:46 * Arc_Koen realizes he has a lot of friend whom it would make laugh
23:37:49 <zzo38> O, yes, it is the Fermat's Last Theorem.
23:37:59 <oerjan> quintopia: well i couldn't let a prepared swatter go wasted
23:38:01 <Arc_Koen> I had the same thought as you Sgeo
23:38:31 <Arc_Koen> (though I didn't go so far as to realize how wrong I was)
23:39:04 <Sgeo> If p and q are not necessarily integers, p=cuberoot(2)
23:39:07 <Sgeo> q=1
23:39:22 <Sgeo> 1^3 + 1^3 = cuberoot(2)^3
23:39:26 <oerjan> Sgeo can't read either.
23:39:28 <Sgeo> That doesn't violate Fermet
23:39:44 <oerjan> or spell.
23:39:46 <Sgeo> Does Fermat specify that the numbers need to be integers?
23:39:55 <zzo38> Yes that doesn't because Fermat's Theorem is for natural numbers only
23:40:00 <Sgeo> Ok
23:40:18 <oerjan> also quintopia specified that p and q were integers.
23:40:38 <Sgeo> oerjan, I was ignoring that because I was curious about non-integers and Fermat's Theorem
23:41:04 <Arc_Koen> Sgeo: for any number a and non-negative number n, a^n + a^n = (nthroot(2)a)^n
23:41:06 <quintopia> Arc_Koen: you're right. you can't tell jokes to some people.
23:41:29 <Arc_Koen> yes that was pretty conclusive I think
23:42:12 <Arc_Koen> (that won't stop me from trying to prove oerjan's hypothesis about Ftack, though)
23:51:15 <oerjan> oh hm might need +2
23:51:23 <oerjan> because : doesn't need any number
23:51:38 <Arc_Koen> haha
23:52:02 <oerjan> or max(3,m+1)
23:52:07 <Arc_Koen> oerjan: but as I said, )[x] takes one more than x
23:52:23 <Arc_Koen> so i'm pretty sure we have to use O(...) in your hypothesis
23:52:46 <oerjan> um i never said it couldn't be _less_ than (m+C)*n
23:53:02 <Arc_Koen> oh
23:53:11 <oerjan> well i didn't mean to, anyway
23:53:46 <Arc_Koen> yes, but what if we find something similar to )[x] but that adds more than the size it adds
23:53:59 <Arc_Koen> (I'm not sure how much '[' is considered to add)
23:55:03 <Arc_Koen> hmm
23:55:14 <oerjan> i don't think it's very important how much you count [ and ] as
23:55:34 * Arc_Koen tries to get explain his point clearly, succeeds, but doesn't because he realizes it doesn't make sense
23:55:47 <oerjan> the only thing that adds them is (, which causes immediate catting
23:56:04 <Arc_Koen> yes but you can have them in the initial program
23:56:43 <oerjan> well yes. i think i'm sort of thinking of counting lexical tokens.
23:56:53 <oerjan> so [ and ] are one each
23:56:54 <Arc_Koen> also, !! adds with a ratio of 1
23:57:08 <Arc_Koen> )[x] adds with a ratio of one third then
23:57:30 <oerjan> Arc_Koen: er what the heck are you thinking, !! removes two elements
23:57:41 <Arc_Koen> yes
23:57:46 <Arc_Koen> I mean, the time it adds
23:57:56 <Arc_Koen> before one of the three ending conditions is met
23:58:11 <Arc_Koen> (cat, ::, H)
23:58:13 <oerjan> ...you don't need to consider things that remove _more_ than one token per step
23:58:42 <Arc_Koen> oh, !! only adds one step
23:58:43 <Arc_Koen> right
23:58:49 <oerjan> + removes three elements, anyway
23:58:58 <Arc_Koen> uh?
23:58:58 <oerjan> er two
23:59:22 <Arc_Koen> but it still proves that C must be more than 0.5
←2012-07 2012-08 2012-09→ ↑2012 ↑all