Closed marcoscaceres closed 10 years ago
:+1: for this!!
Thanks! Have an open source project that goes with it: https://github.com/extensibleweb/webidl.js
I can also talk about how we use it in Mozilla to create DOM bindings (we have an internal WebIDL parser/code generator and we are in the process of converting all DOM interfaces to use it).
@joaojeronimo, @require-lx how long are the talks are supposed to be?
10 - 15 minutes, it's fine if you go a bit overtime.
2013/11/25 Marcos Caceres notifications@github.com
@joaojeronimo https://github.com/joaojeronimo, @require-lxhttps://github.com/require-lxhow long are the talks are supposed to be?
— Reply to this email directly or view it on GitHubhttps://github.com/require-lx/group/issues/11#issuecomment-29192480 .
@joaojeronimo thanks!
Although the lingua franca of the Web is JavaScript, the DOM and associated interfaces are actually expressed in a language called WebIDL (Web Interface Definition Language). WebIDL binds together C++ and JavaScript, and it doing so, introduces a few legacy quirks - but also allows for rich expression error-handling behavior, type checking and enforcement, inheritance, statics, etc.
Unless you are a (W3C) Spec Editor, you probably will never need to write WebIDL. However, if you've ever found yourself reading a W3C or WHATWG specification (e.g., the HTML standard), then knowing a little WebIDL can help you understand how JS interacts with the DOM.
Additionally, if you would like to extend the DOM through a "pollyfill" - then knowing how to replicate the behavior of WebIDL interfaces is crucial.