I created this spreadsheet / paint-program hybrid. That may sound weird, but it actually makes sense when you see how it works (I think). Here are two videos showing it's basic features: drive.google.com/file/d/1YhGs1UPHUq39n0M5YIl_2XT9iocUjvuf/view?usp=sharing and 2D and 3D turtle graphics support: youtube.com/watch?v=4wO_RrftJTE
This is awesome! Some reactions:
- You're building a game engine! Not to say this is derivative or anything. But seeing it through that lens may yield some new ideas for you.
- Check out Sketch-n-Sketch if you haven't already. Again, you're definitely doing some new stuff here. But it may be helpful to you.
- Potluck is another past project that overlaps with this. It uses the same spreadsheet-inspired ideas as you, but feels more text-heavy where you're starting out with more of a graphical and physics engine core.
Thanks for the links and your feedback. I'll have a look. It isn't really intended to be a game engine, but I can definitely see how it could be used for that. It currently supports three workspace types: a conventional spreadsheet, a 2D Canvas, and a calculator (like a 1D spreadsheet, not shown), but the idea is that you can add more container types like: databases, text documents, emails, slide-shows, graphs, animation timelines, musical scores or any number of other types of containers, and they're all integrated and scriptable through both conventional scripting and reactive programming. Like an OS shell but for objects and their containers rather than for text files and their directories.
Yeah ❤
To clarify, I wasn't suggesting you make games using this thing. I was suggesting game engines can be useful for doing what you're doing.
I don't know if you have been following my posts, but I've basically been programming exclusively in a game engine since about early 2022.
There's also a whole genre of Youtube educational videos that are piggy-backing off of game engines like Unity. The names escape me right now. I want to say 3Blue1Brown, but he's using his own tool which we can quibble if it's a game engine or not.
That's an interesting perspective. So you could say that I'm creating an Object Engine. And like Potluck, the end goal is to create dynamic documents, but in the case of FLOW, not just text documents, but spreadsheets, diagrams, databases, etc. If your Object Engine is more capable, then you often don't need full applications, just simple objects are sufficient, with the Engine providing the remaining capabilities. I added the links you provided to the FLOW wiki page: github.com/kgrgreer/foam3/wiki/FLOW-%E2%80%90-FOAM-Live-Object-Workspace
Yeah. We're all moving towards a deep convergence here. I just hope it starts impacting the world before it's too late. (Platforms getting increasingly closed, etc.)
FLOW is quite wonderful! I wonder what the EToys folks think of it and how it compares. It seems to mix both the imperative and reactive paradigms? Don’t those sometimes conflict? Or am I missing something? Did it actually get used for real CAD sims?
(Sketch-n-Sketch is deliberately not an imperative, or even reactive, programming model. It’s pure FP. Although SnS does try to integrate programming and graphics.)
Thanks. FOAM, the framework that FLOW is built on top of mixes reactive and imperative programming just fine. The largest FOAM app is 315k lines, so it scales well. It never did get used for real CAD sims. It was only a one-week project to develop the original FLOW and then another week to add the 2D and 3D turtle graphics. We pitched expanding on the CAD simulation project but it wasn't approved. Here's a bit more on the underlying framework (at least the reactive part): youtube.com/watch?v=-fbq-_H6Lf4