lfe-deprecated / clj

MERGED to LFE - Clojure-inspired macros and functions for use in LFE
28 stars 2 forks source link

How are we going to map clojure to LFE? #18

Open rvirding opened 8 years ago

rvirding commented 8 years ago

A question is how we are going to map clojure data structures to LFE/erlang? With the CL module we sort of did it but not with everything, for example booleans. Another is how far we want to go with the clojure concurrency types which except for agents don't really map well to LFE.

oubiwann commented 8 years ago

The basic things should be pretty straight-forward: lists, tuples (vectors), maps, atoms (keywords). For other edge cases, we'll take it one at a time like we did for the CL library -- keeping a preference for LFE/Erlang-oriented performance and/or conventions. For instance, nil -> undefined and we'll use the LFE true and false atoms as booleans.

I want to stay completely away from Clojure's async implementation -- that is from the JVM world and LFE has an awesome set of async standards from a well-known highly-concurrent, fault-tolerant, massively scalable telecommunications programming language ;-) (Never forget Ocean Terror Prawn!)

For folks wanting to use an async model that translates well between Clojure and LFE, we can simply point them to the OTP-inspired Pulsar by @puniverse :-)

yurrriq commented 8 years ago

It lives! https://github.com/rvirding/lfe/pull/267 I hope all the notification blasting isn't too bothersome. I wanted to have cross-references :smile:.