Kell, Stephen (2017) Some were meant for C: the endurance of an unmanageable language. In: Onward! 2017 Proceedings of the 2017 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software. . ACM, New York, NY, USA ISBN 978-1-4503-5530-8. (doi:10.1145/3133850.3133867) (Access to this publication is currently restricted. You may be able to access a copy if URLs are provided) (KAR id:69698)
PDF
Publisher pdf
Language: English Restricted to Repository staff only |
|
Contact us about this Publication
|
|
Official URL: http://dx.doi.org/10.1145/3133850.3133867 |
Abstract
The C language leads a double life: as an application programming language of yesteryear, perpetuated by circumstance; and as a systems programming language which remains a weapon of choice decades after its creation. This essay is a C programmer's reaction to the call to abandon ship. It questions several aspects commonly held to define the experience of using C; these include unsafety, undefined behaviour, and the motivation of performance. It argues all these are in fact inessential; rather, it traces C's ultimate strength to a communicative design which cannot be understood within the usual conception of "a programming language", but can be seen as the antithesis of so-called "managed" languages. This communicativity is understood as facilitating the essential aspect of system-building: creating parts which interact with other remote parts---being "alongside" not "within", and of "alien" origin.
Item Type: | Conference or workshop item (Proceeding) |
---|---|
DOI/Identification number: | 10.1145/3133850.3133867 |
Divisions: | Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing |
Depositing User: | Stephen Kell |
Date Deposited: | 25 Jan 2019 15:30 UTC |
Last Modified: | 16 Feb 2021 13:58 UTC |
Resource URI: | https://kar.kent.ac.uk/id/eprint/69698 (The current URI for this page, for reference purposes) |
- Export to:
- RefWorks
- EPrints3 XML
- BibTeX
- CSV
- Depositors only (login required):