Personal tools

Research papers/Domain specific languages

From HaskellWiki

< Research papers(Difference between revisions)
Jump to: navigation, search
(Hardware design: Added "CλasH : from Haskell to hardware" and "Haskell as a higher order structural hardware description language")
(Graphics: Replaced paper with the version that superceded it.)
(5 intermediate revisions by 3 users not shown)
Line 2: Line 2:
   
 
==Domain specific languages==
 
==Domain specific languages==
  +
  +
;[http://www.jucs.org/jucs_9_8/implementation_of_an_embedded/Alves_N_M_M.html Implementation of an Embedded Hardware Description Language Using Haskell]
  +
:Nelio Muniz Mendes Alves and Sergio de Mello Schneider, 2003
   
 
;[http://legacy.cs.uu.nl/daan/download/papers/dsec.ps Domain Specific Embedded Compilers]
 
;[http://legacy.cs.uu.nl/daan/download/papers/dsec.ps Domain Specific Embedded Compilers]
Line 12: Line 15:
 
:Hudak (1998) (cited by 92)
 
:Hudak (1998) (cited by 92)
   
;[https://eprints.kfupm.edu.sa/28924/ Building Domain-Specific Embedded Languages] ([http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.49.6020 citeseer link])
+
;[http://www.kestrel.edu/~jullig/rio97/position-papers/ACM-WS.ps Building Domain-Specific Embedded Languages] ([http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.49.6020 citeseer link])
 
:Paul Hudak (cited by 102)
 
:Paul Hudak (cited by 102)
   
 
;[http://www.usenix.org/publications/library/proceedings/dsl99/full_papers/leijen/leijen.ps Domain Specific Embedded Compilers]
 
;[http://www.usenix.org/publications/library/proceedings/dsl99/full_papers/leijen/leijen.ps Domain Specific Embedded Compilers]
 
:D Leijen, E Meijer (cited by 88)
 
:D Leijen, E Meijer (cited by 88)
  +
  +
;[http://www.haskell.org/wikiupload/c/c6/ICMI45-paper-en.pdf How to build a monadic interpreter in one day] (pdf)
  +
:By Dan Popa. A small tutorial on how to build a language in one day, using the Parser Monad in the front end and a monad with state and I/O string in the back end.
   
 
;[http://portal.acm.org/citation.cfm%3Fid%3D317765.317794 Haskell and XML: generic combinators or type-based translation?]
 
;[http://portal.acm.org/citation.cfm%3Fid%3D317765.317794 Haskell and XML: generic combinators or type-based translation?]
Line 35: Line 41:
 
;[http://www.informatik.uni-freiburg.de/~thiemann/papers/modeling.ps.gz A typed representation for HTML and XML documents in Haskell]
 
;[http://www.informatik.uni-freiburg.de/~thiemann/papers/modeling.ps.gz A typed representation for HTML and XML documents in Haskell]
 
:P Thiemann, Journal of Functional Programming, 2003 (cited by 38)
 
:P Thiemann, Journal of Functional Programming, 2003 (cited by 38)
  +
  +
;[http://www.haskell.org/wikiupload/f/f5/Types2.pdf.zip Adaptable Software - Modular Extensible Monadic Entry-pointless Type Checker in Haskell]
  +
:Ro/Haskell Group, Univ. “V.Alecsandri”, Bacau, Romania, 2011
   
 
;[http://portal.acm.org/citation.cfm%3Fid%3D331963.331976 Monadic robotics]
 
;[http://portal.acm.org/citation.cfm%3Fid%3D331963.331976 Monadic robotics]
Line 47: Line 56:
 
:A. Reid, J. Peterson, G. Hager and P. Hudak, In Proceedings of International Conference on Software Engineering (ICSE'99), Los Angeles, CA. 16-22 May, 1999.
 
:A. Reid, J. Peterson, G. Hager and P. Hudak, In Proceedings of International Conference on Software Engineering (ICSE'99), Los Angeles, CA. 16-22 May, 1999.
   
;[http://www.haskell.org/yale/papers/padl01-vision/index.html FVision: A Declarative Language for Visual Tracking]
+
;[http://haskell.cs.yale.edu/yale/papers/padl01-vision/index.html FVision: A Declarative Language for Visual Tracking]
 
:J. Peterson, P. Hudak, A. Reid and G. Hager. In Proceedings of Third International Symposium on Practical Applications of Declarative Languages PADL'01, March 2001.
 
:J. Peterson, P. Hudak, A. Reid and G. Hager. In Proceedings of Third International Symposium on Practical Applications of Declarative Languages PADL'01, March 2001.
   
 
===Graphics===
 
===Graphics===
   
;[https://www.usenix.org/publications/library/proceedings/dsl97/full_papers/elliott/elliott.pdf Modeling Interactive 3D and Multimedia Animation with an Embedded Language]
+
;[http://conal.net/papers/tse-modeled-animation/ An Embedded Modeling Language Approach to Interactive 3D and Multimedia Animation]
:Conal Elliott (cited by 35)
+
:Conal Elliott. IEEE Transactions on Software Engineering, May/June 1999.
   
 
;[http://conal.net/papers/Vertigo/ Programming Graphics Processors Functionally]
 
;[http://conal.net/papers/Vertigo/ Programming Graphics Processors Functionally]
Line 141: Line 150:
 
:Koen Claessen and Peter Ljunglöf. In Proc. of Haskell Workshop, ACM SIGPLAN, 2000. 1999
 
:Koen Claessen and Peter Ljunglöf. In Proc. of Haskell Workshop, ACM SIGPLAN, 2000. 1999
   
;[http://www.informatik.uni-bonn.de/~ralf/publications/Prolog.ps.gz Prolog's control constructs in a functional setting - Axioms and implementation]
+
;[http://www.comlab.ox.ac.uk/ralf.hinze/publications/Prolog.ps.gz Prolog's control constructs in a functional setting - Axioms and implementation]
 
:Ralf Hinze. International Journal of Foundations of Computer Science. 12 (2). 2001.
 
:Ralf Hinze. International Journal of Foundations of Computer Science. 12 (2). 2001.
   

Revision as of 23:27, 14 February 2012

Contents


1 Domain specific languages

Implementation of an Embedded Hardware Description Language Using Haskell
Nelio Muniz Mendes Alves and Sergio de Mello Schneider, 2003
Domain Specific Embedded Compilers
Daan Leijen and Erik Meijer. 2nd USENIX Conference on Domain-Specific Languages (DSL'99), Austin, Texas, October 1999. Also appeared in ACM SIGPLAN Notices 35, 1, January 2000.
Compiling Embedded Languages
Conal Elliott, Sigbjorn Finne, Oege de Moor. Journal of Functional Programming, 13(2), 2003.
Modular Domain Specific Languages and Tools
Hudak (1998) (cited by 92)
Building Domain-Specific Embedded Languages (citeseer link)
Paul Hudak (cited by 102)
Domain Specific Embedded Compilers
D Leijen, E Meijer (cited by 88)
How to build a monadic interpreter in one day (pdf)
By Dan Popa. A small tutorial on how to build a language in one day, using the Parser Monad in the front end and a monad with state and I/O string in the back end.
Haskell and XML: generic combinators or type-based translation?
M Wallace, C Runciman - ACM SIGPLAN Notices, 1999
Modeling HTML in Haskell
P Thiemann - Practical Applications of Declarative Languages, 2000 (cited by 24)
DSL implementation using staging and monads
T Sheard, E Pasalic - Proceedings of the 2nd conference on Domain-specific languages, 1999
Programmable type systems for domain specific languages
P Thiemann Electronic Notes in Theoretical Computer Science, 2002
An embedded domain-specific language for type-safe server-side web scripting
P Thiemann, ACM Transactions on Internet Technology (TOIT), 2005
A typed representation for HTML and XML documents in Haskell
P Thiemann, Journal of Functional Programming, 2003 (cited by 38)
Adaptable Software - Modular Extensible Monadic Entry-pointless Type Checker in Haskell
Ro/Haskell Group, Univ. “V.Alecsandri”, Bacau, Romania, 2011
Monadic robotics
J Peterson, G Hager.
Defining and Implementing Closed, Domain-Specific Languages
RB Kieburtz - Invited talk, 2000

1.1 Rapid prototyping

Prototyping Real-Time Vision Systems: An Experiment in DSL Design
A. Reid, J. Peterson, G. Hager and P. Hudak, In Proceedings of International Conference on Software Engineering (ICSE'99), Los Angeles, CA. 16-22 May, 1999.
FVision: A Declarative Language for Visual Tracking
J. Peterson, P. Hudak, A. Reid and G. Hager. In Proceedings of Third International Symposium on Practical Applications of Declarative Languages PADL'01, March 2001.

1.2 Graphics

An Embedded Modeling Language Approach to Interactive 3D and Multimedia Animation
Conal Elliott. IEEE Transactions on Software Engineering, May/June 1999.
Programming Graphics Processors Functionally
Conal Elliott. Proceedings of the 2004 Haskell Workshop.
Functional Images
Conal Elliott. In The Fun of Programming, March 2003.
Tangible Functional Programming
Conal Elliott, ICFP 07

1.3 Hardware design

Haskell as a higher order structural hardware description language
Kooijman, M. (2009); master's thesis.
CλasH : from Haskell to hardware
Baaij, C. (2009); master's thesis.
The Design and Verification of a Sorter Core
Koen Claessen, Mary Sheeran, and Satnam Singh. In Proc. of Conference on Correct Hardware Design and Verification Methods (CHARME), Lecture Notes in Computer Science, Springer Verlag, 2001.
An Embedded Language Approach to Hardware Description and Verification
Koen Claessen. Dept. of Computer Science and Engineering, Chalmers University of Technology, Lic. thesis, August 2000.
Embedded Languages for Describing and Verifying Hardware
Koen Claessen. Dept. of Computer Science and Engineering, Chalmers University of Technology, Ph.D. thesis, April 2001.
An Embedded Language Approach to Teaching Hardware Compilation
Koen Claessen and Gordon Pace. In Proc. of Workshop on Functional and Declarative Programming in Education (FDPE), 2002.
Safety Property Verification of Cyclic Circuits
Koen Claessen. June 2002.
Verification of Hardware Systems with First-Order Logic
Koen Claessen, Reiner Hähnle, Johan Mårtensson. PaPS 2002. 2002.
An Embedded Language Framework for Hardware Compilation
Koen Claessen, Gordon Pace. DCC 2002. 2002.
Observable Sharing for Functional Circuit Description
Koen Claessen and David Sands. ASIAN '99. 1999.
Automatic Verification of Combinational and Pipelined FFT Circuits
Per Bjesse. CAV. 1999
Algebraic Specification and Verification of Processor Microarchitectures
John Matthews. PhD. Thesis. Oregon Graduate Institute. 2000.
Symbolic Simulation of Microprocessor Models using Type Classes in Haskell
Nancy A. Day, Jeffrey R. Lewis and Byron Cook. CHARME'99. September 1999.
On Embedding a Microarchitectural Design Language within Haskell
John Launchbury, Jeff Lewis and Byron Cook. ICFP'99. 1999.
Elementary Microarchitecture Algebra
John Matthews and John Launchbury. CAV '99. 1999.
Specifying Superscalar Microprocessors with Hawk
Byron Cook, John Launchbury and John Matthews. FTH '98. 1998.
Microprocessor Specification in Hawk
John Matthews, John Launchbury and Byron Cook. ICCL '98. 1998.

1.3.1 Lava

Lava: Hardware Design in Haskell
Per Bjesse, Koen Claessen, Mary Sheeran, Satnam Singh
Using Lava to Design and Verify Recursive and Periodic Sorters
Koen Claessen, Mary Sheeran, and Satnam Singh. In International Journal on Software Tools for Technology Transfer, vol. 4 (3), pp. 349--358, Springer Verlag, 2003.
Functional Hardware Description in Lava
Koen Claessen, Mary Sheeran, and Satnam Singh. In Jeremy Gibbons and Oege de Moor (eds.), The Fun of Programming, Cornerstones of Computing, pp. 151--176, Palgrave, 2003.
A Lava Tutorial
Koen Claessen, Mary Sheeran. April 2000.

1.4 Network programming

A Network Programming Framework in Haskell Based on Asynchronous Localized pi-calculus
Keigo Imai ,Shoji Yuen ,Kiyoshi Agusa. Graduate School of Information Science, Nagoya University Journal ref: IPSJ Transactions on Programming, Vol.47, No.16 pp. 10-28, 2006

1.5 Logic and constraint programming

Typed Logical Variables in Haskell
Koen Claessen and Peter Ljunglöf. In Proc. of Haskell Workshop, ACM SIGPLAN, 2000. 1999
Prolog's control constructs in a functional setting - Axioms and implementation
Ralf Hinze. International Journal of Foundations of Computer Science. 12 (2). 2001.
Monadic Constraint Programming
Tom Schrijvers, Peter Stuckey and Phil Wadler. Journal of Functional Programming, 2009.