Abstract
Many concepts of computing science can be illustrated in ways that do not require programming. CS Unplugged is a well-known resource for that purpose. However, the examples in CS Unplugged and elsewhere focus on topics such as algorithmics, cryptography, logic and data representation, to the neglect of topics in programming language foundations, such as semantics and type theory.
This paper begins to redress the balance by illustrating the principles of static type systems in two non-programming scenarios where there are physical constraints on forming connections between components. The first scenario involves serial cables and the ways in which they can be connected. The second example involves model railway layouts and the ways in which they can be constructed from individual pieces of track. In both cases, the physical constraints can be viewed as a type system, such that typable systems satisfy desirable semantic properties.
Supported by the UK EPSRC grant EP/K034413/1, “From Data Types to Session Types: A Basis for Concurrency and Distribution (ABCD)”.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Brio. www.brio.uk
CS Unplugged. csunplugged.org
Hornby. www.hornby.com
Theoretical Computer Science. www.journals.elsevier.com/theoretical-computer-science
Thomas & Friends. www.thomasandfriends.com
Abramsky, S., Gay, S.J., Nagarajan, R.: Interaction categories and the foundations of typed concurrent programming. In: Broy, M. (ed.) Proceedings of the NATO Advanced Study Institute on Deductive Program Design, pp. 35–113 (1996)
Awdrey, W.: Thomas the tank engine (1946)
Girard, J.-Y.: Linear logic. Theoret. Comput. Sci. 50, 1–102 (1987)
Joyal, A., Street, R., Verity, D.: Traced monoidal categories. Math. Proc. Cambridge Philos. Soc. 119(3), 447–468 (1996)
Kelly, G.M., Laplaza, M.L.: Coherence for compact closed categories. J. Pure Appl. Algebra 19, 193–213 (1980)
Ştefănescu, G.: Network Algebra. Springer, Heidelberg (2000). https://doi.org/10.1007/978-1-4471-0479-7
Victor, B.: Alligator eggs. worrydream.com/AlligatorEggs
Acknowledgements
I am grateful to Ornela Dardha, Conor McBride and Phil Wadler for comments on this paper and the seminar on which it is based; to João Seco for telling me about the Alligator Eggs presentation of untyped \(\lambda \)-calculus; and to an anonymous reviewer for noticing a small error.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this chapter
Cite this chapter
Gay, S.J. (2020). Cables, Trains and Types. In: Di Pierro, A., Malacaria, P., Nagarajan, R. (eds) From Lambda Calculus to Cybersecurity Through Program Analysis. Lecture Notes in Computer Science(), vol 12065. Springer, Cham. https://doi.org/10.1007/978-3-030-41103-9_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-41103-9_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-41102-2
Online ISBN: 978-3-030-41103-9
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)