HackerPapers

arXiv:1003.2547cs.PL

The C Object System: Using C as a High-Level Object-Oriented Language

Laurent Deniau

Abstract

The C Object System (Cos) is a small C library which implements high-level concepts available in Clos, Objc and other object-oriented programming languages: uniform object model (class, meta-class and property-metaclass), generic functions, multi-methods, delegation, properties, exceptions, contracts and closures. Cos relies on the programmable capabilities of the C programming language to extend its syntax and to implement the aforementioned concepts as first-class objects. Cos aims at satisfying several general principles like simplicity, extensibility, reusability, efficiency and portability which are rarely met in a single programming language. Its design is tuned to provide efficient and portable implementation of message multi-dispatch and message multi-forwarding which are the heart of code extensibility and reusability. With COS features in hand, software should become as flexible and extensible as with scripting languages and as efficient and portable as expected with C programming. Likewise, Cos concepts should significantly simplify adaptive and aspect-oriented programming as well as distributed and service-oriented computing

arXiv comments
18p
Journal reference
DOI
Subjects
cs.PLProgramming Languages

On Hacker News

Linked by 2 identifiable commenters in 2 comments across 2 threads, from Jun 2017 to Jun 2023. Found in 2 HN submissions from Mar 2010 to Dec 2018. Open submission discussions.

Comments linking this paper, per year.

Discussed in comments2 threads

    • The C Object System looks like an interesting way of doing this today: https://github.com/CObjectSystem/COS and https://arxiv.org/pdf/1003.2547.pdf

      zzbn00View on HNParent context

    • I agree, but moreover: You can also do nice OOP with C. Take a look, for example, to COS (C Object System) which implements OOP on top of your C compiler. The object system itself is inspired by CLOS (Common Lisp Object System) and Objective-C (in turn inspired by Smalltalk). It…

      flavio81View on HNParent context

Submitted to Hacker News

Connected through shared HN threads, not inferred similarity or a recommendation.