Re: Proposed New Structure (starter for 10)
Paul Landes <[email protected]> Wed, 26 Aug 2015 08:55:17 -0500
| Newsgroups | gmane.emacs.jdee.devel |
|---|---|
| Message-ID | <[email protected]> |
I really don't see much downside to leaving CIDER a dependency. Development of JDEE via cider/Clojure I think would be much faster and it has a solid development community. Is the proposed change to nrepl-client.el going to be merged and maintained in the CIDER code base? If it's a fork we might want to think about just staying with CIDER indefinitely. I agree about CIDER--worked with it quit a bit and it is solid. To reiterate what you mentioned earlier it already gives a lot of what JDEE needs (i.e. javadoc, source etc). I also very much agree with letting the build tool manage (class/source) paths, which would lead to wacking a lot of code and a simpler JDEE. On Aug 26, 2015, at 8:20 AM, Phillip Lord <[email protected]> wrote: > > There is a dependency on cider, yes. > > My initial feeling was that this could be a short term dependency till > nrepl-client.el was wound out, but in practice, I am using cider for > other things. As well as programmatic JVM access (for Emacs to use), it > also provides a nice shell for users to access the JVM directly. And a > significant amount of the middleware and UI is going to be useful to > both. > > I've also been looking a malabar mode, though, and I do wonder whether I > am achieving anything that is not already there. It's an open question I > think. > > The other question is one about data -- I believe that we should reduce > the number of things that JDEE knows about as far as possible -- > classpath for instance, and leave that to the build tool (whether that > is maven, ant or gradle). But this is a big change and one likely to > have many implications. > > > > Paul Landes <[email protected]> writes: > >> So there is no dependency on Cider? >> >> I'll take a look at some point soon as I'm up to my ears in work. >> >> >> On Aug 25, 2015, at 5:17 PM, Phillip Lord <[email protected]> wrote: >> >>> >>> Lee Hinman <[email protected]> writes: >>>>> I have advanced this somewhat now and would be interested in opinions. >>>>> I now have a worked nREPL connection to a live JVM running over the >>>>> project. This provides the equivalent of the "beanshell interpreter" >>>>> from a user perspective (i.e a shell) and can also be used to drive >>>>> JVM interaction for things like introspection. >>>> >>>> I took a look, looks cool and seems to work! >>> >>> Good! >>> >>>> >>>>> Unlike, beanshell, I think we can easily support class reloading (i.e. >>>>> live update the JVM for newly compiled classes), and extension of the >>>>> classpath (so we can add new maven dependencies without restarting). >>>>> We should be able to steal a lot of work from Cider (it's stacktrace >>>>> support is nice!). >>>> >>>> Something that will have to be ironed out is redirection of streams, I >>>> noticed that Standard Out went into the *Messages* buffer, but that >>>> shouldn't be too hard to hook up. >>> >>> Actually, that's a fake! Standard Out actually goes to a process buffer. >>> I just "tee" it to the *Messages* buffer so I can see what it says. >>> >>> I need to do something more intelligent, I agree. In the ideal world, it >>> should be silent if it works, and popup a buffer if it crashes. >>> >>> >>> >>>>> The build is a little baroque at the moment, although it requires only >>>>> standard tools, so is clean. From a user perspective, it will require >>>>> maven, but no other downloads (once it's on Maven central). It's maven >>>>> agnostic, though, so we *should* be able to support gradle, ant, any >>>>> other build system or none with a little work. >>>> >>>> I opened a comment for the only issue I ran into when installing this >>>> here: https://github.com/phillord/jde-with-clojure-backend/issues/1 >>> >>> Fixed there. >>> >>> >>>>> I've renamed jde-interactive to jdee-live and removed my minimal ELPA >>>>> compliant minimal jde as that is pointless now. My plan for the future >>>>> is to get one vaguely useful tool working, so I can test interaction >>>>> with the Clojure based middleware, then stop, until it is clear that >>>>> this is the way forward. >>>>> >>>>> Thoughts welcome! >>>> >>>> Thanks for the work, I think this looks great so far, hopefully it can >>>> be make useful here soon! (to me, useful means I can compile or check >>>> compilation from a Java buffer) >>> >>> Compilation is a reasonable aim. I am trying to put "pomegranate" into >>> place, so I can extend the classpath on-the-fly. After that, "compile" >>> seems a reasonable aim, although this means I have to interact with >>> maven to get it to launch the compile goal. Guess what? There are >>> several different ways to do it and the documentation is rubbish for all >>> of them. Maven, maven, maven. I might give up and see if cider >>> completion code (middleware or emacs client) is reusable instead. >>> >>> Anyone else? I don't want to carry on with this for too long if I am the >>> only one who thinks it makes sense. >>> >>> Phil >>> >>> ------------------------------------------------------------------------------ >>> _______________________________________________ >>> jdee-devel mailing list >>> [email protected] >>> https://lists.sourceforge.net/lists/listinfo/jdee-devel ------------------------------------------------------------------------------