Fork me on GitHub
#squint
<
2022-09-06
>
Tiago Dall'Oca01:09:58

Hello there! My name is Tiago, and I'm a Clojure Developer from Brazil I'd like to know if there's anything I could help with, coding or not 🙂 My main motivation would be to see #cherry maturing, bus as I talked with @borkdude, there is a considerable overlap and clava would be a good testing field for cherry's implementation Anyhow, eager to hear from you guys 😄

👋 2
1
👍 1
borkdude08:09:10

@mrdalloca Hi welcome! I think the best way to mature #cherry is to start using it and building things with it and then finding things that don't work properly, file issues and think about how to solve them :) I'll start porting compiler fixes from clava to cherry today

borkdude08:09:00

There are a couple of things that need work but the main challenge is having a proper REPL experience. I think we need to compile vars and var references to a global mutable object during development to enable the REPL experience.

Tiago Dall'Oca13:09:59

maybe have two compile modes: dev and prod

Tiago Dall'Oca13:09:20

but then you wouldn't be able to jack-in into production with a repl

Tiago Dall'Oca13:09:35

which could very reasonably be out of scope anyway

borkdude13:09:40

that is true, but have you ever jacked into a production CL_JS_ environment?

Tiago Dall'Oca13:09:41

concessions need to be made

Tiago Dall'Oca13:09:52

I have never haha

borkdude13:09:09

me neither. it's similar to optimizations advanced, etc

Tiago Dall'Oca13:09:17

yeah makes sense

Tiago Dall'Oca13:09:50

I'd need to familiarize myself with the code first, but would this be something I could pick up?

borkdude13:09:27

well, for sure you could explore the problem and see how things are going to work

borkdude13:09:57

not sure if I would want to park this with one person, but it couldn't hurt to have more eyes on this problem

borkdude13:09:33

it's more a research problem than a "make this PR" problem

borkdude13:09:41

but you could try and make an experimental PR

borkdude13:09:06

also feel free to pick up anything else

borkdude13:09:13

I'm currently bring back some fixes from clava to cherry

Tiago Dall'Oca13:09:17

thanks for the overall directions haha

borkdude13:09:49

Thanks for your interest in helping out :)

borkdude09:09:02

Now that we have a cool stdlib with clojure seq-like functions based on generators... I looked if emacs lisp has this. And holy cow, it has! https://www.gnu.org/software/emacs/manual/html_node/elisp/Generators.html What if we compiled down to elisp from clavascript/<new-project>? 😅 Perhaps it can just be done using elisp macros + functions though. Hmm I don't think elisp supports [] etc though

Tiago Dall'Oca13:09:24

I'm not sure if I understood

Tiago Dall'Oca13:09:42

so the repl would, in fact, be compiling down to elisp you say?

borkdude13:09:14

Could work right

Tiago Dall'Oca13:09:33

but how would the repl interact with the js ecosystem?

Tiago Dall'Oca13:09:46

and wouldn't this make it available only on emacs?

borkdude13:09:14

This was just a different idea to have a Clojure -> elisp compiler

Tiago Dall'Oca13:09:35

ah ok haha like different project you say

Tiago Dall'Oca13:09:43

clojure everywhere

💪 1
Lyn Headley14:09:51

I like this idea since I am a heavy emacs user but I find emacs lisp to be a little bit clunky.