SwePub
Sök i LIBRIS databas

  Utökad sökning

WFRF:(Castegren Elias Doktor 1987 )
 

Sökning: WFRF:(Castegren Elias Doktor 1987 ) > Developing a monadi...

Developing a monadic type checker for an object-oriented language : An experience report

Castegren, Elias, Doktor, 1987- (författare)
KTH,Programvaruteknik och datorsystem, SCS
Fernandez-Reyes, Kiko, 1985- (författare)
Uppsala universitet,Datalogi
 (creator_code:org_t)
2019-10-20
2019
Engelska.
Ingår i: SLE 2019 - Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering, co-located with SPLASH 2019. - New York, NY, USA : Association for Computing Machinery, Inc. - 9781450369817 ; , s. 184-196
  • Konferensbidrag (refereegranskat)
Abstract Ämnesord
Stäng  
  • Functional programming languages are well-suited for developing compilers, and compilers for functional languages are often themselves written in a functional language. Functional abstractions, such as monads, allow abstracting away some of the repetitive structure of a compiler, removing boilerplate code and making extensions simpler. Even so, functional languages are rarely used to implement compilers for languages of other paradigms. This paper reports on the experience of a four-year long project where we developed a compiler for a concurrent, object-oriented language using the functional language Haskell. The focus of the paper is the implementation of the type checker, but the design works well in static analysis tools, such as tracking uniqueness of variables to ensure data-race freedom. The paper starts from a simple type checker to which we add more complex features, such as type state, with minimal changes to the overall initial design.

Ämnesord

NATURVETENSKAP  -- Data- och informationsvetenskap -- Datavetenskap (hsv//swe)
NATURAL SCIENCES  -- Computer and Information Sciences -- Computer Sciences (hsv//eng)
TEKNIK OCH TEKNOLOGIER  -- Elektroteknik och elektronik -- Datorsystem (hsv//swe)
ENGINEERING AND TECHNOLOGY  -- Electrical Engineering, Electronic Engineering, Information Engineering -- Computer Systems (hsv//eng)

Nyckelord

Compilers
Functional programming
Object-oriented languages
Type systems
Abstracting
Computer programming languages
Program compilers
Static analysis
Experience report
Functional abstractions
Functional languages
Initial design
Repetitive structure
Simple types
Type checker
Object oriented programming
Computer Science

Publikations- och innehållstyp

ref (ämneskategori)
kon (ämneskategori)

Hitta via bibliotek

Till lärosätets databas

Sök utanför SwePub

Kungliga biblioteket hanterar dina personuppgifter i enlighet med EU:s dataskyddsförordning (2018), GDPR. Läs mer om hur det funkar här.
Så här hanterar KB dina uppgifter vid användning av denna tjänst.

 
pil uppåt Stäng

Kopiera och spara länken för att återkomma till aktuell vy