@js-basics/jsto...
v0.8.1
Published
transpile js to other languages
Downloads
31
Readme
jsto
this libary is going to provide you a simple way of writing typed js code. this code can run and tested directly with js. but with types it can be transpiled to other languages, too.
type inference is supported by type checker.
| environment | jsto... checker | typescript | | ------------------------ | :-------------: | :--------: | | run time | ✓ | ✗ | | build time | ✓ | ✓ | | IDE time (the best time) | ✗ | ✓ |
| typesafe | jsto... checker | typescript | | ----------- | :-------------: | :--------: | | functions | ✓ | ✓ | | arguments | ✓ | ✓ | | classes | ✓ | ✓ | | methods | ✓ | ✓ | | variables | ✗ | ✓ | | arithmetics | ✓ | ✗ |
features in process
[x] generate JSTree out of js
- ESTree + type annotations
[x] type inference
[ ] jstoGLSL transpiler great for performance
- [x] generate valid glsl code
- [ ] js transformations to glsl
- [x] modulo as arithmetic operator
- [x] pow as arithmetic operator
- [x] variable index expression for vectors
- [ ] gentype for function outline
- [x] functional structs
- [ ] destruct
- [ ] symbols and enums
[x] jstoGLSL simulator great for testing
- [x] painting (slowly) to image buffer
- [x] vector arithmetic (component wise) operator support
- [x] partly matrix algebraic operator support
- [ ] typesafety
in future
- [ ] jstoWorker
- [ ] transpile js code without overhead of types and arithmetics
JSTree extended from ESTree
typeAnnotation
for Literals and Identifiers
returnType
for Functions