Abstract
Control code is a concept that is closely related to a frequently occurring practitioner’s view on what is a program: code that is capable of controlling the behaviour of some machine. We present a logical approach to explain issues concerning control codes that are independent of the details of the behaviours that are controlled. Using this approach, such issues can be explained at a very abstract level. We illustrate this among other things by means of an example about the production of a new compiler from an existing one. The approach is based on abstract machine models, called machine structures. We introduce a model of systems that provide execution environments for the executable codes of machine structures and use it to go into portability of control codes.
This is a preview of subscription content, access via your institution.
References
Aho A.V., Ullman J.D.: Principles of Compiler Design. Addison-Wesley, Reading (1977)
Aycock J.: A brief history of just-in-time. ACM Comput. Surv. 35(2), 97–113 (2003)
Bergstra, J.A.: Machine function based control code algebras. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.P. (eds.) FMCO 2003, Lecture Notes in Computer Science, vol. 3188, pp. 17–41. Springer-Verlag (2004)
Bergstra, J.A., Bethke, I.: Polarized process algebra and program equivalence. In: Baeten, J.C.M., Lenstra, J.K., Parrow, J., Woeginger, G.J. (eds.) Proceedings 30th ICALP, Lecture Notes in Computer Science, vol. 2719, pp. 1–21. Springer-Verlag (2003)
Bergstra J.A., Klint P.: About “trivial” software patents: the IsNot case. Sci. Comput. Program. 64(3), 264–285 (2006)
Bergstra J.A., Loots M.E.: Program algebra for sequential code. J. Log. Algebraic Program. 51(2), 125–156 (2002)
Bergstra J.A., Middelburg C.A.: Thread algebra with multi-level strategies. Fundam. Inform. 71(2–3), 153–182 (2006)
Bergstra, J.A., Middelburg, C.A.: Machine structure oriented control code logic. Computer Science Report 07-10, Department of Mathematics and Computer Science, Eindhoven University of Technology (2007)
Bergstra J.A., Ponse A.: Combining programs and state machines. J. Log. Algebraic Program. 51(2), 175–192 (2002)
Bergstra J.A., Ponse A.: Execution architectures for program algebra. J. Appl. Log. 5(1), 170–192 (2007)
Bratman H.: An alternate form of the UNCOL diagram. Commun. ACM 4(3), 142 (1961)
Delen G.: Decision and control factors for IT-sourcing. In: Bergstra, J.A., Burgess, M. (eds) Handbook of Network and Systems Administration, pp. 929–946. Elsevier, Amsterdam (2007)
Earley J., Sturgis H.: A formalism for translator interactions. Commun. ACM 13(10), 607–617 (1970)
Fokkink W.J.: Introduction to Process Algebra. Texts in Theoretical Computer Science, An EATCS Series. Springer-Verlag, Berlin (2000)
Gosling J., Joy B., Steele G., Bracha G.: The Java Language Specification. 2nd edn. Addison-Wesley, Reading (2000)
Hejlsberg A., Wiltamuth S., Golde P.: C# Language Specification. Addison-Wesley, Reading (2003)
Hoare C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)
Janlert L.E.: Dark programming and the case for the rationality of programs. J. Appl. Log. 6(4), 545–552 (2008)
Lindholm T., Yellin F.: The Java Virtual Machine Specification. Addison-Wesley, Reading (1996)
Loh L., Venkatraman N.: Diffusion of information technology outsourcing, influence sources and the Kodak effect. Inform. Syst. Res. 3(4), 334–358 (1992)
Milner R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)
Poole, P.C., Waite, W.M.: Portability and adaptability. In: Bauer, F.L. (ed.) Software Engineering, An Advanced Course. Lecture Notes in Computer Science, vol. 30, pp. 183–277. Springer-Verlag (1975)
Tanenbaum A.S., Klint P., Bohm W.: Guidelines for software portability. Softw. Pract. Exp. 8, 681–698 (1978)
Verhoef C.: Quantitative aspects of outsourcing deals. Sci. Comput. Program. 56(3), 275–313 (2005)
Watkins D., Hammond M., Abrams B.: Programming in the .NET Environment. Addison-Wesley, Reading (2003)
Wirth N.: Theory and Techniques of Compiler Construction. Addison-Wesley, Reading (1996)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Bergstra, J.A., Middelburg, C.A. Machine structure oriented control code logic. Acta Informatica 46, 375–401 (2009). https://doi.org/10.1007/s00236-009-0099-2
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00236-009-0099-2