00:00:00 well... yeah but... never mind 00:01:08 elliot: that is the first line on a new page at codu.org 00:06:34 wow what a coincidence; that's the first thing you've said since joining 00:06:49 doesthiswork is the bringer of the new day. 00:07:57 -!- jsvine has quit (Quit: Leaving.). 00:10:40 -!- CADD has joined. 00:27:28 -!- Bike has quit (Read error: Connection reset by peer). 00:29:58 -!- Bike has joined. 00:30:16 in C, can you have declarations after statements? 00:32:22 `run echo $'main() { int x; x = 3; int y; return x + y; }\n' > a.c && gcc a.c 00:32:27 in C99, not in C89 or Ye Olde C 00:32:30 No output. 00:33:08 hmm. 00:33:23 thinking about kernel's "add to environments whenever" thing and how much i hate it 00:33:27 (some compilers may allow it without explicitly enabling C99, just as they allow //-comments) 00:33:36 Bike: fun fact: you can't put a goto label on a declaration 00:33:51 i mean, dealing with "int x; x = 3; eval("int y = 4"); return x + y;" would just... ugh 00:34:01 `run echo $'main() { foo: int x = 3; goto foo; }\n' > a.c && gcc a.c 00:34:02 don't you also get into trouble if you skip over declarations or anything of the such 00:34:05 a.c: In function ‘main’: \ a.c:1: error: a label can only be part of a statement and a declaration is not a statement 00:34:11 `run echo $'main() { foo:; int x = 3; goto foo; }\n' > a.c && gcc a.c 00:34:17 No output. 00:34:17 kmc: that's uh, huh. 00:34:20 `which gccrun 00:34:21 ​/hackenv/bin/gccrun 00:34:30 `gccrun foo: int x = 3; goto foo; 00:34:33 ​/tmp/gccrun.g9q3g9XU/command.c: In function ‘main’: \ /tmp/gccrun.g9q3g9XU/command.c:19: error: a label can only be part of a statement and a declaration is not a statement 00:35:03 well not "dealing with" so much as "allowing" 00:35:34 `gccrun if(0) { foo: return puts("!"); } goto foo; return puts("?"); 00:35:37 ​! 00:36:11 that's actually what i expected to happen. god help me. 00:36:55 `gccrun if(0) { foo: return puts("!"); } else goto foo; return puts("?"); 00:36:58 ​! 00:37:17 goto is real great stuff 00:37:38 also "unstructured" switch 00:37:52 as per duff's device & friends 00:38:07 good device 00:38:30 `gccrun if (0) { foo: printf("Hello, world!\n"); return 0; }; asm goto("jmp %l0" : : : : foo); __builtin_unreachable(); } 00:38:32 ​/tmp/gccrun.FP131YDj/command.c: In function ‘main’: \ /tmp/gccrun.FP131YDj/command.c:19: error: expected ‘(’ before ‘goto’ \ /tmp/gccrun.FP131YDj/command.c:19: error: expected identifier or ‘*’ before ‘(’ token \ /tmp/gccrun.FP131YDj/command.c: At top level: \ /tmp/gccrun.FP131YDj/command.c:20: error: expected identifier or 00:38:35 fuck you 00:38:49 Fall through is pretty useful in a switch case, sometimes. 00:39:47 `gccrun if (0) { foo: printf("Hello, world!\n"); return 0; }; asm("jmp %l0" : : : : &foo); } 00:39:49 ​/tmp/gccrun.q8YTzgvD/command.c: In function ‘main’: \ /tmp/gccrun.q8YTzgvD/command.c:19: error: expected string literal before ‘:’ token \ /tmp/gccrun.q8YTzgvD/command.c: At top level: \ /tmp/gccrun.q8YTzgvD/command.c:20: error: expected identifier or ‘(’ before ‘return’ \ /tmp/gccrun.q8YTzgvD/command.c:21: error: expected identi 00:40:24 is it not understanding asm? 00:41:09 `gccrun --version 00:41:10 ​/tmp/gccrun.jHMqVnVF/command.c: In function ‘main’: \ /tmp/gccrun.jHMqVnVF/command.c:19: error: ‘version’ undeclared (first use in this function) \ /tmp/gccrun.jHMqVnVF/command.c:19: error: (Each undeclared identifier is reported only once \ /tmp/gccrun.jHMqVnVF/command.c:19: error: for each function it appears in.) 00:41:16 `gcc --version 00:41:17 gcc (Debian 4.4.5-8) 4.4.5 \ Copyright (C) 2010 Free Software Foundation, Inc. \ This is free software; see the source for copying conditions. There is NO \ warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00:41:59 `run svn co svn://gcc.gnu.org/svn/gcc/trunk 00:42:01 bash: svn: command not found 00:42:17 fuck you 00:43:02 `fuck you 00:43:03 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: fuck: not found 00:43:06 so does my earlier eval thing seem reasonable to anybody 00:43:49 welp now rustc is dying with just "Aborted" 00:44:48 in some kind of infinite recursion 00:50:33 Now I should think of what to advance my Dungeons&Dragons character. 00:50:50 `gccrun asm("jmp *%0" : : "r" (&&foo)); printf("Hi\n"); foo: return !printf("Hello, world!\n"); 00:50:53 Hello, world! 00:51:52 `gccrun asm volatile("hlt"::); 00:51:55 Segmentation fault 00:52:04 that's the spirit. 00:54:00 `gccrun asm volatile("popcnt %%eax"::); 00:54:02 ​/tmp/gccrun.4SBPpiHU/command.c: Assembler messages: \ /tmp/gccrun.4SBPpiHU/command.c:19: Error: suffix or operands invalid for `popcnt' 00:54:08 `gccrun asm volatile("popcnt %%eax, %%eax"::); 00:54:11 No output. 00:54:27 `gccrun asm volatile("vpmaddubsw %%ymm0, %%ymm0, %%ymm0"::); 00:54:29 ​/tmp/gccrun.zJA471z5/command.c: Assembler messages: \ /tmp/gccrun.zJA471z5/command.c:19: Error: suffix or operands invalid for `vpmaddubsw' 00:54:55 `gccrun asm volatile("tzcnt %%eax, %%eax"::); 00:54:58 ​/tmp/gccrun.bO0jCRhE/command.c: Assembler messages: \ /tmp/gccrun.bO0jCRhE/command.c:19: Error: no such instruction: `tzcnt %eax,%eax' 00:55:02 :< 00:56:05 `gcc -dumpmachine 00:56:06 x86_64-linux-gnu 00:56:12 `gcc -dumpspecs 00:56:13 ​*asm: \ %{v:-V} %{Qy:} %{!Qn:-Qy} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*} %{m32:--32} %{m64:--64} %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}} \ \ *asm_debug: \ %{!g0:%{gstabs*:--gstabs}%{!gstabs*:%{g*:--gdwarf2}}} %{fdebug-prefix-map=*:--debug-prefix-map %*} \ \ *asm_final: \ \ \ *asm_options: \ %{--target-help:%:print-as 00:56:17 `gccrun asm("fist"); 00:56:19 ​/tmp/gccrun.1Vv8dvIW/command.c: Assembler messages: \ /tmp/gccrun.1Vv8dvIW/command.c:19: Error: suffix or operands invalid for `fist' 00:56:48 Jafet: ah yes, the good old address of label operator 00:57:09 and computed goto, is that goto *expr? 00:57:16 computed goto is best goto 00:57:38 goto more like mefrom 00:58:03 `run grep -e flags -e 'model name' /proc/cpuinfo 00:58:04 model name: UML 00:58:23 `pastelogs cpuid 00:59:05 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.11462 00:59:45 `run gccrun 'int name[12],i;for(i=0;i<3;i++){asm("cpuid":"=a"(name[4*i]),"=b"(name[4*i+1]),"=c"(name[4*i+2]),"=d"(name[4*i+3]):"a"(0x80000002+i));}puts((char*)name);' 00:59:47 AMD Opteron(tm) Processor 6128 00:59:56 "Just make a file called CPUID.COM" 01:00:56 You know, I've never actually seen a non-genuine Intel processor 01:01:03 I guess they exist somewhere 01:04:05 Bike: I have done like that, it displays something like "GenuineIntel" or whatever 01:04:16 i was quoting you, even. 01:04:44 It won't display the details like "AMD Opteron(tm) Processor 6128", however. 01:05:02 what's a good name for an operator that change a variable's value, if "define" and "set" are taken 01:05:16 i was gonna go with "alter" but it kinda sucks 01:05:36 modify? 01:06:04 mutate? 01:06:31 well, it depends on what you mean 01:06:42 like "x = 4" in C 01:06:49 (not x.foo = 4) 01:12:18 -!- copumpkin has joined. 01:15:53 Normally, the problem with a web service is that it is written in standard HTML and PHP, so hackers can exploit vulnerabilities in the code. But our service is written completely in javascript, developed to provide the highest level of security available on the web. 01:16:20 That's kind of long as names go, don't you think 01:16:25 That's buzzwordalicious. 01:16:50 If it is client-side JavaScript, then it isn't a proper service, isn't it? (If it is server-side JavaScript, then there can still be vulnerabilities although they are different ones. Also, HTML is client-side too.) 01:29:58 Bike: assign 01:30:51 the copumpkin has returned 01:30:58 hi copumpkin 01:31:01 my computer had an "accident" :) 01:31:08 oh no 01:31:08 or update 01:31:10 so it has now been replaced and my IRC settings took a while 01:31:14 oerjan: wow obvious thanks 01:31:19 well yes, now it's a nicer computer 01:31:31 I freaked out thinking I had lost my gpg seckey 01:31:37 but then I found it on an ancient hard drive 01:32:31 That's why I keep a copy of all my secret keys under the rug. 01:32:55 good plan 01:33:08 zzo38: That's because you did 0x0, which is the code to get the CPU vendor out from cpuid. 01:33:21 zzo38: i am pretty sure shachaf quoted that because it was hilariously wrong (and stupid). 01:33:37 0x80000002-5 are the CPU model name. 01:39:32 -!- oerjan has quit (Quit: Nite). 01:40:49 https://en.wikisource.org/wiki/Filboid_Studge,_the_Story_of_a_Mouse_That_Helped 01:42:37 -!- Guest18414 has quit (Ping timeout: 260 seconds). 01:56:06 logging in and typing xrandr commands blind \o/ 01:56:07 | 01:56:07 /| 01:56:25 yes indeed. 01:57:27 kmc: devoice yrself hth 01:57:33 "One huge sombre poster depicted the Damned in Hell suffering a new torment from their inability to get at the Filboid Studge which elegant young fiends held in transparent bowls just beyond their reach." amazing. 01:57:38 it's somehow appropriate that kmc's myndzi dudes are misaligned 01:57:49 why do you say that, < elliott> 01:57:54 kmc: imo log in and type xhost + 01:57:57 fix. your client!! 01:58:02 even mnoqy turned off the "< " 01:58:11 fix it so that kmc's myndzi dudes aren't aligned 01:58:12 i think not 01:58:15 even shachaf turned off the "< ". 01:58:20 s/.$// 01:58:25 That doesn't necessarily make it broken; there is no guarantee that they would be lined up, actually. 01:58:30 Because they all difference 01:58:35 i turned it off but i still think it's not worth complaining over 01:58:38 zzo38 makes a good point. 01:58:51 mnoqy: well, you're sensible (the only sensible person in this channel??) 01:59:04 maybe ais523 is sensible but he's not in this channel anymore 01:59:09 go back to #sensible 01:59:17 the irc protocol should be fixed to specify character widths 01:59:39 On my computer the "|" is just beneath the "l" in "blind" but you shouldn't expect anyone's computer to do anything specific such as that or not that 01:59:51 Bike: I don't think so. I think that isn't necessary 01:59:52 The irc protocol should forbid people from complaining about irc 02:00:18 just like the iOS app store! 02:00:20 zzo38: did you get an answer from your brother 02:00:34 shachaf: Answer to what question? 02:00:47 whether he's ever been here 02:00:51 #ifappledesignedirc 02:01:10 i fappled 02:02:39 iFapple 02:10:28 preordering now 02:13:30 dude this motherboard uses "Military Class II" components 02:13:40 i can totally blow you up by plugging in an S/PDIF cable 02:14:31 missed "up" the first time I read that :/ 02:15:45 http://24.media.tumblr.com/5ba25305b4c70be6a875ebebd82446d5/tumblr_mps7wwOvyv1r7tprao1_500.jpg sorry for bad photo, but 02:16:19 smudge proof #1 selling scratch protection 02:16:23 elliott: it can do that too 02:16:35 military grade nano-memory technology?? what the heck is this 02:16:43 an iphone cover. 02:16:46 are you sure this isn't some sort of joke 02:17:10 i took the photo. It was from Target. 02:17:25 are you sure it wasn't some sort of joke 02:17:36 april fools in august 02:17:40 august fools 02:17:44 it could happen to anyone 02:18:14 are you sure target isn't some kind of joke 02:18:56 http://31.media.tumblr.com/5b9a7d8e6b41d9f68495e4676af7098a/tumblr_mpsbna0AlZ1r7tprao1_500.jpg continued 02:19:26 kmc: is this like http://www.theonion.com/video/new-wearable-computer-also-sucks-your-dick,33017/ 02:19:33 ZAGG® 02:19:40 Bike: can. can you rotate this for me 02:19:48 just rotate it in your head 02:19:52 I've spent too much of my life rotating my neck to read things. 02:20:00 too much of my life not getting Bike to do things for me 02:20:02 elliott: rotate your computer instead hth 02:20:11 my tech is to be able to read sideways 02:20:20 mnoqy: good tech can i have it 02:20:25 i guess rotating is easier though huh 02:20:29 elliott: yeah like that 02:20:36 `smlist (417) 02:20:38 smlist (417): shachaf monqy elliott mnoqy 02:20:53 what a good day 02:22:04 "Area Man Too Poor To Afford Movers, Too Old To Get Help From His Friends" sometimes the onion is just depressing 02:22:35 area man...:( 02:23:15 what laptop should I buy :( 02:23:34 it seems like every thinkpad is kind of bad in 2013 02:24:10 isn't it more fun to think about which laptop is the best than actually having one 02:24:27 what are you implying!! 02:24:59 elliott: macbook 02:25:34 elliott: ipad 02:25:58 elliott: I'm really happy with my X1 Carbon, except that the screen just broke :< 02:26:06 that microsoft tablet thing with the keyboard flap 02:26:10 I am too stingy to afford movers and too unlikeable to get help from my friends 02:26:11 kmc: oh no :'( what happen 02:26:22 dunno I just pushed it a bit and *crack* 02:26:26 like no obvious source of damage 02:26:49 comex: maybe but probably not 02:27:05 ssh uses not-much-knowledge proofs of password ownership, yes? 02:27:11 kmc: yeah, I don't think the X1 Carbon really meets my requirements though (my requirements are: I don't know my requirements) 02:27:19 s/ownership/knowership/ 02:27:30 my requirements are: hugz 02:27:36 Gracenotes: Or it can use public key crypto. 02:27:40 elliott: then what are you doing comparing laptops, or uh, i guess you're asking other people to do that for you huh 02:27:58 * quintopia hugz shachaf 02:28:01 but how would you know when's the right time to say "yes"! 02:28:04 yeah, in this case I typed a password, wondering how clearly it was sent, assuming a malicious server or something 02:28:05 kmc: in particular, (relatively) low RAM, bad graphics (incl. resolution), seemingly very little storage? 02:28:23 how much ram 02:28:29 elliott: there's only one laptop with as good resolution as the MBP retina ;) 02:28:34 kmc: which like, it's an ultrabook so this is not terribly surprising 02:28:35 one other laptop, i mean 02:28:51 comex: 1080p would be "enough" 02:29:02 maybe 1680x1050 would be enough 02:29:14 mnoqy: 4-8 gigabytes on the X1 Carbon 02:29:23 that's plenty 02:29:29 I would be happier with 12-16 for long-term purchase reasons 02:29:50 im shocked anyone would ever need a good computer 02:29:55 what do you plan on doing, gaming?? 02:30:03 hardcore gaming??? 02:30:04 paging nortti 02:30:42 128 GB is plenty of storage elliott 02:31:33 and you can get 256 02:31:41 oh you can? 02:31:45 http://shop.lenovo.com/us/en/laptops/thinkpad/x-series/x1-carbon/index.html doesn't list that 02:31:51 256 would "probably" be enough 02:32:07 I looked at the T series thinkpads and they're really disappointing 02:32:24 mnoqy: wow i didn't know elliott was hardcore 02:32:31 maybe things will be better when haswell comes out 02:32:37 shachaf: you better believe it 02:32:41 haswell is out hth 02:32:48 *haswell hardware 02:32:51 but i'm told you should wait until october or so for haswell laptops 02:34:51 elliott: you could get like, something like what I got! and spend too much money 02:35:18 Fiora: what did you get 02:35:21 I think I have resigned myself to spending too much money already 02:36:58 a sager np9150? 02:37:33 ok good news i have a story 02:37:48 when i was just a wee bike under construction my parents were thinking about what to name me 02:38:05 my mom wanted to go with "elliott" but my dad didn't like it 02:38:14 are you serious 02:38:16 that's a good story 02:38:24 so he got her to get her boss to say "elllliottttt" like the alien in ET every time my mom walked by 02:38:33 er, got her boss to* 02:38:39 that's also a good story 02:38:46 and so, i was not named "elliott". 02:38:57 instead you were named "Bike" 02:39:14 more stories 02:39:18 this is just a nom de guerre. my real name is Ike 02:39:21 but if not elliott, what woulkd you be named?? are there any other names 02:39:39 see previous message 02:39:42 Bike "Ike" Bicycle 02:39:51 or is it Ike "Bike" Bicycle 02:39:54 bike stories are a non-scarce resource 02:40:46 it's Ike "Bike" Sumayang actually 02:43:36 close enough 02:43:37 -!- mnoqy has quit (Quit: hello). 02:43:43 bye mnoqy 02:43:57 elliott: geez, it looks like you can get a haswell i7, 765M, 15" 1080p screen, 240GB SSD, and like, 16GB RAM for ~$1300 now though right it's the UK so things probably get 10x worse 02:44:53 oh that sounds pretty great (depending on weight and stuff), what model is that? 02:45:21 Sager NP7352 apparently? 02:45:40 (cheaper without the SSD and stuff, I'm just super biased because I have one -_-) 02:45:53 it's 6 pounds, even lighter than mine @_@ 02:45:54 elliott also apparently wants it to weigh no more than 1.3kg or something 02:46:29 after spending days looking at laptops that were mostly 4-5kg I felt like I had discovered the garden of eden when I found one that was only about 3 02:46:36 elliott is super biased because he weighs no more than 1.3 kg 02:46:45 shachaf: I never said that :P 02:46:59 Fiora: yeah I have an SSD now and don't plan to buy a computer without one if I can help it 02:47:10 Bike: elliott's like, my size :p 02:47:20 elliott: Well, you said it to me once. 02:47:32 anyway is the clevo w740su really so bad 02:47:39 imo find out so that you can tell me 02:47:43 are ssds nice 02:47:51 I'm actually a black hole and would prefer a laptop about the size of Jupiter 02:47:58 so I can eat it 02:48:10 size or mass 02:48:16 Bike: yes but you have to get used to there not being any ticky noises when you install stuff 02:50:02 Fiora: it seems like sager only sell in USD? so I guess it's just a question of how much shipping would cost 02:50:09 ummm let me see if there's any UK resellers 02:50:16 or if they'd ship at all I guess 02:50:27 http://forum.notebookreview.com/sager-clevo/91510-clevo-guide-v2-0-faq-reseller-info.html 02:50:37 there's UK resellers 02:50:41 oh it's also a clevo thingy? 02:50:48 sager is clevo basically <.< 02:50:53 they're two different brands for the same thing 02:50:53 the system76 one shachaf linked me was clevo too 02:51:08 they're all clevo 02:51:13 isn't it more like, clevo sell laptops to people who then brand them? 02:51:23 sager is clevo's gamer/performance brand, I think? 02:51:36 Sager laptops are manufactured by Clevo which are also sold under many other brand names. Sager is the biggest Clevo retailer. 02:51:46 ( https://en.wikipedia.org/wiki/Sager_Notebook_Computers ) 02:52:03 I wonder if you can buy things directly from Clevo and save money???? probably you have to buy in bulk or something 02:52:52 "5.) Uniqueness ("It Ain't a Dell"): Subjective to personal preference. But having a custom high-end notebook that the masses cannot identify is pretty 1337." this post is adorable 02:53:16 -!- Bike has quit (Ping timeout: 264 seconds). 02:54:00 they should let you pay more to not have a numpad 02:54:18 uh I wonder what the trackpads are like 02:55:08 shachaf: is Nvidia Optimus the thing that gave you a ton of issues on Linux 02:55:21 elliott: yes 02:55:36 Maybe it works better for some people and/or with some cards, though. 02:55:41 x=1; while [ -n "$x" ]; do x=$(lsmod | grep ^snd_ | awk '{print $1}' | shuf | head -1); sudo rmmod $x; done 02:55:46 "The binary Nvidia driver added partial Optimus support May 3, 2013 in the 319.17.[6]" at least there's that 02:55:46 shockingly effective 02:55:54 elliott: Yes, I tried that. 02:55:57 Didn't work for me. 02:56:01 But I didn't try very hard. 02:56:17 Only, y'know, a couple of hours or something. 02:59:08 yeah, you might not be able to turn off optimus :/ 03:02:36 gosh, the NP7330 looks really good. it's a 13" 1080p laptop with like, better specs than mine, and it's just 4.6 pounds 03:05:01 @google 4.6 lbs in kg 03:05:04 2.0865249 kilograms 03:05:04 http://www.evi.com/q/convert_4.6_lbs_to_kg 03:05:04 Title: convert 4.6 lbs to kg - Evi 03:05:36 -!- Bike has joined. 03:15:19 -!- CADD has quit (Quit: Lost terminal). 03:21:43 -!- carado has quit (Ping timeout: 246 seconds). 03:21:54 https://twitter.com/0xabad1dea/status/364852927170494464 'Found in code: /* v/=radix uses less CPU clocks than v=v/radix does */ If this is ACTUALLY true, slap your compiler silly' 03:22:29 Bike: which local slang 03:22:46 kmc: Is v a floating point? 03:22:53 kmc: "bunner" 03:23:11 Is v volatile? 03:23:17 Is v a macro? 03:23:42 I don't know what v and radix even are here, or what compiler you are using, or what computer it is. 03:24:11 i've never heard that 03:26:15 kmc: yeah that's why i said "more globally" but a friend told me, and urbandictionary backed him up, so i assume /womebody/ uses it 03:26:25 kmc: does LVM work well with GPT and stuff 03:26:29 I don't really know anything about this 03:26:40 but you installed Debian with full-disk encryption on a new computer recently right 03:26:57 i cannot believe how girly 0xabad1dea's profile is 03:35:26 if Cons is a 2-ary type constructor (* -> * -> * i guess), could ConsList (like []) be defined as fix (\self t -> Cons t self) 03:37:18 how is Cons defined? 03:37:38 data Cons a b = Cons a b or whatever 03:37:41 ok so (,) 03:37:48 yeah sure. 03:37:48 Bike: There's no place for Nil there. 03:37:55 [a] = mu (\self -> Maybe (a, self)) 03:38:07 and mu is basically fix. 03:38:12 So you'd get a stream, not a list (and you'd want a greatest fixed point, but, like, whatever). 03:38:12 (it's least vs. upper bound stuff) 03:38:15 er, least vs. greater 03:38:16 -!- Guest18414 has joined. 03:38:20 right ok elliott fixed it. 03:38:25 s/..$/, man)./ 03:38:44 Hmm. I need to come up with a better way of phrasing that. 03:38:55 Bike: basically you define a list of A as the least fixed point of F(L) = 1 + A * L 03:39:03 + translates to Either, 1 translates to (), * translates to (,) 03:39:14 so Either () (a, l) which is Maybe (a, l) 03:39:20 and then you can work backwards to what I said 03:39:23 so like is this doable in haskell (or some type theory that is simple i gues) 03:39:28 you can write: 03:39:35 newtype Fix f = Fix { break :: f (Fix f) } 03:39:38 i mean y'all talk about mu but i'm pretty sure it's crazy bullshit? 03:39:43 type List a = Fix (ListF a) 03:39:48 You can make Fix like elliott wrote. 03:39:55 newtype ListF a l = ListF { listless :: Maybe (a, l) } 03:39:58 You can also make Mu and Nu but in practice there isn't much point in Haskell. 03:40:07 (Mu and Nu correspond to folds and unfolds.) 03:40:14 you can also make a bunch of functor combinator things so you could say 03:40:27 type List a = Fix (One :+: (An a :*: Arg)) 03:40:32 if you don't like having to define ListF 03:41:09 what's An 03:41:18 type One = An (); newtype An r a = An r {- this is Const -}; newtype (f :+: g) a = L (f a) | R (g a) 03:41:26 newtype (f :*: g) a = f a :*: g a 03:41:43 good newtype 03:41:45 nil = Fix (L (An ()) 03:42:02 cons x xs = Fix (R (An x :*: xs)) 03:42:16 this kind of thing is where the "algebraic" in "algebraic data types" comes from 03:43:33 -!- Bike_ has joined. 03:43:47 elliott: I don't remember clearly enough 03:43:54 I don't think I understand Const. 03:43:58 Debian installer will configure FDE by itself 03:43:59 -!- Bike has quit (Disconnected by services). 03:44:02 -!- Bike_ has changed nick to Bike. 03:44:08 Bike: did you miss the stuff I said 03:44:09 I don't understand thisContext 03:44:12 and i had a vague idea of algebra but wasn't sure how it worked with fixpoints 03:44:13 I mean, the stuff unrelated to Const 03:44:25 elliott: whenever i discon i check the log becaue otherwise it would be kind of unfair to people talking to me 03:44:29 newtype Const r a = Const r 03:44:35 do you not see how it's a Functor? just trying to see what the problem is 03:44:41 fmap :: (a -> b) -> Const r a -> Const r b 03:44:49 (Const r x) is equivalent to r for any x, so this is just 03:44:52 i think i just 03:44:53 fmap :: (a -> b) -> r -> r 03:44:56 with a constructor in the way 03:45:00 don't even understand the syntax :V 03:45:16 uh is it newtype you don't know about, or 03:45:18 #esoteric-overflow 03:45:19 trying to help!! 03:45:23 i think it's newtype yes 03:45:26 #esoteric-in-depth 03:45:29 okay pretend it says data instead of newtype 03:45:33 i remember it being a type alias or something but i have no idea what that means 03:45:35 it's exactly the same for our purposes 03:46:03 (it's more efficient at runtime for a type that just wraps another one (i.e. one constructor, one field) and has some dumb edge-cases with undefined/nontermination that you should try not to think about) 03:46:20 * comex wonders why that isn't just done automatically 03:46:28 comex: aforementioned edge-cases 03:46:35 sometimes you want the indirection 03:46:44 so when you have that fmap, it's actually like (a -> b) -> Const r -> Const r but Const r is equivalent to r because well obviously. 03:46:47 even (data Foo = Foo !Bar) isn't equivalent to (newtype Foo = Foo Bar) 03:46:57 imo just use a strict language 03:46:58 because matching on the latter's Foo is irrefutable, but not the former's 03:47:06 Bike: Const r a -> Const r b 03:47:09 it takes two type paramters 03:47:12 yes but like 03:47:14 (Const r) is the functor, just like [] is a functor 03:47:22 poor Bike 03:47:28 nevermind i get it 03:47:39 Bike: sorry, I didn't know whether you were being imprecise or it was part of the confusion 03:47:45 i was being imprecise 03:47:50 since the parameter is irrelevant but also, like, the point 03:47:58 it's the "= Const r" that gets me, "= r" would be more intuitive to me 03:48:05 but that doesn't work with data of course 03:48:17 The Const on the right is a constructor, not a type. 03:48:19 riht. 03:48:22 right 03:48:23 I think this is confusing and so does SPJ. 03:48:27 anyway let me try to define the fmap. 03:48:28 data Const r a = TheThing { value :: r } 03:49:06 is it just fmap _ (Const rv) = rv 03:49:12 er no 03:49:22 fmap _ (Const rv) = Const rv 03:49:27 Yes. 03:50:22 woah UPS stores do 3D printing now 03:50:25 (a few of them) 03:50:58 kmc: to save on shipping costs, right? 03:51:55 -!- Bike_ has joined. 03:52:07 just sitting outside in the cool air, learnin babby's first math and pissing on routers 03:52:38 so, uh 03:52:41 i implemented this fancy trigram thing 03:52:57 but searching the entire archive without it takes 0.17s 03:53:08 oh well, trigrams are cool 03:53:30 % time python iwc.py --search-messages '/ais[^5][^2][^3]/' 03:53:50 -!- Bike has quit (Ping timeout: 240 seconds). 03:55:00 which math 03:55:15 also do you think the piss interferes with the correct functioning of the routers 03:55:19 it seems to 03:56:21 -!- Bike_ has changed nick to Bike. 03:56:27 it's possible, slightly possible 03:56:33 Bike_: basically the reason we want Const is because the functor argument to our list functor is actually the list 03:56:36 type. 03:56:37 because fixpoint 03:56:51 so we want to ignore it for the actual value in the list and for the nil case. 03:57:41 right 04:00:27 -!- Bike_ has joined. 04:03:22 -!- Bike has quit (Ping timeout: 246 seconds). 04:03:30 are there any recursive types that can't be rewritten into Mufuckery? 04:03:32 -!- Bike_ has changed nick to Bike. 04:03:55 pretty sure the answer is no but i gotta ask all the dumb quetions 04:04:24 Bike: Well, that depends on what you mean by Mu. 04:04:49 Usually you talk about the fixed point of a (covariant) functor, but Haskell lets you have negative recursion. 04:04:59 and i'm lost. 04:05:13 Something like data Rec a = Rec (Rec a -> a) 04:05:20 Recursion with something on the left side of a -> 04:06:34 That lets you do all sorts of evil things, and it's usually forbidden in total languages. 04:07:51 In Haskell it still works out to be the same thing with Fix, I think, but you can't use any function that relies on a Functor constraint. 04:12:33 i didn't understand any of that and i don't think i'm going to any time soon 04:13:17 Sorry. I should have put it differently. 04:13:28 I keep forgetting that you can install xmonad and xdm and firefox and still not install the X server 04:13:47 Do you know what negative/positive positions, or covariant/contravariant functors, are? 04:13:55 no 04:18:28 Well, covariant (i.e. normal) functors are things that give you fmap :: (a -> b) -> f a -> f b 04:18:38 Contravariant functors give you contramap :: (a -> b) -> f b -> f a 04:19:47 example? 04:20:06 newtype Op r a = Op (a -> r) 04:21:42 (And e.g. Predicate a = a -> Bool and so on.) 04:22:38 I wonder whether unstable is better than testing these days 04:22:49 also what happened to the whole rolling-release Debian plan 04:25:18 so contramap foo pred = \a -> pred (foo a) and wow i've been told this before haven't i. 04:26:32 Note that Op r (Op r a) is covariant again. 04:32:03 Is "arrays of length 4" a dependent type? (or rather the constructor N -> a type like that) 04:33:35 the debian unstable faq is good 04:33:36 Should I use sid on my server? 04:33:36 Are you insane? No! 04:33:50 ableism~ 04:40:10 status: once again drinking scotch out of a mongodb mug 04:48:38 -!- liberty__ has joined. 04:51:37 -!- liberty__ has left ("Ex-Chat"). 04:51:51 kmc: what's the sh do? randomly kill sound devices until they're all stopped? 04:57:26 removes kernel modules yeah 04:57:34 cause I can't be bothered to figure out the dependency graph 04:57:40 especially when lsmod only shows part of it seemingly 05:00:00 :k Forall a. [a] 05:00:01 Illegal symbol '.' in type 05:00:01 Perhaps you intended -XRankNTypes or similar flag 05:00:01 to enable explicit-forall syntax: forall . 05:00:10 :k forall a. [a] 05:00:11 Illegal symbol '.' in type 05:00:11 Perhaps you intended -XRankNTypes or similar flag 05:00:11 to enable explicit-forall syntax: forall . 05:00:14 https://medium.com/geek-empire-1/a1ebd2b4a0e5 is a good essay. bruce fucking sterling 05:00:25 oh. 05:00:46 are laptops still stupid about overcharging batteries these days 05:01:03 are u still stupid these days #owned 05:01:25 yes :( 05:01:31 cablegate is disappointing because apparently nobody's actually bothered reading the cables? some of them are pretty interesting! 05:01:47 lots of people have read them 05:02:06 yes but i don't know any of those people 05:02:12 i do, checkmate 05:02:17 damn got me 05:06:33 "Julian has turned out to be a Tim Leary at the NSA’s psychiatric convention. " lol 05:11:09 -!- neena has joined. 05:14:55 `slist elevatorstuck 05:14:58 slist elevatorstuck: Taneb atriq Ngevd Fiora nortti Sgeo ThatOtherPerson alot 05:17:27 -!- Bike_ has joined. 05:18:45 -!- Bike has quit (Ping timeout: 264 seconds). 05:22:29 -!- Bike_ has changed nick to Bike. 05:46:14 -!- Bike has quit (Ping timeout: 240 seconds). 05:46:50 -!- Bike has joined. 05:49:58 -!- douglass_ has quit (Quit: Leaving). 06:00:28 -!- sacje has quit (Ping timeout: 264 seconds). 06:00:56 -!- sacje has joined. 06:04:42 Bike: Not necessarily dependent. 06:04:54 No? 06:05:09 Well, is N a runtime value? 06:05:58 oh, i see. 06:18:45 -!- Bike has quit (Ping timeout: 245 seconds). 06:25:09 -!- doesthiswork has quit (Quit: Leaving.). 06:30:41 -!- Bike has joined. 06:50:54 Is there the compiler C program into Dalvik VM? 06:52:15 Bike: Anyway, the thing I was saying was about fixed points of covariant functors vs. other types. 06:52:27 You run into some strange things with fixed points of other types. 06:55:20 In particular Fix (Op a) is ""weird curry's paradox type"" 06:58:19 -!- sacje has quit (Quit: sacje). 07:10:33 Fix (Op a) is g = g -> a, sorta? so fix? (which makes everything inhabited or whatever) 07:11:52 Well, it's newtype Rec a = Rec (Rec a -> a) 07:12:06 (so yes) 07:12:12 Yes. 07:12:37 To the first part, anyway. I'm not sure what the rest means? 07:12:52 me neither 07:13:24 something about how fix existing means all types have something in them which means everything is true in curry-howard and a type theorist comes around to my house and smashes up my windows 07:14:12 Well, you can use this type to write fix, but I'm not what you have in mind. 07:14:51 i'm not what i have in mind either 07:15:08 well, _|_ is what corresponds to using Curry's paradox to prove anything. 07:21:50 -!- Bike has quit (Ping timeout: 240 seconds). 07:23:33 You could trick the type theorist into believing that your house is uninhabited. 07:35:27 zzo38: I saw a thing to compile C to JVM via MIPS, presumably you could feed that into the Dalvik compiler 07:35:35 of course you can also run C code natively on most android devices 07:35:49 i think you have to compile it first 07:36:00 or hey compile it with emscripten and then run it in Rhino 07:36:00 so many ways 07:36:26 it's just boxes and arrows 07:36:33 I think native code is only supported on android newer than 1.5 07:38:14 -!- epicmonkey has joined. 07:45:03 I have written some C programs and maybe if someone want to work it in Android too, such as the "Aimfiz" Z-machine interpreter, is meant for SDL but maybe someone can port to Android since I think Aimfiz is the least buggy Z-machine interpreter as far as I can see (tell me if you do find a bug). 08:06:40 -!- epicmonkey has quit (Ping timeout: 245 seconds). 08:26:55 -!- Sgeo has quit (Read error: Connection reset by peer). 08:28:12 -!- Sgeo has joined. 08:53:44 There's a generic port for SDL stuff on Android; things like OpenTTD, Ur-Quan Masters and such run on it. 08:55:45 (It does need native code suppot.) 08:58:45 I think the NDK is sufficiently good and supported that people haven't really spent time on turning C to Dalvik bytecode; the few "Dalvik backend for LLVM" projects I can see seem quite dead. 09:00:05 -!- MindlessDrone has joined. 09:16:29 -!- conehead has quit (Quit: Computer has gone to sleep.). 09:16:48 -!- epicmonkey has joined. 10:18:56 ``I'm The 14-Year-Old Who Wrote The "Jesus Isn't A Dick So Keep Him Out of My Vagina" Sign In Texas And Was Labeled A "Whore" By Strangers Online'' 10:19:00 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `I'm: not found 10:21:23 fizzie: Maybe then it helps, if someone wants to play a Z-machine game on Android using the Aimfiz interpreter engine instead of some other one. With a keyboard you might even work it without a lot of changes, but if you don't have a keyboard then you will need to put an on-screen keyboard, and the "mouse menus" (of Z-code v5) might be helpful too. 10:22:26 -!- MindlessDrone has quit (Quit: MindlessDrone). 10:23:10 But I have absolutely no idea how the Z-machine version 5 mouse menus are supposed to work; the only things I know is this: There are four menus called the directions menu, inventory menu, frequent verbs menu, and frequent words menu. The extension table contains pointers to tables corresponding to these menus, and there is a bitfield to indicate of the menu has been changed. 10:23:33 The format of these tables is unknown. 10:34:12 -!- plugnburn has joined. 10:34:22 hi there 10:34:30 is deciode here? 10:34:49 Hello. I don't know "deciode", sorry 10:34:57 What is it you wanted? 10:36:05 Sorry for da panic... he made a port of MSM implementation to Ruby, then suggested a new operator, then _suddenly_ disappeared when I implemented what he asked for :) 10:36:11 and didn't update his port 10:36:59 I don't know what to do about that, but you could mention that on the esolang wiki too 10:37:03 http://esolangs.org/wiki/MSM 10:37:14 see Discussion page 10:37:38 and I did mention it in See Also, that his port is incomplete 10:37:41 I already have that open. 10:38:53 Could you post your implementation on there? 10:39:06 I did 10:39:27 http://esolangs.org/wiki/MSM#Implementations - both are mine 10:39:46 https://gist.github.com/plugnburn/6150089- this is the reference one 10:39:55 https://gist.github.com/plugnburn/6150089 10:40:13 OK 10:43:14 I write down things about dreams I have had and what others have told me. Someone once told me his dream where the doctor asked him if he had ever been to the moon, he answered no, and then the doctor asked him to prove it; the doctor couldn't help him if he could not prove that he has never been to the moon. 10:44:53 nice :) someone told me Underload is Turing-complete but I can't yet prove MSM is Turing complete by translating its code to Underload. Is there a doctor that can help me? :) 10:45:41 If they are a doctor of esoteric programming, then maybe. 10:46:34 ok, gonna go, have a nice day 10:47:04 OK 10:47:11 -!- plugnburn has left. 11:02:52 -!- katla has joined. 11:04:11 JSON or s-expressions? You better brush up both ;-) 11:04:32 https://twitter.com/ICFPContest2013 11:05:09 i am traouble with s-expression, guys what comes after left bananna ? 11:10:10 I’m not sure you can really do anything about that, just accept the feeling of imbalance. 11:22:58 -!- Sgeo has quit (Read error: Connection reset by peer). 11:37:56 -!- mnoqy has joined. 11:46:28 zzo38: The Android version of SDL includes a built-in onscreen keyboard for keyboardless devices, I believe. 12:15:02 -!- BlueShark has changed nick to KrahSeulB. 12:15:09 -!- KrahSeulB has changed nick to BlueShark. 12:34:42 -!- carado has joined. 12:45:35 -!- carado has quit (Ping timeout: 246 seconds). 12:45:52 -!- carado has joined. 12:46:08 -!- nooodl has joined. 12:57:04 -!- boily has joined. 12:57:36 good ff23 morning! 12:58:14 still stuck in boston 12:58:21 i could get a car if there were a driver 12:59:21 -!- metasepia has joined. 12:59:49 -!- oerjan has joined. 12:59:49 ~metar KBOS 12:59:50 KBOS 071254Z 15005KT 10SM BKN250 21/16 A3019 RMK AO2 SLP221 T02060161 13:00:40 quintopia: why not enjoy the weather? the nice food courts? the new england accent? 13:00:54 i would enjoy the weather more on the trail, hiking 13:00:58 and i am tired of city 13:01:08 that is a pleasant high for the day tho 13:03:06 strangely, for an outdoor activity, it's difficult to go hiking without a car. 13:26:48 GHAAAAAARGH! I don't have time to read the new Monad Reader issue! but the temptation is strong... 13:26:53 must resist... 13:26:58 ill read it for you 13:30:19 first two articles are old hat and 3rd it too complicated to bother reading 13:33:55 but I have to feel the old hattery by myself, and the be surrounded by warm and fuzzy complexification! 13:34:35 there's this need, nay, this gaping hole in my heart that can only be filled by a floating spacesuit stuffed with oranges and apples. 13:48:04 okay, the first article is meh. 13:57:02 -!- Bike has joined. 14:22:56 -!- yorick has joined. 14:24:05 ~metar CYUL 14:24:06 CYUL 071400Z 14008KT 30SM SCT055 BKN075 BKN240 22/14 A3006 RMK SC4AC2CI1 SLP179 DENSITY ALT 800FT 14:37:25 -!- jconn has quit (Ping timeout: 248 seconds). 14:37:52 -!- oerjan_ has joined. 14:40:07 -!- oerjan has quit (Disconnected by services). 14:40:33 -!- oerjan_ has changed nick to oerjan. 14:52:05 -!- Bike has quit (Ping timeout: 245 seconds). 15:03:45 -!- impomatic has quit (Ping timeout: 245 seconds). 15:11:10 i have a way out of boston! 15:11:16 * quintopia dances with boily 15:12:16 What, you're moving to SF? 15:12:24 I feel danced... 15:12:35 i wish 15:13:29 this song is strangely catchy 15:15:24 -!- zzo38 has quit (Remote host closed the connection). 15:16:26 -!- Bike has joined. 15:27:00 http://tinysubversions.com/stuff/thisJustIn/ 15:32:55 -!- Taneb has joined. 15:40:34 -!- iamfishhead has joined. 15:57:09 -!- zzo38 has joined. 16:09:06 -!- Bike has quit (Ping timeout: 264 seconds). 16:09:14 -!- Lumpio- has quit (Read error: Operation timed out). 16:09:32 -!- Bike has joined. 16:14:11 Do you sometimes have dream where you are a different person and/or a different species? 16:14:29 yeah 16:16:11 my dreams are boring. there's no sound, no people, no movement, and I tend to do nothing in still places. 16:17:45 That sounds kinda boring, yeah 16:20:05 If the Android version of SDL include a on-screen keyboard for keyboardless devices, well, still might it be useful to customize it? Does it include to customize the on-screen keyboard? (For example, to include the Z-machine keys, and other things, like in Aimfiz you use CTRL+T to select the transcript slot and CTRL+L for scrollback, etc, and it can also change depending on context) 16:20:38 i don't actually type letters on my android phone, i use the swipey thing 16:21:00 which i think would work fine for an adventure game... 16:21:22 Swipe, swipe, swipe the monsters 16:21:31 Swiftly out of the screeeeeeeen 16:22:31 Still, you might need functions keys, and sometimes it is single-key input and sometimes full-line input, sometimes timed, and there are some control functions in Aimfiz too... 16:23:53 you could have virtual buttons, like all the game machine emulators 16:24:43 Probably customizing the on-screen keyboard to have those functions would help it; if you have a physical keyboard with all the necessary keys then you don't need those 16:24:59 why's it have to be part of the keyboard? 16:25:46 I suppose, so that you can hide it together with the rest of the keyboard, and so that if you have a physical keyboard then you can use that instead. 16:27:01 At least, that is what I would think it would be. 16:27:08 Do you think it would be otherwise? 16:27:16 i'd go crazy trying to play interactive fiction games on my phone 16:28:37 I might, too (I don't have a cell phone; I make computer stuff on computer instead), but some people would like to be able to play this game on a Android phone/tablet. 16:29:30 I think there are already some Z-machine interpreters for such device but they are buggy software and you might want to port the Aimfiz interpreter engine which seems to be more accurate. 16:31:13 -!- Lumpio- has joined. 16:36:53 Current version of the 'postgresql' metapackage (it depends on the supported PostgreSQL version, currently 9.1) in debian-unstable: "9.3+142really9.1+146". 16:39:07 -!- Lumpio- has quit (Quit: splut sprellas). 16:40:30 -!- oerjan has quit (Quit: Later). 16:40:37 Well that's nice 16:40:55 -!- jconn has joined. 16:42:41 fizzie: Why 16:43:11 Deewiant: I don't know, but I'm sure it's some sort of versioning mishap combined with "can't make version numbers smaller" thing. 16:43:35 apt doesn't have anything like an epoch? 16:44:52 We only give the most basic definitions of categories, functors, and natural transformations. For a gentler introduction, with more details and examples, see e.g. Mac Lane [29]. 16:45:57 Deewiant: It does; that'd be something like 1:9.1+146, which, admittedly, would look nicer. 16:46:04 (If there's no colon, the epoch is zero.) 16:46:37 shachaf, yes?? 16:46:38 -!- copumpkin has quit (Ping timeout: 240 seconds). 16:46:48 Maybe they're planning to make 9.3 the supported version in unstable/testing anyway soon-enough, and didn't want to bump up the epoch. Who knows. 16:47:08 -!- copumpkin has joined. 16:47:31 -!- Lumpio- has joined. 16:47:45 They just want their mistake to be forgotten instead of being forever encoded as the epoch. 16:49:01 Could they put a feature of temporary epoch? 16:49:04 fizzie: Yeah, they'd avoid an epoch if it was just to work around a temporary bug. 16:49:25 zzo38: The epochs are just a string property of version numbers, there's no meaning to "temporaryness" of them. 16:51:06 -!- Bike has quit (Ping timeout: 264 seconds). 16:51:45 -!- Bike has joined. 16:58:28 -!- ssue__ has joined. 16:59:10 -!- ssue__ has changed nick to ssue. 17:10:29 -!- mnoqy has quit (Quit: hello). 17:11:52 Gregor: I meant if they would add such a feature to the package manager, so that there is also another kind of temporary epoch as well. 17:19:02 But what does "temporary" mean? You don't want for it to be temporary in time, because a version which is numerically lower should FOREVER be newer than a version which is numerically higher, but also older than a different version which is numerically higher. 17:20:48 "Unable to start X session --- no '~/.xsession' file, no '~/.Xsession' file, no session managers, no window managers, and no terminal emulators found; aborting." Such a desperate-sounding error. 17:21:03 Well, you would have to specify what version it overrides; sometimes a version overrides another one, such as if a new version is made up but you need an old version to override it, or for another reason; an explicit "override" section might do. 17:24:49 But then you need all relevant versions (the global ordering) to create a local ordering, or you need for the version to specify EVERY version it overrides, which could include versions by third parties or not in the repo. e.g. 9.3+142really9.1+146 presumably also overrides 9.2+whatever, but it didn't need to specify that because 9.3+142 is numerically greater than 9.2+whatever. 17:28:36 -!- augur has quit (Remote host closed the connection). 17:30:06 -!- Bike has quit (Ping timeout: 264 seconds). 17:31:36 -!- Bike has joined. 17:31:56 -!- ka7la has joined. 17:34:19 -!- katla has quit (Ping timeout: 276 seconds). 17:40:07 -!- ka7la has changed nick to katla. 17:42:57 Bleh, this thing has the thing where altgr-space generates U+00a0 (a non-break space), and I keep typing it after every | because | here comes from altgr-[the key with <, > and |] and then it's all "bash: $'\302\240less': command not found". 17:43:57 Where "the thing" = xkb_symbols configuration. 17:44:23 fizzie: ...disable it 17:45:35 fizzie: finnish keyboard layout? 17:47:41 Deewiant: Do you happen to know if I can easily setxkbmap it dead? (I've been trying out a life without a desktop environment lately.) 17:47:55 -!- epicmonkey has quit (Ping timeout: 264 seconds). 17:48:03 damn it 17:48:09 im excited about icfp 17:48:25 i really want to see what the goal is 17:48:52 fizzie: I don't know about "easily" but you can make a copy of the symbols file and make the change and setxkbmap | xkbcomp that 17:49:33 I guess I'll do something like that. 17:49:39 fizzie: My sincere suggestion: the US International (AltGr dead keys) layout. It’s great. 17:50:41 hmm, I need food 17:51:34 we have ready access to freshly made bánh mì near our offices. 17:52:15 good for you 17:59:20 -!- katla has quit (Read error: Operation timed out). 17:59:22 -!- ka7la has joined. 18:03:38 -!- Taneb has quit (Quit: Leaving). 18:05:42 -!- sacje has joined. 18:06:35 `quote `relcome sacje 18:06:38 No output. 18:06:46 `relcome sacje 18:06:50 ​sacje: 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.) 18:07:04 thanks boily 18:07:09 `thank boily 18:07:10 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: thank: not found 18:07:16 oh well, worth a shot 18:07:19 `thanks boily 18:07:20 Thanks, boily. Thoily. 18:07:25 oh 18:07:27 * sacje shrugs 18:07:32 `thanks HackEgo 18:07:33 Thanks, HackEgo. ThackEgo. 18:07:50 `hi HackEgo 18:07:51 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: hi: not found 18:09:55 `run sed -re 's/\/H/; s/\/H/' bin/hi && chmod +x bin/hi && cat bin/hi 18:09:59 ​#!/usr/bin/perl \ $_ = (join " ", @ARGV) || `words`; s/^\s+|\s+$//g; print "Hi $_. "; if (/[aeiouy]/) { s/^[^aeiouy]*/H/; } else { s/^./H/; } print "$_."; 18:10:08 `hi HackEgo 18:10:09 Hi HackEgo. HackEgo. 18:11:23 ion: You should make bin/þanks 18:11:42 shachaf: no u 18:12:39 no þx 18:13:55 `hi carcinogens 18:13:56 Hi carcinogens. Harcinogens. 18:14:31 `run sed -i -re 's/aeiouy/aeiouyAEIOUY/g' bin/thanks bin/hi && cat bin/thanks 18:14:34 ​#!/usr/bin/perl \ $_ = (join " ", @ARGV) || `words`; s/^\s+|\s+$//g; print "Thanks, $_. "; if (/[aeiouyAEIOUY]/) { s/^[^aeiouyAEIOUY]*/Th/; } else { s/^./T/; } print "$_."; 18:14:47 The i flag would have worked, too, but whatever. 18:15:08 `thanks 18:15:11 `hi GUYS 18:15:12 Hi GUYS. HUYS. 18:15:13 Thanks, therery. Therery. 18:16:41 -!- ka7la has changed nick to katla. 18:17:42 `hi 18:17:44 Hi . H. 18:18:14 therery??? 18:18:27 `hi Hi 18:18:28 Hi Hi. Hi. 18:18:29 -!- augur has joined. 18:18:46 im too excited about icfp 18:18:48 help 18:18:52 ion: it should support vowels in other languages 18:18:52 `cat icfp 18:18:53 cat: icfp: No such file or directory 18:18:59 `? icfp 18:18:59 as soon as i find out what its about ill stop carig 18:19:01 icfp? ¯\(°_o)/¯ 18:19:01 is there a [[:vowely:]] 18:19:01 | 18:19:01 º¯`\o 18:19:31 Hm, the new IOCCC sizing tool counts keywords as 1 character. 18:19:36 So there's no benefit to #defining them away. 18:19:39 `cat /dev/urandom > dog 18:19:39 katla: go look at some Java. it will help you feel better. 18:19:40 cat: /dev/urandom > dog: No such file or directory 18:19:41 elliott: Yeah. Too bad there’s no “vowel” character class. I guess we could use Unidecode and then match against its result. 18:19:50 what 18:20:16 `quote Shakespear 18:20:18 884) what is this set? sounds like shakespear Yes, that's what people often say about Chrono Trigger. 18:20:19 DAMMIT 18:20:23 Oh 18:20:27 Well, that was surprising 18:20:41 `quote cat 18:20:43 105) what's the data of? [...] Locations in a now deceased game called Mutation I have no problems with you being interested in online games but the necrophilia is disturbing \ 113) CakeProphet: reading herbert might be enlightening in one hand he held a long worm can be greased. twice i got it nearly th 18:21:05 Oh 18:21:10 Locations 18:21:12 Took at while 18:21:37 `quote kitten 18:21:38 756) i once had a dream when i was told to look after some kittens but they were made of chocolate and i ate them :( 18:21:52 `quote `quote 18:21:54 310) `quote django ​352) django is named after a person? thought it would be a giraffe or something thankfully only one \ 311) `quote django ​352) django is named after a person? thought it would be a giraffe or something \ 407) `quote django 18:22:12 `quine 18:22:12 `quote `quote `quote 18:22:13 No output. 18:22:15 ​`quote `quote `quote 18:22:25 `ls 18:22:26 a.c \ a.out \ bi \ bin \ canary \ delvs \ delvs-master \ etc \ factor \ hi-bool.bf \ ibin \ interps \ karma \ lib \ master.tar.gz \ multiply.bf \ no \ paste \ pref \ prefs \ quines \ quotes \ share \ src \ wisdom 18:22:33 `quote 407 18:22:35 407) The Russian's emblem was the hammer and sickle, not the fist and other fist 18:22:41 Heh =P 18:22:42 wait 18:22:43 agh 18:22:48 Haha 18:22:50 `cd karma 18:22:51 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: cd: not found 18:22:54 Awww =P 18:22:56 `quote 311 18:22:57 311) `quote django ​352) django is named after a person? thought it would be a giraffe or something \ 407) `quote django ​352) django is named after a person? thought it would be a giraffe or something thankfully only one thankfully only two 18:23:05 `ls karma 18:23:06 karma 18:23:11 wow confusin imo 18:23:18 `cat karma 18:23:19 GregoR now has 1 karma. 18:23:25 o_0 18:23:27 sensible. 18:23:34 `cat bin/karma 18:23:35 ​#!/bin/sh \ echo "$1 has $(lib/karma "$1") karma." 18:23:37 is what you meant, probably 18:23:55 wait, why is it in lib. 18:24:01 Well, there seems to be a karma, erm, thing in the root? 18:24:09 `cat lib/karma 18:24:10 ​#!/bin/sh \ count () { \ hg log --template '{desc}\n' | \ egrep '<[^]]*> karma\'$1 | \ fgrep -vix "<$2> karma$1 $2" | \ cut -d' ' -f3 | \ fgrep -cix "$2" \ } \ plus=$(count + "$1") \ minus=$(count - "$1") \ echo $(($plus-$minus)) 18:24:24 wow i love how horrible everything about these things are 18:24:56 Presumably the file in the root is just there by mistake. 18:24:56 `touch god 18:24:59 Erm 18:25:00 No output. 18:25:03 `touch dog 18:25:06 No output. 18:25:08 `rm karma 18:25:08 `cat dog 18:25:11 No output. 18:25:13 No output. 18:27:52 I forgot how cute lib/karma is 18:28:18 `cat /dev/null 18:28:19 No output. 18:28:41 ~duck karma 18:28:42 Karma in Indian religions is the concept of "action" or "deed", understood as that which causes the entire cycle of cause and effect. 18:29:29 Duck Karma is gained by being gentle with your corkscrew penis. 18:31:02 `pastelog kmc.*essay 18:31:36 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.15627 18:32:18 Oh 18:32:25 elliot pls play that shit game again 18:32:26 I thought that was a conversation 18:32:34 I was like "NOTHING FOLLOWS" 18:32:40 "WHY DON'T I UNDERSTAND" 18:33:39 katla: I'm traumatised by it 18:33:44 have to forget about it before I can play again 18:33:48 yeah but it's been like weeks 18:33:54 haha ok 18:33:55 you forgot about it for sure. 18:33:58 Bike: if you played it 18:34:00 you would understand 18:34:06 why would i ever play it? 18:35:33 What the boink are we talking about... 18:35:44 Dot Action 2, greatest game in the universe 18:35:52 http://offgao.no-ip.org/game/dotact2/ 18:36:55 ah no. no no no no no no. that thing is still alive? 18:38:36 as long as there is evil in the hearts of humanity, it will live 18:41:05 oh shit 18:41:12 That floor is electrified or something 18:41:38 it's lava. anyone who tells you it isn't lava is a cretin 18:41:51 Alright 18:42:15 and the grey stuff is water 18:42:41 That I understood 18:42:57 After getting elec^H^H^H^Hburnt to a crisp 18:42:57 It's electricity 18:43:03 It says so in the instructions. 18:43:15 even offgao can be wrong. 18:43:22 * Bike notes "Lumpio- is a cretin" in his notes 18:43:30 it is unreasonable to expect him to understand his own game. dot action 2 is bigger than any of us 18:44:46 .__. 18:46:11 I like the FM music though 18:46:12 a lot 18:56:34 -!- conehead has joined. 18:56:49 -!- augur has quit (Read error: Connection reset by peer). 18:57:20 -!- augur has joined. 18:57:29 -!- Roujo has changed nick to LimeJaune. 18:57:57 -!- boily has changed nick to BleuetBleu. 18:58:37 LimeJaune: j'aurais bien voulu avoir pris CitronVert, mais il semblerait qu'un autre tarlan que moi en soit l'utilisateur courant. 18:58:53 Yup =P 18:58:56 That's the joke =P 18:59:01 aurgh. 18:59:01 #electrolab 18:59:54 I do not understand it in French very well. 19:00:23 what's a tarlan? 19:00:58 Moron =P 19:01:19 LimeJaune: Hey, all he did was ask a question! That's not nice. 19:01:41 <3 19:02:29 -!- LimeJaune has changed nick to Roujo. 19:03:09 Roujo: Who are you, anyway? Whence do you know oerjan? 19:04:23 What's a whence? 19:04:29 "from where" 19:04:32 Oh ^^ 19:04:36 ##nomic 19:04:42 Oh. 19:05:53 @pl a b c = map ((flip d) c) b 19:05:56 a = id (fix (const (flip (map . flip d)))) 19:05:57 optimization suspended, use @pl-resume to continue. 19:06:15 looks sensible 19:06:38 @pl-resume 19:06:44 a = id (fix (const (flip (map . flip d)))) 19:06:45 optimization suspended, use @pl-resume to continue. 19:06:48 elliott: Oh, did I mention @pl? 19:06:58 dern 19:07:11 shachaf@carbon:~$ pointfree 'a b c = map ((flip d) c) b' 19:07:11 a = flip (map . flip d) 19:07:11 Why did it put "id" at the front? 19:07:12 hth 19:07:40 shachaf: That is better. 19:07:52 shachaf: elliott probably knows about @pl already 19:08:07 Yes, but we were talking about what recently broke in lambdabot. 19:08:24 zzo38: @pl initially compiles Haskell code using a very direct process to a point-free form and then optimizes it by e.g. eliminating "id". 19:08:43 -!- epicmonkey has joined. 19:08:47 Why does it make like that though? It didn't eliminate "id", and it did other things too. 19:09:10 It's broken right now. I don't know why. 19:11:07 @pl f x = id x 19:11:08 f = id 19:11:12 @pl f x = id (id x) 19:11:12 f = id 19:11:21 you don't know? that's not very helpful 19:12:32 olsner: i never said it was helpful hth 19:13:06 -!- BleuetBleu has changed nick to boily. 19:13:27 What does hth mean? 19:13:49 hope that helped 19:13:53 or 19:13:55 hope that helps 19:13:58 Cool ^^ 19:14:02 Thanks =) 19:14:23 I usually read it as happy to help 19:15:01 (because I think that goes better with completely unhelpful statements) 19:15:04 `? hth 19:15:06 hth is help received from a hairy toe. It is not at all hambiguitous. 19:15:52 >okay.png 19:17:50 * olsner draws a bahth 19:18:51 don't do mehth kids 19:19:14 4d8+20 19:19:14 shachaf: 21 + 20 => 41 19:19:22 (it's bad for your teehth) 19:19:51 `dice 4 8 19:19:52 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: dice: not found 19:19:56 ~dice 4 8 19:19:56 3 1 2 4 3 2 3 4 --- Sum = 22 19:21:04 FurryScript also includes dice function, including such feature as drop-lowest and glitch. If you have PHP then maybe you can even install it on the IRC too. 19:21:43 1d3 19:21:43 shachaf: 3 19:22:25 lambdabot: liar 19:23:51 -!- zzo38 has quit (Quit: zzo38). 19:31:26 -!- eitow has joined. 19:33:33 -!- eitow has quit (Remote host closed the connection). 19:33:59 -!- eitow has joined. 19:34:42 ~dice 3 19:34:42 1 --- Sum = 1 19:35:44 1d(1d4) 19:36:24 shachaf: what is the expected value of a Xd(YdZ) throw? 19:37:59 -!- augur has quit (Remote host closed the connection). 19:39:39 -!- augur has joined. 19:39:43 -!- Lumpio- has quit (Ping timeout: 240 seconds). 19:40:30 augur: oh hai! while you're there, would you kindly answer to the The Question, namely what are your approximate coördinates and body weigh? as a bonus, you'll even surpass Bike as the first Glorious Entry in my file. 19:42:04 What a creepy thing to ask a person. 19:42:29 Sounds like the kind of questions one asks on Grindr. 19:43:18 ~duck grindr 19:43:18 Grindr is a geosocial networking application geared towards gay, bisexual, and bi-curious men. 19:43:58 oh. uhm. in my capacity as a Certified Canadian, I truthfully attest that I'm not creepy. 19:44:24 boily: For 1d(1dX) it should be (X+2)/3 or something like that? 19:44:48 Gregor: I can also bribe you with a box of timbits. 19:45:03 I don't know what timbits are... 19:45:09 Unless they're bits of people named Tim. 19:45:33 boily really, really ~really~ needs to know the centroid of esoteric 19:45:36 Which just places you in the snuff version of Grindr. 19:46:19 Hmm, that's not right. 19:46:43 Gregor: timbits are donut holes from tim hortons. a traditional Canadian delicacy (that is actually edible, contrary to salmiakki). 19:46:55 Fiora: I do. 19:47:02 Fiora: once he finds it he's going to get there whatever it takes and set up his base. 19:47:09 then the scheming begins. 19:47:21 it will be powered by the magnetic force of all the esoteric around it 19:47:21 shachaf: no idea about the dice dice throw. I suck at probs. and stats., so that's why I asked you the question. 19:47:38 Well, that's why I gave you a nonsense answer. 19:47:59 * boily duck tapes elliott to mute him. “Hush! Don't reveal my plans!” 19:49:25 or he's trying to like 19:49:34 play subset-sum with our weights 19:49:43 "find a group of #esoteric members whose weights sum to 350kg" 19:50:04 You mean their weighs? 19:50:05 I live in Indiana and weigh 15 tons. 19:50:18 Gregor: You left SF? :-( 19:50:24 shachaf: It was an internship. 19:50:32 I know. 19:50:34 But still. 19:50:45 gregor are you a tractor trailer 19:51:08 Fiora: I'm an American and I'm just BIG BONED. 19:51:23 gregor has neutronium bones 19:54:35 boily: So the expected value of 1d(1dX) is actually (X+3)/4, I guess. 19:57:20 -!- eitow has quit (Remote host closed the connection). 19:58:14 -!- eitow has joined. 19:59:19 `relcome eitow 19:59:21 ​eitow: 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.) 19:59:23 -!- clog has quit (Ping timeout: 240 seconds). 19:59:40 Fiora: subset-summing #esoteric sounds like an interesting idea. 20:03:57 shachaf: I'm the kind of person to just wing this kind of problem into matlab/octave and brute force through multiple tries. 20:04:07 (I guess there's a reason I became an engineer) 20:05:52 -!- Lumpio- has joined. 20:08:57 -!- eitow has quit (Remote host closed the connection). 20:09:40 -!- eitow has joined. 20:11:44 -!- eitow has quit (Remote host closed the connection). 20:12:17 -!- eitow has joined. 20:14:12 -!- eitow has left. 20:19:09 -!- |_ has joined. 20:26:33 Is there a fixed point of scheme eval that isn't a constant or self-referencing? 20:27:42 Is there a way to make PulseAudio do this thing I want it to do? 20:27:53 what is this thing? 20:29:50 "die in a fire" 20:30:07 i guess bottom, if you count that 20:30:17 I have an USB soundcard where the volume control's dB levels (as seen by the ALSA driver) bear no resemblance to reality; in particular, it's completely muted up to a point, and then uncomfortably loud after that. It used to be so that I could just keep the card's mixer control fixed to that just-about-audible-and-loud, and compensate by lowering the per-app volumes (dynamic range is for ... 20:30:21 Bike: it's ""different"" in a strict language 20:30:24 ... wimps), but apparently modern Pulse merges the volume controls with a super-clever mechanism, where it takes the required adjustment and applies it... well, just read http://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/PulseAudioStoleMyVolumes/ 20:30:27 shachaf: yeah i know 20:30:42 i know you know 20:30:50 woa 20:31:13 It says that I can disable the cleverness by a "control=" parameter to module-alsa-sink, but I haven't figured out any sensible way to apply that, esp. automagically to a single device that comes and goes. 20:31:43 (And anyway I don't know if it would accept a "none" setting that'd make it not touch the wonky hardware volume control but just approximate with software.) 20:31:55 pulse audio ate my balls 20:32:11 Maybe I should just go with JACK, but that's so "pro". 20:33:01 Also I don't have a real sound card. And all the JACK stuff is so Qt. 20:33:34 (Apparently the "standard" way to do persistent per-application setups in JACK is with QjackCtl Patchbay.) 20:33:35 have you considered replacing your sound software with piping everything to /dev/snd 20:33:45 Not really. 20:33:47 patchbay is pretty nice, actually. 20:33:50 shachaf: _|_ is a fixed point of all functions in a strict language 20:34:15 Bike: there probably isn't one, if you don't count bottom 20:34:35 -!- katla has quit (Quit: Leaving). 20:34:50 I'm not sure how Bike defines constant 20:35:01 I might define constant as "something that evaluates to itself", which makes Bike's statement trivial 20:35:07 anyway, you can write quines 20:35:13 anything that's "self-evaluating?" 20:35:15 i meant not a cons or symbol. 20:35:28 ((lambda (x) (list x (list 'quote x))) '(lambda (x) (list x (list 'quote x)))) 20:35:36 should evaluate to itself 20:35:51 oh right. 20:35:59 > text$ap(++)show"text$ap(++)show" 20:36:00 text$ap(++)show"text$ap(++)show" 20:36:20 -!- Taneb has joined. 20:36:27 hi Taneb 20:36:34 dumb question bike 20:36:44 Bike: that's p. mean 20:36:44 Hi shachaf 20:36:45 > ap(++)show"ap(++)show" 20:36:47 "ap(++)show\"ap(++)show\"" 20:37:00 don't be mean to Bike 20:37:08 ==kmc 20:37:25 i didn't think of quines either 20:38:14 that's the definition of a quine, isn't it 20:38:21 hmm i guess «5» is a quine 20:38:23 boring quine 20:38:44 (quote (quote (quote (quote ...)))) is cooler anyway 20:41:06 -!- clog has joined. 20:41:39 `relcome clog 20:41:41 ​clog: 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.) 20:42:19 ««lambda «x» «list x «list 'quote x»»» '«lambda «x» «list x «list 'quote x»»»» 20:43:03 imo use “” 20:43:09 “best lisp” 20:43:10 imo use 「」. 20:43:47 i thought of kiforget's theorem but forgot how to relevantly apply it 20:43:51 or, you could always use sha- and -chaf. htnqh. 20:44:13 nooodl: oh that i was thinking about the other day actually 20:44:27 rather, how different combinatory calculi would work with infinite strings 20:44:52 ski of kkkkkkk... is itself, but with sss... i'm not sure, besides that the first letter is still s 20:45:12 ````... is just bupkis, i dunno 20:45:13 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: ```...: not found 20:45:22 shame 20:47:09 is that s(s(s(s(... 20:47:22 i ran it for a little while and then got bored 20:47:47 or ...(((ss)s)s)s 20:48:00 kleen. why did i think it was klein? blugh 20:48:04 kleene rather 20:49:12 ¿¿lambda ¿x? ¿list x ¿list 'quote x??? '¿lambda ¿x? ¿list x ¿list 'quote x???? 20:49:49 > filter (\x -> generalCategory x == InitialQuote) ['\0'..] 20:49:50 "\171\8216\8219\8220\8223\8249\11778\11780\11785\11788\11804\11808" 20:49:53 > text $ filter (\x -> generalCategory x == InitialQuote) ['\0'..] 20:49:55 «‘‛“‟‹⸂⸄⸉⸌⸜ 20:50:01 ff 20:50:06 that does not look quite right......................... 20:50:08 ~fffffffffffffffff 20:50:09 --- Possible commands: dice, duck, echo, eval, fortune, metar, ping, yi 20:50:16 ~metar KSFO 20:50:16 KSFO 071956Z 23010G14KT 10SM FEW015 BKN022 19/11 A3011 RMK AO2 SLP195 T01940111 20:50:35 nooodl: finally, a lisp with sensible beautiful syntax 20:50:47 you mean javascript? 20:51:15 > length ['\0'..] 20:51:16 -!- epicmonkey has quit (Ping timeout: 276 seconds). 20:51:16 1114112 20:51:54 kmc: it's just not a lisp if it doesn't have arbitrary criteria for inclusion, man 20:52:52 inclusion-exclusion 20:53:17 inclusion-inclusion 20:53:21 > logBase 2 $ length ['\0'..] 20:53:22 No instance for (GHC.Float.Floating GHC.Types.Int) 20:53:23 arising from a use of... 20:53:32 > logBase 2 . fromIntegral $ length ['\0'..] 20:53:34 20.08746284125034 20:53:40 imo call it 20 20:56:51 utf-20.1 20:57:12 > reverse $ unfoldr (\x -> if x == 0 then Nothing else Just (mod x 2, div x 2)) (length ['\0'..]) 20:57:13 [1,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0] 20:57:55 -!- Nisstyre has joined. 20:58:05 shachaf: you could fit 3 codepoints in a 64-bit word with enough bits left over to tag it as not a pointer 20:58:06 > binary # length ['\0'..] 20:58:07 "100010000000000000000" 20:58:14 utf-lg(1114112), computable reals are the future 20:58:17 kmc: Yep. 20:58:18 boily: what 20:58:26 kmc: I ported "text" to that encoding once. 20:58:31 really 20:58:32 (Well, not the pointer tagging bit.) 20:59:00 but UTF-21? 20:59:12 (#)??? is it just ($) or am i missing something 20:59:13 boily: if i give you that information, you can teleport me away, so no thank you :| 20:59:13 UCS-2.625 or whatever you might call it. 20:59:15 how did it do... 20:59:16 oh, it's this again 20:59:23 I didn't port everything but a lot of it. 20:59:41 kmc: There are various disadvantages, like not being able to (++) two strings with memcpy. 20:59:47 :t (#) 20:59:49 (Unless you're lucky and the alignment matches.) 20:59:51 AReview s t a b -> b -> t 21:00:05 :t binary 21:00:12 > "10101" ^? binary 21:00:15 Just 21 21:00:45 :t showIntAtBase 21:01:01 remember when I added all the bases up to 16 but edwardk made me take them out :( 21:01:09 i'm going to murder everyone involved in lens hth 21:01:19 :t binary 21:01:19 nooodl: Numeric.Lens is ion's fault hth 21:01:25 what happen 21:01:26 why is :t even more broken 21:01:29 (this solves the problem where i'm too lazy to learn about lens) 21:01:32 @type binary 21:01:40 > help 21:01:41 Not in scope: `help' 21:01:47 cool 21:01:48 :t "help" 21:01:49 [Char] 21:01:51 help 21:01:57 :t binary 21:02:07 wow this is a shitty bot. 21:03:57 -!- oerjan has joined. 21:04:56 > "hm" 21:04:57 "hm" 21:05:00 :t binary 21:05:13 :t map 21:05:14 (a -> b) -> [a] -> [b] 21:05:17 the haunted value. unknowable. untypeable 21:05:22 wtf 21:05:40 > binary 21:05:41 No instance for (Data.Profunctor.Choice p0) 21:05:41 arising from a use of `e_1' 21:05:41 ... 21:05:45 ooh 21:06:01 I think the problem is the type is too long 21:06:04 Hmm, haven't we had that before? 21:06:04 ok so lens is so freaky it breaks :t ? 21:06:05 :t (,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,) 21:06:06 a -> b -> c -> d -> e -> f -> g -> h -> i -> j -> k -> l -> m -> n -> o -> p -> q -> r -> s -> t -> u -> v -> w -> x -> y -> z -> t28 -> t29 -> t30 -> t31 -> t32 -> t33 -> t34 -> t35 -> t36 -> t37 -> 21:06:06 t38 -> t39 -> t40 -> t41 -> t42 -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z, t28, t29, t30, t31, t32, t33, t34, t35, t36, t37, t38, t39, t40, t41, t42) 21:06:08 I remember a type like that. 21:06:13 :t (,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,) 21:06:13 A 77-tuple is too large for GHC 21:06:14 (max size is 62) 21:06:14 Workaround: use nested tuples or define a data type 21:06:17 :'( 21:06:24 62, really? 21:06:31 the perfect number, imo. 21:06:46 I don't know why it's 62 21:07:52 It’s a nice number in base-63. 21:07:53 the tuple types are defined explicitly in a module, istr a comment that something broke if they tried to expand it one step more. 21:09:03 long long long is too long for gcc 21:11:09 sounds weird that a tuple breaks at that size but a data type of the same size is supposed to be ok (according to the error message's workaround) 21:11:47 grmbl changing Data-Tuple to GHC-Tuple in the platform doc url doesn't lead to the source 21:12:50 oerjan: that's becuase it's in ghc-prim hth 21:14:01 shachaf: that's really no excuse for making it hard to find the real source of something 21:14:05 oerjan: https://github.com/ghc/packages-ghc-prim/blob/master/GHC/Tuple.hs hth 21:14:12 {- Manuel says: Including one more declaration gives a segmentation fault. 21:15:17 that sounds like what i recall 21:15:22 From now on, all comments i add to any code will begin with “ion says:” 21:15:26 why does it say it's "Experimental" 21:15:39 tuples aren't ready for the prime time, Bike 21:15:58 ion: I'll make my comments "shachaf says: ... hth" 21:16:04 i mean it says copyriht 2001 and then that it's experimental 21:16:15 Bike: presumably that you cannot rely on the API not changing at any time? 21:16:19 ion: that only works for simon 21:16:20 it's a long-running experiment 21:16:31 wow this s some really awesome code 21:17:09 augur: but, but... please *kitten-like eyes with glitter and sparkles and tears* 21:17:12 shachaf: ...now i'm imaging ghc source full of "simon says:" 21:17:24 *imagining 21:17:34 -!- constant has changed nick to variable. 21:17:37 oerjan: then i have succeeded hth 21:17:54 oerjan: but the api is just, like. tuples 21:18:00 boily: who are you even :| 21:18:13 > length "(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,," 21:18:14 100 21:18:20 augur: some random canadian, with a small collectiön of coördinates and weighs. 21:18:38 he's trying to stalk everyone :< 21:18:39 You accidentally the ẗ 21:18:42 boily: https://www.ncbi.nlm.nih.gov/m/pubmed/18249218/?i=6&from=/18271693/related 21:18:47 oh, wait 21:18:58 boily: just look at the 21:19:03 <boily> ion: I usually ¨ the #̈. 21:19:04 <shachaf> imo relevant to this channel 21:19:16 <boily> shachaf: heresy. 21:19:20 <Bike> i considered bringing up lipid polymorphism here yesterday 21:19:22 <Bike> but then i didn't 21:19:28 <shachaf> <title>RGS2 C1114G polymorphism and body weigh - PubMed Mobile 21:19:33 oh! 21:19:37 the . 21:21:06 <ion> Real Fast Nora’s RGS2 C1114G polymorphism and body weight gain download 21:21:34 <boily> Fiora: and no, I'm not a stalker. even if my SO says so, I'm not a stalker. 21:21:41 <Fiora> <.< 21:22:39 <shachaf> ion: s/t gain// hth 21:22:53 <ion> shachaf: thanks hand 21:26:14 <shachaf> boily: What's *my* body weigh? 21:26:38 <ion> yo momma so fat they had to adjust G for her 21:27:51 <boily> shachaf: I still have no entry for you rebarbative rapscallion. 21:28:50 <Bike> Fiora: http://en.wikipedia.org/wiki/File:Phospholipids_aqueous_solution_structures.svg btw amphiphily 21:29:10 <boily> ~duck amphiphily 21:29:10 <metasepia> --- No relevant information 21:29:51 <Bike> ~duck amphiphile 21:29:51 <metasepia> Amphiphile (from the Greek ƹ, amphis: both and ƹ, philia: love, friendship) is a term describing a chemical compound possessing both hydrophilic (water-loving, polar) and lipophilic (fat-loving) properties. 21:30:34 <ion> I thought the Greek alphabet looked slightly different. 21:31:08 <boily> ion: you didn't see nothing unusual there. it's only an optical illusion caused by disturbances in the ionosphere. 21:31:30 * boily does hypnotic handwaves towards ion 21:32:28 <Bike> ~duck amphiphile 21:32:29 <metasepia> Amphiphile (from the Greek ƹ, amphis: both and ƹ, philia: love, friendship) is a term describing a chemical compound possessing both hydrophilic (water-loving, polar) and lipophilic (fat-loving) properties. 21:32:44 <Bike> weird lookin reekg 21:36:09 <boily> the reekg is fine, I say! 21:37:06 <oerjan> Bike: i smell double utf-8 encoding 21:39:26 <oerjan> `run echo ±¼Æ¹Â | iconv -f utf-8 -t latin1 21:39:28 <HackEgo> ​ƹ 21:39:31 <oerjan> eek 21:40:18 -!- |_ has quit (Remote host closed the connection). 21:40:42 <oerjan> or maybe not. 21:41:51 <oerjan> `run echo ±¼Æ¹Â | iconv -f utf-8 -t latin1 | iconv -f latin7 -t utf-8 21:41:53 <HackEgo> ​±¼Ę¹Ā 21:41:57 <boily> it's like a monad. you can return, you can join, but you can't get away from it. 21:42:01 <oerjan> ff 21:42:11 <nortti> still remember draLinux? I actually did it http://norttimc.dy.fi/~nortti/dralinux/ 21:42:17 -!- |_ has joined. 21:42:43 <oerjan> `ord ±¼Æ¹Â 21:42:45 <HackEgo> 177 188 198 185 194 21:43:10 <oerjan> ^ord ±¼Æ¹Â 21:43:10 <fungot> 194 177 194 188 195 134 194 185 195 130 21:43:25 <boily> sounds like an iso-8859-some-random-number problem. 21:43:33 <elliott> is norttimc like kmc 21:43:41 <boily> ~eval map ord "±¼Æ¹Â" 21:43:43 <metasepia> Error (1): 21:43:44 <boily> ~eval map ord "±¼Æ¹Â" 21:43:46 <metasepia> [177,188,198,185,194] 21:43:51 <elliott> also is this website hosted on your dumpster computer. is that why it isn't loading 21:44:36 <nortti> it is 21:44:40 <oerjan> funny thing, 177 is ± in latin7 as well... 21:45:17 <nortti> also, it should load, just slowly 21:45:20 <oerjan> `ord α 21:45:22 <HackEgo> 945 21:45:30 <oerjan> ^ord α 21:45:30 <fungot> 206 177 21:45:34 <oerjan> aha! 21:45:48 <boily> `ord ハ 21:45:49 <HackEgo> 12495 21:45:55 <boily> `ord 八 21:45:57 <HackEgo> 20843 21:46:17 <elliott> it loaded 21:46:22 <elliott> the miracle of dumpster computers 21:46:44 <oerjan> ^chr 206 21:46:44 <fungot> 21:47:04 <oerjan> `run echo α¼Æ¹Â | iconv -f utf-8 -t latin1 21:47:05 <HackEgo> ​αƹ 21:47:11 <oerjan> ...nope. 21:48:05 <nortti> actually, most of the problem is caused by the shit router/modem/wifi access point/firewall 21:48:23 <olsner> `run echo α¼Æ¹Â | iconv -f utf-8 -t greek1 21:48:25 <HackEgo> iconv: conversion to `greek1' is not supported \ Try `iconv --help' or `iconv --usage' for more information. 21:49:12 <nortti> 64 bytes from 8.8.8.8: icmp_req=173 ttl=47 time=12193 ms 21:49:25 <oerjan> olsner: latin7 is supposed to be greek, but looking at the wikipedia table the chars don't fit amphi at all 21:49:32 <comex> `uname -a 21:49:33 <HackEgo> Linux umlbox 3.7.0-umlbox #1 Wed Feb 13 23:30:40 UTC 2013 x86_64 GNU/Linux 21:49:43 <oerjan> α 21:49:46 <oerjan> argh 21:49:58 <oerjan> bloody newline-include paste 21:50:03 <oerjan> *ing 21:52:09 <oerjan> `ord αμφις 21:52:10 <HackEgo> 945 956 966 953 962 21:53:28 <oerjan> ^ord αμφις 21:53:28 <fungot> 206 177 206 188 207 134 206 185 207 130 21:53:41 <oerjan> `ord ±¼Æ¹Â 21:53:43 <HackEgo> 177 188 198 185 194 21:54:23 <oerjan> ok whatever encoding it is happens to use the same as what follows 206 in utf-8 when that fits 21:55:40 -!- kallisti has joined. 21:55:40 -!- kallisti has quit (Changing host). 21:55:40 -!- kallisti has joined. 21:56:32 <oerjan> also, the original ~duck is just the first sentence from the wikipedia article. 21:58:15 <oerjan> oh hm maybe... 21:58:54 <oerjan> > [ord c `mod` 256 | c <- "αμφις"] 21:58:55 <lambdabot> [177,188,198,185,194] 21:59:32 <boily> oerjan: well, duck duck go sometimes pick stuff from wikipedia, and that gets forwarded to my delicious bot. 22:00:07 -!- kallisti has quit (Ping timeout: 240 seconds). 22:00:31 <oerjan> boily: i think the problem is with your bot. you are not giving utf-8 output but instead printing unicode characters modulo 256. 22:00:47 <oerjan> *unicode codepoints 22:01:08 <oerjan> which i think used to be the ghc default at one point 22:01:12 <boily> I... uhm... may be having some Char8 problems... 22:01:29 <oerjan> figures. 22:01:33 <boily> it was compiler with 7.4 many myriaseconds ago. 22:01:45 <boily> s/er/ed/ 22:02:28 <oerjan> that should be after the ghc IO change. although Char8 would also do this. i think using Text instead of ByteString.Char8 may be recommended? 22:02:51 <boily> indeed. my imports from ByteString are Char8y. 22:03:03 * oerjan has never done anything sophisticated enough to bother going beyond String himself. 22:03:05 <boily> should have known better... 22:03:40 -!- Taneb has quit (Quit: Leaving). 22:04:34 <oerjan> although there's the problem that irc input is not required to be utf-8 either. 22:06:00 <oerjan> and sometimes people are using latin1 / cp1252 22:06:20 <oerjan> (the latter is somewhat recommended fallback when input is not utf-8 22:06:21 <oerjan> ) 22:06:48 <boily> what do you know, there's a NYer article on the Majestic̈ Diæresis̈: http://www.newyorker.com/online/blogs/culture/2012/04/the-curse-of-the-diaeresis.html 22:07:27 <boily> cp1252 is mean, nasty, and will swap your toothpaste tubes for cherry-flavoured ones. 22:10:45 <oerjan> "She said that once, in the elevator, he told her he was on the verge of changing that style and would be sending out a memo soon. And then he died." 22:13:33 -!- augur has quit (Remote host closed the connection). 22:15:20 <boily> ~duck verge 22:15:20 <metasepia> verge definition: a rod or staff carried as an emblem of authority or symbol of office. 22:16:19 -!- boily has quit (Quit: Keëper of the Authöritarian Stäff of the Endlëss Diæ̈resis). 22:16:30 -!- metasepia has quit (Remote host closed the connection). 22:17:49 <oerjan> i think boily messed up the last one hth 22:18:31 <ion> in what way? hand 22:23:03 <olsner> messed it all the way up from hand to hand 22:24:00 <olsner> fungot: in what way hand ? 22:24:00 <fungot> olsner: they say that naturally a wand of polymorph. 22:25:58 <oerjan> @tell Bike sssssss... = ss(ss)sss... = ss(sss)ss... = ss(ssss)s... = ss(sssss)... something tells me this doesn't converge. 22:25:58 <lambdabot> Consider it noted. 22:26:46 <oerjan> ion: clearly he didn't mean to use "Diæ̈resis" hth 22:26:56 <elliott> oerjan: ssssss... = ss(sssssss...)? 22:28:49 <ion> oerjan: True, he should have used æ̷̈ 22:28:59 <oerjan> elliott: now describe the topology in which that converges twh 22:29:34 <oerjan> `ord æ̷̈ 22:29:36 <HackEgo> 230 776 823 22:29:37 <elliott> oerjan: no, clearly we just need to figure out a fixed point of SS :) 22:29:53 <oerjan> `ord æ̈ 22:29:54 <HackEgo> 230 776 22:30:26 <oerjan> elliott: eek 22:31:50 <elliott> SSy = \z. Sz(yz) = \z a. Sz(yz)a = \z a. za(yza) 22:32:14 <elliott> so need an x such that x = \y z. yz(xyz) 22:35:13 <shachaf> That sounds like one of Smullyan's puzzles. 22:35:43 <elliott> that is, \y z. xyz = \y z. yz(xyz) 22:35:50 <elliott> that is, xyz = yz(xyz) for all y and z 22:36:17 <elliott> that looks easy enough to do with a fixed point combinator. 22:36:50 <elliott> x_solution = fix (\r y z -> y z r) 22:36:51 <shachaf> ...I just lost my Chromium tabs... 22:37:13 <shachaf> You know how it crashes and you get that button to Restore your old session? 22:37:38 <fizzie> Should've used a Mozilla product hth 22:38:29 <shachaf> Mozilla products seem to handle it worse in my experience. 22:39:34 <shachaf> This was two windows full of tabs which I have no idea how to find again. 22:39:36 <kmc> Servo handles this much better imo 22:39:37 <shachaf> Is it just lost? 22:39:52 <kmc> 1) no tabs 2) often crashes before you get the chance to create state that would be lost 22:40:12 <kmc> 3) always crashes on exit 22:40:26 <ion> shachaf: Look at your latest backup. 22:41:11 <elliott> kmc: (1) sounds good for my browsing habits 22:41:30 <ion> (I have sometimes restored Firefox session.js or whatsitsname from my backups.) 22:46:48 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com). 22:49:48 -!- nooodl has quit (Quit: Ik ga weg). 23:00:32 <kmc> error: cannot infer an appropriate lifetime due to conflicting requirements 23:00:42 <kmc> that's fairly poëtic as compiler errors go 23:02:38 <shachaf> kmc: are lifetimes ever uninferrable? 23:02:59 <kmc> apparently 23:03:01 <Fiora> that almost sounds like an ~ATH error 23:03:13 <kmc> but yeah there are lots of places where you're expected to write explicit lifetime variables 23:03:15 -!- ineiros has quit (Remote host closed the connection). 23:03:21 <kmc> what`s ~ATH? 23:03:30 <Fiora> http://mspaintadventures.wikia.com/wiki/~ATH 23:03:39 <Fiora> it's an esolang 23:04:49 <Fiora> built around performing actions based on lifetimes of objects :3 23:05:51 <kmc> i.... 23:06:37 <kmc> ......................... 23:10:20 <Fiora> did did I do something wrong 23:19:58 <Fiora> kmc 23:21:40 <elliott> I think he's dead. rip. 23:21:46 <shachaf> rip 23:22:10 <shachaf> Fiora: (p. sure you didn't do anything wrong) 23:22:57 <ion> rip / hand depending on the what the “death” wave function collapses to. 23:23:24 <Fiora> .__. 23:23:27 <Fiora> but I liked him 23:23:31 -!- nooodl^ has joined. 23:23:44 -!- ChanServ has set channel mode: -v kmc. 23:23:55 <elliott> his + is gone ;_; 23:24:07 <shachaf> unhand me, gentlemen 23:24:39 * ion unhands shachaf, hth 23:25:44 <Bike> i described servo as something that was seemed real cool todday 23:25:56 * Fiora hugs kmc? 23:26:01 <Bike> also "i'd use it if it wasn't basically a pile of rocks right now", you can put that on the back 23:26:05 <shachaf> Bike: did you know the axiom of choice is equivalent to "every surjective function has a right inverse" 23:26:20 <Bike> oerjan: sure if you're a coward 23:26:32 <shachaf> help 23:26:42 <shachaf> oh 23:26:43 -!- doesthiswork has joined. 23:26:44 <elliott> shachaf: http://r6.ca/blog/20050604T143800Z.html 23:27:21 <Bike> shachaf: makes sense 23:27:32 <shachaf> elliott: i like the data: url 23:28:09 -!- Sgeo has joined. 23:28:10 <ion> We could replace all URLs with data: ones and soon we wouldn’t need web servers at all anymore! 23:28:42 -!- conehead has joined. 23:29:43 <shachaf> elliott: he should fix his font imo. it's impossible to see the colons 23:30:03 <ion> My font displays them just fine. 23:30:47 <shachaf> anyway, hm 23:31:43 <ion> I like the mailto:%72%2e%6f%63%6f%6e%6e%6f%72%40%63%73%2e%72%75%2e%6e%6c, because no spammer spider would ever be able to decode that. 23:31:48 <shachaf> elliott: the link at the bottom is broken :'( 23:32:11 <kmc> not dead 23:32:21 <kmc> status: not dead, not drinking scotch out of a MongoDB mug 23:32:30 <ion> i.e. drugz 23:32:34 <kmc> I was just stupified by ~ATH 23:32:36 <kmc> in a good way 23:32:44 -!- ChanServ has set channel mode: +v kmc. 23:33:01 <elliott> my official ruling is that Fiora killed kmc but MongoDB scotch revived him 23:33:37 <ion> elliott: I’m p. sure drugz were also related to the case. hth, hand 23:33:41 <kmc> i said *not* 23:34:23 <elliott> being not dead doesn't imply you never were dead 23:34:39 <shachaf> imo hugz kmc to life 23:35:07 <Bike> check_this_shit_out 23:35:20 <shachaf> kmc: next time you die call me and i can hugz you back to life hth 23:37:51 <shachaf> is "simplicial complex" really a thing :'( 23:38:01 <Fiora> kmc: you liked it...? 23:38:31 <Bike> isn't it "simplicial" like a simplex 23:39:13 <shachaf> yes 23:39:56 <kmc> i found it confusing in a pleasing way 23:40:07 <kmc> like this channel but more so 23:40:56 <elliott> `addquote <+kmc> i found it confusing in a pleasing way <+kmc> like this channel but more so 23:41:00 <HackEgo> 1083) <+kmc> i found it confusing in a pleasing way <+kmc> like this channel but more so 23:43:53 <Fiora> kmc: http://mspaintadventures.wikia.com/wiki/Programming_languages okay, have more punny programming language names then 23:44:09 <Fiora> DIS* (disaster risk / dis asterisk) 23:44:15 <Fiora> ^CAKE (terrible) 23:48:36 <Bike> http://blog.chembark.com/2013/08/06/a-disturbing-note-in-a-recent-si-file/ "whoops" 23:50:10 <ion> nice 23:50:16 <Fiora> #overlyhonestmethods? <.< 23:50:40 <yorick> ah, that reminds me of my high school years :D 23:51:06 -!- iamfishhead has quit (Ping timeout: 264 seconds). 23:52:15 <Bike> #overlyhonestcompletefraud 23:52:48 <kmc> https://github.com/mozilla/rust/blob/master/src/libstd/hashmap.rs#L768-L770 ꙮ_ꙮ 23:53:16 <oerjan> <Bike> oerjan: sure if you're a coward <-- wat 23:53:50 <Bike> «She claimed that a company named “Duha Chemisches Katalyse-Labor” (a.k.a. “Duha”) successfully reproduced her work. An official at the company named Ralf Decter sent Columbia an electronic message to verify Sezen’s claim. The problem…the IP address of the computer that sent the message traced to the University of Heidelberg (where Sezen was studying in 2006)» reading about fraud is great 23:54:07 <shachaf> oerjan: is it a thing about ss(ssss......ssss)sss? 23:55:09 <kmc> madrigal electromotive 23:57:35 <Bike> "Sezen claimed that purchase requisitions did not exist for many of her combustion analyses because she obtained them in free trials." 23:57:45 <shachaf> λ> (unsafeCoerce (-5 :: Int8) :: Word8) 23:57:45 <shachaf> -5 23:57:50 <shachaf> That wasn't what I'd hoped for. 23:58:39 <kmc> :O 23:58:46 <elliott> wow, what 23:58:46 <yorick> shachaf: what were you expecting? 23:59:36 <shachaf> Maybe 251? 23:59:50 <yorick> words are unsigned?