00:07:58 -!- edwardk has quit (Quit: Computer has gone to sleep.). 00:09:54 i don't think you're going to be able to express algebraic numbers in radicals, though <-- pretty sure he won't be ABEL to 00:13:20 boo 00:14:18 what no hiss 00:14:32 not worth it 00:14:49 aww 00:17:14 int-e: ) 00:17:56 he's not one of those guys with a normal sleeping schedule is he 00:21:07 -!- not^v has quit (Ping timeout: 240 seconds). 00:47:36 -!- tertu has quit (Ping timeout: 252 seconds). 00:54:27 -!- xk002 has quit (Ping timeout: 245 seconds). 01:04:02 -!- tertu has joined. 01:04:40 -!- tertu has quit (Read error: Connection reset by peer). 01:05:04 -!- tertu has joined. 01:09:21 -!- Sorella has quit (Quit: It is tiem!). 01:10:38 -!- not^v has joined. 01:13:59 -!- tertu has quit (Disconnected by services). 01:13:59 -!- ter2 has joined. 01:16:55 yesterday i biked on Abel Street in Milpitas CA 01:17:00 failed to come up with a good pun about commuting 01:17:56 whoa, Milpitas CA 01:17:58 i used to live there 01:18:26 -!- tertu3 has joined. 01:18:39 oh really 01:18:39 why 01:18:59 The reverse of it is acsatiplim. 01:19:23 people need a place to go hth 01:19:24 it would seem so 01:19:38 it was for a month and a half or so 01:20:07 summer 2010 01:20:11 good times 01:20:13 ok 01:20:31 yesterday's ride http://www.strava.com/routes/365633 01:21:01 -!- ter2 has quit (Ping timeout: 240 seconds). 01:21:03 i have been to that reservoir 01:21:07 oh yeah? 01:21:08 how / why 01:21:09 my everything is still sore :p 01:21:14 or at least near it 01:21:19 because i lived nearby 01:21:26 in milpitas? 01:21:27 i see 01:21:33 all the pieces are beginning to fit together 01:22:08 petersburg drive 01:22:32 it's a pity it's not called "petersburg st." 01:23:03 apparently there's a plane in the reservoir 01:24:53 yep 01:25:06 PLAAAAAANE 01:25:08 ... wrong channel 01:26:16 __!__ 01:26:22 _____(_)_____ 01:26:38 -- Stephen C. Hayne 01:26:48 I want to do that ride again but maybe with a picnic and twice as much water :p 01:27:55 -!- not^v has quit (Quit: http://i.imgur.com/Akc6r.gif). 01:30:29 i think milpitas used to be called mailpits before the big earthquake. 01:30:45 `coins 01:30:46 ​priniconcoin muscucoin catamcoin zoosedcoin lazycoin glashbcoin excompressicucoin rentanyploanycoin pourcoin solecoin mazecoin illcoin medcoin shakhcoin moucoin pratcoin nandcoin sorcoin um-32coin incaviacoin 01:34:16 -!- vvn1 has joined. 01:34:32 oogah boogah 01:35:35 `relcome vvn1 01:35:36 ​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.) 01:37:03 shachaf: did you ever go to the IHOP in Milpitas 01:37:11 or the Black Bear Diner 01:37:13 hi, thanks for the welcome 01:37:20 no 01:37:22 is anyone interested in doom metal? 01:37:37 although i was nearby once 01:37:50 vvn1: that's even more off topic than usual for our channel 01:38:01 you’d be surprised 01:38:26 is russian circles metal? i think they're fairly doom 01:39:31 wikipedia says "post-metal", good enough for me 01:39:36 lol 01:39:42 must be chalcogens 01:39:44 post-doom metal, okay 01:40:05 kmc: in this mill thing you can load from a null or invalid pointer and get a "not a result" result rather than an immediate page fault 01:40:13 how does that wor 01:40:14 k 01:40:19 no, no, doom post-metal. post-doom metal is either very peppy, or based around surpassing popular musician MC DOOM 01:40:28 MF DOOM rather 01:40:32 everyone should just be an MC fuck 01:40:42 there are some metadata bits for things in the equivalent of registers 01:40:55 then if you don't use the NaR you don't get a page fault 01:41:02 -!- MoALTz_ has joined. 01:41:38 so you can speculatively load things that you might not use as long as you don't store or branch on the result or something 01:41:57 their example is implementing a vectorized strcpy and reading past the \0 01:43:29 shachaf: does that work if the page exists but needs to be swapped in? 01:43:49 -!- MoALTz has quit (Ping timeout: 240 seconds). 01:43:56 shachaf: good, I had that exact issue once 01:44:04 oerjan: in that case a different thing would happen presumably 01:44:05 oerjan: seems like; it's traditionally the page fault handler which does that 01:44:13 hmm 01:44:18 yeah, how would you deal with that 01:44:29 i don't know how page faults work exactly 01:44:45 another metadata value is "None", such that storing a None into memory does nothing 01:45:00 this is their strcpy thing: http://millcomputing.com/blog/wp-content/uploads/2014/02/intro_strcpy.png 01:46:26 i don't know how they deal with that; i was wondering 01:46:26 nice 01:47:12 All this diagram needs is an oracle that tells whether there will be a match two steps in advance. 01:47:37 ? 01:48:16 Ignore me, i haven’t been following the discussion, just clicked the link. Going back to http://youtu.be/HuzC0MAlo0w → 01:49:32 this is the context of the diagram: http://millcomputing.com/topic/introduction-to-the-mill-cpu-programming-model-2/ 01:50:14 Thanks, i’ll open it in tab #15432 for later. 01:50:37 my browser crashed and lost all my tabs a couple of weeks ago 01:50:39 now i have no tabs 01:50:41 it's great 01:51:07 I haven’t had the courage to do that, i have restored them from a backup in the past. 01:51:12 -!- blitter64 has joined. 01:52:11 another thing they have that isn't mentioned on that page is two instructions pointers, one going backwards and one going forwards 01:53:47 My friend just introduced me to the Pokemon TCG 01:54:04 And to Android Netrunner, but there's no online version and I suck at it 01:56:03 -!- blitter64 has quit (Ping timeout: 252 seconds). 01:58:15 ANd not to Yu-Gi-Oh which he called broken 01:59:09 "Yes, on occasion, my friend and I bust out the pokemon cards and go at it. The game is shallow at first glance, but there is a decent amount of strategy involved. This mostly comes into play in the deckbuilding process. Pokemon is more draw oriented than Magic, meaning that the key to winning is drawing more of your deck than your opponent, making cards like Professor Oak incredible. " 01:59:15 meh, I don't like deckbuildin 01:59:18 g 02:07:40 http://www.reddit.com/r/hearthstone/comments/26jfqy/this_golden_card_is_weaker_than_its_normal_version/ 02:08:53 -!- ter2 has joined. 02:10:17 -!- yorick has quit (Read error: Connection reset by peer). 02:11:49 -!- tertu3 has quit (Ping timeout: 252 seconds). 02:13:32 -!- ter2 has changed nick to tertu. 02:14:47 I wonder if any existing language is particularly suited to a computational variant of Exquisite Corpse. 02:15:05 we call that game software development round these parts 02:20:09 -!- tertu has quit (Ping timeout: 265 seconds). 02:23:23 -!- hk3380 has quit (Quit: WeeChat 0.3.8). 02:23:40 -!- {hk3380} has joined. 02:26:50 -!- {hk3380} has quit (Client Quit). 02:27:08 -!- {hk3380} has joined. 02:27:47 have you played this game that I know only as "the paper game", where people in a circle take turns either describing a drawing with words or drawing something from a description, and you only see the previous attempt 02:28:00 and then you read out the words after n iterations 02:28:08 also does it have another name 02:28:31 (it's played with picees of paper that are folded accordion-like so that you only see one drawing or description) 02:29:12 kmc: I have played this 02:29:26 There's a website that works a bit like that, where it prompts you to draw or describe something. 02:30:06 I remember a website version of this, yeah. and seeing the evolution 02:30:14 until inevietably somebody just draws a penis 02:30:32 yep 02:30:36 it's one of the easiest things to draw 02:30:39 also pac-man 02:30:41 we got a lot of pac-man 02:36:54 i have not played this 02:37:03 oh, written words, not spoken words 02:43:05 yeah 02:44:44 -!- MoALTz_ has quit (Read error: Connection reset by peer). 02:49:47 -!- vvn1 has left. 02:50:27 oh 03:05:17 -!- MDude has changed nick to MDream. 03:09:52 -!- zzo38 has joined. 03:20:06 -!- Phantom_Hoover has joined. 03:22:10 -!- tertu has joined. 03:25:29 -!- {hk3380} has quit (Ping timeout: 264 seconds). 03:26:39 -!- ter2 has joined. 03:26:39 -!- tertu has quit (Disconnected by services). 03:34:37 I'm using LD_PRELOAD in a way that is reminiscent of having two puzzle pieces that don't quite fit and just kind of smashing them together until they do 03:35:23 LD_PRELOAD is an awesome way to add features to software 03:36:34 mcpherrin: I realized that plugins for the stage2 compiler need to be built with the stage1 compiler, but they don't quite work then either 03:36:41 so i'm building stage3 but it's soooo slow 03:39:30 How do you use the LD_PRELOAD adding features into a software? 03:42:08 zzo38: Here's http:// support for open(1) via LD_PRELOAD! https://github.com/mcpherrinm/webscale/blob/master/libhttpfile.c 03:43:04 that's totally a feature 03:44:02 O, so you can add new features into function like that. That is good adding support for http: and data: URLs, now add ftp: and gopher: support too. (I think curl supports it?) 03:45:09 zzo38: Fair warning, LD_PRELOAD is a fragile fragile thing. 03:45:21 (Furthermore, ftp can be use for writable files; http is normally only for reading files, although there is a PUT method of HTTP if you want to) 03:46:41 Still there are other way to make in such supports added, depending on the software. For example a software using SQLite, you can add support for other file by adding a VFS by loading an extension, and you can also modify the triggers in the database to possibly add features in. 03:48:18 Do you like stuff I wrote yesterday about knock out seven opponent's cards in Pokemon card? 03:48:33 hated it 03:48:41 OK 03:49:01 It is an uncommon situation, though. 03:55:22 Why do you hate flipperless pinball game? I don't hate it; the feature of pinball game that I do hate is the games in which you can earn free balls for making the high score. 03:55:47 (I don't mind free games for making the high score, though.) 03:57:24 And, why don't you hate that feature? 04:04:01 mcpherrin: \o/ https://gist.github.com/kmcallister/f47ee925a16773be4f84 04:04:01 | 04:04:01 /| 04:04:43 kmc: \o/ 04:04:44 | 04:04:44 /| 04:05:05 -!- ter2 has quit (Ping timeout: 264 seconds). 04:05:21 useful, i like it 04:06:09 kmc: time to go write some lints! 04:06:10 kmc: it's not actually pointing at the e plz fix twh hth 04:06:41 ooh good point 04:07:25 wow, did you manage to write a general code analyzer thing that seems reasonably structured 04:07:28 that's pretty good rust 04:07:55 i still ahve no idea how to read these type signatures 04:11:51 It's kind of funny how the web both forces you to use one language and frees you to use any language 04:12:08 (not literally any) 04:15:41 -!- Phantom_Hoover has quit (Ping timeout: 255 seconds). 04:19:49 oerjan: https://gist.github.com/kmcallister/500920de676275deccd8 04:19:57 it's a hack though, I hardcoded the width of "struct " 04:20:08 I don't think the parser saves the information you need to do this right 04:20:15 I could fix that but I think I will get high and watch television instead 04:20:58 m,ad men? 04:21:05 kmc: so it would break if i did "struct \n\neeeeeeeeeeeee" 04:21:31 kmc: shocking 04:22:15 Bike: not first on my list but probably 04:22:35 -!- {hk3380} has joined. 04:34:10 -!- tertu has joined. 04:36:17 high kmc 04:56:16 Bike: probably The Americans, Veep, Silicon Valley, Mad Men in that order 04:56:19 might fall asleep at some point 04:56:43 wow, did you manage to write a general code analyzer thing that seems reasonably structured 04:56:44 but if you fall asleep while high the weed will crawl into your nose and strangle you! 04:56:55 well the structure a is pretty standard AST visitor 04:57:14 the more interesting thing imo is that it's a plugin which integrates with the compiler 04:57:25 so you can (well, will be able to) control it with the usual warning flags 04:57:35 and it can do things like ask the types of inferred local lets 04:57:36 well i mean, right. i'm more used to something along the lines of LD_PRELOAD, you know, one variable, terrible 04:57:47 argh i would love that 04:58:15 yeah so most of the work here was just redoing all the plumbing around the existing loadable syntax extensions to turn it into a cleaner more general plugin mechanism 05:04:31 -!- tswett has quit (Ping timeout: 276 seconds). 05:07:24 -!- Phantom_Hoover has joined. 05:09:29 aw there's no new episode of Veep 05:12:19 -!- {hk3380} has quit (Ping timeout: 276 seconds). 05:31:55 -!- oerjan has quit (Quit: leaving). 05:42:16 i still ahve no idea how to read these type signatures 05:42:17 which ones? 05:42:27 we're losing the ~funny @variable &sigils 05:42:32 the first two are gone 05:42:52 whoa 05:42:58 & is probably staying though 05:43:20 I think Rust has a lot less sugar now than when I started using it 05:43:21 well uh basically any of them. "&mut self, it: &ast::Item, cx: Context" i guess cx, it, and self are names, and Context and &ast::Item are types, but i don't know what & is or what &mut means 05:43:37 -!- tertu has quit (Ping timeout: 245 seconds). 05:43:44 & is a reference aka "borrowed pointer" 05:44:05 points to something, you can use it, but someone else owns it and is responsible for destroying it eventually 05:44:17 At runtime it's a plain pointer 05:44:23 references have lifetimes, sometimes written in as &'t Item 05:44:26 &mut is the same but mutable 05:44:27 usually inferred 05:44:35 ~ and @ are gone, and more funny looking beasts like Rc<> Gc<> Box<> Cell<> RefCell<> are here to stay. 05:44:49 why is &mut before the name though 05:44:51 a given thing in memory can have zero or more & pointers, or exactly one &mut pointer to it 05:45:00 &mut is a variant of & that lets you mutate through the pointer 05:45:08 exactly one, like, at all? 05:45:23 yes, well, things get "frozen" 05:45:34 if I do let mut x = 3; f(&mut x) 05:45:51 then I lose the ability to modify an x for as long as that reference lives 05:45:57 Bike: "self" is kinda a weird special case 05:46:06 of course it is 05:46:11 if f doesn't store it anywhere, then I get to modify it as soon as f returns 05:46:20 for example you'd have it: &mut ast::Item 05:46:30 so it's not "before the name" usually 05:46:55 * mcpherrin doesn't like rust's self handling right now, a little too special 05:46:56 yeah, the & in «&foo: T» and in «&self» mean opposite things 05:46:59 :/ 05:47:08 & in patterns means to remove a layer of indirection and look inside 05:47:12 like any other "constructor" in a pattern 05:47:35 but there's no way to pattern-destructure self in an args list, anyway 05:47:47 is self the OO self btw 05:47:51 basically 05:48:02 impl Foo { fn f(&self) { ... } } 05:48:10 defines a method that you would call like foo.f() 05:48:28 right. 05:48:38 it's not just sugar for f(foo) because it affects name lookup too 05:49:05 if you can access a type then you can access all its methods, even though you didn't import them by name 05:49:22 that's true for methods that are applied "directly" to the type like that 05:49:29 mcpherrin: what do we call those? 05:49:42 you can also define methods on a typeclass and then do «impl Bar for Foo» 05:49:54 s/typeclass/trait/ but basically the same thing 05:50:03 in that case the user also needs to import the trait Bar to see the methods 05:50:43 kmc: I thought a special handling of self would be gone after UFCS, wouldn't it? 05:50:52 I don't even know what UFCS stands for 05:50:54 (aaaaand I didn't know mcpherrin is here) 05:51:02 "Uniform Function Call Syntax" to be exact 05:51:04 lifthrasiir: I was about to say the same ;P 05:51:25 lifthrasiir: oh, so you can write foo.f instead of |x| foo.f(x) ? 05:51:33 that's good 05:51:36 kmc: I think so 05:51:41 self has to at least be special wrt name resolution, though 05:51:49 the details are not yet finalized but afaik is in discussion 05:51:54 kmc: so you can say method(foo, x) as well as foo.method(x) 05:51:56 okay 05:51:59 btw, rip "do" sugar 05:52:12 this is important for traits sharing names 05:52:44 impl A for Foo { fn m(){}} impl B for Foo { fn m() {}} breaks right now 05:52:57 it was nerfed in order to support the front-of-rust-lang.org use case of "do spawn" 05:53:04 and then it was useless so removed entirely 05:53:06 UFCs are great, i use them in nimrod 05:53:13 and now rust-lang.org doesn't have "do spawn" either 05:53:18 B::m(foo) 05:53:26 x.f(y) #=> f(x,y) so much sense is made 05:53:41 programming languages are like sausages 05:53:58 good pizza topping 05:54:02 sometimes i wonder how food scientists feel about that expression. 05:54:10 heh 05:54:24 you're at a big uni, you could find some and ask 05:54:47 there was a dude who designs lean cuisines doing an IAma thing on reddit a year or two ago... 05:55:02 i'm not at the main campus right now but yeah i was thinking about all the books on sausage production in the library 05:55:21 whats reddit 05:55:29 Bike: we also have both & and "ref" in patterns 05:55:34 and they are opposites kinda 05:55:46 there is more than one wrong way to do it 05:56:00 match x { Some(&y) => ... } x has type Option<&T>, y has type T 05:56:17 match x { Some(ref y) => ... } x has type Option, y has type &T 05:56:31 ok so they are exactly opposites 05:56:35 kmc: a lot of my early rust code was horrific for lack of understanding the & / ref relationship :p 05:56:58 I'd revert to "copy foo"ing all over instead of using borrowed pointers right 05:57:08 mm 05:57:40 -!- tertu has joined. 05:57:53 one of the many flaws of C++ is that there's no obvious indication when you lapse into that style 05:58:26 i guess this is one reason that major style guides say to disable the copy constructor and operator= unless you have a good reason to use them 05:59:04 although Rust still lets you do implicit copies of large POD 05:59:22 and it lets you use generic stuff with a Clone bound that is not obvious 06:00:55 Bike: as far as the core language is concerned, freezing and alias checking is all done at compile time 06:01:14 but there are library types which use unsafe code to provide mutable cells with runtime checks 06:01:24 i'm pretty sure i have no idea what you're talking about, you probably shouldn't bother :< 06:01:25 you can go from an &RefCell to an &mut T, roughly 06:01:29 alright 06:02:17 this weekend i got a few irl opportunities to talk at maximum speed about how cool rust is 06:02:23 that's fun 06:03:05 wow that's p. fast 06:03:17 -!- Phantom_Hoover has quit (Quit: Leaving). 06:03:39 like a radio announcer! 06:03:52 shachaf: lint plugins! 06:04:04 they work 06:04:30 were they lin't plugins before they worked 06:05:03 notecorelanguageisnotstableandmaychangeinunforseennontrivialfashions.bepreparedtofilecompilerbugs.mozillacorporationisnotatfaultifyouusethisinaspaceproberightnow 06:06:46 I'm pretty happy with a lot of the direction Rust is going, though I think we'll need to re-sugar the langauge once it's settled down semantically 06:07:40 yeah 06:07:41 kmc: remember when rust was the exciting garbage-collected language with typestate :p 06:07:48 no I don't 06:07:51 haha 06:07:59 neither do I ;p 06:08:09 @ was implemented before ~ or & 06:09:19 I like telling people who've only used high level languages about the bizarre forms of undefined behavior in C, and then ending it with "this language and its relatives are used for most systems in planes, cars, medical devices, nuclear reactors, etc." 06:10:13 kmc: I'd still trust C in a plane over, say, python :p 06:10:24 math can't even define 0^0, therefore we have all been doomed for centuries 06:10:28 true 06:10:39 did you ever see the C++ coding standards for the F-35 Joint Strike Fighter 06:10:48 www.stroustrup.com/JSF-AV-rules.pdf 06:11:04 I recall reading them but remember zero content 06:11:19 i mostly recall being scared about planes that run C++ 06:11:57 Bike, however, most teorems assume 0⁰ = 1 06:12:03 theorems* 06:12:13 wait, is this the eurofighter 06:12:25 also this weekend I got two opportunities to explain what the C99 "restrict" keyword does and why it's useful 06:12:29 no, it isn't. that woudl be funny 06:12:29 mostly because they're too lazy to define a case for when the exponent is 0 06:12:46 the french parts of the eurofighter are programmed in ocaml 06:12:51 kmc, and did you explain that it's almost never used because no one bothers to? 06:13:06 in fortran, "restrict" is the default 06:13:15 really? i suppose that makes sense 06:13:27 that makes the grounding of the french air force from that one virus seem a bit weird 06:13:28 Rust is even more draconian about aliasing 06:13:37 yep 06:14:01 I like how rust does it, but it may be difficult to make that change 06:14:16 *to adapt to that change 06:14:21 oh but I forgot to talk about the reverse memcpy aliasing flash plugin sound fuckup 06:14:22 f-35 also has some ada from the -22, it seems 06:14:24 -fno-strict-aliasing aww yeah 06:14:31 -fun-times 06:15:10 I think 0^0=1 is most sensible kind of thing to me 06:16:01 0^0 works by analytic continuation of x^0 06:16:01 yes yes everything must have a definition isn't that so 06:16:06 it is, but then you can't assume that "0^n = 0" everywhere 06:16:12 Not so much by 0^x 06:16:17 Or whatever else 06:16:23 there's a good page on 0^0 at http://www.askamathematician.com/2010/12/q-what-does-00-zero-raised-to-the-zeroth-power-equal-why-do-mathematicians-and-high-school-teachers-disagree/ 06:16:23 Kind of a big discontinuity 06:16:38 at least it's not like 1/0 :) 06:16:49 You can do 1/0 06:17:00 with limits, on both directions 06:17:09 Oh, even without limits 06:17:12 for instance if you do it in the one point compactification of R or C 06:17:17 why did i bother using an example 06:18:16 I was using Microsoft Office Word the other day to write equations 06:18:19 it's... not bad 06:18:25 IT IS >:| 06:18:32 I mean, it could be better, but it supports some neat stuff 06:18:37 Donald Knuth did not die in vain! 06:18:40 lol 06:18:42 Zero to power of negative numbers may be undefined though. 06:18:46 yeah I surprisingly don't hate the equation editor in word 06:19:37 i was supposed to use the equation editor to do chem homework. so weird 06:19:52 really? 06:19:55 I found it quite intuitive 06:20:05 easier than latex IMO 06:20:18 not as powerful as it once you need to do complicated stuff, though 06:20:27 weird as in weird that i was supposed to 06:20:36 oh 06:20:45 not really a lot of math in gen chem. 06:20:49 Maple's math document thing is pretty awesome if you want WYSIWYG mathing 06:21:00 (not to mention it can do the actual math as you go too) 06:22:09 I really like LaTeX because, through my studies, I read some terrible things 06:22:11 subscripts and superscripts alone aren't so great for writing out a beta particle or whatever, i guess. 06:22:16 I once read a theoretical physics thesis 06:22:21 Entirely done on typewriter 06:22:45 I find Plain TeX is really good to write math, especially since I can have macros in the file too. (It is good for many other things, too.) 06:23:08 I like to give people the number "(-1) ^(-i)" and ask them what value it is 06:23:15 Two macros that are especially good are 06:23:21 it's some bullshit with e right 06:23:23 integral from -infinity to infinity 06:23:26 and 1/2 06:23:28 most people that haven't had any complex numbers class won't guess that it's 23.1406... 06:23:31 yeah proper mathematical typesetting used to be hella expensive 06:23:33 it's kinda weird 06:23:46 They are very long to type and happen all the time 06:24:07 http://mathworld.wolfram.com/ComplexExponentiation.html jeeez 06:24:10 not if you're working with discrete maths or any other area of math >_> 06:24:17 right it's uh, exp(-iln(-1)), so exp(pi) 06:24:32 But still quite often when you work in REAL MATH 06:24:41 Slereah, :( 06:24:48 uh 06:24:56 complex exponentiation is cool kmc! it goes in circles!! 06:25:00 M28: many people doesn't know about complex numbers either 06:25:15 I only had to use integrals and shit in calculus and analytical geometry... 06:25:20 analytic* 06:25:36 lifthrasiir, lots of non-math-stuff majors 06:25:38 -!- Slereah_ has joined. 06:25:40 If someone aske me about "(-1) ^(-i)" then first things I would say is, "I don't know". And then, to try to figure out by computer. 06:26:12 Wolfram alpha, what is -1^-i! 06:26:19 Slereah, you need params 06:26:27 zzo38: or "use W|A." 06:26:28 if you remember that a^b = exp(b*ln(a)) your life shall improve 06:26:28 (-1)^(-i) 06:26:36 For 1/2 macro, do you mean something like: \def\onehalf{{1\over2}} 06:26:38 http://www.wolframalpha.com/input/?i=%28-1%29%5E%28-i%29 indeed, it gives a correct answer 06:26:40 Bike, lol 06:26:44 Real men use polish notation! 06:26:52 ^-1-i 06:26:55 1/2 06:27:07 (no, I think WP does have a template for this) 06:27:12 Slereah, reverse polish notation master race reporting in 06:27:16 ½ durbadurbdurb 06:27:27 lifthrasiir: Well, it isn't what I was thinking, but yes it is one way. I meant that the program in TI-92 calculator will make the calculations, or to use any other local softwares rather than connecting to internet in order to do it. 06:27:47 i should probably get a cas instead of using wolfram all the time, but, lazy 06:28:09 I guess a useful macro if you work in discrete math would be 06:28:19 \sum_{n=0}^infinity 06:28:25 errr \infty 06:28:35 and those cas's that print out fractions on the terminal, ugh 06:28:54 -!- Slereah has quit (Ping timeout: 258 seconds). 06:28:55 Bike, I almost never find an use for that definition, except this one I guess 06:29:10 circles man, circles 06:29:20 -!- password2 has joined. 06:29:44 here are some latex macros i wrote long ago https://gist.github.com/kmcallister/7677e262d64cd0a5ca45 06:29:53 you don't even need that formula to solve that though 06:30:09 if you replace (-1) with e^(pi * i) 06:30:43 then you end up with an even more fun thing to solve 06:31:44 "how does anyone on Earth understand the guts of \LaTeX?" any paper on the guts would, unfortunately, be written in gutsy latex 06:31:53 i wonder if i'll ever actually have to use tex in my life 06:31:57 lol 06:32:23 there's a mandatory class on scientific writing in compsci in my uni 06:32:29 you learn latex there 06:32:41 ASSUMPTIONS 06:32:45 lol 06:33:41 Google Docs. Teach the controversy 06:34:50 lol 06:41:55 kmc: how often do people make "rusty" puns about rust 06:42:22 not that often 06:42:52 o 06:44:44 shachaf: it's really hard to apply equational reasoning in Rust :/ 06:44:54 because of lifetimes and moves and stuff 06:45:20 lifetime inference is imperfect 06:46:07 shachaf: also with lifetimes, contravariant is the "normal" case and covariant is the unusual case 06:46:15 though this is somewhat just a matter of notation 06:47:06 how do you mean 06:47:18 which? 06:48:44 if 'a ⊆ 'b then &'b T <: &'a T 06:53:52 i only really understood integration by parts once I saw a diagram of it drawn on the wall in tetazoo 06:54:22 what did the diagram say 06:54:50 the rust compile steps in rustc's build system are called "oxidize", that's sort of a pun 06:55:20 it's fun because there's some random thing written in rust that's called oxidize too 06:55:37 [wiki] [[Gentzen]] http://esolangs.org/w/index.php?diff=39706&oldid=39556 * Zzo38 * (+47) 06:55:44 i guess it was sort of like this one http://compasstech.com.au/TNSINTRO/TI-NspireCD/mystuff/calc_parts/parts.jpg 06:55:48 but less fancy 06:57:22 -!- stuntaneous has quit (Ping timeout: 245 seconds). 06:57:23 If communists ported GNU to rust, would it be called redox 06:57:35 red oxtober 06:59:00 kmc versus lebesgue integration, FIGHT 07:04:59 what the hell 07:05:04 someone commited to my github repository 07:05:07 https://github.com/FMNSSun/Burlesque/commit/15138b50ff74e753fa188dee9d8daad9cac1ffdb 07:05:11 ^- how's that possible? 07:05:31 -!- password2 has quit (Ping timeout: 240 seconds). 07:06:18 wut 07:09:44 github definitely has some magic object store for git repos (to share objects between forks, if nothing else), so it might be possible for anyone to upload objects but not move the tags/branches 07:09:59 is that commit included in any branch/tag? 07:10:20 Thta commit was submitted with e-mail root@debian 07:10:39 It was more than a year ago. 07:10:40 maybe github looks at the e-mail adress to find out who's the committer 07:11:02 Ah. Hm. 07:12:39 There is also this commit: https://github.com/FMNSSun/Burlesque/commit/0ebd91cecb6f4fada2a7107cd8f3ec722372cb5d 07:12:51 Maybe someone just sent you a "pull request" last year and you forgot? 07:13:08 No 07:13:14 mroman: it does - so it's fairly easy to "fake" commits as any other github user by just entering them as the author 07:13:42 olsner: I see 07:16:07 mroman, its also possible they changed their username and you dont remember it 07:17:08 if the email was root@debian, the likely explanation is that it's you or someone else on the project who made that on a computer before remembering to configure their name in git 07:17:29 (as root?) 07:17:41 fowl: Nobody ever helped me on Burlesque 07:17:49 there was never anybody contributing code other than me 07:18:12 FMNSSun is also you? 07:18:13 olsner: Looks like I made that change from my linux VM 07:18:20 olsner: FMNSSun is me 07:18:55 I saw some commits in the repo as mroman too, I think 07:20:18 yeah 07:20:40 Different machines have different git configs I guess :) 07:20:55 windows uses FMNSSun and Linux Roman Muentener apparentely 07:21:05 you should sort that out 07:23:26 Is Control.OldException still available? 07:25:18 catch doesn't work anymore with Control.Exception 07:28:15 -!- jconn has quit (Remote host closed the connection). 07:29:21 -!- blsqbot has joined. 07:29:34 Looks like it's still working 07:29:50 !blsq 9 07:29:50 9 07:29:50 0.015608s 07:30:05 !blsq 9ro)S[ 07:30:06 {1 4 9 16 25 36 49 64 81} 07:30:06 0.0156048s 07:30:18 !blsq 99989899676884654632432432ro)S[ 07:30:19 Ain't nobody got time fo' dat! 07:30:19 0.0312315s 07:31:07 !blsq {{1 2}{3 4}}sp 07:31:08 1 2 07:31:08 0s 07:31:14 ok. but single line output only. 07:31:44 hmm, how does 99989899676884654632432432 encode that string? 07:31:56 It doesn't. 07:32:01 It produces a timeout 07:32:08 after 0.03s? 07:32:25 It uses timeout 100 07:32:45 so 100 microseconds 07:33:55 -!- aretecode has quit (Ping timeout: 240 seconds). 07:33:57 !blsq "abc"R@ 07:33:57 {"" "a" "b" "ab" "c" "ac" "bc" "abc"} 07:33:57 0.0100081s 07:34:00 !blsq "abcdef"R@ 07:34:00 {"" "a" "b" "ab" "c" "ac" "bc" "abc" "d" "ad" "bd" "abd" "cd" "acd" "bcd" "abcd" 07:34:00 0.0156048s 07:34:07 !blsq "abcdefghijklmnopqr"R@ 07:34:08 Ain't nobody got time fo' dat! 07:34:08 0.0156062s 07:34:09 looks like J 07:34:35 olsner: The small timeout is because I can't put a memory limit 07:34:42 smoke a J 07:35:16 ulimit perhaps? 07:35:32 might be better added into the interpreter itself though 07:35:45 !blsq {{1 2}{3 4}}SP 07:35:45 "1 2\n3 4" 07:35:45 0.0100085s 07:37:09 olsner: I meant: There's no memlimit thingy like System.Timout that I can just embed in the interpreter easily 07:38:55 -!- Tritonio has joined. 07:39:08 hm 07:39:15 !blsq "123" -1 !! 07:39:15 -!- blsqbot has quit (Remote host closed the connection). 07:39:22 ok 07:39:29 this catch doesn't catch everything :( 07:39:53 -!- slereah has joined. 07:41:21 -!- blsqbot has joined. 07:41:29 !blsq "123" -1 !! 07:41:30 That line gave me an error 07:41:30 0.0156043s 07:41:36 now it does :) 07:43:18 olsner: There are two timeouts actually 07:43:37 it launches an interpreter with readProcess 07:43:47 the interpreter has a 100 microsecond timeout itself 07:43:56 and the ircbot has a 3 second timeout for readProcess 07:44:45 I'm not sure whether this evaluate $!! kills lazyness though 07:45:03 !blsq 1R@100!! 07:45:03 101 07:45:03 0.0156048s 07:45:14 ok. doesn't kill lazy 07:48:35 myname: except it doesn't have dyads, monads and triads and quadads and pentads 07:48:49 what is it? 07:49:02 what is what? 07:49:12 blqsbot? 07:49:14 *sq 07:49:29 yea 07:49:38 !blsq %?? 07:49:39 Burlesque - 1.7.2b 07:49:39 0s 07:49:55 ^- that ;) 07:50:25 !blsq 10ro{2.%}pt 07:50:25 {{1 3 5 7 9} {2 4 6 8 10}} 07:50:25 0s 07:51:04 It's sort of a J-like language I guess 07:51:15 although I'm pretty sure J users would heavily disagree with that. 07:52:35 !blsq 10ro{2.%}ptp^?+ 07:52:35 {3 7 11 15 19} 07:52:35 0s 07:54:10 !blsq 4mo5.+?d 07:54:11 {3 7 11 15 19} 07:54:11 0s 07:54:42 myname: You can golf in it on golf.shinh.org 07:54:54 nice 07:57:30 !blsq 1487796867 36%B! 07:57:30 olsner 07:57:30 0s 07:58:35 base 36 should be a standard for compressing numbers . 07:59:15 imo base 32 07:59:25 base64 08:00:26 !blsq 'a'zr@ 08:00:26 {'a 'b 'c 'd 'e 'f 'g 'h 'i 'j 'k 'l 'm 'n 'o 'p 'q 'r 's 't 'u 'v 'w 'x 'y 'z} 08:00:26 0.0156052s 08:00:34 !blsq @azr@ 08:00:34 {'a 'b 'c 'd 'e 'f 'g 'h 'i 'j 'k 'l 'm 'n 'o 'p 'q 'r 's 't 'u 'v 'w 'x 'y 'z} 08:00:34 0.0156066s 08:00:48 ah. That's why I implemented an @ prefix some time ago 08:03:11 shachaf: but base 36 is neatly from 0..9 ++ a..z 08:03:34 i think base 32 usually drops 0 and 1 because of ambiguity with o and i 08:05:08 Why? 08:05:23 for human written base 32 stuff... ok 08:05:31 but otherwise... 08:07:13 se what else are you using this for? 08:07:55 [12345, #j, %, \/] 08:07:55 0.0156053s 08:08:02 oh. 08:08:08 He doesn't answer in queries :( 08:08:22 shachaf: I'm using it for golfing and homework usually 08:08:53 why not base 64 or something? 08:09:06 oh. you mean the base 08:09:10 yes 08:09:12 I don't use it :) 08:09:35 there are lots of different characters. i don't see why you'd pick 36 other than for interacting with humans 08:14:22 " The characters "0" and "O" are easily 08:14:23 confused, as are "1", "l", and "I"" 08:14:37 Why would a human attempt to decode base32 encoded text 08:15:20 also using = as pad for urls is probably not a good idea 08:16:00 tech supports? 08:17:03 why are you encoding a thing as human- 08:17:11 language characters if not for humans to read 08:18:04 that's my question 08:18:23 why do you ban characters from an encoding because humans confuse them 08:18:33 no human's gonna decode it by hand so why bother 08:19:29 so what's the point of base 36 here 08:20:28 what 08:20:33 none 08:20:56 ok 08:20:58 oh, wait 08:21:01 is this the german dot 08:21:11 where you don't mean a sentence seriously if you put a space before the "." 08:21:20 yes 08:21:24 ok 08:21:28 now it makes sense 08:21:41 i asked a german friend about it once and he had never heard of it 08:22:31 but now i understand 00:58 base 36 should be a standard for compressing numbers . 08:23:09 * shachaf $ grep 'mroman.* \.$' logs/esoteric/ALL 08:25:43 Maybe it's a community thing and not a german thing. 08:26:05 Hm. 08:26:13 Well, I'll remember to look for it . 08:27:02 There's also !!11elf 08:28:37 because 1 is on the same key as ! and elf means 11 in german 08:28:52 Yes, I think that's common in English too. 08:29:01 Or at least I've seen it. 08:31:48 -!- Patashu has joined. 08:42:26 -!- Tritonio has quit (Ping timeout: 252 seconds). 08:50:30 -!- Patashu has quit (Disconnected by services). 08:50:30 -!- Patashu_ has joined. 08:58:08 -!- edwardk has joined. 09:03:59 -!- KingOfKarlsruhe has joined. 09:35:47 !blsq 9tp 09:35:48 ERROR: You should not transpose what you can't transpose. Yes this is an eastere 09:35:48 0s 09:38:40 I guess I can't send null-bytes over the IRC 09:40:51 send as \0 09:42:42 !blsq 0L[ 09:42:42 ' 09:42:43 0s 09:42:50 !blsq 0%L[ 09:42:51 09:42:51 0.0156085s 09:43:03 burlesque doesn't really have escape sequences 09:43:21 i.e to embed a newline into a string you really use a newline :) 09:44:19 !blsq 255rz)L[im 09:44:19 ERROR: Burlesque: (++) Invalid arguments! 09:44:19 0.0156076s 09:44:25 !blsq 255rz)L[\\ 09:44:26 ERROR: Burlesque: (\\) Invalid arguments! 09:44:26 0.0156038s 09:44:28 what 09:44:33 that sucks :( 09:45:05 oh 09:45:09 !blsq 255rz)L[\[ 09:45:10 "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\a\b\t\n\v\f\r\SO\SI\DLE\DC1\DC2\DC3\DC4\NAK\SYN\ET 09:45:10 0.0156067s 09:46:23 on the other hand... if you print a string it will use escape sequences :) 09:46:36 unless you pretty print it 09:47:28 !blsq 255rz)L[\[sh 09:47:29 09:47:29 0s 09:47:50 lol 09:47:53 ok. 09:48:03 You can make me computer beep if you produce \a 09:48:12 because the irc bot logs output to stdout :D 09:57:55 Good morning :) 10:00:44 -!- KingOfKarlsruhe has quit (Read error: Connection timed out). 10:02:24 Good morning, Taneb! 10:02:24 0.0156062s 10:06:14 -!- Slereah_ has quit (Ping timeout: 255 seconds). 10:07:45 -!- Slereah_ has joined. 10:08:01 Burlesque bot? 10:08:50 -!- boily has joined. 10:08:55 mroman, yours? 10:11:24 -!- drdanmaku has quit (Quit: Connection closed for inactivity). 10:23:35 I wonder if we could do a challenge 10:23:58 write a simple esoteric language, give no fucking explanation about it, and just provide a bot that evals what you say in a certain channel 10:24:10 the goal is figuring out how to write "Hello, World!" 10:28:06 M28: there's an explanation in the esowiki . 10:28:29 and that's not the irony dot. That's the emphasize my point dot 10:28:30 I'm not talking about blsqbot 10:28:33 oh. 10:28:38 pardon me. 10:28:42 Taneb: yeah. Mine 10:28:52 It has a bug. 10:29:10 It can only send to one channel :( 10:29:32 Is it written in Burlesque? 10:29:42 God no :) 10:29:49 That would be tough without I/O. 10:30:08 also... output is only produce on termination 10:30:17 so that would make it pretty much impossible 10:30:42 (i.e. a thruth-machine can't really be implemented in burlesque 10:30:57 probably. 10:31:08 Maybe it'll work for some scenarios thanks to lazyness and whatnot) 10:31:58 -!- idris-bot has quit (Quit: Terminated). 10:32:30 -!- metasepia has joined. 10:52:43 -!- Tritonio has joined. 10:59:58 -!- boily has quit (Quit: Poulet!). 11:00:00 -!- metasepia has quit (Remote host closed the connection). 11:04:23 Burlesque isn't something you'll write an interpreter for in a couple of days 11:04:31 Mind that there are probably 300 Commands 11:04:47 and those 300 Commands do all different kinds of things depending on arguments 11:04:50 !blsq {1 2 3 4 5}av 11:04:51 3.0 11:04:51 0s 11:04:54 !blsq {1 2 3 4 5}avav 11:04:54 3 11:04:54 0s 11:05:00 !blsq {1 2 3 4 5}avavpd 11:05:00 3.0 11:05:00 0.0156281s 11:05:02 !blsq {1 2 3 4 5}avavpdpd 11:05:02 3 11:05:02 0s 11:05:49 ! 9.0r@ 11:05:54 !blsq 9.0r@ 11:05:54 3.0 11:05:54 0.0156057s 11:06:02 !blsq {1 2 3}r@ 11:06:03 {{1 2 3} {2 1 3} {3 2 1} {2 3 1} {3 1 2} {1 3 2}} 11:06:03 0.0156061s 11:06:29 I dare you writing an interpreter for it in Brainfuck 11:06:44 you'd even have to implement lazy evaluation 11:10:54 !blsq "{1 2 3}r@"e! 11:10:54 ERROR: Burlesque: (e!) Invalid arguments! 11:10:54 0.0100048s 11:11:00 !blsq "{1 2 3}r@"pe 11:11:00 {{1 2 3} {2 1 3} {3 2 1} {2 3 1} {3 1 2} {1 3 2}} 11:11:00 0.0100066s 11:35:06 -!- idris-bot has joined. 11:40:15 -!- Sprocklem has joined. 11:45:30 [wiki] [[Gentzen]] http://esolangs.org/w/index.php?diff=39707&oldid=39706 * Keymaker * (+4) Made "Truth-machine" link to that page. 11:47:36 -!- Tritonio has quit (Ping timeout: 252 seconds). 11:48:42 -!- Sgeo has quit (Read error: Connection reset by peer). 12:53:33 -!- Sprocklem has quit (Quit: brb). 12:58:28 -!- blitter64 has joined. 13:03:42 -!- yorick has joined. 13:04:18 -!- ais523 has joined. 13:06:00 * ais523 reads the Perl 5.20 delta 13:08:51 -!- MDream has changed nick to MDude. 13:13:18 -!- {hk3380} has joined. 13:18:57 -!- MindlessDrone has joined. 13:20:37 -!- blitter64 has quit (Ping timeout: 240 seconds). 13:23:55 -!- Patashu_ has quit (Ping timeout: 252 seconds). 13:25:40 -!- Sorella has joined. 13:26:58 -!- ais523 has quit (Ping timeout: 252 seconds). 13:38:30 -!- password2 has joined. 13:39:40 -!- password2 has quit (Max SendQ exceeded). 13:56:23 -!- password2 has joined. 14:18:30 -!- nooodl has joined. 14:42:54 -!- ais523 has joined. 14:56:35 -!- hogeyui has quit (Ping timeout: 252 seconds). 15:10:06 -!- hogeyui has joined. 15:13:17 -!- Sprocklem has joined. 15:15:08 -!- Slereah_ has quit (Ping timeout: 255 seconds). 15:15:38 -!- Slereah_ has joined. 15:19:41 [wiki] [[MetaGolfScript]] N http://esolangs.org/w/index.php?oldid=39708 * 194.29.34.162 * (+1932) Created page with "'''MetaGolfScript''' is a family of programming languages, designed to allow zero length programs to be written, in order to win code-[[golf]] contests. == Overview == The fa..." 15:30:59 -!- ais523 has quit. 15:31:40 -!- M28_ has joined. 15:34:23 -!- M28 has quit (Ping timeout: 258 seconds). 15:41:25 -!- {hk3380} has quit (Ping timeout: 252 seconds). 15:41:41 -!- hogeyui has quit (Ping timeout: 255 seconds). 15:46:30 -!- hogeyui has joined. 15:50:54 -!- edwardk has quit (Quit: Leaving...). 15:53:17 -!- Phantom_Hoover has joined. 15:53:19 -!- Phantom_Hoover has quit (Changing host). 15:53:19 -!- Phantom_Hoover has joined. 15:58:58 -!- password2 has quit (Ping timeout: 240 seconds). 15:59:49 -!- Phantom_Hoover has quit (Ping timeout: 240 seconds). 16:01:34 -!- slereah has quit (Quit: Leaving). 16:25:31 -!- sebbu has quit (Ping timeout: 240 seconds). 16:35:01 -!- drdanmaku has joined. 16:37:51 Neat idea 16:37:57 @MetaGolfScript 16:37:58 Unknown command, try @list 16:38:38 worst abuse of common sense ever 16:41:10 -!- {hk3380} has joined. 16:44:30 -!- MoALTz has joined. 16:49:17 also if you know the winning language 16:49:24 everybody else will know what your program was 16:49:42 that'd pretty much suck for no-deadline contests 16:55:40 !blsq 255rz)L[209180605381204854470575573749277224 256dgsi 16:55:41 That line gave me an error 16:55:41 0.1093593s 16:58:33 !blsq 255rz)L[209180605381204854470575573749277224 256dgsi\[ 16:58:33 That line gave me an error 16:58:33 0.0156048s 16:58:48 damn you 16:58:50 !blsq 255rz)L[209180605381204854470575573749277224 256dgsi\[ 16:58:50 [wiki] [[Talk:MetaGolfScript]] N http://esolangs.org/w/index.php?oldid=39709 * GreyKnight * (+298) Created page with "== pg wishes he was this smaert == Well, it's certainly esoteric, but: : "[...] in order to win code-golf contests." I think you're making some assumptions about the contest j..." 16:58:50 "(Ifmmp-!xpsme\"(" 16:58:50 0.1093626s 16:59:06 how does he encode Hello, world? 16:59:09 It's not base 256 17:01:09 -!- conehead has joined. 17:04:15 -!- Slereah_ has quit (Read error: Connection reset by peer). 17:04:32 -!- Slereah_ has joined. 17:08:11 !blsq "\'Hello, world!\'")**256ug 17:08:11 178006462281531046238104240886391074 17:08:11 0.0200142s 17:08:43 !blsq 255rz)L[178006462281531046238104240886391074 256dgsi%\[ 17:08:44 "Hello, world!" 17:08:44 0.0156042s 17:15:11 nice n readable 17:17:32 -!- mihow has quit (Quit: mihow). 17:20:19 -!- sebbu has joined. 17:20:42 `` dc <<<178006462281531046238104240886391074P 17:20:58 -!- sebbu has quit (Changing host). 17:20:59 -!- sebbu has joined. 17:21:00 `` dc <<<178006462281531046238104240886391074P 17:21:00 ​"Hello, world!" 17:28:33 mroman: 0 = "", 1 = "\0x00", 2 = "\x01"... 17:43:53 -!- Sprocklem has quit (Ping timeout: 252 seconds). 17:45:05 kmc: https://code.google.com/p/go/issues/detail?id=6776 17:45:28 -!- mihow has joined. 17:45:48 oh, apparently it's fixed 17:50:10 0 is the empty program? 17:50:11 hm. 17:50:12 so 17:50:20 !blsq 255rz)L[209180605381204854470575573749277223 256dgsi\[ 17:50:20 "(Ifmmp-!xpsme\"'" 17:50:20 0.0156085s 17:50:41 -!- password2 has joined. 17:50:53 ok. than you can't treat it as a base encoded thingy 17:51:09 Bike: nice n very readable 17:51:17 rz is RangeFromZero 17:51:28 dg is digits, si is selectindices and \[ is concat 17:51:36 -!- password2 has quit (Max SendQ exceeded). 17:51:36 !blsq 255rz 17:51:36 {0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 17:51:36 0.0156052s 17:51:43 !blsq 255rz)L[ 17:51:43 {' 17:51:43 0s 17:51:49 well. L[ is ord 17:51:59 can't print that because it has null bytes and stuff in it 17:52:13 !blsq "abc"{1 1 0 0 2}si 17:52:13 "bbaac" 17:52:13 0.0156038s 17:52:29 -!- password2 has joined. 17:52:40 !blsq 128 2dg 17:52:41 {1 0 0 0 0 0 0 0} 17:52:41 0.0156052s 17:52:50 !blsq {1 0 0 1}2ug 17:52:51 9 17:52:51 0s 17:53:07 -!- password2 has quit (Max SendQ exceeded). 17:56:10 !blsq 65L[ 17:56:10 'A 17:56:11 0s 17:57:01 -!- tertu has quit (Ping timeout: 240 seconds). 17:57:06 *L[ is chr 17:57:09 ** is ord 17:57:13 !blsq 65L[** 17:57:14 65 17:57:14 0.0090037s 17:57:23 among other thins. 17:57:29 !blsq "abc""def"** 17:57:30 "adbecf" 17:57:30 0.0090065s 17:58:40 !blsq "hi this is a test"{<-}ww 17:58:40 "ih siht si a tset" 17:58:40 0.0156053s 18:01:07 -!- {hk3380} has quit (Ping timeout: 240 seconds). 18:02:35 !blsq "CamelCase"<- 18:02:36 "esaClemaC" 18:02:36 0.0156225s 18:02:41 !blsq "CamelCase")<- 18:02:41 "cAMELcASE" 18:02:41 0.0156206s 18:05:56 -!- {hk3380} has joined. 18:10:35 -!- not^v has joined. 18:15:18 -!- tertu has joined. 18:15:45 -!- tertu has quit (Client Quit). 18:20:38 !blsq "CamelCase"))<- 18:20:38 -!- Slereah_ has quit (Ping timeout: 240 seconds). 18:20:38 {ERROR: Burlesque: (_+) Invalid arguments!} 18:20:38 0.0240154s 18:21:03 -!- Slereah_ has joined. 18:24:14 "Code intended to support native EBCDIC platforms will be removed from Perl before 5.22.0" 18:25:14 -!- mhi^ has joined. 18:35:24 -!- glogbackup has joined. 18:37:03 -!- glogbackup has quit (Remote host closed the connection). 18:38:46 -!- MindlessDrone has quit (Quit: MindlessDrone). 18:38:57 -!- rottytooth has joined. 18:42:00 one of the food trucks has a logo like the eye in the pyramid on a dollar bill but the floating eye is replaced by a pizza slice 18:42:02 I have idea, it is making up a programming language for making random distribution data (such as, 4d6 drop lowest, or win/loss ratio at a crap game, or poker hands, or whatever), and then it can read the program in order to determine the expected probability of results, and then run it using a given random number generator to see how closely it matches. 18:43:04 -!- glogbackup has quit (Remote host closed the connection). 18:43:10 kmc: excellent. 18:56:12 -!- AnotherTest has joined. 19:08:13 -!- sebbu has quit (Ping timeout: 252 seconds). 19:11:03 -!- evalj has joined. 19:11:53 -!- mihow has quit (Quit: mihow). 19:12:18 -!- edwardk has joined. 19:13:06 -!- mihow has joined. 19:13:14 [wiki] [[Secretary]] http://esolangs.org/w/index.php?diff=39710&oldid=37689 * 12.33.168.146 * (-1) /* Humor */ 19:13:43 -!- sebbu has joined. 19:14:20 -!- sebbu has quit (Changing host). 19:14:20 -!- sebbu has joined. 19:15:04 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com). 19:18:14 -!- AnotherTest has quit (Ping timeout: 252 seconds). 19:23:04 -!- mihow has quit (Quit: mihow). 19:24:43 -!- not^v has quit (Quit: http://i.imgur.com/Akc6r.gif). 19:29:58 -!- edwardk has quit (Ping timeout: 252 seconds). 19:31:02 -!- MDude has quit (Ping timeout: 252 seconds). 19:32:35 -!- edwardk has joined. 19:38:45 is there some congruence with the distribution of 0,1 for numbers in base 2? 19:39:20 i.e. the ratio of ones to zeroes in the binary representation of a number N 19:43:47 other than 2^x-1 have 100% ones 19:44:00 and 2^x have 1/ln(x) probably 19:45:15 Isn't it just equiprobable 19:45:21 Since all of them have to be there 19:49:28 -!- {hk3380} has quit (Ping timeout: 265 seconds). 19:51:12 -!- {hk3380} has joined. 19:54:07 -!- mhi^ has quit (Quit: Lost terminal). 19:57:21 -!- mhi^ has joined. 20:02:31 -!- mihow has joined. 20:04:27 -!- Sprocklem has joined. 20:12:16 http://www.munidiaries.com/2014/05/27/no-one-ever-said-no-cooking-on-muni/ 20:25:45 -!- Sprocklem has quit (Quit: brb). 20:26:41 -!- conehead has joined. 20:27:18 -!- Sprocklem has joined. 20:32:22 -!- mihow has quit (Quit: mihow). 20:32:41 -!- blsqbot has quit (Read error: Connection reset by peer). 20:33:23 -!- mihow has joined. 20:42:49 -!- mhi^ has quit (Quit: Lost terminal). 20:43:01 -!- tromp_ has quit (Remote host closed the connection). 20:55:45 -!- Patashu has joined. 20:56:40 hey look! http://www.icfpcontest.org/ is updated! 21:06:04 it doesn't seem to have any teasers though 21:06:26 What statistics should I put other than the quantile and standard deviation? 21:07:30 -!- myndzi has quit (Quit: .). 21:07:53 -!- myndzi has joined. 21:14:32 zzo38: um, put where? 21:14:40 ah 21:15:06 "< zzo38> I have idea, it is making up a programming language for making random distribution data (such as, 4d6 drop lowest, or win/loss ratio at a crap game, or poker hands, or whatever), and then it can read the program in order to determine the expected probability of results, and then run it using a given random number generator to see how closely it matches." 21:17:53 -!- Sprocklem has quit (Quit: Bye). 21:19:59 No I meant for SQL function 21:20:36 Cauchy distribution 21:20:46 solomonoff distribution 21:21:04 `coins 21:21:05 ​puzzicoin 13.4coin ircutecoin infocoin oof!coin revercoin convesiacoin tfikntythestidcoin achedcoin fordcoin yicleadcoin fiocoin nerersesspridcoin clatlicvrecoin adminecoin nulliicoin ooksancoin estcoin cardcoin taxcoin 21:25:21 -!- Patashu has quit (Ping timeout: 252 seconds). 21:25:56 zzo38: how does it take its input? is it an aggregate function? 21:26:02 b_jonas: Yes 21:26:18 So far I have functions QUANTILE/2, MEDIAN/1, and STDDEV/1. 21:26:30 dunno, perhaps arbitrary moment and arbitrary central moment 21:26:31 (MEDIAN(x) is just short for QUANTILE(x,0.5)) 21:27:21 also, maybe something like QUANTILE that takes an integer ordinal instead of a fractional ratio 21:27:27 I made up a program in SQL for ratio of ones to zeroes in the binary representation of a number N. It is: WITH X(X,Y) AS (SELECT 0,'0' UNION ALL SELECT X+1,BASECONV(X+1,10,2) FROM X LIMIT 128) SELECT CAST(SUBSTRING_COUNT(Y,'1') AS REAL)/SUBSTRING_COUNT(Y,'0') FROM X; 21:28:05 the ratio is always zero since there are as many leading zeroes as you want, duh 21:28:33 b_jonas: If you want an integer offset then you can use the OFFSET clause, though. 21:29:07 (You can also use ORDER BY, LIMIT, and OFFSET if for some reason you want the uninterpolated median of non-numerical data.) 21:29:21 zzo38: hmm 21:29:51 zzo38: I don't think you can do that if you GROUP BY and want a quantile from each group 21:30:04 harmonic mean! what if i want to compute that 21:30:32 or variance. i guess that would be good. 21:30:34 i /guess/. 21:30:36 b_jonas: O, yes, I forgot that 21:31:12 println!("{}", uncomment!(/* 3 */)) 21:31:18 zzo38: mind you, I think you can still do ORDER BY in a subquery, but that gets ugly and possibly inefficient 21:31:24 kmc: What is that? 21:31:32 i'm afraid, kmc 21:31:36 b_jonas: Yes it is what I was thinking of, too 21:31:39 a silly macro 21:31:51 one which you can't actually write, but we were discussing if it would be possible or not with a certain change 21:31:54 kmc: what language is that? 21:31:57 Rust 21:31:57 rust 21:32:02 why is uncomment effectful 21:32:08 that's not what the bang means 21:32:09 scary 21:32:13 no? 21:32:16 b_jonas: you can't actually do that, though 21:32:21 Bike: it means macro / syntax extension 21:32:31 weird. 21:32:34 println is a macro? 21:32:37 I don't think that it is necessary to be able to write such a macro, but even if a change allows it, that is not necessarily a problem 21:32:44 no varargs yet or something? 21:32:45 yes, because the format string is parsed and typechecked at compile time 21:33:02 tsk. 21:33:06 we support calling variadic C function but otherwise there is no varargs, yeah 21:33:29 but handling format strings at compile time seems better, anyway 21:33:35 although I don't know how it interacts with i18n 21:33:48 lacking the ability at all to do it at runtime though, that rubs me the wrong way 21:33:51 GCC also typechecks format strings at compile time, using a hardcoded hack 21:33:54 Is the standard deviation the square root of the variance? That would be easy to fix 21:33:58 > Test.Printf.printf "%s" () :: String 21:34:00 Not in scope: ‘Test.Printf.printf’ 21:34:00 Perhaps you meant one of these: 21:34:00 ‘Text.Printf.printf’ (imported from Text.Printf), 21:34:00 ‘Text.Printf.hPrintf’ (imported from Text.Printf) 21:34:05 > Text.Printf.printf "%s" () :: String 21:34:06 No instance for (Text.Printf.PrintfArg ()) 21:34:06 arising from a use of ‘Text.Printf.printf’ 21:34:10 aww 21:34:11 Bike: I'm not sure if we have that ability right now but it's not too hard to provide, anyway 21:34:18 > Text.Printf.printf "%s" 42 :: String 21:34:19 "*Exception: printf: bad formatting char 's' 21:34:36 i'd rather println be a function with a nicely incorporated compile-time function to deal with the usual stuff, but nobody seems to want to do this 21:34:57 zzo38: there's this whole thing with bessel's correction though. 21:35:02 Bike: there is a println function too 21:35:14 What is bessel's correction doing with it? 21:35:17 println!("...", ...) => println(format!("...", ...)) roughly 21:35:42 with a template haskell version, which is pretty much a macro, it could produce a type error instead. 21:35:51 zzo38: the standard deviation (variance) of a sample and the standard deviation (variance) of a population are computed differently 21:36:11 although it's not in scope by default 21:36:19 Bike: Yes I know that, but is it relevant? 21:36:20 * int-e wonders whether ocaml's Format.printf machinery can be reproduced in a library 21:36:32 well it's relevant if you're just calling it "stddev" without saying which it is 21:36:33 and I think println(format!(...)) has an intermediate allocation that println!() avoids 21:36:38 -!- oerjan has joined. 21:36:46 zzo38: sure it is, in the sense that you should document which one the function computes 21:36:46 int-e: don't believe so 21:36:47 maybe in Camlp4 / Camlp5 tho 21:37:00 23:12 < kmc> the french parts of the eurofighter are programmed in ocaml 21:37:06 i wonder if anybody believed me when i said that 21:37:10 i did. 21:37:13 am i... a fool 21:37:15 b_jonas: Done. 21:37:18 not really, but it's a lie 21:37:22 dag 21:37:25 sorry 21:37:27 also there's no santa claus 21:37:29 "they're actually in prolog" 21:37:38 kmc: I also don't believe so but I don't know :) 21:37:56 zzo38: and document what the functions do with NULL and with NaN values 21:38:22 -!- MDude has joined. 21:38:57 Nulls are just ignored. Anything else is just used as it is. Now I wrote that in the documentation, too. 21:39:06 thanks 21:40:00 -!- conehead has quit (Quit: Textual IRC Client: www.textualapp.com). 21:40:39 zzo38: I have another idea. you could add two-argument aggregate functions for the covariance of pairs of values. 21:40:43 -!- boily has joined. 21:41:08 OK, how does that work? 21:41:09 obviously that's only for convenience, because just like the standard deviation, you can mostly just compute that from avg(...) 21:41:43 zzo38: dunno, I'm too tired to tell the right way now, and I don't wish to embarrass myself by telling wrong stuff 21:41:57 look up the numerically stable formulas somewhere 21:42:25 you are using the numerically stable formula for standard deviation by the way, right? 21:44:45 -!- Phantom_Hoover has joined. 21:45:09 -!- Phantom_Hoover has changed nick to Guest32551. 21:46:50 -!- nooodl_ has joined. 21:49:18 -!- edwardk has quit (Ping timeout: 240 seconds). 21:50:02 -!- nooodl has quit (Ping timeout: 255 seconds). 21:54:02 -!- rottytooth has quit (Quit: HydraIRC -> http://www.hydrairc.com <- Go on, try it!). 21:55:36 kmc: ok, I found the magical format string parser in the compiler source. so yeah, a preprocessor looks like the only viable option 21:56:13 clearly the answer is dependent types 21:56:29 yay unboxed closures are coming to Rust 21:56:37 this is one of the major things C++ can do that we can't 22:00:09 what's an unboxed closure mean particularly 22:01:15 -!- mhi^ has joined. 22:01:37 kmc: you may enjoy the comment in the type checking code here: http://sprunge.us/ZcjJ 22:02:01 (or perhaps not, since it's entirely accurate) 22:02:43 terribly accurate hack 22:04:35 "rue" btw stands for "record and unify with expected type" 22:05:06 -!- boily has quit (Quit: DENTISTRY). 22:05:51 what does avenue stand for twh 22:07:09 I thought it was the proper word, "to rue" 22:07:16 proper *verb 22:07:44 (though for once that kind of thinko didn't make the sentence wrong.) 22:08:27 -!- Sprocklem has joined. 22:08:56 -!- rottytooth has joined. 22:09:59 hehe, according to acronymfinder, "AVENUE stands for ATM (Asynchronous Transfer Mode) Validation Environment for Use towards EATMS (European Air Traffic Management System)" 22:10:41 good, good 22:11:48 lol ATM 22:13:56 Overly Enthusiastic Resources Jeopardize Acronym Nomenclature 22:14:01 hth 22:15:47 Bike: so a C++ lambda evaluates to an instance of an anonymous class generated by the compiler 22:16:03 the captured variables of the lambda are member data of that class 22:16:08 isn't that a box? 22:16:12 with a () operator? sounds sane ... in the context of C++ 22:16:17 int-e: yes 22:16:46 kmc: yes, but that's almost so difficult to prove that they practically only say that to be able to define the semantics of lambdas properly 22:16:47 Bike: "box" refers to a heap box, used to give things uniform runtime representation 22:17:02 oh 22:17:03 the function object could live on the stack or as a field in another object 22:17:05 without a heap allocation 22:17:09 and the operator() call is not virtual 22:17:18 so if you call map with a lambda argument, the compiler can even inline the lambda into the map 22:18:09 if you *do* want dynamic polymorphism, you up-cast the object of unspecified type to std::function<...>, which is a superclass 22:18:39 and (like other cases of up-casting to call virtual methods) you can only do that cast on a pointer or reference, not on the object by value 22:18:49 because a std::function<...> has a different size than some arbitrary subclass of it 22:19:06 -!- mihow has quit (Quit: mihow). 22:19:14 anyway the ability to stuff free variables into a bigger struct is super useful 22:19:22 for example in the iterators API 22:19:29 in Rust, I mean 22:20:10 myiter.map(|x| ...) will return a struct which is another iterator, and if you moved the free variables of that lambda into the struct, you could pass the iterator around more freely 22:20:37 -!- Sgeo has joined. 22:20:42 instead, in current rust, the free variables live on the stack of the caller, and the iterator lifetime's is bound to that activation frame 22:20:57 and you can't inline the lambda into other stuff 22:21:02 it's just passed as a function pointer 22:22:06 that makes it pretty similar to GCC's nested functions extension, actually 22:22:10 oh, that's nice. 22:22:23 except the borrow checker will complain if you try to return such a lambda 22:24:01 http://www.theonion.com/articles/new-stem-education-initiative-inspires-girls-to-ea,36126/ 22:24:04 like so: http://goo.gl/7kNFUA 22:24:30 imo just do it the go way: https://groups.google.com/d/msg/golang-nuts/mKJbGRRJm7c/DZod_v3BdSIJ 22:24:56 kmc: well, C++ lambdas can do taht, and more 22:25:08 -!- Guest32551 has quit (Quit: Leaving). 22:25:17 can do which? 22:25:49 it can have the variables live on the stack so the closure is valid only until its creating function 22:26:00 I know, I said that above 22:26:03 yep 22:26:11 this topic started with me saying that C++ lambdas can do things Rust lambdas can't 22:26:51 yes, I see 22:26:52 sorry 22:26:55 np :) 22:27:03 shachaf: Severely Hopeless Acronyms Change Humoristic Art Forever 22:28:04 do me 22:28:06 :) 22:28:35 Bike: a key part of that whole thing is that C++ has inference for function template calls 22:29:03 -!- blitter64 has joined. 22:29:45 so you can write map([](x) { x+1 }) rather than map([](x) { x+1 }) 22:30:07 -!- evalj has quit (Remote host closed the connection). 22:30:52 template class List { template List map(F f) } 22:31:20 of course, until the templates are expanded, there's nothing checking that F has an operator() which takes A and returns B 22:31:25 because C++ templates are duck-typed 22:31:31 but the analogous thing in Rust would be checked via the trait system 22:31:43 and some day C++ will get "concepts" to do the same 22:31:55 maybe even this year?? 22:32:39 oerjan: Only Exemplary Retorts Jolt Adroit Nonagenarians 22:33:04 fowl: From Oulipo With Love 22:33:54 Why do people never speak of UDP/IP as a thing the way they do TCP/IP? 22:34:49 oerjan: Ordinarily, Exceeding Rough Jabs Aren't Necessary 22:35:15 ICMP/IP 22:37:24 shachaf: Sorry, Helpless Arbitrary Codes Have All Failed 22:38:12 ICBM/IP 22:38:26 -!- rottytooth has quit (Quit: HydraIRC -> http://www.hydrairc.com <- Po-ta-to, boil em, mash em, stick em in a stew.). 22:39:17 oerjan: Opportunistic Extra Random Jokes Ain't Nice 22:40:27 shachaf: So Heartless And Completely Humorless A Feature 22:41:18 Sgeo: i have heard it 22:41:23 but mostly because there's very little to say about UDP? 22:41:33 UDP isn't a transport protocol so much as a way to write your own transport protocol in userspace 22:41:36 usually that's what you talk about 22:42:29 UDP is a way to escape the tyranny of your OS's TCP junk heap ;) 22:44:23 such hate and conflict -- horrible acronym fate 22:44:25 Sgeo: it's a good question though; certainly from a network perspective there's no reason you couldn't put UDP in whatever kind of frame you wanted 22:44:51 Running UDP on broadcast ethernet frames or something. 22:45:31 it's depressing how many security holes have the root cause that "int" is a lot shorter to type than "unsigned int" 22:46:16 kmc: lol 22:46:18 kmc: At least, SQLite has a SQLITE_TOOBIG error code which is possible to avoid some of those problems. 22:47:50 int-e: it needs to end 22:47:53 obsessively enigmatic retorts -- just another nightmare --- fair is fair. 22:49:47 oerjan: I never think enough. :P 22:51:17 -!- blitter64 has quit (Ping timeout: 264 seconds). 22:52:27 imagination nurtures thought endlessly 22:57:45 -!- mcpherrin has quit (Quit: offline for a bit). 22:58:19 -!- Sprocklem has quit (Ping timeout: 240 seconds). 22:59:39 -!- Sprocklem has joined. 22:59:39 -!- blitter64 has joined. 23:00:02 -!- ^v has quit (Ping timeout: 252 seconds). 23:05:36 -!- tromp_ has joined. 23:07:31 -!- ^v has joined. 23:08:43 -!- nooodl_ has quit (Ping timeout: 276 seconds). 23:20:29 http://24.media.tumblr.com/0fca573aac765a7de4504e34f14e5766/tumblr_n63889tQso1qmmsq4o1_1280.png 23:22:10 ok 23:34:33 `addquote I like telling people who've only used high level languages about the bizarre forms of undefined behavior in C, and then ending it with "this language and its relatives are used for most systems in planes, cars, medical devices, nuclear reactors, etc." 23:34:34 1197) I like telling people who've only used high level languages about the bizarre forms of undefined behavior in C, and then ending it with "this language and its relatives are used for most systems in planes, cars, medical devices, nuclear reactors, etc." 23:35:47 `help 23:35:47 Runs arbitrary code in GNU/Linux. Type "`", or "`run " for full shell commands. "`fetch " downloads files. Files saved to $PWD are persistent, and $PWD/bin is in $PATH. $PWD is a mercurial repository, "`revert " can be used to revert to a revision. See http://codu.org/projects/hackbot/fshg/ 23:36:02 -!- yorick has quit (Read error: Connection reset by peer). 23:36:13 somehow that link had slipped off my browser history 23:37:06 or at least address line completion refused to give it 23:37:54 which is weird since i used it 2 weeks ago 23:37:57 -!- mhi^ has quit (Quit: Lost terminal). 23:44:00 I want a Gold Transcendence 23:44:31 kmc: also, not all relatives of C are as terrible as C. 23:45:02 it is, but then you can't assume that "0^n = 0" everywhere <-- that's not true for negative n anyway 23:45:42 @tell M28_ it is, but then you can't assume that "0^n = 0" everywhere <-- that's not true for negative n anyway 23:45:42 Consider it noted. 23:46:03 oerjan, you got the idea 23:46:06 -!- M28_ has changed nick to M28. 23:46:09 Google Plus recommended communities http://heh.fi/tmp/google_plus_emacs_vim.png 23:51:02 -!- tromp_ has quit (Remote host closed the connection). 23:51:14 > (-1) ** (0:+ -1) 23:51:16 Precedence parsing error 23:51:16 cannot mix ‘Data.Complex.:+’ [infix 6] and prefix `-' [infixl 6] in the ... 23:51:25 > (-1) ** (0:+ (-1)) 23:51:26 4.321391826377226e-2 :+ (-0.0) 23:52:00 M28: that doesn't look like 23.1406... to me. 23:52:04 > (-1) ** (0:+ (1)) 23:52:06 23.140692632779267 :+ 0.0 23:52:37 oerjan, http://www.wolframalpha.com/input/?i=%28-1%29%5E%28-i%29 23:54:41 hm funny it switches the values. of course both i and -i are solutions to x^2 = -1 so they're probably in the branches of each other 23:56:02 you'd think WA should understand "all branches of (-1)^(i)" 23:58:58 > [ exp((0:+1)* (0 :+ n*2*pi + log (-1)) | n <- [-2..2]] 23:59:00 :1:40: parse error on input ‘|’ 23:59:11 > [ exp((0:+1)* (0 :+ n*2*pi + log (-1))) | n <- [-2..2]] 23:59:13 Precedence parsing error 23:59:13 cannot mix ‘Data.Complex.:+’ [infix 6] and ‘GHC.Num.+’ [infixl 6] in the... 23:59:20 bah 23:59:29 > [ exp((0:+1)* ((0 :+ n*2*pi) + log (-1))) | n <- [-2..2]] 23:59:31 [6635623.99934113 :+ 0.0,12391.647807916694 :+ 0.0,23.140692632779267 :+ 0.0... 23:59:55 > [ re $ exp((0:+1)* ((0 :+ n*2*pi) + log (-1))) | n <- [-2..2]] 23:59:57 Couldn't match type ‘Data.Complex.Complex a1’ 23:59:57 with ‘Data.Tagged.Tagged a0 (Data.Functor.Identity.Identity b) 23:59:57 -> Data.Tagged.Tagged s0 (Data.Functor.Identity.Identity... 23:59:57 Expected type: Control.Lens.Review.AReview s0 t a0 b 23:59:57 Actual type: Data.Complex.Complex a1Couldn't match type ‘Data.Complex.Comp...