1. 2

    Looks cool! Would love it if the README included a side-by-side of a Makefile and the equivalent Smakefile. For me at least, that’s the most effective way to be convinced to try a new tool.

    1. 1

      That’s not a bad idea, but I’m not entirely sure if it works in this case. Take the simple example included in the repo; it has no Smakefile, yet the Makefile, which was generated by just running smake in the directory, is one with proper incremental builds with dependency tracking, multiple build configurations, install/uninstall targets, etc.

      If that example project did have a Smakefile, it would just be to set the PROJNAME variable explicitly instead of letting smake infer it from the directory name.

    1. 8

      It’s been really fun watching this project develop, thanks for continuing to make time for blog posts!

      1. 2

        Thanks, glad you’re enjoying it! Now I really hope the project reaches its stated goal, at least the OSH portion :) Otherwise I will feel silly.

        By the way, I’m serious about what I wrote in these comments – if somehow Python + re2c + ASDL turns out to be a dead-end, then I think all the docs I provided will make it significantly easier for a few people to come along and replace bash in a more “normal” way.

        That is, rewrite the OSH algorithms and data structures in C++ or Rust. They can take advantage of the enormous and well-tested lexer, and the type definitions for the syntax tree. (I think C++ and Rust are the main languages that make sense.)

        I should write a meta- blog post linking to the everything. It’s probably 60-80% documented!

        https://www.reddit.com/r/ProgrammingLanguages/comments/anbjag/oil_success_with_the_interactive_shell/efscqu4/

        https://www.reddit.com/r/ProgrammingLanguages/comments/anbjag/oil_success_with_the_interactive_shell/eft5nkb/