Re: No eval in ClojureScript!?

2016-02-14 Thread ru
I took a look at the Clara's code. This is excerpt from the comment of "defsession" defmacro: "..Each source is eval'ed at compile time, in Clojure (not ClojureScript.)..". So, this is a solution, but not clear ClojureScript solution :( -Ru суббота, 13 февраля 2016 г., 18:25:46 UTC+3 пользовате

Re: No eval in ClojureScript!?

2016-02-14 Thread ru
Thank you Alan for very helpful information. I know about Clara but don't watch its progress attentively fore some time :( Regards, Ru суббота, 13 февраля 2016 г., 18:25:46 UTC+3 пользователь ru написал: > > Dear ClojureScript users and team! > > Without "eval" function ClojureScript can't be

Re: No eval in ClojureScript!?

2016-02-13 Thread Alan Moore
Ru, Take a look at the approach used by Clara (https://github.com/rbrush/clara-rules.) It works in both Clojure and ClojureScript. It translates the DSL using eval at macro-expansion time to generate the productions - see defsession. Will take a look at rete4frames again when I get a chance.

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
Many thanks for the explanations. I will be experimenting to deside where to go further. -Ru суббота, 13 февраля 2016 г., 18:25:46 UTC+3 пользователь ru написал: > > Dear ClojureScript users and team! > > Without "eval" function ClojureScript can't be recognized as a > full-fledged LISP. "Code

Re: No eval in ClojureScript!?

2016-02-13 Thread James Reeves
On 13 February 2016 at 18:58, ru wrote: > I think macros can't be of much help in my task. I am working on project > rete4frame (https://github.com/rururu/rete4frames) and now want to port > it to ClojureScript. It is CLIPS-like expert system shell with simplified > version of RETE algorithm. It

Re: No eval in ClojureScript!?

2016-02-13 Thread David Nolen
If you need eval then you need to be OK with pulling in a lot of code and giving up Closure advanced optimizations and dead code elimination. Whatever small size savings an interpreter might offer, it would still suffer from this fundamental problem. David On Sat, Feb 13, 2016 at 1:58 PM, ru wro

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
I think macros can't be of much help in my task. I am working on project rete4frame (https://github.com/rururu/rete4frames) and now want to port it to ClojureScript. It is CLIPS-like expert system shell with simplified version of RETE algorithm. It has its own language with LISP syntax and it i

Re: No eval in ClojureScript!?

2016-02-13 Thread James Reeves
On 13 February 2016 at 17:11, ru wrote: > First thing that comes to my mind is MAXIMA Computer Algebra Program from > LISP ecosystem. That is a system for the manipulation of symbolic and > numerical expressions, including differentiation, integration and many > other useful things. It will be n

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
That I understand. Only one more question. Can I unload ClojureScript Compiler after I done with "eval"? This scenario is suitable very well to my task. -Ru суббота, 13 февраля 2016 г., 18:25:46 UTC+3 пользователь ru написал: > > Dear ClojureScript users and team! > > Without "eval" function Cl

Re: No eval in ClojureScript!?

2016-02-13 Thread Herwig Hochleitner
ru, eval is there in clojurescript. It's just in a separate namespace. This is a good thing, because it leads to big space savings in the regular case. ​ -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@goo

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
First thing that comes to my mind is MAXIMA Computer Algebra Program from LISP ecosystem. That is a system for the manipulation of symbolic and numerical expressions, including differentiation, integration and many other useful things. It will be nice to have such a power in ClojureScript, is'

Re: No eval in ClojureScript!?

2016-02-13 Thread James Reeves
While eval is an important part of Clojure, it's also very rarely used. I've been working with Clojure for almost eight years now, and I've written 60 Clojure libraries. Despite that, I've used eval less than half a dozen times. Having a way of evaluating ClojureScript in ClojureScript is a nice m

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
All we know that JIT is a Just In Time compiler and that JIT is an important part of Java compiler nowerdays. Maybe JIT ideas can be applied to ClojureScript "eval problem" solution? -Ru суббота, 13 февраля 2016 г., 18:25:46 UTC+3 пользователь ru написал: > > Dear ClojureScript users and team!

Re: No eval in ClojureScript!?

2016-02-13 Thread ru
LISP implementations often have a compiler and an interpreter simulteniously. As I know LISP interpreter is a very simple program and often used as an example in classes. Maybe ClojureScript should include such interpreter for such important task as evaluation of dinamically generated code? -

Re: No eval in ClojureScript!?

2016-02-13 Thread Daniel Kersten
Clojurescript does have eval, in the cljs.js namespace: https://crossclj.info/ns/org.clojure/clojurescript/1.7.228/cljs.js.cljs.html#_eval Take a look at http://yogthos.net/posts/2015-11-12-ClojureScript-Eval.html for an example and https://swannodette.github.io/2015/07/29/clojurescript-17/ for som

Re: No eval in ClojureScript!?

2016-02-13 Thread James Reeves
ClojureScript has cljs.js/eval, which while not as convenient as clojure.core/eval, can accomplish the same effect. The reason why ClojureScript doesn't have a standard eval is because it adds a huge amount of overhead for relatively little gain. You need to load the entire ClojureScript compiler

No eval in ClojureScript!?

2016-02-13 Thread ru
Dear ClojureScript users and team! Without "eval" function ClojureScript can't be recognized as a full-fledged LISP. "Code as data" paradigm can't be implemented without "eval". What purpose of code constructed programmatically, if it can not be evaluated?! In that sence plain old JavaScript is