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