mwkaufma 19 minutes ago

Misleading use of the term "runtime" as it does not implement lua, but just links nonrust implementations into a webserver "runtime."

joshlk 20 minutes ago

The top claim is that it's "Incredibly Fast" but I can't find any performance benchmarks. Can anyone find a link?

bcardarella 25 minutes ago

"written in Rust"

ok

  • phplovesong 22 minutes ago

    They also call it "0xiDizEd" its super cringe.

    • sensen 8 minutes ago

      I don't see any reference to `0xiDizEd` in the docs or on github. Are you sure that you're discussing the right project?

VWWHFSfQ an hour ago

Correct me if I'm wrong, but it looks like this is using the mlua Rust bindings (which are excellent). It's not a Lua runtime from-scratch in Rust. It's the regular C Lua/LuaJIT with a Rust interface.

  • vrighter an hour ago

    You're thinking of the interpreter, not the runtime. The runtime is libraries, not the interpreter. The async-io frameworks and stuff like that. Just like how node.js is a javascript runtime, it uses the V8 engine, and bun is also a javascript runtime that uses javascriptcore instead. Neither one of them wrote their own javascript interpreter.

    • Lerc 15 minutes ago

      I think of the runtime as the whole execution stack. The interpreter, engine, JIT etc. is the back end. The interface to the world is a wrapper around that.

      I would describe this as a Lua wrapper written in Rust. That carries the clear indication that you should not expect the interpreter to be written in Rust.

      I would be (and indeed was) disappointed to see that this 'Lua runtime' did not have a Rust implementation of Lua. I would be much more interested in seeing that than a wrapper.

andsoitis an hour ago

100% of Lua?

  • vrighter an hour ago

    It's a runtime, not a lua interpreter/jit.

    The first sentence in its readme is the following: "Astra is a web server runtime for Lua (5.1-5.4), Luau and LuaJIT written in Rust with native support for Teal."

    • debugnik 16 minutes ago

      The interpreter/jit has traditionally considered been part of a dynamic language runtime, arguably most of it, before JS-brained companies started to call their every repackaging of V8/JSC a runtime (which is technically correct but only considering part of them is off-the-shelf).

    • andsoitis 40 minutes ago

      > It's a runtime, not a lua interpreter/jit.

      Would you say the Lua interpreter is also a Lua runtime?

      • vrighter 36 minutes ago

        the lua interpreter by itself is similar in scope to freestanding c. You can do anything, but you have to do everything. Lua doesn't come with much. Just some very basic file io (not even including listing files). Stuff that embeds lua is supposed to provide a runtime for lua programs to actually interact with.

nalekberov 27 minutes ago

I desperately need an extension to remove entries with 'written in Rust' from HN.

  • Aurornis 6 minutes ago

    These are Rust bindings. It’s meant to be called from Rust. Stating Rust in the headline is important.

    If you don’t like it, don’t click it. That’s better than coming to the comment section to write multiple unhelpful comments and get angry about it.

  • phplovesong 24 minutes ago

    This would be a best seller. HN without Rust and AI, thats the golden braid.

  • slightwinder 9 minutes ago

    As I remember, you can just use ublock origin and some cosmetic filter with :has-text() or something.

  • nalekberov 16 minutes ago

    [flagged]

    • Lerc 9 minutes ago

      Or it could be that you posted an insubstansive comment that added little to the conversation. I don't use Rust. I certainly don't advocate for it, but I don't mind seeing posts about things people have done in Rust. I also don't use Lisp or Forth. I'd be quite interested to see people posting new projects that do real world things with those. Seeing languages being used helps you see what tools are the right ones for the job.