Fork me on GitHub
#emacs
<
2018-02-08
>
qqq00:02:44

for those coming from a scheme / clojure background, dash.el is tye library that intuitively makes sense right ?

qqq00:02:54

so far, I've found emacs to be full of surprises and dash to be completely intuitive

bozhidar02:02:11

@qqq Emacs Lisp has a long history and it’s focus has never really been FP. dash.el was one attempt to bring some of the lessons learned from Clojure, and it was quite the success.

bozhidar02:02:50

Eventually Emacs added upstream seq.el and map.el which are amazing libraries imo, plus things like thread-first, thread-last, when-let, etc.

bozhidar02:02:22

At this point dash.el is irrelevant, but it was instrumental in pushing Emacs Lisp forward.

qqq02:02:11

@bozhidar: Will you consider writing a "elisp for clojurists" guide some day? I suspect many of us can learn a lot from you.

benedek07:02:53

this is a fabulous idea

benedek07:02:20

you should start this on github @qqq and be the maintener ;)

bostonaholic02:02:34

why not just clojure.el 😜

bostonaholic02:02:53

I may have just nerd sniped myself in working on that this weekend

qqq03:02:09

@bostonaholic: where is clojure.el ? Google is giving me all types of clojure-mode results

bostonaholic03:02:40

I don’t know if it exists. I was just suggesting that it should exist

bostonaholic03:02:55

since you mentioned “elisp for clojurists”

bostonaholic03:02:18

why not just write an elisp lib that brings clojure to elisp

qqq03:02:38

I'm not doing it because I'm a lazy unmotivated jerk.

qqq03:02:48

You should build clojure.el though, I'm sure many would appreciate it!

qqq03:02:04

I've always wanted an editor/ide scriptable in Clojure.

qqq03:02:07

I'd even pay for that.

bostonaholic03:02:26

that’s why I said I probably nerd sniped myself. Which is a way of saying “I think there should be this thing. Shit. Now I want to build said thing.”

bostonaholic03:02:45

I accept BTC and BCH 😜

qqq03:02:59

Sure -- show a working prototype! 🙂

qqq03:02:15

I was unfamiliar with the term "nerd sniped" -- take a look at https://github.com/mogenslund/liquid -- it's the most promising I've seen so far.

qqq03:02:32

It has console, java/awt, and cljs/dom/web browswer front end. It's 100% scriptale in clojure.

qqq03:02:47

The dev is brilliant and very responsible on #liquid

qqq03:02:18

@bostonaholic: in paritcular, I think "build editor/IDE on clojure" is better in the long run than "build a clojure-like lib on top of emacs lisp"

benedek07:02:51

there is deuce as well for the curious, aka emacs in clojure

bozhidar13:02:21

> “build editor/IDE on clojure” is better in the long run than

bozhidar13:02:07

That assumes that Clojure is all you care about, but I personally have interest in many areas and prefer using universal tools instead of specialized.

qqq15:02:00

@bozhidar: that is absolutely true. I currently use two languages: clj/cljs/cljc + ELisp I'm trying to reduce it down to one: clj/cljs/cljc

qqq15:02:30

After getting rid of emacs, next step is to get rid of the shell, and do all scripting in the repl too.

qqq15:02:23

The other thing is: as long as we want general edito rsupport, we're going to use something like the "sliing buffer", where we store "text before cursor" "text after cursor" whereas I really really want a structural editor

Ryan Radomski15:02:36

@qqq Do you see a benefit of only one language?

qqq15:02:21

@radomski: Why do you assume multi-language = good ?

Ryan Radomski15:02:57

No assumptions, just a question

qqq15:02:42

So here's the thing, if you build an editor that supports multiple langauges, the focus is "w3e want to build thsi generic interface, --- and if we can't do this in python/ruby/.... maybe we shoulnd't do it for Clojure."

qqq15:02:55

Whereas, if, starting out, one says "fuck it, all we care about is Clojure", there can be very deep repl/jvm integration.

qqq15:02:44

And I'm not saying we ban other programming languages -- they can continue to use vim / emacs / textmate / atom / ...., I'm just saying we should build an editor/ide taht focuses solely on Clojure + JVM integration, andnot give a damn about any other language.

Ryan Radomski15:02:58

I agree, Everything in every language > everything in clojure > some things in every language.

Ryan Radomski15:02:14

However the shell is nice too, things like sed are pretty handy to have lying around

qqq15:02:37

I'm not convinced "|" in shell is better than (-> ...) in cloljure.

qqq15:02:16

Also, in shell, you can really only pipe streams of text. With (-> ...) you can pipe streams of STRUCTURED DATA 🙂

Ryan Radomski15:02:39

The two are able to coexist. Sed can manipulate some sttructured text and return it with only string replacements then clojure can read the string and do stuctural manipulation. I don't personally do it, but I find it hard to say it would be impossible to be useful

qqq15:02:32

If I had a clojure shell, I don't see any reason I'd ever use sed / grep / awk instead of Clojure's regexps.

mpenet16:02:18

Did you try closh?

Ryan Radomski15:02:37

I suppose if you never wanted to do anything new with the hardware, you wouldn't run into a use case where you would need the system

qqq16:02:07

===== I am not sure if this is an Emacs issue or an Evil issue. Suppose I do a regex search on a pattern of the form "^..." then I do (goto-char (match-beginning 0)) is this supposed to : 1. put me on first char of matching line OR 2. put me on last char of previous line? Because I am expecting (1), but getting (2) -- and I don't know if this is an emacs issue or an evil issue.

dpsutton17:02:35

(defun my-thing ()
      (interactive)
      (re-search-forward "^(declare")
      (goto-char (match-beginning 0)))
works just fine for me. puts it on the line

dpsutton17:02:28

i'm not an evil user.

qqq19:02:23

Is there an emacs command for "list all bitmap fonts" available? I purposely want to avoid TrueType due to aliasing / anti aliasing issues.