Clojurians
#lumo
<
2017-02-17
>

This page is not created by, affiliated with, or supported by Slack Technologies, Inc.

moxaj12:02:35

is there a way to make lumo use my own clojurescript jar?

stbgz16:02:37

@moxaj you mean as a jar as a dependency to the repl

moxaj17:02:49

@stbgz yeah. If I pass it as a classpath entry, would it override the one bundled with lumo?

stbgz17:02:52

@moxaj nop you can put a jar in the lumo classpath(as in the classpath that lumo will use to start the repl) and you should be able to access it with a require

anmonteiro18:02:51

@moxaj not possible to override the ClojureScript version in Lumo

anmonteiro18:02:59

not sure it’ll ever be

moxaj18:02:05

@anmonteiro I see. Another question, if I may: if I enter (ns a.b #?(:cljs (:require-macros [a.b]))) into the lumo repl, it throws an error (`No such macros namespace ...`). However, loaded from a file, it works. Is this expected?

anmonteiro18:02:22

@moxaj did you define the a.b namespace?

anmonteiro18:02:35

or rather, the a.b$macros namespace

moxaj18:02:51

no, this would be the definition ^^

anmonteiro18:02:55

that’s what require-macros really does behind the covers

anmonteiro18:02:22

right. so at the REPL you need to define the a.b$macros NS before requiring it

moxaj18:02:34

hmm, so when loading it from a file, with *load-fn*, does the compiler handle this automatically?

anmonteiro18:02:52

the problem is when defining namespaces at the REPL

moxaj18:02:36

yeah, there is no macro namespace to load, yet

anmonteiro18:02:38

not particularly a “problem"

anmonteiro18:02:42

but a gotcha to be aware of

moxaj18:02:41

this is still the klipse issue i've fought before, you may remember, and I believe this might be key

moxaj18:02:06

it seems klipse evaluates each expression, one after the another, as if entered into a repl, thus triggering this error

anmonteiro18:02:38

I’m not familiar with how Klipse does it

moxaj18:02:01

alright, thanks for the help :slightly_smiling_face:

jmf19:02:57

Klipse does work that way. it loads a context for each language you define in the config. all code blocks of a particular language share the same context

jmf19:02:54

(I’m working on a presentation that uses Klipse right now)