Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/holyjak/ardoq-rama-poc
My attempt at learning Rama by re-implementing parts of Ardoq
https://github.com/holyjak/ardoq-rama-poc
Last synced: 2 months ago
JSON representation
My attempt at learning Rama by re-implementing parts of Ardoq
- Host: GitHub
- URL: https://github.com/holyjak/ardoq-rama-poc
- Owner: holyjak
- Created: 2023-12-20T23:26:41.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-21T11:34:13.000Z (9 months ago)
- Last Synced: 2024-05-01T21:08:56.297Z (8 months ago)
- Language: Clojure
- Size: 81.1 KB
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# I am learning Rama by re-implementing parts of Ardoq
This is a learning project, which I initiated to get a practical experience with the [fascinating Rama programming platform](https://blog.redplanetlabs.com/2023/08/15/how-we-reduced-the-cost-of-building-twitter-at-twitter-scale-by-100x/). Started at Ardoq hackaton 2023.
**See `doc/` for details:**
1. [Day 1 log](/doc/day1.adoc)
2. TBDNote that Rama AOT compiles a specific Clojure version in its jar, so you can't specify a different version of Clojure in your dependencies.
# Notes
## Cursive
* Awesome
* Some macros lack docstring, e.g. <
* Currently, Rama has Clojure 1.11.1 built-in but Cursive believes `random-uuid` doesn't exist (though it works fine in the repl)## Rama setup
* Run with lein profiles dev,provided
* Had to add nrepl dependency to for Cursive## Rama learnings
* See my #rama questions https://clojurians.slack.com/archives/C05N2M7R6DB/p1702471642548209
* Topologies: finish with `local-transform` to write the data
* I can't use Clojure flow control constructs such as `or` in a dataflow > use `or>`, `<