This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-10-11
Channels
- # announcements (5)
- # babashka (43)
- # beginners (78)
- # calva (1)
- # cider (35)
- # clj-kondo (15)
- # clj-otel (3)
- # cljs-dev (2)
- # clojure (24)
- # clojure-denmark (1)
- # clojure-dev (9)
- # clojure-europe (43)
- # clojure-israel (1)
- # clojure-italy (1)
- # clojure-losangeles (3)
- # clojure-nl (1)
- # clojure-norway (54)
- # clojure-romania (1)
- # clojure-uk (2)
- # clojurescript (1)
- # core-async (25)
- # cursive (7)
- # datascript (6)
- # datomic (7)
- # docker (2)
- # emacs (2)
- # events (8)
- # exercism (2)
- # fulcro (2)
- # hyperfiddle (16)
- # lsp (46)
- # malli (10)
- # membrane (2)
- # music (6)
- # nbb (30)
- # off-topic (49)
- # polylith (4)
- # reagent (3)
- # releases (4)
- # shadow-cljs (5)
- # slack-help (1)
- # sql (2)
- # testing (2)
- # timbre (6)
- # tools-deps (29)
- # xtdb (36)
Our favorite backend platform seems quite testable with RCF’s async testing primitives. Thanks again, team Hyperfiddle!
(ns op-two-emits
(:require [com.rpl.rama :as r]
[hyperfiddle.rcf :as rcf]))
(rcf/enable!)
(r/deframaop foo [*a]
(:> (inc *a))
(:> (dec *a)))
(rcf/tests
(r/?<-
(foo 5 :> *v)
(rcf/tap *v))
rcf/% := 6
rcf/% := 4)
The example is taken from https://blog.redplanetlabs.com/2023/10/11/introducing-ramas-clojure-api/#Basic_example:~:text=Let%E2%80%99s%20define%20a,invoking%20the%20continuation%E2%80%9D.I might be sinning by both:
• aliasing rama’s symbols as r
• aliasing rcf’s symbols as rcf
Especially for Rama, I think team RPL would say it’s overkill when you build your entire system on top of their primitives.
use :refer lol
I love reading rcf/tests
but you’re right I should refer at least some of these symbols like RCF’s tap
and %
at least.
#electric-rama might sound nice, but I think it might be great to continue posting about the intersection of these topics here in #C7Q9GSHFV instead of posting into a new channel. Dustin keeps a very close watch on Rama and I don’t think he’d consider this out of topic at all.
We have plans to do a Rama/Electric demo as a test case and demonstration of Differential Electric
I added the Rama Clojure Word Count example. https://github.com/DanielJomphe/rama-dventures/blob/main/scratch/word_count.clj.
I dont think TodoMVC is out of reach from this starting point. Starting with the todos-simple demo in the electric starter app
Decided to add https://github.com/DanielJomphe/rama-dventures/blob/main/scratch/auction.clj. It was a breeze to add, now that I got the hang of the basics.
I’m annoyed that my current setup is VS Code with Calva and Clj-kondo, which really doesn’t like Rama’s DSL, obviously. I’m thinking about turning off the annoying linter bits. I plan to spend a few daily hours copy-pasting a series of examples based on Rama’s initial java-based demos too. Once that’s done, I should start experimenting with the intersection of Rama and Electric ⚡
I https://github.com/DanielJomphe/rama-dventures/blob/main/.clj-kondo/config.edn#L10 all those red underlines.
I added the Rama Clojure Word Count example. https://github.com/DanielJomphe/rama-dventures/blob/main/scratch/word_count.clj.
Decided to add https://github.com/DanielJomphe/rama-dventures/blob/main/scratch/auction.clj. It was a breeze to add, now that I got the hang of the basics.