00:11:46 shachaf: people elsewhere are talking about the best bagels in san francisco 00:12:31 apparently http://www.deliboardsf.com/ has secret bagels 00:12:40 which are boiled in new york, baked in SF, and not listed on the menu 00:13:00 On the other hand there's http://idlewords.com/2007/04/the_alameda-weehawken_burrito_tunnel.htm 00:14:08 -!- Phantom_Hoover has quit (Read error: Connection reset by peer). 00:15:33 Someone asked a question in #clojure about whether the stdlib includes a feature 00:15:52 As far as we can tell, it's both a really bad idea and impossible. But my language would make it possible. 00:16:00 That sort of makes me take pause. 00:17:33 Someone linked to http://www.ioccc.org/2012/tromp/hint.html 00:20:37 -!- sirdancealot7 has quit (Ping timeout: 246 seconds). 00:24:39 Hmm, I think the scoping I have in mind is technically dynamic but with a function to essentially temporarily clear currently bound stuff 00:24:48 http://store.valvesoftware.com/product.php?i=CP201 00:26:01 ++ 00:26:24 Is something like this too ugly? 00:26:28 space gotta go to space 00:26:48 -!- sirdancealot7 has joined. 00:26:49 (defn foo '[a b c] '(level '(+ a b c))) 00:26:55 In terms of needing that level there? 00:26:59 Wait, hmm 00:27:11 o.O that level is in a very wrong place 00:29:08 is that scheme? 00:29:17 Of course not. 00:29:26 It's Clojure. You don't even need to read it to know that it's Clojure. 00:29:27 oh 00:29:34 The nick is enough. 00:29:43 oh 00:30:13 Not Clojure 00:30:26 It's a variation based on Clojure + Tcl 00:30:33 Unsure how I'm going to deal with lexical scoping 00:31:47 -!- Frooxius has quit (Ping timeout: 240 seconds). 00:32:40 Is this ugly? 00:32:49 (deflfn '[a b c] '(+ a b c)) 00:32:51 it looks like scheme 00:32:52 Translates to 00:32:54 how could it be ugly 00:33:08 deflfn is a weird word though 00:33:20 (def '(level '(fn '[a b c] '(+ a b c)))) 00:33:59 also for the ioccc link you provided - that looks like it's Real Fast Nora's Hair Salon 3: Shear Disaster Download 00:34:09 It occurs to me that defn and anything similar should be providing a name 00:34:18 (def 'foobar '(level '(fn '[a b c] '(+ a b c)))) 00:34:26 (deflfn 'foobar '[a b c] '(+ a b c)) 00:35:49 with LAMBDA as 00, APPLY as 01, ZERO as 10 and ONE MORE THAN as 1 00:38:49 -!- monqy has joined. 00:40:38 I am slowly turning into Gamzee. 00:40:58 That reminds me. Arc_Koen, keep reading Homestuck. 00:41:07 yeah hum maybe 00:41:16 I mean I liked the humour 00:41:25 buuuut it was kind of repetitive and slow 00:41:39 It speeds up 00:53:10 -!- sirdancealot7 has quit (Ping timeout: 246 seconds). 01:02:27 's a shame the mailing list doesn't exist any longer 01:20:14 If I don't have true lexical scoping, but do have an easyish way to effectively say "Hey, consider this a separate scope", is that sufficient for a language to be comfortably usable? 01:21:19 ??? 01:26:20 * Sgeo is suddenly not sure if he's reinventing picolisp or not 01:26:57 Hmm, I'm... not sure 01:27:20 what are you doing and why 01:27:38 monqy: ask not what are you doing and why, but what aren't you doing and why not 01:27:39 Language based off Clojure and Tcl where conditionally printing looks like 01:27:52 (if blah '(println "true") '(println "false")) 01:27:58 For example 01:28:07 Tcl-esque 01:28:30 have fun i guess 01:32:59 why wouldn't you have lexical scoping though 01:33:02 i bet it's a bad reason 01:33:34 "i bet you're a bad person" - "monqy'" 01:33:46 sssh baby steps 01:34:16 monqy: HEY THAT WAS MONQY PRIME 01:34:17 not you 01:34:20 ok? 01:34:40 ok 01:35:37 get it? 01:35:39 got it 01:35:40 good 01:50:42 kmc: 00000000-0000-0000-0000-000000000000 is a perfectly valid UUID! 01:50:53 It could've come about as random chance. 01:50:54 Stop reading into things. 01:51:43 kmc: So IOCCC 2012 is done. 01:51:51 When's your contest coming along? 01:53:03 shachaf: guaranteed to be chosen at random 01:53:30 oh IOCCC 2012 is done? 01:53:39 i had a good idea for an entry 01:53:41 next year i guess 01:54:17 kmc: http://www.ioccc.org/years.html#2012 01:54:39 18:51 https://raw.github.com/gist/3909430/377bfe9b1a62e1c74acac0ec32ca4261c66379cd/%F0%9D%94%93%F0%9D%94%AF%F0%9D%94%A2%F0%9D%94%A9%F0%9D%94%B2%F0%9D%94%A1%F0%9D%94%A2.hs 01:55:10 ion: Why doesn't that export most of the identifiers? 01:56:19 I forgot. 02:07:47 -!- pikhq has quit (Read error: Connection reset by peer). 02:09:08 -!- pikhq has joined. 02:28:08 -!- jfguest has joined. 02:38:38 -!- jfguest has quit (Quit: leaving). 02:45:39 -!- Arc_Koen has quit (Quit: Arc_Koen). 02:46:59 -!- Max00355 has joined. 02:48:15 Is it possible to write to a file with brainfuck? 02:50:11 -!- pikhq_ has joined. 02:50:16 -!- pikhq has quit (Ping timeout: 244 seconds). 02:53:09 -!- Max00355 has quit (Ping timeout: 260 seconds). 03:02:46 -!- Max00355 has joined. 03:05:31 -!- zzo38 has quit (Remote host closed the connection). 03:15:47 BACK IN THE DAY, SON, WE DIDN'T HAVE FILES 03:15:54 AND EVERYTHING WAS IN UPPERCASE 03:16:03 BACK IN THE DAY WE DIDN’T HAVE SONS 03:19:51 Max00355, well, you could direct the output of a brainfuck interpreter to a specific file 03:20:06 Or you could use something like PSOX, although I abandoned it before hammering out the file stuff 03:28:42 ion++ 03:28:44 that is amazing 03:30:42 http://i.imgur.com/6QpIO.png 03:31:00 kmc: https://gist.github.com/3909452 03:33:51 nice 03:37:10 Interesting, the gist title was cut off from the first non-BMP character. 03:43:49 Max00355: Brainfuck itself has no particular mechanism for doing so. 03:44:46 that's why you should always use brainfuck implementations where the tape has finite size and the array indexing is not bounds-checked 03:44:52 then you can write to files 03:45:16 now i wanna write a brainfuck JIT spray 03:52:02 So, let me blab about NFU. 03:52:18 NFU is that set theory where comprehension is allowed for any "stratified" formula. 03:53:10 So {x where x = x} is a valid set. It contains everything. {x where {} is a subset of x} contains all sets. {(x,y) where x is a subset of y} is a valid set. 03:53:30 {x where x is not in x} is not a valid set, because "x is not in x" is not a stratified formula. 03:54:33 Stratified comprehension is the bulk of NFU. It has an axiom, the axiom of choice, that is equivalent to a function with a certain property. 03:55:05 Equivalent to the existence of such a function, I mean. 03:55:11 It has another axiom, the axiom of counting, which isn't obviously equivalent to the existence of a function at all. 03:58:04 If S is a set, let Box(S) = {{x} where x in S}. 03:58:19 The axiom of counting states that if S is finite, then S has the same cardinality as Box(S). 04:03:05 The "obvious" way to express that as a function is to say that if S is finite, then there is a bijection between S and Box(S). But that sounds really dangerous. 04:11:47 -!- sivoais has quit (Quit: leaving). 04:12:17 -!- sivoais has joined. 04:16:44 -!- FreeFull has quit. 04:49:45 -!- Jafet1 has joined. 04:51:10 -!- Jafet has quit (Ping timeout: 265 seconds). 04:56:04 is there pine tar flavored bread in finland 04:58:53 kmc: johnw of #haskell-blah is on the C++ committee, voting on C++14 features. 04:58:57 You're missing the fun. 04:59:10 -!- zzo38 has joined. 05:04:14 jesus 05:04:17 what's new in C++14 05:04:57 Apparently they were voting on "return { 10 };" syntax today. 05:05:39 Which, if your return type is a class, calls the constructor of the class? 05:11:26 Lots of other things. 05:42:34 -!- impomatic has quit (Quit: http://BASICcomic.com). 05:52:28 -!- FireFly has quit (Excess Flood). 06:00:04 -!- FireFly has joined. 06:51:18 -!- AnotherTest has joined. 06:51:26 -!- AnotherTest has left. 07:04:17 -!- Phantom_Hoover has joined. 07:14:06 -!- Jafet1 has quit (Quit: Leaving.). 07:25:28 -!- epicmonkey has quit (Remote host closed the connection). 08:02:54 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 08:04:50 -!- zzo38 has quit (Remote host closed the connection). 08:10:54 -!- nooga has joined. 08:23:30 -!- epicmonkey has joined. 08:30:04 -!- Jafet has joined. 08:55:55 -!- sirdancealot7 has joined. 09:04:45 -!- epicmonkey has quit (Remote host closed the connection). 09:04:55 -!- epicmonkey has joined. 09:15:47 -!- monqy has quit (Quit: hello). 10:11:49 -!- Phantom_Hoover has joined. 10:21:31 What exactly can brainfuck be used for besides printing out some ASCII characters? 10:23:01 inputting ascii characters 10:23:21 Calculating exciting stuff. 10:23:24 ^pow2 10:23:25 1 2 4 8 16 32 64 128 256 512 1024 2048 4096 8192 16384 32768 65536 131072 262144 524288 1048576 2097152 4194304 8388608 16777216 33554432 67108864 134217728 268435456 536870912 1073741824 2147483648 42949672 ... 10:23:31 See, that's from brainfuck. 10:23:41 Making benchmarks against your new language 10:24:07 Getting brain-bricked, via the "make a derivative language, wait a few seconds" plan. 10:24:50 ^rainbow Not to forget the prettiest rainbows. 10:24:51 Not to forget the prettiest rainbows. 10:26:24 And then there's always the highly vibrant brainfuck adventure game development community. There's Lost Kingdom, and... well, I guess Lost Kingdom. 10:27:41 Can it be modded? 10:28:21 I seem to recall it was mostly automatically generated, so the code isn't perhaps too edit-friendly. 10:28:50 The source is 2189420 bytes long. 10:30:38 I bet most games aren't that big. 10:33:53 -!- ais523 has joined. 10:57:45 -!- ais523_ has joined. 10:57:50 -!- ais523 has quit. 10:59:01 -!- ais523_ has changed nick to ais523. 11:20:00 -!- atriq has joined. 11:38:38 -!- olsner has quit (*.net *.split). 11:43:02 -!- olsner has joined. 12:02:47 -!- boily has joined. 12:09:15 -!- Arc_Koen has joined. 12:09:34 hello 12:09:55 Hey 12:10:31 moi 12:10:46 bonjour mein freundes 12:11:00 -!- pikhq_ has quit (Ping timeout: 265 seconds). 12:11:18 is this international day or something? 12:11:44 Da. 12:11:49 ad nibelung des moines 12:11:53 Internation indoeuropean day 12:12:08 wow, Chris Pressey's back 12:12:28 and it looks like he wants to make it up for the time he was missing! 12:16:50 "mascarpone" 12:16:59 so that's why someone said "another cheesy language" yesterday 12:17:15 netbsd 6.0 released! 12:23:44 where 12:24:06 In its natural habitat, one hopes. 12:24:08 Back into the wilds of Northern Scotland 12:24:43 atriq: Do you have roaming bands of BSDs in Scotland? 12:25:05 fizzie, nah, they're quite solitary 12:25:23 I'm too far south to get them here, though 12:31:02 northern scotland, or as literally everyone else calls them, the highlands 12:31:39 Is that where the HIGHLANDERS fight? 12:36:57 -!- ais523_ has joined. 12:37:14 -!- ais523 has quit (Read error: Connection reset by peer). 12:40:44 bon matin à tous! I'm wearing my http://www.amazon.com/Save-Planet-Learn-Proto-Indo-European-T-shirt/dp/B0087LFWDY t-shirt today! 12:47:30 fizzie, no, they do that in new york 12:47:52 -!- ais523_ has changed nick to ais523. 12:59:16 -!- atriq has quit (Ping timeout: 246 seconds). 13:16:49 -!- atriq has joined. 13:18:42 -!- elliott has joined. 13:30:57 ais523: ping 13:30:57 elliott: You have 2 new messages. '/msg lambdabot @messages' to read them. 13:51:46 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 14:10:14 UK court says Apple must now run adverts in major British papers and leave a banner on its website for 6 months saying Samsung isn't a tablet-design copycat. (zdnet.com) 14:10:15 i 14:10:36 [[Apple has lost an appeal against Samsung in the U.K. after the first judge claimed the Galaxy Tab 10.1 could not have infringed the iPad because it wasn't "cool" enough.]] 14:10:37 im 14:12:11 -!- copumpkin has joined. 14:38:36 -!- function has changed nick to constant. 14:41:03 -!- copumpkin has quit (Remote host closed the connection). 14:53:59 hahaha 14:54:27 wait is this real life you're talking about 14:54:46 Surreal life 14:55:44 i had an english teacher who pronounced surreal 'sooral' 14:56:15 Soo ray al? 14:58:32 yes 14:58:57 she also pronounced poem 'poeeyem' but that's weirdly common in scotland 15:00:53 Did she pronounce "film" with two syllables? 15:01:15 probably 15:03:30 -!- copumpkin has joined. 15:05:27 like "fillem"? 15:05:45 Yes, or "fillum" 15:06:01 nah, that's just you pronouncing fillem wrong! 15:06:06 :P 15:06:24 anyway see you later 15:06:28 See ya 15:06:43 oh and give a look at that mascarpone language it looks great 15:07:03 (was looking for a slightly more expressive adjective than just "great" but hey) 15:07:46 how about "awesome" 15:08:35 there's no page on the wiki. is there any public info floating somewhere on mascarpone? 15:11:13 Possibly the same thing as Emmental, not sure 15:19:10 -!- zzo38 has joined. 15:21:23 -!- Vorpal has joined. 15:37:09 -!- ais523 has quit. 15:38:12 Thinking about Featured Languages 15:41:18 I'm gonna suggest not Underload, because Glass is stack based too 15:41:48 I might put my weight behind Malbolge 15:44:59 It's quite different to Glass and /// 15:45:03 It's got examples 15:45:21 It's got a specification 15:46:46 It's implemented 15:50:03 -!- augur has quit (Remote host closed the connection). 15:52:06 -!- hagb4rd has joined. 15:53:45 atriq: are you planning to become an admin 15:53:50 do you want to be in charge of featured languages 15:54:06 I don't know if I can be trusted with the responsibility! 15:54:47 -!- Phantom_Hoover has quit (Ping timeout: 265 seconds). 16:03:06 -!- copumpkin has quit (Ping timeout: 264 seconds). 16:06:24 Do you have a pipe organ? 16:08:33 I do not! 16:08:50 I have an electric keyboard with 2 pipe organ voices, though 16:09:04 atriq: Two???? 16:09:08 Yes 16:09:14 Pipe Organ 1 and Pipe Organ 2 16:09:47 Also, Synth Organ and Jazz Organ 16:12:05 atriq: fancy 16:12:43 atriq: Do they sound different??? 16:12:48 I don't know 16:12:51 I want to hear Pipe Organ 1 and Pipe Organ 2. How do you make two separate pipe organ voices. 16:12:58 how can you not know!! 16:14:05 Well, I suppose they could have different stops, different swell shades, etc 16:14:05 Hmm 16:14:14 Pipe Organ 1 sounds bolder, Pipe Organ 2 more italic 16:14:22 I think that only makes sense for me 16:18:10 atriq: i'm going to have to demand audio here 16:19:00 I'm gonna have to refuse or at least arbitrarily delay 16:21:14 harsh 16:21:20 i will never know the smooth sounds of pipe organ 1 & 2 16:21:24 "More italic", is that like as in the cursive typeface? 16:23:52 fizzie: Hey, how's that thing? 16:25:28 What, what, WHAT. There's no "things". 16:28:44 -!- copumpkin has joined. 16:32:55 -!- atriq has quit (Ping timeout: 252 seconds). 16:34:02 fizzie: Are you sure?? 16:36:38 -!- mindlessDrone has joined. 16:36:52 hi 16:37:18 -!- ais523 has joined. 16:38:00 -!- FreeFull has joined. 16:38:23 elliott: http://www.youtube.com/watch?v=k-jRj8qXpag#t=1m40s 16:39:36 `welcome mindlessDrone 16:39:48 mindlessDrone: Welcome to the international hub for esoteric programming language design and deployment! For more information, check out our wiki: http://esolangs.org/wiki/Main_Page. (For the other kind of esoterica, try #esoteric on irc.dal.net.) 16:41:02 -!- augur has joined. 16:41:22 They tell you that it's the international hub, but really there are only two countries: Hexham and Finland. 16:41:29 (And I'm not Hexhammish!) 16:41:51 Hexland and Finham. 16:46:12 No, some people of esolang are Canada, too. 16:47:05 Some people of esolang are *alleged* to be Canada. 16:47:14 (Innocent until proven guilty and all that.) 16:47:34 zzo38: What is there in Canada, really, once you take out the Hexham and the Finland? 16:50:18 -!- copumpkin has quit (Ping timeout: 256 seconds). 16:50:27 shachaf: Canada. 17:04:02 -!- Phantom_Hoover has joined. 17:13:53 -!- AnotherTest has joined. 17:14:02 hello 17:17:24 -!- atriq has joined. 17:18:10 fizzie, yes 17:20:13 -!- atriq has quit (Client Quit). 17:22:12 I'd ask how it translates to sound, but I might not want to hear the answer. 17:27:06 I'm in England but not Hexham 17:27:38 OMG this is a programming language? I thought this is hardcore esoteric like walking over water 17:27:58 I can walk in water 17:28:06 And over water if there is a bridge or something 17:28:16 ^^ 17:29:02 Can you walk on water if frozen to make ice? 17:29:27 I'm back from lunch and what do I know? people here doubting my canadianness. 17:29:57 mindlessDrone: What did you want about walking over water, anyways? 17:30:27 Esolang is not in itself a programming language, but rather involves prorgamming language; see wiki for information 17:30:49 don't know ..i want to know how jesus may felt 17:31:50 try nailing yourself to some wood 17:32:00 xD 17:32:32 i try to read the wiki ..but its so much text ... 17:34:18 It is supposed to be so much text ... 17:35:30 zzo38: No, I slip 17:39:04 -!- oklofok has quit (Ping timeout: 246 seconds). 17:40:37 There's that thing. 17:41:16 http://dsc.discovery.com/gear-gadgets/man-attempts-walking-across-sea-in-a-human-sized-hamster-wheel-photos.html 17:41:22 That thing, maybe that's a bit Jesusy. 17:41:33 I mean, kind of, sort of. 17:42:26 -!- copumpkin has joined. 17:42:37 awesome 17:43:21 And anyway wasn't he a carpenter's son or something? I mean, adopted, if you can call it that. I'm sure he could've fiddled together something like that. 17:44:05 Maybe a slightly more creakier version but still. 17:47:33 sure ..sounds plausible 17:48:05 -!- nortti has changed nick to []{}\|-_`^. 17:48:10 It is also possible that they mistaken him, they misremembered, they added the walking on water for metaphorical purposes, and various other things, including but not limited to, divine magic 17:48:53 -!- []{}\|-_`^ has changed nick to nortti. 17:51:36 a german comedian once sayed "maybe he was just buying water" because in german buying and walking are rhyming 17:52:35 indeed. 17:53:28 -!- WeThePeople_ has joined. 17:57:07 -!- epicmonkey has quit (Ping timeout: 246 seconds). 18:00:02 FreeFull: Um... 18:00:07 England is *in* Hexham. 18:00:39 -!- nortti has changed nick to ^[. 18:00:51 nortti has escaped the dungeons of doom. 18:01:02 <^[> :P 18:01:25 Many electronic piano/synthesizer have only a few fixed settings and cannot be changed much, sometimes there are a few possibilities. 18:01:35 -!- WeThePeople_ has quit (Read error: Connection reset by peer). 18:02:00 zzo38: http://ampnoise.com/mp3/MusicOnThePDP-1X_Pinafore.mp3 18:02:25 -!- ^[ has changed nick to [-]. 18:02:36 -!- [-] has changed nick to ^[. 18:02:52 I wrote on paper some 32 byte registration of digital synthesizer, including FM section, additive section, square section, saw/triangle section, organ section, percussion section, and global section. 18:04:10 -!- ^[ has changed nick to nortti. 18:06:16 And then you can have multiple manuals, each with their own registration, and pedalboard, as well as other pedals and other controls 18:07:16 -!- oklopol has joined. 18:12:45 hmm, I think I hit my personal record for getting a Slashdot post modded up to +5 18:12:48 it was less than 5 minutes 18:12:56 (second post on an article about a court case, linking to the verdict) 18:17:34 wow, I'm already old enough to have difficulty comprehending just how fast computer storage is increasing 18:17:49 you can get a 64GB SD card for a reasonably affordable price, for insance 18:17:52 *instance 18:18:20 I grew up with floppy disks (5¼" were the most common when I started using computers, but 3½" were the first I really started using) 18:19:09 I never ued a 5¼" floppy disk. :-( 18:19:24 that was before I started using PCs 18:19:24 But I remember 3½" fondly, of course. 18:19:33 SD cards don't freak me out as much as microSD cards. Aren't those up to at least 32G now too? 18:19:47 * shachaf has a 32GB microsd card. 18:19:58 PCs were quite common when I was young, but didn't have anywhere near the market share they do nowadays 18:20:03 It used to be in my phone but now my phone doesn't have a microsd slot. 18:20:05 That gives me the shivers. 18:20:36 fizzie: You can get 64GB microsd these days. 18:20:53 That's, like, double-shivers. 18:21:04 It's the size of a fingernail. 18:21:08 my primary school used primarily Acorn computers, together with some BBC Micros 18:22:24 The "parallel class" (not sure what's the term; same grade, a different group) in primary school had a PC. We were kinda jealous. 18:22:27 I don't like SD card much, though, especially the small ones which don't have a write protect switch. 18:22:40 (On the other hand, we took more class trips.) 18:23:01 Their PC ran Windows 1.02; this was in the higher grades. 18:23:21 Hmm, 32gb microsd is down to $20. 18:23:29 the computers in my secondary school were PCs, mostly running Windows 95; some were on Windows 3.11, and they upgraded to 98 after a while 18:23:53 They also had a directory with "high-ascii" (sorry for the misnomer) characters in it, with Leisure Suit Larry 1 (I think) and some other games hidden in it. 18:24:07 See, the teachers couldn't get in there. 18:24:31 i used a bbc micro in playschool 18:24:33 pretty sure it was obsolete then 18:24:39 elliott: it probably would have been 18:24:41 You had to memorize the numbers to type with alt-NNN. One of them was the empty space, too. 18:24:43 since this was like late 90s-early 2000s :P 18:24:47 about the time I finished secondary school, they decided to get rid of their BBC Micros 18:24:54 so they sold them to their students for £20 each 18:25:03 in year 1 or so we had an acorn(!!) 18:25:04 we bought one and played with it for a while; I learned 6502 asm on it 18:25:14 BBC Micro? That sounds like the future. 18:25:21 the B and Y keys were broken, but that wasn't impossible to deal with 18:25:31 because function keys were rebindable 18:25:33 Then they installed that Windows 1, and the MS-DOS Executive let you navigate to any directory. It was a problem. 18:25:51 you could get the B via copying-and-pasting from the "BBC" tagline it printed when it loaded 18:25:57 -!- Phantom_Hoover has quit (Ping timeout: 248 seconds). 18:26:10 for Y you had to write a short BASIC program 18:26:15 oh right, I presumably even knew the Micro was obsolete, since I got a computer before then... 18:26:18 Sounds like an esolang. 18:26:21 (it ran windows 3.11) 18:26:27 shachaf: it wouldn't be a very good one 18:26:32 (did you know: windows 3.11 is not very good) 18:26:43 HEY 18:26:44 HEY 18:26:47 Windows 3.11 is awesome. 18:26:50 elliott: I actually enjoyed 3.1, it did what it was intended to do quite well 18:26:50 ais523: how long did it take you to relearn how to type on a keyboard with b and y where they are rather than on the fkey row 18:26:52 didn't use 3.11 18:26:57 http://upload.wikimedia.org/wikipedia/en/c/c4/Interface_age_scan_nov_1983_p30_bbc_micro_ad.jpg 18:26:57 elliott: not very long, actually 18:27:07 I'm quite used to keys changing places when I move to a different keyboard 18:27:08 Same school where I was called to the principal's office, which was a bit worrisome, but then they just had printer problems. 18:27:10 Gregor: i used windows 3.11 when i was 3, i'm the expert 18:27:14 That looks pretty great. 18:27:19 elliott: I did too, I think! 18:27:24 fizzie: heh, I only got called to the headteacher's office when they wanted to reward me 18:27:29 the punishment was mostly done by other people 18:27:44 shachaf: that sounds unlikely 18:27:50 shachaf: well I guess you aren't that much older than me 18:27:58 I'm pretty sure I did. 18:27:59 and also windows 95 had been out for a few years by the time i got that thing anyway 18:46:12 -!- mindlessDrone has left. 18:59:36 Also remember not to SMARTDRV your Windows 3.1 system disk, because it will cause the loader to just eat a chunk of the Windows logo and choke. 18:59:51 Not SMARTDRV. 18:59:58 What's the online disk compression tool. 19:00:19 DBLSPACE, I mean. 19:01:03 (You can certainly SMARTDRV it.) 19:02:36 Apparently it's a valid configuration if you jump through the right hoops. 19:02:39 Didn't work out for me, though. 19:04:23 -!- AnotherTest has quit (Quit: Leaving.). 19:04:38 -!- AnotherTest has joined. 19:04:43 smartdrv was the disk cache thing? 19:05:35 Yes. 19:05:53 Doublespace played all kinds of weird tricks with hidden volumes called h: and whatnot. 19:07:43 Also loadlin, that's so nifty. My first dual-boot box had its dual-boot done by keeping DOS in the MBR, then using the fancy DOS 6 [menu] menuitem boot menu things to automagically blarp with loadlin. 19:08:22 loadlin is cool 19:08:22 And umsdos, isn't that even niftier? I think I had a slackware umsdos installation. 19:08:27 (Then it went bork.) 19:08:33 what's umsdos 19:09:23 It's the thing that lets you put Unixy things like uids and gids into a plain directory of a FAT filesystem, so that you can have your root in C:\LINUX. 19:09:55 It puts the extra data into a FAT file called --LINUX-.---. 19:10:09 -!- epicmonkey has joined. 19:10:23 Then you can go peek at your /etc as C:\LINUX\ETC\ in DOS land. 19:10:36 And of course ruin everything if you mess with things there too much. 19:11:16 Goes well with loadlin: no partitioning, no boot loader messing-up-with, no nothing. You just enter the drag^HLinux from dos. 19:11:40 I suppose compared to ext2 there might have been some slight performance issues maybe. 19:15:42 -!- copumpkin has quit (Ping timeout: 255 seconds). 19:25:15 Try Jumping http://youtu.be/VSttd3edW98 19:29:11 fizzie: drag^HLinux = draLinux? 19:29:46 Uh, ^W. 19:30:19 (Though "draLinux" doesn't sound like an unreasonable name for a distribution.) 19:30:22 I was trying to find info on this draLinux on google 19:30:28 -!- AnotherTest1 has joined. 19:30:32 I found nothing 19:30:42 The rules state you must now make it. 19:31:10 -!- AnotherTest has quit (Read error: Connection reset by peer). 19:31:39 fizzie: good. I had no name for my distro 19:33:21 fizzie: should I use 2.4 kernels so I could use umsdos? 19:38:47 -!- AnotherTest1 has quit (Quit: Leaving.). 19:39:14 -!- pikhq has joined. 19:39:20 I, uh. I wouldn't, but you are certainly free to. 19:40:11 ok. I'm going to use mastodon linux as a starting point 19:40:44 hmm… YouTube top comment is a warning not to read the rest of the comments 19:40:49 YouTube's self-awareness is scary sometimes 19:41:04 I read the first page of actual comments, they mostly just said that the comments were fine again now 19:41:11 lol 19:42:04 -!- AnotherTest has joined. 19:42:37 Don’t you dare offer free education to our residents! http://chronicle.com/blogs/wiredcampus/minnesota-gives-coursera-the-boot-citing-a-decades-old-law/40542 Meanwhile: http://www.startribune.com/business/164349766.html 19:45:35 I wonder how well modern linux software will work with gcc 2.95 and libc4 19:45:56 2.95 might work. 19:46:03 Actually. 19:46:06 Depends on the program. 19:46:15 Some stuff will work just fine, some stuff depends on C99. 19:46:26 and libc4? 19:46:34 Same issue. 19:46:40 C99 libc. 19:46:46 Also pthreads. 19:46:51 linux 2.0 :D 19:46:51 if you are using gcc 2.95 and libc4 then presumably you are enough of a neo-luddite to not want to use modern linux software 19:47:15 Linux 2.6.0 is the first (official, stable) version of Linux where you can have correct pthreads. 19:47:29 And 2.4.0 is the first where you can have threads that almost work if you squint. 19:47:32 (IIRC) 19:47:40 I'll use 2.4 then 19:47:56 (pssst, you want to use musl) 19:48:15 but why? 19:48:19 :P 19:48:38 LinuxThreads/libc5 was a working combination for threads, at least, pre-NPTL. I don't quite know about libc4 and threads. 19:48:51 fizzie: Very non-conformant though. 19:48:58 and musl doesn't build with 2.95 if I remember correctly 19:49:03 POSIX, schmosix. 19:49:06 +gcc 19:49:14 -!- copumpkin has joined. 19:49:46 as if any of the programs using threads are correct enough that you could tell that the thread implementation is broken 19:50:17 I am still not sure if I want to make draLinux a serious distro or not 19:50:36 fizzie: Each thread in LinuxThreads has a different pid. 19:50:44 ugh 19:50:50 that. is. horrible 19:50:50 This isn't a *subtle* non-conformance error, it's a Big one. 19:50:55 why? 19:51:41 wait. is thread implementation part of kernel or part of libc on linux? 19:52:00 Part of libc, *but* with some support needed from the kernel. 19:52:10 hmm 19:52:22 2.4 doesn't support the flag for clone that indicates the new process needs the same PID as the parent. 19:53:01 patch it 19:53:04 ksplice it 19:53:10 Can we make the Imakuni?'s card in Dungeons&Dragons game? 19:53:21 should it be hard to fix? I have not really poked anything newer than linux 0.2 19:53:39 Red Hat 9 backported it. 19:53:52 You could probably just filch their patch. 19:53:58 what about RHEL3? 19:54:16 I always read RHEL as RHELL 19:54:22 RHEL3 was derived from Red Hat 9. 19:54:22 -!- ais523 has quit (Remote host closed the connection). 19:54:25 So, I assume so. 19:54:25 yes that's how it's often pronounced too 19:54:36 ksplice never worked on 2.4 to my knowledge 19:54:44 -!- ais523 has joined. 19:54:59 Well, yeah. 2.4 to 2.6 involved Huge Changes. 19:55:26 nortti: Anyways, you should use musl because it is the Best Libc Ever. :P 19:55:56 pikhq: ok. If I can get it to compile with something ancient I'll give it a shot 19:56:02 well so does 2.6.9 to 3.4 and ksplice supports that whole range :) 19:56:05 but yeah 19:56:07 nortti: Builds with PCC. 19:56:17 going back to 2.4 would be a bigger deal still 19:56:31 pikhq: isn't pcc c89 only? 19:56:40 No, it's been updated to C99. 19:56:46 good 19:56:52 that is worth a try 19:57:09 linux 2.4+toybox+pcc+musl 19:57:38 Should the Haskell programs in their own pages in esolang wiki to use literate Haskell format so that you can download the file and then it will work? 19:58:20 GCC 2.95 however is C89-only. ;) 19:58:30 yeah 19:58:40 Fair warning, you cannot build Linux with PCC. 19:59:07 are you a bad enough dude to build linux with pcc 19:59:18 I probably need both pcc and tcc and patches for linux or gcc 2.95 19:59:52 or, you know 19:59:53 gcc 4 20:00:01 of course not 20:00:08 that would be rational 20:00:51 when I'm going to use linux 2.4 and coreutils without cp why not use ancient/obscure compilers 20:01:21 +? 20:01:45 and it will of course use umsdos and loadlin 20:02:13 The better option would be to pay landley to do qcc. 20:02:25 hmm. yeah 20:02:58 but wouldn't it have the same problem as pcc (lack of gcc specific stuff)? 20:03:24 What he wants to do with it is make it usable as the only compiler in his Aboriginal Linux project. 20:03:38 (and he considers it a regression if he can't build Linux From Scratch using that) 20:03:49 that sounds good 20:04:05 now to find out where and how I can send the money 20:04:23 And realize that paying a guy to do something fulltime for a few months is pricy. :P 20:04:42 yeah... 20:05:26 -!- AnotherTest has quit (Quit: Leaving.). 20:05:35 so qcc was tcc frontend bolted to qemy code generator, right? 20:06:07 -!- AnotherTest has joined. 20:07:47 And then the frontend boosted like crazy. 20:07:50 And then binutils. 20:08:08 Because, in short, "fuck GNU" 20:08:39 yes 20:08:55 I also hope toybox gets cp and mv soon 20:08:56 -!- AnotherTest has left. 20:09:16 using sash for those things in my minidistro is getting annoying 20:09:38 does it really not have cp and mv 20:09:59 On landley's todo list up there with "get email working". 20:10:04 it does have those but those are broken 20:10:09 elliott: Nah, it's a relatively new project. 20:10:28 And landley's spent the past year unable to work on it as much as he'd like. 20:11:16 For Dungeons&Dragons game (and for Icosahedral RPG) I could make up the "Imakuni?'s" spells like the Imakuni?'s cards, and I could make up the "Kjugobe's" psionic powers like the psionic powers that would be made up by my character. 20:12:58 -!- atriq has joined. 20:13:16 zzo38: why would anyone bother to memorize an Imakuni?'s spell? 20:13:23 (also, why would anyone embed a question mark in their name?) 20:14:53 ais523: In case you are strange you would do those things, I suppose. 20:15:33 But it may occasionally find useful as you would any spells, so you might want to write on the scroll to use as a scroll. 20:18:20 I wrote a dupdog interpreter because I was bored 20:18:24 And I've no idea if it works 20:26:54 "ॐኙ┯䩛钳𒥣𥋃񊖃򔬃*** Exception: Prelude.chr: bad argument: 1218051" 20:27:05 That's meant to say "Hello, World!" 20:27:15 Close enough. 20:27:17 I think my program is wrong 20:32:16 1218051 is *so close*, it's almost a characer. I mean, relatively speaking. They do go up to 1114111. 20:36:25 ion: U+006D LATIN SMALL LIGATURE RN [m] 20:39:36 Verily. 20:41:55 @remember shachaf U+006D LATIN SMALL LIGATURE RN [m] 20:41:56 Okay. 20:42:29 Why do they call them like U+006D instead of U+6D? 20:43:19 On the other hand, now that we have U+1F773 ALCHEMICAL SYMBOL FOR HALF OUNCE, why isn’t it U+0006D? 20:44:08 It's some kind of a thing that it's max(4, needed) characters. 20:45:50 > chr 'a' 20:45:51 (We do sort-of have U+100000 too, so maybe it should be U+00006D.) 20:45:51 Couldn't match expected type `GHC.Types.Int' 20:45:51 against inferred type ... 20:45:55 > chr 1000 20:45:56 '\1000' 20:46:02 > chr 1114111 20:46:04 can't find file: L.hs 20:46:08 Heh. 20:46:09 > chr 1114111 20:46:11 can't find file: L.hs 20:46:18 What does that error mean 20:46:38 It's the let-definitions file, isn't it? 20:46:52 Possibly some sort of a race condition. Normally it's a very transient error, though. 20:46:55 > chr 1114111 20:46:56 '\1114111' 20:47:03 "There, I fixed it." 20:47:10 (Full disclosure: I did nothing to fix it.) 20:47:37 > map chr [0..] 20:47:38 "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\S... 20:47:47 > map chr [32..] 20:47:48 " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefg... 20:47:57 I like how it has the ASCII control character names. 20:48:03 > map chr [127..] 20:48:04 "\DEL\128\129\130\131\132\133\134\135\136\137\138\139\140\141\142\143\144\1... 20:48:50 > map chr [255..] 20:48:51 "\255\256\257\258\259\260\261\262\263\264\265\266\267\268\269\270\271\272\2... 20:49:01 It's not going to print them, is it 20:49:48 It doesn't look that way. 20:50:00 > "Ā" 20:50:02 "\256" 20:50:06 Works as input, though. 20:51:04 -!- Vorpal has quit (Ping timeout: 246 seconds). 20:51:05 From what I recall, it disallows unallocated code points in string literals, if not escaped, due to some reason related to not getting the lexical information about the characters from the unicode character database. 20:51:34 > "࿿" 20:51:35 : 20:51:35 lexical error in string/character literal at chara... 20:51:39 Right. 20:51:42 > "♥" 20:51:43 "\9829" 20:51:51 > "\♥" 20:51:52 : 20:51:52 lexical error in string/character literal at chara... 20:51:57 > "\♥" 20:51:58 : 20:51:58 lexical error in string/character literal at chara... 20:52:04 iOS6 maps? http://i.imgur.com/aaVkk.jpg 20:52:08 > "\u0342" 20:52:09 : 20:52:09 lexical error in string/character literal at chara... 20:52:12 -!- nys has joined. 20:52:13 > "44" 20:52:15 "44" 20:52:23 ion: Maybe they're just resting. 20:52:42 > "\x0342" -- maybe what you wanted? 20:52:43 "\834" 20:53:05 > "\\♥" 20:53:06 "\\\9829" 20:53:23 > ord '♥' 20:53:24 9829 20:53:51 Anyway, there are control character names (maybe slightly less standard) for 0x80..0x9F, IIRC, they could've added those names too, is what I was supposed to say after trying the 127.. thing. 20:56:10 http://www.adequatelygood.com/2010/3/JavaScript-Module-Pattern-In-Depth lambda the ultimate 20:57:25 > sqrt (-1) 20:57:26 NaN 20:57:46 > 1/0 20:57:47 Infinity 20:57:54 > -1/0 20:57:55 -Infinity 20:58:03 > (-1/0) + (1/0) 20:58:04 can't find file: L.hs 20:58:28 > sqrt (-1) == sqrt (-1) -- the nans strike again 20:58:29 False 20:58:36 > (-1/0) + (1/0) 20:58:37 NaN 20:58:57 > sqrt -1 * 0 20:58:58 Overlapping instances for GHC.Show.Show (a -> a) 20:58:58 arising from a use of `... 20:59:09 > sqrt (-1) * 0 20:59:09 NaN 20:59:22 Ok, multiplying by zero doesn't get rid of it 20:59:27 > sqrt (-1) :: CReal 20:59:31 mueval-core: Time limit exceeded 21:00:07 > sqrt ((-1) :+ 0) == sqrt ((-1) :+ 0) 21:00:08 True 21:00:33 > sqrt ((-1) :+ 0) -- because 21:00:34 0.0 :+ 1.0 21:01:30 Yay Data.Complex 21:04:34 -!- atriq has quit (Ping timeout: 240 seconds). 21:04:44 Data.Complex should do type Zomplex = Complex Double (or however that's written). 21:06:19 Hey, there's a BLAS.C.Zomplex Haskell module. 21:06:48 It defines things that operate on Ptr (Complex Double). 21:08:01 There's such delightful signatures like zgbmv :: CBLASOrder -> CBLASTrans -> Int -> Int -> Int -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Int -> Ptr (Complex Double) -> Ptr (Complex Double) -> Int -> IO (). 21:10:33 it's haskell so i can tell right from the type what that does 21:10:34 (It does y = a*A*x + b*y, or y = a*A^T*x + b*y, or y = a*A^H*x + b*y, where a, b are scalars, x, y are vectors, A is a matrix, A^T is its transpose, and a^H its conjugate transpose, depending probably on the CBLASTrans.) 21:10:58 -!- boily has quit (Quit: Poulet!). 21:11:03 (And it does it FAST, because it's BLAS, and you have a BLASt.) 21:11:11 whence the name "Zomplex" 21:11:12 ? 21:11:25 -!- Phantom_Hoover has joined. 21:11:55 my primary school used primarily Acorn computers, together with some BBC Micros 21:12:07 my neighbour used an acorn until like 5 years ago 21:12:11 It's the double-precision complex, I think for the blas/lapack single-letter names that go S for single-precision, D for double-precision, C for single-precision complex and Z for double-precision complex. 21:12:20 I'm thinking they just couldn't think of a suitable letter. 21:12:59 Also, SGI's math library uses 'complex' and 'zomplex' with the same difference. Not sure who was first there. 21:13:06 it should be T, if anything 21:15:08 -!- augur has quit (Remote host closed the connection). 21:16:27 Actually I was slightly inexact there, A needs to be a general band matrix, i.e. only some amount of its diagonals are stored. You can (obviously) tell from the GV. 21:16:56 It would of course be ZGEMV for the general matrix-vector operation. 21:20:32 "General" to distinguish it from Hermitian (regular, band, packed-storage), orthogonal (regular, packed), Hessenberg (upper, upper-generalized), symmetric (regular, tridiagonal, packed), positive definite (regular, band, packed, tridiagonal), triangular (regular, packed, bad, generalized), trapezoidal, unitary (regular, packed), diagonal or bidiagonal matrices which all have their own ... 21:20:39 ... optimized storage formats and function versions. (List not exhaustive, I just got bored typing.) 21:20:42 Numeric programming must be such fun. 21:21:03 That one "bad" should've been "band". 21:21:17 There's no special version/format for bad triangular matrices. 21:21:35 In fact, I'm not sure what makes a triangular matrix bad. Maybe it has just one or two elements on the other side? 21:23:05 -!- epicmonkey has quit (Remote host closed the connection). 21:23:25 -!- epicmonkey has joined. 21:35:07 -!- monqy has joined. 21:56:31 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 22:00:12 -!- augur has joined. 22:10:50 -!- Phantom_Hoover has quit (Ping timeout: 268 seconds). 22:11:58 -!- Phantom_Hoover has joined. 22:19:07 What is brainfuck useful for exactly? 22:19:24 everything 22:19:32 It's Turing complete! 22:19:34 So totally 22:20:23 Max00355: proving other languages turing complete and not much else 22:21:30 it has some interesting derivatives, and a lot more really boring derivatives 22:21:31 Hmm, but what I don't understand is how a self-interpreter could be made than. 22:21:42 elliott: I'd actually say that proving other languages TC is not that useful a use 22:21:48 Max00355: It's TC 22:21:53 minsky machines or tag/cyclic tag machines are normally easier to implement 22:21:59 coppro, I know that. 22:22:09 any turing-equivalent language admits a self-interpreter 22:22:18 elliott: unless it can't take input 22:22:18 ^ 22:22:26 -!- copumpkin has joined. 22:22:27 ais523: well, then you just need to encode it in initial state, or whatever 22:22:29 (not being able to produce output isn't a problem) 22:22:32 well, OK 22:22:38 I guess it depends on your definition of interpreter 22:22:49 I find myself agreeing with elliott here, repeatedly 22:22:49 weird 22:23:04 hmm, does any TC language admit a self-interpreter? even if it's super-Turing? 22:23:23 seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself 22:23:36 like a halting oracle where you have to embed the program to check in the source code, or something 22:23:56 hmm 22:24:04 superturing isn't normally considerd tc 22:24:13 would you consider BF to be a PDA? 22:24:22 fair enough, but you know what i mean 22:25:15 Any webhamster who specifies pt (or cm, for that matter) for a non-print layout (that is any non-fixed-size layout) should go to jail for no less than double the font size (measured in football fields, of course). 22:25:17 hmm 22:25:50 elliott: so would you say curly-L is strictly weaker than TC? 22:25:57 or do you think it's pointing out that TC is poorly-defined? 22:26:56 ais523: is this related? 22:27:51 "this" = ? 22:28:01 she shouldn't use pronouns on the internet 22:29:47 this = 22:29:47 hmm 22:29:47 elliott: so would you say curly-L is strictly weaker than TC? 22:29:47 or do you think it's pointing out that TC is poorly-defined? 22:29:57 related to = 22:29:58 hmm, does any TC language admit a self-interpreter? even if it's super-Turing? 22:29:58 seems like you could make a construct more powerful than a UTM, but one insufficiently inflexible to emulate itself 22:29:58 like a halting oracle where you have to embed the program to check in the source code, or something 22:29:59 hmm 22:30:01 superturing isn't normally considerd tc 22:30:03 would you consider BF to be a PDA? 22:30:13 elliott: it's vaguely related 22:30:28 curly-L is the class of languages that can interpret some TC language, right? 22:30:47 so it's a case of establishing bounds either way 22:30:57 but I just realised I wasn't really thinking 22:30:57 sure 22:31:07 hmm, are all super-turing languages also TC? 22:31:13 fwiw, s/TC/capable of implementing a UTM etc./ in my statement 22:31:18 if you want it unambiguous 22:31:19 ish 22:31:21 I'd imagine that a language that was, say, /just/ a halting oracle wouldn't be 22:31:51 well... you can implement a UTM emulator with that, sort of 22:31:58 TC if you can write a program that halts iff UTM, right? 22:32:02 er 22:32:04 TC if you can write a program that halts iff UTM halts, right? 22:32:09 you can write a program that prints 1 iff UTM halts and 0 if not 22:32:13 "sort of TC" 22:32:25 oh, hmm, right 22:32:28 although not vice versa 22:32:31 not really TC 22:32:32 but "sort of" 22:32:36 yes 22:32:43 it's reminiscent of curly-L but in a different way 22:32:54 if you have halts(p) and ifnot (bool) stmt and loop_forever() then you can do 22:33:01 ifnot (halts(...)) loop_forever() 22:33:16 "ew" - audience 22:33:24 * ais523 optimises that 22:33:28 whilenot (halts(...)) ; 22:33:38 ais523: until (halts(...)); 22:33:43 hello 22:33:48 elliott: you said "ifnot", not "unless" 22:33:51 hi Arc_Koen 22:33:55 elliott: so I was just copying your style 22:33:57 ais523: it was a joke 22:34:02 I know 22:34:04 so was mine 22:34:09 (what's a pda?) 22:34:14 Arc_Koen: push-down automaton 22:34:15 ais523: well, you're a joke 22:34:30 Arc_Koen: personal digital assistant 22:34:32 you know how languages with two stacks are usually turing-complete, unless they have weird flow control issues? 22:34:39 Arc_Koen: public display of affection 22:34:44 if you take one of those but give it only one stack, you usually get a push-down automaton 22:34:47 Arc_Koen: pricy dice access 22:34:57 Arc_Koen: pillar-dancing anemone 22:35:01 elliott: he asked an on-topic question, can't he get an on-topic answer? 22:35:08 Arc_Koen: park drive automobile 22:35:10 ais523: no 22:35:13 well personal digital assistant I knew 22:35:13 ais523: well yes actually 22:35:13 he did 22:35:18 then i gave him lots of off-topic answers 22:35:21 but somehow I figured that's not what brainfuck was 22:35:37 Arc_Koen: a simple example is a modification of BF where all tape cells to the right of the pointer instantly get set to 0 22:35:57 anyway, my point was that BF is at least as powerful as a PDA, but it's not normally considered a PDA because it's /also/ TC 22:35:58 creepy 22:36:38 well that seems only logical 22:36:55 the set of brainfuck programs is strictly larger than the set of pda programs 22:37:00 you could replace < with [-]< 22:37:03 everywhere 22:37:05 and get the same effect 22:37:07 (larger than in the sense of inclusion) 22:37:14 anyway, PDA is one of the few interesting sub-Turing computational classes 22:37:23 and you can write some real programs in it, sometimes 22:37:33 the set of rectangles is strictly larger than the set of squares 22:37:33 (primitive recursive is another, and there are not nearly enough esolangs that use it) 22:37:43 and yet rectangles are not normally considered squares 22:37:58 (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive) 22:38:06 I've never really know the definition of primitive recursive 22:38:23 Arc_Koen: the simplest definition is that for all loops, you need to be able to cap the number of iterations before you start looping 22:38:31 (btw, I'm considering making the Anarchy compiler give a warning if the input program isn't provably primitive recursive) 22:38:32 just make it total 22:38:32 oh, o 22:38:33 this obviously implies that the program necessarily halts eventually 22:38:34 ok 22:38:37 all the cool languages are total 22:38:54 elliott: I strongly considered that but it turned out that making it total syntactically disallowed interesting things 22:39:01 so I decided static analysis for totality made more sense 22:39:03 -!- nys has quit (Quit: quit). 22:39:10 and hey, if you really want to write an infinite loop, you can, but it's a little nontrivial 22:39:14 what does it disallow that you want? 22:39:48 elliott: most notably, tail-recursion (specifically recursion, don't really want general tail-calls for this) that simply mutates the input parameters 22:40:00 you can refactor that into a version that doesn't but it's a lot of annoying boilerplate 22:40:13 like, see C-INTERCAL's optimizer for an example 22:40:14 ais523: um, I think Agda allows that 22:40:20 so maybe your checking sucks :p 22:40:21 hmm 22:40:24 it can't allow it /in general/ 22:40:27 I think Coq does too 22:40:31 but monqy probably knows more than me there 22:40:39 what specific restrictions does it put on it to keep it total? 22:40:43 no idea 22:40:48 but for instance, foo (S n) = foo n is obviously OK 22:40:52 because clearly if you don't mutate the parameters, you get an infinite loop 22:40:54 since you know it can't keep taking that path forever 22:41:06 (because it's not codata) 22:41:15 elliott: Anarchy can do that too without the warning 22:41:28 I'm thinking more along the lines of foo (x, y) | x > y = foo y x 22:41:33 err, = foo (y, x) 22:41:43 let me not muddle curried and uncurried versions of things 22:41:45 * elliott finds that definition dubious anyway 22:41:51 brb 22:42:23 elliott: codata? 22:42:25 well of course it's dubious 22:42:57 it'd be nice to be able to automatically resolve a bunch of those and determine whether it definitely halts, or whether the compiler isn't sure whether it definitely halts or not 22:43:09 and thus only a warning, in case the compiler fails to solve the halting problem in that particular case 22:44:32 how about a language with a halting oracle to which you give a pair (p, n) where p is a pointer to the beginning of a program (in that language) and n the length of the program 22:44:48 this means you can feed the halting oracle the program it's in 22:45:20 Arc_Koen: that just defies the laws of physics 22:45:26 I think so 22:45:29 if you can conditionally run an infinite loop 22:45:39 ais523: anyway, I think you can do something like that 22:45:43 but you need to use something stronger than booleans 22:46:07 elliott: anarchy's type system is already straining at the edges of credibility anyway 22:46:10 funnily enough we get the same paradoxes as with time travel 22:46:13 I can implement it, but not in a compositional way 22:46:19 Arc_Koen: see http://esolangs.org/wiki/TwoDucks if you haven't already 22:46:20 ais523: that's very very bad 22:46:23 I'd scrap it entirely 22:46:27 I have 22:46:29 elliott: it may be implementable compositionally too 22:46:37 but really this is for ease of use rather than mathematical purity 22:46:41 it should be obvious :) 22:46:44 the two are linked 22:46:46 "warning: code is dead, cannot typecheck it" 22:47:41 elliott: well it probably annoys mathematicians, and Haskell fans in particular 22:47:41 hmm, question 22:47:53 and anyone who's listened to me talk to my boss will know how much I insist on things generally being compositional 22:47:57 -!- epicmonkey has quit (Ping timeout: 276 seconds). 22:48:02 but it seems like a small price to pay for a language this great to use 22:48:10 I wouldn't have invented Anarchy if I didn't really badly want to use it 22:49:12 imagine I have a language X_n defined as { p in {brainfuck programs} such that the deepest level of loop-nesting in p is n } 22:49:26 hmm… not counting efficiency/computational complexity, in pure total programs, call-by-name and call-by-value are observationally indistinguishable, right? 22:49:28 so for instance X_0 is brainfuck without [ ], X_1 is brainfuck without nested loops, etc. 22:49:33 ais523: I think that's because you only think about the Anarchy programs you want to write 22:49:37 not the ones you'll miswrite by mistkae 22:49:38 *mistake 22:49:56 Arc_Koen: if the question is "what's the first that's TC", I've wondered that myself 22:50:29 that's indeed the question 22:50:35 what did yourself answered? 22:50:38 Arc_Koen: it's widely believed to be either 2 or 3 22:50:44 but I don't think it's ever been settled conclusively 22:50:44 oh, sweet 22:51:04 I was afraid none would be 22:51:11 ok, new question then: what about qdecl? 22:51:40 if I limit the number of nested loops to, say, 200 or something, do you expect it would still be TC? 22:51:52 Perhaps does anyone know how to make a quine with FurryScript? I have not figured it out by yet. 22:52:26 -!- Phantom__Hoover has joined. 22:53:02 Arc_Koen: well put it this way, you can write a BF self-interpreter, right? 22:53:18 I've never tried 22:53:20 and you can bundle a self-interp with an input program, because you can do ++++>++>+++++>++>++++++> or whatever at the start of the program with no loops at all 22:53:33 so the question boils down to "what BF self-interpreter has the least deeply nested loops?" 22:54:14 ais523++ # makes sense 22:54:23 that sounds clever but I actually have no idea what your mean 22:54:54 Arc_Koen: let's see 22:54:57 xmodmap: please release the following keys within 2 seconds: Control_L (keysym 0xffe3, keycode 66) 22:55:07 i like to read this as a threat 22:55:22 suppose we extend BF with a command that interprets the input tape as a BF program 22:55:27 two things happen 22:55:27 kmc: I hate it when that happens. :-( 22:55:39 first, Phantom_Hoover replaces our brain with a brick 22:55:39 kmc: I'm too lazy to fix my things, so I run while true; do xmodmap -e 'remove Lock = Caps_Lock' -e 'keysym Caps_Lock = Escape'; disable-capslock; sleep 2; done 22:55:47 second, we can compile any BF program into one that uses no loops 22:55:52 heh 22:55:54 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds). 22:56:01 because it doesn't require any loops to put the program on the tape 22:56:11 and so we can just put the program on the tape, then run our new command 22:56:16 do you understand that far? 22:56:23 but how will you do complete the second step when your brain is a brick? 22:56:36 ye,s I do 22:56:59 ohhhh I get it 22:57:01 Arc_Koen: now, suppose that in order to avoid inferring the wrath of Phantom__Hoover, instead of adding this new command to BF, instead we write a BF program that interprets the tape as a BF program and runs it 22:57:24 yes, I get it, ++++>++>+++++>thing was filling the cells with a brainfuck program 22:57:37 that's nice 22:58:18 well, with a different instruction encoding, but there's no need to use ASCII 22:58:27 Do you like this psionic power for Dungeons&Dragons game???? http://zzo38computer.org/dnd/options/Kjugobe_Psionic_Hack.p 23:03:23 Arc_Koen: anyway, I'm not sure if anyone's seriously tried to write a two-nested-loop selfinterp, or even a three-nested-loop selfinterp 23:04:05 that's ok 23:04:20 I was wondering because I wanted to prove Emmental TC 23:04:27 ais523, i'm only a short train ride from birmingham, remember 23:04:29 and I think I can convert Qdecl programs into Emmental 23:04:31 you're playing with fire here 23:04:43 except I need a distinct symbol for every nested loop 23:04:58 and there are only 256 symbols soooooo 23:05:04 the minimum nesting has to be finite because otherwise any TC interpreter written in BF would have to be infinite 23:05:12 it's probably small too 23:06:19 hmmm though I'm wondering if I only needed a distinct symbol for nested loops... for instance consider a program like BEGIN BEGIN END BEGIN END BEGIN END END 23:06:28 (with actual code inside of all those loops) 23:06:37 -!- Jafet has quit (Quit: Leaving.). 23:07:44 http://www.comedycentral.com/video-clips/5a1dsd/key-and-peele-bling-benzy---da-struggle 23:11:13 -!- copumpkin has changed nick to brony. 23:11:16 -!- brony has changed nick to copumpkin. 23:22:07 copumpkin: Ahhh, other-channel-/nicking. 23:22:12 copumpkin: Always fun. 23:25:04 yep 23:49:17 ais523: huh, did you know that Debian changed official desktop environments? 23:49:26 what is it now 23:49:45 Xfce; http://anonscm.debian.org/gitweb/?p=tasksel/tasksel.git;a=commitdiff;h=2a962cc65cdba010177f27e8824ba10d9a799a08 23:50:37 “This ensures that the desktop will fit on CD#1, which gnome currently does not.” 23:50:39 Best reason. 23:51:08 Gregor: suspect that's code for "I don't like GNOME 3 and thought of a decent technical excuse" :p 23:51:55 Eeyup. 23:52:30 If it were my call, I'd have just made the commit message “Switched the default WM to XFCE, because Gnome is fucking terrible.” 23:53:02 if only xfce was actually godo rather than just not being gnome 23:53:31 yeah 23:53:36 why didn't they just use godo instead 23:53:43 *good 23:53:49 todo make wm called godo