Mads Tofte
Encyclopedia
Mads Tofte is a Danish
Denmark
Denmark is a Scandinavian country in Northern Europe. The countries of Denmark and Greenland, as well as the Faroe Islands, constitute the Kingdom of Denmark . It is the southernmost of the Nordic countries, southwest of Sweden and south of Norway, and bordered to the south by Germany. Denmark...

 computer scientist
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

 who has contributed in particular to Functional programming
Functional programming
In computer science, functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming style, which emphasizes changes in state...

 and the Standard ML
Standard ML
Standard ML is a general-purpose, modular, functional programming language with compile-time type checking and type inference. It is popular among compiler writers and programming language researchers, as well as in the development of theorem provers.SML is a modern descendant of the ML...

 programming language.

In April 1999 he was appointed the first managing director of the IT University of Copenhagen
IT University of Copenhagen
The IT University of Copenhagen is a Danish globally oriented, independent university.The IT University of Copenhagen was established in Copenhagen, Denmark in 1999. At that time, it was - in Danish - called "IT-højskolen"...

. He oversaw the creation of the university from scratch, the hiring of faculty/staff, recruitment of students and the design of the study programs. The first students started 5 months later in September 1999. Since 2003 he has been vice chancellor of the IT University of Copenhagen
IT University of Copenhagen
The IT University of Copenhagen is a Danish globally oriented, independent university.The IT University of Copenhagen was established in Copenhagen, Denmark in 1999. At that time, it was - in Danish - called "IT-højskolen"...

.

Tofte was born in Lyngby
Kongens Lyngby
Kongens Lyngby is the main city in the affluent Danish municipality of Lyngby-Taarbæk. Just north of Copenhagen, the city lies in the northern part of Denmark's largest island, Zealand...

, Denmark and grew up in Holbæk
Holbæk
Holbæk is a town in Denmark and the seat of Holbæk municipality with a population of 27,055 . The city is located in the northeastern part of Region Sjælland, Denmark....

, Denmark
Denmark
Denmark is a Scandinavian country in Northern Europe. The countries of Denmark and Greenland, as well as the Faroe Islands, constitute the Kingdom of Denmark . It is the southernmost of the Nordic countries, southwest of Sweden and south of Norway, and bordered to the south by Germany. Denmark...

. He studied computer science
Computer science
Computer science or computing science is the study of the theoretical foundations of information and computation and of practical techniques for their implementation and application in computer systems...

 and mathematics
Mathematics
Mathematics is the study of quantity, space, structure, and change. Mathematicians seek out patterns and formulate new conjectures. Mathematicians resolve the truth or falsity of conjectures by mathematical proofs, which are arguments sufficient to convince other mathematicians of their validity...

 at the University of Copenhagen
University of Copenhagen
The University of Copenhagen is the oldest and largest university and research institution in Denmark. Founded in 1479, it has more than 37,000 students, the majority of whom are female , and more than 7,000 employees. The university has several campuses located in and around Copenhagen, with the...

 where he obtained an MSc
Master of Science
A Master of Science is a postgraduate academic master's degree awarded by universities in many countries. The degree is typically studied for in the sciences including the social sciences.-Brazil, Argentina and Uruguay:...

 degree (with supervisor Neil D. Jones) in 1984; then at University of Edinburgh
University of Edinburgh
The University of Edinburgh, founded in 1583, is a public research university located in Edinburgh, the capital of Scotland, and a UNESCO World Heritage Site. The university is deeply embedded in the fabric of the city, with many of the buildings in the historic Old Town belonging to the university...

 where he obtained a PhD
Doctor of Philosophy
Doctor of Philosophy, abbreviated as Ph.D., PhD, D.Phil., or DPhil , in English-speaking countries, is a postgraduate academic degree awarded by universities...

 degree in 1988 (advised by Robin Milner
Robin Milner
Arthur John Robin Gorell Milner FRS FRSE was a prominent British computer scientist.-Life, education and career:...

). He is doctor honoris causa 2007 from Kingston University
Kingston University
Kingston University is a public research university located in Kingston upon Thames, southwest London, United Kingdom. It was originally founded in 1899 as Kingston Technical Institute, a polytechnic, and became a university in 1992....

.

Scientific contributions

In his 1984 MSc
MSC
- Computers:* Mario Strikers Charged* Microsoft Common Console Document, file for the Microsoft Management Console* Microelectronics Support Centre* Microsoft Corporation* MIDI Show Control* Message Sequence Chart...

 thesis and prior work he investigated and formalized the CERES compiler generator (with Neil D. Jones), and showed that
(1) a compiler generator is itself a compiler from language definitions to compilers; and (2) under suitable assumptions there
exists a language definition that, when applied to itself, generates a compiler generator. This has close connections to self-application in partial evaluation
Partial evaluation
In computing, partial evaluation is a technique for several different types of program optimization by specialization. The most straightforward application is to produce new programs which run faster than the originals while being guaranteed to behave in the same way...

.

In his PhD
PHD
PHD may refer to:*Ph.D., a doctorate of philosophy*Ph.D. , a 1980s British group*PHD finger, a protein sequence*PHD Mountain Software, an outdoor clothing and equipment company*PhD Docbook renderer, an XML renderer...

 thesis he developed and proved correct the first sound type system for ML
ML
ml may refer to:* millilitre , a thousandth of a litre — not to be mixed up with millilambert* Malayalam language ISO 639-1 code* Mali, ISO 3166-1 country code...

-style polymorphic references
Type polymorphism
In computer science, polymorphism is a programming language feature that allows values of different data types to be handled using a uniform interface. The concept of parametric polymorphism applies to both data types and functions...

, an important open problem at the time. Moreover, he formalized a variant of the module system of the Standard ML
Standard ML
Standard ML is a general-purpose, modular, functional programming language with compile-time type checking and type inference. It is popular among compiler writers and programming language researchers, as well as in the development of theorem provers.SML is a modern descendant of the ML...

 programming language.

Mads Tofte is a co-author of the Definition of Standard ML
Standard ML
Standard ML is a general-purpose, modular, functional programming language with compile-time type checking and type inference. It is popular among compiler writers and programming language researchers, as well as in the development of theorem provers.SML is a modern descendant of the ML...

 and the associated Commentary, probably the most precise description developed for any realistic programming language. He co-developed the ML Kit, an implementation of Standard ML
Standard ML
Standard ML is a general-purpose, modular, functional programming language with compile-time type checking and type inference. It is popular among compiler writers and programming language researchers, as well as in the development of theorem provers.SML is a modern descendant of the ML...

 whose structure closely follows the Definition.

Subsequently he developed (with Jean-Pierre Talpin) the notion of region inference, a program analysis
Program analysis (computer science)
In computer science, program analysis is the process of automatically analysing the behavior of computer programs. Two main approaches in program analysis are static program analysis and dynamic program analysis...

 and memory management
Memory management
Memory management is the act of managing computer memory. The essential requirement of memory management is to provide ways to dynamically allocate portions of memory to programs at their request, and freeing it for reuse when no longer needed. This is critical to the computer system.Several...

 technique that avoids or minimizes the use of garbage collection
Garbage (computer science)
Garbage, in the context of computer science, refers to objects, data, or other regions of the memory of a computer system , which will not be used in any future computation by the system, or by a program running on it...

. This work was first published in POPL
POPL
The annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages is an academic conference in the field of computer science, with focus on fundamental principles in the design, definition, analysis, and implementation of programming languages, programming systems, and programming...

 1994 and in 2005 it earned the Association for Computing Machinery
Association for Computing Machinery
The Association for Computing Machinery is a learned society for computing. It was founded in 1947 as the world's first scientific and educational computing society. Its membership is more than 92,000 as of 2009...

 (ACM) POPL
POPL
The annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages is an academic conference in the field of computer science, with focus on fundamental principles in the design, definition, analysis, and implementation of programming languages, programming systems, and programming...

 1994 Most Influential Paper Award.

In the late nineties he co-developed (with Fritz Henglein and others) a type system and a sophisticated tool called AnnoDomini for mitigation of
the Year 2000 problem
Year 2000 problem
The Year 2000 problem was a problem for both digital and non-digital documentation and data storage situations which resulted from the practice of abbreviating a four-digit year to two digits.In computer programs, the practice of representing the year with two...

 in COBOL
COBOL
COBOL is one of the oldest programming languages. Its name is an acronym for COmmon Business-Oriented Language, defining its primary domain in business, finance, and administrative systems for companies and governments....

 software. The tool analyses legacy programs to discover all data fields that are used as dates. This
work was presented in a POPL 1999 invited keynote.

Awards

  • 2002 The IDG IT award (IT-prisen), for leadership of the IT University of Copenhagen
    IT University of Copenhagen
    The IT University of Copenhagen is a Danish globally oriented, independent university.The IT University of Copenhagen was established in Copenhagen, Denmark in 1999. At that time, it was - in Danish - called "IT-højskolen"...

  • 2005 The ACM
    Association for Computing Machinery
    The Association for Computing Machinery is a learned society for computing. It was founded in 1947 as the world's first scientific and educational computing society. Its membership is more than 92,000 as of 2009...

     POPL
    POPL
    The annual ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages is an academic conference in the field of computer science, with focus on fundamental principles in the design, definition, analysis, and implementation of programming languages, programming systems, and programming...

    '94 Most Influential Paper Award (with Jean-Pierre Talpin).

External links

  • CV at http://www.itu.dk/people/tofte/cv/cv.pdf
  • ML Kit with Regions at http://www.itu.dk/research/mlkit/index.php/Main_Page
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK