Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Quick js versus goja #449

Open
gedw99 opened this issue Dec 8, 2024 · 4 comments
Open

Quick js versus goja #449

gedw99 opened this issue Dec 8, 2024 · 4 comments
Labels
proposal Enhancement idea or proposal

Comments

@gedw99
Copy link

gedw99 commented Dec 8, 2024

Proposed change

https://gitlab.com/cznic/quickjs

Use case

Perf !

see benchmarks ..

Perhaps another agent in the v3 branch is the best way .

Darwin and windows should be possible too

Contribution

No response

@gedw99 gedw99 added the proposal Enhancement idea or proposal label Dec 8, 2024
@hpvd
Copy link

hpvd commented Dec 8, 2024

See also this discussion #369

@MikeHawkesCapventis
Copy link

Not sure about this - complexity of build comes in to play. Goja has no C dependencies, and that makes the build significantly easier for us in the Golang world. Also, it's trivial to add new libraries to Goja, so we extend our model to 'wrap' all the network actions - this lets us have business-centric Javascript - we could have a GetWeather("home location") function that calls a NATS micro-service to grab the weather. The Javascript script has no knowledge of anything to do with the lower-level network calls and NATS callout etc. To my mind, trying to do that in QuickJS is horrible by comparison and breaks out of the Go ecosystem.

@jordan-rash
Copy link
Contributor

Great discussion, thanks all. As it sits now, as we move closer to the point where the V3 branch lands on main (very soon), an actor SDK will be released as well. This will hopefully empower everyone to quickly experiment with all these different engines so that we can discover pros/cons together. As it sits now, as you can see from the branch, we are experimenting with goja, but I also hope to look at sobek before we decide which engine we are going to iterate on.

@MikeHawkesCapventis
Copy link

I've played with a few of these to build integration engines for our tech and clients - happy to share experiences, if that helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proposal Enhancement idea or proposal
Projects
None yet
Development

No branches or pull requests

4 participants