Haha well I'm sure if you put your mind to it you could create some madness in Koto! If it helps here's a git blame helper script I made for Helix (as an example of practical code without any effort put in to making it…
Yes, I was missing a 'companion language' for Rust similar to Lua for C and C++, I tried Lua bindings and other Rusty scripting languages but felt like starting a new project would be worthwhile.
I can't imagine wanting a 2.0 release, I'd rather take longer to get to 1.0 to reduce the risk of needing it, and anyway I'd much prefer to aim for something like Rust's editions, allowing the language to evolve without…
Koto's dynamically typed, but optional type checks were introduced in 0.15: https://koto.dev/docs/0.15/language/#type-checks
Limited for now, Koto's main role as an embedded language has meant that I haven't had a need, but I would like to provide bindings for other languages at some point, and to enable dynamically loaded Rust libraries. I'd…
In my tests it's been ~1.5-2x faster than Rhai, but Koto's still some way behind Lua in benchmarks so I'm not trying to make a big claim here (although that said one of the reasons I started work on Koto was to avoid…
What I've had in mind with Koto is that when I need strictness and precision I'll generally be using Rust, and Koto is more intended for another aspect of programming where I want things to be much more fluid and…
Yes I would certainly hope so, you shouldn't need to know any Rust if you want to learn Koto. The guide assumes that the reader has some general experience with programming, but not from using any specific language.…
Yes! I'm using it for adding commands to Helix. e.g. https://github.com/irh/dotfiles/blob/main/scripts/.scripts/t...
Yes that's right, they're checked at runtime (with the option to disable the checks if the performance cost is a concern) and failed checks simply throw exceptions. The hints aren't used for other purposes at compile…
Yes it's named after the instrument, although I'm happy to hear about the Italo disco connection =)
Koto creator here, nice surprise to see this on HN so I'm a bit late to the discussion. Happy to answer any questions!
Support for >8 channels led me to use WavPack instead of FLAC.
> Roli (the company selling JUCE) I know it's tangential to the point that you're making, but JUCE was acquired by PACE in 2020.
Agreed, outstanding! I'm less conflicted about having music tools in the browser. Yes, it's less efficient, and there's more risk of dropouts, and there's less control over I/O, and there's generally less you can…
Pre-omicron the vaccines were significantly slowing the spread of the disease. Post-omicron boosters are required to reach similar efficacy.
"100% of the 1%" is less nuanced than "99%".
It's already switched on nightly. https://github.com/rust-lang/cargo/pull/9298 https://doc.rust-lang.org/nightly/cargo/reference/profiles.h...
I've been working on Koto which is intended for this kind of use case. I've been thinking about extending Rust applications with scripting, and I have games in mind but more generally I'm interested in rapid iteration…
Rust's macros aren't hacky though? I would understand this point better if you were talking about C's macros, but macros in Rust are hygienic so don't suffer the same pitfalls.
Haha well I'm sure if you put your mind to it you could create some madness in Koto! If it helps here's a git blame helper script I made for Helix (as an example of practical code without any effort put in to making it…
Yes, I was missing a 'companion language' for Rust similar to Lua for C and C++, I tried Lua bindings and other Rusty scripting languages but felt like starting a new project would be worthwhile.
I can't imagine wanting a 2.0 release, I'd rather take longer to get to 1.0 to reduce the risk of needing it, and anyway I'd much prefer to aim for something like Rust's editions, allowing the language to evolve without…
Koto's dynamically typed, but optional type checks were introduced in 0.15: https://koto.dev/docs/0.15/language/#type-checks
Limited for now, Koto's main role as an embedded language has meant that I haven't had a need, but I would like to provide bindings for other languages at some point, and to enable dynamically loaded Rust libraries. I'd…
In my tests it's been ~1.5-2x faster than Rhai, but Koto's still some way behind Lua in benchmarks so I'm not trying to make a big claim here (although that said one of the reasons I started work on Koto was to avoid…
What I've had in mind with Koto is that when I need strictness and precision I'll generally be using Rust, and Koto is more intended for another aspect of programming where I want things to be much more fluid and…
Yes I would certainly hope so, you shouldn't need to know any Rust if you want to learn Koto. The guide assumes that the reader has some general experience with programming, but not from using any specific language.…
Yes! I'm using it for adding commands to Helix. e.g. https://github.com/irh/dotfiles/blob/main/scripts/.scripts/t...
Yes that's right, they're checked at runtime (with the option to disable the checks if the performance cost is a concern) and failed checks simply throw exceptions. The hints aren't used for other purposes at compile…
Yes it's named after the instrument, although I'm happy to hear about the Italo disco connection =)
Koto creator here, nice surprise to see this on HN so I'm a bit late to the discussion. Happy to answer any questions!
Support for >8 channels led me to use WavPack instead of FLAC.
> Roli (the company selling JUCE) I know it's tangential to the point that you're making, but JUCE was acquired by PACE in 2020.
Agreed, outstanding! I'm less conflicted about having music tools in the browser. Yes, it's less efficient, and there's more risk of dropouts, and there's less control over I/O, and there's generally less you can…
Pre-omicron the vaccines were significantly slowing the spread of the disease. Post-omicron boosters are required to reach similar efficacy.
"100% of the 1%" is less nuanced than "99%".
It's already switched on nightly. https://github.com/rust-lang/cargo/pull/9298 https://doc.rust-lang.org/nightly/cargo/reference/profiles.h...
I've been working on Koto which is intended for this kind of use case. I've been thinking about extending Rust applications with scripting, and I have games in mind but more generally I'm interested in rapid iteration…
Rust's macros aren't hacky though? I would understand this point better if you were talking about C's macros, but macros in Rust are hygienic so don't suffer the same pitfalls.