| 07:53 | <manishearth> | ooh https://microsoftedge.github.io/directory-upload/proposal.html |
| 08:51 | <benjamingr> | Hey smart people - who came up with the iteration protocol in ECMAScript? |
| 08:54 | <espadrine_> | tc39 probably |
| 08:55 | <MikeSmith> | benjamingr: I think Brendan did but I have no evidence to point you to for substantiating that |
| 08:55 | <MikeSmith> | but Brendan would be a good person to ask |
| 08:56 | <espadrine_> | he wrote http://wiki.ecmascript.org/doku.php?id=harmony:iterators at least |
| 08:56 | <MikeSmith> | (I mean as far as who started the work on it initially) |
| 08:57 | <benjamingr> | I want to understand why it works though a `{done, value}` pair at its base. The biggest advantage I see for that is the fact it's atomic which doesn't sound huge in JS |
| 08:57 | <benjamingr> | Also, I recall Firefox having old iterators with a different structure and a StopIteration like exception for stopping them. |
| 09:00 | <MikeSmith> | this all has the ring-a-ling of Brendan about it |
| 09:01 | <MikeSmith> | If I were you I'd just ping him on twitter to ask |
| 09:01 | <MikeSmith> | or find wherever he might hang out on IRC |
| 09:01 | <MikeSmith> | he does come around on some IRC channels now and then |
| 09:07 | <benjamingr> | MikeSmith: if only I knew which :) This is for trying to dualize it with observables better. |
| 09:25 | <MikeSmith> | benjamingr: dualize? |
| 09:27 | <benjamingr> | MikeSmith: a dude called Erik Meijer (who is an insanely smart guy) figured out a few years ago that observables and iterables are pretty much the same thing - here is a nice talk about it channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2014/Keynote-Duality . We're trying to figure out how to model this in JavaScript and I want to figure out some of the ideas |
| 09:27 | <benjamingr> | behind the iteration protocol |
| 09:44 | <Domenic> | benjamingr: Brendan advocated Python-esque StopIteration. dherman made the switch to { value, done } IIRC. Someone else unified send(v) and next() into next(v_opt), thus making iterators a subset of generators; can't remember who. Jafar advocated for adding .return(), with Brendan supporting it since Python has .close(). |
| 09:45 | <benjamingr> | Domenic: thanks! I'm really confused on that es-observable issue. Either me or Jafar got the duality wrong and I default to thinking it's me |
| 09:45 | <Domenic> | meanwhile I remain skeptical this duality is desirable, sustainable, or sensible |
| 09:46 | <benjamingr> | dherman: do you have anything I can read about why you made the switch to { value, done } |
| 09:46 | <Domenic> | benjamingr: meeting notes are best |
| 09:46 | <Domenic> | it'll require some searching though |
| 09:46 | <benjamingr> | Do you recall broadly when that meeting was held? |
| 09:46 | <Domenic> | ehhhhhh more than a year ago, less than 3.5 |
| 09:47 | <benjamingr> | Domenic: did you see my last message on that topic? I think this is what actual duality would look like https://github.com/zenparsing/es-observable/issues/14#issuecomment-115557631 it's really not similar to the current model |
| 09:47 | <Domenic> | benjamingr: sure, still unclear on the "why" |
| 09:49 | <benjamingr> | Domenic: there are two questions here - "is duality desirable?" and "does the current model express duality?" I think the answer to the latter is false and the answer to the former is *maybe* |
| 09:50 | <Domenic> | sounds about right |
| 09:50 | <Domenic> | it seems like the proposal is struggling between opposing forces of "do what C# does," "get some duality going," and "be useful." |
| 09:51 | <benjamingr> | This is why I brought Meijer along, he's the one guy who has integrated this into (more than one) language in the past, he practically invented the concept and he understands it best. I feel like all other parties involved (me included) are trying to follow footsteps of his work where he can actually bring new insight to the topic. |
| 09:52 | <Domenic> | Maybe. I remain skeptical that there's actual an endgame here, no matter who is helping. |
| 09:53 | <benjamingr> | Also, he seems very level headed. Not only does he have the most experience with observables and the most experience with the issues involved in integrating them with a language. He undersands the importance of not having one-size fits all, he understands why pull iterators, promises and other primitives are important rather than having a "everything is a |
| 09:53 | <benjamingr> | nail" approach. |
| 09:53 | <Domenic> | E.g. his article on how to do this stuff in Dart is nice on paper ... and then Dart adds pause/resume, to get crippled async iterator semantics, since their backpressure is broken. |
| 09:53 | <benjamingr> | He didn't add pause/resume to Dart iterators, they did it - iirc he was against it. |
| 09:53 | <Domenic> | right, what i'm saying is there's a mismatch between his model and what is needed in programs |
| 09:54 | <benjamingr> | I'm not sure there is an actual endgame here either, I'm pretty convinced he is two steps ahead the people involved in observables from a JS-centric or RxJS-centric perspective. |
| 09:54 | <BigPants> | Benjamin Gruenbaum? Not the Benjamin Gruenbaum formerly known as Inglor, is it? |
| 09:55 | <benjamingr> | Yes, that was a long time ago - why? |
| 09:55 | <BigPants> | Haha, cool, I remember you from Newgrounds, strangely enough |
| 09:56 | <BigPants> | Don't mind me though, didn't mean to interrupt or anything |
| 09:57 | <benjamingr> | I'm not sure pause/resume is needed in programs Domenic , but note that he didn't actually talk about backpressure in Rx, I don't think he'd model observables through Rx or with similar semantics today which is another reason to listen to him. The progress being made is alarming in that it indicates we haven't "figured this out" and baking it into the |
| 09:57 | <benjamingr> | language at this point is very risky. |
| 09:57 | <Domenic> | +1 to that last |
| 09:57 | <benjamingr> | BigPants: oh cool! I still <3 newgrounds, that was a long time ago - had a blast. |
| 09:57 | <BigPants> | Same, haven't been around there in many years though |
| 09:58 | <BigPants> | I was Rantzien then, dunno if you recall |
| 09:59 | <benjamingr> | Domenic: now, if you ask me what I think will happen - I think Erik will say exactly that (that we're not ready) *or* he has figured out the model finally. In either way, I'm not optimistic about the result in his absence - some forces (not you Jafar or Kevin) are very aggressive in the way they argue for Rx semantics and I'm afraid they don't understand the |
| 09:59 | <benjamingr> | domain very well. Then again I'm counting on you and other TC members to be very careful and make the right calls :) |
| 10:00 | <benjamingr> | BigPants: oh cool! Yeah I remember you dude from the BBS, those were awesome times! Are you still making games? |
| 10:01 | <BigPants> | Nah, I'm mostly just doing web development now. Although with all the web APIs that has come out the past few years, maybe it's time to pick that up again ;) What about you? |
| 10:03 | <benjamingr> | BigPants: I'm taking this to PM not to spam the channel :) |
| 10:04 | <BigPants> | Good call |
| 15:58 | <Ms2ger> | http://static.googleusercontent.com/media/www.google.com/en//selfdrivingcar/files/reports/report-0515.pdf |
| 16:57 | <annevk> | Can someone tell me if this is a good idea: https://github.com/annevk/webvtt/pull/9 |
| 17:02 | <benjamingr> | annevk: I'm not a bower fan, but if a user wants to use bower and it makes the package more inclusive I say go for it. |
| 17:05 | <annevk> | benjamingr: I just dislike all those metadata files that'll get out of date |
| 17:05 | <annevk> | benjamingr: but I guess |
| 17:06 | <benjamingr> | annevk: then don't merge it and tell him bower can install straight from GH, like NPM |
| 17:20 | <annevk> | thanks, I asked |
| 18:23 | <annevk> | hallvors: https://github.com/w3c/web-platform-tests/pull/1697 |
| 18:24 | <annevk> | hallvors: nevermind |
| 18:24 | <annevk> | jgraham: https://critic.hoppipolla.co.uk/showcomment?chain=11603 |
| 18:24 | <annevk> | jgraham: it seems that Python overrules you sending bytes |
| 18:24 | <annevk> | jgraham: which seems weird |
| 18:40 | <jgraham> | annevk: Oh with HEAD? Yeah in that case you will probably have to do something more complex |
| 18:42 | <jgraham> | annevk: See comment |
| 18:42 | <annevk> | interesting |
| 21:10 | <annevk> | Domenic: why is Object.observe() still a thing? |
| 21:37 | <bkardell> | this is a bug in IE, yes? https://rawgit.com/bkardell/93a8d267e4848265a4d8/raw/e0aa34c0d0c7a45e0b611f0f4957f417edd64093/isolated-focus.html |
| 21:41 | <annevk> | yeah |
| 21:45 | <bkardell> | annevk: thanks. |
| 21:53 | <Ms2ger> | annevk, what's whatwg/compat? |
| 21:53 | <annevk> | Ms2ger: -webkit-/WebKit |
| 21:53 | <annevk> | aka good times |
| 21:53 | <annevk> | miketaylr is in charge |
| 21:53 | <Ms2ger> | Ew |
| 21:59 | <annevk> | https://github.com/whatwg/compat/blob/master/images/webcompat-logo.svg pretty good first sketch |
| 22:02 | <Ms2ger> | Should be whatwg green |
| 22:03 | <heycam> | set it to whatwg green using old webkit gradient syntax |
| 22:05 | <miketaylr> | oh vey |
| 22:05 | <miketaylr> | *oy vey |
| 22:07 | <miketaylr> | yeah, that's probably going to change. |
| 22:21 | <terinjokes> | annevk: logo looks great |
| 23:51 | <annevk> | philipj: hey, so we have some more people look at MediaSession now |
| 23:51 | <annevk> | philipj: did you guys consider telephony? |
| 23:51 | <annevk> | s/guys/people/ |
| 23:52 | <annevk> | philipj: we have a slightly more complicated model on Firefox OS I learned |
| 23:52 | <annevk> | philipj: e.g. if you have an incoming call while you're already on a call the incoming one will make some kind of different sound |
| 23:56 | <annevk> | philipj: baku is doing some of the work in Gecko |
| 23:56 | <annevk> | philipj: and Firefox OS |
| 23:56 | <baku> | hi philipj |
| 23:56 | <annevk> | baku: http://krijnhoetmer.nl/irc-logs/whatwg/20150627#l-50 |