Publications, Jaakko Järvi
Journal articles
| [1] |
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, 2007.
To appear. [ bib ] |
| [2] |
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 ] |
| [3] |
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 ] |
| [4] |
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 ] |
| [5] |
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 ] |
| [6] |
Jaakko Järvi.
Tuple types and multiple return values.
C/C++ Users Journal, 19:24-35, August 2001. [ bib ] |
| [7] |
Jaakko Järvi.
Object-oriented model for partially separable functions in parameter
estimation.
Acta Cybernetica, 14(2):285-302, 1999. [ bib | .ps ] |
| [8] |
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 ] |
| [9] |
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 articles
| [1] |
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, 2007.
To appear. [ bib ] |
| [2] |
Douglas Gregor and Jaakko Järvi.
Variadic templates for C++.
In SAC '07: Proceedings of the 2007 ACM symposium on Applied
computing, New York, NY, USA, March 2007. ACM Press.
To appear. [ bib ] |
| [3] |
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 ] |
| [4] |
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, Ottawa,
Ontario, Canada, 2006. ACM Press. [ bib ] |
| [5] |
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. [ bib ] |
| [6] |
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 ] |
| [7] |
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 ] |
| [8] |
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 ] |
| [9] |
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 ] |
| [10] |
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] |
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 ] |
| [2] |
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 ] |
| [3] |
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 ] |
| [4] |
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 ] |
| [5] |
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 ] |
| [6] |
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 ] |
| [7] |
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 ] |
| [8] |
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, Anaheim, CA, October
2003. [ bib | .pdf ] |
| [9] |
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 ] |
| [10] |
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] |
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 ] |
| [2] |
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 ] |
| [3] |
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 ] |
| [4] |
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 ] |
| [5] |
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 ] |
| [6] |
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 ] |
| [7] |
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 ] |
| [8] |
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 ] |
| [9] |
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 ] |
| [10] |
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 ] |
| [11] |
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 ] |
| [12] |
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 ] |
| [13] |
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 ] |
| [14] |
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 ] |
| [15] |
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 ] |
| [16] |
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 ] |
| [17] |
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 ] |
| [18] |
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 ] |
| [19] |
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 ] |
| [20] |
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 ] |
| [21] |
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 ] |
| [22] |
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 ] |
| [23] |
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.
The Lambda Library : Unnamed Functions for C++.
ACCU 2003 C++ conference, Oxford, UK, April 2003. |
| [2] |
Jaakko Järvi and Jeremiah Willcock.
A comparative study of language support for generic programming.
Presentation at Microsoft Reserach, Cambridge, UK, September 2003. [ .pdf ] |
| [3] |
Jaakko Järvi.
Language support for generic programming.
Presentation at Texas A&M University, Computer Science, August 2004. |