However, we notice a revival of extensible pro-
gramming languages. Within the last decade, quite
a number of such languages have been implemented
on top of mainstream platforms and their number is
increasing rapidly. Examples are implementations of
Python, Ruby, Groovy, and Scala on the Java Platform
or F# on the .NET platform. Furthermore, there are a
number of Lisp implementations on the Java platform,
e.g., ABCL, Clojure, Jatha, and CLForJava.
What needs to be done? Professional tool support
for Language-Oriented Programming and DSL stack-
ing, integration with mainstream platforms like Java
and the development of useful DSLs to be taken off
the shelf.
REFERENCES
Aho, A. V., Kernighan, B. W., and Weinberger, P. J. (1988).
The AWK Programming Language. Addison-Wesley.
Berners-Lee, T., Hendler, J., and Lassila, O. (2001).
The Semantic Web: A new form of Web
content that is meaningful to computers will
unleash a revolution of new possibilities:
www.scientificamerican.com/article.cfm?id=the-
semantic-web. Scientific American.
Brauer, J., Crasemann, C., and Krasemann, H. (2008). Auf
dem Weg zu idealen Programmierwerkzeugen - Be-
standsaufnahme und Ausblick. Informatik Spektrum,
31(6):580–590.
Clocksin, W. F. and Mellish, C. (1987). Programming in
Prolog, 3rd Edition. Springer.
Dmitriev, S. (2005). Language Oriented Program-
ming: The Next Programming Paradigm.
http://www.onboard.jetbrains.com/is1/articles/04/10/
lop/.
Feldman, S. I. (1979). Make — A Program for Maintaining
Computer Programs. Software: Practice & Experi-
ence, 9:255–265.
Felleisen, M. (1990). On the Expressive Power of Program-
ming Languages. In Jones, N., editor, Proceedings 3rd
European Symposium on Programming (ESOP’90)
Copenhagen, Denmark, May , 1990, volume 432 of
Lecture Notes in Computer Science, pages 134–151,
Berlin, Heidelberg, Springer,.
Fowler, M. (2005). Language Workbenches: The
Killer-App for Domain Specific Languages?
http://martinfowler.com/articles/languageWorkbench.
html.
Goldfinger, R. (1961). Problem-oriented programming
language structure. Communications of the ACM,
4(3):138.
Gosling, J., Joy, B., Steele, G., and Bracha, G. (2005). The
Java language specification. Addison-Wesley, Upper
Saddle River, NJ, 3. ed., 1. print. edition.
Graunke, P. T., Krishnamurthi, S., Van Der Hoeven, S.,
and Felleisen, M. (2001). Programming the Web
with High-Level Programming Languages. In David
Sands, editor, Proceedings 10th European Symposium
on Programming (ESOP 2001), Genova, Italy, April
2001, volume 2028 of Lecture Notes in Computer Sci-
ence. Springer.
Greenfield, J. (2004). Software Factories: Assem-
bling Applications with Patterns, Models, Frame-
works, and Tools. http://msdn.microsoft.com/en-
us/library/ms954811.aspx.
Irons, E. T. (1961). A Syntax Directed Compiler for AL-
GOL 60. Communications of the ACM, 4(1):51–55.
Irons, E. T. (1970). Experience with an Extensible Lan-
guage. Communications of the ACM, 13(1):31–40.
Kay, A., Piumarta, I., Rose, K., Ingalls, D., and Amelang,
D. (2008). STEPS Toward The Reinvention of Pro-
gramming: 2008 Progress Report Submitted to the
National Science Foundation (NSF): VPRI Technical
Report TR-2008-004. Technical report, Viewpoints
Research Institute.
Kay, A. C. (1993). The Early History of Smalltalk. In
HOPL Preprints, pages 69–95.
Kernighan, B. W. and Ritchie, D. M. (2008). The C pro-
gramming language. Prentice Hall PTR, Upper Sad-
dle River, NJ, 2nd ed., 43. print. edition.
McCarthy, J. (1960). Recursive Functions of Symbolic Ex-
pressions and Their Computation by Machine, Part I.
Communications of the ACM, 3(4):184–195.
OASIS (2007). Web Services Business Process Ex-
ecution Language Version 2.0: OASIS Stan-
dard. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-
v2.0.pdf.
Simonyi, C., Christerson, M., and Clifford, S. (2006). Inten-
tional software. In Tarr, P. L. and Cook, W. R., editors,
Proceedings of the 21th Annual ACM SIGPLAN Con-
ference on Object-Oriented Programming, Systems,
Languages, and Applications (OOPSLA 2006), pages
451–464.
Steele, G. L. (1984). COMMON LISP: The Language. Digi-
tal Press, 12 Crosby Drive, Bedford, MA 01730, USA.
van Deursen, A., Klint, P., and Visser, J. (2000). Domain-
Specific Languages: An Annotated Bibliography.
ACM SIGPLAN Notices, 35:26–36.
Ward, M. P. (1994). Language-Oriented Programming.
Software - Concepts and Tools, 15(4):147–161.
World Wide Web Consortium (W3C) (2010). Seman-
tic Web: http://www.w3.org/standards/semanticweb/,
last visited 30/4/2010.
LANGUAGE-ORIENTED PROGRAMMING VIA DSL STACKING
287