RE: First group project

I’m totally in. We already worked on that a bit, and I agree with you this is a starting point to everything: even CSS prolyfills require some CSSOM at some point. The WebIDL parser is already a good first part, now we need to translate back to JS.

 

I’ll probably start by making a TypeScript interface description from the parsed WebIDL, because this is easier and does not require working implementation; just definitions and mappings. I really propose we use TypeScript as a target because it compiles down to regular JavaScript and yet provides useful type annotations that will enable us to check we’re not doing ‘wrong’ things + it is a polyfill for ES6 classes, something that’s really cool. Give it a look: http://www.typescriptlang.org/


 

Speaking about scope, I propose we support all browsers featuring full ES5 support; but taking advantage of ES6 features when they are accessible (that means we’ll probably have to provide multiple implementations of some methods, because browsers have different ES6 capabilities (IE10 lacks the ES6 __proto__ for example)).

 

 

 


De : Marcos Caceres
Envoyé : ‎3‎ ‎janvier‎ ‎2013 ‎10‎:‎07
À : &lt,public-nextweb@w3.org&gt,
Objet : First group project



Hi All,
Given that we now have code to expose Web IDL interfaces on the global scope [1], I'm wondering how open people would be to starting a up a project around implementing the remainder of Web IDL? It primarily means implementing the conversion of ECMAScript values to WebIDL values (and out again). 

The project is relatively small, but it would be highly beneficial as a foundation on which to base much of our work (for any JS APIs). 

Architecturally, what I'm thinking is that we layer the code on top of Robin Berjon's WebIDL parser (which spits out a JSON-like structure). From there, we can create AMD modules for each data type, which can be loaded in as needed (should keep code small).

I guesstimate this is a 1-2 month project that can be easily split up amongst us. 

Kind regards,
Marcos 

[1] https://gist.github.com/4402084

-- 
Marcos Caceres

Received on Thursday, 3 January 2013 09:53:58 UTC