purr changed the topic of #elliottcable to: a
<eligrey> ELLIOTTCABLE: anyways it was just a scigen page but it had some funny generated text
<eligrey> ELLIOTTCABLE: whats really important though is this:
<eligrey> will you back my filesharing website https://share.oftn.org
<eligrey> p2p minimum architecture
<ELLIOTTCABLE> no
<eligrey> users (even web users) become hosts
<ELLIOTTCABLE> have you used async/await yet?
<ELLIOTTCABLE> trying to learn it and apply it to libgit2 bindings rn
<eligrey> i fucking invented it
<eligrey> this was back in 2009
<eligrey> ELLIOTTCABLE: is that for an assignment
<ELLIOTTCABLE> I mean, you definitely didn't invent it. The async/await syntax is years and years old.
<ELLIOTTCABLE> JS copied it from C#, who copied it from …
<ELLIOTTCABLE> Python? Maybe?
<ELLIOTTCABLE> nah, Python coped it from C# too
<eligrey> yeah python invented it
<ELLIOTTCABLE> so far, not a huge fan, anyway
<eligrey> but everyone thinks es6 is so amazing in 2016 when ive been using it all along
<eligrey> at least the async stuff
<ELLIOTTCABLE> as usual, trying to do asynch stuff in JavaScript just makes me sick that I'm *building* the langauge I want, instead of *using* the language I want |=
* ELLIOTTCABLE pats eligrey
<eligrey> no thats entirely why i follow you
<eligrey> i want to use paws eventually for stuff
<ELLIOTTCABLE> anyway.
<ELLIOTTCABLE> how about libgit2?
<ELLIOTTCABLE> lol the only thing Paws is useful for is writing another language
<eligrey> are you forking it?
<eligrey> get rid of sha1 and replace with sha3
<ELLIOTTCABLE> forking libgi2? nah
<ELLIOTTCABLE> lmao.
<ELLIOTTCABLE> no. I'm using NodeGit, and realllllly don't want to touch Promises with a ten-foot pole
<ELLIOTTCABLE> hence, keeping them at arms' length with async/await & Babel
<eligrey> chrome has arg1 => do stuff with arg1.blah
<eligrey> and firefox now
<ELLIOTTCABLE> yeah, don't care much about browsers rn
<eligrey> arrow notation
<ELLIOTTCABLE> my only browser-relevant work is Paws, and that's all in like EcmaScript2000BC. /=
<eligrey> my commercial stuff is all non-browsers
<ELLIOTTCABLE> and this current project, now that I'm *finally* playing with ES2015+, is Node-only
<eligrey> share.oftn.org needs node too unfortunately
<eligrey> for instant.io stuff
Rurik has joined #elliottcable
Rurik has joined #elliottcable
<ELLIOTTCABLE> this song has been fuckin' *doing* it for me, recently
<ELLIOTTCABLE> “Golden Empire feat. Zitaa - Original Mix” — Apashe: https://open.spotify.com/track/1dX5seQ8Ygt3uEce7BreHH
<ELLIOTTCABLE> dat bump
<ELLIOTTCABLE> I think my mind inherently rejects promises.
<ELLIOTTCABLE> I'm genuinely writing code like this, like, wtf is wrong with me
<ELLIOTTCABLE> `await Promise.all((await entries).map(async entry => { ...`
alexgordon has joined #elliottcable
* alexgordon yawns
<alexgordon> ELLIOTTCABLE
<ELLIOTTCABLE> o7
<ELLIOTTCABLE> thought about you earlier, but I forget why
<ELLIOTTCABLE> emeh
<alexgordon> hopefully not while deep throating / being deep throated. "this cock reminds me of alexgordon"
<ELLIOTTCABLE> lmao
<ELLIOTTCABLE> that seems very unlikely.
<alexgordon> ...it's faintly rhombus shaped...
<ELLIOTTCABLE> I picture you as a very unattractive, stick-thin redhead. ^_^
<ELLIOTTCABLE> for the safety of us ALL
<alexgordon> lol well 2/3 ain't bad
<purr> lols
<ELLIOTTCABLE> hm
<ELLIOTTCABLE> so you *are* a stick-thin redhead! HOW DID I KNOW
<ELLIOTTCABLE> alexgordon: have you used async/await?
<alexgordon> yeah I was just reading your conversation with eli
<ELLIOTTCABLE> I'm loving this so far
<alexgordon> ELLIOTTCABLE: used it? I invented it!
<ELLIOTTCABLE> that's like almost 100 lines of code with promises
<ELLIOTTCABLE> this just makes me want paws So Fucking Bad
<ELLIOTTCABLE> >:
<alexgordon> yeah
<ELLIOTTCABLE> do I yak-shave myself a Boyer-Moore strstr, or do I just String::search
<ELLIOTTCABLE> hmmmmmm
<alexgordon> rate the value of your time, then multiply that by an estimate, then work out if you would buy it for that much money
<alexgordon> as the answer is no: use string search
<ELLIOTTCABLE> lmao already did
<ELLIOTTCABLE> decision not to use it took less time than it took to type it
<ELLIOTTCABLE> weirdly
<ELLIOTTCABLE> ugh I fucking hate iterative-procedural code
<ELLIOTTCABLE> it looks *so ugly* amongst my usual pseudo-functional, often very recursive, code
<alexgordon> oh I should send you what I was writing last week
<ELLIOTTCABLE> look at this clusterfuck
<ELLIOTTCABLE> god that is ugly
<ELLIOTTCABLE> like, I'm sure almost anybody who *isn't* me would disagree; but *I'd* call that the ugliest code I've ever written
<ELLIOTTCABLE> it looks so ... C.
<ELLIOTTCABLE> >:
<alexgordon> praise jesus, google docs finally added menu searching
<ELLIOTTCABLE> anybody know of a performance-testing CI tool?
<ELLIOTTCABLE> something simple to reject GitHub pull-requests that introduce severe performance regressions on a test, or something?
<ELLIOTTCABLE> seems like something like that would exist, in today's greenkeeper.io culture
<alexgordon> wonder what the_silver_searcher uses
<ELLIOTTCABLE> Boyer-Moore.
<ELLIOTTCABLE> that's where I got it.
<ELLIOTTCABLE> lol.
<purr> lolllol
<alexgordon> no no
<alexgordon> not string search, performance testing
<ELLIOTTCABLE> initially was checking whether or not ag had JS bindings.
<ELLIOTTCABLE> ohhhh
<ELLIOTTCABLE> he did it manually afaik
<ELLIOTTCABLE> *also* why I brought *that* up
<ELLIOTTCABLE> secret: all of my good ideas come from geoff greer's work. eg. ag contains a poorly-specified implementation of half of Paws.
<alexgordon> lol
<ELLIOTTCABLE> also: “eg. ag”
<ELLIOTTCABLE> egag
<ELLIOTTCABLE> eg-ag
<ELLIOTTCABLE> at-st
<ELLIOTTCABLE> eg-ag sounds like a strangled version of an Imperial transport
<jfhbrook> ELLIOTTCABLE I've been trying to use ag instead of grep at work
<ELLIOTTCABLE> jfhbrook: trying?
<jfhbrook> I usually type `grep -R^H^H^H^H^H^H^Hag -R `
<ELLIOTTCABLE> lmao
<ELLIOTTCABLE> jfhbrook: alias grep=ag
<ELLIOTTCABLE> grepag
<jfhbrook> I've gotten into this habit lately of grepping the whole lib directory of the project I'm in for, say
<ELLIOTTCABLE> also: yay!
<ELLIOTTCABLE> got some private-repo work on the web-site
<jfhbrook> `grep -R 'prototype.whatever =' ./lib
<jfhbrook> `
<ELLIOTTCABLE> but finally decided to start on the meat of it
<jfhbrook> or ag, or whatever
<ELLIOTTCABLE> which is *fucking hellish* because, god, damn, the internals of libgit2 are fucking horrifying
<jfhbrook> oh, ag actually told me the "don't do regular expressions" flag today and I already forget it
<jfhbrook> basically it only comes up if you type an invalid regexp
<ELLIOTTCABLE> I tend to avoid regexp search
<jfhbrook> I don't explicitly try for it
<jfhbrook> I'm usually trying for an exact string match
<ELLIOTTCABLE> it's almost *always* faster, for me, to type like ten ags in a row of permutations of static strings, than it is to construct the right regex, to find what I want
<ELLIOTTCABLE> yeah
<jfhbrook> beause *that*'s easy to reason about
<ELLIOTTCABLE> I keep it aliased to the disable-regex version
<jfhbrook> is the flag -z ?
<ELLIOTTCABLE> ugh await is so cool
<jfhbrook> oh
<jfhbrook> Q
<ELLIOTTCABLE> es6 is scary but fun
<jfhbrook> so I need to do ag -RQ 'prototype.bullshit ='
<ELLIOTTCABLE> frustrated that `node-debug` doesn't support being called as a template tag
<ELLIOTTCABLE> debug`abc` would be perfect
<jfhbrook> yeah I dunno, I don't use debuggers much
<ELLIOTTCABLE> not debugger
<jfhbrook> I got **really good** at tracing via console.log
<ELLIOTTCABLE> just, print-string
<ELLIOTTCABLE> yeah node-debug is a console-log replacement
<ELLIOTTCABLE> pretttttty widely used
<jfhbrook> oh, as in logger.debug
<ELLIOTTCABLE> yeah lol
<purr> lolol
<ELLIOTTCABLE> no
<jfhbrook> yeah word
<jfhbrook> no I remember this now
<jfhbrook> I was thinking debugger, not logging
<ELLIOTTCABLE> debug = require('debug')('mylib')
<ELLIOTTCABLE> debug('booting %s', name);
<ELLIOTTCABLE> yah lol
<ELLIOTTCABLE> node-log would be a better name 4shur
<jfhbrook> idk I was never wild about a single tj library
<jfhbrook> and I feel bad
<ELLIOTTCABLE> ugh yes I hate him
<ELLIOTTCABLE> it's totally unreasonable but I just, do
<jfhbrook> because I suspect part of that is due to my old bosses at nodjatso also hating him
<ELLIOTTCABLE> have some old beef from Back In The Day
<jfhbrook> I used to be okay with express, but I think I like hapi better
<ELLIOTTCABLE> idk webframeworks period
<jfhbrook> hapi kinda sucks too in its own way so I don't think there's a clear winner there
<jfhbrook> well
<ELLIOTTCABLE> burned by rails, and have avoided them almost entirely ever since
<jfhbrook> "frameworks"
<jfhbrook> oh jesus
<jfhbrook> very very different ELLIOTTCABLE
<ELLIOTTCABLE> once in a *blue* fuckin' moon, I'd do a Sinatra something-or-other, or play around with Connect, but. lol.
<ELLIOTTCABLE> yes, aware, lol
<jfhbrook> so like here's the thing
<jfhbrook> there's a whole mess of things you need to build My Little Crud App
<ELLIOTTCABLE> I get what they *are*, but what I do boils down to: 1. complex sites that are *architecturally* simple, and that I can build as static HTML with front-end code,
<ELLIOTTCABLE> or 2. *insanely simple* things that still need some backend stuff, that I can implement by hand as an HTTP server.
<ELLIOTTCABLE> and that's just ... what I end up doing. every time.
<jfhbrook> no I mean, if what you need is a route handler and a views abstraction, microframeworks have you covered
<ELLIOTTCABLE> I think I have something somewhere actively using connect, maybe? one thing? and that's it?
<jfhbrook> a route handler, a views abstraction and a "plugin layer"
<jfhbrook> that's what express and hapi both give you
<ELLIOTTCABLE> yah
<jfhbrook> with the added bonus of payload validation in the case of hapi
<ELLIOTTCABLE> there we go, that uses connect
<ELLIOTTCABLE> wow, I forgot how long that file got
<ELLIOTTCABLE> I thought that was like 40loc
<ELLIOTTCABLE> now it's ike 250. I totally don't remember writing any of that.
<jfhbrook> but fuckin' rails gives you that, plus an orm, plus a directory structure, plus before/during/after hooks, and a shitload of magic
<ELLIOTTCABLE> http://wikipedi.as
<jfhbrook> > Promise.promisifyAll
<jfhbrook> shame on you
<jfhbrook> > JSON.parse require('fs').readFileSync __dirname + '/package.json'
<jfhbrook> you are evil
<ELLIOTTCABLE> why? :P
<ELLIOTTCABLE> it does the job. I was in a hurry.
<ELLIOTTCABLE> http://wikipedi.as/Cetárea
<jfhbrook> parens!
<ELLIOTTCABLE> uh, coffeescript, yo
<jfhbrook> (ノ◕ヮ◕)ノ*:・゚✧ READABILITY (ಥ﹏ಥ)
<ELLIOTTCABLE> yeah, no thx.
<jfhbrook> use *some* parens
<ELLIOTTCABLE> READABILITY == less parens.
<ELLIOTTCABLE> no need.
<ELLIOTTCABLE> it's right-to-left. trivial.
<ELLIOTTCABLE> completely intuitive if you grew up in Ruby, instead of JavaScript.
<jfhbrook> yeah well I think it's gross and that you should have parens'd JSON.parse
<jfhbrook> ruby is also gross
<jfhbrook> ruby is like bubble tea
<ELLIOTTCABLE> ...
<jfhbrook> everyone seems to like it but tapioca is obviously disgusting
<ELLIOTTCABLE> ....
<ELLIOTTCABLE> you are the worst human
<ELLIOTTCABLE> I checked the list
<ELLIOTTCABLE> (I have the list)
<ELLIOTTCABLE> (and I checked it)
<ELLIOTTCABLE> (and you were index 0)
<ELLIOTTCABLE> (sorted by worstness)
<ELLIOTTCABLE> Ruby is the *only language*.
<jfhbrook> what because I never looked at ruby and thought "now that's beautiful" ?
<jfhbrook> I've thought that about python
<ELLIOTTCABLE> Everything else is just trying to get ‘as good as ruby’, while gaining some traits Ruby doesn't have.
<ELLIOTTCABLE> Low-level performance, concurrency, compatibility, frontend presence, asynchronicity, ...
<jfhbrook> the most obvious thing I don't really like about ruby is that it has like 30 "function-like" abstractions for no good god damned reason
<ELLIOTTCABLE> but in terms of just *being a programming language*, nothing will ever beat ruby. ruby is literally just fucking perfect in every fucking way and is teh god-language and iw ill putnc you iun the balls if u diagree
<jfhbrook> blocks, procs, functions *and* methods *ugh*
<ELLIOTTCABLE> b/cuz pervct
* ELLIOTTCABLE begins to spin in circles faster and faster
* ELLIOTTCABLE begins to smoke and sputter
<jfhbrook> like js and python aren't perfect here, I get that there are object binding rules and everyone has to fucking make a lambda type
* ELLIOTTCABLE a distant keening sound begins to descend from the higher registers
<jfhbrook> but come on
<jfhbrook> I dunno
* ELLIOTTCABLE you can't tell where it began, but you get the impression it was happening a long time before you were consciously aware of it
<jfhbrook> I think maybe if I wasn't introduced to it by rails and _why and instead came into it via devops I'd be more down
* ELLIOTTCABLE small flashes of light appear in your peripheral vision, distortions affect your sight of all things around you except ELLIOTTCABLE
<jfhbrook> problem there: python is an acceptable devops environment much like ruby and, well, I like python
<jfhbrook> I don't like that it's python 2 but whatever
<ELLIOTTCABLE> yeah, I dislike Python and love Ruby; I started with Ruby and am only now learning Python
<jfhbrook> python has some stupid stuff
<jfhbrook> but if you color inside the lines it's pleasant
<ELLIOTTCABLE> like, I think literally no possible Python feature will redeem it in my eyes after I discovered that the initialization values of default arguments are *shared* across invocations, what the everliving fuck
<jfhbrook> and it allows its fair share of Weird Things to be possible
<ELLIOTTCABLE> and the one-line lambdas piss me off but whatever
<jfhbrook> yeah those irritate me too
<jfhbrook> python people think I'm nuts for wanting multi-line lambdas
<ELLIOTTCABLE> tbh I hate Ruby *internally*; but the beautiful thing is, none of that *matters*
<ELLIOTTCABLE> if you sit down to teach somebody to program, making *any choice* except Ruby is just Fucking Foolish
<jfhbrook> I also have this problem where ruby almost never has a library to do a specific thing I want to do, that someone else has done better
<jfhbrook> hasn't*
<ELLIOTTCABLE> most of the above was silliness, but I *do* genuinely believe that:
<jfhbrook> I do honestly believe python's a good starter language, and that javascript is acceptable
<jfhbrook> I don't doubt ruby is good too
<ELLIOTTCABLE> Ruby has some Eldritch Horrors in parse.y and the the 9 Circles of Meta-Meta-Singleton Eigenclass are one of the most viscerally disturbing things you'll ever see in programming,
<ELLIOTTCABLE> but … as long as you don't get deep as fuck, everything above the waterline is truly intuitive, beautiful, easy-going, friendly ... just, wonderful
<ELLIOTTCABLE> every other language has warts *above* the water-line
<jfhbrook> yeah no python's really similar in that regard, to me
<jfhbrook> even the lambdas
<ELLIOTTCABLE> Ruby has some truly horrific ones, but like, 100%, literally every single part I *don't* like about the language, is buried behind “you're probably doing Bad Things.”
<jfhbrook> because if you're writing pythonic code anything longer than a line you want to document anyway
<ELLIOTTCABLE> which no other language has acheived for me.
<ELLIOTTCABLE> later, going to bed alexgordon
<alexgordon> :(
<jfhbrook> which reminds me, I have a python program I need to hack on
<jfhbrook> gnight ec
<ELLIOTTCABLE> jfhbrook: <3
<ELLIOTTCABLE> alexgordon: paws
<ELLIOTTCABLE> -didja @ alexgordon
<purr> alexgordon: didja write a paws yet? didja? didja!?
<alexgordon> I'm sure I did a few years ago
<ELLIOTTCABLE> 9:41 PM <jfhbrook> I also have this problem where ruby almost never has a library to do a specific thing I want to do, that someone else has done better
<ELLIOTTCABLE> I strongly believe this is an effect of the language being an *easy language to do easy things in*
<ELLIOTTCABLE> 90% of the time, it's easier to write the two lines of code to do <simple task>, than to include a library
<ELLIOTTCABLE> the *opposite* of JavaScript, where the language has so much ... friction, that it's often easier to include a module, even if the module is only like 5 lines of code.
<ELLIOTTCABLE> well this didn't go well
<ELLIOTTCABLE> FATAL ERROR: invalid array length Allocation failed - process out of memory
<ELLIOTTCABLE> zsh: abort babel-node ./Executables/fixme .
<ELLIOTTCABLE> haaaaaave definitely never had that happen in JavaScript before. <,<
<jfhbrook> I'm usually looking for non-trivial things ELLIOTTCABLE
<jfhbrook> like, python has numpy
<ELLIOTTCABLE> you're never gonna beat Python for scientific/numerics work, anywhere.
<jfhbrook> sure, and ruby doesn't *have* to beat python
<jfhbrook> at *that*
<ELLIOTTCABLE> that's like *the selling point*, besides them actually accepting the obvious fact that semantic indentation is the one true god of programming
<jfhbrook> but it should beat it at *something*
<ELLIOTTCABLE> writing literally any other code. ;)
<jfhbrook> except I can never find libraries for any of the shit I'm interested in
<jfhbrook> I'm talking, like, bindings and api clients
<ELLIOTTCABLE> I'd say Perl is a 05, ES5 is a 35, ES6 a 45, and Python is an 85
<ELLIOTTCABLE> if I'm rating Ruby a 100
<ELLIOTTCABLE> and the thing is, like, there's no reason to thoroughly learn Ruby if you thoroughly know Python.
<ELLIOTTCABLE> difference isn't big enough, and the set of tasks they solve *well* is too similar.
<jfhbrook> that's my point, there's no selling point for ruby in terms of Things You Can Do, like functionality, from what I saw pypi beats the pants off rubygems
<jfhbrook> I think ecosystem is almost more important than the language itself
<jfhbrook> which is a shame, obviously
<ELLIOTTCABLE> ehhhhhhhh. Disagree, for a whoooole bundle of reasons.
<jfhbrook> so like
<jfhbrook> what are some good ruby libraries?
<ELLIOTTCABLE> npm now trounces literally everything else that isn't on the JVM,
<ELLIOTTCABLE> but like ... I wouldn't say *that's* a selling point that makes up for the language itself, much, at all.
<jfhbrook> sure, npm makes everyone's package manager look wimpy
<jfhbrook> well it's about quality as much as it is quantity
<ELLIOTTCABLE> EventMachine, Hpricot, Sinatra, such are the ones I can remember
<ELLIOTTCABLE> it's been years :P
<jfhbrook> but libraries enable me to do things
<ELLIOTTCABLE> yeah, that's the thing. Ruby's got *stellar* libraries, in every single case I can remember.
<jfhbrook> so those are all things I can already do in a myriad of languages and environments
<ELLIOTTCABLE> I miss that community constantly when working with the mountains of difficult-to-use, poorly-documented shit that the Node community produces >
<ELLIOTTCABLE> >: *
<jfhbrook> like everyone and their dog has a sinatra clone
<ELLIOTTCABLE> ‘sinatra clone’ kinda says it, though.
<ELLIOTTCABLE> here's how it usually goes:
<ELLIOTTCABLE> 1. somebody needs it for the first time, and it gets written in that somebody's pet language.
<ELLIOTTCABLE> 2. bunch of other language communities write mediocre solutions in 100 different ways.
<ELLIOTTCABLE> 3. Ruby community notices, or needs it, and writes The Single Best Way to do it,
<ELLIOTTCABLE> 4. *new* packages show up in all the other languages that copy the Ruby community's choice of approach, and then that new package dominates whatever old package / way-of-doing-things the language used to use.
<jfhbrook> it probably feels that way a lot of the time, but while ruby's somewhat influential there are **plenty** of influential libraries and environments
<ELLIOTTCABLE> shit like middleware came out of Rubyland, event-loops for “apps”, all sorts of syntactic choices and flavours originated there (basically everything currently popular in non-C-flavoured languages, except semantic indentation, which obv. is a Pythonism),
<jfhbrook> like, when I think events, I think twisted, and I bet twisted's older then eventmachine
<jfhbrook> no, middleware came from python
<jfhbrook> middleware's straight out of wsgi
<jfhbrook> rack was a port of wsgi to ruby
<ELLIOTTCABLE> lolol
<purr> lololol
<ELLIOTTCABLE> well then.
<ELLIOTTCABLE> I'm going to depart the conversation, because I find Python *such* a pain in my ass that I can never be impartial here,
<jfhbrook> no it's fine if you don't like python
<ELLIOTTCABLE> but let's just say ... your arguments aren't convincing, in terms of me suggesting something other than Ruby as Everyone's First Language.
<jfhbrook> I mean
<ELLIOTTCABLE> another way to put it: I'm in a class right now, watching people struggle with Python; and I've watched enough *others* struggle with Ruby while tutoring, to have some idea with the sorts of problems people have?
<jfhbrook> even for a first language it helps if you get instant gratification
<ELLIOTTCABLE> and there's a lot more confusion over basic things here that just ... don't exist in Ruby /=
<jfhbrook> maybe you can get that from ruby, idk
<ELLIOTTCABLE> also woah I can't believe I got roped into a Python/Ruby argument, and actually got *invested*
<jfhbrook> I needed numerical stuff so I'm really really heavily biased there
<ELLIOTTCABLE> who cares, they're both better than JS or Perl or some low-level Systems BS™, if they're an option for you.
<ELLIOTTCABLE> tennis vs. racquetball
<jfhbrook> I only push because I want to like ruby XD
<ELLIOTTCABLE> I *love* ruby. God. I don't think I'll ever stop loving it.
<jfhbrook> I should just like
<jfhbrook> get really into puppet
<jfhbrook> or something stupid like that
<ELLIOTTCABLE> I deeply hope that Ruby, Rust, and Paws, are the only languages I need to care about / work in, in the 2020s.
<jfhbrook> it sucks that ruby was first in that space
<ELLIOTTCABLE> so tired of JavaScript. so tired of C-family.
<jfhbrook> because, like, the python implementations (ansible, salt) came later and learned a few lessons
<jfhbrook> yeah, javascript *is* tiring
<jfhbrook> I still like it
<ELLIOTTCABLE> same.
<jfhbrook> but I'm kinda done with it as a discipline
<ELLIOTTCABLE> tiring, but I don't *hate* it.
<ELLIOTTCABLE> am literally just tired, not hating.
<ELLIOTTCABLE> it's necessary for me. /=
<ELLIOTTCABLE> maybe some day WebAssembly will be a stable real thing and I can consider moving my Paws work to a compiled bytecode-VM instead of having to make a terrible-ass bytecode-interpreter my ground-zero, but. ‘someday.’ who even knows.
<jfhbrook> idk what webassembly is
<ELLIOTTCABLE> ???
<ELLIOTTCABLE> basically it's the NaCl people and the asm.js people resolving their differences by throwing both away and doing what they should have done in the first place
<ELLIOTTCABLE> that's how I parse it, anyway.
<jfhbrook> a bytecode vm for the browser?
<ELLIOTTCABLE> yeah kinda.
<ELLIOTTCABLE> it's binary and is designed as a binary-compilation target, so that satisfies some of what the NaCl people wanted; and it's based semantically on existing JavaScript (well, asm.js) principles, so improvements to WebAssembly evaluation should hopefully trickle back up to plain JavaScript (which satisfies some of what the asm.js people wanted) ...
<ELLIOTTCABLE> unfortunately it loses the ‘coolness’ of both of those. (secure *machine-code* evaluation haxery from NaCl, and higher-level-language as a compile target, which are the things I cared about from either of those, are gone. *shrug*)
<purr> ¯\(º_o)/¯
<ELLIOTTCABLE> but it seems eminently practical, and almost everybody is behind it.
<ELLIOTTCABLE> Goog, Microsoft, Mozilla, and it's spearheded by Eich, so
<ELLIOTTCABLE> give it 10 years and you'll be happily `import 'dom'` or whatever and compiling your Python for the browser. that's pretty much inevitably where things are headed right now.
<jfhbrook> yeah I get that
<ELLIOTTCABLE> writing JavaScript directly is looking to become the systems-programming of the web; I expect a lot of existing front-end stuff is going to explode in diversity into Each Person's Favourite Langauge du jour
<jfhbrook> fuck
<jfhbrook> there are rumors about my needing to maintain c++ code with only 2 programmers at the company fluent
<ELLIOTTCABLE> stuff to be aware of. need to keep an eye on where the industry is going, instead of fapping about ES2017 features or whatever /=
<jfhbrook> and I want them to teach me
<ELLIOTTCABLE> C++ guhg
<jfhbrook> I just realized, it's 11:00pm on a friday and I haven't mentioned my interest to our lead architect
<jfhbrook> I can't say c++ is pretty
<jfhbrook> but I think it's valuable to learn for a number of reasons, For Me
<jfhbrook> I'm not any good at compiled languages, strongly typed languages, or languages with pointers
<jfhbrook> and, well, a whole shitload of the other trappings of c++
<jfhbrook> they're all very foreign concepts
<ELLIOTTCABLE> i am so creative right now
<ELLIOTTCABLE> and invested in the code i am writing
<ELLIOTTCABLE> el oh el
<ELLIOTTCABLE> okay bedtime for me
<jfhbrook> alright gnight
<ELLIOTTCABLE> jfhbrook: do. not. try. and. learn. C++. without. thoroughly. understanding. C. first. O_O
<jfhbrook> I can *read* c
<jfhbrook> I can read c++ too
<ELLIOTTCABLE> I mean, you might not even *use* some of the knowledge you gain working in C, but it's just, vital for full understanding.
<ELLIOTTCABLE> yeah not the same
<ELLIOTTCABLE> jfhbrook: https://matt.sh/howto-c
<ELLIOTTCABLE> bookmark, great stuff
<ELLIOTTCABLE> ooo, alloca() prevents inlining. obvious, in retrospect
<ELLIOTTCABLE> sorry now I'm rabbitholing wtf
<alexgordon> lol go to bed ELLIOTTCABLE or don't
<purr> LOL
<ELLIOTTCABLE> sleepytime
<ELLIOTTCABLE> -find bed
<purr> ELLIOTTCABLE: Could not find `bed`.
<ELLIOTTCABLE> -find BED
<purr> ELLIOTTCABLE: Could not find `BED`.
<alexgordon> indeed
<ELLIOTTCABLE> -find sleep
<purr> ELLIOTTCABLE: night everyone!
<ELLIOTTCABLE> -find slee
<purr> ELLIOTTCABLE: Found: nosleep, sleep, and liar
<ELLIOTTCABLE> -liar @ alexgordon
<purr> alexgordon: EITHER GO TO SLEEP OR SHUT UP
<ELLIOTTCABLE> there it is.
<alexgordon> :D
<ELLIOTTCABLE> -factoid liar
<purr> ELLIOTTCABLE: Popularity: 5, last changed by: gqbe, 1kſ 262ſ 701mſ ago
<ELLIOTTCABLE> lol thx gq
<ELLIOTTCABLE> ah, she left
<ELLIOTTCABLE> this is now my favourite comment on the entire internet
<ELLIOTTCABLE> “ What compiler were you smoking?”
<alexgordon> -liar @ ELLIOTTCABLE
<purr> ELLIOTTCABLE: EITHER GO TO SLEEP OR SHUT UP
<alexgordon> ;)
<ELLIOTTCABLE> i dont like u very much
<ELLIOTTCABLE> critique my first, *horrible*, es6 code
<ELLIOTTCABLE> line 19 just makes me sad
<ELLIOTTCABLE> v. sad
<ELLIOTTCABLE> also the babel product for that file is *horrific*.
<ELLIOTTCABLE> the nested case horrors are ... are ...
<ELLIOTTCABLE> tempted to compile that with the maintain-line-numbers option and see what offerings Babel offers to the dimensionless horrors
<ELLIOTTCABLE> oh my god
<ELLIOTTCABLE> it looks like Elliott code
<ELLIOTTCABLE> oh my god I'm in love
Sorella has quit [Quit: Connection closed for inactivity]
perrier_ has quit [Read error: Connection reset by peer]
perrier_ has joined #elliottcable
alexgordon has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
alexgordon has joined #elliottcable
alexgordon has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
alexgordon has joined #elliottcable
alexgordon has quit [Client Quit]
<purr> <Nuck> I think there's actually a wat about my mangina. >_>
Rurik has quit [Quit: Leaving]
<glowcoil> 4:13 PM <purr> <jeannicolas> you guys have a way of grabing a programming language and making it suck its own wiener!
glowcoil is now known as incomprehensibly
<thealphanerd> ELLIOTTCABLE hola
eligrey has quit [Quit: Leaving]
<purr> <alexgordon> dude you've been using git longer than linus
<ja> hehe
Sorella has joined #elliottcable
<ja> hi Sorella!
<purr> <incomprehensibly> can't parse real estate
<purr> <purr> whitequark loves git, console, purr, foo, and Adrian Thurston.
<purr> <elliottcable> > node \ > 84 7 +devyn: we're bot \ ...
<purr> <ja> alexgordon: I used regexp to parse ActiveRecord SQL in order to make HTTP API calls
eligrey has joined #elliottcable