However, it's still (almost) a moot point to me. I almost never code in 80 characters (generally closer to 130ish. Fits two windows nicely side-by-side on my screen.), but if something requires it I have my IDE set up to reformat it when I am done.
However, it's still (almost) a moot point to me. I almost never code in 80 characters (generally closer to 130ish. Fits two windows nicely side-by-side on my screen.), but if something requires it I have my IDE set up to reformat it when I am done.
Thus what you're asking for reduces to either (a) a mainstream Lisp, or (b) a language whose programs naturally translate into something other than a tree. (a) is a can of rather boring worms, but (b) seems like it could use more attention. The only thing I know of in that space (maybe) are stack languages.
I don't feel future-proofing is as big a deal as you do, but I do think that certain programs and (especially) tools would be easier to write in a hashmap-based Lisp, where the programmer and/or tool could attach whatever metadata they wanted to any section of code. There are potentially some order-of-magnitude wins there, I think. Production Lisps usually tack on various kinds of magic metadata anyway (e.g. symbol-plists, docstrings, Common Lisp's declare, Clojure's metadata). The above idea would unify all of those by promoting the underlying generic construct to first-class status.
And the entire point of storing the "source" on-disk as an AST is to not have the programmer directly edit the file. Use an editor set up to handle it.
Sort of like JSON. Yes, you can read and edit it manually, but it's primarily meant for something else.
Edit: it feels like if one found a textual notation that matched the dataflow graph in the way that s-exprs match ASTs, that could lead to a Lisp of dataflow languages. I have no idea what that would look like or whether it would be tractable for building real-world systems, but it would be an interesting experiment.