-
Notifications
You must be signed in to change notification settings - Fork 21
kswoll edited this page Feb 5, 2014
·
13 revisions
####What C# language features are supported?#### The only core feature of C# that is not implemented yet is async/await. Notably, you can expect support for the following features:
-
yield
operator via a state machine - extensive reflection support
- expression trees
- C#-style lambdas and closures
- anonyous types
####What C# language features are not supported?####
- All numeric types (including
decimal
) are implemented as the native JavascriptNumber
type. This means that all numeric types will always return true when asking whether it is any C# numeric type. - Async/await are not supported
####What features are planned in the immediate future?####
- Source Maps allow you to debug Javascript code in, for example, Chrome Developer Tools, while setting breakpoints and stepping over your C# source code. This is planned for the future, but will require a fairly significant outlay of work.
####Why should I expect this project to improve and not fall victim to abandonware?####
Largely because I intend to dogfood it by rewriting the frontend of a fantasy basketball site I work on using this stack. To that end, I will be actively adding features and filling out any gaps in the current libraries.
####Why might I not want to use WootzJs?####
- you want the .JS output to be clean, as though you handwrote it
- you don't want native Javascript types such as
String
,Number
, andArray
to be polluted with members generated by WootzJs. (those types, for example, have members that correspond to methods you'd expect on their equivalent C# types) - you don't want to interact with the Javascript through C# syntax such as namespaces and classes.
####Why is it called WootzJs?#### It's a play on wootz steel (which is sharp, like C#!) and Javascript.