ts2c
nephyr
ts2c | nephyr | |
---|---|---|
5 | 4 | |
1,220 | 24 | |
- | - | |
0.0 | 0.0 | |
about 1 year ago | almost 2 years ago | |
C | Nim | |
ISC License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ts2c
-
Microsoft DeviceScript – TypeScript for Tiny IoT Devices
These are far from perfect, but still something:
https://github.com/andrei-markeev/ts2c/
https://github.com/evanw/thinscript
If you aim for 32 bit microcontrollers then you can go with assemblyscript to wasm and then with wasm to C transpiller
-
TurboFan is an amazing piece of work
just wait bro, when silicon reaches the limits the electron team gonna take this over https://github.com/andrei-markeev/ts2c and pray they can use less ram somehow
-
Transpiling Typescript into Rust
Since you're going to need to manually adjust the output anyway, you could see if chaining ts2c and c2rust does something useful to you.
-
An amazing error message if you put more than 2^24-1 items in a JS Map object
TypeScript doesn't need a code generator with a special syntax in order to compile it into C. You can in fact compile TypeScript into C if you want: https://github.com/andrei-markeev/ts2c
-
Maintainers [...] are moving *AWAY* from [...] TypeScript, just at the same time when the wider dev world is falling in love with TS
lol no ts2c https://github.com/andrei-markeev/ts2c
nephyr
-
Microsoft DeviceScript – TypeScript for Tiny IoT Devices
I use Nim on embedded precisely for that reason: https://github.com/elcritch/nesper
I wtapped much of zephyr as well but that ones less used: https://github.com/embeddednim/nephyr
-
Compile time evaluation in Nim, Zig, Rust and C++
It's funny how something like Zig's comptime of C++'s constexpr get 90% of the way to solving most compile time issues, but can't knock out that last 10%. Compile time database types sound like one of those cases. F# had a feature for compile time types via "type providers". It seemed _really_ cool at first, but in practice is was a bit fragile.
Though on the other hand I'm using compile Nim code to parse CMake files and provide static types for configuration values. It's super easy in Nim between macros and const's. Here's a ~170 lines of code where I'm compile time checking that my Nim code can compile time check against the current build configuration of Zephyr RTOS https://github.com/EmbeddedNim/nephyr/blob/main/src/zephyr_c...
-
Launching the 2021 Nim Community Survey
Nesper author here, unfortunately I haven’t had time to fix the compile issues on all the esp-idf branches. Please feel free to file an issue as I don’t use es-idf/Nesper often now but I’ll respond to issues. The main branch should be more stable too.
I’ve been moving development to Zephyr RTOS since it supports many more boards and is more stable. I’d recommend trying it out but note it’s a WIP. I haven’t figured out templated examples yet. I’ve covered lots of api areas but not all. My goal is to make it into a broad MCU platform for Nim — Nephyr: https://github.com/EmbeddedNim/nephyr
But yah Nim can run on most anywhere you can compile C to. Some people just got Nim CMSIS working. I’m hoping to get more people involved at github.com/EmbeddedNim project to support more mcu’s. Testers are welcome!
- An Embedded USB Device Stack in Ada
What are some alternatives?
wax - A tiny programming language that transpiles to C, C++, Java, TypeScript, Python, C#, Swift, Lua and WebAssembly 🚀
svd2nim - Convert CMSIS ARM SVD files to nim register memory mappings
mjs - Embedded JavaScript engine for C/C++
usb_embedded - An Ada USB stack for embedded devices
devicescript - TypeScript for Tiny IoT Devices (ESP32, RP2040, ...)
RFCs - A repository for your Nim proposals.
bun - A fast all-in-one JavaScript runtime [Moved to: https://github.com/oven-sh/bun]
nesper - Program the ESP32 with Nim! Wrappers around ESP-IDF API's.
nano-ycmd - Modded GNU Nano using ycmd code completion and IntelliSense. The ycmd code completion support for nano is found in the ymcd-code-completion branch.
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
ts-json-schema-generator - Generate JSON schema from your Typescript sources
rp2040_hal - Ada drivers for the Raspberry Pi RP2040 SoC