Detecting memory errors via static pointer analysis (preliminary experience)
Proceedings of the 1998 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Pragmatic Aspects of Reusable Program Generators
SAIG '00 Proceedings of the International Workshop on Semantics, Applications, and Implementation of Program Generation
Mechanisms for secure modular programming in Java
Software—Practice & Experience - Special issue: Security software
Pragmatic aspects of reusable program generators
Journal of Functional Programming
On-chip Stack Based Memory Organization for Low Power Embedded Architectures
DATE '03 Proceedings of the conference on Design, Automation and Test in Europe - Volume 1
DATE '03 Proceedings of the conference on Design, Automation and Test in Europe: Designers' Forum - Volume 2
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Modular information hiding and type-safe linking for C
TLDI '07 Proceedings of the 2007 ACM SIGPLAN international workshop on Types in languages design and implementation
Porting a user-level communication architecture to NT: experiences and performance
WINSYM'99 Proceedings of the 3rd conference on USENIX Windows NT Symposium - Volume 3
Communications of the ACM - Security in the Browser
Scalable flat-combining based synchronous queues
DISC'10 Proceedings of the 24th international conference on Distributed computing
Proceedings of the 14th international conference on Model driven engineering languages and systems
Fast and scalable rendezvousing
DISC'11 Proceedings of the 25th international conference on Distributed computing
Hi-index | 0.00 |
Every programmer and software project manager must master the art of creating reusable software modules; they are the building blocks of large, reliable applications. Unlike some modern object-oriented languages, C provides little linguistic support or motivation for creating reusable application programming interfaces (APIs). While most C programmers use APIs and the libraries that implement them in almost every application they write, relatively few programmers create and disseminate new, widely applicable APIs. C Interfaces and Implementations shows how to create reusable APIs using interface-based design, a language-independent methodology that separates interfaces from their implementations. This methodology is explained by example. The author describes in detail 24 interfaces and their implementations, providing the reader with a thorough understanding of this design approach.Features of C Interfaces and Implementations: Concise interface descriptions that comprise a reference manual for programmers interested in using the interfaces. A guided tour of the code that implements each chapter's interface tp help those modifying or extending an interface or designing related interfaces. In-depth focus on "algorithm engineering:" how to package data structures and related algorithms into reusable modules. Source code for 24 APIs and 8 sample applications is examined, with each presented as a "literate program" in which a thorough explanation is interleaved with the source code. Rarely documented C programming tricks-of-the-trade. Convenient access to all source code in the book via the World Wide Web at http://www.cs.princeton.edu/software/cii/