ABSTRACT
Languages like Snobol, Prolog, and Icon were designed with backtracking facilities from the outset and these facilities are deeply intertwined with the implementation. Retrofitting a backtracking facility in a language that wasn't designed for it has never been achieved. We report on an experiment to retrofit Smalltalk with a backtracking facility. The facility is provided through a small number of primitives written in the language (no modifications to the kernel were made). The ability to do this is a direct result of the power provided by the objectification of contexts.
- 1.Clocksin, W.F. and MeUish, C.S. Progranuning in Prolog. Springer-Verlag. 1981. Google ScholarDigital Library
- 2.Goldberg, A. and Robson, D. Smalltalk-80: The language and its implementation. Addison-Wesley. 1983. Google ScholarDigital Library
- 3.Griswold, R.E. and Griswold, M.T. The Icon programming language. Prentice-Hall. 1983. Google ScholarDigital Library
- 4.Griswold, R.E., Poag~, J.F., and Polonsky, I.P. The Snobol4 programming language. Prentice-Hall. 1971. Google ScholarDigital Library
- 5.LaLonde, W.R. A novel rule-based facility for SmaUtalk. ECOOP '87, Paris, Franc, e, June, 1987, pp. 193-198.Google Scholar
- 6.Maes, P. Concepts and Experiments in Computational Reflection. Proceedings of OOPSLA '87, Orlando. Florida, October 1987, pp. 147-155. Google ScholarDigital Library
- 7.Smith, B. Reflections and semantics in a procedural language. M.I.T. Laboratory for Computer Science Report MIT-TR-272, 1982.Google Scholar
Index Terms
- Building a backtracking facility in smalltalk without kernel support
Recommendations
Building a backtracking facility in smalltalk without kernel support
Special issue: 'OOPSLA 88 Conference ProceedingsLanguages like Snobol, Prolog, and Icon were designed with backtracking facilities from the outset and these facilities are deeply intertwined with the implementation. Retrofitting a backtracking facility in a language that wasn't designed for it has ...
Language facilities for programmable backtracking
Proceedings of the 1977 symposium on Artificial intelligence and programming languagesMost languages intended for artificial intelligence applications include a search and backtracking facility. While built-in backtracking facilities are convenient, they are often too inflexible for use beyond a limited range of applicability. Other ...
Interlanguage working without tears: blending SML with Java
ICFP '99: Proceedings of the fourth ACM SIGPLAN international conference on Functional programmingA good foreign-language interface is crucial for the success of any modern programming language implementation. Although all serious compilers for functional languages have some facility for interlanguage working, these are often limited and awkward to ...
Comments