
Atlast – Autodesk Threaded Language Application System Toolkit - carapace
https://www.fourmilab.ch/atlast/
======
taftster
For those that don't click through to the write-up.

 _> "Autodesk's connection with this program is purely historical: it is
neither endorsed, used, nor supported by Autodesk, Inc."_

------
HelloNurse
Not by chance, it seems suitable for the scripting needs of Autocad:

\- A REPL alone, without defining either primitives from the application side
or words on the user side, is already well-formed and very useful, and ready
to be incrementally evolved into a very powerful scripting system that can do
more with easily understood elementary commands rather than with a complex
framework.

\- A clearly understood application global state, mostly consisting of a
complex document, obviates the need to keep significantly complex data
structure on the scripting side, where they would live, at best, in a fragile
and unstructured stack.

\- Interaction consisting mostly of thinking what to do next, giving commands
with a GUI or a REPL and then waiting for computation, rendering and I/O is a
good fit for a very terse language with simple interpretation semantics.

\- The unstructured nature of Forth-like programs makes high-level specialized
commands easy to write, without pointless restrictions and without
boilerplate. Narrow commands for specific needs and neat layering of general
and abstract commands are compatible and well-supported approaches.

------
mkumm
Has anyone successfully implemented this? Fascinating approach, but outside of
the "manual" I can't seem to find much information about it.

~~~
fizfaz
the linked source-archive (at the bottom of the page) compiles without
problems on a modern OS, or do you mean an application using it?

~~~
mkumm
Looking for any software projects that have successfully adopted this approach
for extensibility.

~~~
sitkack
Anything embedding Lua, TCL or Rexx should be nearly identical in structure.

[https://en.wikipedia.org/wiki/Rexx](https://en.wikipedia.org/wiki/Rexx)

------
kd5bjo
Other than being Forth-based, is this significantly different than any of the
other embeddable scripting languages, like Guile or Lua?

