aws-api | tweetnacl | |
---|---|---|
3 | 2 | |
719 | 21 | |
0.1% | - | |
6.5 | 0.0 | |
17 days ago | about 7 years ago | |
Clojure | C | |
Apache License 2.0 | MIT License |
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.
aws-api
-
looking for a document-db easy to use
If it doesn't have to be on prem, I would just use whatever AWS offers (DocumentDB), and either use the Java SDK directly or use this
-
Intern'd functions from an .edn are incredible
Check out https://github.com/cognitect-labs/aws-api which works in a similar way :)
-
Why Lisp? (2015)
Related to this, there's an AWS SDK for Clojure [0] (created by the same people who are behind Clojure), which is generated from the AWS specs themselves. Carmine, a popular Clojure library for Redis does something very similar. I suspect doing the same in CL would be similarly simple.
[0] https://github.com/cognitect-labs/aws-api
tweetnacl
-
Why Lisp? (2015)
Because that product was an embedded system running on a very small SoC. It only had 1MB of flash and 192k of SRAM. It's theoretically possible to run CL on a system that small -- Coral Common Lisp ran on a Mac Plus with 1MB of RAM back in the 1980s -- but nothing off-the-shelf will do that today.
(I did, however, put a little Scheme interpreter on it as an easter egg :-)
I do have some CL code that supports the crypto project. The back-end for this:
https://stage.sc4.us/sc4/sc4tk.html
is written in CL (though all the actual encryption is done client-side in Javascript). I also have some prototype crypto code that I don't really use for anything, including this double-ratchet implementation:
https://github.com/rongarret/tweetnacl/blob/master/ratchet.l...
and some elliptic curve code:
http://www.flownet.com/ron/lisp/djbec.lisp
-
Teaching Compilers Backward
Of course. There are many. Any binary format. Any ASN.1 format. DEF and LEF for hardware descriptions. The output of mysqldump.
Here's another example:
https://github.com/rongarret/tweetnacl/blob/master/ratchet.l...
starting at line 82. (That's one that I designed.)
What are some alternatives?
carmine - Redis client + message queue for Clojure
LoopVectorization.jl - Macro(s) for vectorizing loops.
babashka - Native, fast starting Clojure interpreter for scripting
cl4py - Common Lisp for Python
lang
janet - A dynamic language and bytecode vm
awesome-compilers - :sunglasses: Curated list of awesome resources on Compilers, Interpreters and Runtimes
github-orgmode-tests - This is a test project where you can explore how github interprets Org-mode files
hissp - It's Python with a Lissp.
bel - An interpreter for Bel, Paul Graham's Lisp language