at what point do you all have scrolling perf issues with atom?
not sure if it's my config or an atom issue.
@gerred I find it can be a bit laggy if I've switched away and been doing a bunch of other stuff, and then switch back to Atom... but it soon seems to perk up and be responsive again. Can you be a bit more specific about what you're seeing?
yeah, I'm in a 120 line file right now and it's noticeably just...less fluid (lower FPS?) than scrolling in vscode or emacs.
with actually fewer visual signals, I just turned off indent guides to see if that would help
atom is slower on display for sure, but this doesn't feel like a huge file.
might actually be rainbow-delimiters come to look at it.
Ah, yeah, rainbow delimiters is nasty like that.
I've installed it and quickly uninstalled it again multiple times, hoping it will get better... sufficiently better that I can live with it.
@mauricio.szabo I'm thinking for portability and raw performance's sake I'm considering doing replacement core lib for paredit/parinfer exported as WASM.
i'll spike it out in cljs and once we have a good ruleset, do it in rust+wasm, and then we can import that into lisp-paredit-redux via shadow-cljs and chlorine for you to consume
there's already a rust-based parinfer doing this and it can be built w/ wasm: https://github.com/eraserhd/parinfer-rust
and then maybe convince @pez to pull in some sweet performant wasm action too for some of that in Calva. once GraalVM ships with wasm support we could always pop it back into cljs entirely. 😉
Is there a considerable performance improvement on using WASM over Electron?
you'd use electron still
but you'd bring in a WASM module instead of a JS one and get near native speed for that particular module.
i think with shadow-cljs and a webpack addition you'd be able to directly require that wasm module and benefit from the performance, but get the JS-level exports out of it.
i do want the same general editing libs available in multiple worlds since I'm using both socket repl and nrepl depending on my mood and what I'm doing. 😉
Just for the record, it is really easy to add nREPL protocol to Chlorine, if you want 🙂
But I've asked about the WASM because I know that some old versions of electron had some issues with WASM, and Atom's electron version is kinda old...
fair. 😄 yeah, I don't want to. @seancorfield has convinced me on doing the simplest thing possible with clojure tooling for situations, but that's an aside haha.
oh sure.
it just hit electron 4
😞
Oh, well... Atom is on 3.1 yet...
no i mean atom is 4.0.0 now isn't it?
as of 1.40.1
ohh
1.41 is electron 4.x and that's still a beta
darn.