bjconlan/clojurescript — Issue #1: HDD - Identify how the type system work and then look at closure-lib removal.
Author: bjconlan
Created: 2011-12-01 08:35:32+00:00
State: open

The closure library is both an asset and a curse. it provides a great subset of functionality used by clojurescript but it really ties down the core api. It also seems to insure the common module system is used (verity this for node).

Perhaps look at using a module system (common-js as per nodejs, narwal, etc) by default but this can be overridden by using something like require.js or some other 'amd' system. (specifically one that chunked and lazy)

Having the core api use javascript native types (and extended - typed arrays)) this also includes looking into the current problem identified in [cljs-95](http://dev.clojure.org/jira/browse/CLJS-95).

Looking at how current java types (that underly clojure types) are marshalled in current common libs such as jaxb, jackson and flexjson (preference in that order) would be of benefit here. (Again making reference to the inclusion of typed arrays which should make an optimised character type possible.