←2013-12-16 2013-12-17 2013-12-18→ ↑2013 ↑all
00:11:21 -!- Slereah_ has joined.
00:13:26 -!- Slereah has quit (Ping timeout: 264 seconds).
00:49:29 -!- Slereah_ has quit (Read error: Connection reset by peer).
00:49:46 -!- Slereah has joined.
00:53:57 <oerjan> <LinearInterpol> http://web.archive.org/web/20031210145310/http://cyberspace.org/~lament/thue.html <-- hm although both original links are dead, wayback has a younger capture of the esolang one. although they're probably identical code anyway.
00:54:08 <shachaf> http://thue.stanford.edu/
00:54:27 <shachaf> http://thue.stanford.edu/puzzle.html
00:54:27 <LinearInterpol> lol.
00:55:07 <oerjan> shachaf: seems like a different one
00:55:24 <shachaf> too bad
00:58:13 * oerjan updates to use our handy wayback template
00:59:04 -!- impomatic has quit (Quit: impomatic).
00:59:21 <LinearInterpol> something about rewrite systems makes me happy.
01:00:16 <LinearInterpol> when I was studying the process behind markov algorithms I learned all sorts of cool things you can do using them, even though it is a bit unintuitive at first.
01:02:40 <oerjan> did we point you to /// yet (probably)
01:02:53 * oerjan is heavily biased, of course
01:03:06 <Bike> being biased towards /// is sensible
01:03:14 <oerjan> yep!
01:03:19 <LinearInterpol> I've looked briefly at ///
01:03:25 <LinearInterpol> (I assume you're the creator)
01:03:32 <oerjan> Bike: it's just asking for a slanted view, really
01:03:34 <Bike> he at least wrote some algorithms
01:03:40 <Bike> shut uppppp
01:03:44 <LinearInterpol> hurrrr.
01:03:44 <oerjan> LinearInterpol: not the creator but the main programmer
01:03:56 <LinearInterpol> interesting.
01:04:02 <olsner> I assume someone's made a \\\ already?
01:04:05 <olsner> or |||
01:04:37 <oerjan> olsner: hm i don't _recall_ so.
01:04:57 <Bike> this might be a good time to mention i'm amazed this channel doesn't have a search-for-esolang function
01:05:13 <Taneb> Anyone knows how unary minus mixes with list subscripts in Python?
01:05:14 -!- tromp_ has joined.
01:05:30 <oerjan> `cat bin/wiki
01:05:32 <HackEgo> cat: bin/wiki: No such file or directory
01:05:39 <shachaf> Taneb: the way you'd expect, of course
01:05:44 <oerjan> HackEgo could have had, i guess
01:05:52 <Taneb> shachaf, I mean like -i[0]
01:06:02 <shachaf> oh
01:06:06 <Taneb> Which seems to work the way I expect
01:06:13 <shachaf> there you go, then
01:06:37 <shachaf> (i was thinking of negative indexing, which doesn't actually work the way you'd expect)
01:06:50 <Bike> doesn't it count from the end
01:07:29 <shachaf> yes
01:08:17 <shachaf> oerjan: where's my olist
01:08:27 <shachaf> `pastlog `olist
01:08:58 <HackEgo> No output.
01:09:05 <shachaf> help
01:09:11 <shachaf> `run ls bin/*log*
01:09:13 <HackEgo> bin/anonlog \ bin/etymology \ bin/log \ bin/logurl \ bin/pastalog \ bin/pastelog \ bin/pastelogs \ bin/pastlog \ bin/randomanonlog \ bin/searchlog
01:09:15 <shachaf> you people
01:09:26 <Bike> `randomanonlog
01:09:30 <HackEgo> brainfuck can be compiled to machine code.. that's faster
01:09:36 <Bike> `randomanonlog
01:09:40 <HackEgo> AFK all
01:09:42 <shachaf> `randomanonlog
01:09:46 <HackEgo> Saturday shall be red fedora day!
01:09:56 <shachaf> `randomanonlog
01:09:56 <shachaf> `randomanonlog
01:09:56 <shachaf> `randomanonlog
01:09:56 <shachaf> `randomanonlog
01:09:57 <shachaf> `randomanonlog
01:10:04 <HackEgo> ​(recording my gf, don't worry)
01:10:05 <HackEgo> fizzie: Pls fix with analytical logical skills not zapping
01:10:05 <HackEgo> yes, there are very few of new concepts there. still interesting to write a shortest hello-world and a quine :)
01:10:05 <HackEgo> 85 <-- gentoo
01:10:05 <HackEgo> s/,/m/
01:10:39 <Bike> what a mysterious function.
01:10:52 <olsner> fungot: why use skills if you can use zapping?
01:10:53 <fungot> olsner: ( define it " want to learn two languages at once, ecraven. internally to t, because fixnums are usually not modified very frequently.
01:11:06 <oerjan> <shachaf> kmc: "new wood stoves" would be a good name for a ban <-- I'LL TRY TO KEEP THAT IN MIND
01:12:25 <shachaf> context: 10:17 <douglass_> I believe SF bans new wood stoves but does not yet require removing existing ones.
01:13:18 <olsner> context :(
01:13:42 <oerjan> you mean it wasn't a typo? freaky.
01:14:09 <shachaf> oerjan: sry
01:14:34 <shachaf> oerjan: would banning me make you feel better
01:16:53 <oerjan> we're not banning wood stoves in norway yet, but there's some serious environmental pollution control
01:17:07 <oerjan> shachaf: doubtful
01:17:41 <oerjan> now the pain killers kicking in otoh...
01:18:52 -!- yorick has quit (Remote host closed the connection).
01:19:29 <Bike> http://www.nytimes.com/2013/12/17/science/earth/outsider-challenges-papers-on-growth-of-dinosaurs.html not all is well in the land of dinos
01:19:40 <Bike> myhrvold sure is an eclectic dude.
01:21:29 -!- Taneb has quit (Quit: Leaving).
01:23:54 -!- Slereah has quit (Read error: Connection reset by peer).
01:24:21 -!- Slereah has joined.
01:24:57 <oerjan> avant-garde cuisine and patent law should _not_ be mixed hth
01:29:28 <Sgeo> "Don't you just change "assertEquals(x, y)" to "it(x).should().equal(y)" ?"
01:30:45 -!- carado has quit (Ping timeout: 245 seconds).
01:31:36 <Bike> sensible
01:37:20 -!- nooodl has quit (Ping timeout: 265 seconds).
01:41:32 <kmc> Sgeo: lol now your library is Elegant™
01:41:55 -!- muskrat has joined.
01:44:33 <Sgeo> (fwiw I just quoted someone replying to PLT_Hulk)
01:44:56 <kmc> Fiora: the thing about stack pointer reminds me of the (admittedly less extreme) hack where Linux puts a task-specific data structure at the end of the 8 kB aligned kernel stack, so you can get its address by masking the stack pointer
01:45:14 <Fiora> huh, sneaky
01:45:22 <Fiora> so it's like athread local storage type thing with stacks?
01:45:29 <kmc> very useful in exploit code too! :3
01:45:48 <kmc> yeah
01:46:07 <shachaf> hooray for sneaky things
01:46:20 <shachaf> does HackEgo have a database of sneaky things like lambdabot does
01:46:43 -!- realz has quit (Ping timeout: 260 seconds).
01:47:00 <kmc> lol
01:47:02 <kmc> what's lambdabot's
01:47:08 <shachaf> @where sneaky
01:47:08 <lambdabot> dropFromEnd n xs = zipWith const xs (drop n xs)
01:47:10 <shachaf> @where sneaky2
01:47:10 <lambdabot> lazyReverse xs = go xs (reverse xs) where go (_:xs) ~(y:ys) = y : go xs ys; go [] ~[] = []
01:47:13 <shachaf> and so on
01:47:54 -!- realz has joined.
01:47:58 <Sgeo> Sneaky?
01:48:25 <Sgeo> Is that dropFromEnd supposed to be broken or just clever?
01:48:40 <Sgeo> > zip [1] [1,2]
01:48:41 <lambdabot> [(1,1)]
01:49:40 <oerjan> clever hth
01:50:07 <Bike> > let xs = [1,2,3,4,5] in zipWith const xs (drop 2 xs)
01:50:08 <lambdabot> [1,2,3]
01:50:17 <oerjan> in particular, it's O(n) space where n is that variable
01:50:24 <oerjan> i think
01:50:28 <shachaf> in particular it works on infinite lists
01:50:40 <Bike> > let xs = [71..] in zipWith const xs (drop 2 xs)
01:50:41 <lambdabot> [71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,...
01:51:53 <oerjan> now someone can explain to me what the point of that lazyReverse is.
01:51:56 -!- Sprocklem has joined.
01:52:03 <Bike> > let lazyReverse xs = go xs (reverse xs) where go (_:xs) ~(y:ys) = y : go xs ys; go [] ~[] = [] in lazyReverse [17,2,39]
01:52:04 <shachaf> It works on infinite lists.
01:52:05 <lambdabot> [39,2,17]
01:52:09 <Bike> > let lazyReverse xs = go xs (reverse xs) where go (_:xs) ~(y:ys) = y : go xs ys; go [] ~[] = [] in lazyReverse [17..]
01:52:14 <lambdabot> mueval-core: Time limit exceeded
01:52:28 <Bike> great.
01:52:30 <shachaf> It gives you a cons cell in the result as soon as it sees a cons cell in the input.
01:52:41 <oerjan> shachaf: hm well ok, as long as you don't look at the elements
01:52:45 <shachaf> Right.
01:53:11 <shachaf> > let lazyReverse xs = go xs (reverse xs) where go (_:xs) ~(y:ys) = y : go xs ys; go [] ~[] = [] in length . take 5 $ lazyReverse [17..]
01:53:12 <lambdabot> 5
01:59:26 -!- Slereah has quit (Ping timeout: 240 seconds).
01:59:49 -!- Slereah has joined.
02:01:38 <oerjan> `cat bin/`
02:01:40 <HackEgo> exec bash -c "$1"
02:02:02 -!- muskrat has quit (Ping timeout: 264 seconds).
02:02:24 <Bike> hm, psoas, is that just coincidence
02:02:47 <oerjan> saføui
02:02:52 <oerjan> also a coincidence
02:03:05 <Bike> dag
02:03:19 <oerjan> natt
02:04:21 -!- heroux has quit (Ping timeout: 252 seconds).
02:06:37 -!- heroux has joined.
02:14:43 -!- realz has quit (Ping timeout: 252 seconds).
02:15:27 -!- Slereah has quit (Ping timeout: 240 seconds).
02:15:47 -!- Slereah has joined.
02:31:55 -!- Sprocklem has quit (Ping timeout: 260 seconds).
02:36:39 -!- Bike has quit (Ping timeout: 260 seconds).
02:37:33 <ion> Finished watching the Freeman’s Mind episodes released so far. ’Twas funneh. https://www.youtube.com/playlist?list=PL6PNZBb6b9LvDWpI-5CPYUxG1Rnm-vr9V
02:38:26 -!- Bike has joined.
02:58:02 <ion> Not sure if real life or The Onion http://www.cbc.ca/thisisthat/blog/2013/12/11/man-emerges-from-bunker-14-years-after-y2k-scare/index.html
02:58:13 <doesthiswork> satire
02:58:32 <Bike> that was easy.
02:58:33 <doesthiswork> it's just fantasy
02:58:47 <lifthrasiir> `` ` ` ` echo asdf
02:58:49 <HackEgo> bash: -c: line 0: unexpected EOF while looking for matching ``' \ bash: -c: line 1: syntax error: unexpected end of file
02:58:54 <lifthrasiir> hmm.
02:59:05 <doesthiswork> so (reset (cons 1 (shift w (cons 5 (w '()))))) => (5 1)
02:59:25 <ion> Hehe, ok.
02:59:29 <doesthiswork> should (reset (cons 1 (reset (shift k (k (shift w (cons 5 (w '())))))))) return (5 1) or (1 5)
02:59:40 <Bike> i'm afraid
02:59:44 <doesthiswork> (not which does it, but which would you expect)
03:00:43 <Bike> is there some way to do this in cps instead @_@
03:00:57 <doesthiswork> not without making it worse
03:01:35 <Bike> well it's gibberish so it can't get worse
03:01:40 <Bike> i'm gonna guess (1 5) though
03:01:58 <doesthiswork> any reason?
03:02:01 -!- Sorella has quit (Remote host closed the connection).
03:02:18 <Bike> because i'm imagining that the outer "reset" is totally ignored
03:02:49 <doesthiswork> that is indeed how shift and reset work
03:02:56 -!- realzies has joined.
03:07:09 <Bike> is the (reset (cons 1 ...)) one like (let ((w (lambda (x) (cons 1 x)))) (cons 5 (w '()))
03:08:59 <doesthiswork> pretty much
03:10:26 <doesthiswork> the various delimiting operator differ in how they treat nesting
03:10:37 <Bike> so the latter one is like (cons 1 (let ((k (lambda (x) x))) (let ((w (lambda (x) (k x)))) (cons 5 (w '())))))?
03:11:40 <doesthiswork> yes
03:12:03 <Bike> hm.
03:14:26 -!- Phantom_Hoover has quit (Quit: Leaving).
03:16:17 -!- LinearInterpol has quit (Ping timeout: 250 seconds).
03:16:56 <doesthiswork> if nested shifts referred to nesting resets it would be equivalent to (let ((w (lambda (a) (cons 1 (let ((k (lambda (b) b))) (k a)))))) (cons 5 (w '())))
03:17:20 <kmc> "Facebook is seeking an experienced Software Engineer to help us port the world’s best PHP run-time on servers based on ARM processor"
03:22:06 <doesthiswork> I'm not sure which regime is more pleasant to use
03:29:30 <coppro> quantum computation is whack
03:29:40 <kmc> quantum PHP
03:29:44 <coppro> YES
03:32:21 <Bike> and reset and shift are functions right
03:34:04 <doesthiswork> I don't know if they are called functions
03:34:55 <Bike> i mean, so you can do stuff like (map reset (list (lambda (f) (f (shift ...))) (lambda () (f (+ 1 (shift ...)))))))))))))))) and /we
03:35:34 <doesthiswork> yes
03:35:42 <doesthiswork> I think
03:35:56 <Bike> what a pain in the ass.
03:36:03 <doesthiswork> :D
03:36:30 <Bike> implementing this sounds annoying.
03:36:44 <doesthiswork> I faked it with macros
03:36:58 <Bike> expanding to call/cc?
03:37:17 <doesthiswork> no, just code transformation
03:37:40 <doesthiswork> it doesn't allow me to hide the resets in a function though
03:37:54 <Bike> how do you deal with (reset (list #1=(shift k ...) #1#))
03:38:11 <doesthiswork> lets find out
03:40:17 -!- tromp_ has quit.
03:41:20 <doesthiswork> just fine
03:41:39 <kmc> lol infinitely large programs
03:41:44 <doesthiswork> (reset (list #1=(shift k (list 1 (k 3))) #1#)) -> (1 (1 (3 3)))
03:41:46 -!- tromp_ has joined.
03:42:33 <Bike> shouldn't hte list be symmetrical?
03:43:15 <doesthiswork> nope, juxtaposition turns into nesting, within a reset
03:44:38 <Bike> so that's what you get from (reset (list (shift a (list 1 (a 3))) (shift b (list 1 (b 3)))))?
03:44:55 <doesthiswork> yes
03:45:19 <doesthiswork> I think the reader makes removes the cycle when it reads it
03:45:32 <doesthiswork> s/makes/
03:47:17 <Bike> yeah i don't get this at all. it depends on evaluation order now?
03:48:00 <doesthiswork> the wikipedia page actually explains this one well
03:48:11 <doesthiswork> http://en.wikipedia.org/wiki/Delimited_continuation
03:48:51 <kmc> regular continuations expose evaluation order too
03:49:12 <Bike> doesthiswork: where?
03:49:14 <Bike> kmc: they do?
03:49:18 <kmc> (let/cc k (+ (k 0) (k 1)))
03:49:27 <Bike> oh well right.
03:49:36 <Bike> i thought delimited continuations didn't, though.
03:50:20 <Bike> props on choosing let/cc
03:50:37 <oerjan> delimited continuations are even _less_ pure
03:50:58 <doesthiswork> bike start reading at "(reset
03:50:58 <doesthiswork> (begin
03:50:58 <doesthiswork> (shift k (cons 1 (k (void)))) ;; (1)
03:50:58 <doesthiswork> null))
03:51:02 <kmc> thanks Bike
03:51:16 <Bike> doesthiswork: begin has a particular evaluation order, thugh
03:51:18 <Bike> though*
03:51:26 <doesthiswork> oerjan: but they're more composable!
03:51:34 <kmc> oerjan: how so?
03:51:48 <oerjan> kmc: you can simulate state with them
03:52:47 <doesthiswork> like using them for yield?
03:53:11 <oerjan> i don't actually know how it works, i just read you can
03:53:26 <kmc> i think you can do that with normal continuations too
03:53:43 <Bike> fuck this im goin back to pron
03:53:50 <kmc> goin back to prawns
03:53:52 <kmc> you can implement coroutines right
03:54:05 -!- Sprocklem has joined.
03:54:07 <kmc> and you can implement a ref cell with a thread and that works even in cooperative threading
03:54:11 <doesthiswork> you need mutable variables to simulated delimited continuations with only undelimited ones
03:54:42 <doesthiswork> bike: list doesn't have an evaluation order?
03:55:29 <Bike> not in scheme?
03:55:52 <doesthiswork> I'm in cl
03:56:03 <Bike> well what ever nerd
03:56:17 <kmc> list is a function and so has unspec. eval order in scheme
03:56:58 <doesthiswork> what would be the point of faking delimited continuations in scheme. Someone else has already implemented them
03:57:33 <Bike> because it's a scheme tradition to implement everything a hundred times
03:58:13 <doesthiswork> I suppose it is, they sound like forth-ers in that way.
03:59:26 <doesthiswork> the nice thing about faking with macros is I can see the intermediate steps
04:02:42 <oerjan> argh i forgot to turn off the quick heating mode again
04:03:01 * oerjan cannot even get heating frozen pizza right :P
04:03:54 * pikhq can cook
04:04:00 * pikhq is also eating PB&J.
04:08:08 <oerjan> fortunately it only makes it a bit too charred
04:08:11 <oerjan> but still
04:08:50 <quintopia> nooooooooooooooooooo
04:09:14 <doesthiswork> wow, you really like pizza
04:09:17 <oerjan> quintopia: you really hate charred pizza?
04:10:14 <oerjan> (only on the edge)
04:10:27 <quintopia> oerjan: i really hate that i can't solve this stupid problem
04:10:48 <oerjan> is it still the git problem
04:11:50 <oerjan> doesthiswork: actually i only eat it once a month or so
04:12:39 <oerjan> i just seem to mention it here, every time.
04:16:47 -!- glogbackup has joined.
04:17:30 <oerjan> !logs
04:19:08 <oerjan> @ask Gregor why do you let poor glogbackup outright lie (twice!) in its !logs message
04:19:08 <lambdabot> Consider it noted.
04:19:23 <Bike> !logs
04:23:34 -!- Slereah_ has joined.
04:25:11 -!- Slereah has quit (Ping timeout: 250 seconds).
04:27:51 <oerjan> @tell mroman <mroman> Navier-Stokes sounds sciency <-- https://en.wikipedia.org/wiki/Navier%E2%80%93Stokes_existence_and_smoothness
04:27:51 <lambdabot> Consider it noted.
04:30:32 <kmc> <Bike> huh, i didn't know hamilton tried to make 3ions for path finding <-- do you have some link about this?
04:31:40 <quintopia> oerjan: i'm looking for a program that can be proved nonterminating in higher-order logics, but not in ZF/FOL
04:32:09 <quintopia> finding one that is terminating and can't be proved so is easy, but the nonterminating one is killing me
04:32:31 <quintopia> (i say easy because there's a wikipedia article telling how to do it)
04:32:39 -!- Bike has quit (Ping timeout: 246 seconds).
04:33:36 <kmc> biiiiiiiiiike
04:34:10 -!- oklopol has quit (Ping timeout: 245 seconds).
04:34:33 -!- Bike has joined.
04:35:51 <kmc> biiiiiiiiiike
04:36:00 <kmc> get a bouncer or a reliable server
04:36:07 <kmc> <kmc> <Bike> huh, i didn't know hamilton tried to make 3ions for path finding <-- do you have some link about this?
04:36:50 <oerjan> quintopia: searching for an inconsistency in ZF/FOL should do the trick.
04:37:02 <oerjan> (by gödel's second incompleteness theorem)
04:37:18 <Sgeo> Maybe main has the wrong type
04:37:27 <Sgeo> Maybe it should be main :: CompileTimeIO (IO ())
04:37:45 <Sgeo> CompileTimeIO being IO enriched with metaprogramming stuff, perhaps
04:37:50 <oerjan> quintopia: assuming your higher-order logic proves ZF/FOL consistent, that is.
04:38:20 <quintopia> oerjan: so does that mean searching for a proof that ZF is consistent?
04:39:01 <quintopia> oerjan: by checking all proofs to see if they prove it
04:39:34 <Bike> kmc: http://en.wikipedia.org/wiki/Icosian_calculus
04:39:59 <kmc> nice, thx
04:40:02 <oerjan> quintopia: no. searching for a proof it _isn't_.
04:40:42 <oerjan> quintopia: or to be precise, enumerating all theorems of ZF/FOL and halting once you find a contradiction.
04:41:07 <Bike> though i think i might have gotten the order backwards.
04:41:36 <quintopia> oerjan: ah. because there are no contradictions, but ZF doesn't know that. got it.
04:41:42 <oerjan> right
04:42:24 -!- tromp_ has quit (Remote host closed the connection).
04:42:30 <kmc> http://en.wikipedia.org/wiki/Triangle_group#Hyperbolic_plane pretty
04:42:58 -!- tromp_ has joined.
04:45:03 <oerjan> kmc: check out this page then https://en.wikipedia.org/wiki/Uniform_tilings_in_hyperbolic_plane
04:45:33 <oerjan> (discussed here previously iirc)
04:47:00 -!- tromp_ has quit (Ping timeout: 246 seconds).
04:53:04 -!- tromp_ has joined.
04:55:55 <quintopia> oerjan: okay check my latest update on Onoz and make sure i did it right plox kthx
04:57:55 <oerjan> argh
04:58:25 <oerjan> i am coincidenaltiay on the page
04:59:51 <oerjan> quintopia: i don't you can check whether something is a valid godel number of a theorem.
05:00:14 <oerjan> what you need to do is check whether something is a valid godel number of a _proof_.
05:00:35 <oerjan> and whether that proof then ends in a contradiction.
05:00:58 <oerjan> *i don't think
05:01:42 <oerjan> i suppose that's a bit simpler than what i said above
05:02:26 <kmc> more pretty!
05:03:06 <quintopia> oh okay so i could just let S be the program that checks the nth number and whether the result of that proof is that true=false?
05:03:19 <oerjan> yeah that would be enough
05:03:35 <oerjan> um except hm
05:04:37 <oerjan> the outer loop gives S every number n in order as long as a contradiction isn't found, right?
05:05:21 <quintopia> yes
05:05:45 <quintopia> the outer loop also prints 1
05:08:13 <oerjan> ok i think the idea is sound as written now.
05:16:12 <oerjan> > compare <$> [(0/0),0] <*> [(0/0),0]
05:16:14 <lambdabot> [GT,GT,GT,EQ]
05:17:04 -!- glogbackup has quit (Read error: No route to host).
05:20:58 <quintopia> i feel like we shouldn't have to tag Uncomputable languages as Unimplemented. Uncomputable should be a subcategory of Unimplemented or something.
05:21:09 <oerjan> heh
05:21:12 -!- tromp_ has quit (Remote host closed the connection).
05:21:22 <Bike> that sounds like a challenge
05:21:43 -!- tromp_ has joined.
05:22:10 <quintopia> Bike: okay. i'll give you a million dollars for a working implementation of any uncomputable language. :D
05:26:02 -!- tromp_ has quit (Ping timeout: 264 seconds).
05:34:45 -!- augur has quit (Remote host closed the connection).
05:35:12 -!- augur has joined.
05:35:13 -!- augur has quit (Remote host closed the connection).
05:35:19 -!- augur has joined.
05:49:36 <quintopia> which user was it that put a table of bf interpreter speeds on various problems on their user page?
05:50:20 -!- oklopol has joined.
05:59:10 <oerjan> http://esolangs.org/wiki/User:Rdebath#Performance_Matrix
05:59:18 <oerjan> quintopia: ^
06:03:44 <quintopia> oerjan: i was thinking of david_werecat's bfbench
06:03:56 <lifthrasiir> wow, what is that?
06:04:12 <quintopia> but this one looks more complete
06:05:40 <lifthrasiir> what is bcci in the top row?
06:06:26 <lifthrasiir> bcci seems to perform extraordinally in some tests and horribly in others
06:08:11 <oerjan> http://esolangs.org/wiki/Talk:Brainfuck#Interpreter.2Fcompiler_speed_test
06:08:37 <oerjan> "bcci: written to enforce the very strict portability rules of the BCC (a contest), and compute scores. "
06:09:09 <lifthrasiir> http://www.hevanet.com/cristofd/brainfuck/bcci.c got it.
06:10:06 <Bike> urgh, is sprunge still down
06:10:17 <lifthrasiir> I always wanted to rewrite esotope-bfc for new decades ;)
06:10:43 <Bike> yes. shit.
06:10:44 <lifthrasiir> (and f*ck the python, python really is not a language for writing PL implementations)
06:12:40 <Bike> quintopia: http://pastebin.com/PEpjaJRv that was fun.
06:15:40 <quintopia> yeah. pastie was slightly less annoying ime
06:18:55 <quintopia> Bike: please demonstrate that this implementation works by using it to decide some uncomputable problem
06:19:18 <Bike> psh, what do you take me for? an engineer? i ain't need no tests.
06:20:10 <Bike> if you really wanted you could try a few programs. anything in brainfuck, for example.
06:20:37 <quintopia> okay i've got one to test
06:21:04 <quintopia> please point me to a CLooP interpreter so that i may test it
06:21:47 <Bike> do i gotta do everything
06:22:14 <quintopia> (also you should post it on the wiki if you haven't already. nice program.)
06:22:39 <Bike> i guess i oughta get around to making an account some time
06:23:23 <quintopia> ...
06:23:27 <Bike> what?
06:23:40 <quintopia> you just surprised me there
06:23:51 <quintopia> i figured you had an account
06:23:59 <Bike> nope. i'm a parasite on this channel.
06:24:42 <Bike> @ask ais523 just tested out your account creation question thing. it asked me when Somnypna was created and i said Homfrog and got rejected.
06:24:42 <lambdabot> Consider it noted.
06:25:48 <oerjan> shocking
06:28:07 <Bike> urgh, how do you do code blocks
06:29:38 -!- glogbackup has quit (Ping timeout: 264 seconds).
06:30:06 <Bike> there.
06:30:44 <fizzie> Code::Blocks.
06:32:45 <quintopia> hmm. why is it that pforeach(infinity) is uncomputable? it seems like it should be possible to have an unbounded number of threads executing concurrently. indeed, executing the first thread on odd cycles, the second on 2 mod 4 cycles, the third on 4 mod 8 cycles, etc. should ensure that every natural numbered thread gets executed an unbounded number of times...
06:33:09 <quintopia> or do i misunderstand something
06:33:11 <Bike> it mentions it takes finite time.
06:33:39 <Bike> the language seems maybe 80% baked at best. i just picked the first one in the uncomputable category that looked good.
06:33:43 -!- Slereah has joined.
06:34:18 <quintopia> yeah but if you picked one that was mislabelled...
06:34:27 <quintopia> then your implementation is broken
06:34:45 <quintopia> but i guess the finite time thing
06:35:21 <Bike> i shall define DLooP, "like CLooP but works"
06:35:38 -!- Slereah_ has quit (Ping timeout: 264 seconds).
06:36:11 <Bike> i made a mistake anyway.
06:36:44 <quintopia> yeah i think the spec is borked. it doesn't say in the description of pforeach it finishes in finite time no matter what. it just says later it inherently does infinite work in finite time
06:36:54 <Bike> yeah.
06:36:57 <Bike> i was going off that.
06:37:06 <Bike> seemed to be the intent since they put it under uncomputable.
06:37:12 <quintopia> well maybe we should just edit the page
06:37:46 <quintopia> to indicate that pforeach is guaranteed to take no longer than a constant times any one thread it is executing
06:38:10 <quintopia> then it will be able to do nondeterminstic computation in hyper mode
06:38:47 <Bike> how about "if the block would halt for any value of the loop variable, the pforeach as a whole will halt."
06:38:54 <Bike> for all values*, rather
06:39:18 <Bike> in the range? probably specify that it just has to be values in the range
06:39:46 <quintopia> that's equivalent to my version, so whatever you like
06:39:59 <Bike> i ain't editing it, i already dida ll this work
06:40:13 <Bike> and i'm depressed since this means i have less excuse to sort out my own ideas enough to put them on the wiki
06:41:41 <Bike> i think i will have to make it graphical and that means mspaint
06:42:13 <quintopia> you mean less excuse not to?
06:42:18 <quintopia> or more excuse to?
06:42:44 <Bike> less excuse not to, yeah
06:44:00 <quintopia> then you shouldn't be depressed
06:44:04 <quintopia> you should be excited
06:44:23 <Bike> i'm a bike. i'm incapable of feeling any emotion, let alone excitement.
06:44:45 <quintopia> you are capable of feeling motion
06:44:51 <quintopia> fast motion!
06:44:58 <Bike> excitement is not a motion
06:44:59 <quintopia> are you the town bike?
06:45:25 <Bike> yes, the demographics are very skewed towards sapient colors and dryer sheets in this town
06:45:47 <quintopia> so you give everyone a ride for free?
06:45:58 <Bike> if they're polite about it and i'm not busy
06:46:15 <quintopia> wow. such kind.
06:46:25 <Bike> damn straight
06:46:36 <quintopia> still
06:46:44 <quintopia> you don't need mspaint
06:46:50 <quintopia> why do you need graphics
06:47:24 <Bike> because the language i'm thinking of would probably be easiest to hammer out as schematics rather than something text-based.
06:47:36 -!- oklopol has quit (Remote host closed the connection).
06:47:48 <quintopia> you could use unicode boxes. i hear that's the cool thing now.
06:48:23 -!- Sprocklem has quit (Quit: Leaving).
06:50:51 <quintopia> i'm thinking of making a program which is like mspaint but with unicode
06:51:07 <quintopia> fun, right
06:51:20 <Bike> wlel i don't have mspaint anyway. this is linux.
07:13:54 <quintopia> oh look someone has made something similar already
07:13:57 <quintopia> http://www.jave.de/
07:14:10 <quintopia> i can just steal their code and port it
07:29:48 -!- FreeFull has quit.
07:33:31 -!- CADD has quit (Read error: Connection reset by peer).
07:36:21 <fizzie> Bah, JavE. Truu ANSI artists do it in ACiDDraw.
07:36:33 <fizzie> Or maybe that's "trü".
07:41:03 <kmc> fungot sp.
07:41:03 <fungot> kmc: what have you. you have to
07:43:06 <kmc> fungot: agaricales sensu lato
07:43:06 <fungot> kmc: does it true? how could a glass be yelling??? fnord
07:43:34 <oerjan> you shouldn't feed fungot those agaricales hth
07:43:34 <fungot> oerjan: be without brainfuck code running functionality?
07:44:09 <Bike> so, should i take Category:Unimplemented off of Brainhype
07:45:51 <kmc> oerjan: why not feed fungus to the fungot
07:45:51 <fungot> kmc: still a chance work visa won't go through but it's looking like a lot of languages
07:47:07 <oerjan> kmc: because e's high enough already
07:47:29 <kmc> you just assume the mushrooms i have are hallucinogenic
07:47:34 <Bike> fungot agaric
07:47:34 <fungot> Bike: there must be another one? lol
07:47:35 <kmc> it's like i have a reputation or something
07:47:48 <oerjan> shocking
07:48:24 <kmc> we planted a bed of wine caps (Stropharia rugosoannulata) in the backyard today
07:48:33 <kmc> might bear fruits in 4 or 5 months
08:00:08 -!- LinearInterpol has joined.
08:00:33 <shachaf> p. sure wine bottles don't work that way
08:01:34 -!- impomatic has joined.
08:05:01 -!- carado has joined.
08:08:07 -!- LinearInterpol has quit (Read error: Connection reset by peer).
08:16:06 -!- Taneb has joined.
08:19:53 <ion> Pro tip: don’t force a rubber bottle cap in if it’s difficult to get out.
08:20:23 -!- LinearInterpol has joined.
08:27:28 -!- AnotherTest has joined.
08:27:54 <oerjan> GOT IT
08:38:03 -!- carado has quit (Ping timeout: 252 seconds).
08:56:11 -!- atriq has joined.
08:56:31 -!- Taneb has quit (Quit: Leaving).
08:56:33 -!- atriq has changed nick to Taneb.
09:05:44 -!- doesthiswork has quit (Quit: Leaving.).
09:22:52 -!- Slereah_ has joined.
09:24:28 -!- Slereah has quit (Ping timeout: 252 seconds).
09:43:15 -!- pikhq has quit (Ping timeout: 245 seconds).
09:56:57 -!- pikhq has joined.
09:57:28 -!- LinearInterpol has quit (Read error: Connection reset by peer).
09:57:53 -!- LinearInterpol has joined.
10:02:43 -!- pikhq has quit (Ping timeout: 243 seconds).
10:06:07 -!- oerjan has quit (Quit: leaving).
10:09:13 -!- pikhq has joined.
10:14:15 -!- LinearInterpol has quit (Ping timeout: 246 seconds).
10:27:17 -!- glogbackup has quit (Ping timeout: 248 seconds).
11:06:20 -!- Slereah has joined.
11:07:38 -!- Slereah_ has quit (Ping timeout: 245 seconds).
11:13:05 -!- ais523 has joined.
11:18:35 -!- Slereah_ has joined.
11:19:16 -!- Slereah has quit (Ping timeout: 260 seconds).
11:24:54 -!- carado has joined.
11:44:04 -!- LinearInterpol has joined.
11:54:28 -!- nooodl has joined.
12:05:05 -!- LinearInterpol has quit (Read error: Connection timed out).
12:06:11 -!- LinearInterpol has joined.
12:18:30 -!- LinearInterpol has quit (Ping timeout: 246 seconds).
12:27:36 -!- callforjudgement has joined.
12:27:45 -!- ais523 has quit (Disconnected by services).
12:27:46 -!- callforjudgement has changed nick to ais523.
12:58:26 -!- LinearInterpol has joined.
13:04:02 -!- boily has joined.
13:04:36 -!- metasepia has joined.
13:05:04 <boily> good redactyled morning!
13:13:33 -!- Sgeo has quit (Read error: Connection reset by peer).
13:29:43 -!- KingOfKarlsruhe has joined.
13:33:40 <quintopia> what
13:33:48 <quintopia> what is metasepia up to today
13:34:28 <boily> eh?
13:34:36 <boily> metasepia is the same as ever.
13:36:26 <quintopia> what are you up to today
13:36:42 <quintopia> pythoning?
13:40:31 <boily> pythoning, xmling, javascripting, gitting, teaeing...
13:40:58 <boily> also, not freezing my fungots off. it's cold outside.
13:40:59 <fungot> boily: although i think exists? and suppose it doesnt use and as operators right?
13:40:59 <boily> ~metar CYUL
13:41:00 <metasepia> CYUL 171335Z 02007KT 4SM HZ FEW004 FEW090 SCT240 M20/M23 A3022 RMK SF1AC1CI2 SF TR SLP238
13:41:30 <quintopia> yeah i saw the weather reports for your southerly neighbor's frozen northern bits
13:41:33 <quintopia> it looks awful
13:42:44 <boily> ~metar KBGR
13:42:48 <metasepia> KBGR 171253Z 00000KT 10SM CLR M24/M27 A3030 RMK AO2 SLP267 T12441272
13:43:00 <boily> eeeek. it's even frozenier in Maine.
13:43:12 -!- Phantom_Hoover has joined.
13:44:55 <quintopia> vurrah cold
13:45:17 <boily> ~metar KMHT
13:45:20 <quintopia> what is teae
13:45:27 <metasepia> KMHT 171253Z 03005KT 10SM FEW200 FEW250 M18/M22 A3024 RMK AO2 SLP264 T11781217
13:45:59 <boily> it's only tea. I couldn't resist the Appeal of stringing vowels together.
13:46:19 <quintopia> teaeaeaeaeaeaing
13:47:03 <boily> teæ+ing.
13:47:08 <boily> ~metar KBVT
13:47:09 <metasepia> --- Station not found!
13:47:12 <boily> uh?
13:47:17 <boily> ~metar KBTV
13:47:18 <metasepia> KBTV 171254Z 09004KT 10SM FEW120 M22/M24 A3022 RMK AO2 SLP242 T12171244
13:47:37 <quintopia> better
13:50:22 <fizzie> ~metar EFHK
13:50:26 <metasepia> EFHK 171320Z 24007KT 9999 FEW014 BKN150 03/01 Q1009 NOSIG
13:50:26 <fizzie> Whereas here...
13:50:56 <fizzie> No snow for this christmas season.
13:51:31 <quintopia> wow
13:52:09 <boily> we had a 30 cm snowstorm last Sunday. the City expects it to be shovelled away by next Monday.
13:55:18 <fizzie> On average one out of three christmases are snowless in Helsinki.
13:55:24 <fizzie> Of course this is the south end of Finland.
13:55:35 <fizzie> ~metar EFRO
13:55:49 -!- hogeyui_ has quit (Ping timeout: 264 seconds).
13:56:02 <fizzie> metasepia: Well be like that then, see if I care!
13:56:07 <metasepia> EFRO 171350Z AUTO 23011KT CAVOK M04/M04 Q0996
13:56:22 <fizzie> Thank you.
13:56:40 <quintopia> i'm no better at reading those things
13:56:50 <quintopia> i guess the KT part is temp
13:57:06 <fizzie> The M04/M04 part is.
13:57:17 <quintopia> min and max?
13:57:22 <fizzie> Temperature and dew point; with M for a minus sign.
13:57:38 <fizzie> 23011KT means a wind of 11 knots from direction 230.
13:57:51 <quintopia> oh
13:57:54 <quintopia> yeah
13:59:20 -!- hogeyui_ has joined.
14:00:31 <fizzie> And the Q/A part is barometric pressure, with Q denoting some sensible metric unit (millibar?) and A something inch-based.
14:00:33 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.90.1 [Firefox 25.0.1/20131112160018]).
14:00:56 <fizzie> inHg, maybe.
14:02:52 <boily> Annnn is inHg, with pressure calibrated for airfield altitude.
14:02:53 -!- muskrat_ has joined.
14:03:10 -!- muskrat_ has changed nick to muskrat.
14:03:11 <boily> Qnnnn is pressure in hPa, with pressure calibrated for mean sea level.
14:03:35 <boily> SLPnnn is also in hPa, but with the first digit chopped of, and a precision of daPa.
14:04:33 -!- muskrat has quit (Client Quit).
14:11:44 <fizzie> Snow depth at EFHK at christmas eve: 2009 30 cm, 2010 40 cm, 2011 0 cm, 2012 55 cm, 2013 most likely 0.
14:12:02 -!- Slereah has joined.
14:13:40 -!- Slereah_ has quit (Ping timeout: 250 seconds).
14:16:15 -!- Slereah has quit (Ping timeout: 240 seconds).
14:16:30 -!- Slereah has joined.
14:16:55 <quintopia> i'm going to fall asleep in my chair
14:22:14 * boily gently mapoles quintopia to keep him awake.
14:41:15 -!- Phantom_Hoover has quit (Ping timeout: 244 seconds).
14:48:57 -!- mrhmouse has joined.
14:55:40 -!- Slereah_ has joined.
14:57:26 -!- Slereah has quit (Ping timeout: 250 seconds).
15:08:54 -!- muskrat has joined.
15:14:18 -!- Phantom_Hoover has joined.
15:17:36 -!- muskrat has quit (Quit: Leaving).
15:26:48 -!- glogbackup has quit (Ping timeout: 245 seconds).
15:28:56 -!- LinearInterpol has quit (Ping timeout: 260 seconds).
15:31:31 <quintopia> well i'm gonna get a passport at least
15:31:38 -!- yorick has joined.
15:33:02 <boily> quintopia: oh! will you visit Canada?
15:34:44 -!- Sprocklem has joined.
15:35:21 <ais523> <dburrows> I've only done minimal testing on this, so don't use it to fly airplanes (in fact, please don't use /any/ Sudoku player to fly airplanes)
15:35:48 <ais523> @ask Bike were you expecting that to be the correct answer?
15:35:48 <lambdabot> Consider it noted.
15:41:11 -!- taylanub has joined.
15:48:47 <boily> `relcome taylanub
15:48:52 <HackEgo> taylanub: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
15:49:49 <taylanub> Dark blue text on black background isn't very nice.
15:50:15 <boily> `welcome taylanub
15:50:17 <HackEgo> taylanub: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
16:01:19 <taylanub> INTERCAL is really great
16:02:05 <ais523> I have a ping set on INTERCAL
16:02:09 <ais523> admittedly, it comes up in here more than in other channels
16:02:16 <ais523> but when it comes up elsewhere, I want to be notified
16:02:28 <taylanub> But it seems like 90% of esolangs are brainfuck clones. And maybe unlambda.
16:02:40 <ais523> that's sadly a mostly accurate description
16:02:40 <taylanub> Are there any actually interesting ones ?..
16:02:44 <ais523> yes, they're just hard to find
16:02:47 <ais523> my best is http://esolangs.org/wiki/Underload
16:02:52 <ais523> which is not a brainfuck clone at all
16:03:02 <ais523> there are other interesting languages by other people
16:03:28 <ais523> you can even find interesting brainfuck derivatives if you look hard enough, such as http://esolangs.org/wiki/BF_Joust or http://esolangs.org/wiki/Paintfuck
16:03:35 <ais523> but they're much rarer than the uninteresting ones
16:03:51 <ais523> what's that new language by Keymaker? I really like that one
16:04:09 -!- Phantom_Hoover has quit (Ping timeout: 250 seconds).
16:04:28 <ais523> oh right, Etre
16:07:47 <taylanub> ais523: Oh shit .. Underload basically coalesces data and program ?
16:07:58 <ais523> taylanub: yes
16:08:08 <taylanub> Neat
16:08:25 <ais523> the most practical ways of storing data are as program fragments
16:13:32 -!- LinearInterpol has joined.
16:19:14 <ais523> hmm, I like the ambiguity in the name "LinearInterpol"
16:19:25 <ais523> is it a truncated form of "linear interpolation"?
16:19:42 <ais523> or is it a form of international police who have can only use each datum of information they're given exactly once?
16:19:45 <ais523> *who can
16:20:22 <LinearInterpol> lol.
16:20:34 <LinearInterpol> ais523: that's the beauty of it!
16:20:46 <ais523> yeah, I said I liked it
16:21:10 <fizzie> I've been assuming the latter, FWIW.
16:22:33 -!- doesthiswork has joined.
16:22:43 <fizzie> (Perhaps it's some kind of an ad-hoc linguistic interpretation experiment.)
16:23:02 <ais523> fizzie: but you work in linguistics, so you would assume that
16:23:15 <ais523> whereas I went to a bounded linear logic conference recently
16:23:24 * ais523 gives LinearInterpol a bounded exponential comonad
16:24:03 <mrhmouse> it's also an anagram of "I, Patroller Nine".. perhaps your police idea has some weight
16:25:26 -!- Sprocklem has quit (Ping timeout: 264 seconds).
16:28:42 <int-e> less formally, linear interpol may have a one-track mind.
16:29:25 <LinearInterpol> I lack depth.
16:30:29 -!- MindlessDrone has joined.
16:30:43 -!- nanii has joined.
16:31:37 <nanii> hola
16:34:00 -!- augur has quit (Remote host closed the connection).
16:34:21 -!- augur has joined.
16:42:37 <quintopia> boily: i'll only come to canada if it's not the french part :D
16:43:22 -!- LinearInterpol has quit (Ping timeout: 252 seconds).
16:44:02 <mroman> @tell CADD http://mroman.ch/VA/ <- the documentation of our emulator thingy
16:44:02 <lambdabot> Consider it noted.
16:44:08 <mroman> I think he was called CADD
16:44:34 <quintopia> emulator thingy eh
16:47:05 <mroman> si
16:47:13 <mroman> It is called emulathor
16:47:48 <boily> `relcome nanii
16:47:51 <HackEgo> nanii: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: <http://esolangs.org/wiki/Main_Page>. (For the other kind of esoterica, try #esoteric on irc.dal.net.)
16:47:57 <boily> `? welcome.es
16:47:59 <HackEgo> ​¡Bienvenido al centro internacional para el diseño y despliegue de lenguajes de programación esotéricos! Por desgracia, la mayoría de nosotros no hablamos español. Para obtener más información, echa un vistazo a nuestro wiki: http://esolangs.org/. (Para el otro tipo de esoterismo, prueba #esoteric en irc.dal.net.)
16:48:09 <nanii> *------------*
16:48:18 <doesthiswork> @tell lambdabot tell lambdabot tell doesthiswork hi
16:48:19 <lambdabot> Nice try ;)
16:48:28 <boily> quintopia: la partie française est la plus mieux meilleure partie du Canada :P
16:48:50 <nanii> hola soy de venezuela *--*
16:49:29 <quintopia> boily: if you say so
16:49:36 <mroman> no hablamos espanol
16:49:39 <mroman> ayay
16:49:53 <mroman> That leaves the question
16:49:59 <mroman> quien hable espanol
16:50:38 <quintopia> you need a couple of question marks to ask that
16:50:53 <boily> nanii: hablo un poquito de español. ¿habla usted francés?
16:51:03 <nanii> yo no hablo ingles
16:51:53 <nanii> boily no frances no pero creo que puedo hacer algo
16:52:45 <boily> nanii: ¿ha visitado el wiki?
16:52:45 <mroman> Yeah
16:52:56 <mroman> You need even some *** up inversed question marks
16:52:58 <nanii> noo :(
16:53:01 <mroman> Just to screw with your mind.
16:53:15 <mroman> Although I can see how they are useful
16:53:27 <mroman> You immediately know that there's a question.
16:53:56 <boily> mroman: not only that, but you can wrap the part of the sentence that is actually a question. same thing with ¡!.
16:54:06 <mroman> Yeah
16:54:16 <mroman> Then explain why is there no inversed dot?
16:54:23 <mroman> ;)
16:54:38 * boily twitches... “urge to mapole mroman rising”
16:54:56 <mroman> coincidally I had an oral spanish exam today
16:55:02 <mroman> I barely passed
16:55:04 <mroman> but I passed
16:55:16 <mroman> or is that incidally
16:55:37 <boily> only if you reverse the direction of the morphism between you and the exam.
16:55:48 <mroman> coincidentally
16:57:03 <mroman> boily: Which wouldn't matter if they're homomorphisms
16:57:27 <int-e> ˙
16:57:31 -!- ^v has joined.
16:57:57 <nooodl> In English every odd number contains an `e'.
16:57:59 <nooodl> cute
16:58:27 <boily> in English, every x, y s.t. |x - y| = 1, share a letter.
16:59:10 <mroman> hm
16:59:15 <mroman> *isomorphisms
16:59:21 <nooodl> boily: :D
16:59:29 <Slereah_> Well most numbers contain an e already
16:59:35 <Slereah_> There's like
16:59:39 <boily> six.
16:59:41 <nanii> epaa
16:59:42 <nooodl> http://oeis.org/A006933
16:59:46 <Slereah_> four, six
16:59:50 <Slereah_> That's about it
16:59:52 <Slereah_> That do not
16:59:53 <boily> nooodl: ¿qué es un "epaa"?
17:00:08 <nooodl> (thanks oeis. jesus.)
17:00:17 <int-e> Slereah_: two. a million.
17:00:26 <Slereah_> Do you mean
17:00:30 <Slereah_> MEELEEON
17:00:34 <nooodl> one million
17:00:36 <nanii> pues como un hola :D
17:01:02 <Slereah_> So it's not *too* surprising that those two things are true
17:01:21 <Slereah_> I mean, you only have to do three special cases to check them
17:02:24 <ion> kakka rules http://en.wikipedia.org/wiki/Caganer
17:02:25 <mroman> isomorphisms remind me that I should continue with this category theorey book
17:02:37 <nooodl> > ord 'F'
17:02:38 <lambdabot> 70
17:02:53 <int-e> nooodl: two million then, still no 'e'.
17:03:01 -!- oerjan has joined.
17:03:06 <mroman> http://mroman.ch/beweise/cat.pdf <- isomorhpisms is where I got stuck apparentely
17:05:29 <int-e> 2.1
17:05:30 <int-e> 3.10
17:06:01 <mroman> probably the number IN the book
17:06:29 -!- nanii has left.
17:07:18 -!- nanii has joined.
17:07:25 -!- nanii has left.
17:08:25 -!- nanii has joined.
17:08:33 -!- nanii has left.
17:08:35 -!- nanii has joined.
17:08:46 -!- nanii has left.
17:08:48 -!- nanii has joined.
17:08:51 -!- nanii has left.
17:11:37 -!- nanii has joined.
17:11:50 -!- FreeFull has joined.
17:13:01 <Taneb> What's that thing which means that defining notNull = not . null isn't worth it?
17:13:09 <Taneb> Something like the Fairfax constant?
17:15:12 <mroman> common sense?
17:15:29 <int-e> the second word was "threshold" but I can't recall the name.
17:16:26 -!- Bike has quit (Ping timeout: 264 seconds).
17:16:41 -!- nanii has left.
17:17:51 -!- Bike has joined.
17:17:53 <ais523> :t null
17:17:54 <lambdabot> [a] -> Bool
17:18:11 <ais523> I guess that's checking to see if the list is empty?
17:18:21 <int-e> yes.
17:18:25 <Slereah_> The Threshold of Bel Air
17:18:27 <Bike> https://31.media.tumblr.com/3f8a2af848fd54d90f58d4367eee0b7f/tumblr_mxrzs6RsbT1sgh0voo1_500.png it was absolutely useless. thanks
17:18:42 <ais523> hmm, if you had a strict language with side effects, it'd be possible to define that over arbitrary functors
17:19:00 <Bike> ais523: yes, because i wasn't sure about capital letters and the space in the real name
17:19:01 <ais523> by using fmap with a function with a side effect, then checking to see if that function had run at all
17:19:07 <int-e> star-tut. hmm.
17:19:44 <ais523> I don't think it generalizes to functors in general if the language is pure or lazy, though
17:19:58 <int-e> 134%. good jub.
17:20:56 <int-e> ais523: right. Foldable is the right abstraction here, I think. null = fold (\_ _ -> False) True
17:20:59 <ais523> (if it's lazy, there's nothing implying that it's even possible to force the functors in order to make the functions run; if it's pure, then you need to know about the structure of the functor to have any way to observe the behaviour of your function)
17:22:30 <int-e> (where fold is one of foldr or foldl, not the monoid foundational one from the type class)
17:23:11 <ais523> does it have to be r/l?
17:23:14 <ais523> what about a symmetric fold?
17:23:17 <ais523> or binary tree fold?
17:23:35 <int-e> fold :: Data.Monoid.Monoid m => t m -> m allows all of those
17:24:08 <oerjan> <nanii> hola soy de venezuela *--* <-- why is it always venezuela
17:25:08 <Bike> well, it's pretty big.
17:25:41 <Bike> :t fold
17:25:42 <lambdabot> (Foldable t, Monoid m) => t m -> m
17:25:58 <Bike> > fold [3,7,19]
17:25:59 <lambdabot> No instance for (Data.Monoid.Monoid a0)
17:26:00 <lambdabot> arising from a use of `e_13719'
17:26:00 <lambdabot> The type variable `a0' is ambiguous
17:26:00 <lambdabot> Possible fix: add a type signature that fixes these type variable(s)
17:26:00 <lambdabot> Note: there are several potential instances:
17:26:06 <int-e> @type (\(Endo g) -> g b) . fold . (map (Endo . f))
17:26:07 <lambdabot> Show a => [a] -> Expr
17:26:23 <int-e> @type \f b -> (\(Endo g) -> g b) . fold . (map (Endo . f))
17:26:24 <lambdabot> (a -> c -> c) -> c -> [a] -> c
17:26:33 <int-e> that should be foldr.
17:26:52 <Bike> > fold "Somebody once told me the world is gonna roll me"
17:26:53 <lambdabot> No instance for (Data.Monoid.Monoid GHC.Types.Char)
17:26:54 <lambdabot> arising from a use of `Data.Foldable.fold'
17:26:54 <lambdabot> Possible fix:
17:26:54 <lambdabot> add an instance declaration for (Data.Monoid.Monoid GHC.Types.Char)
17:27:34 <int-e> (and foldl is essentially the same with a 'Dual' thrown into the mix)
17:28:04 <int-e> > fold $ map Sum [1..10]
17:28:05 <lambdabot> Sum {getSum = 55}
17:28:18 <int-e> > fold $ map Product [1..10]
17:28:19 <lambdabot> Product {getProduct = 3628800}
17:29:05 <int-e> > getDual . fold . map Dual $ [[1,2],[3,4],[5,6,7,8]]
17:29:07 <lambdabot> [5,6,7,8,3,4,1,2]
17:29:44 <int-e> ('fold' on lists of lists is just 'concat')
17:30:49 <int-e> > ($ 0) . appEndo . fold . map (Endo . (+)) $ [1..10]]
17:30:50 <lambdabot> <hint>:1:52: parse error on input `]'
17:30:51 <int-e> > ($ 0) . appEndo . fold . map (Endo . (+)) $ [1..10]
17:30:52 <lambdabot> 55
17:31:27 <int-e> > ($ 0) . appEndo . fold . map (Endo . (-)) $ [1..10]
17:31:28 <lambdabot> -5
17:31:39 <int-e> > ($ 0) . appEndo . getDual . fold . map (Dual . Endo . (-)) $ [1..10]
17:31:40 <lambdabot> 5
17:31:43 <oerjan> int-e: psst there's foldMap
17:33:32 <int-e> I wonder why. It saves what, 3 characters?
17:33:52 <oerjan> well i think it's a method
17:34:02 <oerjan> so it might also save efficiency
17:34:31 <oerjan> ideally you would want null defined so that it short circuits no matter what way the data structure is folded.
17:34:54 <oerjan> i don't think this can be done with a valid Monoid instance, although you can easily use a broken one
17:35:02 <int-e> > expr . ($ 0) . appEndo . getDual . fold . map (Dual . Endo . (+)) $ [1..6]
17:35:03 <lambdabot> 6 + (5 + (4 + (3 + (2 + (1 + 0)))))
17:35:17 <int-e> > expr . ($ 0) . appEndo . getDual . fold . map (Dual . Endo . flip (+)) $ [1..6]
17:35:19 <lambdabot> 0 + 1 + 2 + 3 + 4 + 5 + 6
17:35:31 -!- Bike has quit (Quit: Reconnecting).
17:35:34 <int-e> > expr . ($ 0) . appEndo . fold . map (Endo (+)) $ [1..6]
17:35:35 <lambdabot> Couldn't match expected type `a0
17:35:35 <lambdabot> -> Data.Monoid.Endo Debug.SimpleReflect.Expr.E...
17:35:35 <lambdabot> with actual type `Data.Monoid.Endo a1'
17:35:41 <int-e> > expr . ($ 0) . appEndo . fold . map (Endo . (+)) $ [1..6]
17:35:42 <lambdabot> 1 + (2 + (3 + (4 + (5 + (6 + 0)))))
17:35:45 <oerjan> instance Monoid Bool where mempty = True; mappend = const (const False)
17:36:05 -!- Bike has joined.
17:36:20 <oerjan> null = foldMap (const False)
17:36:33 <int-e> ok. so those are foldl and foldr (once you abstract from '0' and '(+)')
17:37:15 <int-e> nah.
17:37:45 <int-e> null = getAny . foldMap (const (Any False))
17:38:02 <int-e> no.
17:38:22 <int-e> haha. I need getAll / All. That was stupid.
17:39:28 <oerjan> int-e: um Any won't work, the point is mappend should be entirely ignoring its arguments
17:39:51 <oerjan> thus allowing perfect shortcutting regardless of order
17:39:58 <int-e> > map (getAll . foldMap (\_ -> All False)) [[],[1]]
17:39:59 <lambdabot> [True,False]
17:40:12 <int-e> oerjan: Bool has no Monoid instance.
17:40:24 <oerjan> int-e: you didn't read what i wrote above
17:40:43 <int-e> oerjan: true.
17:41:24 <int-e> In any case, there is a good reason for having the newtype All instead. And the compiler should be smart enough to do the right thing *if* it unfolds the recursive 'foldMap' at all.
17:41:26 -!- Bike has quit (Ping timeout: 240 seconds).
17:41:31 <oerjan> in any case, you _cannot_ do this with a valid Monoid instance, because it's inconsistent with the Monoid laws to have mappend = const (const x) for x not mempty
17:41:33 <Taneb> @type isJust . getFirst . foldMap (First . Just)
17:41:34 <lambdabot> Foldable t => t a -> Bool
17:41:58 <oerjan> int-e: um it should work for _infinite_ structures.
17:42:12 <oerjan> including Foldable infinite trees.
17:42:13 <Taneb> > isJust . getFirst . foldMap (First . Just) $ [1..]
17:42:14 <lambdabot> True
17:42:19 <Taneb> > isJust . getFirst . foldMap (First . Just) $ [
17:42:20 <lambdabot> <hint>:1:47:
17:42:20 <lambdabot> parse error (possibly incorrect indentation or mismatched brackets)
17:42:21 -!- Bike has joined.
17:42:21 <Taneb> > isJust . getFirst . foldMap (First . Just) $ []
17:42:22 <lambdabot> False
17:42:29 <Taneb> @type Node
17:42:30 <lambdabot> a -> Forest a -> Tree a
17:42:33 <int-e> > map (getAll . foldMap (\_ -> All False)) [[],[1..]] -- hmm. but I see your point.
17:42:34 <lambdabot> [True,False]
17:43:49 <int-e> oerjan: but that means it's not a valid 'null' either. You could have something like data Tree a = Node (Tree a) (Tree a) | Hole | Leaf a, and then null (Tree Hole Hole) should presumably be False.
17:44:28 <Taneb> > isJust . getFirst . foldMap (First . Just) $ unfoldTree (\() -> ((),repeat ()) ()
17:44:29 <int-e> (I imagine that fold (Node l r) = fold l `mappend` fold r)
17:44:29 <lambdabot> <hint>:1:82:
17:44:29 <lambdabot> parse error (possibly incorrect indentation or mismatched brackets)
17:44:34 <Taneb> > isJust . getFirst . foldMap (First . Just) $ unfoldTree (\() -> ((),repeat ())) ()
17:44:36 <lambdabot> True
17:44:55 <oerjan> int-e: yes, null (Tree hole hole) would be False with my definition.
17:45:40 <int-e> oerjan: sorry, but I meant to write that null (Tree Hole Hole) should be True.
17:45:42 <oerjan> i suppose that shows how Foldables don't make sense without a true Monoid, though.
17:45:56 <Taneb> Hang on, what are we trying to do here?
17:45:58 * int-e isn't good with negations.
17:46:24 <oerjan> Taneb: writing a Foldable null that short circuits for _both_ infinite leftwards and rightwards structures.
17:46:45 <Taneb> Aaaaah
17:47:23 <oerjan> and even infinite binary ones, although int-e makes a good argument there should be _some_ leaves hit
17:48:11 <kmc> http://docs.racket-lang.org/unstable/2d.html
17:49:38 <Bike> kmc: that's something.
17:49:54 <int-e> yeah. cute.
17:51:09 <taylanub> Hahaha, neat.
17:53:16 <int-e> I'm a-maze-d.
17:54:28 <oerjan> int-e: i guess you need a bidirectionally shortcutting (||) for this. (there's some concurrent unsafe implementation of that)
17:55:03 <int-e> oerjan: yes, http://hackage.haskell.org/package/unamb ... it's horrible.
17:55:46 <oerjan> oh unamb it was, i tried searching for amb
17:56:03 <int-e> ( a ||| b = (a || b) `unamb` (b || a) )
17:56:40 <oerjan> it should work nicely for purely left or rightward branching, i think.
17:57:06 <int-e> Well, 'nicely' ... it forks too much.
17:57:27 <oerjan> well i mean one of them will finish fast
17:58:09 <int-e> It's a bit of a pity that concurrency is (as far as I can see) the only way to implement such a function. It's so nice in theory.
17:58:13 <oerjan> hm i suppose what you want to do is ensure each of a and b is only evaluated once. i think there's a ghc function for that.
17:58:39 -!- Lemuriano has joined.
17:59:01 <int-e> ghc's runtime almost always ensures that, because thunks are replaced by black holes when entered. There's a small window where computations may get duplicated.
17:59:39 <oerjan> i suppose the problem appears when both a and b take long to finish, hm
17:59:47 <oerjan> which doesn't shortcut much :P
18:00:08 <int-e> (In IO there is 'nodup' which fully ensures this, by taking a lock on the closure. It's required to make unsafePerformIO a bit safer.)
18:00:50 <kmc> i wrote a bunch of words about that here http://mainisusuallyafunction.blogspot.com/2011/10/thunks-and-lazy-blackholes-introduction.html
18:02:08 <ais523> yay, I finally managed to reproduce that bizarre situation that I set up with weboflies a while ago: http://sprunge.us/fLSN
18:02:18 <ais523> however, ptrace has since been fixed to not override SIGKILL
18:02:30 <ais523> so it doesn't lead to an actually unkillable process
18:02:35 <kmc> Death under ptrace
18:03:02 <int-e> https://ghc.haskell.org/trac/ghc/ticket/8502 was my last encounter with the perils of unsafeDupablePerformIO (which is unsafePerformIO without the 'nodup' lock)
18:03:45 <ais523> int-e: isn't that pretty much asking for your I/O to happen an unpredictable number of times?
18:04:20 -!- ^v has quit (Quit: http://i.imgur.com/MHuW96t.gif).
18:04:48 <ais523> I guess I might not have guessed "non-integer", though
18:05:28 <int-e> ais523: yes. but it wasn't asking for the computation to be silently stopped in the middle, circumventing the 'withMVar' abstraction for exception safety.
18:05:57 <Taneb> > 144^2 * 5
18:05:58 -!- impomatic has quit (Ping timeout: 245 seconds).
18:05:58 <lambdabot> 103680
18:06:10 <ais523> > 144**2 * 5
18:06:11 <lambdabot> 103680.0
18:06:29 <Bike> ilu exponentiation
18:06:29 -!- ^v has joined.
18:06:33 <ais523> huh, somehow I didn't imagine Haskell to have two different exponentiation operators
18:06:37 <ais523> > 144 `bitxor` 2 * 5
18:06:38 <lambdabot> Not in scope: `bitxor'
18:06:42 <ais523> > 144 `xor` 2 * 5
18:06:43 <lambdabot> 154
18:06:47 <int-e> ais523: it has three :)
18:06:55 <int-e> @type ((^),(^^),(**))
18:06:56 <lambdabot> (Floating a2, Fractional a1, Integral b, Integral b1, Num a) => (a -> b -> a, a1 -> b1 -> a1, a2 -> a2 -> a2)
18:07:33 <int-e> (^^ allows negative integer exponents)
18:08:14 <boily> ~eval 5 ^^ -1
18:08:15 <metasepia> Error (1): Precedence parsing error
18:08:15 <metasepia> cannot mix `GHC.Real.^^' [infixr 8] and prefix `-' [infixl 6] in the same infix expression
18:08:18 <ais523> so "b" isn't a "PositiveIntegral" type, then?
18:08:25 <boily> ~eval 5 ^^ (-1)
18:08:26 <metasepia> 0.2
18:08:35 <ais523> admittedly, the only language I can think of where that works is ADA (and VHDL by implication)
18:08:36 <Bike> sounds like *gasp* subtyping
18:08:57 <boily> ~eval 5 ^ (-1)
18:08:57 <metasepia> Error (1): *Exception: Negative exponent
18:09:16 <boily> ~eval 5 ** (-1)
18:09:17 <metasepia> 0.2
18:09:52 <boily> ~eval (2 :+ 3) ** (3 :+ 2)
18:09:53 <metasepia> 4.714143528054687 :+ (-4.569827583124736)
18:09:54 <int-e> > (-5) ** (-2) -- hmm.
18:09:55 <lambdabot> 4.0e-2
18:10:19 <boily> > 0 ** 0
18:10:20 <lambdabot> 1.0
18:10:30 <boily> fungot: 0 ** 0
18:10:30 <fungot> boily: scheme evaluation order, so it probably isn't).
18:10:46 <boily> lambdabot: fungot sez that 0 ** 0 isn't 1.0.
18:10:46 <fungot> boily: best would be if it wasn't clear
18:11:02 <boily> fungot: of course it isn't clear, it's 0⁰.
18:11:02 <fungot> boily: my computer's too sleepy. i am always looking at source code by mistake and even more fun than coding". perfect industrial language: enforce a style onto the programmer to give the standard bindings the extended meanings from srfi 1
18:14:17 <fizzie> @type ((^), (^^))
18:14:18 <lambdabot> (Fractional a1, Integral b, Integral b1, Num a) => (a -> b -> a, a1 -> b1 -> a1)
18:16:15 <fizzie> Oh, the type was already there.
18:16:31 <fizzie> Bah, reading more than a dozen line backwards is for losers.
18:16:59 <FreeFull> 0 to the power of 0 is or isn't 1 depending on what you're doing
18:17:19 <Bike> thank's
18:17:40 <ais523> it's never anything other than 1, but it isn't necessarily always 1 either
18:17:57 <fizzie> fungot: Your computer doesn't really have any kind of power management thing going on, I don't see how it's "too sleepy".
18:17:57 <fungot> fizzie: so, where's your editor?
18:18:05 <boily> FreeFull: trdnh.
18:18:08 <boily> ais523: tdnhe.
18:18:09 <fizzie> fungot: Is this some kind of trash talk?
18:18:09 <fungot> fizzie: maybe you need another half a dozen city centers
18:18:26 <fizzie> Yeah, maybe!
18:18:28 <Bike> assuming the fungotputer is just strapped right to mains
18:18:29 <fungot> Bike: cl definitely defines ' first'. although there is also a director who makes videos for people like smerdyakov climb up and spend their time in irc rooms dedicated to technical computery subjects, have never heard of
18:18:53 <FreeFull> trdnh?
18:19:08 <boily> that really did not help.
18:19:26 <fizzie> The fungotputer goes at 3200 bogomips all the time.
18:19:27 <fungot> fizzie: don't think so... i haven't been
18:19:38 <FreeFull> > 0^0
18:19:39 <lambdabot> 1
18:19:40 <fizzie> fungot: Yeah, well, how'd *you* know?
18:19:40 <fungot> fizzie: after that i can see the rules of static typing that i've ever known him too well, only 2 hours to find i had like 10k lines of pretty slick c o.o
18:19:44 <FreeFull> > 0^^0
18:19:45 <lambdabot> 1.0
18:20:28 <fizzie> Truth revealed: fungot not written in Befunge, fungot instead written as 10k lines of "pretty slick" C.
18:20:29 <fungot> fizzie: i am adding that now. i'm gonna install freebsd once i find fnord
18:21:04 <fizzie> (Some day I'll wake up to find a FreeBSD installation.)
18:21:09 -!- LinearInterpol has joined.
18:21:20 <boily> fungot: find: "fnord": Aucun fichier ou dossier de ce type
18:21:21 <fungot> boily: i am a person with the most recent one?
18:21:22 <FreeFull> Are the 10k lines actually an implementation of befunge?
18:21:27 <boily> fungot: oh. savvy of you.
18:21:28 <fungot> boily: it's about to become negative for the first fnord return value' value doesn't print like that when reading
18:22:00 <int-e> I wonder what fungot thinks about 'Qzyzzalroum'
18:22:00 <fungot> int-e: so it could be anywhere from 29 bits to 36 with that information. for example, you have 1 message.
18:22:46 <fizzie> FreeFull: cfunge's written in C, and is approximately somewhere in that ballpark, so maybe that's what it was talking about. (Straight "wc -l" over all *.[ch] says 20039.)
18:22:54 <int-e> (I have this quote on file: What does "Qzyzzalroum" mean in English usage? -- It means you should start the crossword over.)
18:23:38 <boily> ~duck qzyzzalroum
18:23:53 <metasepia> --- No relevant information
18:24:52 <fizzie> A rouming duck.
18:26:37 <int-e> http://users.iafrica.com/p/pf/pfm/quotes.txt - this would fit here, I think: "I feel like if Atlanta had just tried a little harder it could have been a palindrome."
18:27:03 <FreeFull> atlanalta
18:27:14 <FreeFull> I can see why it's not a palindrome
18:27:15 <FreeFull> It'd contain anal
18:27:32 <Bike> god forbid.
18:28:01 <FreeFull> Now, why isn't palindrome a palindrome?
18:28:08 <FreeFull> palindromemordnilap
18:28:11 <ion> Super-strong neodymium magnets https://www.youtube.com/playlist?list=PL5Q6sbgSWtxn-CTaTLslOy558OrEwmX7U
18:28:20 <Bike> because it is constructed from usual roots.
18:29:29 <boily> Authentic Atlantan Usual Root, perfect for seasoning your regular meals!
18:29:51 <fizzie> If Eodermdrome had just tried a little harder it could have been a palindrome.
18:30:16 <ais523> fizzie: it couldn't be minimal-length and also a palindrome
18:30:34 <ais523> actually, being a palindrome is actively hostile to being nonplanar
18:30:38 <Bike> ion: haha the second one
18:30:44 <ais523> because half the characters are wasted
18:30:52 <ais523> so you can't do better than Eodermdromemordmredoe
18:31:35 <fizzie> Where did the name come from, again?
18:34:44 <Bike> wow they have same day delivery
18:34:49 <Bike> for uh, magnets. emergency magnets?
18:35:53 <Bike> i'm pretty sure you could make a good action movie about most situations that would require you have a 300 N neodynium magnet within twenty-four hours
18:36:42 -!- nanii has joined.
18:36:54 -!- nanii has left.
18:36:55 -!- nanii has joined.
18:37:02 -!- nanii has left.
18:37:57 <boily> if you already have an already strong enough magnet at hand, you could acquire all of the world's magnets just by waving it over your head and ducking.
18:39:21 <Bike> see, there you go.
18:40:01 <ais523> Bike: I don't think the waving and ducking would matter much
18:40:26 <ais523> fizzie: a book about wordplay, which mentioned an existing result (from somewhere else) that that pattern of letters was the shortest that lead to a nonplanar graph
18:40:47 <ais523> the specific letters there are chosen to maximise the pronounceability
18:41:19 <ais523> (by the original result, I think)
18:42:01 <ais523> strangely enough, real words tend to be more likely to be nonplanar due to embedding K_3,3 than they are due to embedding K_5
18:42:36 -!- Sprocklem has joined.
18:44:21 -!- LinearInterpol has quit (Ping timeout: 248 seconds).
18:44:44 -!- LinearInterpol has joined.
18:55:36 <fizzie> Ah.
19:00:53 -!- Lemuriano has quit (Ping timeout: 248 seconds).
19:05:26 <ais523> huh, so it seems that the reason that function names in PHP are so inconsistent is that they were chosen to avoid hash collisions in the early versions
19:05:37 <ais523> and the hash function was heavily based on strlen
19:05:45 <boily> what.
19:06:14 <ais523> yeah, somehow that manages to fit two awful ideas into one sentence
19:06:29 <Bike> look i've heard that from three different people already and if i refused to acknowledge it from them i'll refuse to acknowledge it from you
19:06:39 * boily bleaches himself
19:07:29 <kmc> https://dl.dropboxusercontent.com/s/e8k4n2mx1y5vsa4/Zrzut%20ekranu%202013-12-17%2008.37.01.png screenshot of the code in question
19:07:42 <kmc> go find "php-1.99s" if you want to verify
19:08:05 <ais523> is a screenshot of code somehow more authentic than the text version?
19:08:24 <Bike> fuuuuuuuucking chrsut
19:08:41 <kmc> ais523: i can tell by the pixels
19:08:55 * boily then maple syrups himself, for a smooth, perfumed skin and quality hair
19:09:24 <ais523> ouch, those keys aren't even in alphabetical order
19:09:31 <olsner> nice, defined as an array cmd_table[22][35] so that the 0 items for length 0 take the space of 35 entries
19:09:36 <olsner> (or is that 22?)
19:09:46 <kmc> rasmus lerdorf's excuse that he just made PHP for his own use indicates a shocking lack of self-respect, I would say
19:10:23 <ais523> now I'm reminded of the joke claim that "C" is a recursive acronym
19:10:26 <fizzie> The screenshot doesn't really look like proof of the claim, though.
19:10:33 <Bike> i don't want to look into lerdorf's mind
19:10:37 <ais523> fizzie: the comment at the top is illuminating
19:11:05 <fizzie> ais523: It doesn't say anything about selecting function names in order to optimize the "hash" table, however.
19:11:16 <kmc> C stands for C.C
19:11:17 <boily> ais523: a recursive acronym of?
19:11:35 <boily> ◐.◐
19:11:44 <ais523> boily: it stands for "C", obviously
19:12:13 <ais523> fizzie: there's an email from Rasmus Lerdorf going around on Reddit where he/she admits to it
19:12:18 <kmc> Bike: No manual entry for chrsut
19:12:31 <fizzie> ais523: Well, that's more relevant, certainly.
19:13:21 <kmc> don't think it's in question that rasmus lerdorf goes by "he"
19:13:37 <kmc> also he was born in a town named Qeqertarsuaq
19:13:48 <Bike> greenland?
19:13:56 <kmc> http://en.wikipedia.org/wiki/Qeqertarsuaq#Notable_current.2Fformer_residents how very sad for them
19:13:57 -!- Phantom_Hoover has joined.
19:14:55 <kmc> Bike: yes
19:16:33 <boily> I watche that short video by the beeb yesterday that explains how to pronounce Mandela's name, his native village's name and “xhosa”.
19:16:50 <boily> practicing clicks when you take your morning shower makes for a very strange activity.
19:16:56 <Bike> does english even have the hponeme for 'xhosa'
19:17:02 <Bike> i'll take that as a no.
19:17:04 <Bike> *phonemes*
19:17:16 <boily> it doesn't.
19:17:20 <olsner> obviously not
19:17:25 <Bike> and it's tonal too, huh
19:17:29 <boily> and spirant!
19:17:43 <Bike> i'm used to click constants being spelled ! or double dagger
19:18:10 <boily> ∥ĥ
19:18:17 <Bike> i'm guessing i can blame dumb brits for this
19:18:24 <boily> darn. I don't have superscript h readily available.
19:18:32 <olsner> ah, but only two tones, even we have that many tones
19:18:56 * boily eyes olsner... “you scandinavian!”
19:19:23 <olsner> holy crap... it has *18* click consonants
19:19:48 <boily> it does. it is insane. I need a fternooner to collect myself.
19:22:07 <kmc> Bike: https://twitter.com/DanaDanger/status/413024939856244736
19:25:29 <Bike> ._.
19:25:49 <olsner> "the ǃXóõ language has 83 click sounds, the largest consonant inventory of any known language" o.O
19:27:04 -!- impomatic has joined.
19:27:05 <int-e> any vowels?
19:27:28 <olsner> int-e: five, I think
19:28:34 <olsner> ah, no, five vowel "qualities" ... so 25-30 something vowels apparently
19:28:57 <int-e> impressive
19:29:48 <impomatic> Hi :-) Any OMEGA players here? (The tank programming game, not the roguelike)
19:31:26 -!- LinearInterpol has quit (Ping timeout: 264 seconds).
19:41:48 <boily> ~duck omega
19:42:02 <metasepia> --- No relevant information
19:42:06 <boily> ...
19:42:29 <oerjan> metasepia: it's all greek to you?
19:44:07 <boily> ~duck iota
19:44:08 <metasepia> iota definition: the 9th letter of the Greek alphabet.
19:44:21 <boily> fungot my life.
19:44:21 <fungot> boily: c++ c, remember a bit better for the body in the clause test specifications?
19:49:06 -!- ^v has quit (Quit: http://i.imgur.com/MHuW96t.gif).
19:54:07 <boily> “Therefore Moser's number, although incomprehensibly large, is vanishingly small compared to Graham's number” ← my brain hurts.
19:55:28 -!- MindlessDrone has quit (Quit: MindlessDrone).
19:56:06 <Bike> not your fault > is hard to compute on some reprsentations
20:01:42 -!- oerjan has quit (Quit: leaving).
20:09:23 <int-e> oh that sounds like fun
20:14:42 <`^_^v> What programming language should you use in your battles with the judge? Most likely, the language which you know best. The judge currently accepts programs written in C, C++, Pascal, and Java, so your favorite language is probably available.
20:14:47 <`^_^v> :(
20:15:03 <olsner> no eodermdrome??
20:15:21 <FreeFull> No idris?
20:15:28 <mrhmouse> no c+=?
20:15:47 <ais523> four languages?
20:16:09 <ais523> that's a really small set to include everyone's favourite language
20:16:19 <ais523> also, I thought Pascal had mostly fallen out of favour before Java was invented
20:16:41 <`^_^v> there are only like 2 online coding competition sites that have an actual variety of languages
20:16:45 <`^_^v> kinda sux
20:17:13 <FreeFull> C ate Pascal's lunch
20:17:23 <ais523> have you seen anarchy golf?
20:17:40 <FreeFull> Anarchy golf is one
20:18:31 <ais523> that seems to accept anything remotely BF-complete that shinh could get to run on the server
20:18:53 <nooodl> should finish my anagol language
20:19:07 <ais523> and some sub-BF-complete languages like m4
20:20:08 <nooodl> that reminds me: hey, what are some well-known but not 100% trivial sequences/sets of integers. i'm thinking like, fibonacci numbers, prime numbers
20:20:19 <ais523> thue-morse
20:20:46 <ais523> that's a neat one because it needs infinite state to compute
20:21:27 <ais523> although I guess they all do
20:22:07 <ais523> you could also do the zeros of the Riemann zeta function
20:22:13 <ais523> that's probably just -2, -4, -6, -8, etc.
20:22:15 <ais523> but it might not be
20:26:15 <Taneb> digits of pi?
20:26:22 <nooodl> i think i'm gonna give my golf language some built-ins for "is this number prime/fibonacci/..." and "generate the first n prime/fibonacci/... numbers"
20:26:47 <boily> AAAAAAAAAAAAAAURGH!
20:26:49 <nooodl> stuff like that shows up quite a bit in code golf
20:27:02 <boily> someone know how to import a TTF file into LaTeX?
20:27:07 <nooodl> also i wanna somehow make 2D ascii manipulation easier, but
20:27:34 <FreeFull> Digits of pi are pretty arbitrary
20:27:37 <FreeFull> Except in base pi
20:27:42 <FreeFull> 10
20:27:44 <nooodl> pinary
20:31:57 -!- Lemuriano has joined.
20:46:04 <boily> (meanwhile, it works! local install, no need to pollute the system texmf → http://fachschaft.physik.uni-greifswald.de/~stitch/ttf.html)
20:47:06 <nooodl> have there been any efforts to make like a "high-level" wrapper over LaTeX
20:47:25 <nooodl> it feels so crufty... i need LaTeX coffeescript basically
20:47:35 -!- Phantom_Hoover has quit (Read error: Connection reset by peer).
20:47:52 -!- Phantom_Hoover has joined.
20:51:49 -!- Sprocklem has quit (Ping timeout: 248 seconds).
20:51:58 -!- Lemuriano has quit (Ping timeout: 252 seconds).
20:52:29 -!- LinearInterpol has joined.
20:53:25 <kmc> douglass_: do you know of any?
21:00:24 <Taneb> I'm really looking forward to the film of Into the Woods
21:01:45 <douglass_> sorry, don't know
21:02:33 -!- ais523 has quit.
21:02:54 <douglass_> ask #latex I guess
21:03:18 <kmc> nooodl: well I use Markdown for that sometimes, via Pandoc
21:03:35 <kmc> and you can still embed LaTeX commands for stuff Markdown doesn't handle (as long as you don't need to render the same markdown to HTML too)
21:04:40 <doesthiswork> bike if we add a shift0 operator that creates a continuation that takes no arguments, then there is a 1 to 1 corrispodence between delimited continuations and lambda calc
21:05:36 <doesthiswork> curried lambda calc
21:10:20 -!- atriq has joined.
21:13:09 -!- Sprocklem has joined.
21:17:13 -!- atriq has changed nick to Ngevd.
21:17:51 -!- Taneb has quit (Quit: ZNC - http://znc.in).
21:22:46 -!- Taneb has joined.
21:23:07 -!- Ngevd has quit (Quit: Leaving).
21:23:20 <Taneb> I think I have a bouncer now
21:25:59 <boily> ♪ dĩng ♪ improved PDF, now with Old Hylian!
21:27:23 <Taneb> `? category theory
21:27:25 <HackEgo> In category theory, category theory is a theory in the category of theories.
21:28:12 <Bike> as opposed to a theory in the category of prizewinning hams?
21:28:20 <Taneb> Yup
21:28:30 <Taneb> That'd be Hexham theory
21:28:39 <Slereah_> Is this related to the ham Homer Simpson won for saving the town
21:29:02 <kmc> 0xHAM
21:30:43 <Slereah_> http://www.youtube.com/watch?v=KYjThRj7uoY
21:30:43 <Slereah_> <3
21:31:36 <boily> incidentally, github's syntax highlighting doesn't support \verb!stuff!
21:32:30 -!- 36DABZBGX has joined.
21:32:32 <kmc> FreeFull: you can compute the nth digit of pi in base 16 without computing all the ones before it
21:32:36 <boily> `relcome 36DABZBGX
21:32:38 <HackEgo> 36DABZBGX: 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:33:02 <kmc> http://en.wikipedia.org/wiki/Bailey%E2%80%93Borwein%E2%80%93Plouffe_formula
21:33:08 <boily> also, I seem to have lumped lexande and monotone's quotes into the Quotes from Other People section.
21:33:18 <boily> @tell lexande would you like your quotes to be nicely sectionned?
21:33:19 <lambdabot> Consider it noted.
21:33:31 <polytone> It's okay, I'm usually an "other people" anyway.
21:33:33 <boily> polytone: same thing as to lexande ↑
21:33:38 <boily> oh.
21:33:47 <boily> you were quicker than me :P
21:34:13 <polytone> I forgot that I was even quoted until you mentioned it, haha.
21:34:22 <Bike> kmc: hells yea pslq
21:34:43 -!- nooodl has quit (Ping timeout: 245 seconds).
21:35:06 <kmc> pslq?
21:35:19 <Bike> "The search procedure consists of choosing a range of parameter values for s, b, and m, evaluating the sums out to many digits, and then using an integer relation finding algorithm (typically Helaman Ferguson's PSLQ algorithm) to find a vector A that adds up those intermediate sums to a well-known constant or perhaps to zero."
21:35:29 <kmc> cool
21:35:44 <Bike> it's an algorithm where you throw a vector of reals at it and it tries to find an algebraic relation between em
21:35:48 <kmc> neato
21:35:50 -!- boily has quit (Quit: CHICKEN SUSHI).
21:35:53 -!- metasepia has quit (Remote host closed the connection).
21:36:04 <Bike> er, without powers specifically
21:36:18 <Bike> i mean you can do that by adding to the vector, but
21:36:36 <kmc> oh LLL is another such algorithm
21:36:49 <kmc> i've heard of that one, I guess it's good for attacking groups of related RSA keys?
21:38:05 <Bike> i have this paper where they use it to find the 240-degree polynomial the fourth bifurcation point of the logistic map is a root of
21:38:19 <kmc> is that useful knowledge
21:38:20 <elliott> "A notable success of this approach was the use of the PSLQ algorithm to find the integer relation that led to the Bailey-Borwein-Plouffe formula for the value of π." whoa, cool
21:38:46 -!- 36DABZBGX has quit (K-Lined).
21:39:00 <Bike> kmc: well, they didn't even know for sure it was algebraic, so i guess
21:39:37 -!- muskrat has joined.
21:39:49 <Fiora> PSLQ is really magic
21:39:59 <Fiora> "here's a random irrational-looking number, give me a formula for it"
21:40:09 -!- nooodl has joined.
21:40:12 <Bike> elliott, kmc~ http://crd.lbl.gov/~dhbailey/dhbpapers/tenproblems.pdf‎
21:40:21 <Bike> http://crd.lbl.gov/~dhbailey/dhbpapers/tenproblems.pdf
21:40:22 <Fiora> yeah, that paper is amazing
21:40:24 <Bike> mysterious.
21:42:04 <Bike> with guest appearance by khinchin's constant, i might add
21:43:09 <Bike> it's cool how we can't spell russian names consistently. ever. at all. fuck
21:43:30 <kmc> Хи́нчин's constant
21:43:35 <kmc> cooler name imo
21:43:36 <doesthiswork> analyzing the simpsons for esoteric symbols http://www.youtube.com/watch?v=iLzhuUdycYQ
21:44:03 <Bike> kmc: i think you're right
21:44:26 <Bike> though my favorite value in this paper is the expected value of the distance between two random points on different sides of a square, since it doesn't sound like it should be too strange
21:45:16 -!- Sorella has joined.
21:46:15 -!- Sorella has quit (Changing host).
21:46:16 -!- Sorella has joined.
21:48:02 <Bike> there's also the sequence of sinc integrals and a triple integral of the inverse of a sum of cosines somehow involving generalized hyperfactorials, i love it <3
21:54:14 <Slereah_> Or how e^pi - pi is NOT QUITE 20
21:54:33 <Bike> i don't think that's actually in the paper, but sure!
21:54:51 <olsner> Slereah_: the amazing thing is that 20 is EXACTLY 20
21:55:12 <Bike> can you prove it,
21:55:54 -!- taylanub has left ("Using Circe, the loveliest of all IRC clients").
21:56:15 <olsner> nah, I've never learned how to prove stuff
21:56:15 -!- Slereah has joined.
21:58:28 -!- Slereah_ has quit (Ping timeout: 245 seconds).
21:58:38 -!- Slereah_ has joined.
21:58:40 <Slereah_> Have mercy internet
22:00:59 -!- Slereah has quit (Ping timeout: 260 seconds).
22:01:42 -!- Slereah has joined.
22:02:44 -!- muskrat has quit (Ping timeout: 252 seconds).
22:03:14 -!- Slereah_ has quit (Ping timeout: 264 seconds).
22:03:42 <polytone> The first problem in experimental mathematics is apparently not overfilling LaTeX boxes...
22:05:36 <Bike> hm?
22:06:24 -!- Slereah has quit (Read error: Connection reset by peer).
22:06:46 -!- Slereah has joined.
22:07:33 <polytone> Oh, the author line runs straight into the right margin.
22:08:45 -!- Slereah has quit (Client Quit).
22:16:14 <FreeFull> kmc: I bet you can do that in every base, but 16 is the easiest
22:16:55 -!- kranchik has joined.
22:22:01 -!- Sprocklem has quit (Ping timeout: 250 seconds).
22:23:03 -!- AnotherTest has quit (Ping timeout: 245 seconds).
22:27:07 -!- kranchik has quit (K-Lined).
22:38:27 -!- tertu has quit (Ping timeout: 252 seconds).
22:49:20 <doesthiswork> base 36 is more fun
22:58:30 <ion> http://youtu.be/YA1J-raGinQ
23:05:21 -!- mrhmouse has quit (Quit: Leaving.).
23:05:57 -!- carado has quit (Ping timeout: 252 seconds).
23:14:18 -!- LinearInterpol has quit (Ping timeout: 245 seconds).
23:27:41 -!- oklopol has joined.
23:33:34 -!- carado has joined.
23:38:24 <oklopol> dod
23:38:28 -!- Bike has quit (Ping timeout: 245 seconds).
23:41:15 <ion> pop
23:42:36 -!- Sprocklem has joined.
23:46:02 -!- Bike has joined.
23:59:46 -!- ^v has joined.
←2013-12-16 2013-12-17 2013-12-18→ ↑2013 ↑all