Automated Method Induction: Functional Goes Object Oriented
The development of software engineering has had a great deal of benefits for the development of software. Along with it came a whole new paradigm of the way software is designed and implemented - object orientation. Today it is a standard to have UML diagrams translated into program code wherever possible. However, as few tools really go beyond this we demonstrate a simple functional representation for objects, methods and object-properties. In addition we show how our inductive programming system IgorII cannot only understand those basic notions like referencing methods within objects or using a simple protocol called message-passing, but how it can even learn them by a given specification - which is the major feature of this paper.
KeywordsNormal Form Functional Program Object Orientation Object Orient Initial Rule
Unable to display preview. Download preview PDF.
- 1.Hieber, T.: Transportation of the JEdit plug-in ProXSLbE to eclipse. Technical report, Otto Friedrich University of Bamberg (2008)Google Scholar
- 3.Quinlan, J.R., Cameron-Jones, R.M.: FOIL: A midterm report. In: Brazdil, P.B. (ed.) ECML 1993. LNCS, vol. 667, pp. 3–20. Springer, Heidelberg (1993)Google Scholar
- 4.Muggleton, S., Feng, C.: Efficient induction of logic programs. In: Proceedings of the 1st Conference on Algorithmic Learning Theory, Ohmsma, Tokyo, Japan, pp. 368–381 (1990)Google Scholar
- 5.Muggleton, S.: Inverse entailment and Progol. New Generation Computing, Special issue on Inductive Logic Programming 13(3-4), 245–286 (1995)Google Scholar
- 7.Kitzelmann, E.: Data-driven induction of recursive functions from I/O-examples. In: Kitzelmann, E., Schmid, U. (eds.) Proceedings of the ECML/PKDD 2007 Workshop on Approaches and Applications of Inductive Programming (AAIP 2007), pp. 15–26 (2007)Google Scholar
- 8.Hofmann, M., Kitzelmann, E.: I/o guided detection of list catamorphisms – towards problem specific use of program templates in ip. In: Proceedings of the ACM SIGPLAN 2010 Workshop on Partial Evaluation and Program Manipulation (PEPM 2010) (to appear, 2010)Google Scholar
- 10.Katayama, S.: Systematic search for lambda expressions. In: van Eekelen, M.C.J.D. (ed.) Revised Selected Papers from the Sixth Symposium on Trends in Functional Programming, TFP 2005, vol. 6, pp. 111–126. Intellect (2007)Google Scholar
- 12.Rémy, D., Vouillon, J.: Objective ML: An effective object-oriented extension to ML (1998); A preliminary version appeared in the proceedings of the 24th ACM Conference on Principles of Programming Languages (1997)Google Scholar
- 13.Kiselyov, O., Laemmel, R.: Haskell’s overlooked object system. CoRR (2005); informal publicationGoogle Scholar
- 14.Terese: Term Rewriting Systems. Cambridge Tracts in Theoretical Computer Science, vol. 55. Cambridge University Press, Cambridge (2003)Google Scholar
- 15.Plotkin, G.: A note on inductive generalisation. In: Meltzer, B., Michie, D. (eds.) Machine Intelligence 5, pp. 153–163. Edinburgh University Press, Edinburgh (1969)Google Scholar