00:02:50 -!- FireFly has quit (Quit: swatted to death).
00:04:05 -!- ralc has quit (Quit: Leaving).
00:12:31 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
00:13:26 -!- pikhq has joined.
00:14:42 -!- pikhq_ has quit (Read error: Operation timed out).
00:32:45 -!- azaq23 has quit (Quit: Leaving.).
00:45:39 <Sgeo_> EVEN MORE HOMESTUCK
00:46:01 <elliott> Yeah um I check often enough you don't have to remind me. :p
00:46:50 <Sgeo_> elliott, you check several times a day?
00:47:33 <elliott> Actually this time it was that I loaded the SA thread and someone mentioned a new update. :p
00:48:12 <Sgeo_> In the past few minutes? (Just want to be sure we're on the same page here)
00:49:14 -!- elliott_ has joined.
00:49:23 <elliott_> 00:48:12: <Sgeo_> In the past few minutes? (Just want to be sure we're on the same page here)
00:49:32 -!- elliott has quit (Read error: Connection reset by peer).
00:53:24 <oerjan> huh, someone renamed the despotic language section in http://en.wikipedia.org/wiki/Esoteric_programming_language to turning tarpit
00:53:53 <oerjan> although i don't think that's quite right...
00:55:19 <Patashu> turing tarpit and...turning tarpit?
00:55:30 <oerjan> well of _course_ it's a pun
00:56:17 <zzo38> Maybe they should instead rename it to "Despotic languages (turning tarpit)"
00:56:25 <zzo38> (In Wikipedia, I mean)
00:57:54 -!- TeruFSX has quit (Remote host closed the connection).
00:58:13 <Patashu> is LOLCODE really an esoteric programming language?
00:58:17 <Patashu> it's C with different syntax
00:58:32 <oerjan> it's the black sheep of the family
00:59:00 <oerjan> it's clearly _intended_ to be esoteric, yet it's so only in a very shallow way
01:06:26 <elliott_> <oerjan> although i don't think that's quite right...
01:06:31 <elliott_> that's what we agreed is a better name
01:12:18 <oerjan> elliott_: i mean they are not actually _synonyms_
01:12:25 <oerjan> a turning tarpit has to _turn_
01:13:05 <elliott_> oerjan: well meharharharbaraba said that despotic was just another name for a turning tarpit
01:13:18 <elliott_> maybe "turning tarpit" is a misnomer already :)
01:17:16 -!- micah|insane has changed nick to micahjohnston.
01:18:51 <oerjan> well the three articles in the category pretty much fits the definition of turning tarpit on our wiki. it is just not the same as the definition on wikipedia (which was the definition of despotic language)
01:20:44 -!- zzo38 has left.
01:23:05 <pikhq> Patashu: LOLCODE is composed principally of fecal matter.
01:24:05 -!- CakeProphet has quit (Ping timeout: 240 seconds).
01:27:13 -!- copumpkin has joined.
01:34:10 <Gregor> It's thundery outside, and my scaredy cat has shoved herself uncomfortably under my chest :P
01:35:51 <elliott_> Missed opportunity to say "scaredy cat cat".
01:36:09 <Gregor> That would be "scaredy-cat cat" X-P
01:43:42 <elliott_> (diff) (hist) . . N Free download of 7 Khoon Maaf; 01:26 . . (+5,110) . . Anicgibcamp (Talk | contribs) (New page: <br> <p><br>'''[http://popmovz.com/415894?pnr_id=667 Download 7 Khoon Maaf movie, CLICK HERE!!!]'''</p> <br> All formats: DVD, DivX, Xvid, Avi, Mkv, Mp4, HD, Blu-Ray<br> Downlaod video fo...)
01:43:53 <elliott_> ive wanted to download 7 Khoon Maaf for my entire life
01:43:58 -!- lameNOT has changed nick to lament.
01:54:25 <elliott_> (diff) (hist) . . N Yutham Sei Divx Hd; 01:51 . . (+2,934) . . Easmapohand (Talk | contribs) (New page: <br> <p><br>'''[http://popmovz.com/422588?pnr_id=667 Download Yutham Sei movie, CLICK HERE!!!]'''</p> <br> All formats: DVD, DivX, Xvid, Avi, Mkv, Mp4, HD, Blu-Ray<br> Downlaod video for ...)
02:04:10 -!- micahjohnston has changed nick to micahjohston.
02:04:13 -!- micahjohston has changed nick to micah|irssi.
02:04:17 -!- micah|irssi has changed nick to micah|||.
02:04:21 -!- micah||| has changed nick to micahjohnston.
02:04:28 -!- micahjohnston has changed nick to ec|ec.
02:05:51 -!- ec|ec has changed nick to micahjohnston.
02:08:58 -!- micahjohnston has changed nick to mj|irssi.
02:09:19 -!- mj|irssi has changed nick to micahjohnston.
02:10:50 <oerjan> clearly micahjohnston is a secret agent communicating in nick changes
02:11:15 <oerjan> we must accept this as a matter of utmost importance to global security
02:11:17 <lifthrasiir> oerjan: no, the period of nick changes convey the information.
02:11:34 <lifthrasiir> the nick itself does not have any meaning.
02:12:20 <oerjan> except this needs some heavy error correction to beat lag
02:13:20 <lifthrasiir> in reality some kind of modulation would have to be in use.
02:13:59 -!- micahjohnston has changed nick to not-quite-correc.
02:14:15 -!- not-quite-correc has changed nick to theyreontome.
02:14:24 -!- theyreontome has changed nick to micahjohnston.
02:15:07 <oerjan> "not-quite-correc"? clearly this scheme is using self-reference
02:15:36 -!- micahjohnston has changed nick to oerjanisoverthin.
02:15:45 -!- oerjanisoverthin has changed nick to overthinking.
02:15:50 -!- overthinking has changed nick to micahjohnston.
02:17:23 <elliott_> eat a sandwich or something :/
02:19:25 -!- micahjohnston has changed nick to heisnotthin.
02:19:28 -!- heisnotthin has changed nick to micahjohnston.
02:22:21 -!- oerjan has quit (Remote host closed the connection).
02:22:28 -!- oerjan has joined.
02:30:35 <lifthrasiir> elliott_: yeah, actually (as i mentioned hours ago) i'm working on something like it
02:31:55 <elliott_> Is it less terrible than Esco? :)
02:32:19 <elliott_> IMO such a project is interesting if it shares backends.
02:32:25 <elliott_> Or something like that anyway.
02:33:24 <lifthrasiir> well, esotope attempts to implement N^2 combination from input language to output language, when there are N languages
02:34:34 <lifthrasiir> but since it is infeasible, i instead implement much less number of those combinations and fill the remaining cases transitively
02:35:12 <lifthrasiir> for example if one has a processor from Text to Brainfuck, and one from Brainfuck to Ook!, then you don't have to write a processor from Text to Ook!
02:35:27 <elliott_> so an EsoInterpreters type thing
02:35:42 <lifthrasiir> of course it's suboptimal when the language is not Ook!, but better than nothing.
02:36:05 <lifthrasiir> to this end i had to implement some kind of meta-object system in ocalm
02:50:30 <elliott_> a common backend thing for esoteric languages might be interesting
02:50:41 <elliott_> like, most of the bf tape optimisations aren't specific to bf, they work for any tape-with-head structure
02:52:41 <augur> whats a good word for rejecting-out-of-snobbery?
02:53:27 <pikhq> augur: Douchebaggery.
02:53:36 <augur> something i can put in a paper :P
02:53:43 <pikhq> lifthrasiir: Have you considered using not-Make?
02:54:53 <pikhq> Slightly more serious note: any particular reason for Ocaml?
02:55:03 -!- Aune has quit (Quit: Hath Deprated).
02:59:36 <lifthrasiir> pikhq: i) of course i dislike make generally, but for now i'm going to stick to it. ii) to use both imperative and functional features.
03:06:06 <elliott_> Haskell is good at that too ;D
03:06:30 <pikhq> Indeed, only in Haskell are imperative actions first-class.
03:21:08 <Sgeo_> Does it ever get to be a pain using monad transformers?
03:27:14 -!- pikhq_ has joined.
03:30:00 <Sgeo_> elliott_, TV Tropes on Homestuck comments that the wiki takes what trolls say at face value
03:30:10 -!- pikhq has quit (Ping timeout: 252 seconds).
03:30:17 <Sgeo_> Does the entire community consist of portions taking pot shots at each other?
03:30:50 <elliott_> I don't know since I'm not stupid enough to read the TV Tropes page, which consists of an alphabetical listing of every trope on the entire site.
03:31:17 <elliott_> I've never found any incorrect information on the wiki but I'm not exactly cross-referencing things.
03:31:25 <elliott_> Where does it say that anyway.
03:33:30 <Sgeo_> http://tvtropes.org/pmwiki/pmwiki.php/Homestuck/TropesS-U search for Unreliable Narrator
03:33:42 -!- copumpkin has quit (Ping timeout: 240 seconds).
03:33:56 -!- copumpkin has joined.
03:34:50 <elliott_> probably some random person added that :P
03:34:57 <elliott_> it's not like anyone would notice anyone adding anything to those pages
03:35:01 <elliott_> considering they're all fives miles long
03:35:42 <elliott_> anyway who cares, the tv tropes page is interminably boring
03:44:55 -!- zzo38 has joined.
03:45:13 <zzo38> Esolang wiki is not supposed to be the movie downloading wiki
03:46:20 <elliott_> zzo38: blanking the pages is a waste of time, wait for an admin
03:47:14 <oerjan> well maybe it reduces their google hits in some cases
03:47:44 <zzo38> elliott_: I know, that is why I only put it on one of them.
03:48:57 <oerjan> hm i wonder if google detects links that are frequently removed...
03:50:19 <elliott_> oerjan: anyway the permalink is still in recent changes
03:51:45 <lifthrasiir> pikhq_, and it was quite painful for me to get used on it. ;)
03:51:52 <oerjan> unless you mean to the article version. that simply _has_ to be nofollow, otherwise we'd get swamped like haskellwiki once was
03:52:22 <zzo38> There is a new esolang added called "Hatter". I don't know if "\apply" is allowed
03:52:46 <lifthrasiir> and i'm also trying to learn ocaml in the course of the development (i do write code in Haskell as my daily job...) so it actually does not matter :p
03:53:12 <elliott_> lifthrasiir: psht, real haskellers don't get paid for it
03:53:18 <oerjan> and yes, links are nofollow
03:53:31 <zzo38> Also, "A numeric constant behaves as a hat that always yields the corresponding value. Data dropped into a numeric constant is lost." Is the "nop" hat similar?
03:54:02 <Patashu> why does tvtropes still exist
03:54:17 <lifthrasiir> elliott_, as a part of my research, actually. *wink*
03:54:26 <elliott_> Patashu: because humanity is dead. RIP.
03:54:28 <zzo38> Patashu: Probably because they have a lot of things and informations on there.
03:54:43 <Patashu> tvtropes is the next wikipedia
03:54:47 <Patashu> soon we'll be feeding it into our AIs
03:54:50 <Patashu> so they can impersonate nerds
03:54:57 <zzo38> No, it is a different set of information, it is a different kind of things.
03:55:16 <zzo38> Wikipedia is one thing, TV Tropes is other things.
03:55:20 <oerjan> i don't think ais would like tvtropes fed into him
03:55:26 <lifthrasiir> Patashu, no, but the AI will automatically generate a work using its knowledge of tropes in order to amuse itself.
03:55:29 <elliott_> zzo38: whenever i need tautologies
03:55:32 <elliott_> i can always rely on you to deliver them
03:56:13 <Patashu> It will read tvtropes but ignore the 'examples' list
03:56:14 <zzo38> oerjan: Unless it was the AI designed specifically for that purpose, maybe?
03:57:51 <elliott_> burgers are made of koala fish
03:58:13 <zzo38> elliott_: I don't know.
03:59:20 <zzo38> Make up the 'unexamples' list, in case of Uncyclopedia.
04:02:37 <zzo38> New kind of exotic code golf: Make amount of alnum same as amount of symbol, and put (alnum=sym) after your name.
04:03:10 <augur> elliott_: would you be willing to critique a draft of an introduction to a paper im writing?
04:03:21 <elliott_> maybe if it was tomorrow and not five am today
04:03:31 <elliott_> so what i am saying is no, but yes if you're asking future me
04:03:34 <augur> later today is fine!
04:03:37 <elliott_> or at least what i assume future me is going to be like
04:03:44 <elliott_> he might actually decide to hate you way too much to do it
04:03:48 <elliott_> youll have to ask him when he starts existing
04:04:07 <augur> REGENERATE, IF YOU WILL
04:04:18 <elliott_> yes that is definitely what you think is taking place here.
04:05:35 -!- micahjohnston has changed nick to everyone.
04:05:43 -!- everyone has changed nick to micahjohnston.
04:07:19 -!- zzo38 has left.
04:07:21 <augur> elliott_: wellnowwhat.net/linguistics/cwatc_draft.pdf
04:07:58 -!- SimonRC has quit (Ping timeout: 260 seconds).
04:09:03 <elliott_> i think you should remove all references to "i", they make the paper impure and ugly.
04:09:12 <elliott_> if i didn't want to pretend people didn't exist i wouldn't be reading something set in computer modern.
04:09:41 <elliott_> if you want more coherent opinions WHOOPS YOU'RE SHIT OUT OF LUCK but slightly more amusing (but equally incoherent) ones will be available once i've slept
04:09:44 <augur> i hate using the impersonal style
04:09:47 <augur> it feels unnatural
04:10:12 <augur> and i shall stick with the fun DT literature in using personal pronouns
04:10:37 <augur> if its good enough for conor, its good enough for me
04:11:04 <elliott_> conor mcbride is fucking god incarnate and pretty much the best person to ever live
04:11:08 <elliott_> becuase youre not conor mcbride
04:11:17 <elliott_> you will have to become conor mcbride
04:13:06 <augur> about mcbride being awesome
04:13:09 <augur> i fucking love his accent
04:13:34 <augur> wheres he from, btw
04:13:39 <augur> he sounds northern of some sort
04:14:00 -!- lifthrasiir has quit (*.net *.split).
04:14:01 <elliott_> unless i'm very much mistaken.
04:14:03 <augur> well, he actually sounds a bit like arthur darvill to me
04:14:09 <augur> and darvill is from birmingham
04:14:28 <elliott_> well aren't his two universities he's been at both in scotland...
04:14:31 <elliott_> that's fairly good evidence :P
04:15:05 <augur> strathclyde is glasgow
04:15:09 <augur> but isnt he also at nottingham?
04:15:30 <augur> his current email is at nottingham
04:15:46 <augur> at least if his site is up to date
04:15:53 <elliott_> http://www.e-pig.org/epilogue/?p=802
04:16:07 <elliott_> oh i guess it might be to use the maybe monad
04:16:32 <augur> and nottingham is east midlands
04:16:42 <oerjan> last myth adventures comic :(
04:16:52 <augur> so not tooo far from birmingham
04:17:31 <oerjan> augur: not strictly true in haskell
04:17:42 <elliott_> that's a dangerous thing to modulo :)
04:17:47 <elliott_> i imagine it's being used for the maybe monad here anyway
04:17:53 <elliott_> can't have a bool monad after all
04:18:05 <augur> Bot, True, False vs. Bot, Nothing, Just (), Just Bot
04:18:55 <augur> i am a full unicode cultist
04:18:59 <elliott_> "Silent cumulativity is a kind of subtyping, and if you are not scared of subtyping, you have not properly understood it."
04:19:23 <augur> elliott_: i read conor's paper on ornamental algebras todayesterday
04:19:33 <augur> or was it yestertoday
04:19:52 <oerjan> so what will you do todaymorrow
04:20:00 <augur> and what a fucking paper man
04:20:41 <elliott_> http://www.rpscontest.com/ this is cool
04:20:49 <elliott_> the top programs are all pretty short, too
04:22:16 <augur> ok i will now be going to sleep, indeed
04:22:31 <augur> /msg me with comments on the intro, elliott_, oerjan
04:22:41 <elliott_> theres a perfectly good channel right here
04:23:12 <augur> elliott_: scrollback! :(
04:25:16 <pikhq_> You know what makes me sad?
04:25:24 <pikhq_> K&R C and Smalltalk are contemporary languages.
04:25:35 <pikhq_> (Smalltalk is the *older of the two*)
04:26:22 <pikhq_> Smalltalk. 1972. C. 1973.
04:27:04 <elliott_> isnt c older than that, thats just the first release
04:27:12 <elliott_> it took until nineteen eighty for smalltalk to go public
04:27:18 <elliott_> you should find C's inception date instead
04:27:21 <elliott_> which is like late sixties i believe
04:27:53 <pikhq_> Also, "The C Programming Language" came out in 1978.
04:28:41 <elliott_> yes, but unix w/ c came out in seventy-three
04:28:49 <elliott_> and people didn't not use c until the book did they :P
04:29:21 <pikhq_> Still. *Smalltalk and C are contemporary languages*.
04:29:32 <elliott_> pikhq_: i wish smalltalk caught on rather than c.
04:29:46 <elliott_> i should really get an fpga set-up. xeightsix sucks.
04:32:02 <augur> pikhq_: you critique too!
04:34:15 -!- elliott_ has quit (Ping timeout: 255 seconds).
04:42:41 -!- SimonRC has joined.
04:44:47 -!- lifthrasiir has joined.
04:56:49 -!- zzo38 has joined.
05:00:02 -!- pikhq_ has quit (Ping timeout: 240 seconds).
05:00:12 -!- pikhq has joined.
06:08:13 <zzo38> I looked at my C codes of Deadfish for a few minutes and failed to see how to make any more shorter. I already have three question marks and adding more will just make it even longer!
06:17:22 -!- hagb4rd has quit (Ping timeout: 246 seconds).
06:19:25 <EgoBot> languages: Esoteric: 1l 2l adjust asm axo bch befunge befunge98 bf bf8 bf16 bf32 boolfuck cintercal clcintercal dimensifuck glass glypho haskell kipple lambda lazyk linguine malbolge pbrain perl qbf rail rhotor sadol sceql trigger udage01 underload unlambda whirl. Competitive: bfjoust fyb. Other: asm c cxx forth sh.
06:19:47 <oerjan> !c printf("%d",1^256&&1);
06:19:55 <oerjan> !c printf("%d",256^256&&1);
06:20:14 <oerjan> !c printf("%d",256^256&&256);
06:25:57 <pikhq> Y'know, it is really weird to think that once upon a time, typing was a relatively uncommon skill.
06:26:21 <pikhq> s/typing/touch typing/
06:26:30 <oerjan> especially before the 19th century
06:27:06 <pikhq> Well, yes, it was obviously an uncommon skill before the invention of the typewriter.
06:27:19 <pikhq> Only time travellers could really be said to have the skill, after all.
06:29:22 -!- lament has quit (Ping timeout: 240 seconds).
06:43:32 <zzo38> What kind of C code are you trying to write?
06:44:30 <oerjan> i just had an idea for doing the deadfish 256 test
06:44:33 <pikhq> oerjan: ^ does not mean what you think it means. :)
06:45:06 <pikhq> Oh, wait, yeah, you probably are meaning to use it as bitwise xor.
06:45:18 <pikhq> Kinda glossed over the boolean ands for some reason.
06:45:51 <pikhq> Perhaps I should sleep.
06:46:24 -!- FireFly has joined.
06:56:22 <zzo38> oerjan: Remember the order of precedence of operators in C, and how && and || works. Whatever you wrote is clearly not working I just used something like (~x&&x-256) which results in zero when you are -1 or 256 or in one otherwise.
06:56:51 <oerjan> um what's not working about it?
06:57:07 <oerjan> !c printf("%d",3^256&&3);
06:57:55 <oerjan> gah, && doesn't return its last argument :(
06:58:36 <zzo38> Yes, it is not the same as in JavaScript. && converts to boolean and || also converts to boolean. If you want like || in JavaScript you can use ?: in GNU C.
06:58:55 <zzo38> (With nothing else in between the ? and : signs)
06:59:00 <oerjan> ...i was trying to find something shorter than using ?
06:59:21 <oerjan> you could still use ^ for the test though, it's shorter than !=
07:00:25 <oerjan> !c printf("%d",3^256?:3);
07:00:46 <Patashu> wow, I didn't know about that one
07:00:52 <Patashu> so if the argument tests to true, it prints the argument?
07:01:15 <pikhq> x?:y is the same as x?x:y in GNU C.
07:01:30 <zzo38> If the left size of ?: is nonzero then that is the result and it will skip the part afterward, if zero then it does evaluate the right part.
07:01:34 <Patashu> didn't know about that shortcut
07:01:42 <oerjan> but apparently ?: doesn't have low enough precedence
07:01:47 <zzo38> pikhq: Yes, except that it will not cause "x" evalulated twice
07:02:28 <pikhq> zzo38: Well, yeah, it more accurately maps out to ({ typeof (x) _x = x; _x?_x:y; })
07:03:30 <monqy> iirc x?:y is also different than x?x:y in that it doesn't evaluate x twice
07:03:34 <oerjan> oh wait ?: is like ||, not &&
07:03:50 <pikhq> monqy: As we discussed.
07:03:58 <monqy> oh I must have missed it
07:04:16 <oerjan> !c printf("%d",3^256?3:);
07:04:17 <quintopia> is there an official golf challenge for a deadfish interp?
07:04:36 <pikhq> !c printf("%d",!3^256?:3);
07:04:36 <monqy> if anarchy golf is official
07:04:46 <pikhq> !c printf("%d",(!3^256)?:3);
07:05:06 <oerjan> pikhq: no point in that
07:05:06 <pikhq> ... Fuck me, I should sleep.
07:05:26 <oerjan> !c printf("%d",3^256?3:0);
07:06:30 <Patashu> It's a pity golf.shinh.org doesn't let you have arbitrarily many input/output pairs
07:07:49 <zzo38> Yes it is true, but it is also true that you can post multiple submissions by () after your name
07:08:27 <Patashu> well I mean, you can't pose problems that force you to implement the entirety of a problem, just whatever you can fit in three tests
07:08:37 <Patashu> unless you multiplex tests together but that's just a pain to have to do for every entry
07:09:22 <quintopia> it would be okay even if they just allowed ten tests
07:09:23 <oerjan> for deadfish it is easy to add more than one test, since each input can have many commands. however the deadfish golf still manages to miss some important tests
07:09:40 <quintopia> no real golf challenge should require more than ten tests
07:09:40 <Patashu> yeah 10 would be good for most things
07:09:43 <zzo38> oerjan: Which ones? Be specific?
07:09:58 <oerjan> zzo38: it never increments or decrements to 256
07:10:25 <oerjan> so some of the submissions cheat by only testing on squaring
07:11:00 <quintopia> but everyone knows they are CHEATERS
07:11:07 <zzo38> Patashu: I know... but, at least, you can set the deadline, so it can be checked afterward. You can also put like (cheat) (embed) (genuine) (exec) and whatever else afterward.
07:11:38 <zzo38> oerjan: O, yes, so that's how they made their C codes shorter... I don't mind posting such solutions as long as they are clearly marked as such...
07:12:21 <quintopia> i spy one such cheater IN THIS VERY CHANNEL
07:12:37 <quintopia> PROTECT US FROM THE CHEATER OERJAN
07:13:45 <oerjan> ...i haven't made any submissions.
07:14:11 <oerjan> oh wait, grammar ambiguity
07:14:45 <oerjan> zzo38: well, they might. i haven't seen the c code
07:15:11 <zzo38> You will see on Friday, then.
07:15:15 <oerjan> but i've seen python code which did use that cheat
07:16:40 <oerjan> i considered making a haskell one but when my first try was much much longer than the leader...
07:17:15 <zzo38> Send it anyways, maybe...
07:17:20 <Patashu> Is haskell good for golfing?
07:17:35 <oerjan> well my first try was a modification of someone else's
07:17:42 <oerjan> Patashu: well it's better than java :D
07:18:11 <zzo38> oerjan: O, in that case, you don't need to.
07:19:26 <olsner> I think haskell is not-very-good for golfing ... maybe not bad, but many useful function names are long and lots of stuff require import statements
07:19:45 -!- BeholdMyGlory has joined.
07:19:57 <zzo38> olsner: All that means is you have different challenge to determine to use function with short name or whatever else it is.
07:20:17 <Patashu> I mean obviously haskell's never going to beat golfscript
07:20:21 <zzo38> The way my C code is written, it seems that trying to make it check only on squaring doesn't make it shorter anyways. (If I could make it shorter using cheats, I would use separate submissions using () after my name, but I can't.)
07:20:22 <Patashu> But is it entertaining to minimize
07:21:01 <zzo38> Patashu: Yes, but each language is a separate challenge.
07:21:38 <oerjan> haskellers like to make point-free code, which sometimes is more compact. but not always, it tends to add parentheses.
07:22:21 <oerjan> of course some of that suffers from the import problem, which is not an issue with lambdabot
07:22:48 <oerjan> (except that lambdabot has too many imports sometimes so inconsistent things crash)
07:23:39 <oerjan> (for really compact point-free code, you want to import at least Control.Applicative, Control.Arrow and Control.Monad.Instances)
07:24:55 <oerjan> and probably Data.List and Control.Monad for higher order combinators
07:27:02 <zzo38> As far as I know, the tags you put after your name in anarchy golf, can be two kinds, cheats and exotics.
07:27:54 <zzo38> Yes, it is a common one falling into the "cheats" category in my categorization of two kinds.
07:30:12 <oerjan> > nubBy(((>1).).gcd)[2..]
07:30:13 <lambdabot> [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101...
07:30:14 <zzo38> Common tags for "exotics" include (bin) (nobin) (alnum) (sym) while some others in the "cheats" category might include (embed) (cheat) (exec) (noexec) (genuine) (luck) (rand) note sometimes tags indicate presence of cheating and sometimes absence of cheating
07:32:28 <oerjan> there's one with scanl for fibonacci which i have forgotten
07:34:17 <shachaf> > fix ((1:).scanl(+)1) -- This?
07:34:21 <lambdabot> [1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,1597,2584,4181,6765,10946,1...
07:34:43 <oerjan> it's the fixpoint combinator
07:34:44 <shachaf> Patashu: Fixed-point combinator. fix f = f (fix f)
07:35:35 <shachaf> oerjan: What ar eyou doing in this channel instead of #haskell? :-)
07:35:58 <oerjan> i was here before i was in #haskell
07:41:12 <oklopol> it seems while my eyes were closed, some time passed.
07:46:27 <oklopol> so oerjan how about the fact that if you have two exact sequences of length 5 and you have an onto homomorphism between the first nodes, an isomorphism between the second and fourth nodes and a one-to-one homomorphism between the fifth ones, then if the middle is a homomorphism it is an isomorphism
07:47:14 <oerjan> a very nice fact which i used in the first article i published
07:47:53 <oerjan> and i recall the referee wanted us to remove it, so we had to clarify that it was actually needed
07:48:32 <oklopol> is it used very often or do we just have very a similar aesthetic sense
07:49:10 <oklopol> because i just grabbed that from a list of 50 random "preliminary" definitions and lemmas
07:49:31 <oklopol> not sure why i quoted preliminary, did some heavy editing on that sentence
07:51:27 <oklopol> i should just read all your articles
07:51:34 <oklopol> SHOULDN'T TAKE TOO LONG HUH :DDDDDDDDDDDDDDDDD
07:51:52 <oerjan> well we were doing k-theory, which is a sort of homological algebra, and we had homomorphisms going between two exact sequences and needed to show the important one was an isomorphism - it was pretty much a perfect fit.
07:51:55 <oklopol> actually i probably still wouldn't get any of it
07:52:22 <oklopol> i have a paper on a k-theoretic approach to symbolic dynamics on my desk
07:52:59 <oerjan> ah, is anyone of Giordano, Putnam or Skau involved?
07:53:03 <oklopol> but i don't know what k-theory is, except that it's a sort of homological algebra apparently
07:53:19 <oklopol> putnam sounds very familiar, he must be in at least one of the papers i'm reading
07:53:37 <oklopol> i can check today if i manage to drag myself out of the armchair
07:53:57 <oerjan> oklopol: well there's also the putnam contest which is something entirely unrelated
07:54:13 <oerjan> (except for also being math)
07:54:43 <oklopol> iirc i've heard "the putnam article" at some point at uni
07:55:27 <oerjan> ian putnam, a professor who collaborated with my advisor on a breakthrough paper
07:55:43 <oerjan> (my advisor being Skau)
07:56:08 <oklopol> what was the breakthrough paper abourt
07:57:15 <oerjan> about classifying cantor set minimal dynamic systems up to orbit equivalence by their k-theory
07:59:03 <oklopol> so umm, cantor set minimal dynamic systems, what's that in symbolic dynamics lingo, minimal closed shift-invariant subset of the bi-infinite sequences + shift?
07:59:26 <oerjan> that first article btw was proving that this classification broke down if you went slightly outside cantor sets
07:59:37 <oklopol> ah yes i recall us talking about this
07:59:43 <oklopol> apparently i didn't quite get it since i have to ask
08:00:50 <oerjan> i believe the things you mention from shifts are a subset of minimal dynamic systems, the expansive ones
08:01:57 <oerjan> which have the property that there exists an epsilon > 0 such that for any distinct points x and y you can apply the dynamics some number of times to them and get them further away than epsilon
08:02:02 <oklopol> well at least shifts are expansive on minimal systems
08:03:27 <oklopol> hmm the cantor set is actually more like the one-way infinite sequences?
08:03:28 <zzo38> I Can't Believe It's Not Hitler!
08:04:10 <oerjan> well one-way or two-way are homeomorphic, you just need two-way to put a dynamics on it
08:04:54 <oklopol> but so can you somehow connect CA and this stuff?
08:05:11 <oerjan> but the bratteli diagrams we used are more like one-sided ones
08:06:01 <oerjan> well CAs have their dynamics sort of in the orthogonal direction, don't they
08:06:30 <oklopol> i have no idea, do you mean since you think of the dynamics in the cantor set case as a *shift*?
08:06:41 <oerjan> it's shift invariant though
08:07:00 <oklopol> CAs are the continuous shift invariant functions yes
08:07:19 <oerjan> while minimal systems are shift invariant _sets_
08:07:38 <oklopol> oh so shift-invariant? so the dynamics is the shift?
08:07:54 <oerjan> well those that are shift systems are so
08:08:11 <oklopol> yeah that's what i wanted to hear
08:08:25 <oerjan> otherwise, invariant wrt whatever is the dynamical transformation
08:08:51 <oklopol> anyhow so this is the same thing symbolic dynamics does really, except symbolic dynamics usually restricts to SFTs and sofic shfits so that you can play with matrices
08:09:25 <oerjan> well we played with bratteli diagrams, and an infinite tower of matrices
08:09:49 <oerjan> (bratteli-vershik diagrams, to be precise)
08:10:12 <oklopol> because your toys are so much cooler
08:10:38 <oerjan> that was my advisor and my co-author, silly
08:10:55 <oklopol> "<oerjan> well we played with bratteli diagrams, and an infinite tower of matrices"
08:11:40 <oerjan> (i never got the impression he was particularly rich. the main algebra professor supposedly was rather well off, though.)
08:12:10 <oerjan> for reasons not related to her work, i think
08:13:47 <oklopol> also the dynamics invariance idea is also played with in cellular automata
08:14:23 <oklopol> because you often let your CA run forever first and then look at the dynamics on the set you get are a result
08:15:15 <zzo38> If you have any feature request and/or ideas for TeXnicard, please tell me; I would like to know.
08:15:16 <oklopol> a clopen set U is inward if G(U) \sub U, and U's attractor is \cap_i G^i(U)
08:15:56 <oklopol> often enough we take the attractor of S^Z because that's what the CA looks like "eventually"
08:16:07 <zzo38> What is a clopen set?
08:16:14 <oklopol> zzo38: closed and open set
08:16:48 <oklopol> ah and the attractor of S^Z is called the limit set, didn't remember that so had to define attractors :P
08:17:18 <oklopol> there are interesting results on the limit set
08:17:26 <oerjan> our dynamics was always invertible so we never had that
08:17:42 <oklopol> for instance my supervisor proved a rice's theorem for limit sets some years ago
08:17:52 <oklopol> of course, this is very different from the kind of stuff you ppl do
08:18:12 <oklopol> rice's theorem is the one that says you can't say anything about a turing machine's language
08:18:57 <oklopol> for CA, it means for any property P (nontrivial subset of limit sets that *actually occur*), you can't tell if your CA has that property in general
08:19:10 <oklopol> and this is much harder to prove
08:19:21 <oklopol> (no connection with the TM case)
08:22:26 <oklopol> but anyhow there are less computational questions as well and for the 1D case, a lot of fun little stuff is known about the structure of the attractor "tree"
08:22:48 <oklopol> minimal systems are the leaves i guess
08:22:59 <oklopol> i should go to work at some point i think :D
08:27:58 <oklopol> zzo38: in 0-dimensional spaces, clopen sets form a base for the topology
08:28:03 <oklopol> so they are very important
08:29:13 <oklopol> U is open <==> clopen set around each point of U within U
08:29:40 <oklopol> and yes, i'm just fucking with you, i don't except this to be a very useful lesson
08:31:11 <oklopol> oerjan: what's "the" definition of dimension according to you?
08:32:00 <oerjan> well for zero dimensions they tend to agree don't they
08:32:34 <oklopol> that's exactly what another guy who studies zero dimensional spaces said when i asked
08:32:39 <oerjan> but in the later work on topological measures, the important one was about refinement of coverings
08:33:16 <oklopol> you can always find a refinement such that at most dimension + 1 sets intersect
08:33:29 <oklopol> refinement being a.... subset of the cover? :P
08:33:33 <oerjan> although our spaces were compact, which i think makes some variations of _that_ identical again
08:33:44 <oklopol> no actually subset + smallening?
08:34:48 <oerjan> i'm not sure if you might have to take more than one subset of each original open set
08:38:21 <oerjan> i thought for about a day that i had a proof that if a space had dimension >= 2, then there existed nontrivial (non-lebesgue derived) topological measures, but that proof had a fatal flaw.
08:38:42 <zzo38> I don't really like the changes they made to Magic: the Gathering, except for the change of the name of the remove from game zone. That zone is still used in the game so it makes sense to change it. Other than that I do not like their changes.
08:38:54 <oklopol> say you have 2n balls on a circle, each connected through the middle of the circle to the ball on the other side, have each of them contain a point contained in none of the other balls, and so that the whole circle gets covered, then you have to cut some of the connections in two or you have a huge number of collisions in the middle
08:39:06 <oklopol> actually that's not really true
08:39:14 <oklopol> yeah kind of hard to come up with an example
08:39:51 <oklopol> oerjan: would that be a huge thing?
08:40:09 <oklopol> that thing you thought you did
08:40:40 <oerjan> well it would have determined precisely which compact spaces have nontrivial top. measures
08:40:58 <oklopol> does every compact space have a dimension?
08:41:21 <oklopol> makes sense with the refinement thing at least
08:41:22 <oerjan> it can be infinite of course
08:42:32 <oklopol> oh yeah topological measures, that was again something you talked about but i don't remember at all
08:42:43 <oerjan> and since the spaces are compact, you can never find a particular cover which needs an infinite subcover
08:43:04 <oerjan> so it makes no sense to go beyond infinity
08:46:27 <oklopol> can you explain topological measures again? :)
08:47:03 <oerjan> well you have a compact hausdorff space, and its families of closed and open sets
08:48:28 <oerjan> and then you have a set function from the union of open and closed sets to some [0, a] where a may usually be assumed = 1
08:49:34 <oerjan> call it m, and the space X, so m(X) = a
08:49:45 <zzo38> The default Magic Word, "Abracadabra", actually is a corruption of the Hebrew phrase "ha-Bracha dab'ra"
08:49:49 -!- zzo38 has quit (Quit: zzo38).
08:50:24 <oerjan> if A is an open or closed subset of B, then m(A) <= m(B).
08:51:12 <oklopol> what, that's CRAZY!! (i'm being sarcastic btw)
08:51:20 <oerjan> if A, B and C are open or closed subsets, A and B are disjoint and C is their union, then m(A) + m(B) = m(C).
08:52:10 <oklopol> but yeah i guess it's useful to open up the definition because of our crazy domain constraints
08:52:36 <oerjan> yes, but note that if A in B are open or closed subsets, then B \ A need not be, and in that case m(B \ A) does _not exist_, and there is no additivity.
08:52:56 <oklopol> yes, that's why it made sense to open the definition
08:53:05 <oklopol> but actually the way you usually define it
08:53:24 <oklopol> is exactly what you said, measurable disjoint things and measurable union => additive on those
08:53:39 <oklopol> do continue, or are we done
08:53:51 <oerjan> yeah it is possible to formulate the definition exactly like for ordinary measures
08:54:49 <oerjan> if C is a closed set and epsilon > 0, then there exists an open set O containing C such that m(O) <= m(C) + epsilon
08:55:22 <oerjan> i think that may be it
08:56:05 <oklopol> well that's pretty neat, why do we even bother with borel sets
08:57:11 <oklopol> does it follow that you can approximate open from inside by compact?
08:57:25 <oerjan> an important theorem is that if m(A union B) <= m(A) + m(B) for every open or closed A and B such that A union B is open or closed (subadditivity), then m actually comes from a borel measure.
08:57:54 <oerjan> we have m(C) + m(X \ C) = m(X), always, which gives a duality
08:58:54 <oklopol> okay it's noon, i have to go :P
09:02:56 -!- monqy has quit (Quit: hello).
09:12:15 -!- copumpkin has quit (Ping timeout: 250 seconds).
09:12:42 -!- copumpkin has joined.
09:18:33 -!- oerjan has quit (Quit: Good night).
09:44:44 -!- Vorpal has joined.
09:51:49 <Patashu> I need a C or C++ library for reading graphics files
09:57:01 <Patashu> hmm, but if I use a library I have to supply the library with my assignment too
09:57:06 <Patashu> how are we expected to do it again ?_?
09:57:10 <Patashu> darn university assignments
10:26:56 <fizzie> You could possibly just use one of the trivial formats, maybe.
11:05:27 -!- Lymia has joined.
11:06:16 -!- Phantom_Hoover has joined.
11:06:44 <lambdabot> Phantom_Hoover: You have 5 new messages. '/msg lambdabot @messages' to read them.
11:07:55 <Lymia> Let's send Phantom_Hoover 42 messages.
11:35:54 <Patashu> Except I don't know how to convert into it
11:36:29 <Patashu> http://www.sydneyarchitecture.com/ROC/ROC006-Sydney_Opera_House_Sails.jpg I need a .raw of the kind of striped texture of the brown surface on this picture
12:18:46 <Patashu> nvm, PSP can save as raw. sweet
13:00:33 <fizzie> There are also other uncompressed formats with trivial headers.
13:01:05 <fizzie> I seem to recall Gimp has raw-writing capabilities too. (Or maybe it was just reading.)
13:06:21 -!- Lymia has quit (Ping timeout: 244 seconds).
13:08:31 -!- Patashu has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .).
13:53:41 -!- sebbu has quit (Read error: Connection reset by peer).
13:54:10 -!- sebbu has joined.
13:54:13 -!- sebbu has quit (Changing host).
13:54:13 -!- sebbu has joined.
13:57:28 -!- Lymia has joined.
14:01:04 -!- Lymia has quit (Client Quit).
14:01:21 -!- Lymia has joined.
14:07:16 -!- Lymia has quit (Quit: 1... 2... 3... HUGS! :D).
14:07:34 -!- Lymia has joined.
14:08:14 <Vorpal> <fizzie> There are also other uncompressed formats with trivial headers. <-- I don't know what .raw is, but if it is at all related to raw camera images it will be quite a pain to work with
14:09:11 -!- Lymia has quit (Client Quit).
14:09:31 -!- Lymia has joined.
14:13:19 -!- Lymia has quit (Read error: Connection reset by peer).
14:24:35 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:39:45 -!- ais523 has joined.
14:53:03 -!- copumpkin has joined.
15:14:37 -!- pikhq has quit (Ping timeout: 255 seconds).
15:14:40 -!- pikhq_ has joined.
15:18:05 -!- sebbu2 has joined.
15:18:05 -!- sebbu2 has quit (Changing host).
15:18:05 -!- sebbu2 has joined.
15:21:38 -!- sebbu has quit (Ping timeout: 260 seconds).
15:38:43 -!- lament has joined.
15:55:07 -!- FireFly has quit (Quit: swatted to death).
15:56:21 -!- EgoBot has quit (Remote host closed the connection).
15:56:33 -!- EgoBot has joined.
16:20:47 -!- lament has quit (Ping timeout: 260 seconds).
16:33:27 -!- Lymia has joined.
16:33:27 -!- Lymia has quit (Changing host).
16:33:27 -!- Lymia has joined.
16:49:17 <Sgeo_> I can't tell whether you're making a comment at the obviousness of that, or that it's technically not distilled water that conducts electricity (iirc)
16:51:02 <Phantom_Hoover> I'm saying that water and electricity mix extremely well.
16:52:43 <Phantom_Hoover> I could even explain the logic behind their statement but it's so stupid I... can't.
16:54:31 <Phantom_Hoover> And distilled water does conduct electricity a little, just not nearly as much as water with dissolved ions does.
16:54:55 <ais523> actually, distilled water only conducts electricity because of dissolved ions
16:55:01 <ais523> it turns out water actually can dissolve in itself
16:55:05 <ais523> although it saturates quickly
16:56:09 <Phantom_Hoover> Yes, OK, but I didn't really feel like explaining dissociation to be technically correct.
16:56:29 <cheater__> how much water can you dissolve in 1L of water?
16:58:31 <ais523> I can't remember offhand
16:58:41 <ais523> but I know it's used as the basis for the definition of pH
16:59:12 <Phantom_Hoover> pH = -log_10 [H+] where [H+] is the concentration of H+ ions.
17:00:18 -!- TOGoS has joined.
17:00:38 <Lymia> How much water can you dissolve in 1L of dissolved water?
17:01:49 <Phantom_Hoover> There's often not much difference between jokes and interesting questions.
17:05:31 <Phantom_Hoover> (I suppose you could say that a litre of water will have 10^-7 mol of dissolved water in it.)
17:05:48 -!- monqy has joined.
17:09:09 * pikhq_ is still confused by Firefox's absolutely stupid decision to make a self-signed SSL certificate scream loudly
17:09:40 <pikhq_> Which of the following is more secure, cryptographically: an unencrypted message, or an encrypted message with no assurance of who sent it?
17:10:00 <pikhq_> If you said "the latter", congrats, you're not a complete, blithering moron!
17:10:33 <Lymia> pikhq_, it does become a problem if you're expecting the certificate to verify the owner...
17:10:43 <Lymia> I don't think that is "very often"
17:10:57 <Lymia> Phantom_Hoover, which image?
17:11:52 <pikhq_> Lymia: It could at least make a distinction between "this is encrypted" and "the CAs we trust have verified this".
17:12:56 <Lymia> Don't self-signed certs still have the power to stop man in the middle attacks, or phishing?
17:12:56 <pikhq_> Well, beyond "ZOMG THIS IS ENCRYPTED WITH A SELF-SIGNED CERTIFICATE! IT WILL RAPE YOU, GIVE YOUR COMPUTER A VIRUS, AND KICK PUPPIES!"
17:13:40 <pikhq_> Lymia: The *only* difference between a self-signed cert and a CA-signed cert is that there is no verification of the identity of the cert holder with a self-signed cert.
17:14:11 <fizzie> Which also mean it doesn't help in man-in-the-middle attacks, because the MITM can just present his own self-signed cert and pretend to be the destination server.
17:14:21 <Phantom_Hoover> * pikhq_ is still confused by Firefox's absolutely stupid decision to make a self-signed SSL certificate scream loudly
17:14:41 <pikhq_> Chrome Adblock sucks balls.
17:14:42 <Lymia> fizzie, if you already have a copy of the cert, you can stop it, can't you?
17:14:46 <fizzie> I am going to be confused if Chrome allows self-signed certs any more silently.
17:14:47 <Lymia> It used cert A before.
17:14:49 <Lymia> It now uses cert B.
17:15:06 <fizzie> Lymia: Yes, but no browser complains on unexpected certificate changes.
17:15:18 <Lymia> It should be cause for concern, shouldn't it?
17:15:46 <fizzie> Not in the CA-driven (broken) trust model. :p
17:16:14 <fizzie> SSH host key checking works like that, though.
17:16:35 <pikhq_> True, the CA-driven trust model is pretty fundamentally broken.
17:16:40 <Phantom_Hoover> <fizzie> I am going to be confused if Chrome allows self-signed certs any more silently.
17:16:42 <fizzie> I don't know many people who get the initial host key in any very secure manner most of the time.
17:17:09 <Phantom_Hoover> IIRC they display an untrusted certificate by striking through their SHTTP thing.
17:17:43 <pikhq_> Phantom_Hoover: Huge difference between "WARNING WARNING WARNING THIS IS UNSIGNED. IT WILL RAPE PUPPIES. WOULD YOU LIKE TO MAKE AN EXCEPTION?"
17:17:52 <pikhq_> "DOING SO WILL RAPE TWICE AS MANY PUPPIES."
17:18:18 <fizzie> What's a bit strange is that even though it opts for that stance, it then makes the exception permanent by default.
17:18:30 <pikhq_> Because that makes sense?
17:18:48 -!- copumpkin has quit (Ping timeout: 276 seconds).
17:19:11 <pikhq_> If they went for a truly secure stance, it'd warn you on non-HTTPS.
17:19:37 <Lymia> fizzie, "Hey, none of our CAs recognize this cert."
17:19:44 <pikhq_> As, after all, self-signed HTTPS is strictly more secure than HTTP.
17:19:47 <Lymia> "Let's notify the user if it decides to change"
17:20:03 <fizzie> Sure, but if they want to make sure no-one misses the self-signed cert warning, they could show it by default every time. Though I guess with a permanent exception it does sort-of do the change notification, that's true.
17:20:53 <pikhq_> fizzie: Except that HTTP < self-signed HTTPS. They warn for the more secure of the two.
17:21:19 <Lymia> HTTP is too common to warn on.
17:21:27 <Lymia> This is unfortunate.
17:23:16 <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
17:24:48 -!- copumpkin has joined.
17:28:35 -!- sebbu has joined.
17:28:35 -!- sebbu has quit (Changing host).
17:28:35 -!- sebbu has joined.
17:31:51 -!- sebbu2 has quit (Ping timeout: 258 seconds).
17:53:28 <cheater__> has anyone here used the Oberon TUI?
17:53:44 <cheater__> apparently it's said that it doesn't have a prompt. how does someone run commands in it?
17:56:53 -!- sebbu2 has joined.
17:59:41 -!- CakeProphet has joined.
17:59:52 -!- sebbu has quit (Ping timeout: 248 seconds).
18:08:19 * Sgeo_ wants a nice emulator for it
18:08:50 <Sgeo_> Apparently there are penty
18:10:53 <Sgeo_> Not sure whether to emulate Oberon in VirtualBox or install it on Windows
18:10:58 <Sgeo_> Going to do the former first
18:12:23 <Sgeo_> Actually, what's Bluebottle?
18:12:40 -!- TOGoS has left.
18:13:44 <Sgeo_> I'm downloading Bluebottle, not really sure what it is
18:15:21 <cheater__> it's based on AOL (active oberon language)
18:16:49 <cheater__> Sgeo_, i was specifically talking about this TUI: http://upload.wikimedia.org/wikipedia/commons/c/cc/OberonScreen.PNG
18:18:08 <cheater__> Oberon has a text user interface (TUI). It combines the point-and-click convenience of a graphical user interface (GUI) with the linguistic strength of a command line interface (CLI) and is closely tied to naming conventions of the Oberon language. Any text appearing on the screen can be edited and used as command input. Nothing like a prompt is required. Although radically different from a commandline, the TUI is very efficient and
18:18:09 <cheater__> powerful[4]. A steep ascend in the early learning curve makes it difficult to start with. Its usage and programming interface is documented in Martin Reiser's book "The Oberon System."
18:29:22 <cheater__> A CLI means that when you press "ENTER" the command is executed. With a TUI you can do pretty much the same thing, except that the command isn't executed until you click on it.
18:30:56 <cheater__> Sgeo_, it's fairly nifty like that
18:31:06 <cheater__> except i bet it has no vim support
18:31:11 <Sgeo_> Bluebottle in VirtualBox isn't working for me
18:31:24 <cheater__> maybe vb isn't bluebottle certified :X
18:36:41 <cheater__> http://www-old.oberon.ethz.ch/cli.html < that argument sucks.
18:36:59 <cheater__> he wrote it in 1999? it's mostly void due to things which already existed in 79.
18:40:35 <Phantom_Hoover> 00:53:24: <oerjan> huh, someone renamed the despotic language section in http://en.wikipedia.org/wiki/Esoteric_programming_language to turning tarpit
18:41:07 -!- CakeProphet has quit (Ping timeout: 260 seconds).
18:43:07 <oklopol> brainfuck's minimality borders on elegant and pure language design; in fact it is related to the P'' family of Turing machines.
18:47:26 <Lymia> Brainfuck vs Java.
18:47:58 -!- CakeProphet has joined.
18:47:58 -!- CakeProphet has quit (Changing host).
18:47:58 -!- CakeProphet has joined.
18:51:16 <Phantom_Hoover> 21:45:56: <oklopol> zzo38: not really. i only have opinions on math nowadays :\
18:51:35 <Phantom_Hoover> You have opinions on which soft drink is best to have sex in, for instance.
18:51:53 <ais523> oklopol: well, P'' is a bit of a tarpitisation of BF
18:52:03 <oklopol> ais523: i thought it's the exact same thing
18:52:03 <ais523> although the causality goes the other way
18:52:13 <ais523> P'' combines < and flip-bit, I think
18:52:42 <oklopol> oh it combines those. i guess also the binary thing is a bit of a tarpitisation.
18:53:32 -!- oerjan has joined.
18:54:32 <oerjan> <Phantom_Hoover> That was me, FWIW.
18:54:40 -!- copumpkin has quit (Ping timeout: 250 seconds).
18:54:54 <oerjan> well the definition of turning tarpit is _not_ what wikipedia now says it is
18:55:13 <olsner> is that a typo or different word?
18:55:50 <oklopol> is wheel a turning tarpit?
18:55:56 <oerjan> olsner: also a different word
18:57:01 <oerjan> anyway a despotic language did not have to have its command arranged in a wheel-like fashion, so need not be a turning tarpit
19:02:58 <oerjan> <cheater__> how much water can you dissolve in 1L of water?
19:03:23 <cheater__> ais523 said water is water-soluble.
19:03:34 <oerjan> 10^(-14) something, which is why equal amounts of positive and negative ions gives pH = 7 by what Phantom_Hoover said
19:03:56 <ais523> oerjan: yep, that sounds about right
19:04:18 <oklopol> how could that possibly have to do with 7
19:04:20 <Phantom_Hoover> It's 10^-7 l/mol of both H+ and OH- ions, so it's effectively 10^-7mol/l of dissolved water.
19:04:28 <oerjan> oklopol: 09:40:35 <ais523> actually, distilled water only conducts electricity because of dissolved ions
19:04:31 <oerjan> 09:40:41 <ais523> it turns out water actually can dissolve in itself
19:05:15 <oerjan> it's the _product_ of amount of positive and negative ions which is 10^(-14)
19:05:18 <oklopol> i'm just wondering why a square root is taken when there's an equal amount of A and B
19:05:25 * oerjan isn't actually looking this up, btw
19:05:35 -!- elliott_ has joined.
19:05:52 <ais523> oerjan: it's because the product stays approximately constant even if you add ions to the mix by hand
19:05:59 <ais523> by default you get equal amounts
19:06:04 <oklopol> "<Phantom_Hoover> It's 10^-7 l/mol of both H+ and OH- ions, so it's effectively 10^-7mol/l of dissolved water." <<< and how does this have anything to do with the number 10^-14 :D
19:06:16 <ais523> but say, if you add enough H+ to get 10^-6 H+, you get approximately 10^-8 OH-
19:06:20 <ais523> so it multiplies to 10^-14 always
19:06:46 <Phantom_Hoover> Water molecules will pull each other apart until the concentrations are at 10^-7.
19:08:10 <cheater__> does the solution of water in water conduct electricity?
19:08:31 <oerjan> cheater__: well that's what ais523 said which started this
19:08:48 <ais523> cheater__: yes, although not too well because not a lot of water self-dissolves
19:08:53 <cheater__> ok, but i thought he meant some other ions
19:09:15 <oerjan> it was distilled water, it doesn't have any other kind
19:09:51 <cheater__> oerjan, distilled water is never 100% pure. i thought he was referring to that.
19:10:04 <ais523> cheater__: no, I'm referring to the way that distilled water nonetheless contains dissolved water
19:10:11 <oerjan> cheater__: some of the water molecules split into H+ and OH- ions
19:10:15 <ais523> being pure, it couldn't contain dissolved anything else, right?
19:10:39 <cheater__> in typical distilled water, what's the percentage of water ions to all ions?
19:11:05 <cheater__> i mean ions that come from water dissolving in water.
19:11:14 <oerjan> presumably you can it least get it pure enough that the water ions dominate, or this wouldn't be much of a subject
19:11:48 <oerjan> Phantom_Hoover: he's a german and i'm norwegian, we're predisposed to making up new words
19:12:13 <cheater__> but if you take the mass of all ions in distilled water, and call that 100%, then what part of that is the ions that come from water?
19:12:21 -!- copumpkin has joined.
19:12:26 <oerjan> ("what do you mean it's not a word, i just made it up")
19:12:42 <ais523> cheater__: all of them come from ions
19:12:48 <ais523> because it's pure by definition
19:12:54 <ais523> so they couldn't come from anywhere else
19:12:59 <cheater__> ais523, i mean in the real world, not on paper.
19:13:26 <cheater__> ais523, hence i asked about "typical" distilled water
19:13:35 <cheater__> Phantom_Hoover, i think we're misunderstanding eachother
19:14:06 <cheater__> the number you posted is just the percentage of the mass of ions in the complete mass of the solution, yes?
19:14:21 <ais523> cheater__: you mean water that isn't completely pure, but is more pure than tap water?
19:14:32 <cheater__> i want the percentage of the mass of impurities in the mass of all ions.
19:14:51 <cheater__> ais523, i mean the kind of stuff i get when i buy "distilled water" in a chemist's shop.
19:15:14 <ais523> cheater__: I wouldn't know offhand, and it would probably depend on the chemist
19:15:55 <oerjan> i guess you could ask "how much can you purify water before the process does not improve"
19:16:07 <ais523> oerjan: in which case it would depend on the process
19:16:09 <oerjan> that might actually depend on technological progress...
19:17:12 <oerjan> like in the future you can do it much better, but you have to shoot individual ions into a hard vacuum to do it...
19:17:25 <cheater__> oerjan, but that's not going to accurately reflect the typicality of that process in the production of distilled water.
19:17:31 <Phantom_Hoover> Honestly, cheater__, can you talk about nothing without trolling?
19:18:12 <elliott_> Phantom_Hoover: "CG: DO I GET ON YOUR CASE FOR ALL THE TERRIBLE HUMANNING YOU DO?"
19:18:15 <oerjan> cheater__: well the point is what process is typical depends on what is available
19:18:42 <fizzie> Today's "poster title that caught the eye" entry: "Horror Video Scene Recognition via Multiple-Instance Learning"
19:18:51 <oerjan> say in five years they discover a much better process based on sieving through graphene, or something
19:18:57 <fizzie> "Along with the ever-growing Web comes the proliferation of objectionable content, such as pornography, violence, horror information, etc. Horror videos, whose threat to children’s health is no less than pornographic video, are sometimes neglected by existing Web filtering tools. Consequently, an effective horror video filtering tool is necessary for preventing children from accessing these harmful horror videos."
19:19:25 <elliott_> fizzie: Could they be any more political about it?
19:20:04 <elliott_> fizzie: I thought these types of papers were usually all academic about it and pretended to be oblivious of the real-world applications. :p
19:20:05 <cheater__> oerjan, this reminds me of this one quote that said you shouldn't be writing your programs as well as you can, only relatively well
19:20:12 * oerjan notes that "no less" doesn't actually imply that either value is actually large
19:20:14 <cheater__> because to debug them you need more skill than to write them
19:20:14 <fizzie> Authors: Jianchao Wang, Bing Li, Weiming Hu, Ou Wu, National Laboratory of Pattern Recognition / Institute of Automation / Chinese Academy of Sciences, China
19:20:32 <fizzie> I guess they know about filtering content in China.
19:21:31 <cheater__> i like how an "academy of sciences" proliferates information hampering, whereas science stands for information propagation.
19:21:54 <cheater__> that's like the Ministry of Truth.
19:22:49 <fizzie> It's based on "color emotion and color harmony theories".
19:23:25 <Phantom_Hoover> This is possibly the one context those phrases could be used without immediately discrediting the paper they're in.
19:26:35 <fizzie> On the "no immediately obvious applications" front, there was a rather nice talk about parametrizing "audio textures" (natural-ish sounds like rain, wind, fire, applause, etc., that are in some sense stationary), and then synthesizing "equivalent" new sounds. It did sound quite nice.
19:27:08 <cheater__> please link me up to the relevant paper and demos
19:27:18 <fizzie> They had invented a soundtrack classification application for it, but it really didn't work all that well, and the whole task felt quite forced.
19:28:14 <fizzie> The synthesis paper is "Sound texture synthesis via filter statistics", Proc IEEE WASPAA, 2009. Googling for the title finds the paper, and also a project that cites it.
19:28:26 <fizzie> http://www.cs.cornell.edu/projects/sound/fire/
19:28:35 <fizzie> "Coming soon: source code for .. audio texture synthesis".
19:29:11 <fizzie> It might use the same thing; the paper for the fire thing is 11M so I haven't bothered to load it over this slow net.
19:29:27 <fizzie> At least they cite the texture-synthesis page.
19:29:37 <elliott_> What happens if you try and stretch out a terrible pop song.
19:29:41 <elliott_> Can I produce the next big hit in this manner.
19:30:11 <fizzie> It's about synthesizing fire sounds that are synchronized with a physical fire simulation video thing.
19:30:44 <oerjan> <fizzie> I guess they know about filtering content in China. <-- i briefly had the approximate thought process here: "hm, they're wanting to censor _both_ violence _and_ sex? hm that fits neither with americans nor europeans. oh right, chinese."
19:31:01 <fizzie> The link has some videos of the fire thing.
19:31:17 <cheater__> are there any other demos that you have heard?
19:31:20 -!- augur has quit (Remote host closed the connection).
19:31:20 <Lymia> If the US censored violence, our culture might...
19:31:25 <Lymia> Be less screwed up.
19:31:41 <cheater__> btw, on the front of sound resynthesis i think hartmann neuron is very interesting.
19:31:56 <cheater__> Lymia, Ted Kaczynski has some interesting views on that.
19:32:05 <elliott_> did you actually just say that
19:32:19 <fizzie> The talk contained examples of rain, fire, applause, stream, bubbles, insects and wind; but I don't know where (or if) those would be in the interwebs.
19:32:32 <Lymia> elliott_, say what?
19:32:40 <elliott_> Lymia: i was talking to cheater__. you may have him on ignore.
19:33:11 <Lymia> I am mentally filtering him out. Does that count?
19:33:15 <fizzie> I think ICASSP didn't do the "include multimedia files in your submission" system, so the proceedings memory stick just has the papers.
19:33:19 <oerjan> elliott_: hey it was a pretty funny comment i say
19:33:49 <elliott_> Phantom_Hoover: Ha ha Scotland.
19:37:29 <cheater__> fizzie, was the talk for the paper you told me to google or for something else?
19:38:21 <fizzie> cheater__: It was for a newer paper, but that was just taking the same parametrization they used for synthesis and applying that for soundtrack classification, possibly not as interesting.
19:38:31 <fizzie> cheater__: But I did find the texture synthesis sound samples: http://www.cns.nyu.edu/~jhm/texture_examples/
19:39:30 -!- CakeProphet has quit (Ping timeout: 258 seconds).
19:41:18 -!- CakeProphet has joined.
19:41:18 -!- CakeProphet has quit (Changing host).
19:41:18 -!- CakeProphet has joined.
19:44:40 -!- pikhq has joined.
19:44:48 -!- pikhq_ has quit (Ping timeout: 252 seconds).
19:46:39 <cheater__> fizzie, just downloaded the demos, listening now..
19:47:52 <oerjan> 10:00:45 <fizzie> Lymia: Yes, but no browser complains on unexpected certificate changes.
19:48:27 <fizzie> oerjan: SSH clients in general; I mention SSH host key checking later on.
19:49:19 <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt.
19:51:26 <fizzie> Depending on the configuration, OpenSSH may be obstinate enough to completely refuse to connect until you manually edit ~/.ssh/known_hosts and remove the offending key.
19:52:47 <elliott_> <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt.
19:53:40 <oerjan> `addquote <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
19:53:43 <HackEgo> 429) <pikhq_> And if they wanted to go for "true" security, they'd just do "Warning: your computer has not been turned into a plasma. This may cause some of your personal data to be stolen. Click here to turn your computer into a ball of incandescent gas, a gigantic nuclear furnace."
19:54:20 <elliott_> [asterisk]miasma of incandescent plasma
19:55:27 -!- CakeProphet has quit (Ping timeout: 276 seconds).
19:56:32 <fizzie> cheater__: The parameters they use are based on a cochlea-simulating filterbank; the "marginals" (IIRC) were simple time-average statistics (mean, variance, kurtosis) over the marginal distributions (in practice, histograms) of the amplitudes of each filterbank signal.
19:57:47 -!- Lymia has quit (Remote host closed the connection).
19:57:49 <fizzie> The "full set" included something like cross-correlations between low-pass envelopes of those signals.
19:58:35 <fizzie> And he had some statistics where they just used the spectrum (well, spectrogram) to synthesize things, purely to show that the spectral shape is not enough to capture the texture.
19:58:50 <fizzie> The "spectrum" examples might be those.
19:59:38 <fizzie> I haven't listened to the ones on the page, the multimedia didn't work out right (it never does) and then I lost interest before actually downloading them.
20:00:07 <cheater__> what are statistics "over marginal distributions"?
20:00:56 -!- CakeProphet has joined.
20:00:56 -!- CakeProphet has quit (Changing host).
20:00:56 -!- CakeProphet has joined.
20:01:20 <cheater__> "amplitudes of each filterbank signal" - do you mean "amplitudes of each filterbank band"?
20:02:31 -!- augur has joined.
20:02:52 <cheater__> so what are these "marginal distributions"?
20:03:43 <Vorpal> <elliott_> <fizzie> I know one person who refuses to SSH into systems without first acquiring the host key through some trustworthy means; everyone else seems to just trust their luck on the first connection attempt. <-- I can't fathom why most people don't bother with it
20:04:16 <elliott_> fizzie: wow I was even joking.
20:05:00 <fizzie> cheater__: In this case I'd say it refers to just taking the amplitude histogram of the signal. I mean, that's a bit like a marginal distribution p(amplitude) if you consider the sample as the joint distribution p(time, amplitude).
20:05:11 <cheater__> fizzie, i just did this to download: 1. wget the index file 2. do this: cat texture_examples3.html | sed -e "s/.*\"\(.*wav\)\".*/\1/" | grep wav | while read i; do wget "http://www.cns.nyu.edu/~jhm/texture_examples/$i" & done
20:05:23 <cheater__> i bet this sed/grep could be optimized but i suck at sed.
20:05:26 <Vorpal> elliott_, wait, you were joking that I would verify host key? Of course I do!
20:05:42 <fizzie> I wonder if wget has a "fetch embeds" recursion mode.
20:06:01 <cheater__> fizzie, what are marginal and joint distributions?
20:06:04 <elliott_> fizzie: This shit up: you can't make it.
20:06:42 <Vorpal> elliott_, however, when trusted channel for it is hard to come by I might settle for some other sort of independent channel to verify it by.
20:07:13 <oerjan> <oklopol> oh it combines those. i guess also the binary thing is a bit of a tarpitisation.
20:07:17 <Vorpal> elliott_, this means I will accept verifying it in a discussion over IRC, though I'd prefer a more secure mean.
20:07:22 <oerjan> P'' isn't necessarily binary
20:07:48 <oklopol> that's what i thought initially
20:07:50 <Vorpal> fizzie, wget can fetch embedded images in html yes
20:08:12 <oklopol> then why would it combine the two commands
20:08:20 <cheater__> he meant media mentioned in <embed> tags.
20:08:21 <oklopol> and even if it were binary, why would it combine them :\
20:08:24 <Vorpal> <fizzie> Depending on the configuration, OpenSSH may be obstinate enough to completely refuse to connect until you manually edit ~/.ssh/known_hosts and remove the offending key. <-- that is the default config afaik
20:08:42 <cheater__> Vorpal, that's what i've found it to be
20:09:03 <cheater__> it's a bit annoying for some hosts.
20:09:19 <fizzie> Vorpal: Could be. I do know that HashKnownHosts officially defaults (or at least did) to 'no', but some distributions make it 'yes'.
20:09:35 <elliott_> What is the prize for implementing the interpreter and Pong game? —ehird 19:58, 24 May 2011 (UTC)
20:09:35 <elliott_> Currently, no finally defined, but I think it will be free (ad-free) webspace. --80.139.110.66 19:52, 26 May 2011 (UTC)
20:09:46 <elliott_> here I was thinking it'd be something of value
20:09:57 <Vorpal> fizzie, actually I think that depends on which sort of match it is. If it is a non-perfect match it will allow you to go on. As in, the host is not found in the config, but the ip of that host is found in it, with a different key
20:10:03 <cheater__> you could store the complete knowledge of humanity on said webspace
20:10:17 <Vorpal> but if the host name is found with a different key, it won't allow you to continue
20:10:19 -!- pikhq_ has joined.
20:10:22 <Vorpal> iirc something like that
20:10:22 -!- pikhq has quit (Ping timeout: 260 seconds).
20:10:54 -!- Lymia has joined.
20:10:54 -!- Lymia has quit (Changing host).
20:10:54 -!- Lymia has joined.
20:11:09 <Vorpal> fizzie, as for HashKnownHosts that is somewhat different from the question of allowing connection on host key mismatch
20:11:12 <fizzie> If you want to win $300, there's a logo contest on some new IEEE Signal Processing Society conference they advertised at the start of the day today. (Though I don't think they're going to accept anything too... esoteric, or #esoteric.)
20:11:21 <Vorpal> HashKnownHosts simply hashes the host part in the config
20:11:36 <Vorpal> so someone can't check ~/.ssh/known_hosts to find out all systems you have access to
20:11:37 <Phantom_Hoover> What kind of sane person distributes an animation as a GIF?
20:11:56 <Phantom_Hoover> I'm talking about stuff like http://jila.colorado.edu/~ajsh/insidebh/engulf_640x480.gif
20:12:01 <Vorpal> Phantom_Hoover, uh, that is quite common on wikipedia, though for short ones. Like showing how a motor works
20:12:13 <Phantom_Hoover> That would take far, far less time to load if you just stuck it on YouTube.
20:12:43 <Vorpal> Phantom_Hoover, that image doesn't take long to load. Just about 3 seconds
20:12:56 <elliott_> I wish browsers would delay showing animated GIFs until they load completely.
20:12:56 <Phantom_Hoover> "Warning: If you fall into a black hole, you will die. You will not go through a wormhole to another time and place."
20:13:07 <oerjan> oklopol: i assume P'' was meant to be minimalized. i also read that the author later defined and used combined commands that were identical to the brainfuck ones
20:13:28 <oklopol> i thought P'' was meant to prove you can have loops
20:13:39 <oklopol> why show you can have structured computation and then fucking obfuscate it
20:13:46 <Vorpal> elliott_, or at least until there was a buffer loaded
20:14:06 <oklopol> s/can have/only need to have/
20:14:27 <fizzie> http://www.ieee-espa.org/LogoContest.asp
20:15:01 <Vorpal> "Here are the conference parameters:"
20:15:19 <fizzie> They certainly emphasized the "for practicing engineers" part.
20:15:28 <fizzie> They're doing talks without papers and all.
20:15:32 <Vorpal> fizzie, also Industry with capital I
20:15:37 <fizzie> And it's been co-located with CES.
20:15:48 <fizzie> Consumer Electronics Show.
20:17:05 <fizzie> There was a Microsoft Research guy doing today's plenary talk; quite a lot of Kinect advertisement included.
20:17:15 <fizzie> I guess they're releasing their own non-commercial SDK for it soon.
20:17:34 <fizzie> He mentioned that the open-source driver lacks the funky microphone array DSP stuff they have.
20:17:42 <Vorpal> fizzie, what is the point? Others already done all the job
20:17:45 <Lymia> When do people use it for perverted purposes?
20:18:05 <oerjan> oklopol: well the obfuscation isn't on the loop commands
20:18:24 <fizzie> Vorpal: Well, there was one point right there.
20:18:40 <elliott_> Lymia: Surely it has already happened.
20:18:43 <Lymia> Vorpal, how long until people start using the Kinect for less than work safe purposes.
20:18:44 <fizzie> Also as I understood it it lacked something else too than just the mic-array stuff.
20:18:45 <Vorpal> fizzie, yeah I wrote it before you entered your line. Had quite a lag spike there. Weird.
20:19:06 <fizzie> Lymia: http://kinecthacks.net/kinect-sex/ +
20:19:18 <Vorpal> Lymia, are you invoking rule 34 on it?
20:19:36 <oerjan> "brainfuck: based on breakthrough research in structured programming"
20:19:52 <Lymia> I'm asking how long until somebody does perverted things wiht it.
20:20:05 <fizzie> Microsoft's also pushing out some sort of "Kinect Avatar" that does the whole virtual-reality chat stuff with facial expression and gesture tracking.
20:20:15 <olsner> Lymia: you're saying that as if they haven't already
20:20:45 <elliott_> <fizzie> Lymia: http://kinecthacks.net/kinect-sex/ +
20:20:53 <fizzie> (Also for the record: there was quite a lot of content in the talk that wasn't advertising their own stuff.)
20:21:19 <fizzie> elliott_: It was right there in the google quick-linkery thing when I googled for "kinecthacks" -- couldn't remember the tld.
20:21:19 <elliott_> "But well, NF is NOT a programming-language. It is an esoteric language which extends BF."
20:21:38 <Vorpal> elliott_, you should know that fizzie is good at finding stuff of all sorts. Everything from log graphing to finding weird things on google quickly
20:21:45 <elliott_> Vorpal: Suuuuuuuuuuuuuuuuuuuuuuuuuuure.
20:22:38 <oerjan> elliott_: well that fit with Vorpal too
20:23:00 <Phantom_Hoover> "All in all, NF is just a notation of a finite state machine,"
20:23:08 <Vorpal> elliott_, err why did you change your hifive to target fizzie?
20:23:30 <Vorpal> Phantom_Hoover, does it have a bounded tape?
20:23:50 <Vorpal> elliott_, it wasn't terribly clear
20:23:54 <Lymia> <oerjan> "brainfuck: based on breakthrough research in structured programming"
20:24:03 <oklopol> hey cool i wanna touch virtual boobs
20:24:07 <Lymia> You should write a fake advertisement for that.
20:24:27 <oklopol> also you rarely get to put your hands completely inside a boob so that's even better?
20:24:52 <fizzie> oklopol: The guy(tm) said it'll still be quite a while before haptics really take off, that it's the least understood area basically. So it'll be a while before the boob will touch you back.
20:25:34 <Vorpal> elliott_, I bet if you asked fizzie about almost any googlable topic he would be able to find something about it very quickly. He might however not be interested in doing that I guess.
20:25:35 <elliott_> `addquote <fizzie> [...] So it'll be a while before the boob will touch you back.
20:25:37 <HackEgo> 430) <fizzie> [...] So it'll be a while before the boob will touch you back.
20:25:45 <oerjan> elliott_: hey i was just about to!
20:25:46 <Vorpal> elliott_, come on. That was evil.
20:25:48 <elliott_> fizzie: please find me some information on whole-hand boob immersion
20:26:08 <oerjan> you just beat me because you didn't include the whole quote
20:26:11 <oklopol> fizzie: maybe i'll just buy a sex doll
20:26:18 <Vorpal> fizzie, what haptics? Does kinect have that?!
20:26:33 <fizzie> Vorpal: No, that's why it'll be a while.
20:26:58 <fizzie> Also the smell thing, it lacks that too.
20:27:02 <Vorpal> fizzie, ah. You said "least understood area" I thought you meant "least understood area of the kinect hardware" (from the point of view of open source drivers)
20:27:28 <fizzie> Oh; no, it was in the sense of "least understood area of immersive(tm) communications(buzzword)".
20:28:11 <fizzie> (The repetition of "immersive" was almost as bad as some other people are with "ubiquitous".)
20:28:39 <oerjan> well immersing in immersive ubiquity is ubiquitous
20:31:08 <fizzie> He did tell an amusing anecdote about attending some VRML conference (way back when that was relevant) at Stanford, where they had VRMLized the whole university; and when the guy demonstrating the thing navigated to the meeting room door, the speaker said he got a sudden feeling of dread that the (physical) door's going to open and a some sort of a huge eyeball is going to peek in, with all the people in the meeting room peering out from behind it.
20:34:34 <lifthrasiir> Found a path with 5 processors (weight=45): stream --(10)--> text --(10)--> brainfuck --(5)--> spoon --(10)--> minus --(10)--> buffer
20:34:42 <Phantom_Hoover> I was about to ping him just to annoy you but then I looked at the context and realised the dire consequences that would have.
20:34:52 <pikhq_> lifthrasiir: You frighten me.
20:34:58 <oerjan> elliott_: you should get a doctor to look at your right eye
20:34:59 <cheater__> fizzie, i would love to see an application of this resynthesis paper to data provided with BSS
20:35:45 <pikhq_> lifthrasiir: Cause that's that's clever and frightening, simultaneously.
20:35:54 <Phantom_Hoover> http://jila.colorado.edu/~ajsh/insidebh/realistic.html
20:35:55 <lifthrasiir> anyway now it is capable for parsing Text code (yes, a plain text) and translating it into Brainfuck, Spoon and finally Minus
20:36:30 -!- copumpkin has changed nick to Philippa_.
20:36:31 <lifthrasiir> Minus does not directly implement a Brainfuck transformer since Spoon is a superset of it (with an additional exit command).
20:36:35 -!- Philippa_ has changed nick to copumpkin.
20:37:51 <Vorpal> <lifthrasiir> $ ./esotope -f text -t minus -v <-- eh, what does that -f and -t mean?
20:38:21 <Vorpal> you mean this is an automatic tool to find chains of esolang interpreters?
20:38:40 <lifthrasiir> Vorpal: it is a unified architecture to support such thing
20:38:54 <Vorpal> lifthrasiir, heh. Does it try to find the shortest or the longest one?
20:39:10 <lifthrasiir> so everything has to be reimplemented (d'oh!) but once done it is quite powerful
20:39:38 <Vorpal> lifthrasiir, what if you want to find the longest one without cycles?
20:39:46 <lifthrasiir> since the longest path would be infinite (due to cycles)
20:39:47 <Vorpal> (quite tricky I imagine)
20:39:52 -!- CakeProphet has quit (Ping timeout: 248 seconds).
20:39:56 <Vorpal> lifthrasiir, longest one without cycles I meant
20:40:03 <lifthrasiir> ah, that seems interesting, but for now no.
20:41:02 -!- CakeProphet has joined.
20:41:06 <lifthrasiir> i also plan to add some optimization flag, so every processor has two kinds of weights; the complexity weight and optimization weight.
20:42:23 <Vorpal> lifthrasiir, so you don't look for shortest path in number of languages you pass through, but best path?
20:42:27 <lifthrasiir> so that the driver will find the path with the minimal sum of complexity AND the maximal sum of optimization (which can be bounded by the option)
20:42:43 <lifthrasiir> basically, yes. i'm still figuring out the details.
20:43:25 <Vorpal> lifthrasiir, presumably it would be useful to have an option that goes for fewest number of languages as well
20:43:26 <lifthrasiir> and i have lots of languages to implement (i think 20 is enough for architectural testing though).
20:43:40 <Vorpal> lifthrasiir, what language is esotope in?
20:43:59 <lifthrasiir> Vorpal: not always, since some transformation is trivial (e.g. Ook and BF)
20:44:07 <Vorpal> lifthrasiir, and couldn't it call out to external interpreters possibly?
20:44:36 <Vorpal> lifthrasiir, why ocaml?
20:45:08 <lifthrasiir> well, the prime reason is that i wanted to learn Ocaml in a hard way...
20:45:37 <Vorpal> lifthrasiir, is there any other way?
20:45:39 <lifthrasiir> and other reasons include i can mix the imperative and functional programming styles
20:45:54 <lifthrasiir> (though many told me that Haskell will do ;)
20:46:05 <pikhq_> Whiiich is not a major consideration of language choice.
20:46:13 <elliott_> pikhq_: oh shut up he can use whatever language he likes
20:46:26 <pikhq_> As you can do imperative and functional programming styles in just about any language younger than 50.
20:46:36 <pikhq_> (some more sanely than others)
20:46:48 <Vorpal> lifthrasiir, ah compilers only? So you won't ever be able to do befunge98 then, unless you "compile" to a bundled interpreter
20:47:07 <lifthrasiir> Vorpal: it includes both the interpreter and compiler (i.e. transformer).
20:47:18 -!- cheater__ has quit (Ping timeout: 252 seconds).
20:47:27 <lifthrasiir> the interpreter is simply a transformer that gives nothing (or, in Haskell, IO ()).
20:49:16 <lifthrasiir> some time later, esotope will have (for example) brainfuck-optimized kind which represents an optimized Brainfuck code, which can be used to generate an efficient C code (as the current esotope-bfc does)ff
20:49:33 <lifthrasiir> but for now i'm going to keep implementing important languages
20:50:58 <oerjan> hm compiling from a language which has a self-interpreter gives an interpreter automatically
20:52:21 <oerjan> or if B has an interpreter for A, and you compile B to C, then you get an interpreter for A in C
20:52:53 <lifthrasiir> yes, that's why i didn't implemented an interpreter for Ook!.
20:52:59 <Vorpal> oerjan, what about a self-compiler, err wait that would be damn useless. never mind
20:53:57 <oerjan> technically for interpreters there are up to two languages involved, while for compilers there are three
20:53:57 <Vorpal> oerjan, the only case where a self-compiler could be useful would be if it was optimising. Like say one for bf that turned ++- into +
20:55:26 <Vorpal> oerjan, hm *tries to imagine some way to run programs that involve more than three languages*
20:57:15 <oerjan> Vorpal: well when bootstrapping a language compiler, you might write the compiler for B in A, compiling into C (the last one literally)
20:57:41 <Vorpal> oerjan, that is three so far
20:57:51 <oerjan> oh you said _more_ than three
20:58:03 <Vorpal> I had no success so far
20:58:31 <Vorpal> oerjan, three is easy. Just imagine a bf->C compiler written in something else than bf or C
20:58:31 <oerjan> well obviously there are cases where one stage contains more than one language, but that may not count...
20:58:58 <Vorpal> elliott_, you mean like the language that is mostly not Murphy?
20:58:59 <oerjan> like web stuff, you have both client and server languages
20:59:13 <Vorpal> I forgot the first part of it
20:59:17 -!- comex_ has joined.
20:59:19 <Vorpal> something that cpressy made
20:59:30 <Vorpal> Ozzlybob or something iirc?
20:59:52 <oerjan> there is another pair of esolangs, one of which is Portia
20:59:58 <Vorpal> oerjan, well it said that most parts of the language was the thing on O, the rest of it was however Murphy :P
21:00:46 <elliott_> the fact that it's not called Oolzybub is called Murphy
21:00:46 <quintopia> portia is supposed to go with 2iota right?
21:00:58 <oerjan> http://esolangs.org/wiki/Beta-Juliet_and_Portia
21:01:21 <oerjan> http://esolangs.org/wiki/Oozlybub_and_Murphy
21:01:34 <Vorpal> oerjan, it says preprocessor
21:01:42 <Vorpal> but isn't preprocessor another compiling step
21:02:10 <oerjan> Vorpal: yeah that's why i'm asking if splitting stages counts
21:02:38 <Vorpal> oerjan, like CPP takes C source from C to C-preprocessed which a C compiler (as it is confusingly named, should be called a C-preprocessed-compiler!) then compiles to asm, which the assembler then compiles to an object file. And lets not discuss the linker.
21:02:39 <oerjan> although web stuff with client/server split feels more relevant
21:03:19 <oerjan> hm what about that supercompilation stuff i've sometimes seen mentioned here
21:03:35 <oerjan> although that may be mainly one language applying to itself
21:03:58 <Vorpal> oerjan, isn't supercompilation simply a way to optimize by brute forcing ways to compile an expression to
21:04:14 <Vorpal> like testing all ways you could possibly zero out a register to find the shortest one or whatever
21:04:36 <Vorpal> elliott_, I heard supercompilation used to describe that however. Hm
21:04:42 <oerjan> i don't recall anything about "brute forcing", i'm unclear about it but i thought it was related to partial evaluation
21:04:57 <Vorpal> so what is super-compilation then
21:05:25 <oerjan> well i think elliott_ may be who mentioned it previously
21:05:47 <Vorpal> elliott_, hm that is still three languages at most right?
21:06:16 <oerjan> in compilation, you have three languages involved in a single stage
21:06:43 <oerjan> which cannot be logically split up without some part having the same property, i think
21:08:43 <oerjan> if A compiles B to C, then you can split it by compiling the compiler from A to C first, then running the resulting C program to compile from B to C
21:09:54 <oerjan> so it's not quite clear that there are intrinsically units involving more that 2 languages
21:10:09 <Vorpal> oerjan, you could do that, but then you need a new compiler that compiles from A to C. Involving an extra software
21:10:46 <Vorpal> and if you mention hand compilation I would argue that counts as a "software" in this context
21:12:15 <oerjan> it's a bit neat to think that the entire compiler/interpreter infrastructure we have today all builds necessarily on an ancient, forgotten layer of hand compilation
21:12:35 <oerjan> well maybe someone still does it occasionally for fun
21:14:30 <Vorpal> oerjan, I would say it is a form of hand compilation when turning pseudo-code into <insert favourite language here>
21:14:38 <oerjan> the hand bootstrapping doesn't need to be done particularly efficiently either. like that inefficient "unregistered C" target for ghc, which is just to get an initial port
21:15:07 <Vorpal> oerjan, why do you need unregistered C for ghc at all. Why not simply cross compile full blown ghc
21:15:08 <oerjan> Vorpal: hm yeah. and on the other side even assembly is not machine code
21:15:28 <oerjan> Vorpal: oh. current ghc does not support cross compilation.
21:15:38 <Vorpal> oerjan, people started out writing machine code before they invented asm
21:16:13 <oerjan> the new upcoming code generator is supposed to though (i saw something to the effect that it always essentially cross compiles)
21:16:51 <Vorpal> oerjan, hm, you could say that when turning your idea of what you want to do into code in any programming language, you are hand-compiling your thoughts to said language.
21:17:13 <oerjan> Vorpal: although it might still be nice to have easy port version to be able to get things started before you have a full implementation of all the target architecture's quirks
21:17:20 <Vorpal> oerjan, what new upcomming code generator?
21:17:42 <oerjan> Vorpal: well i've seen it mentioned, they're completely rewriting that part
21:18:14 <oerjan> i think the old one was getting so full of cruft that they had trouble adding new things to it
21:19:51 <oerjan> http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/NewCodeGen
21:20:13 <Vorpal> heh, neat. I had a pencil lying on a shelf. (Yes my desk and the nearby area is quite messy.) I bumped the desk with my foot by mistake. This caused the pen to fall off. It landed right way up in the pencil jar (is that the right English word?) right below.
21:20:29 -!- CakeProphet has quit (Ping timeout: 260 seconds).
21:20:50 <olsner> I think that "new" code gen has been the "current" code gen for a while now
21:20:53 <Vorpal> oerjan, hm the unregistered C one uses the evil mangler? Or is that some other one?
21:21:10 -!- CakeProphet has joined.
21:21:16 <oerjan> olsner: no, see the current status report section
21:22:07 <oerjan> Vorpal: the evil mangler is used by the _registered_ C backend
21:22:25 <Vorpal> oerjan, why the name "(un)registered"?
21:22:33 <oerjan> the unregistered avoids those tricks to be completely portable, at the cost of efficiency
21:22:53 <oerjan> it does not attempt to control which machine registers are used for things
21:23:00 <Vorpal> oerjan, how does the unregistered one do gc?
21:23:26 <Vorpal> oerjan, does it allocate a large array to use as backend for gced stuff?
21:23:32 <Vorpal> I mean that is really the only portable way
21:23:35 <oerjan> i don't know such details :)
21:24:21 <oerjan> so i don't know _how_ portable it is
21:24:39 <oerjan> just that it doesn't depend on that many deep gcc specialties
21:26:54 -!- CakeProphet has quit (Ping timeout: 276 seconds).
21:26:59 <oerjan> and architecture dependent details
21:28:43 <elliott_> so the mangler is deprecated too
21:28:59 <Sgeo_> BlueBottle works just fine in VMware Player :/
21:29:10 <Vorpal> elliott_, but the mangler is fun. Since it is evil.
21:32:41 <Sgeo_> "In this respect, the A2 System GUI surpasses many existing windowing implementations. Windows can moved, rescaled etc. while the programs "behind" the windows kep running."
21:32:59 <Vorpal> oh seems it is completely gone
21:33:06 <oerjan> Lymia: it's a perl script which ghc -fvia-c runs on the assembly produced by gcc, mangling it
21:33:13 <Vorpal> Lymia, check this historical version of the page for more info http://hackage.haskell.org/trac/ghc/wiki/Commentary/EvilMangler?version=2
21:33:14 <olsner> Vorpal: there's also the Satanic Splitter
21:34:56 <olsner> don't remember *exactly* what it does, but something like splitting assembly sources into several files to allow the linker to make smaller programs
21:35:18 <Lymia> It's not that evil!
21:35:23 <oerjan> olsner: i think it also ensures proper tail calls
21:36:32 <olsner> can't be bothered doing more than googling, but there is this: http://www.haskell.org/pipermail/glasgow-haskell-users/2005-February/008006.html
21:37:46 <oerjan> olsner: i don't think the mangler is what splits object files, at least that isn't its main purpose, see that link by Vorpal
21:38:01 <olsner> I'm talking about the satanic splitter, not the evil mangler
21:38:29 <Vorpal> olsner, confirmed: http://hackage.haskell.org/trac/ghc/wiki/Building/Porting#Thesplitter
21:38:50 <oerjan> "GHC no longer has an evil mangler."
21:39:18 <Vorpal> the splitter is still there: http://hackage.haskell.org/trac/ghc/browser/driver/split/ghc-split.lprl
21:39:39 <oerjan> Vorpal: i'm having trouble getting all the irc conversation _and_ checking out your links at the same time :P
21:39:44 <elliott_> oerjan: that's because the registered C backend is deprecated :P
21:40:09 <Vorpal> oerjan, you are too slow
21:40:29 <Vorpal> oerjan, overclock yourself (first ensure proper cooling)
21:40:53 <oerjan> unfortunately overclocking has severe side effects on me.
21:41:05 <olsner> maybe the Oerjan Enhanced Speedstep Technology has kicked in already
21:42:12 <oerjan> elliott_: yeah but i didn't know it was deprecated to the point they had stopped keeping it working efficiently...
21:42:31 <Vorpal> oerjan, the evil mangler file is gone even
21:42:37 <pikhq_> oerjan: They started doing that because the LLVM backend performs better in all cases, IIRC.
21:43:35 <oklopol> oerjan: i think NFA = FNFA with any amount of dimensions
21:44:17 <oklopol> i've spent hundreds of hours trying to solve that, so yes :P
21:44:54 <oerjan> well a proper counterexample would of course have been good too
21:45:06 <Vorpal> reading http://hackage.haskell.org/trac/ghc/wiki/Commentary/Compiler/Backends/LLVM/WIP : what *is* this elsusive STG register in haskell?
21:45:28 <oklopol> yes, although it didn't take me long to convince myself 100% that they are equal in n-D
21:45:30 <oerjan> stg is for spineless tagless g-machine
21:46:03 <Lymia> A language like Haskell cannot exist without nasty dirty hack under it's skin.
21:46:04 <oklopol> of course, this means i probably cannot sleep tonight.
21:46:14 <Vorpal> oerjan, or did what you say actually mean something?
21:46:17 <oerjan> Vorpal: no. well it may contain a pun, but it's the intermediate representation stage between core and c--
21:46:38 <Vorpal> oerjan, ah, so what is the STG register for, and why is it pinned to a machine register
21:47:19 <Vorpal> elliott_, wait a second. coq is written in ocaml. ocaml is not dirty-hack free
21:47:26 <oklopol> i mean if my solution is correct, this is bigger than P != NP for the picture-walking automata people! (that is, me and maybe that one japanese guy although he's probably dead already.)
21:47:36 <oerjan> Vorpal: i think there is more than one, it's the registers that result from something in the stg representation i assume
21:47:59 <oerjan> and the stg running model presumably requires them to be at a known place
21:48:14 <oerjan> my memory on stg is too vague
21:48:35 <oerjan> that representation is old i think, perhaps from the 80s
21:48:43 <oerjan> although ghc has modified it
21:49:24 <oerjan> (they added tags back to pointers at one stage for efficiency, iirc)
21:49:43 <oerjan> so it may not actually fit its name any longer :D
21:50:10 <oklopol> (argh, i knew i'd find a problem with the solution the second i announce it)
21:50:41 <oerjan> oklopol: ah yes. a known problem.
21:51:40 <oklopol> actually when that happened for the 2-D problem, i managed to solve the problem the same day anyway. so i still have hope.
21:52:18 <oklopol> it's not at all big. the 2d question was left open in at least 2 articles and a book, but the n-dimensional case has only been asked by me.
21:52:21 <oerjan> oklopol: happened to me with that wrong >= 2d proof for topological measures i mentioned yesterday.
21:52:43 <oklopol> or you mean you announced it before realizing
21:52:49 <oerjan> no, it fell through when i was explaining it on the blackboard
21:53:22 <oerjan> strictly speaking i had already announced it, sort of (i SMS'ed "Eureka" to my collaborator)
21:54:38 <elliott_> i suppose "dork" is more appropriate
21:54:47 <oklopol> elliott_: you wouldn't understand
21:55:38 <oerjan> Vorpal: "spineless" iirc is for how that representation did away with having an internal representation of the reduction graph for functional languages, using stack arguments instead.
21:56:16 <oklopol> argh if the solution doesn't work, then i now have three proofs for the 2d case but none for the general case
21:57:24 * Vorpal tries to think the most useless multiclassing in nwn.
21:57:26 <Lymia> That's one more than two.
21:57:49 <oerjan> "tagless" iirc is for how it used return destination to branch directly to the code that wanted the result, instead of allocating constructors that might never be used since the destination might just pick them apart
21:57:51 <Vorpal> possibly multiclassing sorcerer and wizard? That one must come close at least
21:59:00 <Vorpal> oerjan, is this like optimising a tuple into an unboxed tuple?
21:59:26 <oerjan> yes, except it works for data types with more than one constructor, such as Just x vs. Nothing
21:59:51 <Vorpal> oerjan, oh, nifty. But this would only work within a single module surely?
22:00:34 <oerjan> no, the return address would be in a known spot on the stack or in a table pointed to from the stack, i think
22:01:05 <oerjan> and making that work across modules _might_ be a reason for pinning those registers
22:01:26 <Vorpal> why is everything slow suddenly
22:01:43 <Vorpal> weird, I'm swap trashing for no obvious reason
22:05:01 <oerjan> <elliott_> oerjan: nerd :D <-- ARE YOU CALLING ARCHIMEDES A NERD?
22:05:06 <Vorpal> $ git clone http://darcs.haskell.org/ghc.git/ <-- wait what, 1) ghc went git!? 2) why call it darcs.haskell.org if it isn't darcs?
22:05:23 <elliott_> Vorpal: (one) Alas, yes. (I didn't realise they had finished transitioning though.)
22:05:28 <elliott_> Vorpal: (two) It's a separate server.
22:05:47 <elliott_> No point in fiddling with DNS, since they still host a lot of darcs repos too.
22:06:06 <Vorpal> elliott_, sad, darcs was better than git
22:06:16 <elliott_> With foresight, it would have probably been named repo.haskell.org. :p
22:06:21 <elliott_> Vorpal: In fairness, GHC is huge, and darcs was quite slow for them.
22:06:32 <oerjan> elliott_: i guess i didn't do it properly, i should have ran naked in the streets as well
22:06:40 <Vorpal> elliott_, really it being slow
22:06:44 <elliott_> oerjan: Yes, this was definitely something you should have done.
22:06:45 <Phantom_Hoover> They invented steam engines and just saw them as a cool toy.
22:06:48 <Vorpal> elliott_, darcs never came across as slow to me
22:06:51 <elliott_> Vorpal: darcs has known efficiency issues for large projects /shrug
22:06:56 <elliott_> darcs one was absolutely glacial.
22:07:43 <elliott_> Well, "fool me once, shame on you; fool me twice, can't get fooled again".
22:08:27 <Vorpal> elliott_, not all docs are updated to saying they use git however. Some still suggest darcs.
22:08:31 <elliott_> Heh, "I don't know why you're talking about Sweden. They're the neutral one. They don't have an army."
22:08:39 <elliott_> (Found when Googling to make sure I had the Bush quote right; http://en.wikiquote.org/wiki/George_W._Bush.)
22:09:08 <Vorpal> elliott_, our army is just an excuse for not having one really
22:09:27 <elliott_> Don't you have a fairly good army, but just not use it for anything? :p
22:09:50 <Vorpal> elliott_, we used to have that. But budget cuts has been going on for well over 15 years now, so not much left.
22:10:08 -!- cheater__ has joined.
22:10:15 <oerjan> elliott_: mind you the ghc guys refused to change to Darcs 2 format (or something like that) because it didn't work with something they used to do, thus not using some of darcs's later improvements, i think.
22:10:22 <elliott_> Vorpal: Well, hey, at least you're cutting from the military. That's something America hasn't quite figured out how to do yet.
22:10:47 <Vorpal> oerjan, did it work with git however?
22:11:27 <Vorpal> oerjan, it would be somewhat funny if it didn't
22:11:51 <oerjan> which might mean that ghc chose git over darcs because they insisted on using git workflow...
22:12:39 -!- CakeProphet has joined.
22:12:39 -!- CakeProphet has quit (Changing host).
22:12:39 -!- CakeProphet has joined.
22:13:16 <Vorpal> oerjan, rebase *shudder*
22:13:57 <oerjan> <elliott_> Don't you have a fairly good army, but just not use it for anything? :p <-- i vaguely think that sweden, unlike norway, having a pretty good army at the start of ww2 was how that managed to _stay_ neutral then
22:14:19 <Vorpal> <elliott_> (Found when Googling to make sure I had the Bush quote right; http://en.wikiquote.org/wiki/George_W._Bush.) <-- I glanced at that page and the stupidity ratio is utterly outstanding
22:14:43 -!- pikhq_ has quit (Ping timeout: 240 seconds).
22:14:47 -!- pikhq has joined.
22:15:21 <elliott_> Vorpal: Surely you've heard all the Bushisms by now.
22:15:29 <Vorpal> oerjan, well... no we didn't have a good army at the start of ww2. However the politicians claimed we did and then did a mad rush to make it true. Meanwhile allowing the germans to transport troups through Sweden for the first few years of the war
22:16:01 <Vorpal> elliott_, I know he is stupid yes. But I haven't heard all those quotes no. Quite a few yes.
22:16:36 <oerjan> i just recently learned from wikipedia that britain invaded iceland shortly after germany invaded norway and denmark. the icelanders protested, but not overly much
22:16:45 <Vorpal> oerjan, oh and we sold them iron ore too. Since they invaded you guys and thus controlled Narvik.
22:16:59 <oerjan> Vorpal: "En svensk tiger", eh? ;D
22:17:01 <Vorpal> oerjan, really? that is news to me
22:17:21 <Vorpal> oerjan, was that invented around then or after?
22:17:51 <oerjan> they then passed control of iceland over to us troops. this was _before_ the us formally joined the war.
22:18:14 <oerjan> Vorpal: um you should know, you're the swedish one.
22:18:31 <Vorpal> oerjan, hey you are Norwegian and you told me you haven't seen Peer Gynt!
22:18:32 -!- sebbu has joined.
22:18:32 -!- sebbu has quit (Changing host).
22:18:32 -!- sebbu has joined.
22:18:40 <Vorpal> oerjan, så kasta inte sten i glashus
22:18:49 <Vorpal> (I have no idea what that idiom would be in English)
22:19:09 <Vorpal> (literal translation would be "don't throw stones in houses made of glass")
22:19:28 <oerjan> i think "those who live in glass houses shouldn't throw stones"
22:19:53 <oerjan> although "the pot calling the kettle black" also fits the theme
22:20:28 <Vorpal> oerjan, aren't they basically the same?
22:20:38 <Vorpal> I mean, what is the difference in meaning between the two idioms
22:21:24 <oerjan> <Vorpal> oerjan, rebase *shudder* <-- i am not entirely sure, but it may be close to the thing ghc insisted on using
22:21:44 -!- sebbu2 has quit (Ping timeout: 260 seconds).
22:21:47 <Vorpal> oerjan, rebase is Modifying History. Which is Wrong.
22:22:02 <Vorpal> (which means I hate the git workflow)
22:22:24 -!- BeholdMyGlory has quit (Remote host closed the connection).
22:22:50 <elliott_> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 9 2
22:22:57 <elliott_> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 2
22:23:24 <Vorpal> elliott_, shouldn't you use where instead of let, iirc you told me so some time ago? ;P
22:23:50 <Vorpal> elliott_, okay, for the purposes of learning idiomatic style, why is that?
22:24:00 <oerjan> Vorpal: cannot use where on an expression alone
22:24:02 <elliott_> well this is ghci, it's hardly idiomatic
22:24:05 <lambdabot> <no location info>: parse error on input `where'
22:24:12 <elliott_> besides, i wrote the function first ;)
22:24:14 <oerjan> elliott_: um lambdabot isn't ghci
22:24:28 <oerjan> just vaguely similar to a few subcommands of ghci
22:24:40 <lambdabot> <no location info>: parse error on input `:'
22:25:04 <Vorpal> oerjan, indeed. But > is not ghci
22:25:08 <Vorpal> that was my main point
22:25:20 -!- sebbu2 has joined.
22:25:21 -!- sebbu2 has quit (Changing host).
22:25:21 -!- sebbu2 has joined.
22:25:39 <elliott_> Variable occurs more often in a constraint than in the instance head
22:25:39 <elliott_> in the constraint: Divisible n' d r
22:25:39 <elliott_> (Use -XUndecidableInstances to permit this)
22:25:54 <oerjan> you need to remember when to add > or @, and you still only get non-IO expressions, let, :t and :k
22:25:56 <Vorpal> elliott_, err, what does that mean
22:26:21 <Vorpal> oerjan, what is @ for in lambdabot?
22:26:30 <elliott_> > let sub n 0 = n; sub n m = sub (n-1) (m-1) in sub 9 2
22:26:53 <elliott_> class Sub a b r | a b -> r, a r -> b
22:26:53 <elliott_> instance (Sub n m r) => Sub (S n) (S m) r
22:26:58 <oerjan> elliott_: um your definition above fails on divs 1 1
22:27:24 -!- sebbu has quit (Ping timeout: 258 seconds).
22:27:31 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 1 1
22:27:41 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 1
22:27:45 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 1 2
22:28:09 <elliott_> shut up, my main problem is this undecidable instance :)
22:28:11 <Vorpal> whichever order that is in, that is wrong (while 2 doesn't divide 1, 1 definitively divides 2)
22:28:27 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 8
22:28:31 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 2
22:28:36 <oerjan> elliott_: more seriously, it fails on divs 8 3
22:28:41 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 2 3
22:28:48 <elliott_> oerjan: ok ok ok but i need to fix this first
22:28:56 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:29:14 <Lymia> > wat language is dis
22:29:14 <lambdabot> Not in scope: `wat'Not in scope: `language'Not in scope: `is'Not in scope: ...
22:29:23 <oerjan> Vorpal: same as your 2 3, actually. leaky recursion base.
22:29:43 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 5
22:29:56 <Vorpal> is it different or same?
22:31:06 <elliott_> do you need undecidable instances to do this
22:33:43 <oerjan> elliott_: i don't know why that claims it's got a greater context, maybe the functional dependencies are involved somehow?
22:34:04 <elliott_> oh well, undecidabled up the wazoo
22:34:16 <elliott_> now to fix that divisible algo :D
22:34:20 <oerjan> as in, aren't they rewritten to type functions these days?
22:34:27 <Vorpal> what does undecidable instances do?
22:34:37 <oerjan> or something like that
22:35:55 <oerjan> Vorpal: hm i recall seeing Terminated before, although i don't recall if there's a difference with that mueval-core thing
22:36:04 <oerjan> maybe there are two different competing timeouts
22:37:28 <oerjan> i am wondering, is having both a b -> r and a r -> b causing unbounded growth in itself
22:37:39 <Vorpal> I wonder if it is repeatable:
22:37:42 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:37:47 <Vorpal> > let divs 1 _ = False; divs 0 _ = True; divs n d = divs (n-d) d in divs 8 3
22:38:04 <Vorpal> oerjan, looks like two competing timeouts indeed
22:38:30 <oerjan> Vorpal: btw the 2 1 thing is equivalent to my first comment on 1 1, he doesn't handle d = 1
22:39:21 -!- zzo38 has joined.
22:39:28 <oerjan> in fact i think the mueval-core thing is newer, they may have restructured lambdabot at some point
22:40:05 -!- ntides has joined.
22:40:22 <zzo38> I got FizzBuzz C code down to 87 bytes now I should try for mathematical shortcuts, I think
22:40:25 <Vorpal> oerjan, hm don't you usually write x divides y as x | y, rather than y | x
22:40:28 -!- ntides has left.
22:40:32 <oerjan> elliott_: does it work if you remove a r -> b ?
22:40:37 <Vorpal> oerjan, in which case elliott_ has the parameters backwards
22:40:49 -!- ais523 has quit (Remote host closed the connection).
22:40:49 <Vorpal> oerjan, which means 8 `divs` 3 will be all backwards
22:41:01 -!- elliott_ has quit (Ping timeout: 255 seconds).
22:41:12 <oerjan> although it's the same order as div and mod
22:41:20 <oerjan> (which aren't predicates)
22:41:27 <Vorpal> oerjan, yes but | is usually written the other way around
22:43:16 <zzo38> I saw on some periodic table of Perl6 that the % operator is "iffy" which means it can be ! (logical not), but when I tried using !% operator it didn't work but it did say to use %% instead, so I did, and it worked
22:43:24 <oerjan> Vorpal: "The famous poster for the propaganda campaign was created by Bertil Almqvist in 1941"
22:43:29 <Vorpal> "periodic table of Perl6"?
22:43:35 -!- CakeProphet has quit (Ping timeout: 240 seconds).
22:43:44 <Vorpal> oerjan, I googled it several minutes ago
22:43:49 <zzo38> Vorpal: Yes I found the Periodic Table of Perl6 Operators
22:44:23 <fizzie> The Table is quite old; maybe it hasn't been kept current?
22:44:24 <zzo38> Everything is categorized, similar to, but not quite like, the periodic table of elements.
22:44:50 <zzo38> fizzie: Maybe that is why it did that, then
22:45:30 <zzo38> Although at first when I read that on the table, I immediately thought that making % to be "iffy" is a good idea, and that it had other good ideas too from what I could see on that table
22:45:39 -!- CakeProphet has joined.
22:45:39 -!- CakeProphet has quit (Changing host).
22:45:39 -!- CakeProphet has joined.
23:00:39 -!- h[a]gb4rd has joined.
23:18:10 -!- CakeProphet has quit (Ping timeout: 264 seconds).
23:23:03 <pikhq> Apparently non-Americans think root beer tastes like medicine. Personally, I wonder how they get good-tasting medicine.
23:23:53 -!- Phantom_Hoover has quit (Quit: Leaving).
23:24:54 <Sgeo_> pikhq, EZ Tab Tylenol or whatever tastes great!
23:25:09 <Sgeo_> I wish I could have medicine flavoring without the medicine
23:25:31 <pikhq> You are probably a freak.
23:25:53 <Sgeo_> pikhq, I don't think I mean raw medicine
23:26:01 <Sgeo_> They add flavoring to medications I think
23:26:06 <Sgeo_> I think that's what I like
23:26:11 <Sgeo_> But yes, I am a freak, so
23:26:12 <pikhq> Yes, you are probably a freak.
23:26:30 <Sgeo_> Well, some medicine, anyway
23:26:38 <Sgeo_> Ugh, the taste of Wellbutrin was horrible
23:26:52 <Sgeo_> Although I tended to chew it despite it not supposed to be chewed
23:27:30 <Sgeo_> Same with Ritalin. Oh wait, I didn't chew Wellbutrin, the taste was _too_ horrible
23:27:31 <augur> plural logic has never made sense until now
23:27:42 <augur> and now i know its because noone knows how to explain it properly except boolos himself
23:28:34 <Lymia> Dosn't this apply to a lot of things?
23:29:13 <Lymia> Even basic mathematics....
23:29:33 <Lymia> Well, I guess that starts making sense once you get into Algebra, etc.
23:30:36 -!- variable has left ("I found 1 in /dev/zero").
23:47:46 <zzo38> I shortened FizzBuzz C code to 63
23:49:16 <zzo38> Sorry, I didn't do that. I shorted "google" to 63
23:55:42 <Lymia> Now do it in Perl which you can actually golf worth shit.
23:59:43 -!- CakeProphet has joined.
23:59:43 -!- CakeProphet has quit (Changing host).
23:59:43 -!- CakeProphet has joined.