Home research People General Info Seminars Resources Intranet

These pages have moved to /~jarvi/

You should be redirected automatically. If not, just click on the above link.


Publications, Jaakko Järvi

Journal articles

[1] Lubomir Bourdev and Jaakko Järvi. Efficient run-time dispatching in generic programming with minimal code bloat. Science of Computer Programming, 2008. To appear.
[ bib | Abstract ]
[2] Douglas Gregor and Jaakko Järvi. Variadic templates for C++0x. Journal of Object Technology, 7(2):31-51, February 2008. Special Issue OOPS Track at SAC 2007.
[ bib | http ]
[3] Ronald Garcia, Jaakko Järvi, Andrew Lumsdaine, Jeremy Siek, and Jeremiah Willcock. An extended comparative study of language support for generic programming. Journal of Functional Programming, 17:145-205, March 2007.
[ bib ]
[4] Douglas Gregor, Jaakko Järvi, Mayuresh Kulkarni, Andrew Lumsdaine, David Musser, and Sibylle Schupp. Generic programming and high-performance libraries. International Journal of Parallel Programming, 33(2-3):145-164, June 2005.
[ bib | .pdf ]
[5] Jaakko Järvi, Gary Powell, and Andrew Lumsdaine. The Lambda Library : unnamed functions in C++. Software-Practice and Experience, 33:259-291, 2003.
[ bib | .pdf ]
[6] Jaakko Järvi, Jeremiah Willcock, Howard Hinnant, and Andrew Lumsdaine. Function overloading based on arbitrary properties of types. C/C++ Users Journal, 21(6):25-32, June 2003.
[ bib ]
[7] Irina Virtanen, Eeva Ekholm, Tero Aittokallio, Jarno Tähtinen, Jussi Salmi, Jaakko Järvi, Päivi Polo-Kantola, and Olli Polo. State of vigilance, oestrogen replacement therapy, and libid profile as modifiers of nocturnal movement-induced heart rate responces. Clinical Physiology and Functional Imaging, 23(5):293-299, 2003.
[ bib ]
[8] Jaakko Järvi. Tuple types and multiple return values. C/C++ Users Journal, 19:24-35, August 2001.
[ bib ]
[9] Jaakko Järvi. Object-oriented model for partially separable functions in parameter estimation. Acta Cybernetica, 14(2):285-302, 1999.
[ bib | .ps ]
[10] Tero Aittokallio, Mats Gyllenberg, Jaakko Järvi, Olli Nevalainen, and Olli Polo. Detection of high-frequency respiratory movements during sleep. Computer Methods and Programs in Biomedicine, 61(3):171-185, 2000.
[ bib ]
[11] Jaakko Järvi, Samuel Nyman, Martti Komu, and Jari J. Forsström. A PC-program for automatic analysis of NMR spectrum series. Computer Methods and Programs in Biomedicine, 52:213-222, 1997.
[ bib ]

Conference and Symposium articles

[1] Jaakko Järvi, Mat Marcus, Sean Parent, John Freeman, and Jacob N. Smith. Property models: from incidental algorithms to reusable components. In GPCE '08: Proceedings of the 7th international conference on Generative programming and component engineering, New York, NY, USA, 2008. ACM. To appear.
[ bib ]
[2] Jaakko Järvi and John Freeman. Lambda functions for C++0x. In SAC '08: Proceedings of the 2008 ACM symposium on Applied computing, pages 178-183, New York, NY, USA, 2008. ACM. Best paper award (Software theme).
[ bib ]
[3] Xiaolong Tang and Jaakko Järvi. Concept-based optimization. In ACM SIGPLAN Symposium on Library-Centric Software Design (LCSD'07), October 2007.
[ bib ]
[4] Jaakko Järvi, Matthew A. Marcus, and Jacob N. Smith. Library composition and adaptation using C++ concepts. In GPCE '07: Proceedings of the 6th international conference on Generative programming and component engineering, pages 73-82, New York, NY, USA, 2007. ACM. (Copyright ACM, 2007. This is the authors' version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution.).
[ bib | .pdf ]
[5] Jacob Smith, Gabriel Dos Reis, and Jaakko Järvi. Algorithmic differentiation in axiom. In ISSAC '07: Proceedings of the 2007 international symposium on Symbolic and algebraic computation, pages 347-354, New York, NY, USA, 2007. ACM.
[ bib ]
[6] Douglas Gregor and Jaakko Järvi. Variadic templates for C++. In SAC '07: Proceedings of the 2007 ACM symposium on Applied computing, pages 1101-1108, New York, NY, USA, 2007. ACM Press.
[ bib ]
[7] Douglas Gregor, Jaakko Järvi, Jeremy Siek, Bjarne Stroustrup, Gabriel Dos Reis, and Andrew Lumsdaine. Concepts: linguistic support for generic programming in C++. In OOPSLA '06: Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications, pages 291-310, New York, NY, USA, 2006. ACM Press.
[ bib ]
[8] Jaakko Järvi, Douglas Gregor, Jeremiah Willcock, Andrew Lumsdaine, and Jeremy Siek. Algorithm specialization in generic programming: challenges of constrained generics in C++. In PLDI '06: Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation, pages 272-282, New York, NY, USA, June 2006. ACM Press. (Copyright ACM, 2006. This is the authors' version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution.).
[ bib | .pdf ]
[9] Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine. Associated types and constraint propagation for mainstream object-oriented generics. In OOPSLA '05: Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming systems languages and applications, pages 1-19, New York, NY, USA, 2005. ACM Press. (Copyright ACM, 2005. This is the authors' version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution.).
[ bib | .pdf ]
[10] Ronald Garcia, Jaakko Järvi, Andrew Lumsdaine, Jeremy Siek, and Jeremiah Willcock. A comparative study of language support for generic programming. In Proceedings of the 18th ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications, pages 115-134. ACM Press, October 2003.
[ bib | .html ]
[11] Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine. Concept-controlled polymorphism. In Frank Pfennig and Yannis Smaragdakis, editors, Generative Programming and Component Engineering, volume 2830 of LNCS, pages 228-244. Springer Verlag, September 2003.
[ bib | .html ]
[12] Jaakko Järvi. C++ function object binders made easy. In Proceedings of the Generative and Component-Based Software Engineering'99, volume 1799 of Lecture Notes in Computer Science, pages 165-177, Berlin, Germany, August 2000. Springer.
[ bib | .html ]
[13] Jaakko Järvi. Compile time recursive objects in C++. In Technology of Object-Oriented Languages and Systems, pages 66-77. IEEE Computer Society Press, 1998.
[ bib | .html ]
[14] Jaakko Järvi. Processing sparse vectors during compile time in C++. In Scientific Computing in Object-Oriented Parallel Environments, volume 1343 of Lecture Notes in Computer Science, pages 41-48. Springer-Verlag, 1997.
[ bib | .html ]

Workshop articles

[1] Luke Wagner, Jaakko Järvi, and Bjarne Stroustrup. Using ownership types to support library aliasing boundaries. In Tobias Wrigstad, editor, 3rd International Workshop on Aliasing, Confinement and Ownership in object-oriented programming (IWACO), at ECOOP 2007, pages 63-71, July 2007. http://www.cs.purdue.edu/homes/wrigstad/iwaco/.
[ bib ]
[2] Mat Marcus, Jaakko Järvi, and Sean Parent. Runtime polymorphic generic programming-mixing objects and concepts in ConceptC++. In Kei Davis and Jörg Striegnitz, editors, Multiparadigm Programming 2007: Proceedings of the MPOOL Workshop at ECOOP'07, July 2007. http://homepages.fh-regensburg.de/~mpool/mpool07/programme.html.
[ bib ]
[3] Jacob Smith, Jaakko Järvi, and Thomas Ioerger. A parametrized iterator request framework for generic libraries. In Workshop of Library-Centric Software Design at OOPSLA'06, Portland Oregon, October 2006. (short paper).
[ bib ]
[4] Yuriy Solodkyy, Jaakko Järvi, and Esam Mlaih. Extending type systems in a library - type-safe XML processing in C++. In Workshop of Library-Centric Software Design at OOPSLA'06, Portland Oregon, October 2006.
[ bib ]
[5] Lubomir Bourdev and Jaakko Järvi. Efficient run-time dispatching in generic programming with minimal code bloat. In Workshop of Library-Centric Software Design at OOPSLA'06, Portland Oregon, October 2006.
[ bib ]
[6] Gabriel Dos Reis and Jaakko Järvi. What is generic programming? In Proceedings of the First International Workshop of Library-Centric Software Design (LCSD '05). An OOPSLA '05 workshop, October 2005.
[ bib ]
[7] Jaakko Järvi, Andrew Lumsdaine, Douglas Gregor, Mayuresh Kulkarni, David Musser, and Sibylle Schupp. Generic programming and high-performance libraries. In Workshop on Next Generation Software at IPDPS 2004, Santa Fe, New Mexico, April 2004.
[ bib ]
[8] Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine. Algorithm specialization and concept constrained genericity. In Concepts: a Linguistic Foundation of Generic Programming at Adobe Tech Summit, San Jose, CA. Adobe Systems, April 2004.
[ bib | .pdf ]
[9] Jeremiah Willcock, Jaakko Järvi, Andrew Lumsdaine, and David Musser. A formalization of concepts for generic programming. In Concepts: a Linguistic Foundation of Generic Programming at Adobe Tech Summit, San Jose, CA. Adobe Systems, April 2004.
[ bib | .pdf ]
[10] Jaakko Järvi, Andrew Lumsdaine, Jeremy Siek, and Jeremiah Willcock. An analysis of constrained polymorphism for generic programming. In Kei Davis and Jörg Striegnitz, editors, Multiparadigm Programming 2003: Proceedings of the MPOOL Workshop at OOPSLA'03, John von Neumann Institute of Computing series, pages 87-107, October 2003.
[ bib | .pdf ]
[11] Jaakko Järvi and Gary Powell. Side effects and partial function application in C++. In Proceedings of the Multiparadigm Programming with OO Languages Workshop (MPOOL'01) at ECOOP 2001, John von Neumann Institute of Computing series, pages 43-60, 2001.
[ bib | .pdf ]
[12] Jaakko Järvi and Gary Powell. The lambda library : Lambda abstraction in C++. In Proceedings of the Second Workshop on C++ Template Programming (TMPW'01) at OOPSLA 2001, October 2001.
[ bib | .pdf ]

Software

[1] Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine. Boost enable_if Templates in Boost Utility Library. www.boost.org, 2003.
[ bib ]
[2] Jaakko Järvi and Gary Powell. The Boost Lambda Library. www.boost.org, 2002.
[ bib ]
[3] Jaakko Järvi. The Boost Tuple Library. www.boost.org, 2001.
[ bib ]

C++ standardization work

[1] Jaakko Järvi, John Freeman, and Lawrence Crowl. Lambda expressions and closures: Wording for monomorphic lambdas (revision 3). Technical Report N2529=08-0039, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, February 2008.
[ bib | .pdf ]
[2] Jaakko Järvi, John Freeman, and Lawrence Crowl. Lambda expressions and closures: Wording for monomorphic lambdas. Technical Report N2413=07-0273, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, September 2007.
[ bib | .pdf ]
[3] Jaakko Järvi, John Freeman, and Lawrence Crowl. Lambda functions and closures for C++ (Revision 1). Technical Report N2329=07-0189, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, June 2007.
[ bib | .pdf ]
[4] Douglas Gregor, Jaakko Järvi, Jens Maurer, and Jason Merrill. Proposed wording for variadic templates (revision 1). Technical Report N2191=07-0051, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, March 2007.
[ bib ]
[5] Douglas Gregor and Jaakko Järvi. Variadic templates for the C++0x standard library (revision 1). Technical Report N2192=07-0052, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, March 2007.
[ bib ]
[6] Douglas Gregor and Jaakko Järvi. decltype for the C++0x standard library. Technical Report N2194=07-0054, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, March 2007.
[ bib ]
[7] Douglas Gregor, Jaakko Järvi, Jens Maurer, and Jason Merrill. Proposed wording for variadic tempplates. Technical Report N2152=07-0012, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, January 2007.
[ bib | .pdf ]
[8] Douglas Gregor and Jaakko Järvi. Variadic templates for the C++0x standard library. Technical Report N2151=07-0011, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, January 2007.
[ bib | .pdf ]
[9] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Decltype (revision 6): proposed wording. Technical Report N2115=06-0185, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, November 2006.
[ bib | .pdf ]
[10] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Decltype (revision 5). Technical Report N1978=06-0048, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, April 2006.
[ bib | .pdf ]
[11] Jeremiah Willcock, Jaakko Järvi, Douglas Gregor, Bjarne Stroustrup, and Andrew Lumsdaine. Lambda functions and closures for C++. Technical Report N1968=06-0038, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, February 2006.
[ bib | .pdf ]
[12] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Deducing the type of variable from its initializer expression (revision 4). Technical Report N1984=06-0054, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, April 2006.
[ bib | .pdf ]
[13] Douglas Gregor, Jaakko Järvi, and Gary Powell. Variadic templates (revision 3). Technical Report N2080=06-0150, ISO/IEC JTC 1, Information Technology, Subcommittee SC 22, Programming Language C++, October 2006.
[ bib | .pdf ]
[14] Jeremy Siek, Douglas Gregor, Ronald Garcia, Jeremiah Willcock, Jaakko Järvi, and Andrew Lumsdaine. Concepts for C++0x (Revision 1). Technical Report N1849=05-0109, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, August 2005.
[ bib | .pdf ]
[15] Jeremy Siek, Douglas Gregor, Ronald Garcia, Jeremiah Willcock, Jaakko Järvi, and Andrew Lumsdaine. Concepts for C++0x. Technical Report N1758=05-0018, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, January 2005.
[ bib | .pdf ]
[16] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Deducing the type of variable from its initializer expression (revision 3). Technical Report N1894=04-0154, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, October 2005.
[ bib | .pdf ]
[17] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Deducing the type of variable from its initializer expression (revision 2). Technical Report N1794=04-0054, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, April 2005.
[ bib | .pdf ]
[18] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Deducing the type of variable from its initializer expression. Technical Report N1721=04-0161, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, October 2004.
[ bib | .pdf ]
[19] Jaakko Järvi, Bjarne Stroustrup, and Gabriel Dos Reis. Decltype and auto (revision 4). Technical Report N1705=04-0145, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, September 2004.
[ bib | .pdf ]
[20] Douglas Gregor, Jaakko Järvi, and Gary Powell. Variadic templates: Exploring the design space. Technical Report N1704=04-0144, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming language C++, September 2004. www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1704.pdf.
[ bib | .pdf ]
[21] Gary Powell, Douglas Gregor, and Jaakko Järvi. Overloading operator.() & operator.*(). Technical Report N1671=04-0111, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, September 2004.
[ bib ]
[22] Jaakko Järvi and Bjarne Stroustrup. Mechanisms for querying types of expressions: Decltype and auto revisited. Technical Report N1527=03-0110, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, September 2003. www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1527.pdf.
[ bib | .pdf ]
[23] Jaakko Järvi, Bjarne Stroustrup, Douglas Gregor, and Jeremy Siek. Decltype and auto. Technical Report N1478=03-0061, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, April 2003. www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1478.pdf.
[ bib | .pdf ]
[24] Jaakko Järvi. Proposal for adding tuple types into the standard library. Technical Report N1403=02-0061, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming Language C++, 2002.
[ bib | .pdf ]
[25] P. Dimov, Douglas Gregor, Jaakko Järvi, and Gary Powell. A proposal to add an enhanced binder to the library technical report. Technical Report N1455=03-0038, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming language C++, 2003. www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1455.htm.
[ bib ]
[26] Douglas Gregor, Gary Powell, and Jaakko Järvi. Typesafe variable-length function and template argument lists. Technical Report N1483=03-0066, ISO/IEC JTC 1, Information technology, Subcommittee SC 22, Programming language C++, 2003. www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1483.pdf.
[ bib | .pdf ]

Other (local workshop papers, abstracts ...)

[1] Jaakko Järvi. Incorporating tuple types to C++. In Proceedings of the Nordic Workshop on Programming Theory'99, October 1999. Extended abstract.
[ bib ]
[2] Jaakko Järvi. Object Oriented Model for Parameter Estimation of Partially Separable Functions. In Volume of Extended Abstracts of the Conference of PhD Students in Computer Science, 1998.
[ bib ]
[3] Jaakko Järvi, Jari J. Forsström, and Antti Koski. The nesumed project - case studies of computational intelligence in medicine. In Leena Yliniemi and E. Juuso, editors, Proceedings of the TOOLMET 96' - Tool Environments and Development Methods for Intelligent Systems, University of Oulu, Control Engineering Laboratory, Report Series, 1996.
[ bib ]
[4] Antero Järvi and Jaakko Järvi. Shape recognition with modular neural networks. In C. Carlsson, T. Järvi, and T. Reponen, editors, STeP-94 - Multiple Paradigms for Artificial Intelligence, 1994.
[ bib ]

Technical reports

[1] Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine. Associated types and constraint propagation for mainstream object-oriented generics. Technical Report 2004-12-3, Texas A&M University, Computer Science, December 2004. http://www.cs.tamu.edu/research/tr.
[ bib ]
[2] Jaakko Järvi, Andrew Lumsdaine, and David S. Wise, editors. MSPLS 2002: Proceedings of the Workshop of the Midwest Society for Programming Languages and Systems, April 2002. Technical Report 560. in the Indiana University Computer Science TR Series (www.cs.indiana.edu/Research/techreports/).
[ bib ]
[3] Jaakko Järvi and Gary Powell. The Lambda Library : Lambda abstraction in C++. Technical Report 378, Turku Centre for Computer Science, November 2000. www.tucs.fi.
[ bib | .ps ]
[4] Jaakko Järvi. ML-style tuple assignment in standard C++ - extending the multiple return value formalism. Technical Report 267, Turku Centre for Computer Science, March 1999. www.tucs.fi.
[ bib ]
[5] Jaakko Järvi. Tuples and multiple return values in C++. Technical Report 249, Turku Centre for Computer Science, March 1999. www.tucs.fi.
[ bib ]
[6] Tero Aittokallio, Mats Gyllenberg, Jaakko Järvi, Olli Polo, and Olli Nevalainen. Detection of High-Frequency Respiratory Movements During Sleep. Technical Report 261, Turku Centre for Computer Science, March 1999. www.tucs.fi.
[ bib ]
[7] Jaakko Järvi. Compile time recursive objects in C++. Technical Report 170, Turku Centre for Computer Science, April 1998. www.tucs.fi.
[ bib ]
[8] Jaakko Järvi. Compile time sparce vectors in C++. Technical Report 107, Turku Centre for Computer Science, March 1997. www.tucs.fi.
[ bib ]

Talks

[1] Jaakko Järvi. C++0x lambda expressions. Adobe Systems Inc. Developer Seminar, August 2008.
[2] Jaakko Järvi. Associated types and constraint propagation in OO generics. Dagstuhl seminar Types for Tools: Applications of Type Theoretic Techniques, June 2005. http://www.dagstuhl.de/05251/.
[3] Jaakko Järvi. The Lambda Library : Unnamed Functions for C++. ACCU 2003 C++ conference, Oxford, UK, April 2003.
[4] Jaakko Järvi and Jeremiah Willcock. A comparative study of language support for generic programming. Presentation at Microsoft Reserach, Cambridge, UK, September 2003.
[ .pdf ]
[5] Jaakko Järvi. Language support for generic programming. Presentation at Texas A&M University, Computer Science, August 2004.