00:07:52 -!- Jafet1 has quit (Quit: Leaving.). 00:13:47 -!- hagb4rd has quit (Ping timeout: 272 seconds). 00:14:50 -!- augur_ has quit (Remote host closed the connection). 00:23:30 -!- Jafet has joined. 00:24:10 http://slbkbs.org/fluids.jpg 00:26:11 water: used by nazis 00:26:21 also good filename 00:28:24 * shachaf watched Dr. Strangelove the other day. 00:31:09 I think you can use intonation with Famicom audio? Make the highest note have period 90. 00:32:27 (Actually 180, because of a left shift; and because it adds two, the number you need to put into the register is actually 89.) 00:34:31 And even that is not quite right; the actual period is 1440. 00:38:27 -!- Jafet has quit (Max SendQ exceeded). 00:40:32 -!- Jafet has joined. 00:42:23 kmc, see I was about to say something about almonds containing cyanide which was used in the gas chambers 00:42:59 But then I realised that I don't actually know if they used cyanide, and I'm not googling "nazi death chamber gas" from this IP. 00:43:09 heh 00:43:16 I'm probably on enough watchlists already. 00:43:43 yeah, zyklon b is a preparation of hydrogen cyanide 01:08:41 -!- Arc_Koen has quit (Quit: Arc_Koen). 01:13:56 -!- kinoSi has quit (Read error: Connection reset by peer). 01:14:25 -!- kinoSi has joined. 01:40:30 I am making "Elemental Solitaire" game on Famicom. 01:41:32 I already got some of it working, including CHR ROM, PRG ROM, music, deck shuffling, title screen, sprites flashing. Now I will add some more, until it is completed. 01:53:11 I have repeatedly called PubNub "PubSub" 01:53:11 :( 01:53:25 Oh, apparently not in here 01:53:31 zzo38: Why stop when it is completed? 01:54:34 To make the program not too large to fit on NROM. 01:54:47 -!- augur has joined. 01:54:56 -!- augur has quit (Remote host closed the connection). 01:58:16 -!- oerjan has joined. 02:10:34 -!- DHeadshot has joined. 02:13:01 -!- DHeadshot has quit (Read error: Connection reset by peer). 02:13:06 -!- DH____ has joined. 02:14:08 So far it uses less than 2K for PRG ROM and CHR ROM together. When it is finished, it might be less than 4K. 02:46:53 LAMBDA LAMBDA LAMBDA LAMBDA APPLY APPLY ONE MORE THAN ONE MORE THAN ONE MORE THAN ZERO 02:46:56 ONE MORE THAN ZERO APPLY APPLY ONE MORE THAN ONE MORE THAN ZERO ONE MORE THAN ZERO ZERO 02:47:26 BADGER BADGER BADGER BADGER BADGER BADGER BADGER BADGER BADGER BADGER BADGER BADGER MUSHROOM MUSHROOM 02:47:59 \ \ \ \ ((3 1)((2 1) 0)) 02:48:56 i'm trying to decode Real Fast Nora's Hair Salon 3: Shear Disaster Download because Koen and I are confused about the intended application order 03:07:16 -!- Jafet has quit (Ping timeout: 255 seconds). 03:14:04 -!- jiella has quit (Quit: Leaving.). 03:26:56 -!- Jafet has joined. 03:29:36 http://tvtropes.org/pmwiki/pmwiki.php/Main/UnwinnableByDesign The situation described under "Why Would You Even Do That?" is not good enough. There should be some objects which you need to vaporize with this button, as well as those which you need to keep. 03:35:21 -!- Jafet has quit (Ping timeout: 244 seconds). 03:55:04 -!- Phantom_Hoover has quit (Remote host closed the connection). 03:59:55 NetHack's not on that page :( 04:07:50 If you have an account, add it, if you think it belong, isn't it? 04:28:33 -!- augur has joined. 04:28:43 -!- augur has quit (Read error: Connection reset by peer). 04:29:06 -!- augur has joined. 05:01:36 > 4^4 05:01:37 256 05:05:34 glad that's settled 05:14:00 -!- kinoSi has quit (Read error: Connection reset by peer). 05:14:05 > chr <$> [72, 101, 108, 108, 115, 44, 32, 119, 111, 114, 108, 100, 33, 10] 05:14:06 "Hells, world!\n" 05:14:19 hm... 05:14:28 -!- kinoSi has joined. 05:14:34 i assume i made a mistake 05:17:12 lol 05:18:22 > chr <$> [72, 101, 108, 108, 32, 109, 111, 44, 32, 119, 111, 114, 108, 100, 33, 10] 05:18:23 "Hell mo, world!\n" 05:18:28 agh 05:22:17 > chr <$> $ ord <$> "Hello, world!\n" 05:22:17 : parse error on input `$' 05:22:35 > (chr <$>) $ ord <$> "Hello, world!\n" 05:22:36 "Hello, world!\n" 05:22:40 :p 05:27:59 > chr <$> ['\0'..] 05:28:00 Couldn't match expected type `GHC.Types.Int' 05:28:00 against inferred type ... 05:28:12 Oh, du 05:28:16 > chr <$> [0..] 05:28:17 "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\S... 05:30:15 > chr.[0..]==['\0'..] 05:30:17 False 05:30:24 Well, of course. 05:30:39 > take(length['\0'..]).chr.[0..]==['\0'..] 05:30:40 Couldn't match expected type `[a]' 05:30:40 against inferred type `GHC.Types... 05:30:59 > take(length['\0'..])(chr.[0..])==['\0'..] 05:31:02 True 05:34:40 > ['\0'..] 05:34:41 "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\S... 05:35:07 > chr [0..] == ['\0'..] 05:35:08 Couldn't match expected type `GHC.Types.Int' 05:35:08 against inferred type ... 05:35:32 > map chr [0..] == ['\0'..] 05:35:33 False 05:35:39 Oh 05:35:56 > uncurry(==).zip(chr.[0..])['\0'..] 05:35:58 [True,True,True,True,True,True,True,True,True,True,True,True,True,True,True... 05:35:58 Sgeo_: [0..] is unbound, ['\0'..] is bound. :) 05:36:03 > and.uncurry(==).zip(chr.[0..])['\0'..] 05:36:04 Couldn't match expected type `[GHC.Bool.Bool]' 05:36:04 against inferred typ... 05:36:08 > and$uncurry(==).zip(chr.[0..])['\0'..] 05:36:10 True 05:36:11 YOU GET THE IDEA 05:39:28 What's with the . in place of <$>? 05:40:09 Caleskell has (.) = (<$>) 05:43:04 > length ['\0'] 05:43:05 1 05:43:11 Derp 05:43:13 > length ['\0'..] 05:43:14 1114112 05:43:29 Well, that's fast 05:43:29 Or 2^21-1 05:43:41 > 2^21-1 05:43:42 2097151 05:43:46 Guess not. 05:44:00 > 2^21 05:44:01 > 17*2^16 05:44:01 2097152 05:44:02 1114112 05:44:37 Aren't there a bunch of code points that are invalid? 05:44:44 Don't tell me that Char includes those 05:44:50 Oh, duh, it's not 2^21-1 characters in Unicode, it's 17 16-bit planes. 05:45:00 Sgeo_: They are *unassigned* code points. 05:45:05 Unassigned != invalid. 05:45:20 pikhq: No, some are invalid. 05:45:24 0xD800, for instance. 05:45:25 > chr 0xDC80 05:45:26 '\56448' 05:45:33 > logBase 2 (17*2^16) 05:45:34 20.087462841250343 05:45:50 Oh, duh, there's stuff like the surrogate pairs. 05:45:59 Surrogate pairs are explicitly invalid. 05:48:11 ... Huh. In principle you could do *slightly better* than UTF-63 then. 05:48:33 With really stupidly complicated coding schemes. 05:48:48 Let's not. 05:49:05 > logBase 2 (3*17*2^16) 05:49:06 21.672425341971497 05:49:17 ... I'm not sure what I was thinking there. 05:49:29 Definitely not anything sane. 05:49:43 pikhq: You can also do better because you can (a) use that extra bit, so exactly 21 bits per codepoint instead of 21+1/3, and (b) only to represent need slightly over 2^20 codepoints. 05:50:38 What's the multiple of lb(17*2^16) nearest a round number, I wonder... 05:51:00 Are surrogate codepoints disallowed in all the planes or just the BMP? 05:51:07 > map (* (logBase 2 (3*17*2^16))) [2..] 05:51:08 [43.344850683942994,65.0172760259145,86.68970136788599,108.36212670985748,1... 05:53:15 Dammit, a little *over* 4096. 05:54:38 Is 0x1D800 a valid codepoint? 05:54:52 UTF-1024 is the best encoding. 05:55:15 shachaf: I think it's valid but unassigned? 05:55:35 * shachaf was hoping to avoid thinking about how UTF-16 works. :-( 05:55:38 No such luck, eh? 05:55:44 I dunno. 05:56:37 OK, so you get 10 bits per UTF-16 code unit. 05:57:08 So I guess it's valid. 05:58:02 Bah, it comes out bigger than 20 bits either way. 05:58:38 UTF-9000 05:58:56 i don't remember if the Haskell spec says anything about Chars corresponding to invalid characters 05:59:01 but GHC does allow them, as demonstrated above 05:59:15 Data.Text doesn't, though. 05:59:22 (Since it uses UTF-16.) 05:59:25 yeah, because it uses UTF-16 efb 05:59:27 UTF-1024 gives you 47 codepoints in a mere 128 bytes. 05:59:44 you shuold all use UTF-EBCDIC 05:59:45 So it does an extra pass when you encodeUTF8. 06:00:21 aww, my iconv doesn't know about utf-ebcdic 06:00:42 > '\^X' 06:00:43 '\CAN' 06:00:47 whoa, dude 06:01:11 UTF-64 gives you 47 codepoints in... 126 bytes? Dammit! 06:01:14 I'm wasting more bits! 06:02:33 I made up a kind of UTF-INTERCAL a while ago, which is based on EBCDIC but is not the same as UTF-EBCDIC. 06:02:47 UTF-90008 works, though. 06:03:34 Bah. 06:07:46 UTF-63? UTF-32 isn't sufficient? 06:08:01 UTF-63 is really UTF-21.333... 06:08:14 Or UCS-2.666... 06:08:15 -!- yiyus has joined. 06:08:32 * Sgeo_ doesn't entirely understand 06:08:37 I plan on sleeping soon though 06:09:38 Sgeo_: UTF-64 packs 3 Unicode codepoints as 21 bits each, and wastes a bit. 06:11:31 It doesn't waste much, fortunately! 06:12:05 Ah 06:12:23 It wastes a bit more than a bit, apparently, because a Unicode codepoint is *slightly more* than 20 bits, rather than 21 bits. 06:12:23 Just a bit. 06:12:33 Well, yes. 06:12:43 Why couldn't they arrange it to be exactly 20 bits? 06:12:49 But packing more efficiently is really nontrivial. 06:12:54 17 planes? 06:12:58 Who comes up with that? 06:13:16 0x10FFFF jerks 06:13:42 Idongettit 06:13:54 0x10FFFF looks familiar 06:14:00 Largest codepoint. 06:14:08 Unicode is in 17 planes of 16 bits each. 06:14:19 Except for the first one. 06:14:34 Which has some of its values scavenged for UTF-16 to work. 06:14:39 (jerks) 06:14:52 > 2^16 - 2048 06:14:53 63488 06:15:03 JERKS 06:15:21 UTF-16 is such a terrible encoding. 06:15:44 And honestly has little excuse for existing. 06:16:09 Most things that adopted UCS-2 and later migrated to UTF-16 for legacy reasons came *after* UTF-8. 06:16:54 And even those things that did UTF-16 before 1993 could've migrated to UTF-8 readily. 06:17:01 With less pain, in fact. 06:17:35 Java's really offensive. It was released in '95. 06:18:10 How many files are there for chess games with TeX? Do any of them include AI? 06:19:37 And Windows could've switched easily... 06:19:58 UCS-2 as some stupid cruft for compatibility with NT 3.1? 06:22:21 Some games involve chance, some games involve skill, some games involve hidden information. I like a game involving all three. 06:22:30 This includes games with cards. 06:23:50 What is your opinion about this? 06:34:08 zzo38: my brother accidently his headphones so he got new ones and gave me his old ones. the problem is the cable is broken. 06:35:01 the main options are to do nothing, get someone to repair them, or repair them myself 06:37:32 Fix them by yourself if you know how. If you don't know how, learn how, unless you would rather get someone else to repair them. 06:38:37 the trouble is not so much that i can't afford someone else, but my profit margin is probably quite slim.. 06:38:44 the cable is scary complicated 06:39:57 for one thing it appears all the wires merrily touch each other 06:41:23 zzo38: i only like games whose names start with "mine" 06:42:01 `addquote zzo38: i only like games whose names start with "mine" 06:42:14 860) zzo38: i only like games whose names start with "mine" 06:42:32 not too far from the truth even, since i only play minesweeper and minecraft. 06:42:58 also minebombers is an awesome game 06:45:25 -!- impomatic has joined. 06:49:27 hm what was it impomatic wondered about again 06:50:01 * impomatic wonders if the topic is inspired by Philip K Dick? 06:50:18 not my part of it, anyway 06:50:52 `pastelogs PEZ 06:50:57 * itidus21 wonders if the total recall remake is inspired by Philip K Dick? 06:51:24 * oerjan cannot recall much about total recall. 06:51:25 mkdir: cannot create directory `/hackenv': File exists \ http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.16941 \ /hackenv/bin/paste: line 14: /hackenv/paste/paste.16941: No such file or directory 06:51:29 ff 06:51:36 `pastelogs PEZ 06:51:48 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.12806 06:52:59 `pastelogs changed the topic 06:53:04 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.22269 06:53:28 thought that would be too long :( 06:54:55 impomatic: you'll have to ask Gregor 06:56:09 why did PEZ become ESME? 06:56:19 _that_ was me. 06:56:21 ha ha ha 06:56:57 the question itself is funny 06:57:54 `pastelogs esme 06:58:04 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.26853 06:59:07 DON'T GO THERE 07:02:34 It [doesn't] works by tapping out "ESME" into Morse code, then writing "Esme" in to the papers. 07:04:25 oerjan: I've been trying to figure out which book the topic reminded me of. Maybe Ubik or A Scanner Darkly? 07:05:06 no idea 07:08:04 @google abandoned fret forgive 07:08:06 http://irc.netsplit.de/channels/details.php?room=%23esoteric&net=freenode 07:08:06 Title: #esoteric freenode - Chat Room on IRC - Programming, Computers - irc.netsplit.de 07:09:08 O, it works! 07:12:58 -!- epicmonkey has joined. 07:25:36 The `pastelogs will stop if there is too many lines how to make it skip up to a specified date to continue from there? 07:27:13 i don't think that's been implemented 07:27:25 `cat bin/pastelogs 07:27:30 ​#!/bin/sh \ cd /var/irclogs/_esoteric \ \ pasterandom() { \ if [ "$1" -gt 150 ]; then \ echo "No." \ exit \ fi \ for i in $(seq "$1"); do \ file=$(shuf -en 1 ????-??-??.txt) \ echo "$file:$(shuf -n 1 $file)" \ done | paste \ } \ \ if [ "$1" ]; then \ if expr "$1" + 0 >/dev/null 2>&1; then \ pasterandom "$1" \ else \ lines=$(grep -P -i -- "$1" 07:30:28 -!- epicmonkey has quit (Ping timeout: 252 seconds). 07:31:07 They have "[too many lines; stopping] 07:31:10 mörning 07:31:15 soup 07:31:23 Can you make up command of specifying the first date? 07:31:51 not me 07:32:04 well was fun talking to you guys i gotta go now though 07:42:44 -!- copumpkin has quit (Ping timeout: 260 seconds). 07:43:20 -!- copumpkin has joined. 07:46:58 -!- atriq has joined. 07:50:45 @messages 07:50:45 You don't have any new messages. 07:50:47 Yay 07:50:53 quintopia, don't you dare 07:51:23 atriq: we had to fix up your hair salon a bit 07:51:48 hackage is down? :( 07:51:54 It seems so 07:53:26 I'm afraid I'm not the best at explaining things 07:53:58 how does one use parsec with applicative notation... 07:54:30 oerjan: Same as you would use others. Parsec work very well with applicatives 07:54:43 zzo38: i cannot find the bloody instance! 07:55:03 that's what i was trying to load hackage for 07:55:25 I'd assume it'd be connected to the Monad instance 07:55:30 no. 07:55:30 pure = return, (<*>) = ap 07:55:34 well yes. 07:55:43 I mean, defined in terms of 07:55:49 of course i don't want to _write_ it. it should be there already. 07:56:01 It is there already, isn't it? 07:56:06 unfortunately when parsec was originally made, they made operators that clash with it 07:56:18 Then hide those ones. 07:56:18 zzo38: not when i load Text.Parsec 07:56:33 What version do you have? 07:57:26 Maybe, you can use awk or sed to remove the file other than the first date wanted and the one after that one, and then xargs for grep on each one, and do the same as it already does. For example: BEGIN { x=0 } FirstDate==$0 { x=1 } x 07:57:28 ...i don't know how to find out :( 07:58:23 oerjan: I think the command "cabal info" will tell you which versions are currently installed, but I don't know if it work when Hackage is down 07:58:31 i'm on the verge of closing vim and taking a break but i have a principle of not closing a file that doesn't compile 07:58:45 Leave it open and wander off 07:58:47 ? 07:59:25 atriq: um i have no intention of leaving the computer, which means it is impossible to avoid seeing it in the meny 07:59:28 *u 07:59:32 er taskbar 07:59:36 The thingy 08:00:06 this is the universe's way of punishing me for trying to have fun programming 08:00:16 That's why you should have no less than 5 computers on your person at any one time like a sensible person 08:02:43 Can you add this AWK program to the pastelogs to make it works with specifying the start date for loading files? 08:02:59 `run run run ls 08:03:03 bash: run: command not found 08:03:23 * oerjan does the big comment around most of non-working program trick 08:04:00 zzo38: anyone can add programs to HackEgo 08:04:17 How do you add a file on there? Is it possible to connect to codu.org directly on some port number to just send the data and then it make a file of it? 08:04:50 `help 08:04:54 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 08:04:59 use `fetch 08:05:51 O, that's how it works. Wouldn't it be better if they designed to work without URLs so that you do not have to send the file twice? 08:07:19 you _can_ do it with shell commands, but that's not exactly easier 08:08:19 one does not simply add a file on there 08:08:50 Can the filename be specified, or do you have to rename it afterward? 08:09:11 i think it uses the filename at end of url 08:09:23 Any idea how to add a new font to Android without rooting? I need a slashed zero! 08:09:30 404 -One does not simply request mordor.html- 08:09:35 all feature requests go to Gregor :) 08:09:36 And what for directory name? What if the filename at end of URL is wrong can you use # and a filename? 08:10:12 zzo38: it goes into the current directory /hackenv/ 08:10:37 um not sure if there's anything before in the path. 08:12:43 Gregor is not on now? 08:12:54 indeed 08:25:20 I wish to thank this channel 08:25:38 For helping me understand groups long before I really needed to 08:25:38 And also being cool and stuff 08:25:46 But one thing 08:25:58 Is a group from mathematics the same thing as a monoid from Haskell? 08:26:18 no, monoids don't need inverses 08:26:53 Oh, cool 08:27:26 Wow 08:27:30 I'm really glad I asked that now 08:27:36 I had totally missed inverses 08:28:25 -!- nooga has joined. 08:28:30 -!- epicmonkey has joined. 08:33:30 -!- nooga has quit (Ping timeout: 268 seconds). 08:56:25 -!- ais523 has joined. 09:18:41 -!- Cryovat has quit (Read error: Connection reset by peer). 09:22:11 -!- Cryovat has joined. 09:47:57 -!- ssue has quit (Remote host closed the connection). 10:06:26 -!- oerjan has quit (Quit: leaving). 10:16:37 -!- soundnfury has quit (Remote host closed the connection). 10:19:45 -!- epicmonkey_ has joined. 10:20:11 -!- epicmonkey has quit (Ping timeout: 268 seconds). 10:20:54 I thought of a kind of compression by a integer; when it is time to read more data you know what the range will be (not necessarily before that), and then you divmod by the range; the remainder is the data read and the quotient is the data to continue reading next time. I have implemented something using binary division. 10:24:12 Basically I used like this (r=remainder, b=bit array, x=range): For i=high bit to low bit of b: r=(r<<1)|b[i]; b[i]=r>=x; r%=x; Would this work OK? 10:27:01 -!- soundnfury has joined. 10:27:43 -!- zzo38 has quit (Quit: Remote host told you to closed the connection). 10:39:48 -!- ssue has joined. 11:21:43 I like today's Lightning Made of Owls 11:22:06 I am confused about "today" due to a ten-hour timezone change. 11:22:23 The most recent 11:22:51 http://www.mezzacotta.net/owls/ 11:22:56 My name has also acquired some sort of a gnat. 11:23:02 -!- fizzie` has changed nick to fizzie. 11:24:18 -!- kinoSi0 has joined. 11:26:34 -!- kinoSi has quit (Ping timeout: 244 seconds). 11:48:42 -!- kinoSi has joined. 11:51:27 -!- Phantom_Hoover has joined. 11:52:24 -!- kinoSi0 has quit (Ping timeout: 260 seconds). 11:54:28 -!- Arc_Koen has joined. 12:03:47 -!- Jafet has joined. 12:33:45 hmmm I've been having the following thought 12:34:14 basically for a program to be reversible, it must not allow information to be destroyed right? 12:34:35 but there's nothing wrong with information being created 12:34:43 so now if we run that program backwards 12:35:04 when you meet the creation of new information 12:35:15 the reverse operation is very simple : destroy it 12:35:46 but that would mean the inverse of that reversible program is not reversible 12:37:13 -!- soundnfury has quit (Remote host closed the connection). 12:39:43 So, a re-reversible program 12:39:48 Can't create information? 12:44:00 yup that's what I think 12:44:39 I think for instance an instruction like "push a random number on stack" is possible on a reversible program, but not in a re-reversible program 12:44:41 or something like that 12:45:03 which means we have to use the word "reversible" with caution 12:45:26 or maybe that just means that a program can be reversible without being deterministic 12:46:40 -!- soundnfury has joined. 12:47:47 we may need to add a note about that on the wiki? 12:48:36 btw, Category:Reversible_computing seems to be missing from the Esolang:Categorization page 12:50:44 -!- impomatic has quit (Quit: impomatic). 13:11:19 atriq: http://esolangs.org/wiki/Talk:Real_Fast_Nora%27s_Hair_Salon_3:_Shear_Disaster_Download 13:12:27 that is the strangest name for esolang I have ever seen 13:13:13 nortti: I do fail to understand the pun! 13:13:53 Arc_Koen: ? 13:14:02 in the name 13:14:09 I know the origin of the name 13:14:32 it is still stange 13:15:40 do you mind sharing? :) 13:16:42 there was a spammer that created page http://esolangs.org/wiki/Real_Fast_Nora%27s_Hair_Salon_3:_Shear_Disaster (If I remember correctly) 13:16:53 that is by the way real movie 13:16:53 oh, ok 13:19:40 &g #anime 13:19:40 ... 13:19:40 I hate typos 13:24:38 -!- aloril has quit (Ping timeout: 240 seconds). 13:24:38 -!- SimonRC has quit (Ping timeout: 240 seconds). 13:24:38 It's Nora's Hair Salon 3: Shear Disaster 13:24:38 The page the spammer created is the one that still exists 13:28:31 -!- atehwa_ has quit (Ping timeout: 240 seconds). 13:28:31 oh 13:28:31 oh, so "real fast" applied to "download" 13:28:31 you shoudl send a thanking mail to that spammer 13:28:31 :P 13:28:31 I think it's a video game, but I'm not sure 13:28:31 -!- Gregor` has joined. 13:28:31 yes at least that would solve the plot problem 13:28:31 No, it's a film 13:28:31 urrh 13:28:31 Hmm 13:28:31 According to this text I've just recieved, I'm owed £3350 for the PPI I took out. 13:28:31 what? 13:28:31 -!- atehwa has joined. 13:28:31 Payment Protection Insurance is the current gimmick UK scammers are using 13:29:01 Something to do with mortgages, I think 13:29:54 https://fbcdn-sphotos-d-a.akamaihd.net/hphotos-ak-snc6/246646_526302850729844_328991127_n.jpg 13:30:24 Already seen it, heh 13:30:24 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 13:30:25 atriq: you say real fast nora's hair salon 3 is turing-complete but there's nothing that looks like a proof 13:30:44 Arc_Koen, it essentially is Lambda Calculus 13:30:51 except with no brackets 13:31:20 I'm not convinced with "It then takes the next complete expression and wraps it in a lambda." 13:31:31 The APPLY is a very long way around brackets 13:31:52 APPLY x APPLY y z is x (y z), APPLY APPLY x y z is (x y) z 13:32:31 ZERO is an expression 13:32:40 ONE MORE THAN x is an expression 13:32:45 APPLY x y is an expression 13:32:49 LAMBDA x is an expression 13:33:02 -!- SimonRC has joined. 13:33:03 so is APPLY basicaly ` of unlambda? 13:33:03 hmm ok 13:33:12 nortti, precisely 13:33:46 ok, and about input and output 13:33:58 Real Fast Nora's Hair Salon 3: Shear Disaster Download is directly inspired by Lazy K 13:34:29 is equivalent to something like "output := APPLY input"? 13:34:42 Yes 13:34:55 can it do interactive I/O? 13:35:07 ok, so a program must be a LAMBDA 13:35:08 nortti, via laziness, about as much as Lazy K can 13:36:26 http://esolangs.org/wiki/Lazy_K#Input_and_output 13:44:00 -!- aloril has joined. 13:44:33 -!- coppro has joined. 13:48:09 -!- copumpkin has joined. 13:49:43 -!- nooga has joined. 13:51:28 -!- MoALTz has joined. 14:32:37 atriq: I'm not sure how there can be any "interactive IO". 14:33:01 Laziness. The actual input can be delayed inevitably 14:34:15 yeah, but output cannot be anticipated 14:34:44 I'm pretty sure it can 14:35:22 reverse-laziness? 14:35:29 Ish, yeah 14:35:44 it should be named Zealous K then 14:36:01 More like forwards laziness at the other end 14:36:05 hmmmm 14:36:19 I'd have to take that into account to write an interpreter? 14:36:30 No 14:36:42 You'd have to take that into account to make an interpreter with interactive IO 14:39:06 ok so the only thing I have to care about are: ::= LAMBDA ::= ZERO | ONE MORE THAN | APPLY | LAMBDA 14:39:48 then apply the program to input, and output the result 14:39:57 Yes 14:40:04 LAMBDA ZERO should be a cat 14:40:07 ok, that seems pretty straightforwart 14:40:42 hmm yes 14:40:54 * Arc_Koen realizes how unfamiliar he is with lambda-calculus 14:41:01 Yeah 14:41:13 It may be a good idea to familiarise yourself with lambda calculus first. 14:41:22 it should be ok 14:42:18 LAMBDA APPLY ZERO LAMBDA LAMBDA ZERO should be an "at", or a cat that ignores the first character 14:43:37 hmmm 14:43:58 I may be wrong, of course 14:44:17 LAMBDA LAMBDA ZERO is the constant function that yields identity 14:44:21 (so, K) 14:44:47 No, KI 14:44:53 uh 14:44:57 K would be LAMBDA LAMBDA ONE MORE THAN ZERO 14:45:05 oh, right 14:45:58 so, LAMBDA APPLY ZERO KI means to apply input to KI 14:46:14 Yes 14:46:21 how is that a "at"? 14:46:35 No 14:46:42 It means apply KI to input 14:46:55 ohhhh right 14:47:24 so applied to the first char it gives the identity function 14:47:41 No 14:47:56 hum? 14:47:56 It takes the input (as a church list) 14:48:05 ah, right 14:48:24 So, \f -> f 'c' (\f -> f 'a' (\f -> f 't' (\f -> ... 14:48:34 And applies KI to it 14:48:49 KIab is Ib is b 14:49:01 yes 14:49:22 I don't know what the \f -> ... thing means, though 14:49:57 Haskell's notation for lambda calculus 14:50:37 ohhhhkay 14:50:46 λf.f 'c' (λf . f 'a' (λf . f 't' (λf. ... 14:50:55 is a more conventional notation 14:51:15 * Arc_Koen carefully closes realfasthair.ml 15:24:05 -!- Vorpal has joined. 15:53:00 -!- nooga has quit (Ping timeout: 255 seconds). 15:53:40 -!- quintopia has quit (Ping timeout: 246 seconds). 15:57:54 oh, wait 15:58:13 we bother so much about languages being turing-complete or not 15:58:48 but the church turing thesis does not contain so much as a proof of the "being turing-complete means you can do everything with it" thing? 15:59:32 no because you would have to define what "everything" is 15:59:52 church turing thesis is not like a mathematical statement that can be proven or disproven 16:00:08 it's basically a definition 16:01:30 it says that for mathematical purposes we take the fuzzy term "everything you can do" to mean "any function computable by a turing machine" 16:01:56 "One can't proceed from the informal to the formal by formal means." 16:02:59 -!- quintopia has joined. 16:03:07 hmmm that sounds very disappointing 16:03:40 I thought they had a formal definition for "everything" 16:04:27 I mean, "any function computable by a turing machine"... what if someone comes up with an example like the ackerman function, but even worse, that can't be computed by a turing machine? 16:04:51 I mean, what you just said sound like "Mr Turing knew he was very smart, so he asked everyone to take for granted that his model was ultimate." 16:05:32 that's dr. turing to you, punk 16:05:38 haha 16:06:24 perhaps it's more correct to say that the thesis could be disproven 16:06:40 if someone comes up with such a function, and then convinces the world that the function is "effectively calculable" 16:07:12 but that is not a mathematical disproof either 16:07:25 i mean it's quite easy to describe a function which is not computable 16:07:33 like the busy beaver function 16:07:41 in fact it grows faster than any computable function 16:07:52 what about http://esolangs.org/wiki/CLooP#.23hyper.3B 16:08:01 it's up to the philosophers to argue about whether that is "effectively calculable" 16:08:37 you know there's this idea that if you drop a computer into a black hole, you can do an infinite amount of computation in a finite time 16:08:42 but you can't get the result back out 16:08:47 well, I just lost faith in computer science 16:09:20 perhaps in time you will reach a fuller understanding of the relationship between mathematics, philosophy, and empiricism 16:09:39 -!- epicmonkey_ has quit (Ping timeout: 260 seconds). 16:11:50 uh 16:11:58 is Arc_Koen an idiot now i haven't been watching 16:12:02 kmc, plz enlighten 16:12:13 Phantom_Hoover, he's like itidus21 but with computer science rather than philosophy 16:12:26 should I feel insulted? 16:12:28 hmm he just looks a bit confused 16:12:36 i thought we had another anothertest on our hands 16:12:48 Arc_Koen, I'm joking 16:12:48 it's actually pretty tricky to wrap your head around this stuff 16:12:54 Arc_Koen, no you're good for now 16:13:02 ok :) 16:13:18 still it is very disappointing 16:13:30 i mean basically 16:13:31 I thought they had a formal definition for "everything" 16:13:35 that definition is turing machine 16:14:04 or if you like lambda calculus, they are equivalently powerful 16:14:08 so basically Turing came up with his Turing machine, Church with his lambda-calculus, they proved the two models were equivalent, and then what? 16:14:13 or any of 1,000 other things 16:14:18 Arc_Koen: and then computer science happened 16:14:34 Arc_Koen, no other way round 16:14:37 church was first 16:14:53 original gangsta 16:15:36 ok ok; that's a pretty good start and all, but have every computer scientist just said "ok, let's take those models as the ultimate thing, and never question them"? 16:15:43 no 16:15:52 there is an entire field of studying "what if" more powerful things existed 16:16:08 http://en.wikipedia.org/wiki/Arithmetical_hierarchy 16:16:26 admittedly most people would call this maths and not CS 16:16:35 CS is maths kmc 16:16:47 we are all in the gutter, but some of us are looking at the stars 16:17:17 Phantom_Hoover: even if CS is a subset of maths my statement makes sense 16:17:45 Arc_Koen: http://en.wikipedia.org/wiki/Oracle_machine 16:17:58 http://en.wikipedia.org/wiki/Hypercomputer 16:18:34 yup I gave the oracle machine a look when I ran into Category:Uncomputable on the wiki 16:18:54 -!- FreeFull has joined. 16:19:42 well all that stuff sounds very interesting, thank you guys 16:20:53 (still it does sound like "oh btw, did I mention the bridge you've been walking on for the last few years has never been tested? It could potentially collapse at any moment.") 16:23:30 not really 16:23:55 whenever you're doing anything formal, you have axioms 16:24:03 the axioms are not proven, by definition 16:24:15 you can argue about whether the axioms match "the real world" but that is a philosophical argument and not a formal one 16:27:03 you can't prove that induction works either 16:27:07 that should bother you a lot more 16:27:17 i can though 16:27:22 proof by induction 16:27:38 yeah induction always worked before, so it must work now 16:27:44 anti-induction never worked before, so it must work now 16:28:11 hmm well my answer to "why does induction work?" would be "it's logical" 16:28:57 i cant prove anti-induction! not even by induction! it must be false. 16:28:58 then you're probably gonna tell me about the axiom of choice, but at some point I will lose interest because really, that does sound like philosophy 16:29:20 turing machines never sounded like philosophy to me before, though 16:30:07 I mean, I really thought they had a formal definition of the intuitive "turing-complete means you can use it to compute anything" 16:30:33 I had never really bothered to look for it before today, though 16:31:47 but if there were such a formal definition 16:31:48 the church-turing thesis is our religion and godel is our saint 16:32:03 you would still be in a position to argue about whether that formal definition matches our intuitive idea of "everything you can do" 16:34:06 kmc: yeah but I wouldn't care about that much 16:34:13 but it's the same thing 16:34:22 I mean, "everything you can do" is obviously a very unformal way to say things 16:34:57 here look at http://en.wikipedia.org/wiki/Effective_method 16:35:01 I do not expect my brainfuck program to build a time-traveling machine, or to produce coffee 16:35:06 this is an attempt at like a semi-formal definition of what we're talking about 16:35:36 now imagine that you try to formalize the ideas of "series of rote steps" and "completed in a finite number of steps" and such 16:37:18 In simple terms, the Church–Turing thesis states that a function is effectively calculable if and only if it is computable by a Turing machine. 16:37:24 and then "it cannot be proven" 16:37:36 I'm skeptic. do they have a proof that it cannot be proven? 16:38:21 the Riemann hypothesis, for instance, has not been proven yet, but nobody said it couldn't 16:38:34 (and of course it may be wrong but that's not proven either) 16:38:46 so i'm ok with that 16:38:48 you can't formally prove something which is not stated in formal terms 16:39:03 "One can't proceed from the informal to the formal by formal means." 16:39:11 that's what they mean by "cannot be proven" 16:39:27 if you sit down to formalize the idea of "effectively calculable" 16:39:31 then you invent something like a turing machine 16:39:34 and you're back where we are now 16:39:47 hmm, ok 16:39:50 the church-turing thesis is not the same kind of thing as the riemann hypothesis 16:48:07 turing machines never sounded like philosophy to me before, though 16:48:13 turing machines are not philosophy 16:48:24 that's not what I meant 16:48:25 they are a mathematical object, like sets or the natural numbers etc 16:48:37 and you can prove things about them with whatever degree of rigor you like 16:48:52 but (also like sets and the natural numbers) you can have philosophical arguments about to what degree these things model "the real world" 16:49:49 yeah, but like, /obviously/ there's a Platonic turing machine in the perfect realm of the forms, dude 16:50:27 *bonghit noises* 16:50:58 The question is 16:51:06 Can the Platonic turing machine feel love? 16:51:10 hey, not /all/ neoplatonist thinkers in the Western Renaissance developed their philosophy under the influence of drugs. 16:51:16 Ok, so that's not actually true... 16:51:18 just descartes ;) 16:51:34 ahh, descartes... and the flax fire 16:51:37 are we discussing the matrix of solidity 16:51:58 five tons of flax 16:51:59 yes 16:52:14 kmc: ITYM five tons of VAX 16:52:22 eight megs and constantly swapping 16:52:29 ... 16:52:33 eventually munches all computer storage? 16:52:36 -!- KingOfKarlsruhe has joined. 16:52:43 I think I've spent too long on Tumblr 16:52:45 This feels normal 16:52:47 great OS, shame about the text editor 16:53:51 also on one of the many painful lectures on the church turing thesis i've endured there was some discussion about why "whether the real numbers are what geometry actually talks about" is never questioned while the church turing thesis keeps being debated 16:54:22 and the reason was stated to be the obvious one: the first attempt at a formal definition was wrong. 16:54:50 just wanted to mention this because i thought it was a nice observation. kinda obvious i guess. 16:55:05 what was the first attempt? primitive recursion? 16:55:08 yes 16:55:15 weren't there some wrong attempts at real numbers too? 16:55:28 also plenty of wrong attempts at set theory 16:55:28 yeah i just started wondering about aht 16:55:29 that 16:55:41 people do keep arguing about set theory but they get weird looks from most other mathematicians 16:55:44 well set theory also kind of keeps getting questioned by silly people :P 16:56:01 okay i guess silly people also question the reals... but usually for other reasons 16:56:12 hmm, true 16:56:22 * kmc questions the reals 16:56:40 i mean, one real contains an infinite amount of information 16:56:43 that's just fucked up 16:56:59 almost all real numbers can never be defined, used, or thought about it any way 16:57:09 you must have a typo there because you just claimed that a _single number_ is somehow... infinite 16:57:15 that's insane 16:57:16 lol 16:57:26 i mean they can't seriously think that???? 16:57:28 not that the number has infinite magnitude, but that it contains an infinite amount of information 16:57:38 that's even insaner! 16:57:44 just write out the decimal expansion 16:57:51 a real number can have an infinitely long, non-repeating decimal expansion 16:57:54 in fact almost all of them do 16:57:56 i mean come one where do you put it unless the magnitude??? 16:58:05 wait are we still doing a bit 16:58:18 i'm the tortoise 16:58:18 Well, they're blatantly non-computable, so they must go in magic places. 16:58:45 oklopol: I don't know, I think the only reason we have real numbers is because rationals didn't include the diagonal of a square, and transcendental numbers didn't include Pi, e or other random constants 16:59:16 The computables are so much better. 16:59:17 :) 16:59:41 I mean, without sqrt(2) and Pi, who would have ever complained about rational numbers? and we currently don't have *needs* for something more than reals, but what-if? 16:59:42 what's your definition of transcendental number? 16:59:50 hum 16:59:55 man 2 sqrt 16:59:56 Arc_Koen: We can't even use the reals. 17:00:03 because usually it's the complement of algebraic numbers 17:00:07 I meant non-transcendentals 17:00:10 Arc_Koen: There exist reals which require a halting oracle to compute. 17:00:10 and it in fact does contain pi 17:00:11 okay 17:00:25 pikhq: wait, what? 17:00:54 It is in fact strictly *necessary* for there to be reals which cannot be computed. 17:00:55 http://en.wikipedia.org/wiki/Chaitin's_constant 17:01:00 in fact almost all reals cannot be computed 17:01:11 because there are countably many turing machines and uncountably many reals 17:01:37 Yup. Wrong cardinality. 17:01:41 and each of those reals contains an infinite amount of (Kolmogorov) information 17:01:47 oh, well that doesn't bother me 17:01:51 IT SHOULD! 17:01:59 real numbers is a word masturbation 17:02:02 you are educated stupid 17:02:26 I've personally never tried to compute the digits of Pi, yet I've been "using" that number for a very long time 17:02:34 What bothers me is when people refer to the floats as "real numbers". 17:02:48 "god is real, unless declared integer" 17:03:00 There are floats that aren't in the set of reals, and vice versa. 17:03:11 http://what-if.xkcd.com/11/ Why does Munroe's equation imply there are 16 hours in a day? 17:03:15 pikhq: well, to store data on computer one needs to "approximate" continuous as discrete 17:03:25 Arc_Koen: NAN is not a real, but it is a float. 17:03:44 i am not a number, i am a free variable! 17:03:48 Haskell has libraries for exact real numbers 17:04:13 Um, it does occur to me that not all real numbers can be represented, even with such a library 17:04:25 Sgeo_: By necessity. 17:04:35 not just "not all" but "almost none" 17:04:37 Sgeo_: The computable numbers are countable. 17:04:38 a set of measure zero 17:04:42 pikhq, I know 17:04:56 kmc: Ok, I get that you prefer computable numbers to reals, but come on, analytic completeness is handy 17:05:01 i think the real problem isn't that float has a few special values, that's just computer blah blah. the real big difference is that the floats aren't even a decent subset of the rationals 17:05:08 Sgeo_: it's hard to keep your mouth open and pointed at the sky while asleep, so he only counts waking hours 17:05:13 soundnfury: yeah, well, i'm a computerologist and not a mathematician 17:05:17 you can't exactly put calculus on a sound footing in the computables 17:05:21 is that so? 17:05:23 i have heard that you can 17:05:25 but did not try 17:05:30 you can take limits of computable numbers 17:05:36 of computable sequences of computable numbers 17:05:47 yeah, but said limits are not guaranteed to exist 17:05:56 unless you have a wacko definition of computability 17:05:57 quintopia, it's also hard to live for 300 years. 17:06:06 soundnfury: isn't there some kind of computable analytic completeness for the computable reals which works just as well in computable analysis? 17:06:12 that says something like a limit of a computable sequence of computables is computable... 17:06:15 ...where did I get the number 300 from? It's 195 17:06:19 (which i know 0 about but i've heard the term a lot) 17:06:32 but really, that causes more problems than it solves 17:07:11 There's a number of properties the floats straight-up don't have. 17:07:11 why shouldn't a limit of a computable sequence of computables be computable? 17:07:21 pikhq: like reflexivity of equality? ;P 17:07:26 x == x does not hold. a+b == b+a does not hold. And so on. 17:07:27 kmc: Yes. 17:07:59 kmc: I'm not 100% sure, but all my mathmo's reflexes are screaming "this is not well-founded" 17:08:10 s/founded/formed/ 17:08:36 to get the nth digit of the limit, you step through the sequence until the (known, computable) convergence bound is close enough, and then you get the right digit of that number 17:09:01 I mean, for one thing, recursing this is going to give us some kind of ordinal induction shit 17:09:53 i don't get it 17:10:06 can you elaborate 17:10:40 and I'm not convinced that the computables are going to be a recursive set and that worries me 17:11:16 or even recursively enumerable for that matter 17:11:39 i suppose that's true 17:11:41 oklopol: because once you've got new computables from limits, you can then make sequences with those 17:12:06 and you can do this lots of times, possibly big-fat-ordinal-ly many times 17:12:13 i see how that'd be a problem if they were some new kind of computable 17:12:24 (or possibly not, it depends on your defn of computable number) 17:12:25 soundnfury: A set is computable iff it is recursive. 17:12:26 :) 17:12:45 i figured we defined convergence so that you have actual closure under limits 17:13:16 pikhq: yeah but I'm not convinced the set of computable numbers (where limits are included in the defn thereof) is a computable set 17:14:00 -!- augur has quit (Remote host closed the connection). 17:14:41 also the definition of a recursive set is for subsets of the naturals, not subsets of the reals, so we have a problem there 17:14:52 The set of computable functions is trivially computable. The set of computable numbers is defined by the subset of the set of computable functions that results in numbers. Thus, the set of computable numbers is a computable set. 17:15:45 anyway, the point is that trying to stick analytic structure on the computable numbers (or any countable subset of the reals, in fact) gives me the screaming blue willies 17:16:46 (to compute the computable functions: map ASCII strings to naturals. For each natural, test if it parses in $language. This is an inefficient, but functioning, generator of computable functions.) 17:17:24 that only demonstrates that they are recursively enumerable, i think 17:17:40 yeah I think we need to identify reals with functions 17:17:50 because the computable numbers are a subset of the reals, not a subset of the naturals 17:18:07 Mmm. 17:18:09 and R is basically 2^N, right? 17:18:23 Actually. 17:18:24 Blah. 17:18:57 soundnfury, the computable reals biject with the naturals. 17:19:04 Telling if a given number is computable might be... Nasty. 17:19:23 i mean, what form does the turing machine get that number in 17:19:47 wait soundnfury would know that 17:19:52 what are you people talking about no 17:19:53 w 17:19:54 -!- subleq has joined. 17:19:57 telling if a given number is computable sounds like blah blah blah rice's theorem 17:20:01 hello 17:20:09 Phantom_Hoover: sure, they're countable. But viewing them as a kind of natural number doesn't give you analytic structure 17:20:12 oklopol: Yeah. 17:21:16 i think "is the set of computable numbers computable" is not a well posed question 17:21:19 Kay, the set of computable numbers might only be recursively enumerable? 17:21:27 because how do you feed a possibly not-computable number into your turing machine to ask if it's computable? 17:21:48 kmc: yes. 17:21:53 it's like asking if the set of computable languages is computable 17:22:57 'course, the set of reals is clearly not computable. :) 17:23:57 but if you have some oracle that has a real number x, and you're allowed to ask it questions about x (where I haven't defined what 'questions' are but I probably should), 17:24:06 you can't generally determine whether x is computable 17:24:27 yeah 17:24:28 can you, however, guarantee that if it is you'll eventually determine that? 17:24:30 "Mr Oracle, is x computable?" 17:24:41 Arc_Koen: yeah, not that 17:24:44 -!- epicmonkey_ has joined. 17:30:44 -!- Phantom_Hoover has quit (Ping timeout: 260 seconds). 17:35:55 "If you compute x, a great empire will fall!" 17:37:16 -!- hagb4rd has joined. 17:39:41 ...but in any case i do agree with soundnfury, it doesn't sound like you'd get an equally nice theory. 17:41:08 yay, I have been agreed with on #esoteric 17:41:27 ... who are you and what have you done with the real #esoteric? 17:41:44 -!- MoALTz_ has joined. 17:44:22 -!- MoALTz has quit (Ping timeout: 240 seconds). 17:44:29 -!- jiella has joined. 17:46:52 -!- Nisstyre-laptop has quit (Remote host closed the connection). 17:49:31 -!- augur has joined. 17:49:36 -!- MoALTz has joined. 17:49:55 -!- MoALTz_ has quit (Ping timeout: 244 seconds). 17:50:57 -!- Phantom_Hoover has joined. 17:51:38 well i'm wondering about the same thing since i seem to recall we haven't agreed on much sofar :D 17:55:05 -!- MoALTz has quit (Ping timeout: 244 seconds). 17:55:34 hey soundnfury what do you think of germaine greer 18:09:37 -!- zzo38 has joined. 18:12:36 -!- sivoais has quit (Read error: Connection reset by peer). 18:13:08 -!- sivoais has joined. 18:14:20 anyone knows a good way to convert a .spc tracker file to any sort of wave format 18:14:31 SPC is an SNES tracker file btw 18:14:39 the issue is my phone doesn't play those 18:14:41 Use a SNES emulator? 18:14:50 "convert" is probably not the right verb 18:14:53 maybe mpt supports that? 18:15:05 what is mpt? 18:15:10 "play and record" would be closer 18:15:14 (Well, I think the audio chip is a separate program in SNES, so you only need to emulate that chip and not the entire SNES) 18:15:18 sure whatever the terminology 18:15:20 it is a tracker/player 18:15:28 I just want a wav file so I can put it on my phone :P 18:15:39 -!- DH____ has quit (Ping timeout: 260 seconds). 18:15:41 instead of using the wav file, compress it somehow first 18:15:46 and/or get a snes emulator for your phone 18:16:02 for the first: duh, but wav is easy to compress from 18:16:04 Vorpal: http://www.purezc.com/forums/index.php?showtopic=3612 18:16:07 Do SPC files include a length? Do they contain a program, like NSF and so on do? 18:16:11 and for the second, I like the stock media player 18:16:20 I don't want to play the game on the phone either 18:16:34 zzo38, they are a memory dump of the sound chipset memory iirc 18:16:50 they do seem to be able to include infinite loops, so I need to restrict that somehow 18:17:00 quintopia, thanks 18:18:31 quintopia, well that doesn't seem to end up with a wave file, but rather an .it file 18:18:50 and then you open the .it in mpt and output it to a wave 18:19:17 (after editing it to make sure it only includes the parts you want) 18:19:30 hm 18:19:44 surely there is a simpler way to do this? 18:19:53 since they just play in vlc 18:19:57 and display a length there 18:19:57 oh 18:19:59 sure 18:20:02 play it in vlc 18:20:16 record it from your sound card with your favorite recording program 18:20:25 yeah could work 18:23:52 quintopia, why is it that many modern onboard sound solutions lack a virtual input for the sound output 18:23:54 :/ 18:24:03 my SB Live has it of course 18:24:09 i wouldnt know. i've never had that problem 18:25:17 hey there is vlc for android 18:25:22 I wonder if it can play these files too 18:25:44 sadly it is still in beta and last I tried it, it was very buggy 18:30:43 -!- FreeFull has quit (Read error: Operation timed out). 18:40:09 I must be missing something that makes "play in VLC, record what's being played" a reasonable thing to do, as opposed to just telling VLC to write the audio to file instead of/in addition to playing it. 18:42:09 fizzie, oh you can do that? 18:42:11 awesome 18:42:28 fizzie, how? 18:42:58 It has that whole stream/save GUI dialog; and the command line that I forget how to use. 18:43:03 hm 18:43:24 fizzie, how would converting it work if the tracker file has an infinite loop in it? 18:44:18 If you do the "also play locally", you can press stop when you've had enough, I'd think. 18:44:25 hm 18:44:38 See http://wiki.videolan.org/Extract_audio if you want the command line magic. 18:44:59 I guess I could add a bit of fade at the end after or something 18:45:13 since the music consists of intro followed by infinite loop 18:49:31 also vlc on phone doesn't do tracker files it seems 18:49:33 sad 18:52:18 yeah, i pretty much don't understand how RFNHS3:SDD works. this description is terrible. 19:02:58 -!- nooga has joined. 19:05:30 -!- ogrom has joined. 19:14:28 -!- jiella has quit (Ping timeout: 252 seconds). 19:30:31 Can someone remind me that extrapolation is a very bad thing? 19:31:07 ok 19:31:20 when do you want that remainder to strike you? 19:31:32 Round about now would be nice 19:32:24 I'll ask lambda bot to remind you of that 19:32:36 Thanks 19:32:39 @tell atriq EXTRAPOLATION. IS. VERY. BAD. 19:32:40 Consider it noted. 19:32:55 -!- FreeFull has joined. 19:33:08 what about context? 19:33:21 in some cases I'm pretty sure extrapolations can be good 19:33:28 -!- impomatic has joined. 19:33:38 I've been trying to predict how long Act 6 Intermission 3 of Homestuck is going to be. 19:33:38 atriq: You have 1 new message. '/msg lambdabot @messages' to read it. 19:33:42 @messages 19:33:42 Arc_Koen said 1m 3s ago: EXTRAPOLATION. IS. VERY. BAD. 19:33:50 @tell Arc_Koen Thank you. 19:33:51 Consider it noted. 19:34:03 I make it 204 19:34:21 I'm trying very hard right now not to type "@tell atriq you're welcom" 19:34:22 Arc_Koen: You have 1 new message. '/msg lambdabot @messages' to read it. 19:34:30 @messages 19:34:31 atriq said 40s ago: Thank you. 19:34:50 @tell atriq You're welcome! 19:34:51 Consider it noted. 19:34:51 Hmmm... 19:34:54 see, I'm weak 19:34:58 @messages 19:34:58 You don't have any new messages. 19:34:59 @clear-messages 19:35:00 Messages cleared. 19:35:02 AND I AM STRONG 19:35:10 AND RUDE. 19:35:38 I didn't know of that command 19:36:03 -!- Nisstyre has quit (Quit: Leaving). 19:44:02 Learn something every day 19:44:02 atriq: You have 1 new message. '/msg lambdabot @messages' to read it. 19:44:09 @messages 19:44:09 Arc_Koen said 8m 37s ago: You're welcome! 19:44:15 AAAAH 19:44:18 AAAAAAAAAAAH 19:44:20 AAAAAAAAAAAAAAAH 19:44:26 @nixon Help! 19:44:26 Don't try to take on a new personality; it doesn't work. 19:44:45 It. Doesn't. Work. 19:44:46 ^echo aaaaaaaaaa 19:45:40 -!- FreeFull has quit (Ping timeout: 268 seconds). 19:46:26 fizzie, where's fungot? 19:47:31 It may have a thing. 19:47:33 Thing a thing. 19:47:35 Thing. 19:48:10 I tried to thing but thing's a long time. 19:48:17 Okay, now it thinged. 19:48:39 -!- fungot has joined. 19:48:45 (I'm kinda slep.) 19:48:54 fungot slep? 19:48:54 olsner: did you let it!), and c1 x is x. 19:52:18 -!- nooga has quit (Ping timeout: 264 seconds). 19:52:23 I wokked up some kind of 30 hours ago, but don't want to get all misdiurnaligned. 19:56:14 not sleeping for 30 hours seems worse than being a bit misaligned 19:57:33 There weren't really opportunities. 19:57:43 Should've'pt'n'e'lane. 19:58:09 what were you doing? 19:58:36 There was this interactive multimedia system, I mostly just fiddled with that. 19:58:44 Those seats don't run. I mean, recline much. 19:59:58 "an interesting problem crossed my path, and when I looked up to the clock, 30 hours had passed already" 20:00:29 hmm, "interactive multimedia system"... does that mean you've been playing VIDEO GAMES? 20:00:58 olsner: No, it's the personal video/audio on demand kind of thing. (Okay, it had some games.) 20:01:24 Also including Bejeweled®. 20:02:03 "wait, they have an implementation of lode runner in here? let's try it... holy crap we're tomorrow!" 20:03:47 The person in the next seat was playing some kind of "learn a language" word-matching phrase-filling whatevernot kind of game, and doing that for Finnish. 20:03:52 It was sorta weird. 20:10:30 I made up a word "anticategory" for a semigroupoid(category except identity) which has no endomorphisms. 20:12:23 fizzie: did he finnish the game? 20:13:28 olsner: She, and at least some levels, yes. 20:13:43 -!- Sgeo_ has quit (Read error: Connection reset by peer). 20:14:46 -!- Sgeo has joined. 20:15:41 hi 20:16:29 -!- epicmonkey_ has quit (Ping timeout: 272 seconds). 20:24:52 -!- nooga has joined. 20:46:23 -!- epicmonkey_ has joined. 20:51:46 -!- FreeFull has joined. 20:55:33 haha 20:55:35 finnish 20:58:45 Arc_Koen: I suspect fizzie was too slep to notice the pun 20:59:04 well it did take me 40 minutes 21:08:35 olsner: No, I noticed it. 21:08:47 olsner: I just didn't want to dignify it with a response. 21:12:26 fizzie: you just did 21:15:48 -!- ogrom has quit (Quit: Left). 21:19:40 Goodnight 21:19:42 -!- atriq has quit (Quit: Leaving). 21:37:12 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.88.2 [Firefox 15.0.1/20120905151427]). 21:40:59 -!- pikhq has quit (Read error: Connection reset by peer). 21:41:09 -!- pikhq has joined. 21:43:26 After I make the Elemental Solitaire Famicom game, then I might make up the hangman game on Famicom, using the Famicom keyboard. 21:44:11 -!- Nisstyre-laptop has joined. 21:46:17 -!- trout has changed nick to function. 21:46:26 zzo38: why do you like famicom 21:47:39 I want to try to write some software on it. 21:48:28 (The only hardware I have is a clone, which has a 60-pin slot and some games built-in, many of which do not work properly.) 21:48:55 (I also have no way to program a ROM cartridge. But, I do have emulator, so I can use that.) 21:51:46 is it hard to write for 21:51:55 Somewhat. 21:52:01 6502 assembly? 21:52:05 Yes. 21:52:16 And decimal mode doesn't work. 21:52:20 did that LFSR PRNG work out for you 21:52:38 I decided not to use it; I am using something else. 21:53:14 what 21:54:44 Rather, it uses ARCFOUR to shuffle the deck many times per frame, and has a limit equal to the number of cards remaining in the deck (at first 52); this limit is reduced when cards are dealt, causing the memory for cards already dealt to remain static until the game is restarted. 21:55:41 (It seems easier to simulate modulus arithmetic if doing it this way, for one thing.) 21:55:57 what is ARCFOUR 21:56:17 The open-source and non-trademarked version of RC4 21:56:39 (Actually only a part of the ARCFOUR algorithm is used; not all of it.) 21:57:08 -!- oerjan has joined. 21:59:16 12:34:14: basically for a program to be reversible, it must not allow information to be destroyed right? 21:59:19 12:34:35: but there's nothing wrong with information being created 21:59:31 no, those are equally forbidden. 21:59:44 really? 22:00:17 This is the code to shuffle the cards: http://sprunge.us/PNJM 22:00:25 well i guess you could have a weaker version of reversible as you say 22:00:27 my point was that a program could be "reversible" (not sure that's the right word) without its reverse being reversible as well 22:00:32 yeah :) 22:01:42 although hm 22:02:01 zzo38: Can I access sprunge.us over Gopher? 22:02:07 most programming languages don't actually create information most of the time 22:02:17 since they are deterministic 22:02:51 shachaf: Unfortunately not because it seems to requires a Host: header. 22:02:53 hmm, well you can ask for input, or use functions like a random number, or stuff 22:03:06 zzo38: Gopher doesn't have that? 22:03:11 Wow, what a useless protocol. 22:03:18 The Internet *NEEDS* a Host: header! 22:03:25 Actually, you can do it without a Host: header, as follows: gopher://sprunge.us:80/0http://sprunge.us/PNJM 22:03:37 Actually, you can do it without a Host: header, as follows: gopher://sprunge.us:80/0GET%20http://sprunge.us/PNJM 22:03:39 I'm sure many programming languages have functions to "put stuff back on the input buffer" 22:03:41 That might work. 22:04:07 though "take stuff back from the output buffer" is impossible if it has been flushed 22:04:13 shachaf: With IPv6 you don't need, which is why some gopher is IPv6-only. 22:04:31 hahaha 22:05:04 gopher will make a comeback! 22:05:25 Except for a problem with the sprunge.us it is using Google server which has a bug making headerless HTTP not working properly. 22:05:29 Please tell Google to fix this. 22:05:39 @google please fix this 22:05:43 http://pleasefixtheiphone.com/ 22:05:43 Title: Most wanted ever | Please fix the iPhone 22:07:19 oerjan: so did you read the whole log before you joined? 22:08:10 oh, so "real fast" applied to "download" 22:08:21 no i _am_ reading the whole log. 22:08:44 darn i was imagining Nora as the fastest hairdresser ever :( 22:09:09 yeah, it was kinda catchy 22:09:13 -!- epicmonkey_ has quit (Ping timeout: 272 seconds). 22:10:50 so I had an idea for a nondeterministic program 22:11:13 ...Nora apparently died in the first movie, so I guess not. 22:11:40 something that'd use Pascal's triangle - that is, have an "instruction pointer" bounce off several nodes before hitting an instruction to execute 22:11:52 s/rogram/language 22:12:38 and maybe some of the instruction would make the instruction pointer bounce back into that structure. or maybe there can be flow control instructions on the node 22:12:56 (like switches or whatever) 22:13:39 -!- Vorpal has quit (Ping timeout: 252 seconds). 22:13:52 like http://en.wikipedia.org/wiki/Bean_machine ? 22:14:11 yes 22:14:19 (well, if that's what I think it is) 22:14:35 I have a quick question for everyone, but I want to ask it someplace that's not logged 22:14:46 well i got to it by googling "pascal's triangle binomial distribution balls" 22:14:59 since i couldn't remember what it was called 22:15:16 Sgeo: that's ok it's just hemorrhoids 22:15:54 Sgeo: maybe you can paste it in a place that's cleared every day 22:16:57 -!- nooga has quit (Ping timeout: 252 seconds). 22:18:57 -!- nooga has joined. 22:19:56 Sgeo: is #sgeosquestion logged? 22:20:09 just asking hypothetically 22:24:29 LAMBDA APPLY ZERO LAMBDA LAMBDA ZERO should be an "at", or a cat that ignores the first character 22:25:16 \x (\y \z z) 22:25:29 ohhhh 22:25:31 oerjan: can you explain why RFNHS3:SDD is turing-complete? 22:25:42 so \x expr means lambdax.expr 22:25:46 quintopia: because it encodes lambda calculus, duh 22:25:59 i don't get the numbers thing 22:26:09 or rather 22:26:11 quintopia: it's de bruijn notation, i wrote 22:26:11 how application works 22:26:22 i don't understand de bruijn notation really 22:26:57 you replace "n" by the variable of the n'th surrounding lambda. starting at 0'th in this case. 22:27:52 oh wait 22:28:06 duh 22:28:23 \ (0 \ \ 0) 22:28:37 oerjan: though I appreciate the de bruijn link, your explanation on the channel was far more explicit than the one on the wiki page, if I recall correctly 22:28:38 \ x (x \y \z z) 22:29:27 Arc_Koen: well the thing is that actually doing the application with de bruikn indices is a bit complicated - you need to adjust some of the numbers 22:29:40 oh 22:29:47 right 22:30:00 so i couldn't be bothered to write it all out 22:30:01 cause of names clash or something? 22:30:08 not clash. 22:30:22 yeah I know what you mean 22:30:41 quintopia: so basically, by default the variable in a lambda expression is named ZERO 22:30:48 but when you copy an expression to a different level, all the numbers that refer outside the expression need to be added a constant to 22:31:16 while those that refer _inside_ the expression are kept as is 22:31:24 but if you have LAMBDA (... LAMBDA(...)), the ZERO in the innermost lambda is the variable of the innermost lambda; so the variable of the toplevel lambda is ONE MORE THAN ZERO 22:32:12 in particular the variable of a lambda may be named differently in different parts of the expression 22:32:13 ok atriq's at looks right when i fixed my error 22:32:28 Arc_Koen: exactly! 22:32:42 didn't i write that on the wiki... 22:32:48 more or less 22:32:56 but you did write that on this channel :) 22:33:14 ah no 22:33:19 right 22:38:13 quintopia: λx.(x λy.xy) would be written as λ(ZERO λ(ONE ZERO)) 22:39:19 Arc_Koen: expanded the wiki explanation a bit, probably still hard to read :P 22:39:28 (λ.0 (λ.1 0)) 22:39:49 (except it would actually be LAMBDA APPLY ZERO LAMBDA APPLY ONE MORE THAN ZERO ZERO) 22:40:27 but I feel like I'm hurting my computer when writing like that 22:40:40 no thats your brain 22:40:48 Arc_Koen: rsi-ffic 22:40:58 are you programming in Real Fast Nora's Hair Salon 3: Shear Disaster Download? 22:41:07 is there a webapp framework for Real Fast Nora's Hair Salon 3: Shear Disaster Download yet? 22:41:23 I don't know what a webapp framework is 22:41:29 but it is in the Unimplemented category 22:41:34 it's a framework which helps you write web applications 22:41:35 * oerjan for a microsecond considers replacing ESME by Real Fast Nora's Hair Salon 3: Shear Disaster in the topic 22:42:40 Perhaps send a message to people making sprunge tell them to remove the HTTP headers. 22:42:56 we need RFNHS3:SDD.NET 22:43:35 don't forget the Download PART 22:43:56 otherwise people will think the hairdresser is real fast! 22:45:06 14:46:35: No 22:45:06 14:46:42: It means apply KI to input 22:45:21 I think that's a yoga thing 22:45:23 i think atriq is _still_ confused about the term "apply to" 22:46:06 one applies a function to an argument, but he seems to be using it in reverse 22:46:48 but his actual examples show he means RFNHS3SDD to have the usual order 22:47:50 i can only imagine this isn't helped by everything potentially being a function and an argument 22:48:00 indeed 22:48:17 @_@ 22:48:42 no no, itidus21 don't faint, it's _okay_ to be right occasionally! 22:49:12 APPLY LAMBDA APPLY ZERO ZERO LAMBDA APPLY ZERO ZERO 22:49:15 hey look, infinite loop 22:49:16 * oerjan swats himself for being evil -----### 22:49:37 (\(0 0) \(0 0)) 22:49:44 OKAY 22:50:37 that's actually the example that made me began to not understand how ocaml worked 22:50:41 let x x = x in x x 22:51:31 i don't think that's the same... 22:51:34 (ok it could be less confusing as "let f x = x in f f" 22:51:44 well yes it is 22:51:50 uh 22:51:52 no it's not 22:51:55 itym = x x 22:52:02 wait 22:52:03 which btw cannot type 22:52:09 yes, that was the problem 22:52:13 -!- augur has quit (Remote host closed the connection). 22:52:22 unless you give option -t to ocaml 22:52:28 wait, what? 22:52:55 yes there's an option to allow cyclic types, i used it for an unlambda -> ocaml "compiler" 22:53:18 not quite sure it was called -t 22:53:28 well -t is not in the toplevel otpions 22:53:43 -rectypes Allow arbitrary recursive types 22:53:44 maybe 22:55:16 yeah that's it 22:55:22 # let x x = x in x x;; 22:55:22 - : '_a -> '_a = 22:55:23 # let x x = x x in x x;; 22:55:23 ^CInterrupted. 22:55:27 http://oerjan.nvg.org/esoteric/unl2caml/ 22:55:28 (with otpion -rectypes) 22:55:48 (the second line I interrupted because apparently it was indeed an infinite loop) 22:56:24 :) 22:57:22 # let y = (let x x = x in x x) in y y;; 22:57:23 - : 'a -> 'a as 'a = 22:57:30 hummmm never had "as 'a" before 22:57:47 haskell has the newtype declaration instead, which requires you to explicitly wrap things but is deleted on compilation 22:58:51 # (let y = (let x x = x in x x) in y y) 3;; 22:58:51 Error: This expression has type int but an expression was expected of type 22:58:51 'a -> 'a as 'a 22:58:54 what the hell 22:59:01 that was supposed to yield a 3 22:59:53 "let x x = x" makes x the identity; "in x x" is id id which is id; so y is id; so y y is id; so (...) 3 should be 3 23:00:28 Arc_Koen: 'a -> 'a as 'a means a function which takes its own type as argument and result. you cannot pass it an int. 23:00:42 ohhhhhh nice 23:01:01 so hum 23:01:05 I could pass it itself 23:01:10 and... that's about it? 23:01:59 no lots of other things fit, e.g. any pure lambda expression 23:02:28 'a -> 'a as 'a basically is the closest thing you can get to untyped lambda calculus 23:03:29 -!- impomatic has quit (Quit: impomatic). 23:03:31 would be nice to have such comments automatically beeing associated with these 'expressions' by a bot, to be accessible for other users looking for help/comments 23:04:17 hagb4rd: `pastelogs, hth 23:06:11 erm can you make make an example for "'a -> 'a as 'a" and "means a function which takes its own type as argument and result. you cannot pass it an int" 23:07:07 -!- DHeadshot has joined. 23:07:25 @tell atriq so your church incrementation excerpt translates to λxyzt.x z (y z t), right? 23:07:26 Consider it noted. 23:07:33 16:13:31: I thought they had a formal definition for "everything" 23:07:36 16:13:35: that definition is turing machine 23:07:38 16:14:04: or if you like lambda calculus, they are equivalently powerful 23:07:50 haha, now you're getting to the interesting part of the log :) 23:08:06 That's not everything, is it? 23:08:13 * shachaf has no context for that. 23:08:20 You can talk about things more powerful than Turing machines, though. 23:08:52 part of what makes the church-turing thesis so believable is that every time they have invented another way to compute that can actually be realistically achieved, it turns out to be at most that powerful 23:09:18 so what about those quantum computers 23:09:52 still not more powerful. exponentially faster in some cases, but given enough time, they're the same strength. 23:10:21 ah that's disappointing 23:10:22 proof: a classical computer can simulate a quantum computer using exponential time 23:10:44 well we probably have to wait for the time-travel machine then 23:10:52 (it's just complex matrix calculations, after all) 23:12:10 can we use the effect of quantum entanglement in some way to speed up things in some way? 23:12:53 -some way 23:13:07 hagb4rd: well that's the theory of quantum computing. at most exponential speedup, however. (and not for all calculations, prime factorization is the most famous one.) 23:13:17 Yes. It's called quantum computing 23:13:33 i'll just have to quote the tagline of scott aronson's blog... 23:13:35 okay. 23:13:44 *aaronson 23:14:02 "Quantum computers are not known to be able" 23:14:02 to solve NP-complete problems in polynomial time, 23:14:05 and can be simulated classically with exponential slowdown. 23:14:19 why doesn't irssi have dwim pasting :( 23:14:30 *-" +" 23:15:44 @tell atriq so your church incrementation excerpt translates to λxyzt.x z (y z t), right? <-- that looks correct for incrementation, anyway 23:18:01 heh this recent post looks a bit relevant, and funny :P http://www.scottaaronson.com/blog/?p=1121 23:33:14 I'm not sure he explains much 23:34:47 "If you want a Turing machine to toast bread, you need to connect it to a toaster; then the TM can easily handle the toaster’s internal logic (unless this particular toaster requires solving the halting problem or something like that to determine how brown the bread should be!). " *laugh 23:38:10 -!- aloril has quit (Ping timeout: 244 seconds). 23:42:32 although, the TM may still be working on the logic long after your hunger passes 23:43:21 another argument in favour of quantum toasting 23:46:17 -!- DHeadshot has quit (Read error: Connection reset by peer). 23:46:33 -!- DHeadshot has joined. 23:51:53 -!- function has changed nick to invariable. 23:52:10 -!- aloril has joined. 23:54:51 -!- nooga has quit (Ping timeout: 252 seconds).