4 ms·
From the link: > Key features of Lily: > Built-in template mode > Embed/extend in C > Single-inheritance classes > Exceptions > Generics > Algebraic data
by paulddraper 9mo ago
From the link:
> Key features of Lily:
> Built-in template mode
> Embed/extend in C
> Single-inheritance classes
> Exceptions
> Generics
> Algebraic data types (with Option and Result predefined).
- andsoitis 9mo agoThat’s what. Not why.
- paulddraper 9mo agoThe reason it exists is to provide those features when programming computers.
- nine_k 9mo agoThe why: because Lua, Python, JavaScript, Janet, etc lack many or all these features. And each of these features is known to make life easier for a human programmer.
- dismalaf 9mo agoLooking through that list of features, Ruby (the dynamic language I know best) has all but 1 built-in (and the other can be added with Gems). I'm guessing Python probably has them all too (but I don't know Python that well). They're pretty common. So the why still isn't clear.
- nine_k 9mo agoIs Ruby easy to embed in a C program?
- bandrami 9mo agoThat was originally the point of Ruby
- debugnik 9mo agoRPG Maker used to embed Ruby before it was cool (and before they switched to JS for web support).
- deleted 9mo ago[deleted]
- dismalaf 9mo agoYes -> https://mruby.org https://mruby.org It's also incredibly easy to extend the main Ruby implementation with C, C++, Odin, Zig, Rust, Fortran, etc... Literally a few lines.
- vidarh 9mo agoThe main Ruby implementation is also fairly easy to embed. It's just not easy to embed multiple MRI ruby instances in a single application, and it's also a lot bigger than mruby.
- paulddraper 9mo agoTell me more about Ruby generics….
- dismalaf 9mo agoWant to split hairs eh? Duck typing achieves the same thing as "generics", just at runtime vs. compile time.
- paulddraper 9mo agoGenerics are implicitly compile time checks. It’s a willful misinterpretation to read otherwise.