3 ms·
This project appears to be a Ruby DSL with aspirations to be its own language someday Well, we actually started with our own language a few years ago (a Datalo
by neilc 16y ago
This project appears to be a Ruby DSL with aspirations to be its own language someday
Well, we actually started with our own language a few years ago (a Datalog variant), and have been exploring embeddings into traditional languages as a way to make our ideas more appealing to mainstream programmers.
while it's a Ruby DSL it's not going to be a great language for performance exploration
Absolutely: we've been focusing on pleasant syntax, sensible semantics, tools, and analysis techniques. Performance has definitely not been a goal, but certainly it will be important in the future. Bloom rules can be compiled into a dataflow graph (think: DB query plan, albeit recursive), and executing dataflow graphs efficiently is not difficult -- e.g., we can certainly envision generating query plans from Bloom rule sets and then running those query plans with a C runtime.
BTW, nothing about Bloom is Ruby-specific: we picked Ruby because it let us prototype our ideas quickly. Any language with decent support for collections would be suitable; for example, Scala would be a good candidate for a subsequent version of the language.
- JulianMorrison 16y agoHave you looked at Lua/LuaJIT?
- neilc 16y agoI'm aware of the language, but we haven't looked at it in any depth. If you think it would make for a good host language for Bloom, I'd be curious to hear your reasoning.