clojure-berlin

where Berlin peeps hang out
plexus 2017-02-22T12:02:25.000115Z

hey Berlin people it's Emacs Berlin tonight with talks by @pesterhazy and myself. There will be drinks and pizza and general merriment!

plexus 2017-02-22T12:04:38.000116Z

The talks will be about using Paredit with spacemacs, plus an overview/demo of the various Emacs offerings for Clojure and ClojureScript (cider, inf-clojure, clj-refactor etc)

hans 2017-02-22T12:05:34.000117Z

is there a meeting url that i could forward?

pesterhazy 2017-02-22T13:09:02.000118Z

@hans, http://emacs-berlin.org/

pesterhazy 2017-02-22T13:10:09.000119Z

actually I'll be focussing mostly on Structural Editing in Emacs (with some notes on Spacemacs) - it turns out that Paredit is an interesting concept all by itself

1
pesterhazy 2017-02-22T13:10:37.000121Z

hope that's ok @plexus?

plexus 2017-02-22T13:10:47.000123Z

totally :)

2017-02-22T13:19:34.000124Z

inf-clojure is going to be hotter topic if self-hosted cljs is going to be a hit ๐Ÿ™‚

martinklepsch 2017-02-22T13:34:02.000125Z

inf-clojure is great either way ๐Ÿ˜›

pesterhazy 2017-02-22T13:47:35.000126Z

what if you have a compiler error when re-evaluating the current buffer - does inf-clojure jump to the right line in that case?

2017-02-22T13:49:26.000127Z

the most important feature of cider, flash-sexp ๐Ÿ˜„ doent work with inf-clojure, how can one program without the flash

pesterhazy 2017-02-22T13:49:53.000128Z

:camera_with_flash:

1
martinklepsch 2017-02-22T13:53:58.000130Z

Emacs, yay ๐Ÿ˜„ https://github.com/clojure-emacs/inf-clojure/issues/40

martinklepsch 2017-02-22T13:54:12.000132Z

oh and did I just praise inf-clojure above? ๐Ÿ™ˆ

pesterhazy 2017-02-22T14:03:19.000135Z

hihi

plexus 2017-02-22T15:10:07.000137Z

plexus 2017-02-22T15:10:42.000138Z

^^ anyone here have a clue about this? would be really great to know for the talk that I'm doing tonight ๐Ÿ™‚

pesterhazy 2017-02-22T15:28:55.000139Z

excellent question

martinklepsch 2017-02-22T15:44:11.000140Z

@plexus I think its not a whole lot but a few things that seem notable/clojure specific: inf-clojure-set-ns, inf-clojure-load-file, inf-clojure-macroexpand, inf-clojure-show-arglist, inf-clojure-show-ns-vars, inf-clojure-show-var-source, โ€ฆ

plexus 2017-02-22T15:44:56.000141Z

thanks @martinklepsch that makes sense

plexus 2017-02-22T15:47:52.000142Z

apparently (TIL) you can also point inf-clojure at a host/port to connect to over TCP (e.g. socket repl). Probably also something inferior-lisp doesn't do

martinklepsch 2017-02-22T15:48:36.000143Z

ah, didnโ€™t know, thatโ€™s cool ๐Ÿ‘

2017-02-22T15:52:17.000144Z

it's exactly that part that needs more lovin next months as jvm-free repls get more popular. If one tries out plack/lumo on inf-clojure one steps into a new world riddled with todos.

plexus 2017-02-22T15:54:15.000145Z

yeah was just realizing that, e.g. -set-ns issues clojure.core/in-ns, whereas in CLJS land in-ns is a REPL special form, it shouldn't be prefixed.

plexus 2017-02-22T15:54:35.000146Z

show-ns-vars also doesn't work. macroexpand does

plexus 2017-02-22T15:55:28.000147Z

I have to say setting (setq inf-clojure-program "planck -d"), and doing C-c C-z and have that REPL just there instantly feels great โœจ

2017-02-22T15:56:37.000148Z

ok nice, didnt know that, without the socket repl

martinklepsch 2017-02-22T16:09:21.000149Z

My various inf-clojure programs made available via M-x

(defun boot-repl ()
  (interactive) (inf-clojure "boot repl"))

(defun boot-repl-client ()
  (interactive) (inf-clojure "boot repl --client"))

(defun planck ()
  (interactive) (inf-clojure "planck"))

(defun lein-repl ()
  (interactive) (inf-clojure "lein repl"))

(defun lein-connect ()
  (interactive) (inf-clojure "lein repl :connectโ€))