joyride

pez 2022-05-21T12:32:26.241539Z

Adding some features to a VS Code extension (not Calva) written in TypeScript got me to realize how iterating and tweaking a feature is painful in the world of ”re-compile, re-start, test, edit, re-compile, re-start, test, ...”. When I could instead have a REPL and just cut all that nonsense. I already found myself using Joyride to explore the VS Code API and test things quickly. Then translated to TypeScript, but it was still that the restart was needed when I had updated the TS code. So I decided to convert the project to ClojureScript. After some porting, and heavy use of @mauricio.szabo’s JavaScript->ClojureScript converter (built-in to Calva) it was a CLJS project I was running and shadow-cljs hot-reload was making the restarts history. Here's a nice twist to the story. I was using the REPL all the time during the porting. It all went well. Until I was requiring clojure.pprint. Which gave me strange error about that clojure.pprint was not available. ... WTH? ... Took me quite a while to realize what was going on. I had been using the Joyride REPL all the time! It's quite mind boggling with the high fidelity level of SCI flavoured Clojure.

πŸ˜† 3
pez 2022-05-22T16:48:41.212009Z

The best upgrade for me would be to handle await in some way. Assuming Promesa would work for me. πŸ˜ƒ

mauricio.szabo 2022-05-22T01:57:52.159139Z

Glad to know it's helping! I'm trying to make the conversion even better, but I found myself too busy with other things, but let me know if there's something small that I can help that will make the experience easier πŸ™‚

mauricio.szabo 2022-05-22T01:58:05.930709Z

(I know adding the right js/ namespace is one πŸ˜„)