Fork me on GitHub
#joker
<
2019-11-18
>
sogaiu15:11:58

fwiw, i asked Olical whether conjure uses the tap> portion of prepl and iiuc, he said something like "not really".

😂 4
jcburley02:11:51

LOL, that's kinda vague! Maybe implementing the rest of prepl is easy enough (as a mod to Joker itself, if not as Joker code) to test out whether it'd be useful without tap>.

sogaiu02:11:52

well, you did specifically mention tap> :)

👍 4
jcburley02:11:33

From what little research I've done, it seems like tap> would require a fairly major change (if not redesign to Joker), because it basically requires being able to run arbitrary Joker code on different threads (i.e. Joker would need to support multithreading in some fashion).

jcburley02:11:28

So, is it worth (someone) implementing a pRepl for Joker without Joker also supporting tap>?

sogaiu02:11:16

i got the sense from Olical that conjure would work fine without the tap> support in prepl - so it's the cost of prepl implementation and maintenace traded for users being able to use conjure i guess. on a side note, prepl is still alpha iiuc.

👍 4
jcburley02:11:45

Interesting.

didibus01:11:22

I haven't seen a lot of people using tap> yet

sogaiu01:11:50

in the context of rebl and debugging, it can be handy

didibus01:11:11

What does prepl make use of tap> for? Tap> is a core fn now. So it's more a question of should joker support tap> from core no?

sogaiu01:11:38

whatever you tap> will show up on the prepl in an "unsolicited" manner -- it just suddenly shows up

didibus01:11:03

Oh, I see. So prepl is always listening for taps and will print them out?

sogaiu01:11:05

at any rate, for prepl-using purposes, i wonder how much use tap> is

sogaiu01:11:11

that's how it looks to me

sogaiu01:11:22

in the context of rebl, whatever you tap> will show up in the tap tab, after tap>ing multiple times, you can click "browse" and all of the accumulated tap> content is then made available for inspection in the main rebl ui

jcburley01:11:30

That sounds awesome. Might make my top 5 reasons to add multithreading to Joker! 😉

sogaiu01:11:26

not quite sure what you are referring to, but for rebl to work, iiuc, it must be in the same process that a clj project is running in -- at least at the moment. i think there is some thought being given to things working over the wire (e.g. punk), but these things are even more early stage iiuc.

sogaiu01:11:24

(i did succeed in converting emacs-lisp data structures to analogous clojure data structures and sending to rebl as well as punk though)

didibus01:11:54

I mean, a prepl that doesn't print tapped value still seems useful

didibus01:11:27

As I understand, prepl is just a socket repl that takes and returns EDN

didibus01:11:50

Which makes it easier to use then a plain old socket repl

didibus01:11:19

It seems it also has this tap> feature, but logically it seems it could still function without it

didibus01:11:07

Unless a prepl client was relying on tap> to print info to the repl. Like say the client when you eval something did a tap> or if an exception was thrown it did a tap> to display it, etc.

sogaiu01:11:47

yes, prepl without tap> seems plenty useful -- for tooling, it's much easier to parse the output (all maps). Olical's conjure is built using prepl.

sogaiu01:11:19

return values and out and err are not all mixed together