I've lately been working in Python, and even with IPython/Juptyer the workflow isn't quite as magical as Clojure's.
I've lately been working in Python, and even with IPython/Juptyer the workflow isn't quite as magical as Clojure's.
It’s also kind of weird that a lot of other languages do not have this
Sadly, it's only at $31 per month
Also the cider environment is kind of brittle with seemingly lots of components, all of whose versions needs up to align for the magic to work.
And another issue with clojure and leiningen is the almost impossiblity of using local jars as dependencies, without setting up local maven repositories. Too much work for what I was doing for fun.
Often times I run a long-ish/effectful function (web request, network request, etc.) and wonder what the value was somewhere in the function, but unfortunately I didn't have the foresight to do a (def -my-value value) ahead of time.
With gumshoe, it's all automatically captured, so I can pop the values into my repl and play with them to understand what happened.
A few examples:
user> (deft add-ten [num]
(+ num 10))
#'user/add-ten
user> (add-ten 2)
12
user> -add-ten-num
2*
user> (deft destructure-example [{:keys [a b] :as args}]
a)
#'user/destructure-example
user> -destructure-example-a
1
user> -destructure-example-b
nil
user> -destructure-example-args
{:a 1, :c 2}
Anyway, it's quite surprising how often this saves my bacon. And it pairs very nicely with cider indeed!That said I find IPython supports everything you’d want to do in Python save multithreaded profiling for which Yuppi is useful.
--
[0] - https://xkcd.com/297/
Did/do people really develop applications interactively in VS other than in F# Interactive? I've been using VS a long time for VB6 and C#, only in edit/compile/execute-debug mode.
Visual Studio has been around since 1997 (which is pretty cool!). Emacs has been around since 1976, although I don't know how far back it got a decent Lisp development environment. Early 80s, maybe?
Interlisp development environment: early 70s.
Interlisp-D: Early 80s.
MIT Lisp Machine + Zmacs: end 70s.
Macintosh Common Lisp, LispWorks, Allegro CL, and many others ...: mid-end 80s.
GNU Emacs based Lisp development: end 80s.