Post #1782108
2026-04-23 01:20 UTC
@mdhughes One thing my a-b-c has in common with their abstraction-by-specification is that my bodies are first order, e.g. are not functional.
and their modules cannot contain modules. Hmm, not sure if similar.
Replies (2)
-
@mdhughes@appdot.net 2026-04-23 01:39
@screwlisp CLU does OK at hiding (data, functions) between classes & modules, which you can think of as the same thing, module.obj is obj.funcname. Same as Python, where you never know if a module is a bunch of top-level functions operating on hidden module data, or objects operating on member data. I still don't really get how Lisp packages work, compared with Scheme R6 libraries, but at least it tends to be simpler API, there's ONE level of hiding usually.
-
@screwlisp@gamerplus.org 2026-04-23 01:39
@mdhughes Aside, ACL2 has support for limited second order logic, but it works by reinterpreting apply$ by basically inlining the functions being applied. Similarly, it supports iteration (loop$) rather than just recursion.