Live data from Hacker News

Ao is a tool for programmatic computer-aided design using Scheme

mattkeeter.com

41–47 of 47 posts

Re: Ao is a tool for programmatic computer-aided design using Scheme

#41
post #7

Ao's author here – I'd be glad to answer questions.

I am writing another comment here since I just had a play with Antimony and boy do I have to say my mind has been blown. Please please please tell me that you intend on either keeping that project alive or moving it's features into Ao. This is the first CAD software I can understand. It not only combines the logical ordering I have grown to love as a programmer but the instant feedback of playing with legos. It's the…

Glad to hear that you're enjoying Antimony!

I'm planning to keep either Antimony or something similar alive into the future. Antimony is approaching convergence, so development has slowed down – not sure whether major new features will land there or in a successor (because I'm not sure what the next big features should be).

The trajectory may be to use Ao's kernel plus a new graph engine to make an Antimony successor. Ao is a powerful system, but I'd like to keep providing a tool with a friendlier UI and lower barrier to entry.

Re: Ao is a tool for programmatic computer-aided design using Scheme

#42
post #33

Nobody ever listens to me: https://news.ycombinator.com/item?id=12033059 I don't get it, has he given up on Guile or not: http://lists.gnu.org/archive/html/guile-user/2016-06/msg0002... http://lists.gnu.org/archive/html/guile-user/2016-06/msg0002...

I got Ao to a working state a few months before that exchange on the guile-users mailing list. Guile works fine for Ao – it's clean and simple, plays nice with C FFI, and has a good REPL. Racket was lower-impedance for the project discussed in that thread (and certainly has better documentation), but seems a bit heavy-weight for embedded use.

Racket always seemed a bit heavyweight to me in general. I'm more of a CHICKEN fan myself, though. You clearly are on the other side of that particular fight (r6rs vs. r4/5/7rs) though. Which is fine.

Re: Ao is a tool for programmatic computer-aided design using Scheme

#43

Earlier quoted context omitted.

What's so bad about openscad? I haven't really worked with it, so I'm kind of curious.

As far as I remember, the language was severely limited, and it's yet-another-syntax to learn for no discernible benefit.

Ah. Yeah, I can identify. This is exactly the reason I prefer Guix to Nix.

Re: Ao is a tool for programmatic computer-aided design using Scheme

#44
post #41

Earlier quoted context omitted.

I am writing another comment here since I just had a play with Antimony and boy do I have to say my mind has been blown. Please please please tell me that you intend on either keeping that project alive or moving it's features into Ao. This is the first CAD software I can understand. It not only combines the logical ordering I have grown to love as a programmer but the instant feedback of playing with legos. It's the…

Glad to hear that you're enjoying Antimony! I'm planning to keep either Antimony or something similar alive into the future. Antimony is approaching convergence, so development has slowed down – not sure whether major new features will land there or in a successor (because I'm not sure what the next big features should be). The trajectory may be to use Ao's kernel plus a new graph engine to make an Antimony successor…

I've been a programmer for a very large portion of my life and have to say that I, personally, don't feel that code is an appropriate way to express 3d shapes. This is in my opinion of course.

For you, given your obviously gifted talent for this sort of thing, it might actually be much much easier just to have a software interface. I don't thing most of the population is like this.

I'd say for most a visual graph display is more natural a conversion of our ideas to shapes then text is. That combined with the live updating models and you've got yourself a winner.

For the more technically inclined you also get to play around with ADDING blocks (via the script block) which is a perfect bridge between the technical side and the conceptional side.

As for features, I'd like to suggest a few things that might be helpful.

For the node graph system, I'd say take some ideas from Unreal's UDK.

  1. Comment Blocks that can be dropped around large block groups
  2. Ability to rout "cables" the way you'd like (Snap to a "junction" then to where you'd like to take it)
  3. Select colors of wires.
  4. The ability to collapse and expand XYZ from floats to a Point object (making it a single value) for nicer routing.
  5. Variable declaration
Outside of that, something that would be interesting for larger scale design, it would be nice to be able to load multiple "mini-projects" into one larger project. When designing an engine for a car it would be nice to be able to make every complex shape it's own project. From that state you could import it into a larger complex project to fit all the parts together how it should look in the end.

That alone would be a massive undertaking. But my begging hand is still out: I'd like to be able to "simulate" what will happen. Adding this feature takes your project from simply being one of the best open source CAD projects I've ever seen to being one of the best cad projects I've ever seen. For me rivaling the usefulness of Fusion 360, Autodesk, Creo, the likes.

Aside from that, maybe add a more traditional interface in which I can right click on the model and say "3d->extrude>cylinder" and visually in the model edit the project while also changing the node graph.

I've got to say this if no one else has told you this yet: you're on to something big with this software and I DO hope you keep it up. You're building something that will bring engineering into the hands of us mere mortals. Coming from CS it's crazy to find the huge lack of open source tools and documentation in this space that you are seemingly fixing single-handedly.

Keep up the good work! Well, I should say the amazing work!

Re: Ao is a tool for programmatic computer-aided design using Scheme

#46
post #45
post #7

Ao's author here – I'd be glad to answer questions.

I've been foaming at the mouth to try Ao. Are you ever planning to make a Unix or Windows release?

Folks are building it on Linux already, generally with success (and failure to build on Linux is considered a bug, so raise a Github issue if that happens).

Windows is less likely, as Guile (an FSF project) doesn't have an officially supported build. It looks like people have made it work [1], but there would be a lot more messing around involved.

[1] https://github.com/Madsy/guile-automatic-build

Re: Ao is a tool for programmatic computer-aided design using Scheme

#47
post #41

Earlier quoted context omitted.

I am writing another comment here since I just had a play with Antimony and boy do I have to say my mind has been blown. Please please please tell me that you intend on either keeping that project alive or moving it's features into Ao. This is the first CAD software I can understand. It not only combines the logical ordering I have grown to love as a programmer but the instant feedback of playing with legos. It's the…

Glad to hear that you're enjoying Antimony! I'm planning to keep either Antimony or something similar alive into the future. Antimony is approaching convergence, so development has slowed down – not sure whether major new features will land there or in a successor (because I'm not sure what the next big features should be). The trajectory may be to use Ao's kernel plus a new graph engine to make an Antimony successor…

Would "something similar" be a UX similar to Antimony but using an ao backend/extension mechanism? Because that's something I could get behind
Post reply on HN