planck

Planck ClojureScript REPL
Ahmed Hassan 2020-04-15T16:32:48.001800Z

Why isn't goog.events included in Planck?

mfikes 2020-04-15T16:34:10.002200Z

@ahmed1hsn It looks like it actually is.

mfikes 2020-04-15T16:34:22.002500Z

$ plk
ClojureScript 1.10.597
cljs.user=> (require 'goog.events)
nil
cljs.user=> js/goog.events
#js {:EventId #object[Function],
     :Listenable #object[Function],
     :ListenableKey #object[Function],
     :Event #object[Function],
     :EventLike #js {},
...

💯 1
Ahmed Hassan 2020-04-15T16:35:18.003100Z

@mfikes I was referring docs. Thanks 🙂

mfikes 2020-04-15T16:39:12.004100Z

Thanks @ahmed1hsn; logged https://github.com/planck-repl/planck/issues/1029

👍 1
Ahmed Hassan 2020-04-15T16:42:15.006100Z

Can we access and use browser APIs (e.g. File, Blob, Canvas etc) from Planck?

mfikes 2020-04-15T16:42:51.006600Z

Planck only has JavaScript core and some additional things added to it.

👍 1
mfikes 2020-04-15T16:43:03.006900Z

So, for example, there is file IO

👍 1
mfikes 2020-04-15T16:44:03.007700Z

(But file IO is exposed via <http://planck.io|planck.io> , mimicking <http://clojure.java.io|clojure.java.io> )

👍 1
vigilancetech 2020-04-15T20:16:53.008400Z

what version of cljs does planck use?

mfikes 2020-04-15T20:17:53.009100Z

@vigilancetech You can always evaluate *clojurescript-version* in any ClojureScript environment to see

mfikes 2020-04-15T20:19:08.009900Z

The version of Planck you have also most likely indicates the version of ClojureScript it is using in the one-liner it spits out when you start up a REPL with it.

vigilancetech 2020-04-15T20:25:33.010600Z

okay, maybe the better question should be: how hard is it for me to build it with the version that I want (e.g. the latest)?

vigilancetech 2020-04-15T20:25:56.010900Z

e.g. is it locked in to certain versions like lumo?

mfikes 2020-04-15T20:44:51.011600Z

@vigilancetech It is pretty easy to re-build Planck. See https://github.com/planck-repl/planck#building The currently-released version of Plank matches the released version of ClojureScript.

mfikes 2020-04-15T20:45:28.012200Z

Planck does indeed compile into it a locked version of ClojureScript.

vigilancetech 2020-04-15T23:04:55.012800Z

any idea when it's going to get updated to the latest so I can play with prepl (maybe get spiral going with it)?

pyrmont 2020-04-15T23:06:37.013400Z

Does self-hosted CLJS have pREPL?

pyrmont 2020-04-15T23:08:07.014100Z

I was exploring adding it in this PR: https://github.com/planck-repl/planck/pull/912

pyrmont 2020-04-15T23:10:10.015100Z

(At the time at least you had to add it separately because it's provided in CLJS via the Clojure JVM layer.)

mfikes 2020-04-15T23:15:15.016600Z

Planck is already running the latest ClojureScript (1.10.597). There is some work that Ray McDermott did in Replete in support of pREPL, but I don't know if it is limited to the Clojure side of things and the web implementation. (See https://github.com/replete-repl/replete-web)

mfikes 2020-04-15T23:19:12.017600Z

(I only mention this because Replete is self-hosted and Planck is derived ultimately from the same codebase.)

vigilancetech 2020-04-15T23:54:21.020400Z

okay, thanks guys. I'll check it out!