zuo | zuo | |
---|---|---|
7 | 1 | |
215 | 39 | |
2.8% | - | |
6.6 | 0.0 | |
11 days ago | about 2 years ago | |
C | C | |
GNU General Public License v3.0 or later | 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.
zuo
- Give me your ideas and hints
-
What type of projects is Racket best suited for?
There is a new addition to the racket family; ‘Zuo: A Tiny Racket for Scripting’ that is also suitable embedding in another application.
-
Zuo: A Tiny Racket for Scripting
https://github.com/racket/zuo/blob/main/local/tree.zuo is a pretty good example.
It’s nothing like Bash; it’s a Lisp dialect.
The obvious comparison is Lua, which is generally the standard embedded language people use when a scripting language needs to be tiny. I compared its size; Zuo is 55% the size of Lua, so apples to apples, Zua is only a little over half the size of Lua. On the other hand, Lua uses a Pascal like syntax which is a good deal more Bash like than Zuo.
-
New Racket Build System
Looks like the build system will be using Zuo.
https://github.com/racket/zuo/
zuo
-
Zuo: A Tiny Racket for Scripting
There is more information about the reason for this here^1 Below is an excerpt
> As in Non-recursive Make Considered Harmful: Build Systems at Scale, we can build a better make. This commit mostly imitates Shake as described there, but in a Racket style and called "Zuo" (based on the Chinese word for "make"). The Zuo implementation started at https://github.com/mflatt/zuo, but here it's in the intended long-term home, racket/src/zuo.
> The goal is for Racket to be be just as easy for end-users to build as now after converting scripts from make and /bin/sh to zuo. So, make should work in Racket's top-level directory, and configure plus make plus make install should work in a source directory or distribution, all with no new pre-installed packages required. The new makefiles will be small, however, just ensuring that the zuo executable is built and then handing off to Zuo scripts.
1. https://github.com/racket/racket/pull/4179
What are some alternatives?
racket-r7rs - An implementation of R7RS in Racket
vonuvoli-scheme - vonuvoli Scheme -- an R7RS interpreter written in Rust focused on systems programming and scripting (i.e. processes, file-system, etc.) with performance and safety in mind
racket - The Racket repository
janet - A dynamic language and bytecode vm
babashka - Native, fast starting Clojure interpreter for scripting