From mboxrd@z Thu Jan 1 00:00:00 1970 From: stardiviner Subject: Re: ob-clojure should not tangle with inserting (ns ..) line when no :ns specified. Date: Mon, 03 Dec 2018 14:25:00 +0800 Message-ID: <87woorm8jn.fsf@gmail.com> References: <877egvj6l2.fsf@gmail.com> <87a7lq1cn1.fsf@gmail.com> Reply-To: numbchild@gmail.com Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40787) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gThfI-00021J-Ac for emacs-orgmode@gnu.org; Mon, 03 Dec 2018 01:25:09 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gThfC-0001tD-W5 for emacs-orgmode@gnu.org; Mon, 03 Dec 2018 01:25:08 -0500 Received: from [61.175.244.13] (port=50872 helo=dark.localdomain) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gThfC-0001sb-KZ for emacs-orgmode@gnu.org; Mon, 03 Dec 2018 01:25:02 -0500 In-reply-to: <87a7lq1cn1.fsf@gmail.com> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: "Emacs-orgmode" To: Tim Cross Cc: org-mode Tim Cross writes: > I think the problem here is that really, project.clj is not a valid > clojure source file. It is really a clojure data file or clojure > snippet (I mean in the sense that you cannot execute it or include it as > a dependency within a clojure program - it is input data for the lein > build tool). If lein was being developed from scratch today, rather than > project.clj, you would probably have project.edn. Actually a few months ago, Sean on Slack clojurians helped me out for using clj and deps.edn. Just because of habit inertia. I'm still using Leiningen. As you said, the Clojure community is moving to clj/clojure + deps.edn. I decide to following the trend. Start to use it now. > > The question is, should we allow setting ns to nil/"", preventing > inclusion of a ns line, which would make 'real' clojure source files > invalid just to support this edge case or should we consider an > alternative solution e.g. > > - have a 'lein-project' source type which could perhaps provide > additional support for editing project.clj files (as I suspect lein is > on the way out - replaced with things like clj or boot) > - try using edn-mode and having support for edn as a valid language > type. I've never used edn mode and I'm not 100% certain project.clj > and edn are completely compatible. > > It seems to me that the preferred build tool is likely to become clj or > derivatives of clj. I've noticed increasingly longer delays in new lein > releases (the 'reflection' warning has been there for nearly 12 months > now, as has the incorrect classpath warning on some platforms). > > In the long-term, I think org would probably benefit from integration > with clj rather than cider for ob-clojure as it is likely to be more > stable and less complex. Using cider has always felt like pushing a > square peg into a round hole to me. I remember we have a short discussion about ob-clojure use clj instead of CIDER before. I totally agree on this. Seems already has an Emacs package named "inf-clojure". I added this "integrate inf-clojure to ob-clojure" as my task. But not sure when to check it out. I have many tasks on my list. I have an idea, would you create an GitHub repo for this? I would like to contribute on it. As I said previous, if I use "deps.edn", use `edn-mode' would solve this problem. But there is no `edn-mode'. I checked out MELPA, only has package named "edn" which is used to Support for reading and writing the edn data format from elisp. I also did a search on GitHub. No luck. Anyway, I'm going to switch to clj + deps.edn And Thanks, @Tim. -- [ stardiviner ] I try to make every word tell the meaning what I want to express. Blog: https://stardiviner.github.io/ IRC(freenode): stardiviner, Matrix: stardiviner GPG: F09F650D7D674819892591401B5DF1C95AE89AC3