Papers and Presentations
Contents
Presentations:
-
Thread Safety
An expanded version of the classes the work talk focusing on thread safety and covering locks and atomics. -
Classes that Work: Copy and Assignment
From an engineering boot camp at Adobe, June 26th, 2008. Shortened version of internal talk. Recording with Eric Berdahl presenting available here [Recording no longer available]. -
Adobe Source Libraries: Overview & Philosophy
From ACCU 2008, April 3, 2008. -
Science of ‘Shrink Wrap’: A Look Inside Adobe Photoshop
Presentation from January, 18th, 2008 at Indiana University revised from a talk given at Texas A&M. -
A Possible Future of Software Development
Revised for Google Tech Talks, July 25, 2007. Recorded Presentation. -
A Possible Future of Software Development
Revised for [http://cppnow.org/ BoostCon’07 Keynote, May 16, 2007]. -
Concept-Based Runtime Polymorphism
From BoostCon’07, May 17, 2007. -
A Possible Future of Software Development
From Library-Centric Software Design Workshop, OOPSLA, October 22, 2006.
Publications:
-
Algorithms for User Interfaces (http://www.emarcus.org/papers/gpce2009-marcus.pdf)
Jaakko Järvi, Texas A&M University, Mat Marcus, Canyonlands Software Design, Sean Parent, Adobe Systems, Inc., John Freeman, Texas A&M University, and Jacob N. Smith, Texas A&M University
From: GPCE ‘09 Proceedings of the 8th international conference on Generative programming and component engineering, New York, NY, USA, pages 147-156, 2009. ACM
Copyright ACM, 2009. This is the authors’ version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in the Proceedings of the 8th International Conference on Generative Programming and Component Engineering (Denver, Colorado, October 4–5, 2009). GPCE 2009 https://doi.acm.org/10.1145/1621607.1621630 -
Runtime Concepts for the C++ Standard Template Library (Extended Version) (http://www.emarcus.org/papers/oops2008-marcus.pdf)
Peter Pirkelbauer, Texas A&M University, Sean Parent, Adobe Systems, Inc., Mat Marcus, Adobe Systems, Inc., Bjarne Stroustrup, Texas A&M University
From: Science of Computer Programming, 2009. To appear. -
Programming with C++ Concepts -
Jaakko Järvi, Texas A&M University, Mat Marcus, Adobe Systems, Inc., and Jacob N. Smith, Texas A&M University
From: Science of Computer Programming, 2008. To appear. -
Property Models: From Incidental Algorithms to Reusable Components (http://www.emarcus.org/papers/gpce2008-marcus.pdf)
Jaakko Järvi, Texas A&M University, Mat Marcus, Adobe Systems, Inc., Sean Parent, Adobe Systems, Inc., John Freeman, Texas A&M University, and Jacob N. Smith, Texas A&M University
From: GPCE ‘08: Proceedings of the 7th international conference on Generative programming and component engineering, New York, NY, USA, pages 89-98, 2008. ACM
Copyright ACM, 2008. This is the authors’ version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in the Proceedings of the 7th International Conference on Generative Programming and Component Engineering (Nashville, Tennessee, October 19–20, 2008). GPCE 2008 https://doi.acm.org/10.1145/1449913.1449927 -
Runtime Concepts for the C++ Standard Template Library (http://www.emarcus.org/papers/oops2008-marcus.pdf)
Peter Pirkelbauer, Texas A&M University, Sean Parent, Adobe Systems, Inc., Mat Marcus, Adobe Systems, Inc., Bjarne Stroustrup, Texas A&M University
From: Proceedings of the 2008 ACM symposium on Applied Computing, Special Track on Object Oriented Programming Languages and Systems
Copyright ACM, 2008. This is the authors’ version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in the Proceedings of the 2008 ACM symposium on Applied Computing (Fortaleza, Brazil, March 16-20, 2008). SAC 2008 https://doi.acm.org/10.1145/1363686.1363734 -
Library Composition and Adaptation using C++ Concepts (http://www.emarcus.org/papers/gpce2007f-authors-version.pdf)
Jaakko Järvi, Texas A&M University, Mat Marcus, Adobe Systems, Inc., Jacob N. Smith, Texas A&M University.
From: Proceedings of the 6th international conference on Generative programming and component engineering, 2007.
Copyright ACM, 2007. This is the author’s version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in the Proceedings of the 6th International Conference on Generative Programming and Component Engineering (Salzburg, Austria, October 01 - 03, 2007). GPCE ‘07 https://doi.acm.org/10.1145/1289971.1289984 -
Runtime Polymorphic Generic Programming–Mixing Objects and Concepts in ConceptC++ (http://www.emarcus.org/papers/MPOOL2007-marcus.pdf)
Mat Marcus, Adobe Systems, Inc., Jaakko Järvi, Texas A&M University, Sean Parent, Adobe Systems, Inc.
From: The 6th International Workshop on Multiparadigm Programming with Object-Oriented Languages at the ECOOP 2007. Slides (http://www.emarcus.org/papers/MPOOL2007-slides-marcus.pdf) -
Notes on Foundations of Programming I (http://www.emarcus.org/papers/PAM.pdf)
Alex Stepanov and Mat Marcus, Adobe Systems, Inc.,
Class notes 2004-2005 -
Notes on Foundations of Programming II (http://www.emarcus.org/papers/FOP2.pdf)
Alex Stepanov and Mat Marcus, Adobe Systems, Inc.,
Class notes 2004-2005 -
Simulating Partial Specialization (http://www.emarcus.org/papers/PartialSpecialization2000.pdf)
Mat Marcus, Adobe Systems, Inc.
From: the OOPSLA Workshop On Generative Programming 2001. Slides (http://www.emarcus.org/papers/PartialSpecSlides.pdf)
See also The Boost Type Traits Library\ -
How To Write A Simple Lexical Analyzer or Parser
Sean Parent, Adobe Systems, Inc.
Papers To Be Written:
- Generic Programming Definition and Terms
- Regular Concept Requirements
- Proxy Dilemma
- The Problem with Swap
- The Problem with Dereference
- Namespaces, ADL, and Modeling
- Namespaces, ADL, and Refinement
- Namespaces, ADL, and Versioning
- Object Oriented Programming in Generic Terms
- Functional Programming in Generic Terms