From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tim Cross Subject: Re: ob-clojure.el is not compatible with new CIDER API Date: Mon, 30 Jul 2018 08:14:22 +1000 Message-ID: <87fu01u1tt.fsf@gmail.com> References: <877elva0qj.fsf@gmail.com> <87tvoww51l.fsf@gmail.com> <87efftp83f.fsf@gmail.com> <87o9eqp80z.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:40031) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fjtxO-0007Cg-2W for emacs-orgmode@gnu.org; Sun, 29 Jul 2018 18:14:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fjtxN-0006mY-3r for emacs-orgmode@gnu.org; Sun, 29 Jul 2018 18:14:30 -0400 Received: from mail-pl0-x233.google.com ([2607:f8b0:400e:c01::233]:39630) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fjtxM-0006mE-TW for emacs-orgmode@gnu.org; Sun, 29 Jul 2018 18:14:29 -0400 Received: by mail-pl0-x233.google.com with SMTP id m1-v6so4589939plt.6 for ; Sun, 29 Jul 2018 15:14:28 -0700 (PDT) In-reply-to: <87o9eqp80z.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: numbchild@gmail.com Cc: Org-mode No, there is no public repo and I'm not sure I even kept what little I had done - it was just a hacked elisp file. I'll have a look through my elisp archive, but don't expect much. Over the weekend, I caught up on a bit of clojure and things have progressed in the last few months. I notice the clj tool seems quite mature and there is now support for clojurescript with it as well. Don't know if inf-clojure will move (has already moved?) to be based around it or not? At any rate, I think you are probably better off starting from scratch rather than trying to 'adjust' the existing package. There are some cases where I can see someone wanting cider/slime support, but for the majority of cases, just plain clojure via inf-clojure or clojure/clj or one of the many available repl clients should be fairly straight forward. The real challenge is in deciding how to handle interaction between different clojure blocks and their dependencies. The simple solution would likely be to just start some form of repl session and have all blocks sent to that session. However, you then need to decide how to handle matters when someone opens a new org file. You probably don't want old definitions/artifacts from the previous session in the repl, so you would need a clean way of managing multiple sessions (one per org file?). Apart from that, all you really need is the ability to send a form to the repl and read back the result. The inf-clojure package already has most of the infrastructure for doing that, but from memory, it was a little hard to fit it into the existing structure of ob-clojure.el - which is why you may be better off just implementing an ob-inf-clojure.el rather than try to add a 3rd method to the existing package (which supports cide and the old slime-clojure interfaces). stardiviner writes: > Tim Cross writes: > >> I did begin to look at it. From memory, the inf-clojure integration didn't look that hard, >> but it did require some additional scaffolding to mae the comms work well. I then got >> distracted with a new job and haven't had time to go back to it. Currently, I've not had time >> to do any Clojure work, so it is not high on the priority list. >> > > Can I see your work? Do you have any public source code repository online of this? -- Tim Cross