nashorn
txiki.js
nashorn | txiki.js | |
---|---|---|
10 | 8 | |
367 | 2,337 | |
6.0% | - | |
0.0 | 9.1 | |
about 1 year ago | 9 days ago | |
Java | C | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nashorn
-
A list of JavaScript engines, runtimes, interpreters
nashorn
-
I'm not a programmer, my fiance is. Sometimes I like to show him memes from here and he'll explain them to me. Now I'm just confused. (The meme was someone labeled JavaScript bowing to someone named PHP while other programming languages looked in shock.)
I mean...
-
What challenges are there moving from Java 8 to 17?
It's still maintained by the open jdk team here: https://github.com/openjdk/nashorn
- Java 16 - How can i run a JavaScript function in my Java code?
- Call JavaScript From Java
-
Java isn't js
Although Java includes Javascript, or at least it used to. These days it has been taken out as a separate library (https://github.com/openjdk/nashorn), which honestly makes even more sense for the metaphor.
- A JavaScript engine for the JVM, built from the ground up with Kotlin
-
JDK 17: General Availability
What prevents you from using https://github.com/openjdk/nashorn? It's available on maven
txiki.js
-
A list of JavaScript engines, runtimes, interpreters
txiki.js
-
JavaScript Standard Input/Output: Unspecified
// https://github.com/denoland/deno/discussions/17236#discussioncomment-4566134 // https://github.com/saghul/txiki.js/blob/master/src/js/core/tjs/eval-stdin.js async function readFullAsync(length, buffer = new Uint8Array(65536)) { const data = []; while (data.length < length) { const input = await open("/dev/stdin"); let { bytesRead } = await input.read({ buffer }); await input.close(); if (bytesRead === 0) { break; } data.push(...buffer.subarray(0, bytesRead)); } return new Uint8Array(data); }
- Node.js fetch() vs. Deno fetch(): Implementation details...
-
How to compile serveTls for import into QuickJS?
I've only dabbled with the shared libraries once, with the help of the owner of the lnked repository. I wound up solving the issue adjusting the code I was working on https://github.com/saghul/txiki.js/issues/294.
-
C++ to C string concatenation
I have written the same code in C++ https://github.com/guest271314/captureSystemAudio/blob/master/native_messaging/capture_system_audio/capture_system_audio.cpp, Python https://github.com/guest271314/captureSystemAudio/blob/master/native_messaging/capture_system_audio/capture_system_audio.py, and QuickJS (C source code) https://github.com/saghul/txiki.js/issues/294. QuickJS is the only implementation that winds up clipping the end of real-time audio capture.
-
QuickJS JavaScript Engine – Fabrice Bellard
QuickJS is awesome, simple to use and very easy to integrate.
Over the past few years I slowly built a small JS runtime using QuickJS as the engine and libuv as the platform layer, amongst other things, in case anyone wants to take a look: https://github.com/saghul/txiki.js
- GitHub - saghul/txiki.js: The tiny JavaScript runtime built with QuickJS, libuv
- GitHub - saghul/txiki.js: The tiny JavaScript runtime built with QuickJS, libuv and ❤️
What are some alternatives?
rhino - Rhino is an open-source implementation of JavaScript written entirely in Java
v8go - Execute JavaScript from Go
reeva - A JavaScript engine for the JVM, built from the ground up with Kotlin.
engine262 - An implementation of ECMA-262 in JavaScript
jdk-mc - Recent Java with modifications specific to Minecraft.
javascript-algorithms - 📝 Algorithms and data structures implemented in JavaScript with explanations and links to further readings
zipline - Run Kotlin/JS libraries in Kotlin/JVM and Kotlin/Native programs
AudioWorkletStream - fetch() => ReadableStream => AudioWorklet
cglib - cglib - Byte Code Generation Library is high level API to generate and transform Java byte code. It is used by AOP, testing, data access frameworks to generate dynamic proxy objects and intercept field access.
proposal-common-minimum-api
rayjs - Javascript bindings for raylib in a single ~3mb executable