mirror of
https://github.com/tinygo-org/tinygo.git
synced 2026-08-15 08:23:41 +00:00
README: scope
This commit is contained in:
@@ -99,6 +99,27 @@ Implemented compiler passes:
|
|||||||
* Do basic dead code elimination of functions. This pass makes later passes
|
* Do basic dead code elimination of functions. This pass makes later passes
|
||||||
better and probably improves compile time as well.
|
better and probably improves compile time as well.
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
Goals:
|
||||||
|
|
||||||
|
* Have very small binary sizes. Don't pay for what you don't use.
|
||||||
|
* Support for most common microcontroller boards.
|
||||||
|
* Be usable on the web using WebAssembly.
|
||||||
|
* Good CGo support, with no more overhead than a regular function call.
|
||||||
|
* Support most standard library packages and compile most Go code without
|
||||||
|
modification.
|
||||||
|
|
||||||
|
Non-goals:
|
||||||
|
|
||||||
|
* Using more than one core.
|
||||||
|
* Be efficient while using zillions of goroutines. However, good goroutine
|
||||||
|
support is certainly a goal.
|
||||||
|
* Be as fast as `gc`. However, LLVM will probably be better at optimizing
|
||||||
|
certain things so TinyGo might actually turn out to be faster for number
|
||||||
|
crunching.
|
||||||
|
* Be able to compile every Go program out there.
|
||||||
|
|
||||||
## Building
|
## Building
|
||||||
|
|
||||||
See the [installation instructions](https://tinygo.readthedocs.io/en/latest/installation.html).
|
See the [installation instructions](https://tinygo.readthedocs.io/en/latest/installation.html).
|
||||||
|
|||||||
Reference in New Issue
Block a user