-
Notifications
You must be signed in to change notification settings - Fork 2
Meta extension
If we want to use metaprogramming in Forth, we’ll be faced with the absence of meta layer provides us a way to do code modifications and system patching in a standardized way. All old classical Forths let us do it, but the abstraction of meta operations was at the machine code level in which they were implemented. Every next Forth system implementation has specific vocabulary structure organization, hardware-specific machine code definitions of primitive executable elements, and the way how internal data flows thru the system (stack, machine registers, number of machine word bits, interface with underlying OS if it exists and so on).
To be ready to design modern complex software systems we need to have powerful meta facilities. So they must be embedded into language core as a standardized high-level interface to be used for optional type checking, tracking validation, automated software transformation, and ease of prototyping.
EDS provides here high-level representation of every system element, in the data model you are choosing yourself by your taste. I prefer frame model as most universal, see later.