-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 >>
>> http://viewer.gorilla-repl.org/view.html?source=github&user=ghubber&repo=cnc&path=rincanter.clj >> I am not sure whether this fits the design atm. though. I also >> had a look at renjin, but I think the native plugins mandate an >> RVM integration atm. >> > > You might find http://beakernotebook.com interesting, if you > haven't seen it before. It allows several languages in the same > notebook, and has a simple mechanism for sharing data between the > language environments. It's pretty green at the moment, but it has > some serious backing, so could be pretty useful once it's got a bit > more polish on it. I chatted a little with someone who was hoping > to implement a Clojure plugin for it, although I don't know how > they've gotten on since. This is really nice, thank you for pointing out! Effectively though this means you need to manually(!) convert data between all cells, which only works if serialization between the environments is a lot less work than processing the data and you don't want to call alien procedures e.g. in a loop. It also means that part of datasets need to be hold in memory in all runtimes at the same time. So I am not sure whether JSON synchronisation of state between runtimes is good in the long run, it feels fairly hacky and having that many runtimes already causes a big type-conversion matrix and probably many subtle incompatibilities. It is the most pragmatic approach though and probably the most successful for now. They are not opinionated about languages, while I would like to integrate data science tooling in Clojure, so it is easier to bring people on board, not to make language hopping the top goal, which is for mentioned performance reasons and from a Lisp/Clojure perspective a bit questionable imo (esp. since all these languages have to drop to C to get some performance). I also would like to have the environment written in Clojure (read: gorilla). I would be happy to integrate Python and R on the JVM, e.g. through Jython and RServe/renjin, which allows to share code much better down to direct method dispatch. Do you think integrating R cells in this way would be reasonable for you? Or just allowing plugins for new cell-types... (With RServe manual synchronisation with the RVM is still necessary btw., renjin would solve this, but needs more support for CRAN packages imho). > > I also have taken a paper I liked and implemented a quick version > of > >> SNE, which was fairly nice to do in Gorilla REPL: >> >> http://viewer.gorilla-repl.org/view.html?source=github&user=ghubber&repo=cnc&path=stochastic-neighbour-embedding.clj >> A problem seems to be unicode support, I tried to use some math >> symbols from the notation in the paper directly, but the viewer >> seems to have a problem with it. >> > > Not sure what the problem is there - my feeling is it should just > work, on the Gorilla side. If there's a test case you can point to > (with an expected result) I can take a look at it. The problem is just that viewer.gorilla-repl.org seems to have some encoding problems with UTF-8. See the sum sigma symbol for instance: https://github.com/ghubber/cnc/blob/master/stochastic-neighbour-embedding.clj#L72 which is corrupted in the viewer. I hoped that was easy to fix. Christian -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJVIYNTAAoJEKel+aujRZMk5wsIAIl/CoX0E7u6lSJIHQfWI8U5 HZWUPjHJie+sbIt+G4qm8SozAbmPEc6mRSDC3kP1v2JhoJv4y1j6klWmHH9Xm3dj eqxNgVTNClk5ZUUcAFhcy2gUCc9RP6AJF27TnSO+ArG4qApueU+s297uHTAfGefk hj+AbzCGoQOgvw1F6sUOTQ4KV6Z51/pYsjIgxwPC5vvzIKgv+qiKXMWLow1mM9uu tG4h/HDSxdjCWdVm4sCuipi5tJJmdYEuYHjtFiMVbpVA5YZT3KleL4K6Gn9nMu7u vrw2YlZyE9mlKPbv4GRS3ANnVv45+e0yLuMMXV1OdlxwKqmvKosmk7k4K6jR8Pc= =5QnK -----END PGP SIGNATURE----- -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.