skybison
badger
skybison | badger | |
---|---|---|
9 | 4 | |
286 | 72 | |
- | - | |
0.0 | 0.0 | |
over 1 year ago | about 2 years ago | |
C++ | Nim | |
GNU General Public License v3.0 or later | - |
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.
skybison
-
What happens in a garbage collection system where only a local variable in the host language has a pointer to an object?
Check out our handle implementation here.
-
Would it be good to add inconsistency to add a small string variant in the value payload?
This is what we did in Skybison and it worked just fine.
-
The Toit language is now open source
The codebases have very similar naming patterns and structures that mean that once you've read one, the others are much easier to understand. Check out, for example, Dart's VM. Or https://github.com/facebookexperimental/skybison
-
Faster Python with Guido van Rossum
Guido appears to have meant to refer to Skybison (https://github.com/facebookexperimental/skybison), which is not 100% compatible.
- GitHub - facebookexperimental/skybison: Instagram's experimental performance oriented greenfield implementation of Python.
- Facebook's experimental performance oriented greenfield implementation of Python
-
Skybison, Instagram's experimental performance oriented greenfield implementation of Python
In particular, what was the performance impact of your moving GC? (The documentation for the GC, https://github.com/facebookexperimental/skybison/blob/trunk/doc/garbage-collection.md, appears to be a dead link, is it present somewhere?)
- Show HN: Skybison, an optimized greenfield Python runtime
badger
- How to get clean simple C output?
-
The Toit language is now open source
Nothing about the entire ecosystem I was talking about. But my initial work on the keyboard firmware can be found here: https://github.com/PMunch/badger/tree/final. There are many different projects in Nim running on microcontrollers though, but not something on a common ecosystem.
HHL?
-
Nim Version 1.6 Released
Well no language is perfect, but Nim can be used in almost every domain because of it's compilation targets(C, C++, JS) and it's fast compile times(who needs interpretation when compile times are that fast!):
* Shell scripting, I still assume most people will just use Bash tho: https://github.com/Vindaar/shell
* Frontend: https://github.com/karaxnim/karax or you could bind to an existing JS library.
* Backend: For something Flask-like: https://github.com/dom96/jester or something with more defaults https://github.com/planety/prologue
* Scientific computing: the wonderful SciNim https://github.com/SciNim
* Blockchain: Status has some of the biggest Nim codebases currently in production https://github.com/status-im?q=&type=&language=nim&sort=
* Gamedev: Also used in production: https://github.com/pragmagic/godot-nim and due to easy C and C++ interop, you get access to a lot of gamedev libraries!
* Embedded: this is a domain I know very little about but for example https://github.com/elcritch/nesper or https://github.com/PMunch/badger for fun Nim+embedded stuff!
Most of the disadvantages come from tooling and lack of $$$ support.
-
Looking into Zig
I think the fact that Nim compiles to C is neat in that you can use it on any platform that has a C compiler.
Here is a recent project that uses nim for AVR platforms, for example: https://github.com/PMunch/badger
What are some alternatives?
status-desktop - Status Desktop client made in Nim & QML
jester - A sinatra-like web framework for Nim.
nimporter - Compile Nim Extensions for Python On Import!
ulisp - A version of the Lisp programming language for ATmega-based Arduino boards.
beartype - Unbearably fast near-real-time hybrid runtime-static type-checking in pure Python.
zig-bootstrap - take off every zig
toit-color-tft
toit-lsm303dlhc - Driver for the LSM303DLHC
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).
cps - Continuation-Passing Style for Nim 🔗