00:04:00 Is coppro even on yet? It seem, that coppro is the only one who even understands what things I am trying to have help with, this programming stuff, etc 00:04:17 I am always around 00:05:14 coppro is secretly a brain in a jar. actually _two_ brains in a jar, alternating on sleeping. 00:05:21 OK. I was wondering about stuff such as timezone and so on 00:05:32 But now I checked so that is OK. 00:05:35 or possibly just one dolphin brain 00:06:51 coppro: It is this: https://devlabs.linuxassist.net/projects/texnicard/wiki/Dangelo_Programming_Language I have fixed some things and added more examples, in case that will help you to understand better what kind of things I mean. If you want more, ask more. Because, now is not too late in my timezone, last time it was late and I would sleep 00:07:49 -!- azaq231 has joined. 00:08:33 -!- azaq23 has quit (Ping timeout: 240 seconds). 00:10:00 oerjan: why do we need to sleep why cant we just have two brains 00:11:07 elliott: Try. 00:11:22 ok 00:11:24 how 00:11:28 I don't know. 00:11:31 because we are stupid apes and not supreme dolphins 00:11:44 but we can kill the dolphins if you think that helps. 00:12:28 I doubt that would help. 00:12:33 also, sleep is how we get our orders from outside the matrix 00:12:51 I also doubt *that* would help. 00:14:22 coppro: Do you understand anything more about this now? Also tell me if someone else knows better 00:14:37 zzo38: I apologize, I am busy writing a scholarship application 00:14:42 zzo38: I will try to read at some point though 00:15:12 coppro: OK. Sorry, I didn't know that, but now I know. Thank you for telling me. 00:16:14 How long will scholarship application take? 00:22:12 zzo38: I'm not sure 00:22:36 oerjan: help which spam language name do i need to do first 00:23:14 hormel++ 00:24:01 oerjan: help no it has to be one i said i would help 00:26:05 i don't recall which ones you said 00:26:56 somehow hormel++ reminded me of http://alefpp.sourceforge.net/ 00:27:16 looking at the deletion log, there's one pointing itself out: http://esolangs.org/w/index.php?title=Incredibly_fascinating_evaluation_of_shopping_cart_software_package_prepared_by_well-known_soccer_professional_or_a_person_known_as_exact_same_as_that_soccer_player 00:27:33 ah yes 00:27:39 im not sure what that one will be though 00:27:43 it is... 00:27:45 hard to live up to 00:27:46 which was it that elliott moved into userspace 00:28:00 im forget 00:28:13 then it was brutally delted 00:28:22 i dont, remmber 00:28:35 http://esolangs.org/w/index.php?title=Special%3ALog&type=delete&user=&page= 00:28:40 looks like, none, 00:29:19 elliott: you took a local copy of it 00:29:22 or at least, I told you to 00:29:23 User:Ehird/1st year sobriety and no dating 00:29:38 sober and no dating is what happened to me in my first year 00:29:47 as I was too preoccupied with other things to get drunk or go dating 00:29:59 too occupied with sobrietary 00:30:01 (Move log); 16:53 . . Ehird (Talk | contribs) (1st year sobriety and no dating moved to User:Ehird/1st year sobriety and no dating: for my study) 00:30:08 (besides, I dislike the taste of alcohol, which means I rarely have much incentive to drink it) 00:30:24 http://esolangs.org/wiki/Talk:1st_year_sobriety_and_no_dating what study hlep 00:30:35 i sohuld make that language that was like dobela but what it wa in my mind 00:30:37 because i never learned dobela 00:30:49 whats 00:30:51 dobele 00:31:00 thing 00:31:11 asiekierka made it but thend 00:31:13 ewaitn rewrote it 00:31:15 and made it not bad 00:31:18 DOt-Based Esoteric LAnguage 00:31:30 GROSSE GROSSE dobela has hiden state im fix that 00:31:34 GROSSSE 00:31:56 -!- itidus20 has quit (Ping timeout: 255 seconds). 00:31:57 i wonder if 00:31:57 hmm 00:32:10 I wonder if I could do non-determinism if I had wires like and maybe.......... 00:33:41 monqy: do i want wires or no wires 00:33:51 i think wires are more ... interesting?? because that is less like befunge i guess 00:34:27 ais523: if i accidentally reinvent hardware, sorry 00:34:28 what is thsih epl 00:35:04 monqy: lanjuaj 00:35:26 hnelp 00:35:57 i was almos going to type 00:36:03 this is interesting enough to get a real name 00:36:03 but 00:36:04 NO 00:36:07 all my names are spam names now 00:36:07 thsih epl was the third emperor of the wey shlow empire of heinan 00:36:22 ais523: HEY wait 00:36:28 ais523: are there any repeat vandalism pages lately 00:36:32 pages you might be wanting to 00:36:32 lock 00:36:33 perhaps 00:36:40 he was a very heinous emperor 00:37:14 last repeat spam I can recall is the List of ideas/Archive 00:37:24 elliott: I had to protect List of ideas/Archive from even registered users 00:37:27 i cant name al naugaee that 00:37:37 sillys......... 00:38:06 yusuf al naugaee, famous kuwaiti general 00:39:15 ais523: can you nremae list of ideas archive so i can name my language that 00:39:16 :P 00:39:37 his name was because he invented armor made of naugahyde 00:39:45 just call it "Incredibly_fascinating_evaluation_of_shopping_cart_software_package_prepared_by_well-known_soccer_professional_or_a_person_known_as_exact_same_as_that_soccer_player" 00:39:52 I can't rename it because then it would start being scammed again 00:40:52 scammed 00:41:09 um, spamed 00:41:42 ais523: anyway that doensnt even abbreviate well......... 00:41:43 i will scour 00:41:45 the deletion log 00:41:48 sadly naugas went extinct when saddam destroyed the euphrates/tigris delta to punish rebels there 00:42:03 ->@- 00:42:05 ->o- 00:42:07 ->.- 00:42:10 -.>- 00:42:13 -o-> 00:42:13 but there's an american company making a synthetic replacement 00:42:13 | 00:42:13 /´\ 00:42:16 -@- 00:42:17 oh come on 00:42:19 you're all fired 00:42:29 that was an evaluation trace :( 00:43:30 >----@---- 00:43:30 ->---@---- 00:43:30 -->--@---- 00:43:30 --->-@---- 00:43:30 ---->@---- 00:43:31 ---->o---- 00:43:32 ---->.---- 00:43:35 ----.>---- 00:43:37 ----o->--- 00:43:37 | 00:43:38 /`\ 00:43:38 make it a language with syntax based on myndzi's figures 00:43:39 ----@-->-- 00:43:41 ----@--->- 00:43:43 ----@----> 00:43:45 youououre welcome 00:44:46 no............... 00:44:50 oerjan: did you nderstadnd... the above... 00:45:40 looks TM or CAish 00:45:57 CAish, basically 00:46:06 sort of like wireworld maybe?? i don't know wireworld 00:46:08 but um 00:46:11 - is wire 00:46:17 > moves right on wire 00:46:19 Not in scope: `moves'Not in scope: `wire' 00:46:22 when > hits into @, it turns into o 00:46:27 and >s tays still 00:46:30 (same for all other directions) 00:46:37 when > hits o it becomes . in the same manner 00:46:43 The most esoteric programming language is Conway's Game of Life 00:46:43 when > hits into . they swap places 00:46:46 .... 00:46:48 when . isn't hit for a cycle it becomes o 00:46:49 Let's add IO to that 00:46:52 when o isn't hit for a cycle it becomes @ 00:46:53 oerjan: ok 00:47:06 oerjan: so it is... a delay... 00:47:20 but one that takes time to reset.... 00:47:45 phine 00:52:19 oerjan: pine 00:52:22 trees 00:53:30 just spruce it up a bit 00:56:21 spruce willis 00:57:11 ais523: whath appens when two little signals bump into each other, with electronics, 00:57:29 what do you mean by "little signal"? and "bump into each other"? 00:57:34 electronics signals don't work like that 00:58:07 ais523: YES THEY DO 00:58:59 elliott: well, my answer is that I can't tell you because the question is insignificantly meaningful 00:59:04 "they merge" is about the best answer I can give 00:59:08 *insufficiently meaningful 01:00:13 heh, one model I was thinking of offers faster-than-light travel, oops 01:00:38 ???? 01:04:16 -!- evincar has joined. 01:05:18 -!- elliott has quit (Ping timeout: 252 seconds). 01:09:52 -!- cheater__ has joined. 01:13:11 -!- cheater_ has quit (Ping timeout: 250 seconds). 01:43:32 Awful quiet, isn't it? 01:44:20 it was noisier earlier 01:45:35 Dilbert's boss once said something like, it has come to my attention that 40% of sick days are taken on Monday and Friday, this is unacceptable, and so on. Someone else said that is a joke, because 40% is exactly normal. However, I don't think so. I think less than 40% of work days are on Monday and Friday (and I do see why it seems 40% is normal). 01:47:29 *With holidays*, somewhat less than 40%. 01:47:34 But not significantly so. 01:48:23 I have not actually calculated how much less. But it probably depends on where you live. At least in Canada it is less than 40% I think. I don't know what it is in their office. 01:57:17 -!- itidus20 has joined. 01:57:25 -!- elliott has joined. 01:57:49 heh, one model I was thinking of offers faster-than-light travel, oops 01:57:49 ???? 01:57:49 yes 02:01:53 (Deletion log); 20:47 . . Ais523 (Talk | contribs) (deleted "My name is Johny, what the F**K?????": offtopic, probable spam) 02:01:58 ais523: thanks, this is definitely the name of my next esolang 02:02:10 brilliant 02:02:13 that's actually a good esolang name 02:02:46 I like how it comes pre-censored 02:04:10 and how it misspells Johnny 02:04:13 which i only just noticed 02:05:38 can you misspell a name 02:05:42 http://en.wikipedia.org/wiki/Johny 02:06:27 parents bad at speling 02:07:23 An online translator told me the other page is Spanish for "the people are crazy". 02:07:36 I thought it was someone's reaction to reading the wiki. 02:10:20 X-D 02:10:55 elliott: please make a really good esolang at that name, it deserves one 02:11:20 ais523: I think my wire esolang will be cool??? if it is not accidentally derivative 02:11:31 It probably won't be HUGELY AMAZING but it'll be fun 02:11:32 is it any better than WireWorld? 02:11:42 I don't know, I never learned wireworld 02:11:43 is it bad 02:11:58 Mine will probably be a lot less like real-world circuits 02:12:09 it's sub-TC unless you have an infinite program 02:12:10 and a lot more like ... noit o' mnain worb? 02:12:21 i like how i can remember that name perfectly 02:12:25 no, wireworld's something where it makes sense to say "what happens when signals collide?" 02:12:27 it's a CA 02:12:32 I know 02:12:37 oh, I see 02:12:38 But, I mean, it's sort of like circuits 02:12:44 you're doing a NOMW-alike? 02:12:51 I'm not sure, I don't really know nomw either :( 02:12:55 it should be obviously TC though 02:12:57 so I guess not too similar 02:12:57 I like how it comes pre-censored <-- would be nice to discuss it together with brainfuck, just to confuse people 02:13:08 Is circuits a new wire idea, or something that's been incomplete for a while? 02:13:43 MDude: ? 02:14:08 I was jsut wondering since I didn't feel like scrolling up. 02:14:37 "Velocitator" Mr. Burns's archaic name for a car's accelerator pedal. Burns attempts to drive a car for the first time while proclaiming he is sure the owners manual will instruct him as to which lever is the velocitator and which one is the deceleratrix. 02:15:05 Also, there are a few other languages that look like wires. 02:20:35 Make up a text adventure game called "My name is Johny, what the F**K?????" as well. Or, a card game, or newspaper, or restaurant, or whatever 02:21:31 humm 02:22:41 the My name is Johny, what the F**K????? franchise 02:22:47 -!- jcp|other has joined. 02:23:34 ais523: hmm, I think the main thing that will control how my language turns out is whether I have blips or signals 02:23:40 blips along a wire go like 02:23:42 >-- 02:23:43 ->- 02:23:44 --> 02:23:48 but a signal goes 02:23:49 X-- 02:23:50 XX- 02:23:51 XXX 02:23:55 i.e. blips move, signals spread 02:23:57 WireWorld is based on blips 02:24:38 -!- jcp|1 has quit (Ping timeout: 276 seconds). 02:24:50 -!- jcp has quit (Ping timeout: 276 seconds). 02:24:50 ais523: huh, it is? 02:25:35 it's a cellular automaton 02:26:27 make it a pneumatic automaton, based on blimps. 02:26:40 I learned wireworld a few years ago and only remember how the blippy things work. nothing about how to do logic or anything. never made anything interesting with it. :'(. 02:27:20 http://esolangs.org/wiki/Circute [I'm pretty sure this is WireWorld exactly, but with a different name for some reason and also rendered in ASCII.] 02:28:23 WireWorld is pretty nice, but there's an odd bug in it where if a "Diode" gets a signal form both directions at the right moment, it goes crazy and starts spewing noise forever. 02:28:36 ais523: umm, it can be a CA without that 02:28:49 both examples I showed were discrete 02:28:50 I know 02:28:52 it's just 02:28:56 >- ===> -> 02:28:57 vs 02:29:01 X- ==> XX 02:30:09 iirc the way wireworld did it was spark heads spread to adjacent wire cells and turn into spark tails, and spark tails turn into wires, or something like that 02:30:16 yep 02:30:31 --th-- becomes ---th- 02:31:03 that's kind of gross 02:31:13 -!- jcp has joined. 02:31:15 Huh, I guess it would be pretty easy to make a CA in a 2D string rewriting system. 02:31:40 A CA is essentially a 2D rewriting system. :P 02:31:40 That's pretty handy. 02:31:47 humm 02:32:14 I wanna go on record as saying 2d rewriting system 02:32:16 Well yeah, but I've been having trouble trying to define my own CA using other methods. 02:32:30 whew, just finished my first AceHack ascension 02:32:33 and now I want to tell everyone 02:32:43 firefox: "you are about to close 221 tabs" 02:32:54 and it isn't sluggish at all 02:32:59 -!- Nisstyre has quit (Ping timeout: 255 seconds). 02:33:06 foxy 02:33:09 browser 02:33:16 bananan woop chik chik 02:33:20 Is AceHack a game about being fighter pilot? 02:33:26 Yes. 02:33:31 no 02:33:38 who to believe????? 02:33:42 MDude: it's a NetHack variant I develop 02:33:42 ais523: NetHack UI nitpick: The plot isn't about being a fighter pilot. 02:33:45 Po. 02:33:45 MDude, ace pilot stuck in a dungeon of course 02:33:47 Eagerly awaiting fix in AceHack. 02:33:57 Vorpal: Hahaha 02:33:59 Ace Rimmer lost in nethack land? 02:33:59 elliott: that's a bit of a stretch 02:34:04 itidus20, why not! 02:34:08 ais523: Just add "Also you're a fighter pilot." to the end of the game-opening message 02:34:11 Problem solved 02:34:15 Smoke me a kipper 02:34:24 elliott: you can do that yourself, that message is trivially easy to patch 02:34:40 ais523: I thought the point of AceHack was to have all the patches so that I didn't have to 02:34:52 elliott, better mod the classes, So you are a "fighter pilot and knight" 02:35:00 or whatever 02:35:16 elliott: no, it only has the /good/ classes 02:35:16 fighter pilot and caveman 02:35:21 */good/ patches 02:35:28 you are the egotistical persona of an hologrammatical astronaut 02:35:30 elliott: no, it only has the /good/ classes 02:35:30 fighter pilot and caveman 02:35:30 good 02:35:40 ais523, what about adding pliot as a cast? 02:35:49 ais523, could make an interesting quest 02:36:28 Omg you have to go around that plane that's just air and shit IN A PLANE 02:36:31 BEST 02:36:47 best 02:37:14 elliott, hm quest artefact? A famous plane? flight googles? 02:37:42 Vorpal: "flight googles" 02:37:47 i dont actually follow red dwarf but i've seen the odd ep 02:37:48 good google 02:37:50 elliott, idea, just add planes as a special cased pet XD 02:37:57 elliott, oops :P 02:38:15 i would play nethack as a pilot every time 02:38:16 since you can ride horses and so on 02:38:22 do the horses fly though 02:38:32 you can ride dragons, they fly 02:38:39 yeah 02:38:42 and ki-rins, which are like flying horses 02:39:05 so the difference would be that a plane remains tame all the time, also doesn't pick up things in shops for you 02:39:07 nethack has rideable dragons? thats amazng it is 02:39:26 itidus20, I only ever managed that in wiz mode 02:39:28 ais523: hmm, can you use those on that one (astral) plane? 02:39:30 they're kind-of slow 02:39:37 Vorpal: also, I like the idea of planes becoming un-tame 02:39:41 a wild plane 02:39:41 elliott: yes, you can ride on Astral, but it's a pain keeping your steed alive 02:39:45 you have to feed it to tame it 02:39:51 elliott, uh... I guess they wouldn't move on their own 02:39:57 and might need fuel 02:39:57 ais523: grr, I mean that one plane 02:39:59 the one that's just clouds 02:40:11 elliott, air 02:40:43 elliott, ais523: go implement this now! 02:41:02 Vorpal: no! 02:41:13 ais523, why not, doesn't it sound awesome!? 02:41:17 no 02:41:38 ais523, why not. There is tourist. How are the tourists supposed to travel if not by plane! 02:41:50 he makes a good point (a terrible point but a good one) 02:42:06 (yes I do see the flaws in that logic) 02:42:12 Would it be easier to jsut add a card game at the end? 02:42:20 MDude, of nethack? why 02:43:06 ais523, btw I think you should be able to run around floating eyes to kill them. (Note: only makes sense if you played Mario64 I think) 02:48:15 Crap, now I have to play that again. 02:48:32 I wonder how quickly I can beat it... 02:50:41 -!- invariable has changed nick to variable. 02:50:55 Vorpal: I have played Mario 64 (well, the DS port) 02:50:57 so I know what you mean 02:51:09 evincar, XD 02:51:30 ais523, as far as I remember they added quite a lot of stuff to the DS port 02:51:34 compared to the original 02:51:40 like not playing mario all the time 02:51:48 yes 02:51:49 never played the DS port 02:51:55 I know the basic differences from the DS version and the original 02:53:57 I had an N64 twice. The first one my brother gave it away to impress a girl. The second one I traded it in towards an xbox360. The second one had mario64 and zelda:oot. 02:54:22 I later traded the xbox360 back in out of fear of RROD and various reasons. 02:58:38 hmm... 02:58:46 I think I like blips more than signals 02:58:48 -!- CakeProphet has joined. 02:58:48 -!- CakeProphet has quit (Changing host). 02:58:48 -!- CakeProphet has joined. 02:58:55 because you need a way to turn signals off 02:59:03 which means having some sort of signal-eater block that eats up a signal as it goes along a wire 02:59:05 which is... weird? 02:59:17 with blips you have the possibility of fun things like duplicators and the like 02:59:24 and it's sort of more like an IP 02:59:30 -!- mickayz has joined. 02:59:57 -!- mickayz has left. 02:59:58 Agreed, blips are cleaner. 03:01:05 ais523: I think the other major choice is whether to have nondeterminism 03:02:42 hmm, which I guess is more a question of are blips directional 03:04:13 ASCII really needs corners 03:04:34 If they are, it offers the possibility of sending information bidirectionally along wires. 03:04:52 evincar: oh, hmm, I don't think blips can be non-directional while avoiding hidden state 03:05:00 So portions of the program can be implemented in terms of the reverse of other portions. 03:05:33 Right, reversability is good evidence for purity. :P 03:05:51 -!- BeholdMyGlory has quit (Remote host closed the connection). 03:07:56 ugh, that's annoying though, because directional blips don't really let me justify this cool nondeterminism feature 03:08:25 elliott: alright lets think 03:08:43 wut 03:08:45 what is a nondeterministic language good for? 03:09:01 or a nondeterministic feature 03:09:14 itidus20: http://en.wikipedia.org/wiki/Nondeterministic_finite_state_machine 03:09:17 surely it is more wide in scope than simply rand() :D 03:09:29 -!- azaq231 has quit (Ping timeout: 276 seconds). 03:09:55 Long story short, NFAs are typically more concise and intuitive than DFAs. 03:10:41 evincar: um that is obviously not the kind of nondeterminism i mean 03:11:02 welllllllllllll 03:11:08 yeah it isn't 03:11:19 I basically just mean something similar to Befunge's ? 03:11:31 (reading over that page) regarding philosophical determinism debates i have argued before that a non-determinist could emulate a determinist 03:11:39 elliott: I wasn't claiming anything about yours. I was just offering an example of what nondeterminism is good for. 03:12:19 evincar: well, that's not the same kind of nondeterminism 03:13:22 i think that the determinists can be shown to be possibly non-determinists wearing masks, and non-determinists might possibly be determinists wearing masks but i forget how i arrived at the latter conclusion 03:14:05 elliott: Naturally. This is, after all, #esoteric. 03:14:19 humm 03:14:24 -!- lament has joined. 03:15:04 didn't fourier's fast transform not find any good uses until after his death? 03:16:00 ah ---- i should not make such claims without backup 03:17:03 elliott: I think we assume that we want determinism most of the time... but take it away and we might come to not depend on it 03:17:18 -!- copumpkin has quit (Ping timeout: 252 seconds). 03:17:43 -!- copumpkin has joined. 03:19:19 Gregor, elliott http://www.mspaintadventures.com/?s=ryanquest 03:19:37 Sgeo: Why are you pinging me about this? 03:19:46 itidus20: it wasn't Fourier's fast transform 03:19:50 I'd ask why you're pinging Gregor too but he probably will himself 03:20:04 In other news, cure for cancer. 03:20:15 I pinged Gregor because I'm under the vague impression that he's interested in Dinosaur Comics 03:21:08 My brain just broke trying to avoid breaking what I'm assuming is a joke 03:21:31 Sgeo: have you considered become a rapper? 03:22:03 your rhymes would be quite dapper 03:22:08 -!- azaq23 has joined. 03:22:17 Sgeo: What joke? 03:22:28 In other news, cure for cancer. 03:22:35 Unless pikhq's being serious 03:22:41 >_> 03:22:43 Entirely serious. 03:22:50 think about it a little.. 03:22:56 Sgeo is answering questions non-linearly, and pikhq would believe a pop science magazine. 03:23:05 let's say there was a cure for cancer. 03:23:16 chances are millions of people would already know about it and be talking about. 03:23:22 pikhq: this is unusually stupid for you 03:23:22 it would be huge news. 03:23:39 CakeProphet: You realise that reddit, etc. claim there are cures for cancer like every other week? 03:24:03 Then the top comment is someone thoroughly refuting it as an actual method for curing cancer because reddit's scoring makes no fucking sense. 03:24:25 reddit doesn't count as information. 03:24:33 but no, I did not realize that. 03:24:33 Cure for _a_ cancer I would believe 03:24:47 I wouldn't 03:24:54 * elliott sits here and waits for pikhq to respond. 03:25:05 Genetic modification of T-cells taken from 3 patients were targetted to antigens unique to the cancer cells, and reinjected into the patient. All cancer cells were killed by the T-cells. 03:25:05 I would believe a cure for cancer... if it were actually a cure for cancer. 03:25:18 The scheme is believed to be repeatable on other forms of cancer, but was only tested on leukemia. 03:25:24 Further trials pending. 03:25:33 In fact, I'd believe cure for a specific cancer much less than I'd believe of a cure for all cancer 03:25:37 pikhq, believed to be repeatable on _all_ other forms of cancer, or many other forms? 03:25:39 pikhq: that is pretty fucking awesome 03:25:43 Sgeo: All. 03:25:46 So: promising research in the topic of cancer. 03:25:51 Not "cure for cancer". 03:25:55 Sgeo: X cancer is just cancer that happens to be in X 03:26:04 Sgeo: Fundamentally they are all the same disease 03:26:10 coppro: Not strictly true, I thought. 03:26:13 evincar: So I exaggerate slightly. 03:26:15 pikhq: OK, now I'll wait for this to get on reddit and for someone to reply "I'm an expert and this is promising but doens't actually mean anything/isn't new because [..............]". 03:26:17 evincar: but then what will pop science news sources use for a headline? 03:26:19 pikhq, interesting, but 3 patients? Need larger scale tests. And tests on different cancers. 03:26:19 Or maybe IT 03:26:19 ALREADY 03:26:20 HAS 03:26:30 Vorpal: Hence why trials are pending. 03:26:43 s/trials/further trials/ 03:26:49 pikhq: we also have a theoretical cure for retroviruses from 10 years ago that no one ever got to work at a medical scale 03:27:06 coppro, what cure is that? 03:27:14 Vorpal: death 03:27:23 Vorpal: cellular injection of single-stranded RNA that matches the virus' DNA 03:27:26 coppro: This one has at least worked on human patients. 03:27:26 So, is it just me, or is "pharmaceutical company" an oxymoron? 03:27:30 coppro, ah 03:27:32 evincar: no 03:27:52 Vorpal: The cellrejects the double-stranded retrovirus RNA because of the presence of the single-stranded version 03:27:55 coppro, yeah I can see getting that to work for anything but single cells might be a bit of an issue 03:27:58 Aren't business concerns and research costs at odds with, y'know, providing people with abundant, cheap medication? 03:28:10 coppro, can't think of how to inject it into cells 03:28:13 cheap meditation 03:28:13 Socialised medicine seems to make the most sense. 03:28:16 Vorpal: a different virus 03:28:19 or something 03:28:21 coppro, ah 03:28:23 retroviral therapy can be done 03:28:25 evincar: do you know what an oxymoron is 03:28:26 and has 03:28:40 evincar: not for something of this scope 03:28:42 coppro, what is the catch then 03:28:45 elliott: A contradiction in terms. 03:28:58 evincar: the words "pharmaceutical" and "company" do not contradict 03:29:13 I think what you're trying to say is "pharmaceutical companies are bad" 03:29:14 -!- invariable has joined. 03:29:19 elliott: But the notions of providing pharmaceuticals and being a company do. :P 03:29:20 evincar: if there was actual significant likelihood that this procedure would be a high-success cure for cancer, governments can and will just legislate their way past th eproblem 03:29:25 It's a meta-oxymoron, then. 03:29:35 I believe plenty of companies provide pharmaceuticals? 03:29:37 Or semanto-oxymoron. 03:29:42 what 03:29:43 i 03:29:49 how 03:29:53 hlep 03:30:07 coppro, what is the catch then with the retrovirus thingy 03:30:29 Vorpal: you have to do it before you find out (that's the retro part) 03:30:36 elliott, ... 03:31:08 elliott, leave the puns to oerjan next time 03:31:10 Vorpal: a) retroviral therapy is very difficult to pull off in a safe manner; the need to get single-stranded RNA involved would make it much more complex since the virus would basically need to be custom-made and we lack that technology 03:31:22 Vorpal: or maybe die >:( 03:31:32 Vorpal: b) it is a defense easily mutated against 03:31:48 the recent development of blocking /all/ dsRNA is very interesting though 03:32:04 coppro, doesn't the body use that? 03:32:08 normally I mean 03:32:10 Vorpal: No. 03:32:16 Vorpal: dsRNA gets copied into the DNA 03:32:20 Vorpal: No. Double-stranded RNA is only used by virus reproduction. 03:32:27 coppro, will be mutated against in the future probably 03:32:31 all RNA in the body naturally is single-stranded 03:32:36 -!- variable has quit (Quit: I found 1 in /dev/zero). 03:32:43 Vorpal: No; double-strandedness is fundamental to the mechanics of retroviruses 03:32:50 hm 03:33:30 err wait 03:33:37 apparently I am confusing my viruses here 03:33:56 retroviruses use single-stranded RNA apparently and supply enzymes to do the copying with; dsRNA is a different class of virus 03:34:39 still, dsRNA is not naturally occurring in the body 03:34:42 coppro, so won't kill off HIV and so on then 03:34:57 Vorpal: yeah. Still would hit a vast swath of viruses 03:36:05 im a viras 03:36:47 btw ribosomes are probably the most ridiculous human structure 03:36:55 (or any other cell really) 03:37:46 It is now possible to give classes equality superclasses, i.e. you can write something like class (F a ~ b) => C a b where { ... }. See Section 7.7.2.3, “Equality constraints” for more details. 03:37:47 yeSSsssSSSSSSSSSSssssss 03:37:47 -!- invariable has changed nick to variable. 03:38:46 elliott: what. 03:38:54 actually just RNA in general is fucking amazing 03:39:09 coppro: ghc 03:39:14 elliott: link 03:39:14 new release 03:39:17 http://www.haskell.org/ghc/docs/7.2.1/html/users_guide/release-7-2-1.html 03:39:23 you don't need DNA or proteins if you have RNA 03:39:26 The new DefaultSignatures extension allows you to define a default implementation for a class method that isn't as general as the method's type. For example, 03:39:26 OMG 03:39:30 finally 03:39:31 DNA and proteins are just more durable 03:40:21 oerjan: fnininlaly 03:40:28 -!- evincar has changed nick to evincar-in-the-s. 03:40:42 -!- evincar-in-the-s has changed nick to evincar-away. 03:40:45 Sigh. 03:40:57 The "evil mangler" has been removed, and registerised compilation via C is no longer supported. This means that the -fvia-c, -fvia-C, -keep-raw-s-file, -keep-raw-s-files, -pgmm, -optm, -monly-2-regs, -monly-3-regs and -monly-4-regs flags are now deprecated, and have no effect. The -fasm-mangling and -fno-asm-mangling flags have been removed. 03:40:57 ah 03:41:04 monqy: time for wake 03:41:08 hi 03:41:17 Vorpal: yeah. Still would hit a vast swath of viruses <-- indeed, meaning the other viruses would take over. 03:41:22 what swake hapl 03:41:23 monqy: it's wake 03:41:35 btw ribosomes are probably the most ridiculous human structure <-- yep 03:41:36 http://en.wikipedia.org/wiki/Wake_(ceremony).... 03:42:08 oh 03:42:13 Oh, there's *plenty* of utterly ridiculous human structures. 03:42:13 im bad at words 03:42:37 ok wake for evil mangler and rest of -fvia-C 03:42:39 g 03:42:39 Especially if we look at vestigial structures. 03:42:40 go 03:42:59 pikhq, name one more ridiculous than ribosomes 03:43:15 I mean ridiculous as in crazy 03:43:19 not ridiculous as in useless 03:43:24 indeed 03:44:31 * elliott reads about the new generics stuff 03:44:49 Recurrent laryngeal nerve. Especially ridiculous in giraffes. 03:45:19 It's a nerve that goes all the way down from the neck, down around the aorta, and back *up* to the larynx. 03:45:47 pikhq: that is ridiculous; not the same kind of ridiculous though 03:46:18 ribosomes are assembled from proteins and RNA; the assembly is the coordinated effort of hundreds of proteins to assemble components made in three different parts of the cell 03:46:22 It does so in all the quadrapeds. Well, technically all vertabrates, but that's actually the shortest path in fish. 03:47:28 Erm. Tetrapods? 03:47:56 pettatods 03:48:01 the genome also has more than 200 redundant copies of the sequences for ribosomes 03:48:27 Well, why not? It has redundant copies of so many things. 03:49:02 half a million ribosomal proteins are transported into the nucleus each minute 03:54:45 oh also self-splicing introns are ridiculous 03:55:10 they're sequences of DNA that take up the middle of genes for who knows why and just remove themselves when the DNA goes up for transcription 03:55:33 they actually cut themselves out of the mRNA 03:56:19 But remember, we're intelligently designed. 03:57:00 one possibility is that they're actually a very low form of self-reproducing structure; they serve no purpose but manage to get reproduced and inject themselves into other parts of the genome nonetheless 04:03:48 -!- evincar-away has quit (Ping timeout: 258 seconds). 04:05:30 -!- evincar-away has joined. 04:05:35 -!- evincar-away has changed nick to evincar. 04:18:29 hmm 04:18:51 Hmm? 04:19:20 hmm?? 04:19:25 i don't think the generic stuff in ghc does what i want :( 04:19:26 or hmm 04:19:29 oh maybe it does 04:23:57 -!- sebbu has quit (Ping timeout: 264 seconds). 04:34:24 How much of the code from Windows version 1 is still used in the newest version? 04:34:57 zzo38: it's probably impossible to know 04:34:58 I'd be inclined to say "not much". 04:35:04 I'd be surprised if even Microsoft know by now 04:35:14 and they don't have public repos, so you can't tell 04:35:37 Wasn't NT basically a complete rewrite? 04:35:42 Especially what with Win32 having essentially a rewrite of Win16, and NT being a rewrite *really from scratch*. 04:35:53 Yeah, ^ that. 04:36:00 Maybe even Microsoft doesn't know? 04:36:15 NT has more relation with VMS than Windows 1.0. 04:36:55 i really want the windows source code 04:36:57 just 04:36:58 to read 04:37:04 i should get that partial leak sometime 04:37:17 maybe i should get a job at ms and spend my days reading the windows code 04:37:19 I'd be willing to bet that there's tons of comments saying // Work around moronic program X 04:37:25 there are 04:37:33 (I read the highlights-of-the-leak posts) 04:37:55 posts where 04:38:00 internet 04:38:09 Or // We can't remove this internal API because so many stupid applications rely on it. 04:39:27 i think the windows team and the office team would literally go to war if they had the resources 04:39:42 Most likely. 04:39:43 ais523: as our Windows Correspondent, how do you feel about this 04:39:47 Don't even need source to see that. 04:39:55 ok now i can't stop imagining the war of the microsoft teams and it is hilarious 04:40:07 "this is for using private APIs!!!!!" 04:40:16 The Office team seems to *love* reimplementing things. 04:40:21 Swinging USB modems by their cables and hurling them over the cube walls toward unsuspecting victims. 04:40:23 "oh yeah??? well this is for breaking word 98's menu code!!!!!" 04:40:28 When was the last time Office used native widgets? 04:40:30 [throws model m] 04:40:37 it did in 3.1, I think 04:40:48 Shit, the Model M, best fucking keyboard. 04:40:54 that would be, umm Office 4? 04:40:57 the model m is not that good 04:41:08 If you don't like it, I will hit you with it. 04:41:11 And it will still work. 04:41:19 there are more durable keyboards :) 04:41:20 And then I will rearrange the keycaps to Dvorak and back. 04:41:23 still made by ibm though 04:41:25 I just want my keyboards to not have stupid extra buttons, and to be sensibly shaped 04:41:29 the terminal boards are amazing 04:41:38 I think the Model M is not bad. We had it at Free Geek Vancouver for a few weeks and I liked this keyboard 04:41:46 ais523: I was about to go "wtf, we agree" but then I realised my definition of "stupid extra buttons" probably includes more than yours 04:41:55 and doesn't include useful things like volume control 04:42:15 elliott: I'm actually fine with volume control buttons 04:42:22 I use fn-3, fn-4 quite a lot on this keyboard 04:42:31 although I'll just map them to super-something if they aren't there 04:42:40 ah; most people are complaining about media keys when they complain about stupid extra buttons 04:42:41 A super key would be nice for Windows, but I do fine without it on Linux. 04:42:43 (I have some super-mappings for play/pause, skip forwards, skip back) 04:42:49 no, I'm fine with media keys 04:42:53 I'm not sure what they do when they want to change the volume, but it's probably slow 04:42:59 I'm complaining about large separate buttons with random things on them like "home" or "calculator" 04:43:04 and F lock 04:43:04 Yep. 04:43:05 yeah, those are silly 04:43:07 oh wow do I hate F lock 04:43:12 although a home key could be useful if it did the right thing and was in a non-terrible place 04:43:16 And fuck keyboard designers who mess with my editing block. 04:43:18 Media keys are just fine. Most of the other vender addons are terrible. 04:43:19 i'm not sure what the right thing is 04:43:28 And fuck the numpad. 04:43:31 so we all agree with each other? how often does that happen? 04:43:39 ais523: Rarely. 04:43:39 well I don't agree that the editing block is sacred >:) 04:43:43 but close enough 04:43:52 although I bet Vorpal will say that he needs his numpad for playing NetHack 04:43:57 I'm actually slightly annoyed that I have more than one non-shift modifier key 04:44:01 ais523: DON'T PING HIM YOU'LL RUIN EVERYTHING 04:44:03 having a numpad doesn't disturb me, but I don't need one 04:44:03 I just like having insert in a sane location. Delete does not need to be a double-high key. 04:44:06 evincar: he's probably asleep 04:44:08 Delete does need to be there. 04:44:14 *elliott: 04:44:22 ais523: I'm sure his IRC client is set to wake him up 04:44:29 evincar: the editing block is stupid because you have to move your hands to use it 04:44:47 elliott: I use them for browsing read-only things. 04:44:49 elliott: Well, that's why I use emacs. 04:44:55 not on this laptop, the editing block's squidged in with the other keys 04:45:01 although I do C-a C-e quite a lot 04:45:03 hmm, "laptops have nice keyboard layouts" -- this surely can't be a very popular opinion I'm holding 04:45:13 My netbook has a surprisingly nice layout... 04:45:21 ...not nice in the absolute, but tolerable. 04:45:25 this one had to compromise a bit, but it's still pretty tolerable 04:45:25 The keyboard layouts on laptops need to be roomier. 04:45:26 Especially for a 90%-size keyboard. 04:45:28 I kind of want to make @ treat ctrl and alt as identical 04:45:29 I dislike all the extra vendor keys they put on many (not all) keyboards 04:45:34 (in particular, ` and \ are near the spacebar) 04:45:54 my fingers have memorised this keyboard, though, and they're fine with it 04:45:54 Weird. 04:45:56 and, umm, treat left windows key as a "bring up prompt" button (doubles as an application launcher) 04:45:56 The editing block could easily go, though. Numpad's wasted space. 04:45:59 and the right windows key to be compose??? 04:46:01 I'm not sure 04:46:03 Then again, mine's a Lenovo. 04:46:07 I don't like ctrl and alt both existing though 04:46:09 They care about keyboards. 04:46:11 it doesn't make much sense 04:46:20 at least with "standard" style shortcuts 04:46:23 elliott: Ctrl is for controlling things. Alt is for alternate things. 04:46:24 elliott: Maybe you should just have one key in the system such as CTRL and then have a keyboard mapping program, so that it can map ALT to be another CTRL key if the @ system does not use ALT? 04:46:27 treating super and alt as identical would make more sense 04:46:30 evincar: yeaaaaaaaaaah 04:46:38 ais523: well, I could also just make it ignore Ctrl 04:46:43 ais523: since it's in the less ergonomic position 04:46:44 Yeah, try designing a sane interface standards around those vague definitions, right? 04:46:47 because it's much easier to miss one and hit the other, than it is to hit super when you mean ctrl 04:46:53 ais523: (fun fact: Alt and Ctrl were swapped originally) 04:47:01 I don't know who made the more common key, Ctrl, move to the more awkward position 04:47:02 elliott: heh, that would make more sense 04:47:05 but I dislike them for it 04:47:22 Ctrl often used to be where Capslock is, next to A. 04:47:24 OS X has the command key in the place where Ctrl used to be, which is nice 04:47:31 evincar: well, that's more a Sun thing 04:47:34 well, what's alt mainly used for? menu and dialog navigation, right? 04:47:35 I don't think IBM did that 04:47:41 elliott: True. 04:47:47 whereas ctrl is used for controlling tty programs, as well as miscellaneous stuff like copy/paste in GUI programs 04:47:55 haha 04:47:55 evincar: That's only traditional on UNIX systems. 04:47:59 (umm, you are joking, right?) 04:48:13 elliott: who are you laughing at? 04:48:27 ais523: whereas ctrl is used for controlling tty programs, as well as miscellaneous stuff like copy/paste in GUI programs 04:48:39 elliott: GUI users typically don't use ctrl for much 04:48:45 they use the mouse 04:48:57 most people I've seen click on save rather than using control-S 04:49:08 OK, but it's ridiculous to say that using Ctrl to control tty programs is more common than using it for GUI actions 04:49:11 What, do they also not use Alt-Tab? 04:49:13 I didn't say that 04:49:21 Ugh. It bothers me to no end when I see CS or SE students at my college using the mouse to operate menus for editing commands, *whilst programming*. 04:49:22 well, you implied it with the ordering and "miscellaneous stuff" 04:49:22 pikhq: they panic if they have more than one program open at once 04:49:26 and ask me how to get rid of them 04:49:43 I happen to like the very old clunky IBM PC keyboard. It was very well designed. 04:49:46 Wow. 04:49:55 evincar: meh, don't hate the player, hate the game; in this appropriative analogy, the player is the student and the game is WIMP GUIs 04:50:20 But everyone else complains that it is too loud and all that stupid stuff too, and want all these extra keys and mouse and various things 04:50:22 WIMP GUIs do suck, but it's amazing that they apparently suck *more* for the average user. 04:50:34 zzo38: now you've got me imagining a Model M with a touchpad 04:50:36 -!- jcp|1 has joined. 04:50:41 what does "WIMP GUI" mean in this context? 04:50:49 ais523: window, icon, menu, pointer 04:50:53 ah, aha 04:51:00 -!- jcp has quit (Ping timeout: 246 seconds). 04:51:04 I'd seen the abbreviation before but didn't know what it stood for 04:51:08 I really don't know who thinks WIMP UIs are intuitive or easy to learn or anything 04:51:14 probably power users and people who work at Microsoft 04:51:14 I.e., OS wimpmode. 04:51:25 But then again, not really. 04:51:26 they can be pretty effective once you get to know them 04:51:36 heh, I used to use control-shift-B to bold things in Word, for consistency 04:51:36 power users because they're used to them, people who work at Microsoft because kool-aid 04:51:43 because basically all the formatting commands are on control-shift 04:51:47 I was a Windows power user, once 04:52:00 not any more, though, I don't properly understand anything later than about 98 04:52:23 -!- jcp|other has quit (Ping timeout: 276 seconds). 04:52:24 ais523: Thought it was just Ctrl? Also, word processors make me cry. 04:52:32 No sense of typography or layout. 04:52:37 I try to avoid Windows power users, they upset me :( 04:52:41 You can't control anything. 04:52:49 evincar: both control-B and control-shift-B work 04:52:57 evincar: It is why I use TeX now 04:53:00 Word's typography is pretty good nowadays, I think 04:53:01 control-shift- is more consistent with the other commands 04:53:03 since two thousand and seven or so 04:53:17 Using TeX you can control most things if you know how. 04:53:20 evincar: Friggin' HTML's better than WYSIWYG word processors for some things... 04:53:21 elliott: the way Word does styles is stupid, I much prefer the OpenOffice.org/LibreOffice approach 04:53:30 ais523: possibly, I'm just talking purely in terms of typography 04:53:35 most people don't use styles at all 04:53:43 I've even seen people indenting with spaces (in a /word processor/) 04:53:44 and anyone who thinks you "can't control anything" with Word hasn't used it 04:53:52 it has about ten billion formatting options 04:53:55 I still tend to write things in HTML at least, TeX if it needs to be fancy. InDesign isn't bad if you have access to it. 04:54:08 But that's got a slew of other features/problems. 04:54:10 WYSIWYG is stupid in general I think. TeX works much better I think. I prefer TeX rather than HTML. 04:54:23 elliott: Arguably, the problem is that Word has too many formatting options. 04:54:33 Making it incredibly non-obvious how to make it act reasonably. 04:54:36 zzo38: Interactive previews are intuitive. It's making the underlying model clean that's problematic. 04:54:42 Word isn't a good program 04:54:50 but lack of control is not its major flaw :) 04:55:07 evincar: Interactive previews are somewhat different from WYSIWYG. 04:55:44 There's no reason your preview has to literally *be* the output. 04:56:06 I should really rebind my capslock to something useful 04:56:10 umm, /me verifies that he can 04:56:10 pikhq: No, I'm talking about actually interacting with the preview, not displaying a preview "interactively" while you work on some other representation. 04:56:13 oh good, it's done in software 04:56:19 elliott: Ubuntu actually has a menu for caps lock rebinding 04:56:24 ais523: not what I meant 04:56:24 in the advanced keyboard preferences 04:56:29 (the next line explains what I meant if you're psychic) 04:56:34 oh, what did you mean? 04:56:39 evincar: Yes, but the WYSIWYG model is based on that not being a preview. 04:56:42 I sometimes want to set up things with macros and that stuff, and other things, and don't want it to change everything as I am typing, or make a macro and then have to manually enter things even though it is a macro if I have changed the macro. Using TeX, editing the macro will change everything that uses that macro. In Word, editing a macro will not change the things that have already been entered. 04:56:56 It is the view. 04:56:59 pikhq: No, the WYSIWYG model is based on interacting *solely* with a preview. :P 04:56:59 ais523: for a while now, Macs have required caps lock to be pressed for a certain amount of time before it activates; a really, really short amount of time; it's basically meant to avoid accidental presses 04:57:06 evincar: Then it's not a preview! 04:57:07 oh, I see 04:57:11 ais523: I was checking it was done in OS X software, rather than at the keyboard controller level 04:57:17 and you were worried that rebinding capslock would make that happen to whatever it was rebound to 04:57:23 which would impede me rebinding caps lock usefully; probably not much, but it would be enough to stop me mothering 04:57:26 ...bothering 04:57:28 pikhq: Of course it is. It's a preview of what you're going to print. Or what you're going to whatever. 04:57:33 I read somewhere, instead of WYSIWYG another way is YAFIYGI (you asked for it, you got it). 04:57:36 The topic is word processors, after all. 04:57:59 word processors are way too print-focused; after all, paper is obsolete 04:58:01 elliott: Stop your mothering. 04:58:22 If I want to preview the file before printing it, I can use xdvi (on Linux) or Yap (on Windows), etc. 04:58:27 elliott: And, more importantly, bad at being print-focused. 04:58:39 guys I wanted you to argue with me.... 04:58:40 maybe ais523 will 04:59:06 elliott: but Word can corrupt a document because it's opened on a computer with a different model of printer 04:59:09 It'd be one thing if it were *merely* pretending everything's paper, but it's pretending everything's paper and then doing ugly shit with it. 04:59:10 that's way to printer-focused 04:59:13 ais523: wow, really? 04:59:14 Both xdvi and Yap allow zooming in to see the individual dots using the printer's resolution. 04:59:16 Word's line-wrapping algo depends on the printer! 04:59:24 is that corruption thing true? 04:59:28 http://esolangs.org/wiki/Tree [Using L-Systems to make growing tree programs might be nice.] 04:59:32 ais523: And that is dumb! 04:59:38 elliott: I love paper books, but they may or may not be more stable than electronic storage. 04:59:50 At least they have more graceful degradation when it comes to zombie apocalypses. 04:59:51 paper books are dumb and stupid and using them is unpleasant 04:59:58 eink is much nicer 04:59:58 elliott: well, I'm not sure if my sources for it are reliable, but I didn't make it up myself 05:00:14 -!- jcp has joined. 05:00:15 and I have first-hand experience of it happening with MS Publisher (which is not Word) 05:00:23 amazing 05:00:25 elliott: And when there is no more power due to the apocalypse, I will be reading my books by candlelight and you will be trying to beat zombies away with your dead Kindle. 05:00:28 does it happen even before you try to print it? 05:00:32 I haven't tried eink, mostly because all the devices I know of that have it are all too controlled for my liking. 05:00:35 in Publisher, yes 05:00:36 evincar: you make your technological decisions based on the apocalypse? 05:00:41 evincar: I have a lot of guns to sell you 05:00:43 I don't know about Word 05:01:00 evincar: how does reading books by candlelight help you defeat zombies? 05:01:02 elliott: Yes. I have faith that the longer we go without killing ourselves, the more likely we are to do so. 05:01:05 elliott: I don't like my books printed in vanishing ink. 05:01:17 ais523: Maybe I'm reading the Zombie Survival Guide. 05:01:23 I think the action you attributed to elliott (hitting them with a Kindle) is more plausible as a method of beating zombies 05:01:23 It is still dumb to have line wrapping and stuff like that depending on the printer, usually. 05:01:24 evincar: and you choose to read fiction on certain media because of this ok 05:01:27 at least in the short term 05:01:44 zzo38: Try "moronic". 05:01:45 Batteries aren'tt hat hard to make, you just need to be able to refine two different metals with different properties. 05:01:51 err, sorry, two bytes 05:01:59 a zombie apocalypse would be a fun virtual-reality game 05:02:00 zzo38: They can't even use the One True Line-Breaking Algorithm. 05:02:03 as long as it cuts out before your limbs get torn off 05:02:03 Maybe it makes sense if you are sending a plain text file directly to the printer, but it makes no sense to change lines and stuff depending on the printer if you are formatting the page layout by computer! 05:02:12 elliott: Actually, no. I just like how paper feels, and how ink looks on paper. I like calligraphy and printing. 05:02:18 lots of games would be more fun in a virtual reality format, actually 05:02:20 But it's fun to shout about zombies. 05:02:26 evincar: the whole point of e-ink is that it looks the same as ink on paper, you know 05:02:43 i mean... it's electronic paper. 05:02:54 Not the whole point. 05:03:07 the rest of the point that isn't being a dynamic screen is that 05:03:11 pikhq: I have never heard of any "One True Line-Breaking Algorithm". I only know some things about TeX's algorithm and about a simple way where you just put whatever fits on one line 05:03:17 That's part of it, sure, but it's also low-power, non-backlit, solid-state... 05:03:42 zzo38: That'd be TeX's. 05:03:44 ok, but the point is, "it looks like ink on paper" is not a good argument for books against e-reader type things, because they have that property too :P 05:03:53 No, they don't. 05:04:04 yeah, they do 05:04:07 They're a cheap (actually, expensive) approximation. 05:04:34 Much lower resolution, and they don't have nearly the same optical qualities. 05:04:47 Good ink on good paper has scattering and texture. 05:04:58 pikhq: I don't completely understand TeX's algorithm (I have read it a few times) but I know what it is trying to do, what the "badness" of a line is, what penalties, what demerits and everythinng else that goes into the calculation. 05:05:06 There are subtle irregularities where the ink bled into the fiber. 05:05:11 In general, it works very well. 05:05:21 http://upload.wikimedia.org/wikipedia/commons/5/54/Kindle_3_texture_%28crop%29.jpg are these subtle irregularities good enough for you 05:05:38 (not that the kindle is necessarily ~the best electronic paper~) 05:06:01 I dislike the Kindle for the sort of reasons that are guessable (I don't really like devices as locked down as that) 05:06:19 ais523: Hence my "vanishing ink" quip. 05:06:24 That's another good point. 05:06:36 Paper is freely accessible. 05:06:40 ais523: I never said I liked the Kindle 05:06:41 Also cheap to produce. 05:06:42 e-ink screens don't look massively similar to paper, but I'm fine with them 05:06:43 elliott: I know 05:06:49 I never said you liked it either 05:07:01 Pretty common fault in ereaders, though. 05:07:01 the pixel qi displays seem promising 05:07:14 it's just that this conversation has been "state your opinion on things vaguely related to e-readers", so I did 05:07:19 e-readers are stupid, as a separate device to computers 05:07:19 And I can wheatpaste paper to the sides of buildings when the revolution starts. :P 05:07:22 Wasn't some... thing based on pixel qi a bit of a flop? 05:07:29 And paper can be reused, recycle, and so on, too. And if I print out something, and don't need it, I can still use it as spare paper to write on the back, too. 05:07:34 OH NO SOMEONE MADE A PRODUCT USING ANOTHER PRODUCT AND IT WAS A FLOP 05:07:39 abandoning company forever 05:07:49 Abandoning all related products forever. 05:07:57 you know what I'm upset at? the demise of dotmatrix printers 05:08:03 elliott: Seems unlikely that eink displays will be common soon. 05:08:09 dot matrix is stupid and dumb and loud but the output looks cool 05:08:15 elliott: Though if they do become common, I will be very happy. 05:08:18 also they can be used as musical instruments 05:08:21 they printed easily well enough to be readable, and apart from print quality are better than inkjet in pretty much every way 05:08:25 ais523: Printing things in bold actually just printed them twice so the dots were darker. 05:08:31 ais523: that's more inkjet's fault 05:08:34 evincar: yep, well not exactly 05:08:36 twice with an offset 05:08:37 ais523: black and white laser printers should be about fifty times as popular as they are 05:08:39 elliott: well, OK 05:08:43 if not more 05:08:52 No, not exactly. If it were exact, it wouldn't be any darker. ;) 05:08:55 the main reason that I can tell that laser printers are unpopular for home use is physical size 05:08:56 In fact I often use the back of printed pages as spare paper. 05:09:11 ais523: umm, they're not all big 05:09:17 elliott: But inkjets are cheap, and consumers don't consider the cost of ink. 05:09:29 Ugh, fucking ink. 05:09:39 pikhq: I'm worried, because inkjet marketing people have come across a consistent failing of the majority of humans 05:09:41 and are exploiting it 05:09:44 Proprietary cartridges and all that. 05:09:52 And crack's cheaper than ink. 05:09:54 and I don't like seeing evidence that humans are generally easily fooled, even though I know it's true 05:09:58 ais523: I can't find the few models I've seen generally recommended, but basically there are consumer b/w laser printers the same size as inkjets 05:10:00 if not smaller 05:10:07 elliott: what about weight? 05:10:09 Black and white laser printer is good quality. METAFONT can use high resolutions too, if needed. 05:10:10 one of them was a Samsung, IIRC 05:10:13 the thing is, they aren't typically sold in places like PC World 05:10:18 Make crack ink printer. 05:10:33 ais523: umm, let me try and find one 05:10:46 grr, it should be illegal to not list RRPs next to product listings on company sites 05:10:56 it used to be that it was cheaper to buy ink if you bought a printer along with it 05:11:00 (note: I don't necessarily think this) 05:11:05 What does RRPs means? 05:11:05 but they fixed that by making the printers come with only tiny amounts of ink 05:11:11 recommended retail price 05:11:17 OK. 05:11:20 the price at which the manufacturer suggests that retailers sell it for 05:11:27 it's typically a bit higher than the price at which they sell it to the retailer 05:11:45 Yes, if the manufacturer suggests prices then they should in fact put it there for public 05:11:46 And doesn't necessarily have anything to do with actual retail price. 05:11:59 * ais523 vaguely remembers trying to work out the tax situation on a chicken and spinach wrap in Canada 05:12:01 (usually does, though) 05:12:13 in the UK, advertised prices typically include all relevant taxes 05:12:20 ais523: well, this is the cheapest Brother monochrome laser printer, which I've seen recommended a lot; http://www.brother.co.uk/g3.cfm/s_page/215760/s_level/36180/s_product/HL2132U1 -- I'm trying to find the weight now 05:12:29 6.7 kg 05:12:34 and if you want a tax breakdown, you ask for a separate receipt with it on 05:12:39 it's also Compact, and it looks pretty small 05:12:53 6.7kg is pretty heavy compared to small inkjets 05:12:54 ais523: In the US, the relevant taxes can vary, heavily. 05:12:55 368 x 360 x 183 mm, apparently 05:12:59 -!- MDude has changed nick to MSleep. 05:13:06 ais523: well, OK; is the weight of a printer its main selling point? 05:13:14 Does anyone still make the old clunky IBM PC keyboard? 05:13:21 among people I've observed buying printers, apparently 05:13:24 although less important than size 05:13:34 zzo38: no, but there's enough of them to be sold for about a million years 05:13:38 (not ltierally a million years) 05:13:43 elliott: that looks about twice the size of the inkjet we have at home 05:13:49 -!- MSleep has changed nick to MDude. 05:14:00 But I know the protocol is different than modern computers 05:14:01 although it's hard to tell from an image 05:14:02 Uh, Unicomp still manufactures the model M. 05:14:04 ais523: the one we have here is a combined printer/scanner/"photocopier" (just combination of previous two), so it's huge, and terrible at both 05:14:11 pikhq: no 05:14:11 pictures may be worth a thousand words, but they're typically the wrong thousand words 05:14:11 -!- MDude has changed nick to MSleep. 05:14:17 pikhq: they manufacture a similar keyboard 05:14:25 I don't mean the Model M, though. I mean the much older keyboard. 05:14:28 it's not the same as the Model M, in non-pedantic ways 05:14:35 elliott: Oh? 05:14:54 zzo38: this is one of the biggest still-manufactured keyboards you'll find: http://pckeyboards.stores.yahoo.net/122keyterkey.html 05:14:59 I mean the one with the function keys at the left. 05:15:19 pikhq: well it's not scientific, but sufficiently obsessed people who have tried both definitely say that the customizer is less clacky; I think the springs are different, or maybe their oiling 05:15:31 zzo38: Ah, the XT keyboards. 05:15:31 zzo38: yep, the one I linked has that 05:15:36 or, hmm, it might be a different kind on the side 05:15:58 ugh, stop it, guys, you'll make me into a keyboard nerd again, which I somehow managed to do and get over without having bought a single keyboard 05:16:08 beautiful 05:16:21 is that like the way I know far too much about computer games I've never played? 05:16:41 possibly; the trick with me was to be sufficiently obsessed about it that I had to be absolutely sure whatever I bought would be the right choice 05:16:53 amplified by the fact that good keyboards are pretty expensive 05:17:03 then just sit there marred by indecision for a few weeks until you get bored and do something else 05:17:10 keyboards suck 05:17:12 typing sucks 05:17:25 that's a bit like me deciding that any girlfriend I would be willing to accept at a girlfriend, compared to not having one, would have to be so unreasonably perfect that there's no point in looking for one in the first place 05:17:30 elliott: No, the one you linked is a terminal emulation keyboard. 05:17:42 lament: you could try stopping 05:17:45 ais523: see, it works in all areas of life 05:17:53 ais523: isn't that true 05:18:01 lament: i never hear you say anything except that things suck nowadays 05:18:03 lament: well, my standards are pretty high 05:18:18 i never had a girlfriend because i was waiting for the perfect woman 05:18:20 then i found her 05:18:26 turns out, she's waiting for the perfect man :( 05:18:36 fair enough 05:18:52 there's also the problem that the very small number of people who might potentially qualify, probably do so for other people too 05:19:10 however, I think there's more than a 50% chance you just made that up to sound poetic 05:19:25 you're overestimating me, it's a quote 05:20:26 Every relationship I've been in has been fundamentally flawed in some way or another. 05:20:35 all in the same way 05:20:37 you were in them 05:20:45 Only difference being that I got out of the most recent one quickly. 05:20:47 Yes, actually. 05:20:56 The important thing is to find someone who's compatibly flawed. 05:20:59 Which I have, and I'm happy. 05:23:56 hmm, did I just unintentionally compare girlfriends to keyboards? 05:24:14 what's the difference 05:24:54 both are dirty and unhygienic yet you touch them all the time 05:24:58 Only some keyboards have clits. 05:25:13 To be blunt. 05:26:21 -!- oerjan has quit (Quit: Good night). 05:27:28 Also, no keyboard I've ever owned has made me feel as shitty as any of my ex-(girl|boy)friends have. 05:28:15 Nor as excellent? Well, there is programming... 05:28:19 hmm, this is definitely going to be a horrible hack, maybe I'll do that esolang instead 05:28:25 ais523: how soon do I need to fill that name 05:28:37 you have a while 05:28:57 is there a limit 05:29:00 well, about 99% of a while, by now 05:29:05 oh 05:29:07 you've used some of it discussing keyboards 05:29:09 how long is the while 05:29:21 I'm not sure, I was approximating 05:29:30 it's quite long as whiles go, though 05:30:47 hmm 05:30:54 I guess blips have to be directional to preserve nice things like symmetry 05:31:02 still, it does make the nondeterminism mechanism a bit weird 05:31:30 symmetry 05:31:59 I also have a new system, unlike @ it uses both CTRL and ALT, but ALT does not have the meaning like on most computers, instead ALT is like another SHIFT like the TOP and GREEK keys on a Space Cadet keyboard. 05:33:56 ais523: monqy: http://sprunge.us/iRVi is this nice... is this worth having directionless blips for and thus losing symmetry 05:34:07 it still works with directional blips, it's just weird for blips to suddenly change direction for no reason?? 05:34:36 directionless blips? as in wireworld or something else? 05:34:39 it /needs/ directional blips, or there's no way to prevent it from having a chance of going back the way it cam 05:34:40 *came 05:34:46 just as in blips travel either vertically or horizontally 05:34:49 depending on which way the wire is 05:34:52 but it's always right or upwards 05:34:52 oh 05:34:57 or whatever 05:35:03 ais523: no, just one direction is chosen arbitrarily 05:35:13 it's hideous but it makes the nondeterminism i showed there ... nicer? kind of......... 05:35:23 I mean, how does it know not to go left? 05:35:24 What if you have a tail? The tail can be in space, but I suppose you could also use a time tail instead 05:35:31 ais523: because that's the rules 05:35:33 it never goes left 05:35:34 or down 05:35:52 oh, up and right only? 05:35:56 how do you do a loop, then? 05:36:14 you don't, or there might be another type of wire, BUT LOOK OK IGNORE ALL THE PROBLEMS 05:36:20 i'm just like... 05:36:25 it's sad that i can't have directionless blimps.. 05:36:31 because it makes the splits nicer :( 05:36:41 would wireworld-style blips work 05:37:32 they're kind of ugly?? i think, maybe, i don't know 05:38:11 elliott: they're head+tail 05:38:27 tails are just locations where there was a head the turn before, and they block blips 05:38:32 so blips are forced to keep moving the same way 05:39:00 ais523: yeah, I know 05:39:06 it's just kind of ugly :( 05:39:11 I think wireworld blips would work in your example thing I think??? oh wait no. I forgot you wanted 1/2 probablity thing. 05:39:11 is wireworld ugly 05:39:19 well they might work but 05:39:23 monqy: well it is kind of a cool way to do randomness.... 05:39:34 i was thinking of them going both ways 05:39:45 it would be uglier to make it do random 05:39:46 :( 05:40:08 well but 05:40:15 I was going to have an explicit thing to clone blips 05:40:17 to make them go both ways 05:40:26 it would be a different kind of join to +.... 05:40:40 Totally off-topic: does anyone have any suggestions for out-of-copyright (e.g., Project Gutenberg) texts I should use for voice acting samples? 05:40:43 oh + is special? 05:41:07 I was thinking |+- were all the same oops 05:41:25 like just sugar for each other 05:41:52 im too used to wireworld style :'( 05:42:08 monqy: i don't know :( 05:42:12 i want to do something.... different.... 05:42:23 elliott: make it different from Wireworld, or I'll be annoyed at you 05:42:33 interestingly different, that is 05:42:46 ais523: is wireworld bad 05:42:47 you should probably allow unboundedly many blips on a square, and make it TC that way 05:42:48 brainfuck on wires 05:42:50 elliott: no, it's good 05:42:55 but it's sub-TC without an infinite program 05:43:05 ais523: that's non-good 05:43:15 well, it's a cellular automaton, what did you expect? 05:43:37 GoL is TC with a finite program, right? 05:44:14 Can you make a time tail to tell which direction to don't go? 05:44:16 it's TC with a bounded-nonwhite program 05:44:32 as in, the playfield has to be infinite, but only a finite portion needs initialising to nonblank 05:44:34 good 05:44:36 right 05:44:40 but not the same for wireworld? 05:45:02 Well, that makes sense, although what if you allow for infinite wire too? 05:45:03 I kind of want to make my language not a CA somehow, like maybe a bully automaton??? 05:45:06 you need a repeating pattern for wireworld 05:45:17 what if blips carried code would that be interesting help 05:45:23 monqy: hidden state :( 05:45:26 I mean 05:45:30 is the "help" meme a specific elliott/monqy thing? 05:45:39 i don't know who started it 05:45:39 monqy: Try. 05:45:39 there was some way to get them to represent code 05:45:50 Try to see if you can make them carried code 05:45:51 but it seems to apply to a wide range of situations in my life 05:45:58 but it's mostly you two who use it 05:46:03 i not know what do help 05:46:07 nearly always pinging each other 05:46:09 well that's his fault, if it wasn't him, I would be the person who used it 05:46:54 elliott: is the state necessarily hidden or otherwise inelegant I cannot tell 05:47:02 monqy: well do you want it to like 05:47:04 dangle from the blip 05:47:09 because that would take up a lot of space 05:47:10 I do not know 05:48:27 Crap, as if the Funciton didn't already make me want to make a 2D language, all this talk of cellular automata and Wireworld and whatnot have really sent me over the threshold. 05:48:28 I was just thinking maybe making it self-extending/modifying would be interesting but maybe it wouldn't maybe it would ruin it help 05:48:36 *the Function article 05:49:31 I may have missed the design goals statement was there ever one 05:49:38 missed/forgotten 05:55:42 *the Funciton article 05:55:43 Dammit. 05:57:40 Why do you type "help" after some sentences is the question mark broken on your computer? 05:59:01 yes? 05:59:19 help? 05:59:25 -!- lament has quit (Read error: Connection reset by peer). 05:59:37 O, it works now. 05:59:43 no it's still broken? 05:59:55 O, I didn't know that. 06:01:22 hmm, "bully automaton" doesn't even seem well-defined 06:02:09 it isn't 06:02:28 what about RUBE makes it not a CA? 06:02:34 I realise it's about pushing things around 06:02:42 but I'm not sure how that implies non-adjacent changes 06:04:39 -!- elliott has quit (Quit: Leaving). 06:05:17 -!- elliott has joined. 06:06:12 I wonder if I should just use one character for wire rather than two (- and |) 06:06:22 Can't think of a decent character for it, though; maybe =? 06:06:26 elliott: consider dozer crate crate crate crate crate... 06:06:32 the dozer moves the rightmost crate as well as all the others 06:06:45 CAs don't have that sort of action at a distance 06:07:00 ais523: ah 06:07:10 (bully automata don't have a "speed of light" in the sense that CAs do, for that reason) 06:07:24 CLEARLY THIS ALLOWS US TO SUBVERT THE IRL SPEED OF LIGHT 06:07:40 SOMEONE GET THE BULLDOZER 06:08:07 elliott: in real life, it doesn't work because you can't exceed the speed of sound that way 06:08:08 and it's lower 06:08:20 (it can be quite high in a sufficiently stiff object, but it's always lower than the speed of light) 06:08:22 ais523: you can if you have a fast enough bulldozer 06:08:31 no, as in, the speed of sound in crate 06:08:35 SSSSHHH 06:08:36 that's how the speed of sound is defined 06:08:39 you just need a fast enough crate 06:08:42 if you push one end, the soonest the other end reacts 06:08:51 also, I like the phrase "speed of sound in crate" 06:09:01 I like "fast enough crate" 06:10:36 you probably mean stiff, not fast 06:11:49 no 06:11:52 i mean fast >:( 06:11:53 I'll give you a sufficiently stiff object. 06:12:08 To chime in with extremely poor comedic timing. 06:12:35 -!- Sgeo has quit (Ping timeout: 255 seconds). 06:14:33 hmm, oh dear 06:16:53 16:47:13: Well, first of all.. why is there a 1 to 1 association between programming and language 06:16:53 16:47:29: itidus20: you'd make a great liberal arts major. 06:16:53 lol 06:17:25 1 to 1 association between programming and language what does this even mean 06:17:53 17:11:09: we speak of turing complete a lot.. but what about CPU-complete? :D 06:17:55 this is beautiful 06:18:08 17:12:40: I never shut up.. I am the bane of those who would read the logs 06:18:09 17:13:38: itidus20, no, that's elliott. 06:18:09 17:13:54: He takes great pride in the fact that he talks twice as much as his nearest contender. 06:18:13 it might be more by now, Vorpal doesn't talk any more 06:18:22 soon it will just be me 06:18:26 alone 06:18:28 forever 06:18:31 ;_; 06:19:42 I should talk more to compete with you. 06:19:46 17:29:57: Taneb: So going back to my point about PC/human. I think what has happened is that everyone in programming has been channeled into a very standard mindset of programming with many unnecessary bonds to mathematics. 06:19:46 said like someone who wants to program but isn't any good at mathematics 06:19:47 You both. You all. 06:19:51 ais523: What about those "rigid bodies" every physics book has? (Along with the massless ideal springs and other such devices.) 06:20:04 fizzie: those sound useful can i have one 06:20:10 also can you make that talking over time graph thing again 06:20:13 i need to see my dominance............ 06:20:24 elliott: I think the physicists keep them locked up somewhere. 06:20:47 help, tell the physicists to unleash their irc graphs 06:21:20 17:44:10: so be afraid if they inject you with intelligence medicine, be afraid if they implant a chip in you, be afraid if they hook an EEG machine up to your cubicle 06:21:20 im afraid 06:21:50 You want a talking-over-time-of-day graph or talking-over-just-plain-old-regular-time-as-in-for-the-last-year-or-so-whatever graph? 06:22:06 fizzie: It... was the one that had a lot of misshapen colours piling on top of each other. 06:22:08 The "home-grown" one. 06:22:11 It was very wide. 06:22:13 I think one pixel per hour? 06:22:24 Yes, that's the time-of-day one, I suppose. 06:22:37 The other one had one pixel per 15 days or so in some settings. 06:22:44 I'll see if I can figure out how to use the script. 06:22:46 Same thing if you zoom out. 06:22:57 I mean you could use the other one if Vorpal looks worse on it. 06:23:17 -!- azaq23 has quit (Quit: Leaving.). 06:23:32 The time-of-day graph takes time modulo a day, the other one doesn't. Anyway, let's see. 06:23:43 die "usage: perldoc $0" unless $network and $chan and $outfile; # ain't that fancy? 06:23:51 "perldoc" 06:24:01 oh i see 06:24:04 that's a stupid help message :D 06:24:09 omg arcane sentiment is updating reulglarly again 06:24:15 Yes, and the perldoc's out of date too. 06:25:40 Obviously, die `perldoc $0` would be better. 06:27:44 "DBD::Pg::st execute failed: ERROR: operator does not exist: logs.etype = integer" 06:27:52 My poor script seems to have bitrotteded. :( :( :( 06:28:02 :( 06:28:08 Sigh. Is it so much to ask to have Linux + bidirectional pipes + extra default file descriptors for non-textual console I/O? 06:28:19 linux has bidirectional pipes 06:28:20 Maybe this one is an old one. 06:28:33 if your shell doesn't provide convenient ways to construct them, that's its problem 06:28:41 Most of the time, but with the other thing. 06:28:45 what 06:28:50 what's a good shell 06:28:56 monqy: dunno 06:29:10 are they all bad :( 06:29:16 maybe :( 06:29:23 i use bash because i'm lazy, but when i wasn't feeling lazy I used zsh?? 06:29:32 Everything is bad. 06:29:32 it is very big and bloated but it felt comfortable....... 06:29:35 no 06:29:36 @ isn't bad 06:30:11 19:00:51: basically it seems highly likely in this world of no free lunches that something dear would have to be sacrificed to eliminate software patents 06:30:33 itidus20: so if someone introduced mandatory laws for senseless kitten-killing, because "there are no free lunches" it would necessarily cost something important to eliminate it? 06:30:44 some things are just bad. 06:31:31 19:18:21: OK there is a guy in #jesus who is a Wolfram employee and thinks Wolfram is a genius. 06:31:31 oh my gojdfoijd 06:32:01 -!- Taneb has joined. 06:32:16 20:05:34: Why not Xesus? Because Xs are cool (see the 90s). 06:32:17 20:05:51: in that case i think Xristos would be more traditional 06:32:17 jason is that you 06:33:46 Apparently not. 06:34:42 Technically it's not an X in Xristos. It's a chi. 06:35:53 Ξριστος 06:36:41 21:06:15: hoogle is even worse than haskell 06:36:41 21:06:30: are we _sure_ someone hasn't hacked lament's account? 06:36:43 Taneb: Χριστός 06:36:48 wait how is that out of character at all 06:36:56 oh i'm done with the looges 06:37:00 You used Xi instead of Chi. 06:37:11 I was demistrating what it would be if it was an x 06:37:24 Oh. Ksristos. 06:37:38 Exactly 06:37:55 more like VISTOS 06:38:10 Greeks didn't have a v? 06:38:23 Inorite is the substance of agreement. Amirite is the substance of desperation. 06:38:42 oh, elliottcraft needs inorite 06:38:50 ais523: how's elliottcraft(ais) doing 06:38:58 elliott: Okay uh this is based on data from 2008-01-01 until now: http://zem.fi/~fis/foo1.png (and the times are probably EET/EEST). 06:39:01 Taneb: Beta used to be [b], but now it's [v]. 06:39:08 evincar: haven't worked on it for a while 06:39:12 *elliott 06:39:21 ais523: Quit doing that. :P 06:39:23 I have the mechanics worked out, I think 06:39:24 evincar: huh. 06:39:25 I get all excited. 06:39:26 just don't want to code it 06:39:26 fizzie: Um surely not, Vorpal hasn't talked much in ages. 06:39:30 evincar: stop talking right after elliott does 06:39:33 And... what's with that massive slump? 06:39:43 elliott: see, this is the problem with most-recently-spoken tabcomplete 06:39:55 ais523: I don't have to tab-complete elliott, so I have no problems 06:39:58 you're ai 06:40:05 I typically type the first two letters manually, then tab 06:40:13 me too, it seems 06:40:15 Ditto. 06:40:16 you're mo 06:40:18 I generally type the whole thing 06:40:20 I do for most people 06:40:22 I like how our sleep schedules appear to be unified. 06:40:24 but elliott is typically just e 06:40:26 taneb is tan though 06:40:31 pikhq is pik 06:40:38 Taneb is ta 06:40:39 I find tabs awkward 06:40:47 pikhq is pi 06:41:02 Taneb: what 06:41:14 I do 06:41:20 one thing I dislike about irssi is not having readline-like tabcomplete 06:41:35 where it stopes at the first ambiguity, and a second \t lists the options 06:41:41 Because I rotate my hand to get to the tab which puts my thumb above the alt key 06:41:46 For alt-tabbing 06:41:58 You have a freak hand. 06:41:59 Which is fine, but it hurts my wrist a little 06:42:18 coppro: I dislike that irssi doesn't have readline-like lots of things. 06:42:33 But I gladly use it anyway, because I'm a hipster or something. 06:42:36 I use my whatever it's called finget to tab 06:43:14 Even if Vorpal hadn't talked much this year at all, 2008-now still means 2008-2010 accounts for well over three fourths. But here's 2011-only for you if you like to see yourself talk a lot, http://zem.fi/~fis/foo2.png 06:43:17 Dude. 06:43:21 Old names of fingers. 06:43:36 Index finger, fool's finger, leech- or physic-finger, and ear-finger. 06:43:45 ear-finger. good name. 06:43:45 I'm gonna use these. 06:43:50 fizzie: DEFINITELY THINKING THAT THE PER-HOUR THING WILL BE MOST FAVOURABLE 06:43:53 Better than "pinkie". 06:43:56 I use little finger. 06:44:04 Also how does ais523 talk more than PH. 06:44:26 ... elliott is *always* the most talkative person here? 06:44:26 s/(li.*er)/"$1"/ 06:44:34 -!- GreaseMonkey has joined. 06:44:34 -!- GreaseMonkey has quit (Changing host). 06:44:34 -!- GreaseMonkey has joined. 06:44:39 pikhq: Um. Yes. 06:44:44 elliott is very talkative. 06:44:47 pikhq: That's a per-day thing though. 06:44:58 If fizzie produces a per-hour graph there SHOULD be some shallow spots on it. 06:44:58 SHOULD. 06:44:59 whoa I just realized elliott is just e for me that's bizarre 06:45:01 Well, yes, but still. 06:45:08 help 06:45:24 elliott: http://zem.fi/~fis/foo2.png Uh? 06:45:27 pikhq: I think the last time I was not the most active was for the two weeks or so of unit crap 06:45:31 http://zem.fi/~fis/foo2r.png is the relative-talkiness version, basically just scales the total to 1 for each per-minute bin. 06:45:34 Then I got the iPhone 06:45:35 And 06:45:46 Managed to still talk the most having only like two to three hours each day on an iPhone keyboard 06:45:56 pikhq: That's not a per-hour graph. 06:46:01 (Is it? fizzie?) 06:46:06 Oh, I see how it works. 06:46:11 I was thinking it was chronological. 06:46:14 But it's a day average. 06:46:40 fizzie: Which one's the really wide one? That's non-normalised per-hour, right? 06:46:41 Or was it normalised. 06:46:48 I frog-ret. 06:46:52 Damn, I'm in "others"? 06:46:54 This is unacceptable. 06:47:03 I should speak 06:47:04 evincar: I'm just slightly surprised I'm not. 06:47:05 in shorter 06:47:09 broken sentences. 06:47:11 I 06:47:11 od 06:47:12 that 06:47:12 a 06:47:13 lot 06:47:13 its 06:47:13 quite 06:47:14 I am simultaneously proud, dissapointed, and something else which I can't think of the name to about being in the others 06:47:15 I guess I don't talk a lot, or there's some bias, or something. 06:47:15 fun 06:47:16 I didn't think I was *that* talkative. 06:47:20 also I do that broken thing too 06:47:24 but not as much right now??? 06:47:32 maybe actually a lot right now 06:47:32 help 06:47:34 That's the one that's modulo-a-day, yes. I don't think "the wide graph"'s per-hour, that'd be really wide for any appreciable length of time. I'll try to produce one for 2011 or something. 06:47:36 Though, elliott probably makes my point of reference screwy. 06:47:37 i cant an help 06:47:59 fizzie: Make one where adjacent statements by the same user are merged. 06:48:07 evincar: NOOOOOOOOOOOOOooooooooooOOOOOOOOOOooOOOOOOOooOOOOOOOooooooooooooOOOOOOOOOOOOOOoooooo 06:48:07 It'll cut down on the noise. 06:48:13 Better yet, go by character count. 06:48:21 elliott will still be ranked highly no doubt. 06:48:27 evincar: I think it does go by character count, but I'm not entirely sure. 06:48:31 Anyways, I really like how we seem to have an average sleep period in spite of spanning so many time zones. 06:48:44 maybe if the graphy thing started after (person) joined for the first time 06:48:53 I'm GMT-5 (2:50). 06:49:03 Timezone is irrelevant. 06:49:09 I'm UTC-7 (00:50). 06:49:10 So it's not terribly late yet. 06:49:15 elliott: Well, yes, you'd think that. :) 06:49:16 You must sacrifice your schedule for the sake of the channel. 06:49:20 I'm 2351 oops 06:49:25 monqy: old, 06:49:34 i accidentally let myself age 06:49:42 it happens 06:50:11 Your sleep appears to be extraordinarily... Diverse. 06:50:22 im sleep connosiuer 06:50:54 Not connoiseur. That'd be too classy. 06:51:26 sleep (derogatory term for connoiseur) 06:51:32 I *always* read "im" as [Im], not [aIm]. 06:51:46 me too 06:51:49 Oh no, the other graph has managed to lose all X-axis labels. But http://zem.fi/~fis/foo3.png represents stuff from start of 2011; one pixel equals 4 hours, values taken as averages over 3-day Hamming-weighted windows to smooth the daily /\/\ variation out a bit. There's at least one no-elliott gap there. 06:52:06 whenever I say "im", I read it like [Im]. it is a thing I do. 06:52:06 Whoops, that one doesn't merge elliott and elliott_. 06:52:10 The other one did. 06:52:18 fizzie: >:E 06:52:24 UNACCEPTABLE 06:52:34 I am still not on there and this is unacceptable. :( 06:52:43 I should come on here at all hours and yammer. 06:52:43 How am I active simultaneously with my non-_-self 06:52:45 X-D 06:52:46 when did you first join does that a difference make 06:52:49 Seriously, look at it 06:52:50 Use the logs to take notes for posterity. 06:53:12 monqy: I first joined in two thousand and six, first started saying things the second time I came here in the next year 06:53:23 Have been annoying everyone since 06:53:26 So I had this absurd dream last night. 06:53:27 Use the logs to take notes for posterity. 06:53:27 sgeo 06:53:30 I meant evincar but okay 06:53:33 Which I am now going to talk about. 06:53:35 At length. 06:53:37 OK 06:53:38 WELL 06:53:39 i think 06:53:42 that your dream sounds.... 06:53:43 intersting? 06:53:46 but 06:53:47 i mean 06:53:47 So I was in this house. 06:53:48 let's put it this way: 06:53:50 It was a detailed house. 06:53:51 I can type a lot faster than you 06:53:51 I first joined in 2011 and talked on was it the third day of being here and only after prompted 06:53:52 almost ecrtainly 06:53:53 so basically 06:53:55 also 06:53:56 I wasn't aware that I was dreaming 06:53:57 I don't care about errors 06:53:58 of any kind 06:53:58 This is unusual for me. 06:53:59 so basically 06:54:01 I can always outpace you 06:54:04 so basically 06:54:07 give up 06:54:08 you lose 06:54:10 http://zem.fi/~fis/foo3b.png merged the '_' and ''. 06:54:11 ok go on but this sounds shit 06:54:12 your dream is shit :( 06:54:18 I came here in 2011 and had fun 06:54:23 There was this friend of mine, and this girl, and we were all about eight years older. 06:54:24 fizzie: that's better. 06:54:28 fizzie: what's with that gap 06:54:32 evincar: tell me more please thanks ok 06:54:40 And someone suggested a threesome, and we all agreed, but then no one could agree on the mechanics, so we gave up. 06:54:53 are all your dreams about threesomes 06:55:02 Then she went in another room and when I followed her later I found she'd been eaten from the mid-thigh up by hell-hounds that lived in the closets. 06:55:10 And I had to give them a stern talking-to. 06:55:21 Actually that's about it. 06:55:29 I think two dreams of mine (and I think the only two I talked about in here) made it into the quote database thing 06:55:50 where by quote database thing I mean someone did `addquote on them 06:56:04 `pastequotes monqy 06:56:05 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.25498 06:56:21 362) I've only watched bad movies about video game. I enjoyed every second of it. 06:56:21 this was a good moment 06:57:01 oh it was day of the zeptobot 06:57:10 04:32:52: I've never seen a bot forget where it put its PRIVMSG before 06:57:29 `pastequotes evincar 06:57:30 http://codu.org/projects/hackbot/fshg/index.cgi/raw-file/tip/paste/paste.32593 06:57:36 amazing 06:57:39 :( 06:58:04 deserved 06:58:06 >:( 06:58:06 What would it make if you replaced the rule of induction in Typographical Number Theory with the negation? Is it possible to define TNT in Haskell using only the type system? Can you represent even how the variable bindings in TNT works representable in Haskell type system only? 06:58:12 404) my most fresh dream is one where I'm at a soup contest and a chicken really wants to participate but he's disqualified so he becomes the judge. when all the soups are done and he's ready to taste them he just stares at the soup and then I become the chicken and I really want to make soup 06:58:12 monqy: me 06:59:26 I have not had a nifty memorable dream in too long (i.e. weeks???) :( 06:59:33 elliott: The gap was from March 15th to 25th or so -- http://p.zem.fi/acrb has your per-day lines -- I think it was that [(anti)^n]optbot... thing. 06:59:56 That wasn't really about the 'bots, but yes probably. 07:00:04 monqy: but will you always remember malaria.... 07:00:18 Well, okay; I can't say I was following too closely. 07:00:22 This week I had a dream about pokemon but other than that I did not remember. (But maybe, that is all there is! Is it?) 07:00:37 elliott: it's probably not as memorable as a dream i affectionatley refer to as "afro jesus" for reasons apparent to those who know what the dream is (it was a good dream) 07:00:40 It occurs to me that "Christ" means "anointed one", as a literal translation of "Messiah". 07:00:45 Jesus covered in oil. 07:01:09 elliott: oh right I remember one time saying in here that in my best dream I died at the beginning. that was that dream. it was a good dream. 07:01:10 I have three more quotes than monqy! Ha! 07:01:11 monqy: i am interested, 07:01:29 it is complicated and I sort of probably forgot a lot of it :( 07:01:31 `delqutoe everything with taneb 07:01:33 evincar: So now you can do that if you make any art of Jesus Christ 07:01:35 No output. 07:02:10 Okay, two of the quotes were kinda cheating 07:02:35 at least two of mine are cheaty too 07:03:05 unless you didn't count those 07:03:16 I counted them 07:04:40 (Just for completeness' sake, http://zem.fi/~fis/foo3r.png has the relativized version.) 07:05:08 That is absurd. 07:05:38 anyway the dream I refer to as "afro jesus" started by me being in a car with my family but then bad things happened and it started to bounce and then it fell in water (and I think I died but it is kind of ambiguous) 07:05:45 fizzie: What is that a graph of? 07:06:18 zzo38: It's a graph of how much different people have been talking on this channel during this year. 07:06:27 I wake up in a beige shower chamber thing naked so I find clothes and put them on then walk down this corridor and find this group of people walking into this meeting room thing 07:07:53 fizzie: I like how I'm fairly competitive with EVERYONE ELSE ON THE CHANNEL COMBINED. 07:08:22 elliott: Well, sort of. 07:08:25 I forget what happened in there but then we walked down into this garden/auditorium thing to which a bunch of other people were walking and after a little while this white man in purple robes and with a huge afro walked onto the stage and called himself jesus and said some stuff I forget 07:08:43 But it still is. 07:09:20 then he led us into a bathroom and there were paintings on the wall of this guy in dark magenta cloak thing with a bird beak mask and jesus called him death and taught us martial arts so we could fight death and warned us never to be alone or death will find us 07:09:38 anyway I forget the rest except the end in which somehow I managed to be alone and then I was death the end 07:10:35 I also have other dreams and I even remember some of some of them too. 07:11:23 definitlrey hte best dream. 07:11:28 I have also had dreams whatever I remember I recorded and I also recorded other people dreams they told me about 07:11:52 like one time I was walking around the world (which was incidentally concave) a bunch of times and then I ended up on a beach and it was getting stormy and there was this tall blue building so I went into it and then got into the elevator and there was a phone on the elevator and my parents called me and tried to convince me I was on drugs 07:12:02 elliott: It looks slightly worse for you if we count characters instead of lines -- http://zem.fi/~fis/foo3rc.png (though I'm not entirely certain the character-count went right) 07:12:34 fizzie: I'm still king, yo. 07:12:44 monqy: were you 07:12:52 elliott: I don't know 07:13:01 monqy: Yes I have recorded that one you wrote on here before 07:13:21 I don't record my dreams. maybe I should. :( 07:13:39 OK. I do record both my own and others. That is, if I can. 07:14:17 I also had a dream that there was a new game, it was a maze with signs that said "Retro" and if you hit one of the signs you lost the game. Someone was trying to do something bad with that game, so I tried to break what they were trying to do with a laser, but they immediately fixed it, so I used an ancient Greek gun, which would have permanently stopped them had I aimed properly. 07:14:55 in the malaria dream I actually only told a very small part of it, such as to make a good punchline, but the whole of the part I remember of the dream is much better 07:15:28 Some of my dreams partially involve indescribable things, so I do not describe those parts. 07:15:34 I'm going to school but the car breaks down so I walk and there's this big glass museum so I figure I should go inside to see what time it is to make sure I'm not late 07:15:41 ah 07:16:07 I look around, and all the digital clocks all spell "malaria", and the analogue clocks all point to "malaria", and then there's this dancing skeleton who look's like he's bad cgi 07:16:33 malaria o'clock 07:16:39 his eyes were all glowy red and stuff 07:16:51 I'm off to bed to dream crazy things because of this. 07:17:05 i have never had a dream this good 07:17:12 -!- evincar has quit (Quit: I hope you're happy.). 07:17:38 everyone thinks he's evil so they run outside and I do too, but then I start dancing along and then his eyes turn cyan and he started playing using a ghost jumprope and he gave me half of a really big ghost jumprope but I am awful at jumprope so I just slammed it against the ground a lot and danced with him 07:17:51 then someone taunted him or something and he turned red and did his evil dance again 07:18:01 this is honestly amazing 07:18:19 I think he was just misunderstood 07:18:23 and wanted people to love him 07:18:30 but they didn't because they misunderstood him 07:18:34 deep 07:19:02 CGI skeletons are your friend 07:19:09 Just like Jason and the Argonauts 07:19:53 There is some story someone once made up. A clock maker once entered his store to find all the clocks showing a different time. The television signal was too fuzzy to see the time. So he called his wife. His wife looked at the clock and it just said "OK OK OK OK OK" (both the digital and analog clocks did that). So he called the police. The police first said why do you bother me just to ask me the time? That is stupid, so he looked and saw that 07:20:06 monqy: tell more dream story...... 07:20:21 elliott: i was writing one but i am pausing to read this dream 07:20:23 He called the prime minister. The prime minister's clock had the same problem. He called everyone. Everyone's clock had the same problem. 07:20:34 I had a dream where I was in this mediaeval country and I married the king's daughter 07:20:43 zzo38: cut off at " do you bother me just to ask me the time? That is stupid, so he looked and saw tha" 07:20:52 The king got pissed off at my and forced me to marry his other daughter too 07:20:55 t his clock also just says OK OK OK OK OK OK OK 07:21:03 Then disowned both of them and forced me into exile 07:21:14 ok so I'm in this treehouse and see these policemen talking to children and filling out red papers and then one of them looks at me at eye level (maybe he grew big legs???) and reminds me it's native american appreciation day (continued on next line) 07:21:20 So I lived with two wives in a pretty awesome treehouse that had a jacuzzi 07:21:37 It was sunny nowhere except for the North Pole, so nobody could make a sundial to figure out the time. 07:21:53 so he starts quizzing me on stuff but he's near incomprehensible and pronouncing everything wrong and when I tell him I don't understand he gets all mad and yells at me about how I should appreciate native americans more 07:21:54 oh my god its like amazing dream christmas for me 07:22:08 monqy learns about his internalised racism 07:22:28 and I sneak a glance at the red paper and there's this disability grid pyramid thing and I am classified as having hearing problems and not appreciating native americans 07:23:02 disabilities 07:23:37 My friend's uncle or somebody (some relative) calls tomatoes redskins 07:23:45 Or called. He may have died 07:23:47 trying to remember more good dreams 07:24:40 I almost remember one but nope :( 07:24:44 I had one dream: I was going to play Dungeons and Dragons, and they had a lot of radio machines and stuff for Dungeons and Dragons that we didn't have the equipment for. 07:25:10 There was different sections in different chapters, a compartment to put audio tapes in, a radio transmitter, a few rooms for puzzlement and some boxes on the bottom to keep creature types in. I was unable to figure out why it didn't work. And then I realized that it needed electricity to keep the creature types in the boxes, so I put batteries in and then the machine(s) worked. 07:25:29 It also had to be connected to a VCR, but the only reason for the VCR was to indicate the amplitudes. The VCR was connected to a TV. The TV had no use, neither did the audio tape compartments. Suddenly I arrived at my grandparents house and the machines were interfering with the TV so I turned it off. 07:26:08 ooh I remembered one but it's kind of not very happy 07:26:22 Does my things ever make any sense to you? 07:26:27 monqy: that is ok, zzo38 yes 07:26:42 so I was at the library with my parents and we were leaving but my mother just ran out to the car and drove off without us and my father just disappeared 07:27:16 I guess I knew my grandmother was at a nearby beach with my sisters so I walked over there to find her 07:28:13 she was sitting at the top of this inflatable slide thing and when I climbed up I found she was wailing about wanting to die and stuff and when I tried to convince her that that was a bad idea and she should take me home instead she stepped and fumbled on the bouncy and laned on a baby and killed it 07:28:18 also she died 07:28:23 both her and the baby 07:29:03 monqy has some internalised issues 07:30:05 pikhq: what if i wrote a haskell binding to fltk....none exist.... 07:30:12 oh darn at least one does 07:30:19 oh but it's unupdated 07:30:28 elliott: Hmmm. 07:30:39 another dream: I was with a friend who isn't really a friend but my parents force me to pretend he is and we were at one of my one of my sisters' school and it was night and my parents were doing some unpacking or packing or something 07:30:47 i haven't even really used fltk but it might be nice I guess???? 07:31:21 he opens this bag of doritos or something and I forget what happens next but then my dad sneaks up and gets all mad about us doing drugs and yells at me and chases me but eventually we go home 07:31:37 monqy: can i be you.... and have dreams.... that you have... 07:31:58 next day, at grandparents house, he tells me we should talk, so i follow him; one of my sisters starts following, but he doesn't want her to follow, so he splashes water in her face and she stops 07:32:32 while going down the hallway he grabs me and takes me into the bathroom then locks the door and strangles me while yelling about what a disappointment I am 07:33:01 so last time i said it i was joking about the internalised issues thing 07:33:59 Someone told me they once had one dream where it ended in credits. 07:34:16 another dream all I remember about it is my dad chased me around the house and shot at me with a rifle 07:34:24 ooh I just remembered another dream 07:34:35 monqy: is your dad nice........ 07:34:42 also does this next dream involve your dad trying to kill you again 07:34:44 he maybe kind of scares me 07:34:46 no 07:34:49 ok good 07:35:27 This is someone else's dream, someone I know personally, and who told me: The doctor asked me if I had been to the moon. I said no. The doctor asked me to prove it. He said he could not help me if I could not prove that I had never been to the moon. 07:35:44 amazing 07:35:51 ok so I'm at a theatre and I leave and then this guy in black with a limo tells me my whole family died and i have to come with him so i did and he takes me to foster care where this foster fother will foster father me and also this girl 07:36:09 How do you prove that you had never been to the moon? What is the best way to do so, if at all? 07:36:56 anyway day ends, I wake up in a bed with him and the girl and it's inferred that he raped us both and I start freaking out a lot and I think "maybe this is a dream" but then I realize it's not a dream because it is too realistic and freak out even more 07:37:08 I run to a phone and try calling for help but the phone is really irc and then i realize it is a dream 07:37:15 i like how your dreams are getting progressively more disturbing. 07:37:20 is this intentional 07:37:23 no 07:37:40 do you need a therapist i have the phone book open 07:38:29 i wish i had cool dreams :( 07:38:31 :( 07:39:44 I realize if a dream is a dream about half the time. Sometimes even when things are illogical, and I do not realized it is illogical and stuff while I am sleeping, I only realized when I woke up. Sometimes I have dream inside of another dream in another dream in another dream. I think once I had a dream where it changed every time I blink. 07:40:16 I've had a few dreams within dreams but I think I forgot them all 07:40:17 oops 07:40:40 I also forgot the specifics in those cases (if there are specifics, that is) 07:42:13 I think in at least two dreams I've been in a hotel made of glass 07:42:38 one of them was in a disconnected nearly-forgotten part the malaria dream 07:42:58 i really really want internet-networked dreams 07:43:08 like you just connect with a program 07:43:13 put on some sort of head thing 07:43:16 Another dream of someone I know personally and who told me: The microwave timer was close to zero and was counting down normally, there was only a few seconds left, yet it never reached zero even in a few minutes. So, I tried to push stop, but it still continued. So, I unplugged it, which also didn't help. So I opened it and then got microwaved and died 07:43:18 everyone clicks go 07:43:21 you put down the computer 07:43:26 and all your brains make up a multiplayer dream together 07:43:32 that would be amazing 07:43:35 and it records it somehow for you??? 07:43:38 but like 07:43:41 you can download plugins 07:43:47 so that when it mixes all your dreams together 07:43:51 it also adds a computer with irc access?? 07:43:58 so you can be even more incoherent than usual 07:44:00 I think I saw a movie about that 07:44:00 it would be so great 07:44:13 I doubt that is possible but you can think about it if you want to. 07:44:31 I remember there were also two other disconnected parts of the chicken/soup dream but i can't remember anything about them other than their existance 07:44:32 ANYTHING IS POSSIBLE 07:44:49 but yeah multiplayer lucid dreams = literally the best? 07:44:54 I think one of them invovled a hotel shop, and the other a theatre 07:44:56 that sounds awesome 07:45:01 think of the sex you could have 07:45:21 oh I remember another dream now 07:45:25 if i ever become a genius neuroscientist-programmer 07:45:39 elliott: If you do, then you can try to make something like that if you want to. 07:45:39 i'm going to make it cut the dream off whenever anyone starts to have sex just to ruin it for about 90 percent of the population 07:45:45 HA HA HA I CONTROL YOU ALL 07:46:01 ONLY CONNOISSEURS CAN EXPERIENCE THE MULTIPLAYER DREAMS 07:46:22 But don't force everyone to use everything if you don't want to do so, and also don't force yourself to control it if it is someone else's copy of the program/equipment 07:46:26 I was back in elementary school but I knew I had already left there or something so maybe there was time travel involved and I was going in the haunted house but then I tripped and these girls jumped out and raped me oops 07:46:38 (these were girls i knew from elementary school oops) 07:46:40 recurring themes in monqy's dreams: 07:46:41 - death 07:46:43 - rape 07:46:48 - skeletons???? 07:46:50 i maybe have problems???? 07:47:02 I think I remembered another dream but then immediately forgot it 07:47:04 oops 07:47:28 oh right 07:47:38 zzo38: I am availablee now, although it is late. 07:47:39 -!- sebbu has joined. 07:47:39 -!- sebbu has quit (Changing host). 07:47:39 -!- sebbu has joined. 07:47:43 *available 07:47:44 it was part of a really big dream that I like entirely forgot 07:48:08 I will be up for a while still in order to pull a move in BlogNomic 07:48:22 coppro: Yes I know it is late. But still, have you read it? I even added some stuff since earlier today 07:48:37 anyway I was in these underground passageways thing and then this ke$ha impostor appears and tries to seduce me but I run away and then her body turns into a spider and she climbs on the walls and chases me and then I run home and tell my irc friends about it (that was part of the dream) 07:49:07 recurring themes in monqy's dreams: 07:49:07 - death 07:49:08 - rape 07:49:08 - skeletons???? 07:49:08 - irc 07:49:15 help 07:49:22 zzo38: can you please link again? 07:49:23 thanks 07:49:46 coppro: OK. https://devlabs.linuxassist.net/projects/texnicard/wiki/Dangelo_Programming_Language Same URL as before, but some additional contents. 07:49:47 monqy: i'm curious did you just realise you have problems now in the course of telling these dreams 07:49:52 it's a lot funnier if the answer is yes so can it be yes 07:49:58 im not sure 07:50:03 maybe yes 07:50:19 i don't really think i have problems but maybe i do 07:50:22 does that make it funnier 07:51:02 oh right and a lot of my dreams involve roadtrips but I think I've forgotten most of those 07:51:17 how many road trips have you been on 07:51:26 like maybe 2 but they were both awful 07:51:50 2 or more 07:52:02 but the big 2 are the probably the reasons i have the dreams 07:52:02 do monkeys usually go on road trips 07:52:27 When reviewing, I realized I had a few dreams involving pokemon in some different ways, at different times. 07:52:29 last summer and the summer before my family dragged me to ohio in a car road trip to be with relatives etc 07:52:35 and I guess I have nightmares about this now 07:52:52 ohio the usa state 07:53:09 for roadtrip length, imagine me starting in california, because that's where i live. 07:53:09 are there other ohios 07:53:33 I dunno maybe 07:53:54 oh you are from califroania THIS XPEXPLAINS EVERYTHING......... 07:54:00 what does it explain help 07:54:15 i don't know aren't people from california meant to be weird isnt that like the tsrereoroeoteotoertoeotosertotsoertype 07:54:22 I dunno 07:54:32 everyone I know is pretty boring 07:54:36 then again I don't know people 07:54:36 so 07:54:40 I had one dream where the driver of a subway train drove backwards because she is a druid. 07:55:27 ... (You drive backwards because you are a druid?) ?? 07:57:06 I'm afraid I'm all out of dreams I remember :( 07:57:10 at least 07:57:14 remember sufficiently to be interesting 07:57:21 or that aren't horrible embarrassing 07:57:39 actually I guess maybe they aren't 07:57:45 but whatever I don't like them 07:58:26 oh I just remembered a really early dream I had 07:58:30 my first nightmare, I think 07:58:35 from when I was a very little kid 07:58:38 it's also amazing 07:58:39 that is good memroises, 07:58:45 im not sogood memroisrsoies, 07:58:45 I had other dreams although some of them are indescribable or have other reasons to don't say, including requiring extremely long description or being too mad to you or something else I don't know 07:59:37 But if you want to, you can review everything I have recorded: http://zzo38computer.cjb.net/misc/weird_dream/dream.txt 07:59:44 monqy are you telling us, 07:59:46 ok so I was visiting my nextdoor neighbors house which was like a mansion in this dream and everything turned black and their dozens of cats turned into alligators/crocodiles/idontrmemenber/help and were in dishwashers and chased me in the dishwashers 07:59:49 oh 07:59:55 wow 08:00:19 a very profound dream 08:01:11 better multiplayer....... 08:01:25 Do you sometimes use the word "help" as if it were a question mark? (I don't know for sure) 08:02:07 were it a question mark I think it would be incorrect in most cases 08:02:10 or at least 08:02:16 incorrect if you're not me???? HELP???? 08:02:36 I just remembered another dumb small dream I had 08:02:44 Maybe in most cases, but maybe not in all cases. 08:02:56 I was in rainbow land and there was this pool of rainbow goo and I touched the rainbow goo and then I melted into rainbow goo 08:03:18 * elliott tries sometihing, 08:03:29 (im trying to write a pogrom) 08:03:32 sometimes I die in dreams and it always feels the same. it actually kind of feels good. melting into the rainbow goo felt like death, if i recall correctly. 08:04:04 it's been a while since I died in a dream though so I forget exactly how it feels 08:05:09 is this how your religious beliefs work 08:05:21 i dont think i have religious belifes 08:05:29 oh 08:05:37 it is just how diyeng feels like in dreams for me?? 08:06:04 sometimes my dreams have afterlives and other weird stuff too 08:09:44 apparently I've also told you guys about the bootleg garfield dream, which i happened to forget until now 08:10:02 dream.txt is very educational 08:10:51 well either that or someone else had the same dream which is real spooky 08:12:49 probably pretty common to have the same dream as someone else at some time 08:15:44 apparently I've also previously described the walking around the world and blue building on a beach one. I found this out by grepping for garfield in the logs, though. 08:16:02 ?pl \x -> signalDisconnect <$> liftIO (widget `on` event $ x) 08:16:03 (signalDisconnect <$>) . liftIO . (widget `on` event) 08:16:40 ?pl \widget event -> fromAddHandler $ fmap signalDisconnect . liftIO . on widget event 08:16:40 ((fromAddHandler . ((fmap signalDisconnect . liftIO) .)) .) . on 08:16:43 aww 08:16:45 ?pl \event -> fromAddHandler $ fmap signalDisconnect . liftIO . on widget event 08:16:46 fromAddHandler . ((fmap signalDisconnect . liftIO) .) . on widget 08:16:49 aww 08:18:51 -!- Taneb has quit (Ping timeout: 260 seconds). 08:22:07 monqy: Most likely, I have recorded it when you have typed it somewhere that I have read it. Although it is also possible someone else has the same dream. 08:22:24 But it would seem unlikely that to be the case. 08:22:25 zzo38: i found it in the logs. i must have just forgotten describing it 08:23:10 the thing about using a phone and the phone being irc was also me, apparently. I was describing just the ending of the dream in which my family died and then I got raped 08:24:23 The file does have stuff that isn't yours, though. So you can read that other kind of stuff too! 08:24:46 it's great i bookmarked it 08:24:47 Some of it are attempts to describe my own dream. 08:29:41 -!- Taneb has joined. 08:30:12 I remember in at least one of my dreams I figured out it was a dream and tried convincing everyone else in the dream that it was a dream but they didn't listen, which frustrated me. 08:31:48 hmm oh dear.... 08:32:11 pikhq: that FLTK idea sounds good :-P 08:32:23 gtk is doing bad things :( 08:34:32 elliott: what was that esolang you're designing called? it's scrolled past the end of my scrollback, which is pretty long 08:34:52 ais523: jonny something f asterisk asterisk k 08:35:17 My name is Johny, what the F**K????? 08:35:37 ah, that's it 08:37:05 monqy: That happened to me too once where I figured out it is a dream and the other people did not believe me 08:38:26 Do you know how to encode Fermat's Last Theorem into Typographical Number Theory? 08:44:00 ugh, this is supremely ugly 08:44:59 Did you know your messages can even be received in the middle of a WHOIS response? 08:47:13 -!- zzo38 has quit (Quit: I think I will rest now. I have to rest too.). 09:01:07 ?pl fmap . const 09:01:08 fmap . const 09:01:49 (<$)? 09:02:00 :t fmap . const 09:02:01 forall a b (f :: * -> *). (Functor f) => b -> f a -> f b 09:02:03 :t (<$) 09:02:05 forall a (f :: * -> *) b. (Functor f) => a -> f b -> f a 09:03:27 (how did i remember that i've never even used the function) 09:09:15 wow there is something fucked about this 09:09:25 how is it this slow 09:09:35 help 09:13:44 wha 09:13:44 t 09:14:03 He is being accosted by ninjae 09:15:58 i do not know how to help so i need help helping help 09:20:10 ?undo \m ps -> do x <- m; set ps x; return x 09:20:10 \ m ps -> m >>= \ x -> set ps x >> return x 09:20:13 ?. pl undo \m ps -> do x <- m; set ps x; return x 09:20:14 (. flip (ap . ((>>) .) . set) return) . (>>=) 09:20:15 meh 09:20:25 ?. pl undo \m ps -> do x <- m; set x ps; return x 09:20:26 (. flip (ap . ((>>) .) . flip set) return) . (>>=) 09:20:28 meh 09:35:44 -!- itidus21 has joined. 09:35:54 eek, now there's two of 'im 09:36:23 -!- itidus20 has quit (Ping timeout: 240 seconds). 09:36:56 src/CRUD.hs:10:18: 09:36:56 Could not find module `Data.Map': 09:36:56 It is a member of the hidden package `containers-0.4.0.0'. 09:36:56 Perhaps you need to add `containers' to the build-depends in your .cabal file. 09:36:56 Use -v to see a list of the files searched for. 09:36:57 ugh 09:37:25 crud.hs 09:44:28 Gotta love containers eh 09:47:44 -!- yorick has quit (Ping timeout: 240 seconds). 09:48:05 -!- yorick has joined. 09:50:08 Well, my MIBBLII programming is getting better 09:50:28 -!- ais523 has quit (Remote host closed the connection). 09:51:17 I now end up with λnfx.f(nx) when I try to do a successor function rather than λnfx.f x (f (f x)) 09:55:39 Deewiant: It's not really containers' fault 09:55:44 Deewiant: It's the cabal file being wrong 09:56:00 I mean, I get that they're example programs and not part of the library, but if they build automatically they should have their dependencies in roder 09:56:01 order 09:56:52 It's missing some other files too 09:59:19 -!- monqy has quit (Quit: hello). 10:01:15 -!- FireyFly has joined. 10:04:00 Gotcha! 10:04:22 +,[[++-]+] is the church-numeral succ function in MIBBLLII! 10:07:58 -!- PatashuWarg has joined. 10:18:00 -!- FireyFly has changed nick to FireFly. 10:18:28 :t map Just 10:18:29 forall a. [a] -> [Maybe a] 10:22:10 :t fmap pure 10:22:11 forall a (f :: * -> *) (f1 :: * -> *). (Applicative f, Functor f1) => f1 a -> f1 (f a) 10:22:14 coppro: GeneralisedTFY 10:22:24 lambdabot: you should really omit the kind signatures, they're noisy 10:22:53 elliott: what. 10:24:03 > fmap pure [0,9,0] :: [Maybe Int] 10:24:04 [Just 0,Just 9,Just 0] 10:24:08 coppro: I generalised that for you. 10:24:13 elliott: ah, thanks 10:24:29 coppro: Disclaimer: Generalisation may not necessarily be a good idea. :p 10:24:45 I am somehow now regretting uninstalling Internet Explorere 10:25:16 elliott: lies 10:25:36 Taneb: I doubt you actually uninstalled it 10:25:42 You might have removed a shortcut or two :P 10:25:48 (Uninstalling IE is somewhat painful) 10:25:56 how goes our freenode GRF 10:26:03 The new system isn't up yet, is it? 10:26:06 dunno 10:26:16 why would I bother caring about that? 10:26:25 Because you're asking questions about it? 10:26:32 No, I uninstalled it 10:26:47 Taneb: You really didn't, unless your Windows Explorer also doesn't work. 10:27:05 Fully uninstalling IE involves ripping about five DLLs out of the Windows folder at the very least 10:27:23 The "uninstallation" mechanism provided by the add/remove OS features dialogue just removes the shortcuts 10:27:28 > let r = "re" ++ r in "Internet Explo" ++ r 10:27:30 "Internet Explorererererererererererererererererererererererererererererere... 10:27:36 And maybe iexplore.exe, but that's just a thin shell around the DLL. 10:28:04 -!- BeholdMyGlory has joined. 10:28:31 i think www.ubuntu.com has an internet explorer deinstaller 10:29:28 -!- Taneb has quit (Remote host closed the connection). 10:35:31 -!- Taneb has joined. 10:35:51 Opera installer: only needs Opera closed, takes seconds. 10:36:12 Opera browser: Ugly, bloated piece of shit 10:36:16 IE installer: needs a whole bunch of things close, makes IRC crash, takes ages, and needs me to restart 10:36:31 IE browser: Ugly, bloated piece of shit 10:36:34 WINNER? 10:36:36 OPERA 10:36:46 *shrug* I use Chrome. 10:36:52 I just like to keep my options open 10:37:05 Chrome browser: Google's last step to sentience 10:37:17 ASSIMILATE 10:37:55 > let a = "a" ++ a in "here comes another chinese earthquake " ++ a 10:37:57 "here comes another chinese earthquake aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... 10:38:03 wait I got them mixed up 10:38:11 > let br = "br" ++ br in "here comes another chinese earthquake " ++ br 10:38:13 "here comes another chinese earthquake brbrbrbrbrbrbrbrbrbrbrbrbrbrbrbrbrbr... 10:38:17 much better 10:38:33 Don't you mean "bl" 10:38:33 ? 10:38:57 Sorry, #not-math is rubbing off on me 10:39:01 racist 10:39:17 I don't wear much lace, as it happens 10:39:24 * NihilistDandy is on a lorr 10:40:00 I'm done now 10:40:25 Firefox installer: really good 10:40:39 Also, firefox.org is spam 10:40:44 Don't visit it 10:41:13 But I'm so tempted now 10:41:17 Isn't not-math terrible 10:41:24 I forget which one Quadrescence has his little band of idiots in 10:41:39 elliott: Sort of, yes. And Quadrescence doesn't seem to talk much 10:42:02 Libster? dixon? 10:42:09 Yeah, Libster's there 10:42:14 I kinda like CESSMASTER 10:42:21 He's a masshole, and we talk about New England 10:42:27 k ima win blognomic this week 10:42:36 Yeah, Libster is the guy who trolled weakly here for about three days and then got banned after he decided to spam. 10:43:01 dixon was banned for clogging up the channel with bullshit and harrassment with Quadrescence for an entire day... and CESSMASTER's been here, but I don't think for very long or anything. 10:43:27 thermopylae's kind of an asshole, too 10:43:41 Don't know that name. But I think I'll avoid the place. :p 10:43:45 Or rather, he claims to find me insufferable, so that's my natural reaction 10:43:52 He also hangs out in #math 10:43:58 He's some sort of professor or something 10:44:33 Is #math terrible because it lacks TRWBW or good because it lacks TRWBW, I know absolutely nothing about them other than that they're controversial 10:44:40 oklopol likes him, I seem to recall coppro having an opinion on him 10:45:29 TRWBW? 10:45:29 #math is terrible for having had TRWBW at all 10:45:44 cheater__: So he's as unto an immaculate god, then. 10:46:33 elliott: i think #python aspies::TRWBW == golden paint :: mother lode 10:46:41 -!- GreaseMonkey has quit (Quit: The Other Game). 10:47:36 It is quite remarkable how far along the path to decency a person could get just by taking the opposite of whatever you say. I guess it has to be restricted to the few coherent statements, or that's not really well-defined. 10:48:30 lol 10:48:37 but is it then provably closed under multiplication? 10:49:15 Depends how multiplication's defined in the group, I suppose. 10:49:49 it's pretty much x (DACHGESCHOSS) y 10:50:20 Then yes, I think the proof is obvious, and I leave it as an exercise for the reader. 10:51:56 ah, how applicative of you. 11:33:00 -!- boily has joined. 11:38:36 I HAVE A WORKING MIBBLLII CAT PROGRAM! 11:38:38 ,[<>][,[<>]] 11:41:50 * elliott briefly considers tempting copumpkin into optimising something to unsafeCoerce; decides to not Summon the Beast. 11:42:14 IT'S SO SIMPLE AND ELEGANT 11:50:27 Arrgh, stupid Python data hiding 11:50:42 what's stupid about it 11:50:53 It's doing exactly what I don't want it to 11:53:17 well then it just sounds like it's doing exactly the right thing, modulo being exactly wrong 11:54:39 The bad thing is, what it's doing is exactly right 11:54:58 I want to access a global variable from the middle of a function 11:55:16 and? 11:55:19 what's wrong with that 11:55:27 f = 2 11:55:30 def foo(): 11:55:35 print f # 2 11:56:12 Taneb: "global foo" 11:56:17 put that at the top of the function 11:56:29 python makes no distinction between variable declaration and variable assignment because van rossum is a moron 11:56:34 so there's that instead. 11:57:03 variable declaration in Python? no such thing. 11:57:06 except global. 11:57:16 CakeProphet: yes there is, otherwise no variables would exist. 11:57:23 um, no. 11:57:25 they are simply declared automatically if you try to assign to a variable that does not exist. 11:57:50 (where "exist" means "exist in this scope") 11:57:58 (whereas reading a variable automatically ascends scopes because lol python) 11:58:03 I don't really see how that is a meaningful declaration, but okay, that's fine. 11:58:44 so I can "declare" variables at runtime in Python, I guess? 11:58:52 Thanks, people 11:58:55 Got it working 11:59:05 CakeProphet: more or less everything in Python happens at runtim 11:59:05 e 11:59:28 ..yes... I know how that works. I am just fuzzy on what it means to declare a variable then. 11:59:34 if it apparently means nothing in the case of Python. 11:59:38 s/declare/create/, if it makes you happier 11:59:48 yes, that does. 11:59:51 "inserting into a hash table", if you want to think about things from an implementation point of view 11:59:54 I think of a declaration as a static thing. 12:00:37 to catch typos and related errors statically instead of at runtime. 12:00:45 -!- itidus21 has changed nick to itidus20. 12:00:51 type errors as well, in the case of static typed languages. 12:01:49 that's a very dynamic-language pov. 12:02:04 elliott: actually I think local variables are stored in an array and the compilation stage transforms local variables into indexes? 12:02:08 admittedly, so is the idea of declaring at runtime, but I was simply analogising there because Python is a clusterfuck 12:02:35 CakeProphet: indeed, the "implementation point of view" (i.e. don't tell me what it does, just tell me how it does it) is rarely how things actually happen. 12:02:57 see also: C is a bad fit for current CPUs 12:03:00 that sounds counterintuitive to me, but okay. 12:03:10 brb 12:03:12 well, it is; it's a bad way to view things 12:03:18 since it's the... implemtnation point of view. I would expect it to reflect the, uh, implementation. 12:03:46 maybe there's the "right implementation point of view, and the wrong ones. :P 12:04:13 Well, if you really want to know How It Works, you need to start studying microcode. 12:04:16 -!- Phantom_Hoover has joined. 12:04:28 no not necessarily on the lowest level. 12:04:44 it's a good idea to know what's going on a layer below though, whatever that means. 12:04:45 Then accept the hashtable explanation as an abstraction. :p 12:07:16 I wonder what would happen if Java added a dynamic keyword 12:07:20 for dynamic typing. 12:08:00 it's called Object 12:08:18 well, kind of. 12:08:35 You just need to say "dictionary" instead of "hashtable" and then it immediately sounds more abstract. 12:08:36 it will statically error if you try to access a method that is not declared as part of Object, I believe? 12:08:56 er is method dispatch a runtime error in Java? Can't recall. 12:09:09 CakeProphet: ((Foo)obj).x() 12:09:21 If you want duck typing then you need reflection, I think. 12:09:27 Back 12:09:30 Why you'd want such a thing I can't fathom. 12:09:38 I've had a thought 12:09:41 you just need laxer compile time errors for duck typing. 12:09:54 Another "dynamic" view of the world. 12:09:59 ...well, right. 12:10:07 if we are talking about dynamic language constructs 12:10:08 Type errors and the like aren't additional checks that you can just remove and have everything work out. :p 12:10:09 this is a good view to use. 12:10:16 Combinaroty logic is like a program followed by input, which returns another program and input, which is then executed 12:10:17 (Otherwise you couldn't do any sort of optimisation based on static guarantees.) 12:10:21 And Java is a static language, so. 12:10:37 yeah I wasn't saying it was practical from an implemtnation point of view. 12:10:42 spelled correctly. 12:10:52 Right. 12:11:50 Haskell allows Dynamic by actually making it statically typed, so that it can still optimize, though not as much? 12:12:05 That, um. No. 12:12:21 so Dynamic is literally dynamic typing? 12:12:22 Dynamic is basically (void *) bundled with run-time type information. 12:12:31 (as provided by Typeable) 12:12:40 I thought it was an Typeable existential 12:12:41 So for instance 12:12:41 fromDyn (Dynamic t v) def 12:12:41 | typeOf def == t = unsafeCoerce v 12:12:41 | otherwise = def 12:12:49 CakeProphet: No. data Dynamic = Dynamic TypeRep Obj 12:13:01 ah. 12:13:36 right so 12:13:36 Oh, where Obj is 12:13:39 type Obj = Any 12:13:50 which is just a type that can hold any algebraic data-type value. 12:13:55 (Or can it hold non-ADT things too? Maybe? I forget.) 12:14:09 wouldn't it need to be part of Typeable or something? 12:14:18 CakeProphet: What would need to be part of Typeable? 12:14:23 Obj 12:14:41 No. 12:14:46 Any is just an opaque value. 12:14:54 You can only get things in and out with unsafeCoerce. 12:14:55 :t Dynamic 12:14:56 Not in scope: data constructor `Dynamic' 12:15:03 Dynamic is not a constructor. 12:15:13 :t toDyn 12:15:14 forall a. (Typeable a) => a -> Dynamic 12:15:41 The Typeable constraint is because of the requirement for a TypeRep, of course. 12:15:45 uh.. then what are you talking about. :P 12:15:48 Without which Dynamic would not be able to do the checks that make it safe. 12:15:59 CakeProphet: What do you mean? 12:15:59 how did you get this constructor that doesn't exist. 12:16:10 Well, it's not an /exposed/ constructor. 12:16:19 I was providing the implementation details you were interested in. 12:16:26 It isn't part of the API. 12:16:28 ah okay, thus why you can't give Any an actual type. got it. 12:16:37 Any _is_ an actual type. 12:16:39 It's in GHC.Prim. 12:17:01 > 1 :: GHC.Prim.Any 12:17:02 Not in scope: type constructor or class `GHC.Prim.Any' 12:17:10 lambdabot does not let you access such modules. 12:17:18 Anyway, there is no instance for Num Any. 12:18:03 nothing in GHC.Prim's docs about Any 12:18:17 I beg to differ. 12:18:19 are you sure you're not making stuff up? :P 12:18:46 http://www.haskell.org/ghc/docs/7.0.3/html/libraries/ghc-prim-0.2.0.0/GHC-Prim.html#t:Any 12:18:59 If lambdabot let you access GHC.Prim, then you could do all sorts of bad things. 12:19:08 Well, maybe not without MagicHash. 12:19:12 But it'd be stupid. 12:20:06 (Oh, and Any does not actually have one type argument as given there; nor is it a data-type. That's a limitation of the tool used to generate the fake Haddock source file.) 12:20:51 ... 12:21:06 CakeProphet: What? 12:21:17 what is it then? 12:21:25 An internal type. 12:21:32 There's a reason the module is called GHC.Prim. 12:22:25 so it still has a "constructor" right? 12:22:58 No. 12:23:05 It is not a data-type. 12:23:10 It is also not a type synonym; it is just a type. 12:23:26 The only way to get an Any value is with an unsafe coercion. 12:23:34 (Which is actually safe.) 12:23:42 so Dynamic requires unsafe coercion? 12:23:57 Yes. 12:24:04 It is, of course, totally safe. 12:24:14 so what is the purpose of Any then? 12:24:31 type Obj = Any 12:24:31 data Dynamic = Dynamic TypeRep Obj 12:24:31 What would Dynamic look like without Obj? 12:24:31 Any a = anything? 12:24:35 And thus without Any? 12:24:38 CakeProphet: There is no a argument. 12:24:40 (Oh, and Any does not actually have one type argument as given there; nor is it a data-type. That's a limitation of the tool used to generate the fake Haddock source file.) 12:25:22 Dynamic forall a. TypeRep a 12:25:33 or however forall works in a constructor declaration... 12:25:45 forall a. Dynamic TypeRep a looks nicer to me 12:26:39 CakeProphet: Not safe. 12:27:04 See the guarantees at http://www.haskell.org/ghc/docs/7.0.3/html/libraries/ghc-prim-0.2.0.0/GHC-Prim.html#v:unsafeCoerce-35-; also this comment in Data.Dynamic's source: 12:27:09 -- Use GHC's primitive 'Any' type to hold the dynamically typed value. 12:27:09 -- 12:27:09 -- In GHC's new eval/apply execution model this type must not look 12:27:09 -- like a data type. If it did, GHC would use the constructor convention 12:27:09 -- when evaluating it, and this will go wrong if the object is really a 12:27:11 -- function. Using Any forces GHC to use 12:27:13 -- a fallback convention for evaluating it that works for all types. 12:28:11 (I'm not sure that definition will break in practice, but it's certainly not guaranteed to work by unsafeCoerce's stringent list of safe uses, and I would expect the runtime representation to be less necessarily predictable in the long-term than with Any.) 12:31:01 "the constructor convention"? 12:32:14 Deewiant: "Other uses of unsafeCoerce# are undefined. In particular, you should not use unsafeCoerce# to cast a T to an algebraic data type D, unless T is also an algebraic data type. For example, do not cast Int->Int to Bool, even if you later cast that Bool back to Int->Int before applying it. The reasons have to do with GHC's internal representation details (for the congnoscenti, data values can be 12:32:15 entered but function closures cannot). If you want a safe type to cast things to, use Any, which is not an algebraic data type." 12:32:22 Deewiant: Beyond that, beats me; I'm no expert on GHC's evaluation model. 12:33:14 Right, that just pretty much restates the same thing. 12:33:31 Deewiant: Well, you now know it involves entering. 12:33:50 Yes, I suppose that's quite an improvement. 12:35:07 Breaking and entering. 12:36:25 more like an entering and breaking I would say. 12:37:19 question 12:37:34 is this safe: unsafeCoerce (typeRef, x) :: Dynamic 12:37:50 Even if Vorpal hadn't talked much this year at all, 2008-now still means 2008-2010 accounts for well over three fourths. But here's 2011-only for you if you like to see yourself talk a lot, http://zem.fi/~fis/foo2.png <-- err, looks like I'm number 2 in that graph? Yet you said I hadn't talked much? 12:38:23 Vorpal: Later graphs diminished that a lot more recently. 12:38:29 elliott, ah 12:38:34 yeah I have been busy 12:38:40 I was the one saying you haven't been talking, though. 12:39:10 oh fine that's cool just don't list me. 12:39:13 I'm not important. 12:39:28 * CakeProphet cries alone. ;_; 12:39:31 Right; I just assumed so for the sake of the argument; thus, "if you hadn't talked". 12:40:27 It only lists top 8, due to not actually having any more specified colors. 12:40:56 ?src [] (<*>) 12:40:56 (<*>) = ap 12:40:57 guess I will have to be more active to not drop off the chart 12:41:02 Hmph. 12:43:01 (f :- fs) <*> (x :- xs) = f x :- (vecSizeIsNat xs $ vecSizeIsNat fs $ fs <*> xs) 12:43:02 So ugly. 12:43:11 * CakeProphet sulks over fizzie not allowing him to have arbitrary metric by which to compare himself to other people and promptly creates a Wikipedia account. 12:43:26 Vorpal: When counting the number of characters (as opposed of lines) in http://zem.fi/~fis/foo3rc.png you are no longer #2; ais523 and oerjan pass you. Still, #4 is perfectly respectable too. (That one's for 2011 too.) 12:44:20 I have one script that just exports the activity data into a .json file; was going to protovis out something more customizable, but haven't had the time. 12:44:48 you should use YAML instead of JSON 12:44:53 because it, uh, makes more sense to do that! 12:44:57 yeah!!! 12:45:46 When using a JavaScript-based visualization tool? Uh, sure. 12:45:52 I think fizzie is having a breakdown. 12:45:54 I mean CakeProphet. 12:46:05 nah, that was a few days ago. 12:46:10 this is post-breakdown. 12:46:56 YAML is better if you intend the files to be human-edited, I guess. JSON is probably a better choice otherwise. 12:48:21 but we all know that Python's pickle format is the best data serialization format of all and should be used in all situations regardless of application, environment, or language. 12:50:57 That's a tough pickle. 12:51:38 OH HO HO HO HO. I must put on my monocle for this. 12:51:55 "1562 J. Heywood Dialogue Prouerbes Eng. Tounge (new ed.) in Wks. sig. Uiii, Man is brickell. Freilties pickell. Poudreth mickell, Seasonyng lickell. [The exact sense in quot. 1562 is unclear.]" Well, you don't say. 12:51:58 apparently JSON is a subset of YAML 1.2 12:52:32 the inline-style of YAML is the same syntax as JSON, but if you have newlines and intents in a JSON file it would probably parse incorrectly in YAML. 12:52:37 *indents 12:53:09 So by subset you mean not a subset. 12:53:31 JSON syntax is a subset of YAML version 1.2, which was promulgated with the express purpose of bringing YAML "into compliance with JSON as an official subset."[7] Though prior versions of YAML were not strictly compatible,[8] the discrepancies were rarely noticeable and most JSON documents can be parsed by YAML parsers. 12:53:38 Sounds to me like it should be a proper subset, including with whitespace and the like. 12:55:07 yes I mean pseudoquasisubset 12:55:42 oh okay, it is a subset. 12:55:55 I don't really see how that works but okay. 12:56:06 How would it not? 12:58:33 well if the JSON document contained newlines and indentations wouldn't the YAML parser interpret those as hierarchial structures? 12:58:46 So 12:58:47 Phantom_Hoover: You have 6 new messages. '/msg lambdabot @messages' to read them. 12:58:48 Not inside of {}s or []s, one presumes 12:58:51 Mouse update. 12:58:52 Those are inline syntax 12:58:58 ah, right. 12:59:05 The containment zone has been breached. 12:59:07 There is 12:59:08 Phantom_Hoover: : ( 12:59:09 a moose 12:59:10 loose 12:59:11 aboot 12:59:12 aboot 12:59:13 the hoose 12:59:13 this 12:59:15 ho 12:59:16 yes 12:59:17 ok 12:59:20 lol 12:59:54 fizzie: so you are in fact using YAML. WHERE IS YOUR GOD NOW? 13:02:44 I think I'll put in some mappings with non-unique keys just to make sure it's definitely not valid YAML. ("JSON's RFC4627 requires that mappings keys merely “SHOULD” be unique, while YAML insists they “MUST” be.") 13:03:06 So it's not a subset :) 13:03:43 Their reading is that "Technically, YAML therefore complies with the JSON spec, choosing to treat duplicates as an error. In practice, since JSON is silent on the semantics of such duplicates, the only portable JSON files are those with unique keys, which are therefore valid YAML files." 13:03:47 I'm not sure it makes much sense. 13:04:44 So you can reject things violating SHOULDs now? 13:05:02 "SHOULD: This word -- mean that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood and carefully weighed before choosing a different course." Well, I've carefully weighed the full implications of accidentally using YAML, and decided that I must ignore the item, since I see no other way to make the JSON non-YAML. 13:05:02 Sweet, mcmap becomes invalid every time I forget to fix a stupid fucking warning. 13:05:24 -Werror whee 13:05:46 I should finish that anonymous entity tracking, six days late. 13:06:03 Oh, it had a deadline? 13:07:34 IEEE Spectrum: "Photon Recycling Boosts Solar Cell Efficiency" -- remember to recycle all the photons you use at home. 13:07:43 there is apparently a json2yaml 13:08:22 json2yaml = print =<< getContents 13:08:25 I'm sure you should get at least five or so uses out of a good-quality photon. 13:08:29 json2yaml = putStr =<< getContents 13:08:30 actually 13:08:44 though to be proper you would want to remove those duplicate keys. 13:11:11 Oh, it had a deadline? 13:11:17 Well, I started work on it with the intention of finishing it at the same time. 13:15:06 fizzie, photon recycling? 13:15:13 what on earth is it really 13:16:29 fizzie, was it you who said braid had no replay value btw? 13:16:45 Vorpal: I didn't look at the details, but they seem to bounce some photons around for a second round or something as intuitive. 13:16:52 not strictly true, turns out there are two different endings. One is insanely hard to get though. 13:17:36 Vorpal: And yes, I've done both, although admittedly I had to look at some guide-dang-its for the other one. 13:18:08 Vorpal: Incidentally, obligatory Assembly 2011 main-hall panorama, http://users.ics.tkk.fi/htkallas/20110805_001-007.jpg 13:18:15 fizzie, yeah I found one star on my own, then went like "wtf". I would never have spotted the one that involved waiting for that slow cloud... 13:18:57 The one that's done by manipulating the puzzle pieces was a bit annoying, I had already locked those things during the first play-through. 13:18:58 So is Braid's supposed nuclear bomb metaphor thing heavy-handed because I might just skip it if it is. 13:19:01 fizzie, nice. Reminds I have photos for a pano on my camera that I need to transfer to my computer... 13:19:06 fizzie, same 13:19:16 "A California start-up's photovoltaic device generates every bit of energy it can from the sun's rays, by sending light particles that reform from electron-hole pairs for a second pass. The photon-recycling maneuver has yielded a solar cell array that is 28.2 percent efficient--the best solar-to-electrical-energy conversion rate ever produced." 13:19:24 note: that pano was hand held. In rain. 13:19:27 fizzie: Is that lighting arrangement healthy. :p 13:19:28 no way to tell if it will work out 13:19:33 (At Assembluh.) 13:19:38 So is Braid's supposed nuclear bomb metaphor thing heavy-handed because I might just skip it if it is. 13:19:43 So is Braid's supposed nuclear bomb metaphor thing heavy-handed because I might just skip it if it is. <-- is that official? 13:19:49 Vorpal: I think so. 13:19:55 It's a really, really, reeeeaaaalllly hard-to-find easter egg and a quote at the end. 13:20:22 well doing pano stitching will pass the time when I wait for that guide-dangit cloud 13:20:55 I think on my first attempt I managed to miss the cloud. (Wasn't actively using the computer.) 13:21:28 Really hard-to-find as in to get it you need to find 3 completely unmarked and unadvertised stars, one of which requires you to wait for about an hour for no reason in a particular spot, then on the final level there's a more-or-less explicit acknowledgement of the metaphor. 13:21:30 fizzie, you could reverse time at 8x 13:21:35 fizzie, so not a major issue 13:21:36 fizzie: OK DON'T ANSWER ME FINE 13:21:55 Phantom_Hoover: Nice. 13:22:13 "Blow designed the game as a personal critique of contemporary trends in game development." 13:22:19 This guy is the funniest asshole. 13:22:29 I really should try to figure out how to get auto mounting usb devices to work when not using a graphical login manager... I guess it is some consolekit crap or such 13:22:41 How can I criticise things.... I know, I'll make a game you can go back in time in! 13:23:12 The final world is labeled simply as "1." In this world, time flows in reverse. Rewinding time returns the flow of time to its normal state.[17] 13:23:15 Phantom_Hoover: OK how does that actually work. 13:23:18 Do things just walk backwards. 13:23:25 elliott, dunno, getting there is a major undertaking. 13:23:33 I can't be bothered to try. 13:23:39 Well, at the moment. 13:23:56 elliott, even if the developer is an asshole (I haven't checked out what he said) the game is quite fun to play IMO. 13:24:49 also, very little "redo the entire level when failing" since you can just press shift to go back in time a few seconds and try again. (Except in a few places) 13:25:12 Phantom_Hoover: I thought you'd beaten it. 13:25:34 Vorpal, erm, most of the later levels have time shenanigans in them. 13:25:37 "The final level, in which everything but Tim moves in reverse, depicts the princess escaping from a knight, and working together with Tim to surpass obstacles and meet at her home. Tim is suddenly locked out of the house, and, as time progresses forward, reversing Tim's actions, the events show the princess running from Tim, setting traps that he is able to evade, until she is rescued by the knight. T 13:25:37 im is revealed to be the "monster" the princess is running from." 13:25:40 elliott, nah, just read about it. 13:25:41 OK so it's just a cheat. 13:25:58 Dude. 13:26:04 You just posted spoilers in the channel. 13:26:10 That is... very dickish. 13:26:18 Vorpal, erm, most of the later levels have time shenanigans in them. <-- you mean the green glow? 13:26:43 Also the purple glow. 13:27:13 Phantom_Hoover, the purple glow don't usually require restarting the entire level, just some double-shifting 13:27:22 Phantom_Hoover: It's... spoilers for a deliberate non-plot. 13:27:52 It's an art game; any discussion of it counts as a spoiler. 13:28:04 elliott, it is spoiler for a puzzle 13:28:14 hm 13:28:18 not much though 13:28:25 Not... really? It doesn't tell you what to do. 13:28:38 true 13:31:01 Repeated note to self: Seriously, don't become a "game dev". 13:31:08 you know how google sometimes put a list of topics on a site below a search result? Tends to be about 4-6 usually... This one had 12. Never seen as many 13:31:15 (googled for "ufraw") 13:31:22 (without quotes) 13:31:37 Additional note to self: Seriously. 13:31:53 blergh the manual on the website is outdated... 13:32:02 HAVE I SAID SERIOUSLY ENOUGH TIMES 13:32:10 Also fizzie do they actually have lights in that Assembly room. 13:32:35 Sowwy, I was busy unsuccessfully trying to web-purchase a thing. 13:32:45 Yes, they have lights; the lights are on when the "loading doors" are open. 13:32:58 Makes it easier to set up things without a flashlight. 13:34:03 -!- Taneb has quit (Read error: Connection reset by peer). 13:35:17 -!- MSleep has changed nick to MDude. 13:47:19 -!- Taneb has joined. 13:47:22 Hello! 13:55:17 elliott: Hey, tup person: is there a simple "delete all generated files" kind of thing? 13:55:32 Is my assumption that a combinatory logic program is like a short program followed by a series of input, which returns a program and input, which is then executed? 13:55:36 At all correct 13:56:46 not as far as I can tell... 13:57:13 but then again I don't formally know what combinatory logic is. I've only been introduced to it through Haskell. 13:58:54 Taneb, what? 13:58:56 Erm. 13:59:14 Are you talking about Lazy K-style stuff? 14:00:14 Deewiant: You're not meant to do that :-) 14:00:45 Deewiant: Such a thing would be easy to add unless I'm missing something, it just hasn't been done 14:00:50 But you're not meant to do that anyway :-P 14:01:14 Why not 14:01:15 (Cluttering directories is of course a pain, but that's why the variant things are coming so it can be isolated to a build/ directory or similar.) 14:01:24 Right :-)p 14:01:30 Deewiant: Because it's unnecessary 14:01:35 :-p* 14:01:50 "make clean" is often required because not every dependency is tracked, e.g. configuration dependencies or the like. 14:01:59 Obviously that doesn't apply here 14:02:09 -!- sebbu has quit (Read error: Connection reset by peer). 14:02:13 But yeah, my use of tup for Real Stuff is currently blocked on variants coming 14:02:21 Apparently it's the next major feature coming, so I'm just being patient 14:02:27 Yes, I was hoping for an intermediate measure while build directories aren't feasible 14:02:42 Gotta go -> 14:02:46 -!- sebbu has joined. 14:02:47 -!- sebbu has quit (Changing host). 14:02:47 -!- sebbu has joined. 14:02:55 Deewiant: What are you using/thinking about using/using as a test-case to prove that tup sucks it for? 14:03:01 Wow that sentence is a bad parser. 14:05:23 Phantom Hoover: possibly 14:08:04 according to the esolang wiki page 14:08:06 Taneb, dude, use tab completion. 14:08:21 This client is awful 14:08:25 ?src foldl 14:08:26 foldl f z [] = z 14:08:26 foldl f z (x:xs) = foldl f (f z x) xs 14:08:32 Then... why are you using it/ 14:08:48 ?src foldl' 14:08:48 foldl' f a [] = a 14:08:49 foldl' f a (x:xs) = let a' = f a x in a' `seq` foldl' f a' xs 14:09:00 Because I'm about to change client 14:09:36 I x = K x y = x; S x y z = x z(y z); the only confusing part here is what x z(y z) can equate to 14:10:01 Taneb readies himself for the incredible journey that is changing clients. 14:10:12 itidus20, what's not to understand? 14:10:46 heh.. you're asking that question to the wrong person. 14:11:05 first of all it appears that I wants one operand, K wants 2 operands, S wants 3 operands 14:11:12 Untrue. 14:11:19 Sxyz is sugar for ((Sx)y)z. 14:11:41 and what is (Sx)? :D 14:11:43 It is just tree rewriting; (SK)I reduces to (SK)I because it does not fit the form Ix, (Kx)y or ((Sx)y)z for any x, y, or z. 14:12:01 Anything that doesn't fit one of those three patterns is simply left unreduce. 14:12:01 d. 14:12:20 nevermind.. i am nowhere near understanding it :D 14:13:40 well... i will figure it out in my own time 14:14:44 -!- Taneb_ has joined. 14:14:59 Phantom_Hoover, this client appears decent 14:15:06 -!- Taneb has quit (Quit: using sirc version 2.211+ssfe). 14:15:13 -!- Taneb_ has changed nick to Taneb. 14:15:38 -!- copumpkin has quit (Quit: Computer has gone to sleep.). 14:16:43 That's the client like everyone uses/ 14:17:02 Nobody told me! 14:18:49 itidus20: you can think of it as string rewriting. 14:18:52 except... with trees. 14:19:01 Tree rewriting 14:19:40 Identity "test" = "test"; Konstant "test" "two" = "test" :D 14:19:42 itidus20, go read Homestuck it is the best thing. 14:19:51 I concur 14:20:04 What are you doing this is immoral. 14:20:21 Application "test" "two" "three" = "test" "two" ("test" "three") 14:20:41 elliott, it is immortal. 14:21:08 I read all of the Homestucks. All of them. 14:21:21 I also read all the Problem Sleuths 14:21:52 you can't really appreciate Problem Sleuth unless you read it in a very hard-boiled manner. 14:22:18 I read Problem Sleuth in the most hard-boiled manner of all. 14:22:29 dude. 14:22:29 I read it in an egy thign [sic] 14:23:46 CakeProphet, I remember getting you to read PS. 14:23:57 I as well. 14:24:03 I remember that too IN FACT I REMEMBER GETTING PHANTOM_HOOVER TO READ HOMESTUCK 14:24:10 fizzie, Know any non-tiff format that can handle 16 bits per channel and might be viewable in a browser. 14:24:15 ? 14:24:21 Vorpal: tarag? 14:24:22 targa 14:24:24 I remember conceiving elliott with his mom. 14:24:24 I got both of them via TVTropes. 14:24:26 therefore, I win. 14:24:27 maybe not 14:24:36 TGA files commonly have the extension ".tga" on PC DOS/Windows systems and Mac OS X (older Macintosh systems use the "TPIC" type code). The format can store image data with 8, 16, 24, or 32 bits of precision per pixel[1] – the maximum 24 bits of RGB and an extra 8-bit alpha channel 14:24:37 maybe 14:24:40 elliott, actually, I was bored and I said "hey, I might as well read Homestuck" and then you decided to hijack my attempt because you gave up the last time you tried. 14:24:44 also a simple format?? 14:24:45 but only RLE 14:24:50 targa <-- hm 14:24:54 elliott, would firefox display that? 14:24:55 Phantom_Hoover: No no because you actually asked me whether it was worthwhile. 14:25:00 also what would the file size be 14:25:05 elliott, that's not you telling me to read it. 14:25:05 Did anyone watch Krd Mndoon and the Flaming Sword of Fire? 14:25:06 Vorpal: Find out yourself; and RLE big. 14:25:13 Phantom_Hoover: It is close enough ok shut up die. 14:25:16 elliott, the 8 bit jpeg at 90% quality is 8.5 MB... so 14:25:21 Vorpal: TIAS 14:25:34 ok i see... 14:26:00 elliott, well, krita doesn't handle it as far as I can tell. And gimp doesn't do 16 bits per channel. Oh well. 14:26:13 so you can have S S S S K K K K I I I I 14:26:19 1 bit audio is the best. 14:26:24 elliott, and the deflate compressed tiff is 107 MB 14:26:25 XD 14:26:30 a bit too large to upload 14:26:32 Vorpal: just use graphicsmagick or w/e to convert it 14:26:34 to targa 14:26:37 oh good idea 14:26:37 single pitch, single volume square waves. mmmmm 14:26:44 Vorpal: RLE will probalby... not be better than deflate though 14:27:00 elliott, indeed 14:27:06 CakeProphet, erm, 1-bit would just be single-volume. 14:27:15 elliott, so I guess I'm stuck at uploading a 8-bit tiff 14:27:21 Phantom_Hoover: ah yes, my mistake. 14:27:23 itidus20: that's equivalent to I 14:27:51 heh 14:28:31 don't be fooled into thinking i understand yet 14:28:35 itidus20: use lambdabot and type ap for S, const for K, and id for I. 14:28:44 I don't actually understand 14:28:50 I'm just good at pretending 14:29:05 CakeProphet: Uh. 14:29:08 but any sequence of S or K or I forms a valid combinatory logic 14:29:09 Haskell can't type all valid SKI terms 14:29:10 so that's 14:29:13 probably not a good idea. 14:29:22 itidus20: Yes 14:29:29 elliott: it can't? 14:29:31 yay.. it's fool proof 14:29:37 itidus20: If by combinatory logic you mean combinatory logic expression, yes. 14:29:41 itidus20: But some infinitely loop 14:29:44 itidus20: You forgot parentheses too. 14:29:52 They have to be balanced of course, and contain something. :p 14:29:54 oh yeah 14:29:54 CakeProphet: No. 14:29:58 fizzie, uploading a new pano 14:30:02 CakeProphet: Proof: LC → SKI, LC can't be. 14:30:07 Proof of that: Try typing the Y combinator. 14:30:20 AHA MOUSE 14:30:22 Obviously a newtype wrapper "solves" the issue but your translation won't do that. 14:30:25 Phantom_Hoover: FRIENDS BECOME FRIENDS 14:30:29 Electric Mouse 14:30:42 Still the same mouse? 14:31:07 Oh FFS it's under the sofa again. 14:31:13 Maybe 14:31:19 I can lift all the furniture u 14:31:20 Phantom_Hoover: it "was" under the sofa 14:31:20 p 14:31:27 on strings 14:31:35 Phantom_Hoover: just 14:31:37 put some mouse food 14:31:39 underneath 14:31:42 ok 14:31:44 so that it doesn't die... 14:31:45 i will find some chees 14:31:46 e 14:31:51 it would be sad if it died 14:31:52 :( 14:32:03 fizzie, http://whotookspaz.org/~anmaster/images/2011/2011-08-11_kinapark.jpg 14:32:11 Cornflakes are better 14:32:13 ----------(mouse)t[n]----------------------------------------------------------------------------------------------->(mouse)t[n+1] 14:32:30 Taneb: oh my;y god mouse eating a cofrnflkaejkljdgflkgfghjkhlfdkjgdfgdflkg 14:32:42 Phantom_Hoover: /////////////// 14:32:59 I'm... not sure if we have any cornflakes. 14:33:02 just 14:33:03 Hang on, BRB. 14:33:03 imagine 14:33:04 a mouse 14:33:05 eating 14:33:06 a 14:33:08 corn 14:33:10 flake 14:33:12 flkfjkljf;lkjf 14:33:15 Phantom_Hoover: mice like chocolate 14:33:17 a cornflkfjkljf;lkjf. 14:33:19 elliott: that Perl code evaluates to undef I believe. 14:34:22 Have I mentioned 14:34:24 That once 14:34:28 Our toaster broke down 14:34:31 And when we opened it 14:34:37 There was a dead mouse inside. 14:34:42 An old one, too. 14:34:42 abd you had to use Perl as a replacement? 14:34:43 oh. 14:35:13 was it charcoaled? 14:35:30 toasters tend to get hot every time they're used 14:35:45 * CakeProphet writes this down in his notes. 14:36:24 `addquote toasters tend to get hot every time they're used 14:36:25 581) toasters tend to get hot every time they're used 14:36:34 Phantom_Hoover: OK but are you feeding it, and is the thing you are feeding it a cornflake. 14:36:55 We have no cornflakes. 14:37:41 with the nett effect that it's flesh might have been stripped from it's very bones 14:38:05 Phantom_Hoover: How do you manage to not have cornflakes is it a personal failing. 14:38:09 but that would seem to be asking a bit much from the modest toaster 14:38:12 Phantom_Hoover: and we must breakfast? 14:38:15 Have you given it cheese I need to rate the friendship possibility. 14:38:42 elliott, no I think it's cleverer than that. 14:39:00 It's 14:39:02 It's a mouse, Phantom_Hoover 14:39:22 :t ap (const (ap id id)) (ap (ap (const ap) const) (const (ap id id))) 14:39:23 Occurs check: cannot construct the infinite type: a = a -> b 14:39:24 Probable cause: `id' is applied to too few arguments 14:39:24 In the second argument of `ap', namely `id' 14:39:49 elliott, ARE YOU SURE 14:39:59 :t ap 14:40:00 forall (m :: * -> *) a b. (Monad m) => m (a -> b) -> m a -> m b 14:40:08 Phantom_Hoover: Yes I am 14:40:10 quite sure 14:40:22 elliott, MICE ARE NOT THIS CLEVER 14:40:36 Phantom_Hoover, your toaster must be a large model to be able to fit a mouse 14:40:44 Vorpal: I... 14:40:46 or the mouse must have been unusually small 14:40:47 Have you ever seen a mouse. 14:40:51 elliott, yes. 14:40:52 Or a toaster. 14:40:54 -!- copumpkin has joined. 14:40:57 elliott, yes that too 14:40:58 He's used to giant Swedish mice. 14:41:11 Phantom_Hoover, yeah mutant ones! 14:41:11 Oh wait, Vorpal thinks he's funny by assuming everything is computers. 14:41:19 elliott, what? 14:41:22 elliott, no 14:41:22 Either that or they just have really small toasters in Sweden. 14:41:35 Vorpal: But how do you toast your mice when you want toasted mice. 14:41:37 For really small toast. 14:41:58 The mouse presumably dived in the top and twisted and contorted it's body until it was in the side sections of the toaster 14:42:01 I've seen some mice here that would not fit in a toaster. 14:42:11 and there it sat eating crumbs 14:42:20 until someone came along and cooked some toast 14:42:52 Lovely mental image 14:43:02 perhaps it couldn't escape it's prison.. perhaps it just got trapped at the "wrong time" 14:43:05 itidus20, hm, wouldn't be able to happen in the toaster I have. The holes are small enough that it is hard to even get breadcrumbs to fall out if they get in there... 14:43:11 (stupid design) 14:43:40 well what a way to die 14:44:06 or perhaps it just 14:44:06 my toaster doesn't have very good lambdas. 14:44:09 had a long and happy toaster life 14:44:11 and then died of old age 14:44:12 ????? 14:44:22 it was in a bit where it was shielded from the heat. this is true. 14:44:56 I doubt it was in such a bit 14:44:59 > let x = y = 2 in (x,y) 14:45:00 : parse error on input `=' 14:45:04 wishful thinking. 14:45:22 :t const 14:45:22 forall a b. a -> b -> a 14:45:32 elliott: this is the price of opaque toaster encapsulation 14:46:06 -!- Sgeo has joined. 14:47:50 > let t = const; f = const id; or = t; and = f; not = f t in t or f f or f and 14:47:51 Overlapping instances for GHC.Show.Show (b -> a -> a) 14:47:51 arising from a use... 14:47:58 :t let t = const; f = const id; or = t; and = f; not = f t in t or f f or f and 14:47:59 forall b a. b -> a -> a 14:48:12 beautiful. 14:49:25 > const (const (const (const))))) 14:49:27 : parse error on input `)' 14:49:30 FUCYEIUWFK YOU 14:49:33 > const (const (const const))) 14:49:35 : parse error on input `)' 14:49:37 > const (const (const const)) 14:49:38 Overlapping instances for GHC.Show.Show 14:49:38 (b -> ... 14:50:14 true or true or :) 14:50:48 or, or true or true 14:52:40 or, not not 14:52:54 or, not true or 14:52:56 ...yeah. 14:53:54 oh my bad, it's not not. 14:54:03 as in, not "not not" 14:54:11 man talking about this with English is confusing. 14:56:25 should I feel bad for not understanding combinatory logic? it just seems that when it's entire system can be formally expressed in a few lines then something is askew 14:56:43 i mean how hard can it be 14:56:51 -!- Taneb has quit (Ping timeout: 255 seconds). 14:57:06 It's not really a system of logic, it's just a simple programming language 14:57:16 (With no input or output, admittedly) 14:57:46 You may find its presentation in terms of actual drawings of trees and their reductions simpler; that shows the structure and prevents confusion because of parentheses etc., but I don't have a link. 14:58:04 ah 15:01:21 -!- CakeProphet has quit (Ping timeout: 255 seconds). 15:03:01 -!- CakeProphet has joined. 15:03:01 -!- CakeProphet has quit (Changing host). 15:03:01 -!- CakeProphet has joined. 15:03:10 Vorpal: Nice-looking place; but where is it? 15:03:40 fizzie, a Chinese garden near here. 15:03:46 well, a few hours drive 15:03:53 fizzie, it is in an old marble quarry 15:04:00 let me find it on google maps or something 15:04:20 S (S (S (K S) (S (K K) I)) (K (S I I))) (S (S (K S) (S (K K) I)) (K (S I I))). 15:04:21 elliott: i think the use of syntactic sugar is sufficent to hide what is actually going on.. 15:05:19 for example... we are shown: (S x y z) = (x z (y z)) 15:05:45 however we are not shown: (((S x) y) z) = (S x y z) = (x z (y z)) 15:05:52 rather 15:06:02 = ((x z) (y z)) 15:06:12 (((S x) y) z) = ((S x y) z) = (S x y z) = (x z (y z)) 15:06:21 oops 15:06:35 (((S x) y) z) = ((S x y) z) = (S x y z) = (x z (y z)) = ((x z)(y z)) 15:07:02 now while i might not understand that.. 15:07:12 at least i know i don't understand it 15:07:49 whereas with: (S x y z) = (x z (y z)) i am left to wonder why i don't see anything 15:08:32 fizzie, having trouble finding the exact spot 15:09:05 so then i can ask.. 15:09:35 is (((w x) y) z) = (((S x) y) z) ? 15:09:37 fizzie, somewhere around here: http://maps.google.se/maps?q=Kinaparken&hl=en&ll=58.778078,14.958401&spn=0.047338,0.210285&oe=utf-8&client=firefox-a&t=h&z=13 15:10:01 fizzie, (the search was useless) 15:10:07 -!- Taneb has joined. 15:11:02 perhaps i didnt word that right 15:11:03 "Did you mean: Kronoparken, Karlstad". 15:11:10 fizzie, yeah useless :P 15:11:22 fizzie, maybe see: http://www.bastedalenherrgard.se/?nr=10 15:11:35 fizzie, the garden is just next to that place 15:11:37 I should say... can (((w x) y) z) be rewritten as (((S x) y) z) and (((K x) y) z) and (((I x) y) z) ? 15:12:35 itidus20: you can't use any variable names in your program 15:12:40 it must just be S, K, I and parentheses 15:12:41 I see. 15:12:45 what is x then? 15:12:49 the lowercase letters are just there to show how the S, K and I are rewritten 15:12:59 ahh 15:13:27 (((Sx)y)z) → ((xz)(yz)) simply means that for every expression x, y, and z, (((Sx)y)z) gets rewritten to ((xz)(yz)) 15:13:41 Aha, the cat has showed up 15:13:46 Phantom_Hoover: NO STOP MURDER, 15:13:47 WHO IS THE CLEVER ONE NOW MOUSE 15:13:54 fizzie, We were kind of lucky with the weather... When it is sunny, the place tends to be filled with tourists 15:13:55 elliott, I'm just going to flush it out. 15:14:45 Phantom_Hoover: NO THAT SOUNDS BAD, 15:14:46 I've just had a thought. 15:14:47 BE NICE TO MOUSE 15:14:47 Panic 15:14:55 Taneb: NO MAKE PHANTNOM ANIMAL CRUELTY NO 15:15:07 Vorpal: It looks a bit like one Chinese-style garden at Madeira. (How surprising.) 15:15:12 do (((Kx)y)z) and (((Ix)y)z) both get rewritten as (x) ? 15:15:39 fizzie, heh 15:15:41 perhaps not though.. perhaps that is uh dependant on what z is 15:15:47 Is it possible to make an SKI combinator both a) halt and b) not take any more operators 15:15:48 itidus20: (((Kx)y)z) -- we know that ((Kx)y) is the same as x 15:15:57 itidus20: so it becomes ((x)(z)) 15:16:03 ah o 15:16:06 itidus20: but like I said: that isn't a valid expression 15:16:06 ^ok 15:16:11 because x, y and z aren't combinators 15:16:19 but yes, for every x, y, and z, that reduction that I showed there holds. 15:16:41 (((Ix)y)z) -- we know that ((I)(x)) = x, so it becomes (((x)(y))z) 15:16:53 (aka xyz, (xy)z) 15:17:16 Kab =ish Ia 15:18:01 so in the absence of parenthesis abcdefg becomes ((((((ab)c)d)e)f)g) ? 15:18:05 Yes 15:18:08 itidus20: yep 15:18:17 the left side always gets the parentheses 15:18:23 elliott: mushspace 15:18:27 and always 2 there are 15:18:40 ok not always.. 15:18:41 Deewiant: That, what's it 15:18:42 but 15:19:03 ok not always 2. i just wanted to say starwars 15:19:24 so is ((x)(y)) the same as (xy) ? 15:19:31 elliott: CCBI's Funge-Space in C 15:19:32 itidus20: Yes. 15:19:47 Deewiant: Do I smell ... giving up? 15:20:10 Deewiant: Don't let the cfungists win; fight back under the constraints of PURE TERRIBLE D 15:20:21 So what fancy space is it this time :-P 15:20:30 Nah, it's just useful for anything that messes with Funge 15:20:45 I miss it in Haskell 15:21:01 Eh? 15:21:03 Miss what 15:21:10 A decent Funge-Space 15:21:26 Deewiant: I could be persuaded to work on Shiro :-P 15:21:55 And would you create a pure Haskell Funge-Space at least as good as CCBI's 15:22:10 Deewiant: That was the idea when I was working on Shiro, yes 15:22:39 And would it work for {Un,B,Tr}efunge-9[83] 15:23:19 elliott: give me a topic to learn about. 15:23:22 Deewiant: Well, I don't care about ninetythree really, but it's just like one extra function missing the special-casing of space?? 15:23:32 Deewiant: But yes, N-dimensionality was the idea. 15:23:42 Yeah, 93 is easy 15:24:00 But well, go ahead :-P 15:24:08 Deewiant: It'll probably just be befunge-98 until the point at which you bug me about it :P 15:24:20 As-is I think this is cool/useful enough that I might as well make it usable for others 15:24:33 elliott: do you want me to like.. start a donation fund for a new keyboard for you? 15:24:43 I could pitch in $5 15:24:44 I might even do a proper writeup about how it works at some point 15:24:47 Deewiant: When's it gonna be part of CCBI, and how fast will it make it 15:24:48 we could set up a paypal or something. 15:24:51 CakeProphet: Sending the laptop in in a week or so 15:24:55 oh okay. 15:24:58 Deewiant: And what data structure does it use :-P 15:25:15 funge-trees 15:25:21 elliott: It's the same one as CCBI uses now 15:25:26 No change 15:25:32 Apart from micro-level stuff I run into 15:26:06 Deewiant: WELL I CAN OUTDO THAT 15:26:11 so SI does nothing... SII does nothing... SIIK becomes IKIK ... IKIK becomes KIK which becomes I.. which parts went wrong here? 15:26:21 * elliott cracks knuckles, goes and walks off and does something else insetad. 15:26:32 :t ap id 15:26:33 forall a b. ((a -> b) -> a) -> (a -> b) -> b 15:26:39 SI doesn't strictly do nothing. 15:26:53 itidus20: IKIK = (IK)IK = KIK = I 15:26:56 Nothing went wrong 15:26:59 But it isn't "do nothing" 15:27:01 yay 15:27:02 It's just "has no further reductions" 15:27:13 hmm 15:27:26 itidus20: Congratulations, you now understand a language that can compute anything a computer with infinite memory can :-P 15:27:43 Well, given infinite memory to store the expanding SKI string, of course 15:27:50 i wouldn't say i understand it.. but you said it which is close enough 15:28:06 yes, just let elliott understand it for you. 15:28:22 so does it always start from the left? 15:28:40 not it sometimes starts on the right depending on what mood it's in. 15:28:50 Sort of, itidus20 15:29:04 at some point the parenthesis becomes signifigant though eh 15:29:13 Deewiant: My main Shiro holdup is having to implement the fingerprints for slowdown, FWIW 15:29:25 Deewiant: And undoing the massive performance decrease I got by refactoring to use MaybeT 15:29:40 When it reaches a bracket, that bracket and its partner are removed ish 15:29:51 itidus20: Just think of it as a tree: Application (i.e. xy) is 15:29:53 /\ 15:29:55 x y 15:30:04 itidus20: And the leaves at the bottom of the tree are S, K or I 15:30:14 elliott: Yeah this "massive performance decrease" business is why it's in C ;-) 15:30:33 hmm 15:30:35 itidus20: Putting two expressions side-by-side and grouping with parentheses is just notation for describing these trees in one dimension 15:30:42 Deewiant: Well, "massive" 15:30:51 Deewiant: It's not like my runtime was very high before or afte 15:30:53 r 15:30:55 I'm just going by Mycology 15:31:11 Deewiant: But anyway, it's not really Haskell to blame here, more the library, I don't even think MaybeT is strict 15:31:30 yeah Haskell isn't to blame it's just a language. 15:31:30 I'm confident I can achieve a well-performing fungespace 15:31:41 brb. 15:31:42 elliott: 2-d zippers? 15:31:47 CakeProphet: It's not that easy :) 15:31:54 ok thanks. ill let it go there 15:32:27 well a 2-d zipper itself isn't completely straightforward. 15:33:18 -!- PatashuWarg has quit (Quit: MSN: Patashu@hotmail.com , Gmail: Patashu0@gmail.com , AIM: Patashu0 , YIM: patashu2 .). 15:33:42 elliott: I know, I was just being snarky :-P C is for interoperability reasons anyway, depending on language runtimes kinda sucks 15:34:05 I can only think of two ways to do it really. One is a zipper of zippers where you have to map the shift operations on every subzipper 15:35:15 the other is single zipper but with more directions. up, down, left, right, and the intermediate directions. Actually I don't think that one would work at all. 15:38:41 so on returning from the toilet my mind shifts to a one dimensional trinary cellular automata 15:38:58 and this CA... each cell would be either I or K or S 15:40:23 the problem i suppose would be that it would be a celluar automata with the ability to delete cells from the tape 15:40:34 like a linked list 15:41:23 so.. a CA with insertion and deletion 15:43:31 ...Closer to an L-System 15:44:34 it would be like you could just fold that section of tape into a higher dimension.. but technically.. the CA is an array.. and it could be a linked list 15:45:07 then again I don't see tat idea working very well 15:45:15 but in 1 dimension.... it wouldn't be so bad 15:45:24 in 2 dimensions it would be a royal nightmar 15:45:35 itidus20, interesting, if you rearrange "toilet" you get.. 15:45:54 actually if you rearrange "toillet" 15:46:00 lol 15:46:26 Very little good can come from rearranging toilet. 15:46:43 as can be seen 15:46:46 i dont want to take sides though 15:46:55 itidus20, interesting, ternary cellular automata 15:47:23 in fact, i never understood - what's the "difference" between GOL and cellular automata? GOL is just a subset of that, right? 15:47:48 GOL? What's a GOL? 15:48:08 it's what you get when you rearrange "LOG" 15:48:11 and also game of life. 15:48:25 (those toilet jokes never end do they) 15:48:28 Aah 15:48:35 Game of Life is an example of a CA 15:48:50 what are the rules that specialize a CA specifically into the GOL? 15:49:21 Consider a cell in a Moore Neighbourhood 15:49:30 Each cell has eight cells around it. 15:50:26 If a cell is 1 and has less than 2 1s around it, it becomes 0 next generation 15:51:04 If a cell is 1 and has more than 3 1s around it, it becomes 0 next generation 15:51:07 well suppose you had: -[S]-[K]-[K]-[I]- .. then it would become -[K]-[I]-[K]-[I]- which would become -[I]-[I]- which would become -[I]- .. so this would suggest multiple phases per generation. 15:51:31 If a cell is 0, and has 3 1s around it, it becomes 1 15:51:34 one phase to calculate the [S], one phase to calculate the [K], one phase to calculate the [I] 15:51:36 Otherwise, it stas the same 15:52:24 cheater__: understand? 15:52:28 maybe phases isn't the best way to do it though 15:53:41 Taneb, ok 15:54:11 -[1]-[+]-[1]- = -[2]- >:-) 15:54:32 OK, that does it. 15:54:37 itidus20: I have no idea how you can make an SKI CA 15:54:45 I'm going for the cat. 15:54:47 i dont think you can.. 15:55:09 Phantom_Hoover: ,[<>][,[<>]] 15:55:29 but an arithmetic CA... 15:56:41 with the right rules. 15:56:57 but there would be a lot of ambiguous cases to cover. 15:57:35 so my breakthrough (in my own little world that is) is that a 1 dimensional CA would work well in a linked list implementation and with lots of states rather than just 0 and 1 15:57:47 I suppose it could be done with just 0 and 1 of course 15:57:57 and you would want rules which extended beyond direct neighbors 15:58:21 can't an n-ary 1d CA unwrap to a binary 2d CA? 15:59:02 the aryness isn't really the signifigant thing.. i put too much emphasis there 15:59:17 itidus20: a 1-d CA would better be represented by a zipper, which is two linked lists and "center" value. 15:59:26 because a linked list only goes in one "direction" 15:59:29 in fact, can't an n-ary k-D CA unwrap to a binary k+1-D binary CA? 15:59:45 a doubly linked list then 15:59:47 :P 16:00:21 no because it still has an endpoint. 16:00:38 you have one linked list that goes left and one that goes right. 16:00:50 the idea of inserting and deleting cells is quite signifigant 16:01:01 -!- derrik has joined. 16:01:05 mmk. 16:02:24 you could have a rule that when it finds [1][1][1][1] it inserts a [0] in the middle thus creating [1][1][0][1][1] 16:02:51 hehe.. and you could have a rule that when it finds [1][1][0][1][1] it could rewrite it as [1][1][1][1] 16:02:57 okay so what happens when you have [1,1,1,1,1] 16:03:04 hummmmm 16:03:08 itidus20: cool so it just oscilates back and forth 16:04:15 [1,1,1,1,1] would seem to become [1,1,0,1,0,1,1] 16:05:06 -!- derrik has quit (Client Quit). 16:05:30 itidus20: wasn't obvious to me. Maybe you need to expand on your rule. 16:05:36 because otherwise it's ambiguous. 16:05:50 -!- copumpkin has quit (Ping timeout: 252 seconds). 16:05:55 ahh... 16:06:08 instead of cells... it seems to work at the link level 16:06:54 so [1][1][1][1] means [1][1] on the left side of a link and [1][1] on the right side 16:07:06 so would be actually [1][1]-[1][1] 16:07:13 uh, what? 16:07:42 there's a link between every node. 16:07:52 which means [1][1][1][1] is an ambiguous term for -[1][1][1][1] or [1]-[1][1][1] or [1][1]-[1][1] or [1][1][1]-[1] or [1][1][1][1]- 16:08:45 and in the case of [1][1]-[1][1] it would check the left and right side of a link for 2 [1]'s.. and set a pending insertion of a [0] 16:08:48 do you know how a linked list works? 16:09:40 so the rules would exist on 2 levels.. link-oriented rules, and cell-oriented rules 16:09:46 the linked list itself is not ambiguous it's just (1,(1,(1,(1,())))) 16:09:52 every node has a link 16:10:03 my notation was ambiguous, thats all 16:15:30 so with what i have envisioned.. you could say have [0][0][0][0][0][1][0][0][0][0][0][0][0] and have a rewriting rule [1]- = [1]-[1] which would insert a [1] at the right side of every [1] for the next generation 16:15:54 -!- derrik has joined. 16:16:35 itidus20: except that notation is hideous 16:17:16 i don't know any real notations.. that is part of the trouble 16:17:38 well [1,2,3,4] is a good one. 16:17:46 (1 2 3 4) 16:17:50 ah 16:17:51 You just lack a proper appreciation for squares. 16:18:09 1:2:3:4:[] is the desugared version that Haskell uses, where : is cons and [] is the empty list 16:18:52 though I guess [] is still a special constructor, but not sugar. 16:19:03 then, by [1]- = [1]-[1] i mean [1,*] = [1,1] 16:19:13 no don't ever do that either. 16:19:33 -!- copumpkin has joined. 16:20:15 [1,1,*,1,1] = [1,1,0,1,1] and [1,1,0,1,1] = [1,1,1,1] 16:21:04 i don't know 16:21:45 perhaps i should let it rest 16:21:45 -!- derrik has quit (Quit: battery!!). 16:24:30 itidus20: you don't need to explicitly specify links because there's an implicit link between each element 16:24:57 [1][1]-[1][1] is the exact same thing as [1][1][1][1] for a linked list. 16:26:23 so your rewrite rules are still ambiguous unless you specify in what order it occurs. 16:26:52 there is probably no practical advantage to inserts and deletions 16:27:04 but it would be spicy 16:33:29 Operation Cat has failed. 16:33:35 This mouse is a worthy opponent indeed. 16:33:40 back 16:33:47 you should try chocolate as bait 16:37:27 -!- Taneb has quit (Ping timeout: 276 seconds). 16:43:16 -!- Taneb has joined. 16:58:45 Deewiant: No thanks for making me look at the Shiro code, it is a bit of a mess 17:07:40 aAHAHAHAHVFAFVAOEKRHF 17:07:41 I HAVE IT 17:07:44 AHAHHAHAHAHAHAHAHAHAHAHA 17:07:46 Phantom_Hoover: HUG IT 17:07:47 AHAHAHAHAHAHAHAHAHAHAHAHAHAH 17:08:04 copumpkin: How come I'm getting so many mtl/monads-tf conflicts lately, I blame you? 17:08:12 not my fault 17:08:22 copumpkin: That doesn't stop me blaming you 17:08:34 fair enough 17:08:44 I wonder if my instinctual specification of mtl is the Wrong Choice, if monads-tf is so popular now :P 17:13:32 -!- elliott has left ("Leaving"). 17:13:36 There, I released it into the wild. 17:13:38 -!- elliott has joined. 17:13:42 There, I released it into the wild. 17:13:57 NO 17:13:57 MISSED 17:13:58 PET 17:13:59 OPPORTUNITY 17:14:00 FRIEND 17:14:38 I had to get the cat into containment so the mouse would have time to flee. 17:15:52 OK but 17:16:02 be nice 17:16:04 to the mouse 17:16:16 -!- MSleep has joined. 17:17:16 -!- Taneb has quit (Ping timeout: 260 seconds). 17:20:33 -!- augur_ has joined. 17:21:56 -!- ttm_ has quit (Ping timeout: 260 seconds). 17:22:42 -!- cheater_ has joined. 17:24:06 -!- ttm_ has joined. 17:25:48 -!- Phantom__Hoover has joined. 17:26:05 -!- cheater__ has quit (Ping timeout: 255 seconds). 17:26:05 -!- MDude has quit (Ping timeout: 255 seconds). 17:26:05 -!- augur has quit (Ping timeout: 255 seconds). 17:26:05 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 17:26:27 so, this #jesus you've all been talking about, will I have fun if I join? 17:28:19 -!- Taneb has joined. 17:30:59 olsner: yes. 17:31:10 #esoteric-jesus is the recommended side dish. 17:31:52 hehe, is that about esoteric christianity, or just another #esoteric offshoot? :) 17:31:52 Deewiant: Well, Shiro currently runs, slowly, and then dies when testing FIXP 17:32:10 Deewiant: I do seem to recall this thing being fast and correct before I started optimising ;-) 17:32:20 olsner: latter, ais was getting annoyed :D 17:33:52 I wonder if I could set up an IRC client so that it displays #esoteric-jesus and #jesus in the same channel while sending everything I write only to #esoteric-jesus 17:33:53 Soon there will be an #esoteric-x \forall #x \in freenode, it seems. 17:34:02 kind of like a spectator mode 17:34:26 Deewiant: So, um, does Mycology actually try a negative exponent with R? 17:35:12 -!- sebbu2 has joined. 17:35:12 -!- sebbu2 has quit (Changing host). 17:35:12 -!- sebbu2 has joined. 17:36:27 -!- sebbu has quit (Ping timeout: 246 seconds). 17:37:01 -!- rodgort has quit (*.net *.split). 17:40:03 elliott: Beats me, run ccbi mycology.b98 to find out 17:40:20 Deewiant: It does 17:40:34 Or at least, if it only does so because of a bug in Shiro, then it still gets to the end if I add a check 17:43:24 -!- olsner has quit (Quit: Leaving). 17:43:47 -!- olsner has joined. 17:44:13 I wonder if there's a way to get dired to hide "crap" files altogether like .o 17:44:21 Rather than just dimming them 17:47:02 -!- rodgort has joined. 17:52:38 ok, wtf... 17:52:41 hmm 17:56:14 -!- MSleep has changed nick to MDude. 18:05:44 -!- Vorpal_ has joined. 18:05:47 -!- Vorpal has quit (Disconnected by services). 18:09:37 aha 18:09:48 one point seven seconds to point nine nine seconds 18:09:57 just by eliminating typeclass bullshit 18:10:03 Vorpal_: hi im work on shiro again 18:10:20 okay 18:10:26 -!- Vorpal_ has changed nick to Vorpal. 18:11:02 Vorpal: (to beat deewiant) 18:11:04 Vorpal: (and cfunge) 18:11:14 maybe i'll even put it in a VCS :OOOOOOOOOOOOOOOO 18:12:28 not pictured: Vorpals's shock 18:13:12 asterisk Vorpal's 18:13:27 elliott, I don't really care *shrug* 18:14:00 Vorpal: you say that now.... but when shiro beats cfunge on mycology... 18:14:25 elliott, *shrug* 18:14:39 *shrug* 18:15:25 ...what's shiro? 18:15:41 funge interpreter in haskell 18:15:55 Funge as in befunge? 18:16:06 yes. ninety-eight, though, not the (far simpler) ninety-three standard. 18:18:58 Sounds tricky 18:19:52 -!- pikhq_ has joined. 18:20:03 Especially p and g 18:21:19 -!- pikhq has quit (Read error: Operation timed out). 18:21:47 Taneb: It would be about ten times less tricky than it is without a bunch of edge-cases 18:22:05 It took me about four days of constant coding to get it to pass Deewiant's Mycology test suite 18:22:09 And that's before any fingerprints 18:22:32 Mycology? 18:23:02 http://iki.fi/matti.niemenmaa/befunge/mycology.html 18:23:11 or, pretty colours: http://iki.fi/matti.niemenmaa/befunge/mycology-comparison.html 18:23:33 also the analogous benchmark suite http://iki.fi/matti.niemenmaa/befunge/fungicide.html (pretty graphs: http://iki.fi/matti.niemenmaa/befunge/fungicide-rankings/index.html) 18:23:43 a whole four days? so that's how bad a coder you are then :P 18:24:33 olsner: hey, four days isn't bad for about five hundred lines of code written according to a very vague and self-contradictory spec that pass an extremely rigorous test suite 18:24:43 s/code/haskell/ :P 18:24:50 s/pass/passes/ 18:24:53 well, the lines are plural I guess 18:25:01 five hundred lines of Haskell is actually probably more code than in most languages. 18:25:13 depending on how condensed it is. 18:25:24 it was pretty fast, too 18:25:29 CakeProphet: that's why I s///'d it :P 18:25:33 gotta get credit for my achievement 18:27:20 I've got a bid for a project that has about 10k lines of C# 18:27:32 they want it ported to linux. 18:27:43 hmm, if the language takes so little code, why does the spec have to be so vague and self-contradictory 18:28:22 CakeProphet: mono foo.exe 18:28:23 job done 18:28:33 olsner: five hundred lines of Haskell doesn't count as "little code" to me 18:28:34 five hundred lines of Haskell is actually probably more code than in most languages. <-- indeed 18:28:42 that's "medium-size" 18:28:49 cfunge is something like 10000 lines, that includes fingerprints too though 18:28:51 olsner: anyway, because cpressey 18:28:55 is dumb 18:28:56 in the past. 18:29:17 Vorpal: shiro is about one thousand three hundred lines right now. fewer fingerprints, of course, but I'm working on that. 18:29:19 and things you get for free in haskell, since C has a poor standard library 18:29:31 sounds like I should write myself a funge some day, to see what it's all about 18:29:39 Vorpal: You complain about your standard library??? 18:29:39 -- no portable environment variable module 18:29:39 import System.Posix.Env 18:29:44 --Shiro.Fingerprints.EVAR 18:29:46 elliott, :P 18:29:48 LOOK AT THE HORROR I HAVE TO SUFFER THROUGH 18:29:55 elliott, lack of Data.whatever 18:30:11 Vorpal: wat 18:30:13 let's say I want to write a GUI in Haskell. What are my options? (I believe I've asked this question before...) 18:30:15 elliott, I mean you can just pull out a b-tree or hash table from some module 18:30:26 not like C has those in the standard library 18:30:31 CakeProphet: gtk, wxwidgets, these are the main ones???? 18:30:46 the wx binding has a much nicer API, but wxWidgets applications tend to be uglier 18:30:48 elliott, what about Tk bindings? 18:30:59 elliott, wxwidgets look better under OS X iirc 18:31:01 than gtk 18:31:02 Vorpal: i don't know of any 18:31:05 and, well 18:31:09 sort of :) 18:31:12 -!- zzo38 has joined. 18:31:14 just forget about looking nice on os x 18:31:17 there's one way to do it: cocoa 18:31:24 bbiab, going to play adanaxis (fun game) 18:31:34 elliott: I want pretty UIs. Also it needs to run off of a flash drive... 18:31:47 CakeProphet: well, plenty of prominent programs use wxWidgets 18:32:03 it looks basically like Gtk, if you're not discerning; it uses native platform widgets except when it doesn't 18:32:07 Code::Blocks is wxWidgets, if you've used it 18:32:21 oh, uTorrent too apparently? 18:32:24 oh yes, and Audacity 18:32:28 I'm just wondering if I could package everything as a standalone application that can run via flash drive on Windows. 18:32:40 how would it stop you 18:32:43 not too familiar with distributing my code... 18:32:51 "this MUST be in C:\Windows!!!" 18:33:08 I guess it would be fine. I'd need to include the dependencies right? 18:33:23 I mean, like... uh 18:33:24 the C library dependencies, yes. 18:33:30 GHC statically links Haskell libraries by default. 18:33:35 I just don't really know how to structure everything. 18:33:36 so basically you'll need the wxWidgets dlls. 18:33:58 ah okay. 18:34:23 okay I'll just figure it out when I get to that point. 18:34:36 I just use command-line program in C, and it works OK. It should work in any computer. 18:34:50 If graphical stuff and that kind of things are needed, I can use SDL. 18:35:20 I was just wondering where I should put the dependencies and how Haskell knows where they are, etc. 18:35:39 But with Haskell, I don't know very well about it. 18:35:43 where the dlls should be on the flash drive. 18:36:01 CakeProphet: "Haskell" doesn't know anything. GHC produces standard dynamically-linked executables. 18:36:10 If the program is specifically for Windows you should just use native widgets. 18:36:12 On Windows, putting DLLs in the same directory as the .exe file should work. 18:36:26 zzo38: the Windows API is quite horrible to use, and I don't know of any Haskell bindings for it 18:36:27 okay, but I need the DLL right? GHC needs to know where that is, yes? 18:36:33 wxWidgets uses them, though, so it just acts as a layer of abstraction 18:36:38 CakeProphet: GHC doesn't. Your operating system does. 18:36:57 well, how does that work exactly. 18:37:06 be more specific :P 18:37:08 I apologize for my inexperience with this sort of thing. 18:37:28 I mean, when I go to compile my program where should the DLLs be. 18:37:48 Once I used the Windows APIs to create a UserControl in Visual Basic, though. Because, the standard text box does not have Unicode, so I made up a user control that calls the unicode API 18:38:09 CakeProphet: you need to install the wx package from Hackage. its build process will involve linking with the wxWidgets DLLs 18:38:12 CakeProphet: I would expect it to work if the DLL files are in the same directory as the main program. 18:38:22 you might find http://www.haskell.org/haskellwiki/WxHaskell/Windows helpful 18:39:39 It is true that the Windows API is not that good, but if the program is designed specifically for Windows you can use it. 18:40:07 elliott: hmmm, I could also do this is linux right? but still cross-compiling for a Windows system. 18:40:12 *in 18:40:14 (Or if it is designed for not only Windows but also ReactOS, it would also do) 18:40:31 CakeProphet: well, probably. you might find building the Haskell wx library painful. 18:40:37 CakeProphet: more importantly, you'll need a GHC cross-compiler 18:40:42 which might be painful in itself 18:41:37 okay so I'll just my windows partition... 18:41:43 as painful as it will be. 18:42:05 that might be even more painful :-) 18:42:08 Be careful, or you'll accidentally your Windows partition. 18:42:14 ^^ 18:42:16 CakeProphet: you might want to -- brace yourself here, what I am about to say may shock you -- 18:42:23 CakeProphet: consider using a different language for this 18:42:44 DO NOT BLASPHEME 18:42:52 elliott: suggestions? 18:43:20 hey I'll use C#!!! 18:43:26 not that I want to... 18:43:31 CakeProphet: With Python, you could just use Portable Python or any other "USB stick" version, and it comes with Tkinter, which looks... semi-native on Windows (IDLE is Tkinter). that saves you DLL issues and the like, and there's that py[two]exe converter that might simplify it further. of course python is terrible 18:43:32 but it would be good for windows stuff. 18:43:32 but 18:43:34 as far as windows goes 18:43:36 the support ain't bad 18:43:59 i would poke around tkinter's preference dialogues to make sure you consider tk pretty enough on windows first 18:44:05 also, I'm pretty familiar with Python, so that's a plus. 18:44:18 http://www.py2exe.org/ 18:44:24 yeah I've seen it. 18:44:39 elliott, How did you end up with a keyboard without number keys? 18:44:50 NihilistDandy: I wish I knew 18:45:01 hmmm, but does a .exe contain hardware specific machine code? How do they run portably on any Windows machine? 18:45:09 s/does/doesn't/ 18:45:15 CakeProphet: I... 18:45:23 excuse my ignorance. 18:45:24 You realise that all the Windows applications available on the 'net are in .exe form, right? 18:45:29 yes 18:45:38 this is why I'm confused. 18:45:39 I mean, programming ignorance, sure, but it sounds like you've never used Windows before. 18:45:46 CakeProphet: Guess what, Windows only runs on two architecture. 18:45:46 no I have. 18:45:47 s. 18:45:53 One of those architectures is backwards-compatible with the other. 18:46:01 ah okay. 18:46:12 Well 18:46:12 Supported platformsARM, IA-32, x86-64 and Itanium 18:46:16 Got an Itanium machine sitting around? 18:46:19 It won't work on that 18:46:56 NT 3.1 or so ran on Alpha and MIPS too. 18:47:16 And 4.0 on PPC. 18:47:22 fizzie: Yes, I know; I've ran an emulated NT four in qemu's MIPS emulato. 18:47:23 r. 18:47:37 so really the vast majority of home computers are using the same few architectures. 18:47:39 I recall that project, yes. 18:47:41 -!- Taneb has quit (Ping timeout: 260 seconds). 18:47:45 I thought there were several more. 18:48:05 Yes, everything's a VAX nowadays. 18:48:30 Vast majority -- every home computer is an x86 or an x86-64. 18:48:38 >_> am I the only one who doesn't know everything about everything related to computing? 18:48:40 The error is on the scale of floating-point inaccuracies. 18:48:52 you know, out of the non-new, regular people. 18:48:53 elliott: My laptop's a PPC iBook, so shush. 18:49:01 Yes. We've been hiding the facts from you. 18:49:25 fizzie: So what's Apple's percentage of the market these days? Percentage of that market that's still on PPC? :p 18:49:33 fizzie: And it doesn't count as a home computer if you can take it out of your home. 18:49:44 Everything under a certain weight is not a home computer because I said so. 18:49:55 ARM's quite relevant, though. 18:50:02 You can write the programs that does not use floating-point, and then don't have floating-point inaccuracies. 18:50:25 really I've never taken the time to learn about old instruction sets, specific points of language specs, compiler internals, and so on. 18:50:26 pikhq_: Not as far as home computers are concerned 18:50:28 ARM is not relevant in elliott's weight class. :p 18:50:34 elliott: Okay, true. 18:50:39 I... have other things to do. like life. 18:50:39 fizzie: I'm deeply personally offended by this personal remark 18:50:44 elliott: Only relevant for smaller devices. 18:51:13 What does "life" actually mean, anyway; it seems to mean "this thing that's infinitely greater than all my actual hobbies that I do all the time because I rule" 18:51:27 -!- derrik has joined. 18:51:32 Like, I get the intended snarkiness, but it's such a ridiculously self-defeating concept 18:51:39 elliott: nah, more like obligations that are time-consuming. 18:51:45 it wasn't snarky. 18:51:56 I just meant the general snarkiness of "I don't X, I have a life". :p 18:52:06 Anyway obligations are for oblongs. 18:52:10 do u c wut i did thar 18:52:20 -!- nooga has joined. 18:52:23 oh, yeah, that's different from what I was saying. Life is something that needs doing, not something that I have that others do not. 18:52:39 you should make sure all your obligations involve old instruction sets 18:52:41 `addquote What does "life" actually mean, anyway; it seems to mean "this thing that's infinitely greater than all my actual hobbies that I do all the time because I rule" 18:52:42 582) What does "life" actually mean, anyway; it seems to mean "this thing that's infinitely greater than all my actual hobbies that I do all the time because I rule" 18:52:43 having "a life" is basically referring to a social life. You know, being cool and interesting to other people and stuff. 18:52:55 Unnecessary, I HAVE OLD INSTRUCTION SETS AND LANGUAGE SPECS 18:53:11 -!- Taneb has joined. 18:53:21 CakeProphet: I'll let you in on a secret: 90 percent of everyone's knowledge is stored on a medium-efficiency but extremely high-capacity storage layer called "Google" 18:53:33 Helpfully, it is accessible in almost all situations were IRC is 18:53:42 Quick, ask me about goats. 18:54:14 THAT WAS NOT RHETORICAL 18:54:14 Right, but I'm just wondering about the general process of accumulating all of this knowledge. Essentially, in what order do you google things. 18:54:21 elliott: no your point is RUINED 18:54:27 I AM RUINING IT HAHA 18:55:20 CakeProphet: "Hey in Haskell what GUI libraries are good" oh well, I know of gtk and wx, maybe there's a qt binding? google "hackage packages" -> http://hackage.haskell.org/packages/archive/pkg-list.html -> Ctrl+F qt -> ok nothing im so right and awesome always haha look at my wisdom 18:55:31 unedited transcript 18:55:59 -!- azaq23 has joined. 18:56:01 like, I know a lot of things are googled during conversation, but there's a lot of information that's just already known... and I wonder why. Are you reading about a language spec or old instruction set right now, elliott? 18:56:16 I _am_ an old instruction set. 18:56:30 But, umm, I know a lot about the languages I use a lot :P 18:56:30 ancient Egyptian? 18:56:35 Voynitch 18:57:07 elliott is a mystical figure of ancient Egyptian computational wisdom cleverly disguised as a young lad. 18:57:13 HOW DID YOU KNOW. 18:58:31 so for the next few days I'm going to be cramming every bit of knowledge off of the internet I can. 18:58:57 so that I can impress this potential hirer and maybe start making some money. 18:59:42 and then I TOO WILL KNOW EVERYTHING ABOUT COMPUTERS. Or at least all of the boring useful stuff. 19:00:13 Meh, don't try and learn anything at all, and then prove you have an actually useful skill (ability to find answers to questions with Google), demonstrate repeatedly for every question given 19:00:20 Start from tvtropes or uncyclopedia or 4chan or some-such, that's where all the useful bits are. 19:00:20 (Approach a good one but not necessarily a successful one) 19:01:34 elliott: but I won't have time to google everything. That's what work experience does, cuts down on your googling time. 19:01:54 Googling takes a noticeable amount of time for you? 19:01:58 it adds up. 19:02:42 > let g = (\(x:y:z) -> [y] ++ z ++ [x]) in reverse $ g $ g $ g $ (\x -> head x : head x : tail x) $ g $ g $ g "toilet" 19:02:44 "elliott" 19:02:56 ohhhh snap! 19:03:13 On topics that aren't cheater_'s obsessive fascination with both toilets and me, CakeProphet: have you seen the wonder that is mergeByteString. 19:03:55 elliott: but yeah not the actual googling but the total time it takes to read and understand everything for a large project, becomes pretty large. especially when you only have a few days to complete it. 19:03:59 and, no. 19:04:03 does it, uh, merge bytestrings? 19:04:31 @hoogle mergeByteString 19:04:32 No results found 19:04:53 CakeProphet: SHIELD YOUR EYES AND GAZE UNTO YOUR /MSG 19:06:01 * CakeProphet puts on his shades, ohhhh yeah. 8) 19:06:07 they look much less cool in ASCII 19:06:14 and in whatever typeface this is. 19:06:17 B) 19:06:53 oh god what am I looking at. 19:07:25 so wait how does that fungespace work. 19:07:49 XB IOOOQAEP IOOIQOAI 19:08:04 Right now it's just a basic Map, but with row and column population tracking 19:08:07 And min/max coords 19:08:11 ah okay. 19:08:14 that works. 19:08:26 It's going to become a lot more complicated soon 19:08:37 Although hopefully that function will be 19:08:38 less 19:08:39 ugly 19:08:55 it is quite ugly. 19:09:11 I am still on the first line that isn't the type... 19:09:23 but my vision is bad and I really need to stop procrastinating that eye exam. 19:09:23 CakeProphet: Basically it started off fairly passable, but then everything was _so_ _slow_, so I just said fuck it and went for efficiency first. 19:10:15 are you, folding a tuple? oh, no that's the initial value. 19:10:40 I use foldl1 a lot so I forget about the initial value. 19:10:42 http://analysis.no.net/ 19:10:50 foldl1 is bad you shouldn't use foldl1 19:10:54 :( 19:11:02 if I know it's fine to use then I do. 19:11:18 it's only fine to use if your list never ever ever ever has no elements 19:11:18 also 19:11:23 it only supports folding functions of type (a -> a -> a) 19:11:26 also IF HASKELL LISTS HAD EMPTY/NON-EMPTY TYPING THEN THIS WOULDN'T BE A PROBLEM IT WOULD JUST CATCH ON COMPILE. 19:11:28 which many folds don't meet 19:11:31 for instance the one there 19:11:47 CakeProphet: they... don't need that, there /is/ a nonempty list type in common use 19:12:01 http://hackage.haskell.org/package/NonEmpty hmm or was it under another name, this one looks unupdated 19:12:06 whichever one kmett uses :P 19:12:28 no I mean have something like List NonEmpty a for the : constructor and List Empty a for the [] constructor. 19:12:34 or, is that what you mean? 19:12:53 well, that's pointless. why not just have [a] and NonEmpty a? 19:13:03 the two types aren't really related, so bundling them together into "List" seems silly. 19:13:14 I think I managed to program the Propositional Calculus into Haskell's type system, although Typographical Number Theory would be more difficult since the way of variable bindings in TNT. But maybe there is a way, but I don't know much about Haskell so I don't know. 19:13:15 especially since it makes using lists that you don't care whether they're empty or not really awkward 19:13:23 yes, it does. 19:13:56 Is this correct? http://sprunge.us/ZQYd 19:14:08 * itidus20 ponders a remapping of ascii code whereby: 0='0', 1='1', 9='9', 10='A', 15='F', 16= 'G', 35='Z', 64='a', 89='z' 19:14:23 why. 19:14:30 Now it seems to work if typing :t Or (Not$ And (Atom$ P) (Not$ Atom$ Prime$ Q)) (Imply (Not$ Not$ Atom$ P) (Atom$ Prime$ Q)) 19:14:54 zzo38: that's not haskell's type system 19:14:59 that's just embedding it into haskell 19:14:59 itidus20: I also made a new code, where it also had the property that 'A' comes directly after '9'. But not where 'a' comes directly after 'Z' 19:15:33 'a' doesn't come directly after 'Z' in my code either :D 19:15:35 elliott: OK, so how would you embed Typographical Number Theory into Haskell by using the type system? 19:15:37 http://analysis.no.net/ <-- hm. 19:15:50 Vorpal: oh, thanks; I was wondering where that tab came from 19:15:58 elliott, XD 19:16:02 zzo38: well, basically, every constructor would become a type, with no constructors 19:16:05 itidus20: OK. I had that 'a' results from 'A' just by setting a bit 19:16:09 if you look carefully, 'a' waits until 64.. which is binary 100000 19:16:12 I don't know why you'd wnat to, though 19:16:23 So, still different to your system 19:16:24 but .. i didnt have it as a bit setting 19:16:32 yes.. 19:16:33 :) 19:16:41 darn 19:16:57 bitwise operators sure are cool. 19:17:02 You have 10 (0x0A) for 'A' and 64 (0x40) for 'a' so it doesn't go 19:17:44 zzo38: if only i had shifted my 'a' up by about 10 it would have been the same 19:17:44 But my system does share the property with yours (and also with ASCII) that (('0'&0xF)==0) 19:17:50 well, you have bested me 19:17:50 itidus20: Yes. 19:18:08 now, back to your query 19:18:13 `addquote well, you have bested me itidus20: Yes. 19:18:14 583) well, you have bested me itidus20: Yes. 19:18:49 elliott: That is backwards from how it appears on my screen. 19:18:56 aww 19:19:04 lol 19:19:32 Here is my design: http://sprunge.us/KTBE 19:19:37 elliott: you are using a 6-tuple 19:19:41 do you realize that you are using a 6-tuple? 19:19:47 CakeProphet: :) 19:19:49 maybe you just need to, step back 19:19:53 take a few deep breaths. 19:20:03 get some perspective. 19:20:05 Vorpal: hm? hm? 19:20:11 nooga, just "hm." 19:20:15 ah 19:21:44 elliott: actually I guess a 6-tuple is fine. It's not any cleaner looking than an ADT and you probably can't reduce it in any way. 19:21:46 itidus20: Now, you can see how I designed a different character coding and what your opinion of it is 19:22:24 well i was chasing the luxurious property that ascii hex = binary hex :D 19:23:20 isn't hex just like... hex? 19:23:25 itidus20: I understand. However once doing so, you lose the feature of C where a string terminator can be code zero 19:23:32 ooh 19:24:06 string terminators are ugly 19:24:13 but helpful 19:24:16 nooga, storing (size,data) is far better 19:24:20 So I did somethihng else where it is if you just set one bit (x|0x40) to make it into the character correspond to hex code 19:24:28 does anyone know how to get Linux /usr/bin/time to output with three decimal places? 19:24:29 nooga, less security risks too 19:24:29 for real-time 19:24:32 Vorpal? 19:24:32 Vorpal: but that's like a whole extra WORD of memory. 19:24:38 CakeProphet: 'A' = 65 .. 0xA = 10 19:24:42 CakeProphet, oh, embedded? 19:24:42 Vorpal: maybe even more!!! 19:24:43 right 19:25:08 $ time 19:25:08 real0m0.000s 19:25:09 memory is scarce these days, Vorpal. 19:25:13 elliott, as far as I can tell it does already 19:25:16 Vorpal: /usr/bin/time in particular. 19:25:18 not built-in time. 19:25:27 elliott, bash: /usr/bin/time: No such file or directory 19:25:33 /bin/time then 19:25:39 huh, not that either 19:25:39 what 19:25:44 your system is broken :P 19:25:47 zzo38: ah cool.. so you used bitflags extensively 19:25:50 *pffft* 19:25:55 elliott, yeah seems so. 19:25:58 Enlightenment... Is going to release. 19:26:03 itidus20: Yes. I did. 19:26:14 $ pkgfile -s /usr/bin/time 19:26:14 extra/time 19:26:19 need to install that 19:26:21 I guess 19:26:30 elliott, what is wrong with the built in time? 19:26:47 Although I did use other features too, such as the ordering of < = > sequentially in that order, the same as in ASCII. 19:26:53 Vorpal: can't get it to output nicely 19:27:02 elliott, in what way? 19:27:03 But for {} () [] brackets, to find the delimiters it is just one bit 19:27:06 aha hm 19:27:07 elliott, it goes to stderr 19:27:08 :t mapM 19:27:10 forall a (m :: * -> *) b. (Monad m) => (a -> m b) -> [a] -> m [b] 19:27:26 perfect, 19:27:29 $ TIMEFORMAT=%3R; for i in `seq 9`; do time ../../shiro mycology.b98 >/dev/null; done 19:27:53 > mapM (const [0,1]) [1,1,1,1,1,1,1,1] 19:27:54 [[0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,1],[0,0,0,0,0,0,1,0],[0,0,0,0,0,0,1,1],[0... 19:28:09 -!- oerjan has joined. 19:28:33 > mapM (const "01") "________" 19:28:34 ["00000000","00000001","00000010","00000011","00000100","00000101","0000011... 19:28:51 zzo38: I do believe that distractions are healthy, and hence this topic, however, I find it very difficult of late to concentrate on anything for a meaningful length of time. So my distractions are the fruits of lazy. 19:29:15 :t replicateM 19:29:15 forall (m :: * -> *) a. (Monad m) => Int -> m a -> m [a] 19:29:25 And what I mean is I think your other topic is more important than some alternative character set I imagined at a whim. 19:29:32 > replicateM 8 "01" 19:29:33 ["00000000","00000001","00000010","00000011","00000100","00000101","0000011... 19:29:58 aha. 19:30:09 well, right... 19:30:20 oerjan: awesome 19:30:24 I was looking for a different way than using good old replicateM 19:30:33 i assume both of them end up applying sequence to the same list 19:30:34 I am like one of those people who never stops talking ever. 19:30:39 oerjan: yeah. 19:30:58 @src mapM 19:30:58 mapM f as = sequence (map f as) 19:31:04 @src replicateM 19:31:04 replicateM n x = sequence (replicate n x) 19:31:22 since I'm using const all that's importance is the length of the input list in mapM 19:31:42 zzo38: having said that, how do these things work in practice? is it like a filter which translates a character stream? 19:32:03 > sequence $ "________" >> ["01"] 19:32:04 ["00000000","00000001","00000010","00000011","00000100","00000101","0000011... 19:32:12 map (const x) ls == replicate (length ls) x 19:32:14 like: char zzo_char(char a); 19:32:51 itidus20: a mapping function would be one way to do it, yes. 19:32:57 -!- NihilistDandy has quit (Ping timeout: 276 seconds). 19:33:05 :t (<$) 19:33:06 forall a (f :: * -> *) b. (Functor f) => a -> f b -> f a 19:33:27 > sequence $ "01" <$ "________" 19:33:27 aha, that's the function I was looking for, once. 19:33:28 ["00000000","00000001","00000010","00000011","00000100","00000101","0000011... 19:33:37 or can the video card be hacked to display text how you want it? :D 19:34:00 eh... wishful thinking 19:34:12 itidus20: if you use video mode, like every graphical OS, then you control charsets 19:34:19 you just draw text as you see fit. 19:34:20 ahh 19:34:38 because text mode is very rare nowadays i suppose 19:34:46 text mode uses whatever font is currently loaded, by default what people consider the "DOS font", I'm sure there's a "portable" way to load a new one, since Linux does it 19:34:49 so you could handle that, too 19:34:57 If you use an EGA/VGA compatible text mode, those have editable fonts too, yes. 19:35:01 ooh 19:35:02 and keyboards send in scancodes, not ASCII, anyway, so you need a translation, but not one from ASCII 19:35:17 so yes, you could use zzo38's character set all the way right up until the point where you need to talk to anyone else in the universe :P 19:35:25 so zzo38 could make an OS with his own charset and such 19:35:44 Yes, but we would still be speaking UTF-8. 19:35:53 humm 19:35:54 itidus20, most modern personal computers can change to text mode with a single keyboard combination 19:35:54 -!- monqy has joined. 19:36:13 I do not believe Windows has any such functionality. 19:36:24 i do not believe i left out "modern" 19:36:26 implication: windows is not modern :D 19:36:32 I believe most consoles tend to be framebuffers nowadays too. 19:36:52 indeed 19:36:56 i do not 19:37:03 * pikhq_ actually doesn't have a framebuffer set up. 19:37:09 they are usually framebuffers on linux 19:37:19 I mean it tends to be that by default these days 19:37:22 especially with KMS 19:37:38 vesafb sucks, and the Radeon KMS thing would be great except that the Radeon X driver is unstable. 19:37:40 i don't think the ttys are framebuffers 19:37:41 i have derailed things with my topic 19:37:46 I think the Ubuntu default is to use a framebuffer console, and that's quite a market share right there. 19:37:57 haha, yeah Windows is totally not modern and stuff. 19:37:59 framebuffer consoles are discernible by a certain amount of lag on display 19:38:01 pikhq_, atm I think I use vesafb + catalyst or some crazy combo 19:38:17 cheater_: That's just vesafb. 19:38:19 fizzie: see dictionary entry w → wasting your time, n. 19:38:25 pikhq_, oh? 19:38:28 hmm is "wasting your time" a noun WILL THE WORLD EVER KNOW... 19:38:43 cheater_: Nothing inherent, the vesafb driver is just naive. 19:38:48 pikhq_, what fb do you use when you use intel graphics hm 19:38:55 Vorpal: I don't have Intel graphics. 19:38:59 Vorpal: :) 19:38:59 right 19:39:25 elliott: it's a gerund phrase or part of the sentence's predicate. 19:39:30 so, it can be one. :P 19:39:47 by a stretch of definition, I guess. 19:40:32 wasting your time is bad 19:40:34 stop wasting your time. 19:40:51 i'm learning ellian script 19:41:20 is that like, spelling out numbers and symbol characters and stuff? 19:41:33 http://www.ccelian.com/concepca.html 19:41:34 ellian as in elliott? 19:41:42 oh no. okay 19:41:58 I was pretty confused about that. 19:41:58 -!- pumpkin has joined. 19:42:05 looks nice but it's not very handy for handwriting 19:44:00 -!- copumpkin has quit (Ping timeout: 252 seconds). 19:44:29 I remember for my Java class we had paper tests. 19:44:35 so I had to... write Java code by hand. 19:45:02 it was the most unnatural thing ever. 19:45:03 class MyClass extending PaperTests 19:45:13 i wrote C and C++ by hand 19:45:25 on tests 19:45:38 I've only had to write pseudocode by hand so far 19:45:38 Vorpal: My work-workstation has some Intel graphics in it, and /sys/class/graphics/fb0/name says "inteldrmfb". 19:45:46 nooga, what architecture did you write it for 19:46:27 every single one that's supported by the compiler that teacher had to test answers lol 19:47:42 elliott: does Haskell have something equivalent to #if? 19:48:59 CakeProphet: you can choose to have cpp run over your code, but don't. 19:49:00 why do you want it 19:49:12 why do you want #if 19:49:19 there's probably a better way 19:49:55 help dilemmas are hard monqy 19:50:16 dilemmas what 19:50:24 fclabels or data-lens for shiro........ 19:50:36 sometimes there's a portable solution which isn't quite efficient. hm you could probably use rules for that... 19:50:36 i cannot deciduous trees.... 19:51:39 I've only glanced at data-lens but I remember preferring fclabels. my glance may not have gotten the big appeal of data-lens though 19:52:28 data-lens is the lenses package right 19:52:28 monqy: well in theory data-lens has more efficient updates, because it's (a -> (b, b -> a)) rather than (a -> b, a -> b -> a) 19:52:31 no 19:52:33 http://hackage.haskell.org/package/data-lens 19:52:34 oh 19:52:34 elliott: you can probably use template haskell as well, can't you? 19:52:36 kmett's 19:52:41 oerjan: um? 19:52:46 oh for number sign if? 19:52:47 I'll glance 19:52:47 for conditional compilation 19:52:47 tell CakeProphet 19:52:49 elliott: just wondering how platform-specific stuff is handled. I have no use for it. 19:52:56 CakeProphet: abstraction 19:53:24 so GHC does it all basically 19:54:04 monqy: but yes it is like... data-lens has a better type and has a totally better author??? but its TH stuff uses a _ suffix rather than a _ prefix which I like slightly less? except that's not fair since you can provide another prefix but that involves writing your own thing and feels weird to me because peer pressure.......... 19:54:22 and fclabels is I think more popular?? but 19:54:23 it introduces 19:54:25 more types.... 19:54:34 so............yeah............. 19:54:51 fclabels is nice. I've never heard of data-lens 19:55:13 monqy: the ansewr to http://stackoverflow.com/questions/5767129/lenses-fclabels-data-accessor-which-library-for-structure-access-and-mutation goes in depth a bit, totally biased since it's written by kmett :) 19:55:14 im still glancing at data-lens 19:55:21 but it's pretty explanatroy............. 19:55:35 Wow, that was really annoying, but here's a sysfs-oneliner to get the currently active virtual console driver type: 19:55:37 fis@eris:~$ for c in /sys/devices/virtual/vtconsole/vtcon*; do read b < $c/bind; if [ $b == 1 ]; then cat $c/name; fi; done 19:55:37 (S) VGA+ 19:55:41 [htkallas@pc112 ~]$ for c in /sys/devices/virtual/vtconsole/vtcon*; do read b < $c/bind; if [ $b == 1 ]; then cat $c/name; fi; done 19:55:41 (M) frame buffer device 19:55:44 also I think he's done a bunch of ~benchmarking~ of them?? and his type isf astest 19:55:46 not that it...mattres 19:55:49 basically there's a point where a project becomes large enough to warrant fclabels. 19:55:52 this is the rule. 19:56:01 (Leftovers from the "you can distinguish a framebuffer console by X" thing.) 19:56:03 monqy: note that some of data-lens is in http://hackage.haskell.org/package/data-lens-fd and http://hackage.haskell.org/package/data-lens-template because of portability 19:56:08 it just becomes more obvious that Haskell's record syntax is shitty. 19:56:17 CakeProphet: a lens package is essential for every project, I am just choosing which 19:56:31 what is this lens you speak of. 19:56:44 uhh... read the answer to http://stackoverflow.com/questions/5767129/lenses-fclabels-data-accessor-which-library-for-structure-access-and-mutation 19:57:14 CakeProphet: sheesh there is plenty of #if in haskell library code, see e.g. http://www.haskell.org/ghc/docs/latest/html/libraries/directory-1.1.0.1/src/System-Directory.html 19:58:01 elliott: any idea why it's called a lens? 19:58:29 CakeProphet: it's fairly evocative, short, unused, and pretty 19:58:34 good reasons???? 19:58:48 elliott: Also it gets FLARES. 19:59:53 CakeProphet, because it "concentrates" on a part of the information, but the other bits are still there 20:00:19 like when you're looking at something through a lens, you see what it's pointing at in large, but the other stuff is still squished around the corner 20:00:35 and you can still sort of get them back. 20:00:38 no. there is no sense in which the other bits are "still there". 20:00:49 Lens (a -> b) (a -> b -> a) 20:00:56 the first function discards the other bits. 20:01:03 the second function isn't concentrating at all. 20:01:19 there is that residue isomorphism representation, but it is new, apparently inefficient, and i know of only one person who uses it 20:01:28 and it is certainly not the standard, and originated years after they were called lenses. 20:02:14 so it's new to you? 20:02:38 i recall some humorous comment not long ago from someone who finally caved in and started calling them lenses 20:02:43 it's not "new to me", the talk/blog post introducing it freely admits they came up with it ercently. 20:02:45 recently. 20:02:52 oerjan: yes, same person who invented the residue representation 20:03:00 ah 20:03:07 http://twanvl.nl/tag/lens 20:03:13 http://twanvl.nl/blog/haskell/isomorphism-lenses 20:03:27 anyways 20:03:32 sounds about right 20:03:33 i know more than one person who uses this 20:03:39 so it's not like they're unused 20:04:13 I don't know why they would, since they're hard to use and inefficient. 20:04:21 Elegant, but little else. 20:04:34 Oh no! I was the original author of data-accessor, and then I passed it over to Henning and stopped paying attention. The a -> r -> (a,r) representation also makes me uncomfortable, and my original implementation was just like your Lens type. Heeennnninngg!! 20:04:44 "Heeennnninngg!!" is my catchphrase 20:04:54 -!- pikhq_ has quit (Ping timeout: 252 seconds). 20:05:39 -!- pumpkin has changed nick to copumpkin. 20:07:16 -!- pikhq has joined. 20:07:37 huh 20:07:47 apparently my email address was accessed in Egypt 19 hours ago. 20:07:54 monqy: longest glance 20:08:18 longest glance. 20:08:23 it looks nice???? 20:08:42 monqy: i know the things making me waver at all are basically 20:08:50 - oh no more people use fclabels (peer pressure) 20:09:06 - oh no the default suffix is slightly less nice? (even though i can fix that it would be going against the grain even though it's just one function call (peer pressure)) 20:09:11 peers: bad to press 20:09:37 CakeProphet: probably someone in mubarak's family trying to use it to contact a person who can help them get their money out of the country 20:10:34 probably 20:10:52 one thing i think i like more about fclabels it is easier to learn getL setL modifyL and friends than all of these crazy infix operators 20:11:02 elliott: there's plenty of precedent for this method. see your old mail folder. 20:11:08 monqy: you're not meant to use the ones in Data.Lens.Common 20:11:26 oh 20:11:30 monqy: see http://hackage.haskell.org/packages/archive/data-lens/2.0.0/doc/html/Data-Lens-Strict.html for the operators you're Meant To Use 20:11:34 or http://hackage.haskell.org/packages/archive/data-lens/2.0.0/doc/html/Data-Lens-Lazy.html 20:11:38 or http://hackage.haskell.org/packages/archive/data-lens-fd/2.0/doc/html/Data-Lens.html 20:11:40 they're all the same, API-wise 20:11:45 well 20:11:50 except the -fd one has strict versions with the exclamation marks 20:11:58 it still looks like crazy infix operators 20:12:17 -!- pikhq has quit (Ping timeout: 240 seconds). 20:12:18 -!- pikhq_ has joined. 20:12:51 %= seems reasonable to me??? as a modify operator 20:13:03 ok != is a _bit_ confusing for assignment :D 20:13:11 !||%%-*= 20:13:16 by crazy I mean 20:13:21 > let (>:-/) a = concat . replicate a in 10 >:-/ "HA" 20:13:22 "HAHAHAHAHAHAHAHAHAHA" 20:13:23 it will take me a little while to learn them 20:13:34 monqy: but, stop, you peer pressured me into fclabels already, :( 20:13:41 I did???? :( 20:13:45 yes 20:13:45 help 20:13:47 glep 20:14:15 ha, nice. += 20:14:34 and friends. 20:15:43 ~= applies a regex to a string in reverse right? 20:16:29 elliott: I think the infix operator look nice, and you get the benefits of MonadState 20:16:54 CakeProphet: well, fclabels has monadstate stuff too :P 20:16:55 the infix operators in common aren't in monadstate 20:17:24 can you compose lenses in data-lens? 20:17:36 of course. 20:17:38 yes there is a category instance 20:17:42 that's a feature of every single lens package :P 20:17:45 that's like half the point of lenses 20:18:04 every single lens package excpet lenses???? or do they have it too 20:18:21 not according to that kmett dude. 20:20:12 elliott: also, how's anarchy working out for you? 20:20:24 wat 20:20:28 not according to that kmett dude. 20:20:28 ? 20:20:35 oh right 20:20:37 well that package is just bad 20:21:26 brb 20:22:08 -!- elliott has quit (Remote host closed the connection). 20:22:23 -!- elliott has joined. 20:22:41 -!- KingOfKarlsruhe has joined. 20:24:49 so data-lens looks good and i like it??? 20:25:34 I may convert a few things i wrote with fclabels to get used to it 20:26:29 he says, as elliott is minutes into fclabelling 20:26:35 you are probably right i am peer pressuring myself too muches... 20:26:42 im kind of iffy on the assignment operator though 20:26:45 ~= doesn't feel right 20:26:55 i guess you are meant to use the strict version when possible 20:26:59 but != feels even less right 20:27:42 peer pressure is a bad thing 20:28:23 another thing i like about data-lens but i do not know if it is right to like is it comes with a bunch of convenience things that I ended up writing myself a bunch all the time when using fclabels 20:28:40 like what, i am curiosios 20:28:44 fstLens, sndLens, (^%%=) 20:28:54 most notably (^%%=) 20:29:40 the confused but happy clown operator 20:31:07 -!- GreaseMonkey has joined. 20:31:07 -!- GreaseMonkey has quit (Changing host). 20:31:07 -!- GreaseMonkey has joined. 20:33:44 monqy: im just worried that maybe shiro will get slower with lenses :( 20:33:45 but actually 20:33:51 using tehs trict modifiers might even speed it up 20:34:44 i usually prefer nice pretty beautiful over speed because i am bad at coping 20:36:04 monqy: yes but, you see, 20:36:18 with shiro i have to prove that haskell and BRAINS is faster than C with inline assembly and posix_fadvise 20:36:33 oh 20:36:41 currently it takes about one second on mycology which is almost precisely one second slower than cfunge and ccbi :( 20:36:41 what is shiro i forget or never knew 20:36:49 my funge interpreter in haskell 20:36:50 oh right 20:36:51 funge 20:37:25 i do not like this proof it is like asking for pain :( 20:38:44 monqy: but i will maintain 20:38:45 ELEAGNCE 20:38:49 in the quest for geratnes 20:43:01 goto = (rayPosition . ipRay . currentIP !=) 20:43:09 monqy: help its confusing, i think, keeping, its /= :( 20:45:09 monqy: i kind of want something that's data-lens except the operators have different names and _ is prefix not postfix for th...... 20:45:22 -!- Phantom__Hoover has quit (Quit: Leaving). 20:45:46 -!- Phantom__Hoover has joined. 20:49:53 ^unscramble ELEAGNCE 20:49:54 EELCENAG 20:50:02 ^unscramble geratnes 20:50:02 gseernat 20:50:17 ^scramble eggs 20:50:18 egsg 20:50:19 LOL OLD JOKE 20:51:57 elliott: it would be easy emough to make a moduley thing to hide all the bad data-lens stuff and export new names and a _ prefix instead of postfix right 20:52:05 monqy: yes but... that feels wrong.... 20:52:09 elliott: of course that would also be a wrong yes 20:52:11 it is like... taking work but insulting.... 20:52:19 -!- boily has quit (Ping timeout: 240 seconds). 20:52:44 maybe I will just poke edwardk every other day until he makes it nicer like that, 20:54:47 Who's edwardk? 20:54:51 It sounds very funny. 20:55:03 Phantom__Hoover: ? 20:55:08 he is this dude 20:55:09 Like something a bird would say. 20:55:16 it is his name....................... 20:55:18 Edwark! Edwark! 20:56:00 https://addons.mozilla.org/en-US/firefox/addon/binnen-i-be-gone/ 20:56:10 I suppose Haskell can be very fast if you use a CPU which is designed to speed up the LLVM operations that Haskell uses a lot, and to save memory by some of that kind of stuff too 20:57:14 https://addons.mozilla.org/en-US/firefox/addon/remove-kampyle/ 20:57:26 i've always wanted to be able to get rid of kamyple. 20:57:36 what is kampyle 20:59:26 zzo38: Haskell's already pretty dang fast. 21:00:05 monqy, a Homestuck spoiler. 21:00:28 Is it? I've nevemmm mmmpph 21:00:34 oh 21:00:54 Phantom__Hoover is full of lies and dead 21:03:37 flies and mead 21:04:02 There is just, how can you make rulebooks with Haskell stuff? And the other stuff I meantioned on that wiki page? 21:04:39 Other unrelated thing: How can the rules of Propositional Calculus be defined using the Haskell type system? 21:04:40 zzo38, I... don't think rule books were a priority. 21:04:59 -!- BeholdMyGlory has quit (Remote host closed the connection). 21:04:59 hm wait is kmett and edwardk different people? 21:05:03 no 21:05:09 zzo38, also Haskell's typesystem maps to an inconsistent logic. 21:05:13 Phantom__Hoover: I know. It is why I try to invent something new. That can do rulebooks and some other features for a specific purpose 21:05:15 whew, i thought i was confused there 21:05:24 Erm, wait, does it? 21:05:35 I mean, you can't actually *prove* bottom. 21:05:40 yes you can 21:05:44 Phantom_Hoover: But, can you do it by not using the inconsistent commands? 21:05:45 lol :: a; lol = undefined 21:05:54 But you can't even define it without extensions! 21:05:59 lol :: a; lol = undefined 21:06:04 no extensions 21:06:07 elliott, no, I mean the empty type. 21:06:13 you can define it 21:06:14 newtype 21:06:18 oh as a type 21:06:24 see "void" package, Edward A. Kmett 21:06:28 hm right 21:06:33 fully standard haskell ninety-eight 21:06:35 elliott, huh, I thought it didn't work. 21:06:46 newtype Void = Void Void 21:06:50 simple as 21:06:59 Haskell does not support empty data types. 21:07:03 — WP 21:07:05 newtype Void = Void Void 21:07:11 this type is uninhabited apart from _|_ 21:07:15 Someone probably ought to fix it. 21:07:18 *that 21:07:19 ... 21:07:20 FFS 21:07:22 it's not an empty data type 21:07:25 it's just an uninhabited one 21:07:27 what WP means is 21:07:32 it does not support empty data DECLARATIONS 21:07:42 which in fact I think is standard since haskell twothousandandten but that's not the point 21:07:52 That's just weird phrasing, then. 21:10:07 Yes, Haskell does accept newtype Void = Void Void 21:10:31 elliott: hm there's one problem with that newtype, i don't think you can use it to prove Void -> a (which is an axiom) without doing further recursion? 21:10:44 oerjan: absurd :: Void -> a 21:10:44 absurd (Void a) = absurd a 21:10:48 oerjan: but note that it never actually recurses 21:10:55 because absurd never gets past pattern-matching 21:10:59 because newtypes are strict, etc. 21:11:04 umm wait 21:11:05 in fact 21:11:09 it never even gets to pattern-matching 21:11:12 absurd's body is irrelevant 21:11:18 because (Void x) will never halt 21:11:22 you know what i mean 21:11:27 hlep 21:11:28 im tired 21:11:36 yes but it's still unsatisfactory 21:11:44 oerjan: well, why? 21:12:24 i suppose you could think of it as structural recursion, so it's allowed anyhow 21:12:34 it's exactly structural recursion :P 21:12:54 * elliott wonders what the induction/recursion principle is for Void 21:13:00 haha, I think it might be (a -> a) -> a 21:13:10 OK, now, how do you define a function that can use this "Void" type? 21:13:18 ind f (Void a) = f (ind f a) 21:15:51 -!- KingOfKarlsruhe has quit (Quit: ChatZilla 0.9.87 [Firefox 5.0/20110615151330]). 21:16:41 O, the type is always "Void -> Void" if you type "Void". 21:17:35 `quote monad 21:17:36 293) Deewiant: ha, you were wrong, I have stacks, fungespace and MULTIPLE functions! and a monad! nothing can stop me now! \ 479) oerjan, little do you realise that everything you say and do is part of that great monad tutorial we call life. 21:17:57 Oh. 21:18:07 I like how the first is accidentally topical. 21:18:37 So it is possible to define types that have no use, I guess. 21:19:36 I guess this "Void" type is a type that has no use, isn't it? 21:20:32 With that "ind" function it reports its type as: ind :: (t -> t) -> Void -> t 21:20:47 -!- derrik has quit (Quit: take carezzz). 21:21:22 yeah 21:21:48 zzo38: well, the use is that you can model not-p as (p -> Void) 21:22:19 i've been thinking that most of those "no real result" monadic actions like putStr should really have been -> IO Void 21:23:11 OK, but if it still has to return you can use () which is a valid value even though it can store nothing 21:23:26 Which is probably why it is not IO Void 21:23:49 but haskell is lazy, so you don't _need_ to return a non-bottom value 21:24:00 i've been thinking that most of those "no real result" monadic actions like putStr should really have been -> IO Void 21:24:10 that "IO is not a monad" post by roconnor got someone saying this, iirc 21:24:13 as in 21:24:15 main :: IO Void 21:24:27 oerjan: I think we should generally try and pretend that _|_ doesn't exist though :) 21:25:21 not just IO, you could have put :: MonadState s m -> s -> m Void as well 21:25:28 :t put 21:25:29 forall s (m :: * -> *). (MonadState s m) => s -> m () 21:25:36 * => 21:29:07 asiekierka, now embarassing himself on the IWC forum http://i.imgur.com/wy9Bo.png 21:30:20 oerjan: oh joy 21:30:52 :< 21:30:57 oh and there was a link to the actual skin in the forum message 21:31:16 http://www.irregularwebcomic.net/draakslair/viewtopic.php?t=6048 21:31:42 Now I can see how the "Void" type is the correct type for use in this "ind" function, even though it has no use. 21:35:09 It also accepts: x = Void x 21:36:33 zzo38: yes, but evaluating x diverges 21:36:36 whereas, e.g. 21:36:38 x = Just x 21:36:39 doesn't 21:36:41 because Just is not strict 21:37:17 A Just ruler is not a Strict ruler 21:42:15 "Thus to pad out 7 bytes of space would require 7 nop instructions to be issued, which is a significantly slower way of doing nothing!" 21:43:32 http://i.imgur.com/PoV4s.gif 21:49:06 -!- Taneb has quit (Ping timeout: 260 seconds). 21:51:45 -!- nooga has quit (Ping timeout: 250 seconds). 21:56:27 -!- Nisstyre has joined. 22:08:17 -!- GreaseMonkey has quit (Quit: The Other Game). 22:16:58 -!- elliott has quit (Ping timeout: 258 seconds). 22:36:03 Will any Haskell add a ENCODING pragma to indicate what character encoding should be used in the runtime such as ASCII or Unicode? 22:37:55 -!- augur_ has changed nick to augur. 22:45:35 zzo38: in recent ghc, you set runtime encoding with operations on file handles 22:45:59 @hoogle encoding 22:45:59 Network.CGI newtype ContentEncoding 22:46:00 Network.CGI ContentEncoding :: String -> ContentEncoding 22:46:00 Network.HTTP.Headers HdrAcceptEncoding :: HeaderName 22:46:09 @hoogle base:encoding 22:46:09 Parse error: 22:46:09 --count=20 base:encoding 22:46:09 ^ 22:46:13 er 22:46:18 @hoogle -base encoding 22:46:18 Network.CGI newtype ContentEncoding 22:46:19 Network.CGI ContentEncoding :: String -> ContentEncoding 22:46:19 Network.HTTP.Headers HdrAcceptEncoding :: HeaderName 22:46:38 bah 22:48:09 @hoogle encoding :: Handle -> IO () 22:48:10 No results found 22:49:02 http://www.haskell.org/ghc/docs/latest/html/libraries/base-4.4.0.0/System-IO.html#g:23 23:06:27 @tell ais523 BtW, you've been voted out of office in DF. 23:06:28 Consider it noted. 23:08:04 -!- CakeProphet has quit (Ping timeout: 258 seconds). 23:08:58 DF has democracy? 23:09:13 DF? 23:09:25 i assume this is dwarf fortress.. 23:09:34 ah 23:09:35 -!- CakeProphet has joined. 23:09:35 -!- CakeProphet has quit (Changing host). 23:09:35 -!- CakeProphet has joined. 23:14:25 -!- pikhq has joined. 23:17:12 -!- pikhq_ has quit (Ping timeout: 260 seconds). 23:25:03 -!- copumpkin has quit (Ping timeout: 240 seconds). 23:37:08 DF has democracy? 23:37:11 Only for the mayor. 23:37:32 mhm 23:50:25 -!- Phantom__Hoover has quit (Ping timeout: 250 seconds). 23:57:48 -!- copumpkin has joined.