00:07:39 zzo38: yes, the introdution looks good. reading between the lines, I can see that you want something human editable rather than just a data exchange format for programs, which explains the flexibility in the syntax 00:08:38 -!- ter2 has quit (Ping timeout: 240 seconds). 00:18:28 How well do you think it is compared to other formats and stuff? What one you use can depend on the application, but I would like to know other people's opinions on these comparison between formats too 00:24:24 of the standard ones I tend to like JSON best but it's inconvenient for embedding binary data (since, as you write, it's tied to Unicode) I agrree that the standard text representation of XML is too verbose, and that binary formats will not be human readable nor editable. 00:26:06 -!- aretecode has quit (Remote host closed the connection). 00:26:13 Oh and references are a nice touch (I've seen such before in lpmud save files, hmm :) ). I'm less convinced that macros should be part of the data format. 00:27:57 (I'd be worried about somebody writing F(x) = [x;x] and then F(F(...F(42)...)) and crash my program.) 00:28:38 but of course references have the same potential, if one isn't careful 00:29:25 Adding limits can avoid the F(F(...F(42)...)) problem. This is what SQLite does. 00:29:45 is this right? [A.[A.[A.42,A],A],A] 00:29:53 err, , -> ; 00:30:47 int-e: Yes, it is valid, although may be ambiguous depending on the application. 00:30:49 Or do I need 3 names for that? 00:31:08 Actually perhaps I should just specify you need 3 names for that. 00:31:12 It wasn't previously clear. 00:31:25 Needing 3 names is probably clearer and simpler and more sensible. 00:31:54 Note that references are their own datatype, not the type of whatever it is referencing. 00:31:55 Oh. What about [A.[A]]? 00:32:04 Yes, that is valid. 00:32:25 (why is this restricted to list items?) 00:32:26 It is a list containing a list containing a reference to the first item of the first list. 00:33:21 It is restricted to list items because of what references are and are not. They do not represent a copy of the data. 00:34:05 it precludes {A=ref.[1;2;3];B=ref} 00:34:53 That wouldn't make sense though. If you want to use the list [1;2;3] in several places, you should want a macro, not a reference. 00:34:53 which seems sensible. (whereas A.[A] is a bit silly) 00:35:07 zzo38: but then it would be duplicated 00:36:21 References represent a pointer to the data, and are certainly not interchangeable with the data themself! 00:36:27 It just seems strange to forbid that but allow [ref.[1,2,3],{A=ref,B=ref}] 00:36:52 zzo38: yes. I want A and B to point to the same list. 00:37:00 Perhaps it does seem strange to you, but to me it doesn't 00:37:03 not to two equal lists. 00:37:15 int-e: wouldn't that make A the actual list [1;2;3] but B only a reference to it? 00:37:16 int-e: Well, references point to a position in a list. 00:37:18 so it's not quite what you want 00:37:30 elliott: Correct. 00:37:54 you'd need, like, &ref.[1;2;3] 00:38:06 -!- ter2 has joined. 00:38:28 Oh. [ref.[1;2;3];ref] and [ref,ref.[1;2;3]] are not the same? 00:38:42 (sorry, I still write , for ;) 00:38:52 That is correct they are not the same at all. 00:39:02 ok. that is strange to me. 00:39:03 hence Note that references are their own datatype, not the type of whatever it is referencing. 00:39:34 but fine. 00:39:48 int-e: presumably foo.x is like ({ foo = &x; *foo }) for some imagined foo, so to speak, and foo is like... well, foo 00:39:57 or whatever. 00:40:09 (then the lpmud reference (sic!) was invalid though, since that encoded actual sharing.) 00:40:47 or encodes ... I know for a fact that a couple of those things are still running 00:47:52 -!- boily has quit (Quit: UNKNOWABLE CHICKEN). 00:48:24 -!- Phantom__Hoover has quit (Read error: Connection reset by peer). 00:48:48 aaargh. I've been wondering for a week now why somebody would calle a function "runit" ... I read it as 'r-unit'... 00:59:01 -!- nooodl_ has quit (Quit: Ik ga weg). 01:00:43 -!- monotone has quit (Quit: "I can hear myself... I think I'm a bit afraid."). 01:01:02 -!- monotone has joined. 01:03:06 heh. I found this comment in lambdabot: | not classFound -- can't trust those dodgy folk in #haskell 01:03:30 @instances Dodgy 01:03:30 Couldn't find class `Dodgy'. Try @instances-importing 01:13:23 -!- mhi^ has quit (Quit: Lost terminal). 01:14:41 why would you nit a ru 01:15:30 @instances-importing Extremely.Unsafe Dodgy 01:15:31 Couldn't find class `Dodgy'. Try @instances-importing 01:30:25 -!- blitter64 has quit (Ping timeout: 276 seconds). 01:52:23 -!- blitter64 has joined. 02:06:28 !ping 02:06:34 Pong! 02:08:23 -!- blitter64 has quit (Ping timeout: 252 seconds). 02:30:13 -!- BeingToDeath has quit (Ping timeout: 276 seconds). 02:31:33 -!- Sorella has quit (Quit: sleeeep). 02:45:09 -!- MoALTz has joined. 02:45:41 -!- MoALTz_ has quit (Ping timeout: 252 seconds). 02:51:27 -!- Tod-Autojoined has changed nick to TodPunk. 03:00:44 -!- MoALTz has quit (Read error: Connection reset by peer). 03:01:39 -!- MoALTz has joined. 03:51:19 -!- ter2 has quit (Ping timeout: 252 seconds). 04:53:03 -!- Vorpal has quit (Quit: ZNC - http://znc.sourceforge.net). 05:07:53 hi sgeo, how goes it? 05:08:10 Situation normal 05:15:52 Sometimes I think I'm the sort of person who recognizes his mistakes, and then proceeds to do nothing about them.... how do I fix that mistake? 05:16:40 read a book 05:17:49 You did something (although not much) about that mistake, which is, to ask a question about it. That isn't doing much, of course! 05:29:10 O no, maybe ZCDSF is not LALR(1). I am trying to use it with the Lemon parser generator and get errors, which I think is because it has to look ahead a lot in order to figure out the difference of a macro invocation than a macro definition. 05:35:06 Perhaps it can be resolved in the tokenizer? 05:43:06 Rust has this property that you can parse the source into a "token tree" before expanding macros 05:43:09 that turns out to be very useful 05:45:14 tt ::= '(' tt ')' | '{' tt '}' | '[' tt ']' | token tt | '' 05:45:16 approximately 05:46:17 macro expansion is sort of ugly though; there's an AST node type for each place a macro invocation can appear (ExprMac, PatMac, etc.) and these are expanded at some point 05:46:40 Have macros changed since the last release, or from last release and release before then? 05:46:40 and then all the code which runs after that point has like ExprMac(_) => tcx.sess.bug("unexpanded macro") 05:46:47 I'm figuring maybe I should look at a stable macro system 05:46:47 Sgeo: I don't pay attention to releases 05:46:56 How much is it changing? 05:47:06 as far as I'm concerned there are two versions of Rust: master, and whichever one Servo is using 05:47:11 rust seems like a bad place to look for stability 05:47:13 and the one Servo is using is almost never a release 05:47:19 the macro system isn't changing that much, though 05:47:27 I just added the ability to expand macros in pattern position 05:47:37 ooh 05:47:57 and the mechanisms for "procedural macros", i.e. running arbitrary Rust code at compile time to produce an AST, are changing some 05:48:06 and those are more exposed to other changes to compiler internals, of course 05:48:16 but the plain Macros By Example macros haven't changed too much since I started using the language almost a year ago 05:50:30 here is the graph of how far behind Rust master Servo has been over time: http://people.mozilla.org/~mbrubeck/servo-rust-updates.svg 05:51:58 i like how when you do update it's not usually to master 05:52:42 yeah because in the time between starting an update and finishing it, master will have moved forward 05:53:03 by 10 days? hee. 05:54:10 yes, it can easily take 10 days to update several 100k LoC for a month or two of language changes 05:54:21 and test it on all platforms and rebase it against the other changes happening in Servo etc. 05:54:44 Mozilla has this "badges" thing (idk really) and you may be amused by the image for the relevant one: https://badges.mozilla.org/en-US/badges/badge/Servo-Rust-upgrade 05:54:50 what platforms is servo targeting btw 05:55:06 oh that's pretty good. 05:55:08 right now, x86-64 Linux, x86-64 OS X, and ARM Android kinda 05:55:21 firefox tells me its connection to mozilla.org is insufficiently secure. 05:55:22 Kinda? 05:55:27 lolol 05:55:39 Bike: the Android testing is not very automated, so it tends to regress a lot 05:55:44 This site does not supply identity information... who could they be....... 05:55:50 I think currently we can't run JavaScript on Android. 05:55:55 in fact people are puzzled as to how we were ever able to 05:55:58 * kmc -> afk -> ice cream 05:56:57 good choice 06:03:01 -!- password2 has joined. 06:04:33 http://doc.x3dom.org/developer/x3dom/runtime/index.html 06:04:41 * Sgeo hits his head on a convenient wall 06:05:46 a very nice and clean bar 06:18:21 [TAS] GC Crazy Taxi by solarplex in 05:53.18: http://youtu.be/O2wnNYmpABg 06:22:18 every channel I'm in becomes #rust 06:22:24 I'm vaguely aware that this can be annoying 06:23:07 lol 06:23:57 mmm ice cream 06:30:21 you got that right 06:30:51 Should I try to learn raw WebGL or some convenient library like Three.JS? Or both? 06:34:31 -!- shikhin has joined. 06:34:39 -!- MoALTz has quit (Quit: Leaving). 06:37:52 what do you want to make? 06:38:22 Raw webgl is kinda annoying compared to shiny things like ThreeJS 06:38:34 so if you don't need it, use the abstractions 06:39:06 OpenGL is pretty low level and WebGL / GLES remove more of the stuff you'd want for using OpenGL "by hand" 06:40:10 If only we'd had WebDirectX.... 06:41:20 Well, it could be interesting to learn how the low level stuff works 06:41:35 And use the abstractions for anything interesting 06:42:13 mcpherrin: just write an activex plugin 06:43:20 Programming first 'clicked' in my mind when reading about ActiveX 06:45:33 what about it? 06:47:04 I think... just the concept of the computer being entirely controlled by code 06:47:08 I'm not sure. I was a kid 06:48:32 cool 06:58:08 -!- password2 has quit (Ping timeout: 255 seconds). 07:05:02 ah a classic "Users like this are like a mongoose backed into a corner: with its back to the wall and seeing certain death staring it in the face, it attacks frantically, because doing something has to be better than doing nothing. This is not well adapted to the type of problems computers produce." 07:05:31 http://www.chiark.greenend.org.uk/~sgtatham/bugs.html 07:22:50 I have always loved metaballs 07:23:26 -!- conehead has quit (Quit: Computer has gone to sleep). 07:25:59 what about meatballs? 07:26:04 fungot: I found a food truck selling "fonduewurst" 07:26:05 kmc: http://tinyurl.com/ fnord is a confusing little bit of code i've had to be crashed to the ground to touch your nose. 07:27:59 kmc: they're awesome to look at 07:28:07 Oh, you changed the word 07:29:24 -!- Tritonio has joined. 07:33:53 -!- pikhq has quit (Ping timeout: 264 seconds). 07:41:17 -!- slereah has joined. 07:41:22 Hello, I would like to magic 07:41:29 Can you teach me the secret arts 07:42:04 `` WeLcOmE slereah | rainwords 07:42:06 ​SlErEaH: wElCoMe tO ThE InTeRnAtIoNaL HuB FoR EsOtErIc pRoGrAmMiNg lAnGuAgE DeSiGn aNd dEpLoYmEnT! fOr mOrE InFoRmAtIoN, cHeCk oUt oUr wIkI: . (FoR ThE OtHeR KiNd oF EsOtErIcA, tRy #EsOtErIc oN IrC.DaL.NeT.) 07:42:30 Nice spell~ 07:43:47 I do not think we are a school for any secret arts. (If we were, it wouldn't be much secret, isn't it?) 07:44:26 Then why do you have the HackEgo golem 07:45:06 To write strange messages like that. 07:45:46 -!- MindlessDrone has joined. 07:45:49 HackEgo, kill all humans 07:46:16 slereah: you cannot command it without the secret art of syntagma 07:46:48 ``help 07:46:48 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: `help: not found 07:46:51 Aw 07:49:41 -!- oerjan has quit (Quit: Munus sigsigga ag bara ye). 07:53:15 -!- pikhq has joined. 07:56:29 I have an exam in like 4 hours 07:56:33 Time to clean my room 07:58:44 `coins 07:58:45 ​crtcoin bracoin quycoin kellosophiloxicoin blindex.phpcoin bitbitzcoin killcoin neurcoin abccoin prestowcoin swellicoin thumseycoin aheltscoin rnatacoin rolcoin um-32coin ootcoin evilleravillcoin unlolanptcoin byacoin 08:02:41 bitbitzcoin 08:21:52 crtcoin uses old, broken CRT monitors as physical coins. 08:22:12 Must be a big coinpurse 08:25:33 I helped my friend haul a 100 kg Trinitron flat-tube CRT television the other day 08:25:51 flat tubes weigh even more than usual tubes 08:27:03 Is there a connection between Trinitron brand aperture grilles and trinitrotoluene? 08:28:22 -!- Patashu has joined. 08:28:54 i hope not 08:28:57 for my friend's sake 08:30:16 it's probably trinity+tron ... trinity because of the three colors in RGB? perhaps 08:30:52 My bookshelf is getting increasingly full :D 08:31:20 olsner: It's kind of silly, since what it improved on also had three colors and elec-tron beams. 08:32:09 apparently trinity is because they merged the three beams into one beam 08:32:33 Oh, I guess that makes sense. 08:32:41 For some values of sense, anyway. 08:32:45 The Holy Trinitron. 08:35:49 (Except I guess it doesn't have holes?) 08:36:16 [wiki] [[Talk:Rail]] http://esolangs.org/w/index.php?diff=39735&oldid=39722 * 84.174.111.48 * (+41) 08:36:33 ...is a bookshelf the right place for a book of stamps? 08:36:42 "the Erlenmeyer flask was invented by Dr Julius Flask" 08:36:42 i like to put them in the box of envelopes 08:36:43 heheheh 08:37:23 slereah: what 08:37:30 Right, my book of stamps is now on my bookshelf 08:38:03 myname : it is 08:38:05 amusing 08:38:49 where is it from? 08:39:11 It was from Uncyclopedia apparently but got deleted 08:39:17 ah 08:40:02 rustc has a flag that prints out the elapsed time for each compiler pass as they run (some 40 or so of them) 08:40:12 this makes long compile times feel a lot less frustrating 08:40:25 stuff is happening! borrows are being checked and freevars are being found! 08:40:28 Does it have a flag that lets you play tetris while it's compiling? 08:40:34 fizzie: patches welcome 08:40:40 though that might require an RFC first 08:41:01 look through https://github.com/rust-lang/rfcs/blob/master/0000-template.md 08:41:20 Why are we doing this? What use cases does it support? What is the expected outcome? Why should we *not* do this? What is the impact of not doing this? 08:41:36 Yes, those are the kind of questions I might have trouble with. 08:41:36 I've missed my chance this academic year to make lecture notes on a typewriter :( 08:41:56 fizzie: omg that's actually a hilarious idea 08:42:28 mcpherrin: how about a nice game of global thermonuclear war 08:42:38 kmc, I watched that film last night! :) 08:42:41 don't let the build succeed until you can clear a line 08:42:56 kmc: Another suggestion: if the real passes don't seem to be enough, you can add fake "reticulating splines" kind of ones. 08:43:26 Not last night, the other night 08:45:09 Taneb: :) 08:45:16 fizzie: yes, it reminds me very much of that kind of thing 08:45:25 Also Hackers, which is the most 90's film imaginable 08:45:43 Taneb: Hack the planet! 08:46:34 Taneb: http://www.avclub.com/article/ihackersi-may-have-been-of-its-time-but-it-was-als-72249 08:48:46 -!- Patashu has quit (Disconnected by services). 08:48:46 -!- Patashu_ has joined. 08:48:47 my current task involves converting a bunch of small functions to a different form 08:48:55 which is nicely incremental work, and not too challenging 08:49:00 which means I'll probably stay up all night doing it :/ 08:50:55 rust is far too boring with what it'll accept as function names 08:51:28 Miscellaneous Symbols and Pictograms at least is needed 08:52:33 fn (){} 08:52:35 kmc, good read, thanks 08:54:01 hooray 08:55:43 I love Hackers 08:55:43 mcpherrin: but you can do https://gist.github.com/kmcallister/0b1c57d021e1899611a7 at least 08:56:03 kmc: haha, true 09:01:16 hmm I should have a party where we get roller blades and 90s laptops and hack the gibson 09:01:21 yes 09:01:22 count me in 09:01:28 I even have rollerblades! 09:01:36 though I'm bad enough at using them sober... 09:01:50 I don't have them so :p 09:02:06 I ought to get some 09:02:40 Eugene Belford 09:04:18 "Rust input is interpreted as a sequence of Unicode codepoints encoded in UTF-8, normalized to Unicode normalization form NFKC" 09:04:21 I have discovered that this is lies! 09:04:31 python3 -c 'print("#![feature(non_ascii_idents)]\nfn sp\u00e4tzle() { }\nfn main() { spa\u0308tzle() }")' > foo.rs && rustc foo.rs 09:04:34 foo.rs:3:13: 3:21 error: unresolved name `spätzle`. 09:04:41 lies. 09:05:06 kmc: lol, not really that surprising 09:05:16 even in the future nothing works 09:05:36 kmc: it is a well-known lie unfortunately 09:05:43 fn ∯(){} is all I really want 09:05:54 `unidecode ∯ 09:05:55 ​[U+222F SURFACE INTEGRAL] 09:05:59 spätzle is delicious btw 09:06:00 OH WELL 09:06:14 or ∃ is a great one for collections 09:06:18 mcpherrin: have you been to http://walzwerk.com/ ? "authentic and unique East German cuisine in the San Francisco Mission district" 09:06:30 kmc: nope! should I ? 09:06:33 yes 09:06:39 tbh I haven't eaten many places in SF 09:06:56 I am told that the German culinary divide is more north/south, and "East German cuisine" is more about decor and such 09:06:57 Me neither 09:06:59 in the year I've been here, probably only a few, and half of them are burritos 09:06:59 but still, tasty 09:07:28 so my previous city was very german 09:07:32 and I do miss the german food 09:07:42 you should eat there and then watch Good Bye Lenin! 09:07:51 (Kitchener was until some nastiness earlier this centry named Berlin) 09:08:10 or last century? 09:08:42 anyway I didn't know that 09:08:43 that's funny 09:08:53 there's a Madrid, Iowa but it's pronounced MA-drid 09:08:55 c.c 09:09:28 mcpherrin: I found a food truck in Portland that offers currywurst and "fonduewurst" 09:10:18 I have not been to a single Yorkshire-style restaurant, which probably don't exist 09:11:03 -!- shikhin has quit (Ping timeout: 265 seconds). 09:11:09 This is despite living in York 09:11:25 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 09:11:35 I think non-existence is a pretty good excuse, tbh 09:11:54 kmc: omg I miss currywurst 09:11:59 i neeeeds it 09:12:38 it's pretty easy to make at home 09:12:49 less so if you're picky about the finer points of the sauce 09:13:29 and I'm not :P 09:13:38 Rosamunde has it, at least the Mission location 09:13:56 and there's a "King of Cürrywurst" [sic] food truck 09:14:29 Misplaced dots, eh 09:15:44 http://achewood.com/index.php?date=03222004 http://achewood.com/index.php?date=03252004 09:15:47 kmc: my attempts to bootstrap a rust compiler that uses the YOLO keyword aren't going well :p 09:17:33 is gonna need a lot of #[cfg(stage0)] 09:17:45 why? as long as you don't use it in the compiler itself 09:25:05 kmc: 'cause I removed unsafe, haha 09:30:51 well there's yer problem 09:31:14 gotta sleep now, ttyl all 09:31:26 G'night, kmc 09:31:35 G'naneb 09:50:35 YOLO { *(0 as *u8) } 10:16:29 -!- boily has joined. 10:55:56 -!- pikhq has quit (Ping timeout: 265 seconds). 11:01:11 -!- Phantom_Hoover has joined. 11:01:46 -!- atehwa has quit (Ping timeout: 240 seconds). 11:02:45 -!- atehwa has joined. 11:04:31 -!- pikhq has joined. 11:06:47 -!- Sorella has joined. 11:07:00 -!- boily has quit (Quit: Poulet!). 11:16:56 -!- edwardk has quit (Quit: Computer has gone to sleep.). 11:17:17 -!- edwardk has joined. 11:30:46 -!- yorick has joined. 11:32:58 -!- scoofy has quit (Ping timeout: 276 seconds). 11:46:06 -!- scoofy has joined. 12:02:09 -!- Sgeo has quit (Read error: Connection reset by peer). 12:19:54 -!- blitter64 has joined. 12:42:34 -!- blitter64 has quit (Ping timeout: 240 seconds). 12:44:55 -!- M28 has quit (Ping timeout: 252 seconds). 13:06:21 -!- M28 has joined. 13:25:33 Every part of my body is Turing complete 13:31:34 -!- Patashu_ has quit (Ping timeout: 265 seconds). 13:36:06 are DNA processes turing-complete? 13:37:26 Not sure 13:37:46 I don't know how you could make a loop with DNA 13:44:20 slereah: ask your kids 13:45:57 -!- spiette has joined. 13:47:00 You don't need kids for that 13:47:06 Cell division is enough 13:47:34 But how do you do conditions on that loop 13:51:54 "DNA processes"? 13:52:29 and it's easy to make a DNA loop! http://en.wikipedia.org/wiki/Plasmid lolol 13:53:19 Be careful with plasmids man 13:53:29 Last time I took some I had bees coming out of my hands 13:57:22 that sounds excruciatingly painful 13:58:00 http://fc09.deviantart.net/fs70/f/2011/063/b/2/ttdi_bioshock_1__bees_by_anniezard-d3awuto.jpg 13:58:06 http://mimg.ugo.com/201002/36219/cuts/insect-swarm-3_480x360.png 13:58:08 Aaaah 13:58:10 So painful 14:05:59 There something called HDNA (H for Hofstadter). I think it's also know as typogenetics or something. 14:06:17 -!- Phantom_Hoover has quit (Ping timeout: 264 seconds). 14:07:14 http://en.wikipedia.org/wiki/Triple-stranded_DNA ? 14:07:16 Consecutive base pairs are interpreted and do various things like copy a base, cut a strand etc, loop, etc. It appears to be Turing complete. 14:07:19 -!- Sprocklem has quit (Ping timeout: 252 seconds). 14:07:34 hoogsteen is a ridiculous name, though 14:08:00 impomatic: yes it's described in GEB. i once considered writing a wiki article on it 14:08:32 but it's not real? 14:08:33 I think he wrote a bit about it in Goedel, Escher, Bach. I read about it in the January 1982 issue of Practical Computing which has a HDNA interpreter written in Basic. 14:08:49 i mean real DNA has plenty of stuff about alternative splicing, god knows 14:08:55 also pseudoknots which are pretty wack 14:08:58 But does it have a basic interpreter written in HDNA 14:09:13 Quintopia: it's definitely esoteric. You should add it to the wiki :-) 14:09:16 "so there's NP completeness, at least" 14:09:44 impomatic: oh it's not that it's not esoteric that i haven't done it. it's that i'm too lazy. 14:10:22 slereah: this is cute though: http://bioshock.wikia.com/wiki/File:Insect_swarm_plasmid_by_tinamin1-d4jh31s.jpg 14:10:51 The bee plasmid was pretty weak but I used it a lot 14:10:58 Because it's fucking BEES FROM MY HANDS 14:11:17 That is enough to make a whole game out of 14:11:33 oh and Turing wrote a nice paper about symmetry breaking in devbio, imo read it. 14:12:08 Another one which ought to be on the wiki. The language of Tierra. (I don't mind doing this one, I just need to research it a bit more. I haven't seem Ray naming it anywhere) 14:13:28 is tierra the one that's just code in a large block of memory with program pointers passing over it repeatedly 14:13:46 or is the one with actual moving organisms in 3d space 14:14:04 It's all in code, no actual organisms. 14:15:27 yeah i saw something about the language used in that once. no jumps, right? just reading and writing to addresses 14:18:39 It jumps to a template... 14:19:08 i guess i don't remember it too well 14:19:11 No operands to instructions. You'd have jmpb / nop1 / nop0 / nop1 / something else. 14:19:48 That would jump back to the first template matching the complement of the three nops. 14:22:19 ah. so you can jump, but you can't be sure where you're jumping 14:36:43 Only if the matching templates is in your own code. Otherwise you might jump into another program and run it's code (like a parasite) 14:39:20 -!- mihow has joined. 14:43:34 -!- jix has quit (Remote host closed the connection). 14:44:03 -!- jix has joined. 14:45:10 -!- edwardk has quit (Quit: Computer has gone to sleep.). 14:56:35 -!- Gregor`` has changed nick to Gregor. 15:14:36 Help I need to sort out my life 15:15:44 Like, urgently 15:16:05 Had a room inspection and the result was "We are worried about your health" 15:25:52 -!- nooodl has joined. 15:30:55 -!- Tritonio has quit (Ping timeout: 252 seconds). 15:36:11 -!- ter2 has joined. 15:46:26 -!- oerjan has joined. 15:49:21 -!- drdanmaku has joined. 15:51:05 Taneb: why exactly? Assuming it's messy, just hire a cleaner (or find a girlfriend who's clean / tidy). Assuming it's full of alcohol etc just print off some healthy looking labels to disguise it. 15:51:38 impomatic, evidently there's an oppressive smell 15:53:08 that's... extreme 16:01:19 -!- nooodl has quit (Quit: Ik ga weg). 16:06:14 -!- slereah has quit (Quit: Leaving). 16:06:29 Anyway, you can imagine my emotional state right now 16:09:50 maybe there's a capitalist swine hiding in there 16:10:10 oerjan, don't think so, wrong smell 16:10:45 and this smell wasn't there when you moved in? 16:11:19 No, the smell is almost certainly my fault 16:11:59 i suppose only you can tell the reason. 16:12:35 Because I normally keep the window closed I don't know how to turn the radiator off 16:12:36 what kind of smell could give such a judgement... 16:12:51 and whether you need to clean or visit a doctor 16:12:55 -!- edwardk has joined. 16:13:34 -!- Zuu has quit (Remote host closed the connection). 16:14:26 -!- edwardk_ has joined. 16:15:11 hm maybe you have fungus in the room, i hear that can be awful. 16:16:19 It's a messy smell rather than a nasty smell 16:16:23 It's just a loud messy smell 16:16:56 well the solution is obvious but i would be a hypocrite to say it. 16:17:22 -!- edwardk has quit (Ping timeout: 240 seconds). 16:17:46 Yes, I know the solution to the primary problem very well 16:18:38 -!- edwardk_ has quit (Ping timeout: 245 seconds). 16:20:25 In fact, I suspect the majority of the smell comes from one source 16:24:08 -!- MindlessDrone has quit (Quit: MindlessDrone). 16:25:29 -!- edwardk has joined. 16:39:18 which source is that 16:39:38 impomatic: I like that "hire a cleaner" and "find a girlfriend" are alternatives on equal footing 16:39:38 Bedsheets 16:39:40 like, or something 16:42:08 They... I have not done the right thing with my bedsheets. 16:44:42 -!- conehead has joined. 16:52:48 -!- MindlessDrone has joined. 16:54:47 -!- MoALTz has joined. 17:02:34 [wiki] [[Twocode]] N http://esolangs.org/w/index.php?oldid=39736 * GermanyBoy * (+4719) Created page with "'''Twocode''' is a [[:Category:Two-dimensional languages|two-dimensional]] [[esoteric programming language]] created by [[User:GermanyBoy]] in 2014. It mixes two-dimensional '..." 17:03:05 [wiki] [[Language list]] http://esolangs.org/w/index.php?diff=39737&oldid=39713 * GermanyBoy * (+14) /* T */ 17:03:41 [wiki] [[User:GermanyBoy]] http://esolangs.org/w/index.php?diff=39738&oldid=39648 * GermanyBoy * (+14) twocode 17:05:11 -!- Sprocklem has joined. 17:15:55 `run echo bin/coins 17:15:56 bin/coins 17:16:00 `run cat bin/coins 17:16:01 words ${1---eng-1M --esolangs 20} | sed -re 's/( |$)/coin\1/g' | rainwords 17:16:03 Then wash your bedsheets 17:16:16 That is the logical thing to do 17:16:43 `run cat bin/rainwords 17:16:44 ​#!/usr/bin/python \ import random; w=[l.split() for l in open("/dev/stdin").read().split("\n")]; r=[4,7,8,9,2,6,13]; print "\n".join((lambda s: " ".join(chr(3) + "%02d"%r[(i+s)%len(r)] + l[i] for i in range(len(l))))(random.randrange(0, len(r))) for l in w) 17:16:51 `coins 17:16:53 ​anollcoin pheycoin alagirdiminiscoin aubatwaldcoin clearecoin hlietcoin hoto++coin pcoin nestcoin intfcoin grocoin jetzschecoin membecoin sheedcoin stificcoin wudiffelliicketlangcoin brycoin tetcoin con-of-unbcoin truecoin 17:20:10 I read some book where they didn't write "Allah"; they wrote "al-Lah", I don't know if it is supposed to be the same word but it seem like it from the context. Do you know about this to answer it? 17:20:25 Taneb: you can wash them every so often 17:20:36 i don't have more specific advice 17:20:43 wash them when they smell or feel weird or have disconcerting stains 17:20:56 I think not doing what I did would be a good start. 17:21:05 These haven't been off my bed since the end of September :( 17:21:15 I see 17:21:15 What did you did at first? 17:21:20 that is sub-optimal 17:21:25 rustc has a flag that prints out the elapsed time for each compiler pass as they run (some 40 or so of them) 17:21:28 here's what that looks like: https://gist.github.com/kmcallister/acb1df198dbac070263f 17:21:33 You should probably clean it 17:21:34 for building rustc itself 17:22:47 -!- Sprocklem has quit (Quit: Reconnecting). 17:23:08 -!- Sprocklem has joined. 17:30:14 -!- mihow has quit (Quit: mihow). 17:33:47 -!- mihow has joined. 17:36:41 -!- Sprocklem has quit (Ping timeout: 252 seconds). 17:37:22 zzo38: “al-” is the definite article, “allah” is more literally “the god”. 17:40:22 Taneb: now you have an upper bound of how long you can use the same bedsheets, now wash them and keep them for half as long and see if you pass an inspection 17:40:50 (if you do, take the average, and so on until you have found the maximum acceptable bedsheet age) 17:41:32 this can also be a way to make it fun to switch bedsheets regularly 17:42:15 olsner, I feel like 1 month is possibly too long 17:42:26 9 months is really bad 17:45:56 it depends on how dirty you are and how much of it you rub into the sheets, I think 17:46:56 and on how dusty the room is, and whether you make the bed with a cover or not (so that the dust settles in the sheets), etc 17:47:13 if you wet the bed you may also need to switch more often 17:48:43 -!- oerjan has quit (Quit: Sleep tight and don't let the bedbugs evolve sapience). 17:56:25 "WebGL 2 is based on what we think will be in OpenGL ES 3, which is the stuff in OpenGL 4" 17:56:28 ;_; 17:56:30 can't they just skip some to make the numbers match up 17:58:56 -!- Sprocklem has joined. 17:59:11 -!- Bike_ has joined. 17:59:14 -!- mihow has quit (Quit: mihow). 17:59:41 They don't want to confuse people. 17:59:46 or just have a single "OpenGL" that includes the ES and Web stuff 18:00:35 -!- Bike_ has changed nick to Bicyclidine. 18:06:02 Melvar: O, OK thanks 18:07:28 when did C get // comments because shouldn't those work 18:07:57 In the year 1999. 18:07:59 god knows why a C program is including an .hpp. C/C++ i guess 18:08:37 (As an extension probably before that, too.) 18:08:40 Do any gcc flags turn that off? -ansi or something maybe? 18:08:54 Well, -ansi is the same as -std=c89 which does not include them. 18:09:00 There's a standard flag 18:09:03 oh, alright then. 18:09:07 -std=whatever or something 18:09:08 dumb compile error. 18:09:10 this would be a good source for fungot http://www.scribd.com/doc/225960813/Elliot-Rodger-Santa-Barbara-mass-shooting-suspect-My-Twisted-World-manifesto 18:09:11 fowl: what's a chatterbot then. no way sir, that i do 18:09:20 no, god. 18:09:36 too soon? 18:09:40 fungot already quotes, what, nixon? that's gross enough already 18:09:40 Bicyclidine: perhaps we should celebrate these days with guys like simon peyton-jones, simon fnord, etc 18:09:52 Good old Simon Fnord. 18:09:59 not really soon so much as that the rodger thing is just gross 18:10:18 the manifesto i mean, by itself, in addition to the shooting 18:10:55 i guess if you wanted fungot to talk like a gross murderer you could go with Industrial Society and Its Future or something 18:10:55 Bicyclidine: later tell riastradh http://tmp.barzilay.org/ r.txt: ( 18:11:25 Bicyclidine, ok :) 18:11:56 or maybe the zodiac codes 18:12:02 fungot what's your support for made-up scripts like 18:12:02 Bicyclidine: what's a respectable typing speed? i'm getting tired. must sleep... hiking trip tomorrow... have a flex question for you 18:12:11 flex oh god 18:13:54 the worst part about the C thing is that the file is the complex.hpp that (re)implements complex arithmetic. it uses no C++ features, other than // comments I guess. 18:14:23 those are in C99 18:15:15 yes, but - hilarity continuing here - this has to be compiled with -ansi, probably because for matlab's ffi, which also complains that my gcc is too new 18:17:10 I wonder if that fnord was marlow 18:18:24 -!- Sprocklem has quit (Quit: Class). 18:18:41 olsner: You are correct. You win ten (10) FunPoints. 18:18:48 sweet! 18:19:57 You may redeem your FunPoints for fabulous prizes at THIS FEATURE NOT FINISHED YET. 18:20:23 Bicyclidine: what part of -ansi does it require? 18:20:30 if it relies on somehting that changed in c99 vs c90 (whatever that might be) you could try something like gnu90 to get comments and useful stuff but otherwise c90 18:20:56 well i mean, i just changed the file. 18:30:05 still not sure what the hell "#include /* Added for MS Visual C++ Compatibility 1999 */" is supposed to mean 18:33:13 -!- ter2 has quit (Ping timeout: 245 seconds). 18:33:40 -!- ter2 has joined. 18:34:14 Bicyclidine: // comments predate C 18:34:31 At least according to the Wikipedia article on BCPL 18:35:33 that's nice 18:41:46 Bicyclidine: Maybe in the compiler he used some stdlib header also included math 18:42:12 without an include barrier, huh 18:42:13 `addquote Bicyclidine: perhaps we should celebrate these days with guys like simon peyton-jones, simon fnord, etc 18:42:14 kmc: srfi-7 doesn't standardize that, so you can't extend arbitrarly your plugin, if you half-ass something but provide the right social cues then you get 4 18:42:15 1200) Bicyclidine: perhaps we should celebrate these days with guys like simon peyton-jones, simon fnord, etc 18:42:26 fungot: I love halfassing social cues 18:42:26 kmc: install-info does exist internally." page 7, under heading 5, evaluation. 18:42:35 if noiseType == 0 randn('seed', 37) <-- chosen by fair die, guaranteed random 18:43:50 "The latter method requires recursion and is computationally very expensive." 18:43:52 -!- mihow has joined. 18:50:18 -!- ter2 has quit (Ping timeout: 240 seconds). 18:58:35 /* ... */ comments in C are actually a bit somewhat problematic if you want to divide by a value that a variable points to; you would then need a space or parenthses. 18:58:57 imo the lexer hack 18:59:13 you should have spaces around binary operators anyway 19:03:23 The slashes situation is worsened in JS due to the existence of slash-delimited regex literals 19:03:59 -!- nooodl has joined. 19:04:03 except that a valid regex cannot start with a Kleene star 19:04:04 FireFly: That is only if you are commenting out a regex literal though, since a regex doesn't start with /* 19:04:19 the empty string is a valid regex though 19:04:28 which interferes with single-line comments 19:04:34 well, /(?:)/. 19:04:37 Yeah 19:04:56 AFAIK Perl 6 does not allow an empty pattern as well 19:05:09 damn i was about to ask how perl dealt with that since it was no doubt funny 19:05:26 Hm. 19:05:40 I think it's possible to have "//" not trigger a line-comment in JS actully 19:05:59 if you divide a regex literal by something 19:06:06 elseviers puts their impact factors and it is the funniest shit 19:06:25 I don't know why you would want to divide a regex literal by anything, but a regex might end with \// 19:06:36 Oh, that too 19:06:52 -!- ter2 has joined. 19:07:21 > "--" -- "--" 19:07:23 "--" 19:10:01 @t (--0 19:10:02 Maybe you meant: tell thank you thanks thesaurus thx tic-tac-toe ticker time todo todo-add todo-delete type v @ ? . 19:10:04 Waaait 19:10:55 :t (--0 19:10:56 parse error (possibly incorrect indentation or mismatched brackets) 19:11:31 -!- Phantom_Hoover has joined. 19:12:01 @type (--)0 19:12:02 parse error (possibly incorrect indentation or mismatched brackets) 19:12:16 @type "hello" -- 19:12:17 [Char] 19:15:10 -- starts a comment btw, hth 19:15:36 Yeah, took me too long to realise 19:17:11 > let (+)--+--(-) = 42 in (-)--+--(+)--but not always 19:17:13 42 19:17:37 > let 2 --++ 2 = 5 in 2 --++ 2 19:17:38 5 19:17:59 (confusingly, ---- does start a comment) 19:18:23 Haskell has some weird corners 19:18:27 I think any sequence of (more than two) -s is a comment? 19:18:39 right 19:19:22 -!- ter2 has quit (Ping timeout: 240 seconds). 19:19:41 -!- ter2 has joined. 19:20:33 Can you play pot-limit hold'em? How commonly do you know if chess clubs will have poker and other games too instead of only chess? 19:22:45 -!- edwardk has quit (Ping timeout: 252 seconds). 19:23:26 how about chess boxing 19:33:23 I am worried that I am one of those people who is "good at maths", and I've never really had to push myself 19:33:33 -!- ter2 has changed nick to tertu. 19:33:44 And now I don't know how to learn 19:37:06 -!- spiette has quit (Quit: :qa!). 19:37:14 -!- spiette has joined. 19:39:06 hell yea impostor syndrome 19:39:54 could be 19:40:03 I don’t think it’s impostor syndrome he’s describing … 19:41:51 eh, close. 19:42:26 -!- MindlessDrone has quit (Quit: MindlessDrone). 19:43:03 that would depend on a bunch of information you don't have 19:43:15 it's a valid concern and I don't want to dismiss it as a delusion 19:48:42 you could get a really hard math book. i was "good at math" and i got a bunch of books that i can't read through and just kind of look at sometimes, slowly getting a bit better 19:54:43 -!- Sprocklem has joined. 19:59:45 -!- mihow has quit (Quit: mihow). 20:00:20 -!- mihow has joined. 20:05:40 Bicyclidine, this is probably separate from my imposter syndrome 20:08:18 if you had it excessively easy before, it makes sense if you're lazy now 20:14:21 Bicyclidine, any you'd recommend? 20:15:14 you read taocp? 20:15:19 Not yet! 20:15:29 well, there you go then 20:15:33 But it's expeeeensiiiiive 20:15:35 make sure you (fail to) do the exercises 20:15:38 aren't you in school? 20:15:47 ... 20:15:48 I had a dream last night I found a copy of TAOCP at a used bookstore for $10 20:15:52 But it's raaaaaaining 20:15:57 that's sick mcpherrin, sick 20:16:26 Taneb: http://www.math.upenn.edu/~wilf/AeqB.html this one's free for your computer. there is no escape. 20:16:29 Too bad it's only a dream :p 20:17:55 I ought to get a copy of Euclid's Elements 20:18:47 honestly i think reading classics is overrated 20:19:10 their methods and culture are just so different from modern math 20:19:11 Even if it is just as a bookshelf decoration 20:19:20 well, that's what taocp is for, too 20:19:20 They sold extra copies of SICP at the university bookstore (after our Introduction to Programming course switched from Scheme to Java or Python or something) for something like 5 EUR. 20:19:28 Some people bought lots, to give away to people. 20:19:49 Taneb: also, you can get books really cheap on amazon, like five bucks USD (so probably a pound cos our economy's shit), such as Counterexamples in Topology 20:20:01 which, iirc, was recommended by some esolang guy? cpresseY? 20:20:22 http://esolangs.org/wiki/User:Chris_Pressey#Esoteric_Reading_List.21 yeah 20:20:43 hm i thought that list had better stuff 20:21:10 stephen "alpha" wolfram, lol 20:21:32 other than that there's like, that book on kolmogorov complexity that uses the taocp answer system 20:21:52 or like, you like haskell probably, so one or two of pierce's books i guess 20:23:12 Types and Programming Languages costs £50 :( 20:24:27 yeah they're all pretty expensive 20:25:06 maybe get some cheapish ones... dover has a bunch of old (like, 60s?) good texts, like Introductory Real Analysis by Kolmogorov, for like ten bucks 20:25:30 the cheapness because they're not hardcover :P 20:26:52 i mean maybe you odn't give a shit about real analysis though, in which case you could just find a good used bookstore, or wnader through your university library 20:27:10 My university does have a library, hmm 20:27:22 have you ever wanted three hundred years of research on generalized continued fractions? ~it's in the library~ 20:27:45 i mean you go like, york, right? it's not some puny community college, and even those are usually pretty good 20:27:51 I might wander in after my grand beginning-of-June adventure 20:28:07 So, on the 14th 20:28:22 Maybe the 11th 20:28:34 honestly if i have work or something to do i usually just do it in the library, and goof off by reading books instead of by reading the internet 20:29:52 Probably a good idea 20:29:55 Where are you? 20:30:03 what, my school? 20:30:11 Yeah 20:30:21 just a state school. Washington State University 20:30:28 presently i am sitting here putting off reading about ears 20:30:41 :) 20:30:48 imo p. good state 20:31:21 but, the engineering library is six stories, and has everything from Bifurcation Theory to The Soviet Anti-Plague System 20:31:41 We only have the one library 20:31:45 six stories? that's not a v. big library 20:31:49 Except for a number of tiny libraries dotted about 20:31:55 Which I have never seen 20:31:58 are they at least split across six books 20:32:13 Despite both the maths and computer science departments having a tiny library 20:32:18 well, we have this six story library, and there's the main library that's two buildings with like three floors (but it's more history, social sorta stuff), and a veterinary library that's a few rooms 20:32:37 oh, and are you a math student? i don't know how research works in math but you might try that 20:33:07 Maths and Computer Science 20:33:13 the library at this campus is small by comparison, it has World of Warcraft Programming Second Edition 20:33:42 well i don't know how that works but you might try looking at faculty profiles and asking somebody that seems interesting for work 20:33:51 if you want to be a mathematologist, anyway, i don't know 20:34:57 -!- ais523 has joined. 20:34:58 Right, I've found the Computer Science library on Google Maps 20:35:00 in my experience uni professors are more than willing to talk at somebody who displays any interest, even if they're a dirty undergrad 20:35:07 I've told this before, but there was a maths journal on the "recent issues" table at the university library, and it had a fascinating picture in the inner side of the cover, and it was titled: "Fig. 1: A fascinating picture." 20:35:17 good 20:35:19 s/titled/captioned/ 20:36:05 I think it was some sort of a graph. 20:39:49 -!- ais523 has quit (Client Quit). 20:39:56 -!- callforjudgement has joined. 20:40:58 -!- callforjudgement has changed nick to ais523. 20:43:06 -!- vyv has joined. 20:45:08 so true. "People get unhappy when a computer blinks its lights for" 20:45:09 a while and then announces a result, if people cannot easily check the truth of the 20:45:12 result for themselves. 20:46:31 just have it make sounds instead 20:47:25 -!- Patashu has joined. 20:49:14 huh, I never check the results 20:50:22 olsner: the audience is mathematicians. they prefer humanly checkable proofs. see also http://star.psy.ohio-state.edu/coglab/Miracle.html 20:53:48 (Requiring too much work to check is also an issue, as can be seen in the criticism of the Appel & Haaken proof of the four color theorem, which was partly justified.) 20:54:56 -!- Patashu_ has joined. 20:54:57 -!- Patashu has quit (Disconnected by services). 20:55:09 -!- ais523 has quit (Ping timeout: 252 seconds). 20:56:40 -!- ais523_ has joined. 21:01:18 -!- Slereah_ has quit (Remote host closed the connection). 21:01:34 -!- Slereah_ has joined. 21:03:48 -!- Patashu_ has quit (Read error: Connection timed out). 21:04:28 -!- Patashu has joined. 21:05:29 -!- Bike has quit (Ping timeout: 255 seconds). 21:07:15 -!- Bike has joined. 21:15:03 -!- Sprocklem has quit (Quit: Leaving). 21:23:39 -!- tertu has quit (Ping timeout: 252 seconds). 21:26:19 huh, someone proved a false statement in Agda (presumably due to a compiler bug): https://proofmarket.org/problem/viewa/58 21:26:29 don't really know enough Agda to follow the proof, though 21:27:05 -!- Patashu has quit (Ping timeout: 255 seconds). 21:33:42 working with a bunch of PL nerds is so much fun 21:36:54 ais523_, #agda has "We last proved false on " in the topic 21:37:03 Currently 11th of May 21:37:29 -!- Frooxius has quit (Quit: *bubbles away*). 21:37:30 nwat 21:37:34 *neat 21:37:43 `ddate 21:37:44 Today is Pungenday, the 7th day of Confusion in the YOLD 3180 21:37:45 writing sound type systems is hard 21:37:58 indeed 21:38:00 `sdate 21:38:00 ​/home/hackbot/hackbot.hg/multibot_cmds/lib/limits: line 5: exec: sdate: not found 21:38:07 oh. 21:38:10 is it just me or is pow(x,2) weird code 21:39:10 I think somebody is working on a proof of soundness for Rust this summer 21:39:13 non-mechanized :/ 21:39:48 I also wrote a implementation of that ddate in ifMUD too, although the output format is a bit different: "Today is Pungenday, Confusion 7, YOLD 3180." Still, I am glad that these two dates are in agreement! 21:40:19 ais523_, the weird bit in that is the definition of eq 21:40:35 Which asserts that foo and bar are different 21:41:00 But they are both values of the unit type defined in slightly different ways 21:41:12 top is the unit, right? 21:41:15 Yes 21:41:56 hmm... ((), 1), ((), ()) is different from ((), 0), ((), ()) in most programming languages 21:42:12 yeah but it's taking the third 21:42:22 Yes, but the first element of the second element of those two tuples are the same in most programming languages 21:42:27 (_, 1), ([this one], _) 21:42:46 so i guess the difference between 0 and 1 spreads somehow. 21:43:11 ais523_: Are they the people who wrote Agda they payment in case of the bug like Knuth does with TeX and METAFONT, or is it different? 21:43:45 zzo38: it's a bit different; the Agda devs don't pay for things like that, but the link in question indicates that someone did pay for the proof, anonymously 21:45:38 -!- edwardk has joined. 21:46:05 I think how the HOPE conference accepts payment by bitcoins too 21:51:23 That proof does not have any = line for eq; is that wrong? 21:51:54 zzo38, no, the "eq ()" means "There are no cases to match against" 21:52:10 -!- mihow has quit (Quit: mihow). 21:52:20 Taneb: O, OK 21:52:40 it turns a proof that foo = bar into bottom? 21:53:03 Yes, because the type checker thinks foo != bar 21:53:10 How do you know that there are no cases to match against? How does the equivalence sign work anyways? 21:53:20 I am not sure 21:53:34 zzo38: well the return type is bottom so it's not like it could return anything 21:58:12 -!- mihow has joined. 22:00:33 -!- ais523_ has quit (Quit: Page closed). 22:10:20 -!- Slereah_ has quit (Remote host closed the connection). 22:10:36 -!- Slereah_ has joined. 22:16:36 ( :doc (=) 22:16:36 Data type = : ({A0} : Type) -> ({B0} : Type) -> A -> B -> Type 22:16:36 The propositional equality type. A proof that x = y. 22:16:36 To use such a proof, pattern-match on it, and the two equal things will then need to be the same pattern. 22:16:36 Note: Idris's equality type is heterogeneous, which means that it is possible to state equalities between values of potentially different types. This is 22:16:36 sometimes referred to in the literature as "John Major" equality.↵… 22:19:18 Why John Major 22:19:40 “It is now time to reveal the definition of ≃, the ‘John Major’ equality relation. (Footnote 2: John Major was the last ever leader of the Conservative Party to be Prime Minister (1990 to 1997) of the United Kingdom, in case he has slipped your mind.) John Major’s ‘classless society’ widened people’s aspirations to equality, but also the gap between rich and poor. After all, aspiring to be equal to others than oneself is the ... 22:19:46 ... politics of envy. In much the same way, ≃ forms equations between members of any type, but they cannot be treated as equals (ie substituted) unless they are of the same type. Just as before, each thing is only equal to itself.” 22:19:51 (conor mcbride) 22:20:21 Oooh 22:21:04 elliott, i don't get the 'last ever' part 22:21:14 Phantom_Hoover, I'd presume it's an old quote 22:21:16 Phantom_Hoover: he was an optimist at the time 22:21:23 haha 22:22:14 i thought it was some kind of pedantic joke, like with labour/new labour 22:22:39 this is the view from the left guy, right? some kind of "Left ist" 22:22:46 yeah, same guy 22:23:49 whoa, I never ended up reading /The view from the left/. :-( 22:24:41 well i didn't either 22:24:45 so ha 22:25:04 But I was going to. 22:25:22 well, so was i, elliott linked it to me 22:25:35 i'm not in the right mindset to find mcbride's jokes funny, tho :/ 22:28:58 I have used a kind of equality that works between different types, in Haskell, by using (Eq, Typeable) 22:31:27 -!- Phantom__Hoover has joined. 22:31:31 Do you know much about LALR(1) parsing? 22:34:06 > :doc refl 22:34:07 :1:1: parse error on input ‘:’ 22:34:16 ( :doc refl 22:34:16 refl : x = x 22:34:16 A proof that x in fact equals x. To construct this, you must have already shown that both sides are in fact equal. 22:34:16 Arguments: 22:34:16 (implicit) {A0} : Type -- the type at which the equality is proven 22:34:16 (implicit) {x0} : A -- the element shown to be equal to itself. 22:34:47 -!- Phantom_Hoover has quit (Ping timeout: 252 seconds). 22:34:53 this shit is deep 22:35:47 ( :t vectNilRightNeutral 22:35:47 Prelude.Vect.vectNilRightNeutral : (xs : Vect n a) -> xs ++ [] = xs 22:36:09 ↑ use of heterogeneous equality 22:37:10 it's funny how i keep thinking of things in terms of taking and returning arguments, when that's clearly fucking hopeless 22:38:03 Bicyclidine: ? 22:38:31 basically i have no idea what any of this means 22:38:58 ( :t \n,a, xs : Vect n a => xs ++ [] 22:38:58 \n => \a => \xs => xs ++ [] : (n : Nat) -> (a : Type) -> Vect n a -> Vect (n + 0) a 22:40:51 The left side of the equals is a Vect (n + 0) a, the right side is a Vect n a, which don’t immediately unify (you can prove they’re equal though), so if the equality were homogeneous, you’d have to rewrite one side within the type of vectNilRightNeutral to state the equality. 22:40:51 Bicyclidine: think of it as a forall 22:43:20 "taking and returning arguments" is a good way to think about it. 22:43:44 > :t the 22:43:45 :1:1: parse error on input ‘:’ 22:43:49 ( :t the 22:43:49 Prelude.Basics.the : (a : Type) -> a -> a 22:44:17 * Melvar kicks self for mixing up his prefixes for the second time. 22:44:51 odd name for id 22:45:10 ( the Nat 0 22:45:11 0 : Nat 22:45:18 ( the Int 0 22:45:18 0 : Int 22:45:35 are brackets for implicit parameters then 22:46:07 No, braces are. 22:46:29 Why is Bison parser generator so much larger (when compressed) than Lemon parser generator (when uncompressed)? 22:46:53 But anyway, the is the way to do type annotations in idris. 22:46:56 ( :t id 22:46:57 Prelude.Basics.id : a -> a 22:46:57 Control.Category.id : Category cat => cat a a 22:46:57 oh duh, the brackets are only there to associate a : Type 22:47:11 Melvar, i see 22:47:26 id is the same, but with an implicit argument (hence the a is underlined). 22:47:32 -!- mihow has quit (Quit: mihow). 22:48:30 https://scontent-b.xx.fbcdn.net/hphotos-xfa1/t1.0-9/s480x480/282298_10150894076356344_561739999_n.jpg 22:48:45 -!- mihow has joined. 22:50:37 o_O https://github.com/mozilla/rust/blob/master/src/librustc/middle/ty.rs#L1091-L1142 22:51:22 -!- Sgeo has joined. 22:53:00 -!- aretecode has joined. 22:53:08 kmc: that should not come as a surprise after seeing lines 240 to 259. 22:53:13 err 359 22:53:50 http://www.babylonjs.com/ not so sure about the library, but I love these demos 22:54:03 I don't know why people are saying it's a Microsoft clone of Three.JS 22:54:19 pub trait_impls: RefCell>>>> 22:54:23 that's quite the type 22:56:50 What is it? 22:57:20 what's the Rc<> thing? 22:57:20 jesus god kmc what is that 22:57:33 actually i don't want to know probably 22:57:34 int-e: Rc is a reference counted T 22:57:37 Rc is a refcounted box containing T 22:57:48 even if T isn't cloneable, you can clone Rc; you get another pointer to the same underlying object 22:57:53 it's much like std::shared_ptr in C++ 22:58:12 RefCell is "interior mutability"; it basically moves Rust's alias checking to runtime 22:58:14 You can clone, but can you send? (I'd hope not... I think?) 22:58:20 Sgeo: nope, but you can send Arc 22:58:23 ("atomic reference counting") 22:58:38 if you have a no-mutation reference to an object, you can still mutate stuff inside a RefCell 22:58:49 i.e. you can go from &RefCell to &mut T, approximately 22:59:24 doing so sets a flag at runtime saying "this thing is borrowed mutably", and what it gives you is actually a smart pointer which un-sets that flag on destruction 22:59:30 -!- mihow has quit (Quit: mihow). 22:59:44 if the value has already been borrowed, it's a task failure 23:00:07 DefId and DefIdMap are rustc internal types for definitions and maps keyed on definitions 23:00:22 Why does that need a special Map? 23:00:38 well it's a typedef: http://doc.rust-lang.org/rustc/util/nodemap/type.DefIdMap.html 23:00:58 and FnvHashMap is another typedef for a standard collections::hashmap::HashMap 23:01:29 "FnvHasher: ... A speedy hash algorithm for node ids and def ids. The hashmap in libcollections by default uses SipHash which isn't quite as speedy as we want. In the compiler we're not really worried about DOS attempts, so we just default to a non-cryptographic hash." 23:02:26 blazing speed 23:03:08 whoa, TIL rust has default type parameters 23:03:12 -!- madbr has joined. 23:03:16 pub struct HashMap { ... 23:03:40 kmc: haha yeah they're pretty shiny 23:04:02 Hashmap was the first user, and I'd bet $1 still the only major one :p 23:04:13 Is this how a LALR(1) parser is supposed to work? list(A) ::= beginlist(B) listitems RBRACKET. { A=doc->group; doc->group=B; } beginlist(A) ::= LBRACKET. { A=doc->group; doc->group=zcdsf_value_empty_list(0); } 23:04:13 (allocators were/are going to do the same 23:04:36 I don't quite understand it if it is OK or not 23:05:15 in my progrmaming language " will be the ditto operator, it refers to the operator or word above it 23:05:36 fowl: immediately above, as in line-column wise? 23:05:53 yes 23:05:59 nice :) 23:06:08 kmc: How does a Hasher work independently of the key type? 23:06:19 something like a default initialization would be pretty great for that initializer of doom 23:06:33 Melvar: The key type implements a trait 23:06:50 Can you define hash functions for your own types? 23:06:59 It just sees a stream of bytes 23:07:08 i guess that works :V 23:07:29 mcpherrin: And this is not noted on the type declaration, or is kmc’s above incorrect? 23:07:34 assuming you don't need other equality, i guess 23:08:44 Melvar: the Hashmap itself doesn't care, just the hasher 23:10:16 The traits implemented on the HashMap do, though 23:10:40 impl, V, S, H: Hasher> HashMap 23:11:22 well that's not a trait for HashMap, it's just the plain non-trait methods of HashMap, but otherwise yeah 23:12:04 yeah I just copied the first relevant line from rustdoc:P 23:12:07 :( 23:12:07 was really looking for 23:12:08 impl, V, S, H: Hasher> MutableMap for HashMap 23:12:08 Ah, so the constraint is not on the data structure, but on the functions. Thank you. 23:12:22 I don't think we even support constraints on data structures? 23:12:35 I am not sure 23:12:50 kmc: yeah, you can 23:12:52 I am not very good at person 23:13:09 person are hard 23:13:26 I feel that that should have a winky face somewhere 23:13:47 ( :t ShowGlue 23:13:47 BotPrelude.ShowGlue : a -> String => Show a 23:13:47 kmc: Uh, apparently not trait bounds though :P 23:13:57 * mcpherrin had never tried before just now 23:13:59 mcpherrin: what other kind of constraints are there? 23:14:04 well lifetimes :P 23:14:06 Taneb: what aspect(s)? 23:14:23 you mean like struct Foo { ... } ? 23:14:27 yeah 23:14:33 weird 23:14:39 kmc, currently, putting bedsheets back on beds 23:14:40 'static is the only lifetime which can be used that way, right? 23:14:45 I think so 23:14:50 I still don't totally undersand what it means 23:15:04 I don't know if I've ever seen a struct templated that way 23:15:09 oh no is rust continuing the proud tradition of static being wonky as hell 23:15:12 -!- yorick has quit (Read error: Connection reset by peer). 23:15:35 Bicyclidine: 'static isn't C's whatever-we-want-today keyword :-) 23:15:40 good, good 23:15:49 It's the lifetime of data that lives "forever" 23:15:57 Most commonly string literals 23:16:09 or globals. 23:16:10 oh so like the kind of thing that is serialized into a binary, ok. 23:16:19 mutable? 23:16:35 you can have static mutable data, but it's unsafe 23:16:40 I think idris has a static keyword somehow … it indicates that some argument must be fully known at compile time I think. 23:16:42 because it gives you task-shared mutability 23:16:47 right, right 23:16:51 so you can only use it in the unsafe dialect 23:16:54 static mut foo looks funny to me 23:16:58 but there it is 23:17:04 just wondering since you said globals 23:17:08 it's fine, it's just like "let mut" 23:17:08 yeah 23:17:24 kmc: were you around for the great "what to call static" debates? 23:17:39 it's stored in the dynamic library binary, so, call it dynamic 23:18:12 a 'static bound on a type asserts that all refs in the type have static lifetime, I think, but I'm not sure 23:18:49 mcpherrin: no 23:18:52 Bicyclidine: :3 23:19:58 std::cell defines Cell and RefCell and Ref and RefMut B| 23:20:04 I know what they all need, but the naming is a bit confusing 23:20:29 what they all mean* 23:20:48 yell dead cell 23:22:58 kmc: well it was a primo bikeshed 23:23:25 "`static mut` looks weird" was a common opinion 23:28:49 "life is weird, get used to it" 23:29:06 -!- nooodl has quit (Quit: Ik ga weg). 23:32:07 more C questions: if i calloc an array of doubles, does the zero memory have to equal numeric zero? 23:33:02 The zero memory corresponds to integer zero. I have not had problems using it as floating point, though. 23:33:41 Bicyclidine: yes 23:33:42 ieee floats are 23:33:50 aight 23:34:39 this is because of the (useful/planned) coincidence that double(+0.0f) has the same representation as a uint64_t(0) 23:34:52 calloc doesn't know anything about floats/doubles 23:35:03 sure, that's why i'm asking 23:35:29 i'm imagining the ol' fuckyoutron 8000 having a 0.0f not made of zero bytes 23:35:35 `quote kmc.*nickel 23:35:36 847) What is portable way of load/save floating points in files, using a C code? #ifndef __STDC_IEC_559__ #error Here's a nickel, kid. Buy a real computer. #endif 23:36:00 does C require IEEE? 23:36:02 i mean, i don't know the ins and outs of floats. 23:36:05 also that. 23:36:14 I think this might be one of the things you could DS9k 23:36:29 ds9k, that's the term 23:36:32 well, fuckyoutron is fine 23:37:04 this code is bullshit conformance-wise so i'm asking out of curiosity more than anything :P 23:38:55 the boring part about actually building a ds9k is that no existing software would build and work on it 23:39:13 except OpenSSL 23:39:14 olsner: I doubt it; some software may work. 23:39:51 Also, some software might compile but fail to run properly, while others will result in compile errors since the program contains things to make the compiler to check. 23:40:52 I doubt OpenSSL is actually valid enough C, it rather has a wide collection of differently non-conformant hacks, and would need a completely new set to work on ds9k 23:41:31 For example you use the negative-array-size trick. 23:43:37 So many abstractions in the WebGL world 23:43:56 tQuery = abstraction of ThreeJS = abstraction of abstraction of WebGL 23:45:01 Bike: the fuckyoutron8k could be the budget model of the ds9k 23:45:47 *Bicyclidine 23:45:58 i don't know why i've never seen static variables used for defining a filter, that i can remember... outside of that one OS i guess 23:46:54 I have used negative-array-size trick, which is like: struct { char unused[sizeof(long)>=sizeof(void*)?1:-5]; } and similar things like that. 23:46:57 http://shitgonutssays.tumblr.com/ 23:47:14 A variable of this structure type is not declared, therefore don't waste memory. 23:47:36 Thanks for your meaningless contribution 23:47:53 How common is stuff like this? 23:48:22 oh hey the finalizer thing 23:48:58 pike seems like kind of an ass from this, o well 23:49:59 just a little ;_; 23:50:38 that childish things quote was so much improved by lewis 23:52:08 I am also not very good at booking train tickets 23:53:41 i have lost an awful lot of money to my own stupidity in and around trains 23:53:42 this code is rapidly making me think C is not good for writing signal processing in 23:54:19 i don't know what could possess something to define a basic looking linear filter on the last few intermediates, and then allocating storage for intermediates over the entire input signal 23:54:29 possess someone*, i imagine this isn't computer generator 23:54:31 ed 23:54:36 i'm just going to be dumb today