Abstraction Theory
Programming consists of building successive "layers of abstraction",
one on top of another.
The process of going from one such layer to the next is
abstraction.
The goal of Abstraction Theory is to model this process mathematically,
so that questions about abstraction —
like, which of these two programming languages has more abstractive power
— are objectively meaningful problems subject to formal investigation,
rather than
religious issues.
Blog posts:
Tech reports:
-
WPI-CS-TR-08-01
(ps.gz)
(pdf)
Abstractive Power of Programming Languages: Formal Definition.
J. Shutt.
March 2008.
-
WPI-CS-TR-99-39
(ps.gz)
(pdf)
S-Expressiveness and the Abstractive Power of Programming Languages.
J. Shutt.
December 1999.
-
WPI-CS-TR-99-38
(ps.gz)
(pdf)
Abstraction in Programming — working definition.
J. Shutt.
December 1999.
-
WPI-CS-TR-08-14
(ps.gz)
(pdf)
Well-behaved parsing of extensible-syntax languages.
J. Shutt.
October 2008.
See also:
Abstraction theory on my Web Surfing page;
my other Academic Work.