Clojurians
#lumo
<
2017-04-19
>

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

hlolli12:04:47

was lumo.repl/apropos ever added?

dominicm12:04:35

@frankie just posted https://github.com/frankiesardo/lumo-vr I thought this channel would find it cool :wink:

richiardiandrea14:04:08

@hlolli apropos and source are tougher to add because involve reading actual files from the fs. I thought to copy stuff from replumb or Planck and see what happens, but in this period I am super busy at work...

hlolli14:04:42

@richiardiandrea (thinking about inf-clojure) couldn't we just dereference cljs.env directly to grab all symbols for def/defn's/macros from a given namespace?

hlolli14:04:22

I already did that when I made some pseudo mikkera.macros style functionality of grabbing symbols and macros between namespaces, all stored in an atom of the running environment.

hlolli14:04:30

otherwise kudos to your work on inf-clojure, it's looking much cleaner, the upstream.

richiardiandrea15:04:47

Thanks! Still some things to work on (completion mainly).

richiardiandrea15:04:31

About apropos, probably some trick like that can be employed yes, i'd add a function in lumo though.

dominicm15:04:23

I can't decide if inf-clojure is a work of art, or total hack. Thoughts?

dominicm15:04:32

Maybe wrong channel to provoke that question :stuck_out_tongue:

richiardiandrea15:04:29

The latter :) at some point I thought it could become a universal repl connector .. at the end of the day the commands in inf-clojure are all you need for effectively working in a repl

richiardiandrea15:04:14

At some point with the unravel integration I will also add ellipsis support

richiardiandrea15:04:42

It also probably needs to print a message when a command is not supported by the repl

dominicm15:04:06

I've been thinking a little about the layers involved here myself. I find it interesting how inf-clojure is happy to parse free-form output. That kind of thing scares me :stuck_out_tongue:

richiardiandrea15:04:57

Oh well, it is the same in the terminal :grinning:

dominicm15:04:29

Yeah, I'm suspicious of those too though :wink:

dominicm15:04:32

(the free text processing part, not the terminal in general)

plexus15:04:35

I somehow seemed to have managed to get to a point where I can no longer install lumo... really not sure how this happened. Tried to blow away node_modules, tried on node 6.10.2 and 7.9.0, all the same result

plexus15:04:48

well I'd like to figure out what caused it, because if I'm making an episode about it I don't want my viewers to run into this

dominicm15:04:01

Makes sense.

plexus15:04:16

it seems something in lumo's install script is getting in a tangle? not much information in the log though

plexus15:04:40

9052 verbose stack Error: [email protected] install: `node scripts/npm_install.js`
9052 verbose stack Exit status 255
9052 verbose stack     at EventEmitter.<anonymous> (/home/arne/.nvm/versions/node/v7.9.0/lib/node_modules/npm/lib/utils/lifecycle.js:279:16)
9052 verbose stack     at emitTwo (events.js:106:13)
9052 verbose stack     at EventEmitter.emit (events.js:194:7)
9052 verbose stack     at ChildProcess.<anonymous> (/home/arne/.nvm/versions/node/v7.9.0/lib/node_modules/npm/lib/utils/spawn.js:40:14)
9052 verbose stack     at emitTwo (events.js:106:13)
9052 verbose stack     at ChildProcess.emit (events.js:194:7)
9052 verbose stack     at maybeClose (internal/child_process.js:899:16)
9052 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
9053 verbose pkgid [email protected]
9054 verbose cwd /home/arne/LambdaIsland/Episodes/command_line_tools_with_lumo

plexus15:04:48

any ideas how to debug this?

anmonteiro15:04:22

@plexus there were some issues with the install script that are hopefully fixed in master

anmonteiro15:04:14

There was an unrealistic timeout of 30seconds to download Lumo

anmonteiro15:04:25

Could that be what's causing your issue?

plexus15:04:48

ah, that could be the case. I'm in a coffeeshop, not the greatest connection

anmonteiro15:04:52

@plexus here’s what you can do

anmonteiro15:04:08

clone master, cd packages/lumo && npm install .

anmonteiro15:04:16

see if that fixes it

plexus15:04:56

ok, yeah that's almost certainly the problem, after about 30 seconds and 41% into the download it fails

dominicm15:04:02

Oh, I thought that was deployed already. :stuck_out_tongue:

anmonteiro15:04:23

I wanted to deploy 1.4 this week

anmonteiro15:04:33

currently unsure if that’s possible

anmonteiro16:04:37

for all the curious minds out there, I pushed lumo.classpath to master yesterday https://github.com/anmonteiro/lumo/commit/67efbf07047414779db9f5d6ecfd42cb21278dbf

anmonteiro16:04:42

/cc @jonpither

anmonteiro16:04:48

lumo.classpath/add! and lumo.classpath/remove! make it possible to modify the classpath at runtime

dominicm16:04:19

Oooh! dynamic classpath is in?

dominicm16:04:22

That's awesome

dominicm16:04:42

Somehow we solved the problem of requiring dynamically in mach.

anmonteiro16:04:35

probably because Jon had exposed a Lumo internal function

anmonteiro16:04:45

in a PR to Lumo

dominicm16:04:19

Oh I know. But I mean you can't use (require) in the middle of a cljs file. Somehow we did.

anmonteiro16:04:45

I suppose that’s possible in a script

anmonteiro16:04:03

but wouldn’t if compiling a CLJS project

dominicm16:04:23

yeah. Works fine for non-compiled though (same way it does in clojure too I guess?)

jonpither16:04:17

Nice one @anmonteiro, will port Mach to use the new fns when they are out

stbgz17:04:35

nice love the dynamic classpath work I have a few ideas that I wanted to build on top of that

stbgz17:04:11

@plexus I pushed a new npm package with your patches version 0.2.0

anmonteiro17:04:45

@stbgz will be in 1.4

richiardiandrea17:04:41

@anmonteiro curious, how do you resolve maven deps?

anmonteiro17:04:40

@richiardiandrea to be clear, modifying the classpath is just adding folders/JARs to the classpath

anmonteiro17:04:01

meaning you don’t need to quit Lumo and start it with -c /path/to/jar again

richiardiandrea17:04:21

ok yes I then checked, there is no resolution, you have to pass paths :slightly_smiling_face: