00:00:04 <zzo38> OK thanks. Yes, "define-equal" is a good name to describe what = means in Haskell. I will use the = with triangle above it.
00:00:57 <zzo38> OK, I worked it out.
00:09:20 -!- FireFly has quit (Quit: swatted to death).
00:10:20 <Sgeo_> "I'm also not making any profit off of this, therefore fair use, so HA!"
00:10:30 <Sgeo_> http://www.youtube.com/watch?v=vfecIEHoYN0
00:10:53 <ais523> is that some sort of variant on "no copyright intended"?
00:12:02 <zzo38> I am trying to decide some of the symbols to use for various Haskell stuff by http://hackage.haskell.org/package/base-unicode-symbols but some seems missing or difficult a bit
00:12:30 <zzo38> Such as, there is no asterism symbol
00:12:42 <zzo38> Although maybe I can try to fake it.
00:14:04 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:16:26 -!- sebbu has quit (Read error: Connection reset by peer).
00:16:43 -!- BeholdMyGlory has joined.
00:16:59 -!- sebbu has joined.
00:16:59 -!- sebbu has quit (Changing host).
00:16:59 -!- sebbu has joined.
00:26:34 -!- Nisstyre has quit (Ping timeout: 276 seconds).
00:27:58 -!- MDude has joined.
00:28:23 -!- Nisstyre has joined.
00:28:24 -!- Nisstyre has quit (Max SendQ exceeded).
00:29:10 -!- Nisstyre has joined.
00:32:04 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:35:41 -!- BeholdMyGlory has joined.
00:37:41 -!- CakeProphet has joined.
00:37:41 -!- CakeProphet has quit (Changing host).
00:37:41 -!- CakeProphet has joined.
00:45:39 -!- Sgeo_ has changed nick to Sgeo.
00:48:58 -!- BeholdMyGlory has quit (Remote host closed the connection).
00:51:45 -!- NihilistDandy has joined.
00:55:31 -!- BeholdMyGlory has joined.
01:11:54 -!- evincar has joined.
01:12:27 -!- cheater_ has joined.
01:15:49 -!- cheater__ has quit (Ping timeout: 250 seconds).
01:25:45 <zzo38> How should the _ of Haskell be typeset using mathematical symbols?
01:26:13 <ais523> I don't know, I don't think I've seen the equivalent used in a mathematical paper
01:26:21 <ais523> unless it was quoting a Haskell-like language, in which case it used _
01:28:50 <zzo38> I don't think just using _ looks very good in a mathematical paper, or at least not as is. Also, what symbol should represent the $ operator in the printout?
01:29:23 <NihilistDandy> zzo38: You should probably just wrap the expression in parentheses if you're not going to use $
01:29:46 <ais523> zzo38: you should replace $ by parens, I think
01:30:29 <zzo38> I can use a dollar sign on printout too, I guess; I should not make it change everything around it instead of typesetting the operator itself.
01:30:31 <NihilistDandy> And I suppose _ could be thought of as "all x", though it's really not that clear cur
01:32:05 <NihilistDandy> Or define some meaningless variable and let people know ahead of time
01:33:37 <zzo38> Maybe I should just use a rule box that touches or is slightly below the baseline, although the default underscore symbol is not so good for mathematics
01:34:29 <zzo38> I am using Plain TeX.
01:35:05 <NihilistDandy> Apparently lhs2tex has some pretty useful modes of operation that might save you some trouble
01:35:28 <oerjan> aha, the formalism i came up with is essentially what conway called a collatz function. and he proved it TC by reduction - from fractran :P
01:35:33 <zzo38> To use this program the thing you have to do is simply to type at the top of the file: \input prettybird
01:35:51 <zzo38> And now you can typeset Haskell program with TeX.
01:35:55 -!- CakeProphet has quit (Ping timeout: 276 seconds).
01:39:12 <zzo38> Anyways lhs2tex is both an external program and is using LaTeX rather than Plain TeX.
01:41:44 <zzo38> There is also lambdaTeX but it is not quite right either, it is using Helvetica fonts and PDF rather than Computer Modern, AMS, and DVI.
01:46:28 <zzo38> Currently I have no support for pragmas and Template Haskell, although I hope to add those things in the future.
01:47:11 <oerjan> <ais523> zzo38: you should replace $ by parens, I think <-- not all uses of $ can be replaced by parens. in particular ($ x) sections may not have any obvious replacement.
01:48:44 <ais523> zzo38: clearly you should replace $ by that invisible function application character from Unicode
01:48:44 <oerjan> ok there's one alternative: (`id` x)
01:48:58 <oerjan> but i doubt that's an improvement :P
01:50:17 <oerjan> i had the impression there was already a sort of convention for how to print haskell in papers, implemented with hs2tex (although zzo38 won't like it because it is latex)
01:50:46 <zzo38> ais523: I don't think so because it is not Unicode and $ has different operator precedence so it should not be made invisible. For now I just made it use the dollar sign.
02:13:12 <evincar> zzo38: You could go culture-neutral and use the currency sign (U+00A4).
02:15:33 -!- BeholdMyGlory has quit (Remote host closed the connection).
02:16:06 <pikhq_> Or go in favor of our glorious Chinese overlords and use ¥.
02:17:31 -!- micahjohnston has quit (Ping timeout: 276 seconds).
02:17:45 -!- NihilistDandy has quit (Ping timeout: 250 seconds).
02:17:46 <ais523> I thought the yen was a Japanese currency?
02:17:52 <ais523> (and why is that not on compose Y =?)
02:18:49 <pikhq_> And ¥ is the symbol for both the JPY and the CNY.
02:19:12 -!- NihilistDandy has joined.
02:19:18 <ais523> oh, it has to be capital Y
02:19:29 <ais523> but it can be done either way round
02:19:50 <pikhq_> And makes sense for approximately the same reason. "Yuan" obviously can be shortened to "Y", and sticking = through it makes it look like other currency symbols.
02:20:15 -!- NihilistDandy has quit (Client Quit).
02:20:16 <pikhq_> Though "yen" *itself* makes no sense for the Japanese currency; it's "en" in Japanese.
02:20:42 -!- NihilistDandy has joined.
02:22:19 -!- BeholdMyGlory has joined.
02:27:06 -!- micahjohnston has joined.
02:28:01 -!- tyoc213 has joined.
02:28:58 <evincar> pikhq_: It's a holdover from the old misguided Portuguese transliteration.
02:30:15 <evincar> Japanese /e/ used to be pronounced [je].
02:31:11 <zzo38> evincar: That that was probably also before grid-ordered Japanese alphabet is invented, I think? Is it?
02:33:09 <zzo38> Can something similar to https://devlabs.linuxassist.net/projects/texnicard/wiki/Dangelo_Programming_Language be invented by making a preprocessor for Haskell that does some of these things?
02:33:50 <evincar> Uh, the old transliteration is 16th century. I don't know which collation (gojuon or iroha) is earlier. Probably iroha.
02:34:12 <pikhq_> evincar: Japanese /ye/ used to be a real phoneme, rather.
02:34:21 <pikhq_> Iroha is the old collation.
02:34:35 <lament> iroha is the only reason japanese doesn't suck
02:34:40 <zzo38> evincar: I think yes it is iroha is the old order, now it is usually grid order being used.
02:35:05 -!- BeholdMyGlory has quit (Remote host closed the connection).
02:35:06 <pikhq_> And no longer usable, due to both containing morae that don't exist and missing morae that now do exist.
02:35:39 <evincar> Well, /we/ and /e/ were both [je], but it's always been dialectic.
02:35:50 <zzo38> But must have someone added the new ones into iroha order in case you want to use that one?
02:36:07 <evincar> Smart, maybe, but also resourceful when it comes to searching to back up hunches.
02:36:13 <pikhq_> zzo38: No. "Iroha order" is actually a poem.
02:36:26 <evincar> Right. Like the origin of solfege.
02:36:30 <itidus20> i may well be the only one present who doesn't know the word iroha
02:36:30 <ais523> it's a poem that's used to order the alphabet
02:36:42 <pikhq_> "Iroha" being the first three morae of the poem.
02:36:49 <ais523> itidus20: I didn't know the word, but I knew what it was referring it to, so I figured out the meaning of the word from context
02:36:50 <zzo38> Then can you make a modified version of the poem?
02:37:01 <pikhq_> Also the name of the poem.
02:37:22 <pikhq_> zzo38: It'd require translation.
02:37:37 <zzo38> Does it use many words that no longer exist?
02:37:56 <evincar> No, but sound changes have happened in the intervening years.
02:37:59 <pikhq_> Rather, it uses a radically different orthography.
02:38:36 <pikhq_> When "kyō" (kiȳô) was written "kefu" (kehu).
02:38:59 -!- Patashu has quit (Ping timeout: 240 seconds).
02:39:15 <zzo38> I suppose that is why grid order is used now, since it is more logical and does not require any poem to be made up, and that you can easily see how to fit everything into the grid
02:39:30 <pikhq_> It also completely omits voicing marks (which were inferred from context)
02:40:23 <Lymee> wait, then how do you use iroha with voiced mora?
02:40:41 <pikhq_> "Iroha" only orders the basic kana, sans "n".
02:40:59 <pikhq_> (which was not distinct from "mu" at the time)
02:42:45 -!- BeholdMyGlory has joined.
02:43:07 <zzo38> If you want to include voice in the order, you can use Unicode order or "almost Unicode order" (both are basically like grid order).
02:44:21 <zzo38> (Almost Unicode order moves the characters added to later versions into the places where they would belong if they were all added in the first version of Japanese character encoding (whether Unicode or not))
02:45:05 <pikhq_> The later characters only exist for the sake if Ainu.
02:45:09 <zzo38> (Actually I just invented that now. I don't know about other thing)
02:46:25 <zzo38> Actually MS Gothic includes the letters named "VU", "SMALL KA", and "SMALL KE", all are at the end.
02:47:53 <zzo38> This is what I mean; I don't mean Ainu. Although if you did use the Ainu characters as well, then you would move those too.
02:49:29 <pikhq_> I think those wouldn't really be in the collation...
02:49:46 <pikhq_> I don't think I've ever seen xka or xke in use at all.
02:50:24 <oerjan> <itidus20> i may well be the only one present who doesn't know the word iroha <-- no.
02:50:32 <pikhq_> It'd be a bit like collating ſ.
02:53:51 <zzo38> I suppose if you want to you can also order "ka" equal to "ga" (which, as far as I know, should work in both grid order and in iroha order). But then you would still need a tiebreaker
02:53:56 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
02:54:18 <zzo38> What is the most common way in Japanese?
02:54:23 -!- BeholdMyGlory has joined.
02:55:31 <pikhq_> Voicing as tiebreaker.
02:56:01 <pikhq_> Or collate via radicals, for kanji-only collation.
02:56:07 <pikhq_> (e.g. in a kanji dictionary)
02:56:32 <zzo38> Unicode order just orders "ga" directly after "ka" which can work. You can also do this with almost Unicode order if you prefer.
02:58:10 <zzo38> TeXnicard's collation algorithm allows some level of customizability, and is sophisticated enough to order roman numerals from I to XXXIX but it cannot do everything. (But you could add a separate collation field if you needed to)
02:58:35 <zzo38> One limitation is it only supports alphabets up to 64 letters
02:59:34 <evincar> I'd be interested to read literature on why Unicode uses fully composed characters rather than radical-based composition.
02:59:50 <evincar> It'd make the CJK section so much neater.
02:59:54 <evincar> And allow for new characters.
03:00:33 <evincar> I guess they didn't want to deal with specifying a hanzi/kanji/hanja layout algorithm. :P
03:00:41 <zzo38> Yes, I know. Although you could use double cell encoding to overcome this limit, and then use ligatures or whatever else to do printout, and exporting, as well as converting single to double when doing input.
03:01:05 <itidus20> hmm .. does 64 include uppercase?
03:01:29 <Sgeo> Hussie, Phantom_Hoover update
03:01:46 <zzo38> itidus20: Uppercase are considered equal to lowercase, with the exception that lowercase are not considered when collating roman numerals.
03:01:56 <lambdabot> Phantom_Hoover: You have 1 new message. '/msg lambdabot @messages' to read it.
03:02:20 -!- Phantom_Hoover has quit (Quit: Leaving).
03:03:17 -!- BeholdMyGlory has quit (Remote host closed the connection).
03:03:25 <zzo38> These are simply the conventions of Plain TeXnicard; if you override it, you can make it not consider anything for roman numerals, or treat punctuation as letters, or whatever you want.
03:04:55 <zzo38> (And you are not even required to use Plain TeXnicard; you can also write your own metatemplate, although Plain TeXnicard does set up a lot of the things that primitive TeXnicard does not have, and that includes even such things as function composition.)
03:06:29 <zzo38> Here is the Plain TeXnicard metatemplate file: http://repo.or.cz/w/TeXnicard.git/blob_plain/HEAD:/system/plain.cards
03:10:45 <zzo38> It also includes the stuff for numbers to words, plurals, table operations, string operations, function composition, delayed execution, and more. It is currently incomplete.
03:12:46 -!- azaq23 has quit (Ping timeout: 252 seconds).
03:16:46 -!- mustelo has left ("Ex-Chat").
03:17:11 -!- azaq23 has joined.
03:38:45 <zzo38> How should https://devlabs.linuxassist.net/projects/texnicard/wiki/Dangelo_Programming_Language be done: * A preprocessor to Haskell * An entirely new programming language * Something in between * Other (please specify)
03:44:47 <zzo38> (You could discuss in the wiki as subitems of the corresponding items, or in IRC)
03:50:25 <evincar> Not a clue. Needs more information.
03:52:27 <zzo38> What more information? Please write the request for mandatory more information
03:53:01 -!- micahjohnston has quit (Ping timeout: 255 seconds).
03:54:22 -!- nisstyre_ has joined.
03:55:13 -!- Nisstyre has quit (Disconnected by services).
03:55:45 -!- nisstyre_ has changed nick to Nisstyre.
04:01:31 -!- tyoc213 has quit (Remote host closed the connection).
04:02:42 -!- micahjohnston has joined.
04:10:09 * oerjan looks at http://www.haskell.org/pipermail/haskell-cafe/2011-August/094464.html and wonders why the _hell_ there is still software in 2011 which is susceptible to the mailbox "From " bug
04:10:43 <oerjan> hm i guess that list page may simply be that old...
04:10:59 <Sgeo> mailbox "From " bug?
04:11:45 <oerjan> Sgeo: that message was cut off. evidence from other times this has happened is that it's because the next line starts with "From " which in certain mailbox formats signifies a new message
04:16:41 <zzo38> Probably it would be better to do something such as using the ASCII "file separator" control character?
04:16:55 -!- variable has quit (Ping timeout: 258 seconds).
04:17:08 <oerjan> oh i'm sure there are lots of more modern mail formats
04:18:20 -!- kwertii has joined.
04:18:32 <NihilistDandy> Just sign everything and differentiate emails by the ends of the signature blocks~
04:19:22 <oerjan> um the problem isn't that the problem is hard to solve, it's that it's still unsolved in whatever generates that webpage
04:20:26 <zzo38> For SMTP messages, just a line with . by itself will work.
04:20:34 <oerjan> NihilistDandy: UNKNOWN MODIFIER
04:20:39 <zzo38> But it might not necessarily be SMTP
04:21:25 <oerjan> ...which presumably means they'll have the same problem if someone makes a message with such a line in it
04:22:03 <oerjan> NihilistDandy: INSUFFICIENTLY DISTINGUISHABLE FROM SCREEN DUST
04:25:01 <oerjan> insufficiently distinguishable from blank space in my putty font
04:26:01 <oerjan> istr i tried that and it was worse
04:28:13 <oerjan> ok it does show in dejavu
04:28:33 <oerjan> the problem is that the font _looks_ so horrendous i cannot bear it
04:29:46 <oerjan> but not better than courier new
04:29:57 <oerjan> i told you, it looks horrendous
04:30:13 <NihilistDandy> Courier New is for people who type screenplays at Starbucks
04:30:38 <NihilistDandy> Unicode: U+1F4A9 (U+D83D U+DCA9), UTF-8: F0 9F 92 A9
04:31:26 <monqy> why is this a thing
04:31:39 <oerjan> now why putty shows unknown characters as blank space, the least useful representation imaginable, i don't know
04:32:48 <oerjan> and that seems to be the case for dejavu as well, it shows nothing for your pile
04:33:02 <NihilistDandy> oerjan: I think they only place they even exist is on OS X
04:34:26 <ais523> oerjan: I get /two/ unknown character squares for NihilistDandy's pile of poo
04:34:43 <ais523> so I think Konversation (and thus Qt) is misreading the encoding for the astral plane character
04:35:51 <zzo38> My computer does not show unknown characters as blank space on PuTTY. Probably it is due to the font
04:37:17 <oerjan> how else would i connect from windows to my ancient linux shell account
04:37:48 <ais523> PuTTY is one of the most competent terminal/telnet/ssh systems on Windows
04:37:54 <oerjan> (when i got it, it was not linux, but a VAX)
04:38:07 <ais523> it works just fine on Linux too; there's just less of a reason to use it
04:40:21 <zzo38> In my case I am connecting to an IRC client running on my own computer by using PuTTY.
04:41:38 -!- variable has joined.
04:51:24 -!- kwertii has quit (Quit: bye).
04:51:48 -!- kwertii has joined.
05:03:11 -!- MDude has changed nick to MSleep.
05:13:17 -!- lament has quit (Ping timeout: 260 seconds).
05:20:31 -!- zzo38 has quit (Remote host closed the connection).
05:23:04 -!- invariable has joined.
05:25:09 -!- variable has quit (Ping timeout: 258 seconds).
05:25:19 -!- invariable has changed nick to variable.
05:27:41 -!- oerjan has quit (Quit: Good night).
05:28:01 <Sgeo> HUSSSSSSSSSSSSSSSIIIIIIIIIIIIIIIIIEEEEEEEEEEEEEEEEEE http://www.formspring.me/mspadventures/q/224752048803967489
05:40:07 -!- evincar has quit (Quit: leaving).
05:59:55 -!- kwertii has quit (Quit: bye).
06:27:52 -!- nooga has joined.
06:35:12 -!- nooga has quit (Ping timeout: 250 seconds).
06:39:27 -!- jcp has quit (Read error: Connection reset by peer).
06:40:07 -!- jcp|1 has quit (Read error: Connection reset by peer).
06:46:51 -!- jcp has joined.
06:51:56 -!- javawizard has joined.
07:39:15 <ais523> <Wikipedia> The following is an example of a program in a hypothetical BASIC dialect with "COMEFROM" instead of "GOTO". An actual example in INTERCAL would be too difficult to read.
07:39:49 <Lymee> Let's write an example then~
07:41:03 <ais523> hmm, I always thought the sarcasm mark was meant to come after a full stop
07:41:06 <ais523> rather than replace it
07:41:12 <ais523> so it became .~ in full
07:41:27 * ais523 wonders if SARCASM MARK will ever be added to Unicode
07:43:11 <ais523> heh, double-comefrom creates a new process in Perl as well as INTERCAL
07:44:05 <ais523> also, it finds comefroms by regexing the code, which is beautiful
07:58:34 -!- azaq23 has quit (Quit: Leaving.).
07:58:40 -!- ais523 has quit (Remote host closed the connection).
08:14:14 -!- nooga has joined.
08:41:27 -!- monqy has quit (Quit: hello).
08:55:04 -!- variable has quit (Read error: Operation timed out).
09:06:24 -!- nooga has quit (Ping timeout: 250 seconds).
09:30:10 <Vorpal> #8 0x00000000 in ?? ()
09:30:10 <Vorpal> #9 0xf71ae233 in __libc_start_main () from /usr/lib32/libc.so.6
09:30:31 <Vorpal> how can 0x00000000 be #8?
09:31:08 <Vorpal> full weird backtrace: http://sprunge.us/GNHA
09:31:39 <fizzie> It's reconstructed from the stack; if you get it mangled, it can be anything.
09:32:16 <Vorpal> so useless for figuring out this crash
09:32:28 <Vorpal> I don't even have the source to the thing, it from the humble indie bundle
09:34:24 <fizzie> The tail end of the stack trace can be pretty weird anyways. If I gdb /bin/echo and break at _start, it's
09:34:25 <fizzie> #0 0x00007ffff7ddcaf0 in _start () from /lib64/ld-linux-x86-64.so.2
09:34:25 <fizzie> #1 0x0000000000000001 in ?? ()
09:34:25 <fizzie> #2 0x00007fffffffe99f in ?? ()
09:34:25 <fizzie> #3 0x0000000000000000 in ?? ()
09:34:44 <fizzie> The 0x00..01 is a bit weird place too.
09:35:02 -!- Sgeo has quit (Ping timeout: 250 seconds).
09:44:22 -!- Taneb has joined.
09:52:37 -!- jcp|other has joined.
09:53:52 -!- jcp has quit (Ping timeout: 240 seconds).
09:54:17 -!- javawizard has quit (Ping timeout: 260 seconds).
09:55:57 -!- jcp has joined.
10:07:42 -!- Taneb has quit (Ping timeout: 260 seconds).
10:21:26 -!- FireFly has joined.
10:35:44 -!- Taneb has joined.
10:36:33 <Taneb> Can anyone tell me how to convert a string such as "1.2" to a float in Python?
10:42:12 <Taneb> Or JavaScript. JavaScript is good too
10:46:14 <fizzie> float("1.2") in Python.
10:47:01 <fizzie> parseFloat("1.2") in JavaScript.
10:51:40 -!- itidus20 has quit (Ping timeout: 276 seconds).
11:40:20 -!- Patashu has joined.
11:45:17 <Taneb> I think I may have just implemented Numberwang.
11:48:06 -!- jcp|other has quit (Read error: Operation timed out).
11:48:23 -!- jcp|other has joined.
11:49:24 -!- jcp has quit (Ping timeout: 252 seconds).
11:49:42 -!- elliott has joined.
11:51:58 -!- jcp has joined.
11:54:20 -!- Phantom_Hoover has joined.
11:54:34 -!- jcp|other has quit (Read error: Operation timed out).
11:55:21 <elliott> 19:59:23: <Deewiant> I also have a Japanese keyboard so my backspace is smaller
11:55:39 -!- jcp|other has joined.
11:55:43 <Taneb> Well, I broke Python's maximum recursion depth
11:56:09 <elliott> Deewiant: So I discovered lines later :-P
11:56:12 <elliott> Taneb: That's trivial to do
11:56:19 <elliott> Just increase it until Python segfaults
11:56:33 <Deewiant> It's not the exact one I linked, but the key layout is the same
11:56:35 <Taneb> I meant I reached it.
11:56:39 <Taneb> How do I increase it?
11:56:42 <Taneb> Or even remove it?
11:56:43 -!- jcp has quit (Ping timeout: 252 seconds).
11:57:13 <elliott> Taneb: sys.setrecursionlimit
11:57:22 <elliott> you really can segfault python by putting it too high, though
11:58:00 -!- derrik has joined.
11:58:05 <Taneb> Numberwang implementation
11:58:15 <Taneb> Anything but recursion is very tricky
11:58:32 -!- derrik has quit (Client Quit).
11:59:05 -!- derrik has joined.
11:59:11 <elliott> 21:27:22: <oerjan> zzo38: oh. yes it is possible to download lambdabot, and i think even to use it from inside ghci. but i've not tried it myself, and istr people complaining that it is awkward sometime in the past
11:59:23 <elliott> well, GOA has been started to be maintained again recently
12:00:27 <elliott> 23:58:09: <zzo38> I use the equal sign for the Haskell == instead since that is the one testing equality, so == print out using the equal sign.
12:00:35 <elliott> I suggest you use \equiv for (==) instead
12:01:38 <Phantom_Hoover> Man, I had a dream last night when I ate my t, r and h keys.
12:01:58 -!- jcp has joined.
12:02:07 <elliott> 01:47:11: <oerjan> <ais523> zzo38: you should replace $ by parens, I think <-- not all uses of $ can be replaced by parens. in particular ($ x) sections may not have any obvious replacement.
12:02:10 <Phantom_Hoover> But then I realised that eating my keys was a stupid thing to do so it must have been a dream.
12:02:17 <elliott> not only that but _dollar sign is not always equivalent to parens_
12:02:24 <elliott> under presence of extensions
12:04:19 <fizzie> Phantom_Hoover: Don't you mean "o no!"?
12:04:24 <Taneb> Dammit. Python won't let me set the recursion limit to "Bloody high"
12:05:02 <fizzie> Phantom_Hoover: But how can you THINK an 'h' without the key?
12:05:26 <Phantom_Hoover> fizzie, I still had the key, it was just in my stomach.
12:05:58 <elliott> 04:10:09: * oerjan looks at http://www.haskell.org/pipermail/haskell-cafe/2011-August/094464.html and wonders why the _hell_ there is still software in 2011 which is susceptible to the mailbox "From " bug
12:05:58 <elliott> I see no obvious problem with the page?
12:06:38 <Taneb> Can a manual stack work with non-tail end recursion
12:06:40 <elliott> Phantom_Hoover: google mbox
12:07:03 <elliott> oh, is the problem that the mail is truncated?
12:07:10 <elliott> oh, oerjan says so two lines later
12:07:21 <elliott> 04:11:45: <oerjan> Sgeo: that message was cut off. evidence from other times this has happened is that it's because the next line starts with "From " which in certain mailbox formats signifies a new message
12:07:33 <elliott> well, it is usually the mail sender's obligation to include the > or space or . before "From"
12:07:40 <elliott> I guess many clients don't now
12:07:49 <elliott> but anything naive that archives it in mbox...
12:07:56 <elliott> I imagine mailman is naive in this sense :P
12:08:43 <elliott> 04:33:02: <NihilistDandy> oerjan: I think they only place they even exist is on OS X
12:08:43 <elliott> 04:33:05: <NihilistDandy> And only in Lion
12:08:43 <elliott> 04:33:22: <NihilistDandy> And probabaly Japan
12:08:43 <elliott> 04:33:27: <NihilistDandy> Everywhere
12:08:43 <elliott> 04:33:31: <NihilistDandy> http://en.wikipedia.org/wiki/Emoji
12:08:51 <elliott> NihilistDandy: um no, emoji are an official part of Unicode.
12:08:57 <elliott> and supported by many devices
12:09:19 <elliott> I think that OS X is the only desktop-computer-or-laptop operating system that ships with fonts containing emoji characters, though
12:09:29 <elliott> 04:34:43: <ais523> so I think Konversation (and thus Qt) is misreading the encoding for the astral plane character
12:09:57 <elliott> oh, yeah, gmail also has emoji
12:15:59 <NihilistDandy> Exist as in "actually sahow up in the system's Unicode tables"
12:16:49 <elliott> Define system's Unicode tables
12:17:01 <elliott> Everything supporting a recent enough Unicode will know the names of the emoji characters
12:18:34 <elliott> I'm not being obstinate, I have no clue how you think Apple are giving emoji special support beyond adding a category for them in the character map, and shipping an appropriate font
12:21:01 <NihilistDandy> "shipping an appropriate font" probabaly encapsulates the idea best
12:21:30 <NihilistDandy> In that it is the only sensible way of thinking about it
12:23:48 -!- BeholdMyGlory has joined.
12:25:44 -!- BeholdMyGlory has quit (Read error: Connection reset by peer).
12:26:12 -!- BeholdMyGlory has joined.
12:42:33 <Taneb> I think this program is outputting an endless stream of "iiiiiit's NUMBERWANG!"
12:42:55 <Taneb> AND it just crashe
12:44:18 <Taneb> I think as Numberwang stands it's a push-down automaton.
12:44:22 <Taneb> Maybe not even that.
12:44:29 <Taneb> Gonna change the spec
12:58:21 -!- Sgeo has joined.
13:32:40 -!- augur has quit (Read error: Connection reset by peer).
13:56:01 -!- derrik has quit (Read error: Connection reset by peer).
13:58:08 -!- derrik has joined.
14:07:19 -!- derrik has quit (Ping timeout: 258 seconds).
14:09:02 -!- derrik has joined.
14:16:48 -!- derrik has quit (Read error: Connection reset by peer).
14:17:28 -!- lament has joined.
14:18:58 -!- derrik has joined.
14:19:23 -!- copumpkin has quit (Quit: Computer has gone to sleep.).
14:32:02 -!- derrik has quit (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.17/2009122204]).
14:42:38 <Patashu> http://www.esolangs.org/wiki/Funciton this is a beautiful language
14:43:19 <elliott> yes; if only the author didn't want to take over our wiki :)
14:43:54 <Patashu> let him, if he makes beautiful languages like Funciton :D
14:44:08 <elliott> he tried to become an admin while repeatedly demonstrating lack of understanding of MediaWiki (he wanted to make us a new skin, but didn't seem to actually know how that was done), and then when Graue didn't reply to his email told us we should take control of the domain and move the wiki to something under his control
14:44:16 <elliott> because of Graue's horrible injustness
14:44:25 <elliott> cue silence until he went away
14:45:01 <lament> the diagrams look broken
14:45:14 <Patashu> are you on a unicode browser?
14:45:32 <Patashu> *a browser in which unicode is properly displayed
14:45:48 <lament> the diagrams look broken though
14:46:52 <lament> or are they supposed to look broken?
14:47:55 <Patashu> they're meant to look like boxes and lines
14:48:02 <Patashu> if you don't see boxes and lines then your browser sucks & dead
14:48:31 <lament> they do look like lines and boxes, but in a non-fixed-width font
14:49:22 <lament> i choose to blaim the programming language
14:49:45 -!- FireFly has quit (Remote host closed the connection).
14:50:33 -!- FireFly has joined.
14:54:11 -!- copumpkin has joined.
15:10:16 -!- variable has joined.
15:19:17 -!- variable has quit (Ping timeout: 258 seconds).
15:39:59 -!- Sgeo has quit (Ping timeout: 255 seconds).
15:40:45 -!- Patashu has quit (Ping timeout: 252 seconds).
15:41:17 -!- yorick has quit (Quit: leaving).
15:47:21 -!- Sgeo has joined.
15:58:09 -!- yorick has joined.
16:10:37 -!- BeholdMyGlory has quit (Remote host closed the connection).
16:11:55 -!- lament has quit (Ping timeout: 252 seconds).
16:12:08 -!- MigoMipo has joined.
16:13:15 -!- BeholdMyGlory has joined.
16:13:17 -!- BeholdMyGlory has quit (Changing host).
16:13:17 -!- BeholdMyGlory has joined.
16:20:37 -!- copumpkin has quit (Ping timeout: 250 seconds).
16:28:08 -!- copumpkin has joined.
16:34:29 -!- Taneb has quit (Ping timeout: 250 seconds).
16:47:28 -!- derrik has joined.
16:52:12 -!- derrik has quit (Client Quit).
16:54:34 -!- derrik has joined.
16:57:07 <Gregor> I suggest we s/liquidity/fluidity in the topic.
16:57:16 <Gregor> I suggest we s/liquidity/fluidity/ in the topic.
16:57:19 -!- zzo38 has joined.
16:59:11 -!- Gregor has set topic: Don't enjoy unlocking the matrix of fluidity, please. | wget -s 42 redpill | man mouth | http://codu.org/logs/_esoteric/.
17:06:55 -!- derrik has quit (Quit: ChatZilla 0.9.87-rdmsoft [XULRunner 1.9.0.17/2009122204]).
17:24:15 -!- atome has joined.
17:24:27 -!- atome has quit (Client Quit).
17:27:15 -!- derrik has joined.
17:32:25 -!- derrik has quit (Ping timeout: 258 seconds).
17:39:12 <zzo38> I think LLVM also includes an example program for compiling Brainfuck codes into LLVM codes
17:46:47 <pikhq_> Yeah, but it's not exactly any good.
17:47:09 <pikhq_> It doesn't give LLVM enough information to do anything *useful*.
17:48:12 <zzo38> But possibly a better one can be written, that checks some stuff at first before sending to LLVM, to allow more information to be sent
17:50:51 <pikhq_> I'd imagine the biggest win would be eliminating as many pointer movements as possible.
17:51:43 <pikhq_> Which would allow LLVM to do meaningful optimisation.
17:54:09 -!- derrik has joined.
17:59:08 <pikhq_> Dow Jones is down another 450 so far...
17:59:43 <pikhq_> Aaaah, the sound of the world going up in flames.
18:00:34 <zzo38> Can there be a LLVM transform pass that is used for eliminating pointer movements?
18:01:06 <pikhq_> Probably, but it's only really useful *for Brainfuck*. Nothing else really does that.
18:01:39 <pikhq_> It's not so much that it's impossible as it is a heavily language-specific optimisation.
18:01:41 -!- zzo38 has quit (Remote host closed the connection).
18:04:21 <Phantom_Hoover> <pikhq_> Aaaah, the sound of the world going up in flames.
18:05:15 <pikhq_> Phantom_Hoover: Ongoing one.
18:05:58 <pikhq_> Phantom_Hoover: The past week or so the markets have been going down 3 to 5% each day.
18:06:44 <Phantom_Hoover> /r/worldnews says nothing, and you and Reddit share a lot of common ground.
18:08:12 <pikhq_> ATM the DJI is at 11,000, lowest it's been for a couple years now.
18:09:00 -!- monqy has joined.
18:09:12 <fizzie> Well, you know... "/r/Worldnews is for major news from around the world except US-related news (especially US politics)"
18:09:45 <fizzie> news.google.com top story "US Stocks Tumble as Rating Downgrade Sparks Concern" + see all 5060 sources.
18:27:22 -!- Taneb has joined.
18:56:01 -!- MSleep has changed nick to MDude.
19:04:34 -!- ais523 has joined.
19:16:14 -!- zzo38 has joined.
19:22:19 <elliott> monqy: Are you... up for that.
19:22:37 <monqy> I forgot to do the introduction thing
19:22:39 <elliott> Like, it is going to be my year pretty much soon.
19:23:55 <monqy> getting dwarf fortresse
19:24:24 <elliott> monqy: I'm... not having an extreme feeling of confidence about handing the fort over to you.
19:24:29 <elliott> And that's saying something because I'm terrible.
19:24:51 <monqy> I do not have any confidence at all about handling the fort
19:25:02 <Taneb> That makes it more Fun, elliott
19:25:07 <elliott> monqy: Do you even want the fort.
19:25:17 <elliott> Taneb: Succession fortresses... generally try and avoid Fun.
19:25:28 <monqy> i might want to find out if i like dwarf fortresse first
19:25:45 <elliott> Phantom_Hoover: They avoid complete and utter Fun on only the fourth person.
19:25:47 <Phantom_Hoover> They just make sure it won't be boring when it happens.
19:26:13 <elliott> monqy: You'll probably want to set a lot of time aside to do it, since you have to complete a year in, like, no more than a week before we'll all get impatient. :p
19:26:45 <monqy> ok I'll skip my turn for now at least
19:27:11 <elliott> I guess we should just loop back to Taneb?
19:27:31 <monqy> what happened to Lymee
19:28:02 <elliott> monqy: About ten big holes in our Minecraft base happened to Lymee.
19:36:22 -!- oerjan has joined.
19:38:17 -!- augur has joined.
19:40:19 <oerjan> 04:38:43 <elliott> not only that but _dollar sign is not always equivalent to parens_
19:40:22 <oerjan> 04:38:50 <elliott> under presence of extensions
19:40:24 <oerjan> 04:38:51 <elliott> (rank-n types)
19:40:39 <oerjan> my impression was that turning $ to parentheses usually makes it type _better_, though
19:40:49 <elliott> oerjan: yes, but this is for a pretty-printer...
19:41:00 <elliott> imagine trying to write an article on the pitfalls of $
19:41:09 <elliott> oh, and not to mention that you can of course rebind ($).
19:42:00 <shachaf> Rank-2 types ruin everything.
19:42:18 <oerjan> i wonder if there's some caleskellish generalization you could do to $
19:42:21 <lambdabot> Couldn't match expected type `m GHC.Bool.Bool'
19:42:26 <shachaf> > let x = id runST in x (return True)
19:43:03 <oerjan> > ($) runST (return True)
19:43:08 <zzo38> Maybe the pointer movement optimization can be used in some cases for some parts of some C programs, too, I think.
19:43:35 <shachaf> $ is also not equivalent to parentheses on the type level.
19:43:41 <shachaf> Fortunately you can say type a :$ b = a b
19:43:45 <zzo38> What is rank-2 types?
19:44:02 <shachaf> Battle-hardened types that have been promoted.
19:45:21 <oerjan> zzo38: types for functions that take arguments that can be used with more than one type
19:45:57 <copumpkin> and if those functions themselves are rank-2
19:46:01 <copumpkin> then the outer one is rank-3 and so on
19:46:45 <NihilistDandy> Sgeo: How the hell do Ruby programmers deal with that syntax
19:46:49 <zzo38> copumpkin: What about "in general"?
19:47:22 <oerjan> > let g h = (h 'a', h True); g :: Functor f => (forall t. t -> f t) -> (f Char, f Bool) in (g (:[]), g Just)
19:47:23 <lambdabot> (("a",[True]),(Just 'a',Just True))
19:48:31 <zzo38> Is there any kind of auto-unbox mode that can be used with GHC?
19:50:35 <elliott> zzo38: GHC tries to be smart about unboxing.
19:52:11 <olsner> right, so the auto-unbox mode is just -O2 :)
19:52:15 <oerjan> !egobot {-# LANGUAGE UnboxStrictFields #-} main = print "Was this the name?"
19:52:27 <oerjan> !haskell {-# LANGUAGE UnboxStrictFields #-} main = print "Was this the name?"
19:52:32 <elliott> -funbox-strict-fields, it seems
19:52:34 <EgoBot> /tmp/input.17681.hs:1:13: unsupported extension: UnboxStrictFields
19:52:45 <olsner> sometimes you need to poke and prod GHC to show it the way though
19:52:50 <oerjan> what, no LANGUAGE? i guess it has no semantic effect
19:54:41 <zzo38> olsner: So, -O2 does that. Does that include such things as enumerations?
19:54:43 <oerjan> i think there's also some UNPACK pragma, is there not. but both those are about unboxing in data types
19:54:44 <ais523> presumably pragmas with no semantic effect potentially have sandbox-security bugs, and give no benefit
19:54:53 <elliott> zzo38: enumerations won't be boxed anyway
19:55:11 <zzo38> elliott: OK. I didn't know that at first, but now I know.
19:55:12 <elliott> ais523: UNPACK pragma has no semantic effect
19:57:07 <zzo38> I mean, like, can it replace Int with Int# automatically wherever it is possible without damaging anything or resulting in an invalid program? As well as things such as considering "data" commands.
19:58:26 <zzo38> Another thing, is there any option to tell it to use 8-bit Char instead of unicode?
19:58:44 <oerjan> <Taneb> Well, I broke Python's maximum recursion depth
19:58:51 <elliott> zzo38: see Word8 in Data.Word
19:59:03 <elliott> "I mean, like, can it replace Int with Int# automatically wherever it is possible without damaging anything or resulting in an invalid program?" <-- GHC tries to do this
19:59:05 <oerjan> if this is for numberwang, i suspect you are either doing it wrong, or it would have broken anyway
19:59:06 <elliott> it's not as good as a human of course :)
19:59:39 <zzo38> "Enumerations don't count as single-constructor types as far as GHC is concerned, so they don't benefit from unpacking when used as strict constructor fields, or strict function arguments. This is a deficiency in GHC, but it can be worked around."
19:59:55 <olsner> oerjan: python's maximum recursion depth is probably 3 or something, to discourage using functions and other fancy stuff
20:00:16 <oerjan> (the latter if you had an infinite recursion of 3 commands)
20:00:24 <elliott> zzo38: oh, well right, I thought you meant enumeration values themselves
20:00:36 <elliott> but yeah you can just do that yourself :-P
20:00:59 <elliott> data Foo = Foo ... {-# UNPACK #-} !SomeEnum ...
20:02:10 <pikhq_> olsner: Well, yeah, can't have programmers daring to abstract things.
20:02:20 <oerjan> elliott: um if ghc thinks enumerations are the same as a general data type, it shouldn't be able to do UNPACK either...
20:02:59 <elliott> oerjan: yeah that sucks a bit
20:03:00 <oerjan> or does it allocate the maximum size for it?
20:03:07 <elliott> you can just use an unboxed int though :P
20:03:22 <elliott> oerjan: no, surely you can unpack multiple-constructor data types
20:03:26 <elliott> I mean, even Integer is that
20:04:12 <zzo38> I suppose one way you can do it is if you have C preprocessor macros
20:04:24 <oerjan> elliott: actually there's no f way you can unpack integer
20:05:52 <oerjan> maybe it could manage to unpack only the small integer case
20:06:54 <elliott> <elliott> Can data types with more than constructor be {-# UNPACK #-}'d?
20:07:09 <elliott> oerjan: hmm Integer _could_ be unpacked then
20:07:16 <elliott> if the ByteArray# consists of e.g. (length, pointer)
20:07:18 <oerjan> remarkable reading comprehension, that nominolo
20:07:25 <elliott> that Int# is probably size
20:07:39 <oerjan> elliott: "more than constructor"
20:09:06 <elliott> "I would like to introduce you to a very general algorithm that I like to call the Gauss-Jordan-Floyd-Warshall-McNaughton-Yamada algorithm. With this simple algorithm (an algorithm whose implementation is not very much longer than its name)"
20:11:01 <elliott> oerjan: <thoughtpolice> well, GHC does not complain when you do it. data T = T {-# UNPACK #-} !Int | S {-# UNPACK #-} !Int compiles without complaint. looking at core...
20:11:27 <oerjan> elliott: less reading comprehension
20:11:34 <elliott> <nominolo> thoughtpolice: it will unpack the Ints. But you can't do data Foo = Foo {-# UNPACK #-} !T | Bar ...
20:12:19 <zzo38> How can you tell GHC to make only a LLVM code output?
20:12:54 <elliott> zzo38: http://www.haskell.org/ghc/docs/latest/html/users_guide/separate-compilation.html; see -keep-llvm-files
20:13:04 <Vorpal> <elliott> "I would like to introduce you to [...]" <-- where is that from? :D
20:13:10 <elliott> Vorpal: http://r6.ca/blog/20110808T035622Z.html
20:13:16 <elliott> zzo38: Not sure how to turn off generating executables entirely, but
20:14:11 <olsner> Vorpal: googling would've told you btw
20:14:42 -!- variable has joined.
20:16:01 <elliott> <nominolo> What would you expect this to be unpacked to? Note that A and B in this case will be static pointers.
20:16:02 <elliott> <elliott> Well, obviously a T could be represented by an Int# or similar, but yeah
20:16:02 <elliott> <nominolo> GHC can only unpack into Words not bits, so you can't turn Foo !T !T into a bitset.
20:16:02 <elliott> <nominolo> So, Foo !T !T already is represented (almost) the same way as Foo Int# Int#
20:16:07 <elliott> zzo38: so enumerations _are_ unboxed
20:16:09 <elliott> for all practical purposes
20:16:15 <elliott> they're still pointers, but they're static
20:16:23 <elliott> <nominolo> it's just that A and B don't map to 0 and 1, but to 0x342421000 and 0x349024092 or so
20:16:54 -!- GreaseMonkey has joined.
20:16:54 -!- GreaseMonkey has quit (Changing host).
20:16:54 -!- GreaseMonkey has joined.
20:17:34 -!- oerjan has set topic: Don't enjoy unlocking the matrix of fluoride, please. | wget -s 42 redpill | man mouth | http://codu.org/logs/_esoteric/.
20:18:11 <oerjan> i find this change has a certain purity of essence
20:19:27 -!- derrik has quit (Quit: nite on earth).
20:33:32 <zzo38> OK, put fluoride if you want to put that instead
20:46:26 <Sgeo> elliott, Phantom_Hoover update Hussie
20:46:42 -!- Taneb has quit (Read error: Connection reset by peer).
20:48:36 <zzo38> When compiling the Haskell program to LLVM codes, it looks like generating a lot of complicated stuff even for a short program, and with a higher -O number it makes larger LLVM file
20:58:52 <zzo38> (The program does not have a main function, I don't know if this has to do something with it too)
21:02:34 -!- MigoMipo has quit (Remote host closed the connection).
21:03:59 <pikhq_> TIL GCC follows Greenspun's Tenth Rule.
21:04:18 <ais523> pikhq_: which one is that? the one about reading mail?
21:04:26 <pikhq_> ais523: No, about containing a Lisp.
21:04:40 <pikhq_> In this case, *in its build system*.
21:05:06 <ais523> clearly, we should implement a mailreader as an llvm plugin
21:05:36 <Vorpal> <pikhq_> In this case, *in its build system*. <-- what function does it fill
21:06:03 <Vorpal> NihilistDandy, pun not intended
21:06:07 <pikhq_> Vorpal: Generating a giant table of details about every CPU type for an architecture.
21:06:12 <pikhq_> Y'know the -march= stuff?
21:06:26 <Vorpal> pikhq_, done before tarballs?
21:06:58 <Vorpal> pikhq_, so where is the interpreter?
21:07:13 <Vorpal> pikhq_, oh, which one did they use
21:07:20 <fizzie> ais523: The reversed question mark (U+2E2E, ⸮) has been proposed to be used to "indicate that a sentence should be understood at a second level (e.g. irony, sarcasm, etc.)."
21:07:29 <pikhq_> An ad hoc, informally-specified, bug-ridden, slow one.
21:07:34 * Sgeo listens to a bizzare song
21:07:46 <ais523> but it's hardly commonly used
21:08:11 <Vorpal> fizzie, proposed by who, to whom?
21:08:48 <fizzie> It's from an older "percontation point ( ؟ )" notation used to denote rhetorical questions, "invented by Henry Denham in the 1580s -- its use died out in the 17th century".
21:09:37 <fizzie> Vorpal: The sarcasm/irony variant was "proposed by the French poet Alcanter de Brahm (alias Marcel Bernhardt) at the end of the 19th century"; doesn't quite seem to have caught on -- this was all from http://en.wikipedia.org/wiki/Irony_punctuation
21:09:52 <elliott> it's like rain on your wedding day⸮
21:10:14 <fizzie> (It's next to the interrobang in the "uncommon typography" section of the punctuation template, that's how I happened to come across it.
21:10:47 <ais523> heh, compose works on ‽ even if it doesn't really work on a whole load of other things I'd expect it to work on
21:10:57 <fizzie> But the page lists a "doubt point", a "certitude point", an "acclamation point", an "authority point", an "indignation point" and a "love point" punctuation mark too.
21:11:09 <elliott> ais523: I recommend creating your own compose file
21:11:14 <elliott> you can derive one from the original, it has an include statement
21:11:17 <elliott> and they can go in your home directory
21:11:19 <ais523> elliott: I think I should
21:11:24 <elliott> requires restarting the X server to check changes, though
21:11:33 <elliott> personally I'd start one from scratch though, the defaults suck really badly
21:12:07 <Vorpal> <elliott> ais523: I recommend creating your own compose file <-- iirc gtk by default ignores it
21:12:12 <Gregor> http://www.qwantz.com/index.php?comic=2016 <-- the mouseover text for this comic = greatest ever
21:12:17 <Vorpal> you need to change input method
21:12:37 <ais523> Vorpal: well, I introduced the compose key via Gnome's keyboard preferences dialog
21:12:49 <ais523> presumably that tells X about it, but it probably tells GTK stuff about it too
21:12:55 <elliott> Vorpal: I think that was accurate as of like five years ago, dude.
21:13:09 <fizzie> It wasn't as long as all that.
21:13:28 <fizzie> It was quite recently still that GTK had hardcoded composition tables.
21:13:33 <Vorpal> elliott, uh, tried a few months ago, you need to set X input
21:13:33 <fizzie> Don't know about the current status though.
21:13:38 <elliott> Five years ago, two seconds, what's the difference.
21:13:41 <elliott> Vorpal: On how new a distro?
21:13:52 <Vorpal> elliott, arch, so bleeding edge at the time
21:13:59 <Vorpal> elliott, I guess in january
21:17:00 -!- GreaseMonkey has quit (Quit: The Other Game).
21:17:02 <fizzie> The relevant Ubuntu page -- https://help.ubuntu.com/community/ComposeKey#Compose%20key -- at least hasn't been edited and still says GTK has their silly in-code hardcoded table (unless the input method is swibbed to XIM, after which ~/.XCompose works); though help.ubuntu.com isn't exactly stranger to outdated documentation either.
21:17:08 -!- CakeProphet has joined.
21:17:08 -!- CakeProphet has quit (Changing host).
21:17:08 -!- CakeProphet has joined.
21:23:58 -!- azaq23 has joined.
21:32:31 <Sgeo> Phantom_Hoover, "Doctor" theme usually applies to John?
21:32:45 <Sgeo> I hope you immediately see why I ask
21:33:05 -!- nisstyre_ has joined.
21:33:07 -!- Nisstyre has quit (Ping timeout: 260 seconds).
21:35:19 -!- nisstyre_ has changed nick to Nisstyre.
21:47:09 -!- micahjohnston has quit (Quit: leaving).
22:07:04 <oerjan> > let coll2bf l = ">>+[-" ++ foldr branch "++<<[->+<]" l ++ ">[-<+>]>]"; branch (a,b,c) s = "[-<" ++ replicate a '+' ++ ">]" ++ replicate c '+' ++ '<' : replicate b '+' ++ "<[->" ++ replicate b '-' ++ '[' : replicate a '-' ++ ">+<]>" ++ replicate c '-' ++ s ++ "]" in coll2bf $ (5,0,1):[(5,i,0)|i<-[1..3]]
22:07:05 <lambdabot> ">>+[-[-<+++++>]+<<[->[----->+<]>-[-<+++++>]<+<[->-[----->+<]>[-<+++++>]<++...
22:07:24 <elliott> oerjan: is it actually working :D
22:07:27 <oerjan> !haskell let coll2bf l = ">>+[-" ++ foldr branch "++<<[->+<]" l ++ ">[-<+>]>]"; branch (a,b,c) s = "[-<" ++ replicate a '+' ++ ">]" ++ replicate c '+' ++ '<' : replicate b '+' ++ "<[->" ++ replicate b '-' ++ '[' : replicate a '-' ++ ">+<]>" ++ replicate c '-' ++ s ++ "]" in coll2bf $ (5,0,1):[(5,i,0)|i<-[1..3]]
22:07:30 <EgoBot> ">>+[-[-<+++++>]+<<[->[----->+<]>-[-<+++++>]<+<[->-[----->+<]>[-<+++++>]<++<[->--[----->+<]>[-<+++++>]<+++<[->---[----->+<]>++<<[->+<]]]]]>[-<+>]>]"
22:08:31 <oerjan> ^def test bf ,[>>+[-[-<+++++>]+<<[->[----->+<]>-[-<+++++>]<+<[->-[----->+<]>[-<+++++>]<++<[->--[----->+<]>[-<+++++>]<+++<[->---[----->+<]>++<<[->+<]]]]]>[-<+>]>]<<.,]
22:08:40 <ais523> wow, elliott is so much less annoying than eliot
22:08:54 <elliott> fungot: tz what are you doing.................
22:08:55 <fungot> elliott: again in a fresh memo later ( from the capsule's perspective) jade would retrieve that beta. the kid's out of his mind games
22:08:57 <ais523> elliott: there's been an eliot pestering me in another channel
22:09:05 <elliott> ais523: are you sure that's not me
22:09:06 <ais523> and the difference in name spelling really surprised me
22:09:12 <oerjan> well it's doing _something_, but not exactly what it should. oh wait...
22:09:13 <ais523> elliott: not completely sure, but it seems likely
22:09:19 <ais523> you wouldn't spell your name like that
22:09:23 <elliott> "wait, that guy normally has twice those letters! just as irritating though."
22:09:29 <oerjan> !haskell let coll2bf l = ">>+[-" ++ foldr branch "++<<[->+<]" l ++ ">[-<+>]>]"; branch (a,b,c) s = "[-<" ++ replicate a '+' ++ ">]" ++ replicate c '+' ++ '<' : replicate b '+' ++ "<[->" ++ replicate b '-' ++ '[' : replicate a '-' ++ ">+<]>" ++ replicate c '-' ++ s ++ "]" in coll2bf $ (5,0,1):[(4,i,0)|i<-[1..3]]
22:09:32 <EgoBot> ">>+[-[-<+++++>]+<<[->[----->+<]>-[-<++++>]<+<[->-[---->+<]>[-<++++>]<++<[->--[---->+<]>[-<++++>]<+++<[->---[---->+<]>++<<[->+<]]]]]>[-<+>]>]"
22:09:54 <oerjan> ^def test bf ,[>>+[-[-<+++++>]+<<[->[----->+<]>-[-<++++>]<+<[->-[---->+<]>[-<++++>]<++<[->--[---->+<]>[-<++++>]<+++<[->---[---->+<]>++<<[->+<]]]]]>[-<+>]>]<<.,]
22:10:15 <oerjan> > map ord "K123A567F9"
22:10:19 <ais523> NihilistDandy: I think he's solving it at the moment
22:10:22 <oerjan> NihilistDandy: see the above
22:10:49 <oerjan> it compiles a general "collatz function" to 3-cell bf
22:11:11 <ais523> oerjan: for the implementation of Fractran, presumably
22:11:43 <oerjan> ais523: conway in fact proved that fractran reduces to collatz functions
22:12:06 <elliott> oerjan: so two cells are definitely not TC, rihgt?
22:12:11 <ais523> well, it's moderately obvious
22:12:28 <oerjan> elliott: um i don't see how they could be, you cannot end a loop without zeroing one of them
22:12:28 <ais523> fractran corresponding to collatz functions, that is
22:12:29 <elliott> ais523: so was :caret() underload being subtc
22:13:08 <ais523> elliott: you must find esolang programming really tricky
22:13:16 <ais523> regular programming too, come to think of it
22:13:35 <ais523> because you're missing eight numbers, and the corresponding punctuation marks
22:13:37 -!- zzo38 has left.
22:13:50 <elliott> ais523: oh, I'm practically used to that by now
22:13:54 <oerjan> the restriction here is that the first elements of the triple must be > 0 and the second >= 0. but that's automatic for fractran programs of positive fractions
22:14:06 <elliott> ais523: I just google "<number name> in decimal" and "asterisk" and "exclamation mark" and copy from there
22:14:20 <ais523> hey, do you use a compose key?
22:14:23 <elliott> my browser search history is going to be somewhat useless once I get these keys back
22:14:31 <elliott> ais523: I considered it multiple times but, hey, it's only temporary, right? :-P
22:14:31 <oerjan> (the last element is just a flag whether to halt for that remainder)
22:14:34 <ais523> that seems like the obvious thing to put keybindings on
22:14:49 <ais523> I know that my first computer was a BBC Micro for which the B and Y keys didn't work
22:14:50 <elliott> do manta rays have skeletons
22:15:06 <ais523> I used to write short BASIC programs to print them, and then keybind them to function keys
22:15:27 <ais523> (actually, I could copy/paste the B from the splashscreen, but not the Y)
22:16:09 <ais523> (so I generally converted Z to a number, subtracted 1, and converted it back to a string)
22:17:01 <elliott> "Elephant two has been encased in cooling lava." --DF
22:17:56 <ais523> elliott: in your game?
22:18:08 <olsner> elephant two takes a cooling bath in the cooling lava
22:19:21 <olsner> lava turns sandboxes into pools!
22:21:11 <ais523> wouldn't lava turn sandboxes to glass?
22:22:07 <olsner> sure, if the lava isn't hot enough - otherwise, a pool of molten glass?
22:42:05 -!- cheater_ has quit (Ping timeout: 255 seconds).
22:44:07 <Phantom_Hoover> http://www.guardian.co.uk/uk/blog/2011/aug/08/london-riots-third-night-live
22:52:30 <fizzie> The local "7pm news" TV program had interviewed a random Finn in London who had managed to get tangentially involved (was in a taxi, rioters broke the windows and stole a bag, or something like that), and coincidentally it turned out the interviewee was an old school acquaintance of my wife's.
22:52:50 <fizzie> Small world, like they say.
22:53:41 <ais523> there have been riots in Birmingham too, but it's not like the ones in London
22:54:01 <ais523> it seems like a group of people have got organised and are rioting and looting a bit
22:54:10 <ais523> then running away when the police arrive and doing it again elsewhere
22:54:28 <ais523> it's probably the same people who were trying to organise gangs of shoplifters as some sort of complex protest against the government's economic policy
22:55:57 -!- cheater_ has joined.
22:56:12 <lambdabot> forall a. (a -> Bool) -> [a] -> Maybe a
22:57:27 <fizzie> > find (==2) [1,2,3,2,1]
22:57:33 <fizzie> I suppose it's the first 2?
22:58:31 <Lymee> > find (>2) [1,2,3]
22:58:45 <Lymee> > find (>2) [1,3,2]
22:58:54 <Lymee> > find (>=2) [1,2,3]
22:58:54 <elliott> <fizzie> Small world, like they say.
22:58:58 <Lymee> > find (>=2) [1,3,2]
22:59:15 <elliott> `addquote <ais523> it's probably the same people who were trying to organise gangs of shoplifters as some sort of complex protest against the government's economic policy
22:59:18 <HackEgo> 570) <ais523> it's probably the same people who were trying to organise gangs of shoplifters as some sort of complex protest against the government's economic policy
22:59:43 <ais523> elliott: I'm not sure if you were aware of them; it may have been specific to Birmingham
22:59:57 <ais523> anyway, I'm the right age and other vital statistics to be in their target audience
23:00:05 <ais523> I just have completely the wrong sort of personality
23:00:44 <elliott> it is really weird to be tired at midnight and to have slept the previous night
23:00:47 <ais523> wrong political opinions, too
23:00:56 <ais523> elliott: go to sleep, then
23:01:05 <ais523> you may currently be on a normal sleep schedule
23:01:08 <ais523> that's not something to fight
23:01:17 <ais523> and it's got to happen by chance /sometimes/
23:01:31 <elliott> ais523: well, waking up at half six is a bit hardcore for me, even if it classes as normal
23:01:41 <elliott> also I don't think eighteen hours of sleep a day is usual
23:01:41 <ais523> I don't mind waking up that early
23:01:52 <ais523> and I've managed 18 hours of sleep before now
23:02:10 <ais523> I did around 16, with a 2-hour break, last month
23:02:24 <elliott> or, well, I woke up at around eight pm
23:02:33 <elliott> but I didn't do much other than try and get back to sleep
23:02:53 <elliott> maybe my sleep schedule has become so bizarre it's wrapped around and become normal again
23:06:08 <CakeProphet> I'd say that's the basic layout of a quine, in essence.
23:20:56 <Lymee> !python a='"""';b="""print "a='"+a+"';b="+a+b+a+';exec b'""";exec b
23:20:57 <EgoBot> a='"""';b="""print "a='"+a+"';b="+a+b+a+';exec b'""";exec b
23:23:53 <CakeProphet> !python print((lambda x:x%x)("print ((lambda x:x%%x)(%r)" )
23:23:54 <EgoBot> File "<stdin>", line 2
23:25:20 <fizzie> Well, for completeness.
23:25:28 <ais523> elliott: I ended up completing Hammerfight, by the way; the end seems a little arbitrary
23:25:42 <ais523> and the game itself is very glitchy
23:25:55 <ais523> not only does it crash randomly, I managed to deal INT_MIN damage at one point, several times in a row
23:26:13 <ais523> also, at least twice it's forgotten my entire inventory due to a crash, but rebuilding from there wasn't too hard
23:26:40 <ais523> now I'm trying to work out if its "official" name is "The History of Hammerfight" or not
23:27:24 <Lymee> !python a='"""';b="""exec "a='"+a+"';b="+a+b+a+';exec b'""";exec b
23:27:26 <EgoBot> Traceback (most recent call last):
23:27:28 <Deewiant> I'm pretty sure it just went from Hammerfall to Hammerfight
23:27:59 <ais523> well, "The History of Hammerfight" is what it's called on the title screen
23:28:10 <ais523> the problem is, the title screen is typically kind-of official
23:28:35 <ais523> melee-fighting helicopters is one of the best concepts for a game ever, though
23:29:10 <oerjan> ^def test bf ,[[>>+[-[-<+++++>]+<<[->[----->+<]>-[-<++++>]<+<[->-[---->+<]>[-<++++>]<++<[->--[---->+<]>[-<++++>]<+++<[->---[---->+<]>++<<[->+<]]]]]>[-<+>]>]<<.,]
23:29:29 <ais523> it has various other problems; as far as I can tell, armour's main drawback actually benefits its user
23:29:30 <Phantom_Hoover> <ais523> melee-fighting helicopters is one of the best concepts for a game ever, though
23:29:44 <ais523> so there's no reason not to max it out
23:29:57 <ais523> Phantom_Hoover: setting the mouse DPI right down helps
23:30:09 <Phantom_Hoover> I just sent the rock into orbit around me and hoped for the best.
23:30:12 <ais523> and is basically essential if playing with a touch pad
23:30:27 <oerjan> ^bf >>+[-[-<+++++>]+<<[->[----->+<]>-[-<++++>]<+<[->-[---->+<]>[-<++++>]<++<[->--[---->+<]>[-<++++>]<+++<[->---[---->+<]>++<<[->+<]]]]]>[-<+>]>]
23:30:31 <elliott> I haven't played any of the bundle games yet
23:30:31 <ais523> sending the rock into orbit is what you're meant to do; it becomes increasingly difficult to do in time as the game goes on
23:30:35 <elliott> been too busy wrecking the fortress
23:30:37 <Deewiant> It does have a bunch of issues (although I haven't run into any actual bugs since it was named Hammerfight), but it's still awesome
23:30:45 <ais523> because hitting something often generally knocks it out of orbit
23:31:08 <ais523> and you often want it to swing in a particular direction
23:31:21 <oerjan> ^def test bf ,[>>+[-[-<+++++>]+<<[->[----->+<]>-[-<++++>]<+<[->-[---->+<]>[-<++++>]<++<[->--[---->+<]>[-<++++>]<+++<[->---[---->+<]>++<<[->+<]]]]]>[-<+>]>]<<.,]
23:31:35 <elliott> Deewiant: Naming something Hammerfight is indeed a very effective way to avoid bugs
23:32:01 <Phantom_Hoover> elliott, And Yet It Moves is OK but it doesn't have any real draw.
23:32:19 <ais523> Deewiant: I get random crashes, occasional loss of the entire inventory, audio randomly fading out (and coming back about a minute later), damage numbers sometimes not coming up for a while, cutscenes (especially the victory cutscene) randomly lasting up to several minutes longer than it should
23:32:29 <ais523> Phantom_Hoover: AYIM is a pretty typical puzzle platformer, as far as I can tell
23:32:50 <ais523> it's one of the better examples of those that I've seen
23:32:51 <Deewiant> I used to get random crashes but as said, not any more
23:33:01 <ais523> some people like puzzle platformers
23:33:30 <ais523> Phantom_Hoover: I haven't played that on
23:33:33 -!- Patashu has joined.
23:33:38 <elliott> I should probably download one of the games from the second one I got gifted
23:33:42 <ais523> elliott: anyway, when Vorpal talks about VVVVVV requiring reflexes, what he means is that it requires precision
23:33:43 <elliott> I'm kind of bad at doing things.
23:33:57 <ais523> reflexes are mostly unimportant; precision is, as is memorized timings
23:33:59 <elliott> ais523: well, obviously; it's Vorpal
23:34:26 <elliott> I can only assume his hands are so big that he basically just presses the arrow keys as one amorphous block
23:34:30 <ais523> the trinket normally referred to as "Veni, Vidi, Vici" took me about half an hour, that's pretty much just memorising timings
23:34:36 <elliott> and if it starts going in the wrong direction, he smashes it wildly until it stops
23:34:41 <fizzie> AYIM was all "can't find a suitable OpenGL visual" on both of the two computers I tried it on. But according to the forums it's a known bug, and there's a fixed build already in beta-testing.
23:34:41 <ais523> and that's how long it took me to get the timing down
23:34:42 <elliott> which he interprets as requiring reflexes
23:34:51 <fizzie> ais523: The up-and-down one?
23:34:52 <Deewiant> Did you get a minute in the super gravitron?
23:35:04 <ais523> the gravitron /does/ need reflexes
23:35:08 <elliott> hmm, I'd like to say I find games based on memorisation and repetition boring, but that's bullshit, Dot Action four lyfe
23:35:10 <ais523> but that's about the only point in the game that does
23:35:18 <Patashu> it could be said that -learning- the timings requires reflexes
23:35:30 <elliott> what's Cogs like, nobody's mentioned Cogs yet
23:35:31 <fizzie> I suck at the gravitron, I have survived something like 15 seconds in it at most.
23:35:39 <elliott> oh, it's a generic-looking puzzle game
23:35:41 <ais523> elliott: it crashes my GPU
23:35:46 <elliott> `addquote <fizzie> I suck at the gravitron, I have survived something like 15 seconds in it at most.
23:35:47 <HackEgo> 571) <fizzie> I suck at the gravitron, I have survived something like 15 seconds in it at most.
23:35:52 <ais523> fizzie: regular, or super?
23:35:59 <ais523> for super, that's comparable with mine
23:36:03 <elliott> ais523: what about, umm, Atom Zombie Smasher
23:36:06 <ais523> and that's using the trick where you can wrap the map
23:36:09 <ais523> elliott: haven't played it
23:36:25 <Deewiant> After a few weeks of trying I got 90ish seconds, IIRC
23:36:42 <ais523> although, that's weeks of trying, so it's plausible
23:36:58 <elliott> I guess Braid is meant to be great but I will have to suspend my knowledge that the developer is stupid (or at least he made a talk linked on reddit that said a bunch of stupid things about programming)
23:37:09 <Deewiant> Not like several hours a day active trying, though
23:37:12 <ais523> I think VVVVVV suffers from running out of things to do with its idea, too
23:37:15 <ais523> that's probably why it's so short
23:37:27 <oerjan> winghci frustration: i don't see a way to end stdin input to :main
23:37:34 <Deewiant> These days I'll typically get 30ish seconds
23:37:34 <ais523> (I don't really like to be able to complete a game I've bought 100% in under 4 hours in my first playthrough)
23:37:54 <fizzie> elliott: I just played Cogs' "End Credits" level. It's... well, it looks nice, and even though it's just block-sliding (which I usually hate) I still managed to slog through.
23:37:56 <ais523> oerjan: does newline control-Z newline work?
23:38:04 <elliott> I know Gish is good, because oklopol likes it
23:38:06 <ais523> what's the basis of Cogs?
23:38:51 <elliott> what's, ummm, what's Samorost 2 like
23:39:13 <fizzie> ais523: The usual "grid of squares with one empty, you push them around" except what's on the squares are cogs and pipes, and you need to slide them so that the thing works.
23:39:26 <oerjan> oh well it's just main = interact $ collatzToBF . read anyway, so since the parts work...
23:39:32 <elliott> Phantom_Hoover: that's in the first bundle
23:39:36 <elliott> so if you got the second you'd have it
23:39:48 <ais523> so it's basically two independent puzzle games combined
23:39:56 <elliott> Phantom_Hoover: oh, that one doesn't even count
23:40:07 <ais523> you need to work out where the parts go, and once you have, to solve a fifteen puzzle to put them there
23:40:17 <ais523> I don't normally like that sort of design
23:40:37 <fizzie> ais523: There's chimes you sometimes need to ring, and cogs of different size to speed things up, and sometimes there's stuff on the other side of the squares too, and sometimes you need to mix different colors of steam, and sometimes the squares are on a cylinder, and so on.
23:40:39 <elliott> ais523: it might be fun if you could automate the sliding :)
23:40:46 <fizzie> So it has some variation in there.
23:40:59 <elliott> also is world of goo any good, i played the demo years ago and it was boring
23:41:17 <ais523> I haven't played it, but I've seen both playthroughs and speedruns of it
23:41:28 <fizzie> But not enough to get the "OCD" flags on all levels.
23:41:29 <ais523> the plot's a bit surreal, and the level design is relatively interesting
23:41:34 <Deewiant> WoG was okay, not that great IMO
23:41:43 <ais523> but I don't think it's massively difficult, and gets a bit repetitive after a while
23:41:54 <ais523> that was my issue with Crayon Physics, most of the levels can be solved much the same way
23:42:07 <elliott> WILL I LEAVE ANY GAME UNASKED ABOUT
23:42:11 <ais523> I think the whole point of the game is to find alternate solutions, but there are only four or five strategies you can use
23:42:34 <ais523> I love my "elegant" solution to the sideways-H level, though
23:42:48 <ais523> which uses one pivot, and one approximately-spiral shaped thing to rotate on it
23:42:53 <fizzie> It's not massively difficult to actually get through the Goo, but some of the OCD achievements require quite inspired solutions.
23:43:28 <elliott> fizzie: that just leads to me considering the OCD achievements as the _real_ victory
23:43:30 <elliott> because the real game was too easy
23:43:31 <Phantom_Hoover> There's a reason Newtonian controls are largely neglected.
23:43:44 <elliott> Phantom_Hoover: ASTEROIDS II TREASON
23:44:19 <Phantom_Hoover> If two bubbles come into contact, the larger leeches from the smaller.
23:44:56 <ais523> and what's the goal of the game? combat? "platform"-style?
23:45:11 <Phantom_Hoover> ais523, it varies; normally it's to become the largest.
23:45:19 <MDude> That doens't quite make sense unless concentration of solute is somehow proportional to size.
23:45:22 <ais523> competing against other bubbles trying to do the same thing?
23:45:47 <MDude> In fact it makes no sense at all unless that's the case.
23:46:09 <ais523> well, I assume that in Osmos, bubbles are intelligent
23:46:15 <Phantom_Hoover> So if you got larger than a certain fraction it was pretty simple to do the rest.
23:46:23 <ais523> and rules for passing of intelligence between bubbles are presumably reasonably arbitrary
23:46:29 <Sgeo> <luke-jr> cyth: except JP2 wasn't a pope
23:46:30 <Deewiant> ais523: Some levels have competitors; some have gravity in which just survival gets tricky
23:46:32 <ais523> or, at least, don't have to reflect real-life physics
23:47:13 <Phantom_Hoover> What makes the controls annoying is that the system means you have fairly limited delta-v, which is pretty hard to get your head around.
23:47:34 <Deewiant> I didn't find it difficult to get used to
23:47:38 <ais523> Phantom_Hoover: I think that's meant to be heavy armour's drawback in Hammerfight
23:47:45 <ais523> but you can counteract it just by moving the mouse faster
23:48:09 <Deewiant> You can move noticeably faster without armour, still
23:48:21 <Deewiant> Assuming there's a maximum speed at which you can move your mouse
23:48:39 <fizzie> I did see a non-singular number of people playing Limbo last weekend, and it looked vaguely interesting, at least from a distance.
23:48:44 <ais523> I suppose that, with armour, there's no need to move massively fast
23:48:54 <ais523> when in trouble, I just held down the shield button until I wasn't in trouble any more
23:49:01 <Sgeo> NihilistDandy, http://en.wikipedia.org/wiki/Sedevacantism
23:49:08 <ais523> (you do move noticeably slower while shielding, so slowly that it's basically impossible to swing a weapon)
23:49:18 <Deewiant> Limbo was fun but it suffers from ais's "100% in under 4 hours" problem
23:49:35 <Phantom_Hoover> ais523, delta-v is a rocket thing and it means more or less what it says on the tin.
23:49:37 <ais523> and I'm not even good at computer games!
23:50:04 <Deewiant> Armour doesn't help against the piles of explosives the enemies start throwing at you in the arena
23:50:06 <ais523> well, maybe I am, but I don't think of myself as being good at computer games
23:50:31 <Deewiant> So the "hold the shield button" tactic doesn't always work that well
23:50:37 <ais523> but if you wait for the whole pile to be thrown then run, you're typically just stunned rather than taking damage
23:50:47 <ais523> you don't hold the shield button then, because you're nowhere near the enemies when that happens
23:51:02 <Deewiant> Depends on the explosives in question
23:51:15 <Deewiant> The powder keg or whatever it is is one that you really want to distance yourself from as soon as you see it
23:51:32 <ais523> nobody's tried one of those against me in the arena
23:51:54 <ais523> the hardest level for me to beat was the one with the crazy alien boss that has an attack that damages at any range, and also shoots you away from the boss
23:52:11 <ais523> you can buy it in the special equipment shop in the hall, sometimes
23:52:17 <ais523> it's random whether it's there or not
23:52:23 <Deewiant> I don't think I've looked at the shop in years
23:52:24 <ais523> it costs 30 gold, pretty expensive
23:52:46 <ais523> it's how I beat the boss in question, two HP restoratives I've forgotten the name of and a siege bomb
23:52:54 <ais523> together with repeatedly hitting it with an Empire
23:53:08 <ais523> (I set the bomb off by deliberately crashing into it with the boss next to it)
23:53:09 <Phantom_Hoover> I mean, I couldn't clear the tutorial without basically doing a sequential zerg rush.
23:53:32 <Deewiant> The only stuff I've bought from the shop is armour in an emergency, I think
23:53:40 <Phantom_Hoover> Or abusing the fact that you can pilot the dropships and they make a very nice improvised missile.
23:53:44 <Deewiant> I've never used the more exotic stuff
23:53:58 <ais523> the HP restoratives are basically extra lives
23:54:05 <Sgeo> What game is this?
23:54:06 <ais523> if you would die, you get an extra 100 health instead
23:56:38 <ais523> oh, another annoyance: if a stone mace breaks, the chain is left attached to you, and you can't drop it