benfb / gorilla-repl Goto Github PK
View Code? Open in Web Editor NEWA fork of Jony Epsilon's rich REPL for Clojure in the notebook style.
License: MIT License
A fork of Jony Epsilon's rich REPL for Clojure in the notebook style.
License: MIT License
Saving without markup and then loading back in adds an extra newline at the end. These accumulate over time, and even the first one generates unhelpful git diffs.
Previously added as JonyEpsilon/gorilla-repl#286
Gorilla REPL is a fabulous coding environment for Clojure newcomers, but installing Java and leiningen is often a non-trivial hurdle, sometimes even a showstopper. I don't know if/how this is possible, but I believe that Zach Oakes managed to do it with at least one of his projects, either Nightcode or Lightmod.
Hi, is it possible to run "gorilla-repl" embedded with an uberjar?
I have a -main
function where I have the following:
(g/run-gorilla-server {
:port 8990 :ip "0.0.0.0"
:nrepl-port 0)
When I run it through lein run
, the repl / http server starts and I can eval expressions. When I use lein uberjar
to build a standalone jar, everything starts normally and I can navigate to the repl, however, when I try and evaluate an expression I get the following stacktrace:
ERROR: Unhandled REPL handler exception processing message {:code (ns pacific-temple
(:require [gorilla-plot.core :as plot])), :id 7a420444-f8be-43ad-bd7b-4905416985e5, :nrepl.middleware.print/print gorilla-repl.render-values-mw/custom-renderer, :op eval, :session 57a69560-f5d9-409f-a6ef-cceec9184f1a}
java.lang.NullPointerException
at clojure.core$deref_future.invokeStatic(core.clj:2300)
at clojure.core$deref.invokeStatic(core.clj:2320)
at clojure.core$deref.invoke(core.clj:2306)
at cider.nrepl$wrap_tracker$fn__18941.invoke(nrepl.clj:460)
at nrepl.middleware$wrap_conj_descriptor$fn__18158.invoke(middleware.clj:16)
at nrepl.middleware.session$session$fn__18536.invoke(session.clj:297)
at nrepl.middleware$wrap_conj_descriptor$fn__18158.invoke(middleware.clj:16)
at nrepl.server$handle_STAR_.invokeStatic(server.clj:19)
at nrepl.server$handle_STAR_.invoke(server.clj:16)
at nrepl.server$handle$fn__18722.invoke(server.clj:36)
at clojure.core$binding_conveyor_fn$fn__5754.invoke(core.clj:2030)
at clojure.lang.AFn.call(AFn.java:18)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
I am not sure what the difference is between running it though lein, and the uberjar. Am I missing a dependency / is this even possible?
Thanks!
Currently, if you start a long-running evaluation (maybe even an infinite loop) and want to kill it, you have to kill the server, start a fresh one, and reopen/reload everything to continue working.
It would be great to have a way to kill the evaluation and continue working without all of those steps.
If it is necessary to kill and restart the server, then it would be nice if that could be done automatically. But it'd be better if the killing and restarting could be avoided altogether.
After updating to the latest version of leiningen and then doing lein new gorilla-app projects
and cd projects
, lein gorilla
gives me the error with the trace below.
My Java version info is:
java version "1.8.0_40"
Java(TM) SE Runtime Environment (build 1.8.0_40-b26)
Java HotSpot(TM) 64-Bit Server VM (build 25.40-b25, mixed mode)
Do I have to upgrade to 1.9 or something? I don't want to go down that path unless it's really the issue.
clojure.lang.Compiler$CompilerException: Syntax error compiling var at (cider/nrepl/middleware/pprint.clj:73:3).
#:clojure.error{:phase :compile-syntax-check, :line 73, :column 3, :source "cider/nrepl/middleware/pprint.clj", :symbol var}
at clojure.lang.Compiler.analyzeSeq (Compiler.java:7114)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$InvokeExpr.parse (Compiler.java:3820)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7108)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$BodyExpr$Parser.parse (Compiler.java:6120)
clojure.lang.Compiler$LetExpr$Parser.parse (Compiler.java:6436)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7106)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7094)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$BodyExpr$Parser.parse (Compiler.java:6120)
clojure.lang.Compiler$FnMethod.parse (Compiler.java:5467)
clojure.lang.Compiler$FnExpr.parse (Compiler.java:4029)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7104)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7094)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.access$300 (Compiler.java:38)
clojure.lang.Compiler$DefExpr$Parser.parse (Compiler.java:596)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7106)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler.eval (Compiler.java:7180)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:457)
cider.nrepl$eval4413$loading__6706__auto____4414.invoke (nrepl.clj:1)
cider.nrepl$eval4413.invokeStatic (nrepl.clj:1)
cider.nrepl$eval4413.invoke (nrepl.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:482)
gorilla_repl.nrepl$eval3142$loading__6706__auto____3143.invoke (nrepl.clj:1)
gorilla_repl.nrepl$eval3142.invokeStatic (nrepl.clj:1)
gorilla_repl.nrepl$eval3142.invoke (nrepl.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:805)
gorilla_repl.core$eval668$loading__6706__auto____669.invoke (core.clj:5)
gorilla_repl.core$eval668.invokeStatic (core.clj:5)
gorilla_repl.core$eval668.invoke (core.clj:5)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.gorilla$eval662$loading__6706__auto____663.invoke (gorilla.clj:7)
leiningen.gorilla$eval662.invokeStatic (gorilla.clj:7)
leiningen.gorilla$eval662.invoke (gorilla.clj:7)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:105)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.main$lookup_task_var.invokeStatic (main.clj:69)
leiningen.core.main$lookup_task_var.invoke (main.clj:65)
leiningen.core.main$pass_through_help_QMARK_.invokeStatic (main.clj:79)
leiningen.core.main$pass_through_help_QMARK_.invoke (main.clj:73)
leiningen.core.main$task_args.invokeStatic (main.clj:82)
leiningen.core.main$task_args.invoke (main.clj:81)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:339)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__6681.invoke (main.clj:452)
leiningen.core.main$_main.invokeStatic (main.clj:442)
leiningen.core.main$_main.doInvoke (main.clj:439)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.main$main_opt.invokeStatic (main.clj:491)
clojure.main$main_opt.invoke (main.clj:487)
clojure.main$main.invokeStatic (main.clj:598)
clojure.main$main.doInvoke (main.clj:561)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.main.main (main.java:37)
Caused by: java.lang.RuntimeException: Unable to resolve var: session/session-out in this context
at clojure.lang.Util.runtimeException (Util.java:221)
clojure.lang.Compiler$TheVarExpr$Parser.parse (Compiler.java:720)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7106)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$InvokeExpr.parse (Compiler.java:3820)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7108)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$BodyExpr$Parser.parse (Compiler.java:6120)
clojure.lang.Compiler$LetExpr$Parser.parse (Compiler.java:6436)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7106)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7094)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler$BodyExpr$Parser.parse (Compiler.java:6120)
clojure.lang.Compiler$FnMethod.parse (Compiler.java:5467)
clojure.lang.Compiler$FnExpr.parse (Compiler.java:4029)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7104)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7094)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.access$300 (Compiler.java:38)
clojure.lang.Compiler$DefExpr$Parser.parse (Compiler.java:596)
clojure.lang.Compiler.analyzeSeq (Compiler.java:7106)
clojure.lang.Compiler.analyze (Compiler.java:6789)
clojure.lang.Compiler.analyze (Compiler.java:6745)
clojure.lang.Compiler.eval (Compiler.java:7180)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:457)
cider.nrepl$eval4413$loading__6706__auto____4414.invoke (nrepl.clj:1)
cider.nrepl$eval4413.invokeStatic (nrepl.clj:1)
cider.nrepl$eval4413.invoke (nrepl.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:482)
gorilla_repl.nrepl$eval3142$loading__6706__auto____3143.invoke (nrepl.clj:1)
gorilla_repl.nrepl$eval3142.invokeStatic (nrepl.clj:1)
gorilla_repl.nrepl$eval3142.invoke (nrepl.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:805)
gorilla_repl.core$eval668$loading__6706__auto____669.invoke (core.clj:5)
gorilla_repl.core$eval668.invokeStatic (core.clj:5)
gorilla_repl.core$eval668.invoke (core.clj:5)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.gorilla$eval662$loading__6706__auto____663.invoke (gorilla.clj:7)
leiningen.gorilla$eval662.invokeStatic (gorilla.clj:7)
leiningen.gorilla$eval662.invoke (gorilla.clj:7)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:105)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.main$lookup_task_var.invokeStatic (main.clj:69)
leiningen.core.main$lookup_task_var.invoke (main.clj:65)
leiningen.core.main$pass_through_help_QMARK_.invokeStatic (main.clj:79)
leiningen.core.main$pass_through_help_QMARK_.invoke (main.clj:73)
leiningen.core.main$task_args.invokeStatic (main.clj:82)
leiningen.core.main$task_args.invoke (main.clj:81)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:339)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__6681.invoke (main.clj:452)
leiningen.core.main$_main.invokeStatic (main.clj:442)
leiningen.core.main$_main.doInvoke (main.clj:439)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.main$main_opt.invokeStatic (main.clj:491)
clojure.main$main_opt.invoke (main.clj:487)
clojure.main$main.invokeStatic (main.clj:598)
clojure.main$main.doInvoke (main.clj:561)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.main.main (main.java:37)
The rest of the cell is blank, until I click in the cell, whereupon it displays.
This is under MacOS 12.12.6 in Safari 12.0.1 and Chrome 70.0.3538.110. Persists after system restart.
Under some conditions a cell scrolls suddenly to the previous insertion point when you try to click elsewhere in order to edit.
This seems to me to reproduce the problem every time:
Put a couple dozen function definitions in a single cell.
Click in the cell somewhere near the beginning to place the insertion point ther.
Hit shift-return (on a mac -- maybe it's enter elsewhere?) to evaluate everything in the cell.
Scroll to near the bottom of the cell and click in it, as you would to change some of the code there.
The cell scrolls instantly to the old insertion point.
It shouldn't do this. When you click it should just move the insertion point to where you clicked.
This happens at least under (recent) Mac OS X, in both Safari and Chrome.
Previously raised as https://github.com/JonyEpsilon/gorilla-repl/issues/#273
I do this all of the time, to open another file in a project I'm working on:
Select and copy the appropriate prefix of the URL from the address bar (like "http://127.0.0.1:51712/worksheet.html").
Create a new tab in my browser the ordinary way.
Paste in the copied URL and hit return.
(Sometimes) use the load file command to open an existing file.
It works okay, but it's a bit janky, especially the "select and copy the appropriate prefix of the URL" part.
It'd be even nicer if there was a command to open a new worksheet directly from the Gorilla REPL menu and command keys.
If Gorilla REPL could be launched without an existing project (ideally from the browser rather than the command line), and if new projects could be created from within Gorilla REPL, then many beginners could do everything that they need to do to learn and use Clojure from within Gorilla REPL, without having to learn to use the command line or leiningen or anything else. This would significantly lower the barrier for entry to Clojure programming for total novices.
Hi, running lein gorilla
gives me the following error:
clojure.lang.Compiler$CompilerException: Syntax error macroexpanding clojure.core/ns at (ring/util/mime_type.clj:1:1).
#:clojure.error{:phase :macro-syntax-check, :line 1, :column 1, :source "ring/util/mime_type.clj", :symbol clojure.core/ns}
at clojure.lang.Compiler.checkSpecs (Compiler.java:6971)
clojure.lang.Compiler.macroexpand1 (Compiler.java:6987)
clojure.lang.Compiler.macroexpand (Compiler.java:7074)
clojure.lang.Compiler.eval (Compiler.java:7160)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:669)
clojure.core$use.invokeStatic (core.clj:6093)
clojure.core$use.doInvoke (core.clj:6093)
clojure.lang.RestFn.invoke (RestFn.java:421)
ring.middleware.content_type$eval1391$loading__6706__auto____1392.invoke (content_type.clj:1)
ring.middleware.content_type$eval1391.invokeStatic (content_type.clj:1)
ring.middleware.content_type$eval1391.invoke (content_type.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:669)
clojure.core$use.invokeStatic (core.clj:6093)
clojure.core$use.doInvoke (core.clj:6093)
clojure.lang.RestFn.invoke (RestFn.java:512)
compojure.route$eval1243$loading__6706__auto____1244.invoke (route.clj:1)
compojure.route$eval1243.invokeStatic (route.clj:1)
compojure.route$eval1243.invoke (route.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:703)
gorilla_repl.core$eval668$loading__6706__auto____669.invoke (core.clj:5)
gorilla_repl.core$eval668.invokeStatic (core.clj:5)
gorilla_repl.core$eval668.invoke (core.clj:5)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.gorilla$eval662$loading__6706__auto____663.invoke (gorilla.clj:7)
leiningen.gorilla$eval662.invokeStatic (gorilla.clj:7)
leiningen.gorilla$eval662.invoke (gorilla.clj:7)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:105)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.main$lookup_task_var.invokeStatic (main.clj:69)
leiningen.core.main$lookup_task_var.invoke (main.clj:65)
leiningen.core.main$pass_through_help_QMARK_.invokeStatic (main.clj:79)
leiningen.core.main$pass_through_help_QMARK_.invoke (main.clj:73)
leiningen.core.main$task_args.invokeStatic (main.clj:82)
leiningen.core.main$task_args.invoke (main.clj:81)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:339)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__6771.invoke (main.clj:449)
leiningen.core.main$_main.invokeStatic (main.clj:439)
leiningen.core.main$_main.doInvoke (main.clj:436)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.main$main_opt.invokeStatic (main.clj:491)
clojure.main$main_opt.invoke (main.clj:487)
clojure.main$main.invokeStatic (main.clj:598)
clojure.main$main.doInvoke (main.clj:561)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.main.main (main.java:37)
Caused by: clojure.lang.ExceptionInfo: Call to clojure.core/ns did not conform to spec.
#:clojure.spec.alpha{:problems [{:path [], :reason "Extra input", :pred (clojure.spec.alpha/cat :attr-map (clojure.spec.alpha/? clojure.core/map?) :ns-clauses :clojure.core.specs.alpha/ns-clauses), :val ((require [clojure.string :as str])), :via [:clojure.core.specs.alpha/ns-form], :in [2]}], :spec #object[clojure.spec.alpha$regex_spec_impl$reify__2509 0x635572a7 "clojure.spec.alpha$regex_spec_impl$reify__2509@635572a7"], :value (ring.util.mime-type "Utility functions for finding out the mime-type of a file." (require [clojure.string :as str])), :args (ring.util.mime-type "Utility functions for finding out the mime-type of a file." (require [clojure.string :as str]))}
at clojure.spec.alpha$macroexpand_check.invokeStatic (alpha.clj:705)
clojure.spec.alpha$macroexpand_check.invoke (alpha.clj:697)
clojure.lang.AFn.applyToHelper (AFn.java:156)
clojure.lang.AFn.applyTo (AFn.java:144)
clojure.lang.Var.applyTo (Var.java:705)
clojure.lang.Compiler.checkSpecs (Compiler.java:6969)
clojure.lang.Compiler.macroexpand1 (Compiler.java:6987)
clojure.lang.Compiler.macroexpand (Compiler.java:7074)
clojure.lang.Compiler.eval (Compiler.java:7160)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:669)
clojure.core$use.invokeStatic (core.clj:6093)
clojure.core$use.doInvoke (core.clj:6093)
clojure.lang.RestFn.invoke (RestFn.java:421)
ring.middleware.content_type$eval1391$loading__6706__auto____1392.invoke (content_type.clj:1)
ring.middleware.content_type$eval1391.invokeStatic (content_type.clj:1)
ring.middleware.content_type$eval1391.invoke (content_type.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:669)
clojure.core$use.invokeStatic (core.clj:6093)
clojure.core$use.doInvoke (core.clj:6093)
clojure.lang.RestFn.invoke (RestFn.java:512)
compojure.route$eval1243$loading__6706__auto____1244.invoke (route.clj:1)
compojure.route$eval1243.invokeStatic (route.clj:1)
compojure.route$eval1243.invoke (route.clj:1)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:703)
gorilla_repl.core$eval668$loading__6706__auto____669.invoke (core.clj:5)
gorilla_repl.core$eval668.invokeStatic (core.clj:5)
gorilla_repl.core$eval668.invoke (core.clj:5)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:436)
leiningen.gorilla$eval662$loading__6706__auto____663.invoke (gorilla.clj:7)
leiningen.gorilla$eval662.invokeStatic (gorilla.clj:7)
leiningen.gorilla$eval662.invoke (gorilla.clj:7)
clojure.lang.Compiler.eval (Compiler.java:7176)
clojure.lang.Compiler.eval (Compiler.java:7165)
clojure.lang.Compiler.load (Compiler.java:7635)
clojure.lang.RT.loadResourceScript (RT.java:381)
clojure.lang.RT.loadResourceScript (RT.java:372)
clojure.lang.RT.load (RT.java:463)
clojure.lang.RT.load (RT.java:428)
clojure.core$load$fn__6824.invoke (core.clj:6126)
clojure.core$load.invokeStatic (core.clj:6125)
clojure.core$load.doInvoke (core.clj:6109)
clojure.lang.RestFn.invoke (RestFn.java:408)
clojure.core$load_one.invokeStatic (core.clj:5908)
clojure.core$load_one.invoke (core.clj:5903)
clojure.core$load_lib$fn__6765.invoke (core.clj:5948)
clojure.core$load_lib.invokeStatic (core.clj:5947)
clojure.core$load_lib.doInvoke (core.clj:5928)
clojure.lang.RestFn.applyTo (RestFn.java:142)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$load_libs.invokeStatic (core.clj:5985)
clojure.core$load_libs.doInvoke (core.clj:5969)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.core$apply.invokeStatic (core.clj:667)
clojure.core$require.invokeStatic (core.clj:6007)
clojure.core$require.doInvoke (core.clj:6007)
clojure.lang.RestFn.invoke (RestFn.java:408)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:102)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.utils$require_resolve.invokeStatic (utils.clj:105)
leiningen.core.utils$require_resolve.invoke (utils.clj:95)
leiningen.core.main$lookup_task_var.invokeStatic (main.clj:69)
leiningen.core.main$lookup_task_var.invoke (main.clj:65)
leiningen.core.main$pass_through_help_QMARK_.invokeStatic (main.clj:79)
leiningen.core.main$pass_through_help_QMARK_.invoke (main.clj:73)
leiningen.core.main$task_args.invokeStatic (main.clj:82)
leiningen.core.main$task_args.invoke (main.clj:81)
leiningen.core.main$resolve_and_apply.invokeStatic (main.clj:339)
leiningen.core.main$resolve_and_apply.invoke (main.clj:336)
leiningen.core.main$_main$fn__6771.invoke (main.clj:449)
leiningen.core.main$_main.invokeStatic (main.clj:439)
leiningen.core.main$_main.doInvoke (main.clj:436)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.core$apply.invokeStatic (core.clj:665)
clojure.main$main_opt.invokeStatic (main.clj:491)
clojure.main$main_opt.invoke (main.clj:487)
clojure.main$main.invokeStatic (main.clj:598)
clojure.main$main.doInvoke (main.clj:561)
clojure.lang.RestFn.applyTo (RestFn.java:137)
clojure.lang.Var.applyTo (Var.java:705)
clojure.main.main (main.java:37)
example project.clj
generated using lein new app gorilla
:
(defproject gorilla "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "EPL-2.0 OR GPL-2.0-or-later WITH Classpath-exception-2.0"
:url "https://www.eclipse.org/legal/epl-2.0/"}
:dependencies [[org.clojure/clojure "1.10.0"]]
:plugins [[lein-gorilla "0.4.0"]]
:main ^:skip-aot gorilla.core
:target-path "target/%s"
:profiles {:uberjar {:aot :all}})
lein --version
:
Leiningen 2.9.0 on Java 1.8.0_171 Java HotSpot(TM) 64-Bit Server VM
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.