Difference between revisions of "Research papers/Runtime systems"

From HaskellWiki
Jump to navigation Jump to search
(+paper)
(Updated dead links)
(4 intermediate revisions by 4 users not shown)
Line 1: Line 1:
 
__TOC__
 
__TOC__
   
;[http://research.microsoft.com/copyright/accept.asp?path=/users/simonpj/papers/spineless-tagless-gmachine.ps.gz&pub=34 Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine]
+
;[http://research.microsoft.com/~simonpj/Papers/spineless-tagless-gmachine.ps.gz Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine]
 
:SL Peyton Jones, Journal of Functional Programming 2(2), Apr 1992, pp127-202. (Cited by 206)
 
:SL Peyton Jones, Journal of Functional Programming 2(2), Apr 1992, pp127-202. (Cited by 206)
   
Line 16: Line 16:
 
:Simon Peyton Jones, Simon Marlow, and Conal Elliott. Proc Workshop on Implementing Functional Languages, 1999.
 
:Simon Peyton Jones, Simon Marlow, and Conal Elliott. Proc Workshop on Implementing Functional Languages, 1999.
   
;[http://www.reid-consulting-uk.ltd.uk/alastair/publications/ifl98/index.html Putting the Spine back in the Spineless Tagless G-machine: An Implementation of Resumable Blackholes]
+
;[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.411 Putting the Spine back in the Spineless Tagless G-machine: An Implementation of Resumable Blackholes]
 
:A. Reid, In Proceedings of Implementation of Functional Languages (IFL98), Lecture Notes in Computer Science, volume 1595, pp 189-202, Springer Verlag, 1999.
 
:A. Reid, In Proceedings of Implementation of Functional Languages (IFL98), Lecture Notes in Computer Science, volume 1595, pp 189-202, Springer Verlag, 1999.
   
Line 22: Line 22:
 
:Ian Holyer and Eleni Spiliopoulou. University of Bristol. Technical Report CSTR-98-003. March 1998.
 
:Ian Holyer and Eleni Spiliopoulou. University of Bristol. Technical Report CSTR-98-003. March 1998.
   
;[http://www.cs.bris.ac.uk/~spilio/festival.ps.gz The Brisk Machine: the Next Step in the Execution of Functional Languages]
+
;[http://www.cedar-forest.org/forest/events/festival/workshop1/spiliopoulou.ps The Brisk Machine: the Next Step in the Execution of Functional Languages]
 
:Eleni Spiliopoulou. Proceedings of Festival Workshop in Foundations and Computations, FC'00. July 2000.
 
:Eleni Spiliopoulou. Proceedings of Festival Workshop in Foundations and Computations, FC'00. July 2000.
   
;[http://www.cs.chalmers.se/~boquist/ifl96.ps The GRIN Project: A Highly Optimising Back End For Lazy Functional Languages]
+
;[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.3918 The GRIN Project: A Highly Optimising Back End For Lazy Functional Languages]
 
:Urban Boquist and Thomas Johnsson. 8th International Workshop on Implementation of Functional Languages. LNCS 1268. September 1996.
 
:Urban Boquist and Thomas Johnsson. 8th International Workshop on Implementation of Functional Languages. LNCS 1268. September 1996.
   
;[http://www.cs.utexas.edu/users/njn/pubs/cache-large-lazy2002.ps.gz The Cache Behaviour of Large Lazy Functional Programs on Stock Hardware]
+
;[http://www.cl.cam.ac.uk/~am21/papers/msp02.ps.gz The Cache Behaviour of Large Lazy Functional Programs on Stock Hardware]
 
:Nicholas Nethercote, In Proceedings of the ACM SIGPLAN Workshop on Memory System Performance. 2003
 
:Nicholas Nethercote, In Proceedings of the ACM SIGPLAN Workshop on Memory System Performance. 2003
   
 
==Profiling==
 
==Profiling==
   
;[http://research.microsoft.com/copyright/accept.asp?path=/users/simonpj/papers/1997_profiling_TOPLAS.ps.gz&pub=ACM Formally-based profiling for higher-order functional languages]
+
;[http://research.microsoft.com/apps/pubs/default.aspx?id=68455 Formally-based profiling for higher-order functional languages]
 
:PM Sansom and SL Peyton Jones, ACM Transactions on Programming Languages and Systems, 19(2), March 1997, pp 334-385.
 
:PM Sansom and SL Peyton Jones, ACM Transactions on Programming Languages and Systems, 19(2), March 1997, pp 334-385.
   
Line 42: Line 42:
 
:P Sansom, PhD thesis, University of Glasgow, Nov 1994.
 
:P Sansom, PhD thesis, University of Glasgow, Nov 1994.
   
;[http://www.cs.york.ac.uk/ftpdir/reports/YCS-92-172.ps.Z Heap Profiling of Lazy Functional Programs]
+
;[http://www.cs.york.ac.uk/ftpdir/reports/92/YCS/172/YCS-92-172.pdf Heap Profiling of Lazy Functional Programs]
 
:Colin Runciman and David Wakeling. York University. YCS-92-172. 1992.
 
:Colin Runciman and David Wakeling. York University. YCS-92-172. 1992.
   
;[http://www.cs.york.ac.uk/ftpdir/reports/YCS-95-256.ps.Z New Dimensions in Heap Profiling]
+
;[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.9361 New Dimensions in Heap Profiling]
 
:Colin Runciman and Niklas Rojemo. York University. YCS-95-256. 1995.
 
:Colin Runciman and Niklas Rojemo. York University. YCS-95-256. 1995.
   
Line 83: Line 83:
 
:Andre Pang, Don Stewart, Sean Seefried, and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 10-21. ACM Press, 2004
 
:Andre Pang, Don Stewart, Sean Seefried, and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 10-21. ACM Press, 2004
   
;[http://www.cse.unsw.edu.au/~dons/papers/SC05.html Dynamic Applications From the Ground Up]
+
;[http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.113.1406 Dynamic Applications From the Ground Up]
 
:Don Stewart and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 27-38. ACM Press, 2005.
 
:Don Stewart and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 27-38. ACM Press, 2005.
   
 
==Loop detection==
 
==Loop detection==
   
;[http://www.cs.chalmers.se/~rjmh/Papers/cds-loops.ps A Loop-detecting Interpreter for Lazy, Higher-order Programs]
+
;[http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.38.2888 A Loop-detecting Interpreter for Lazy, Higher-order Programs]
 
:Alex Ferguson and John Hughes. The 1992 Glasgow Workshop on Functional Programming. 85-101
 
:Alex Ferguson and John Hughes. The 1992 Glasgow Workshop on Functional Programming. 85-101
   
Line 108: Line 108:
 
:Manuel M. T. Chakravarty. In Pieter Koopman and Chris Clack, editors, Implementation of Functional Languages, 11th. International Workshop (IFL'99), Springer-Verlag, LNCS 1868, 2000.
 
:Manuel M. T. Chakravarty. In Pieter Koopman and Chris Clack, editors, Implementation of Functional Languages, 11th. International Workshop (IFL'99), Springer-Verlag, LNCS 1868, 2000.
   
;[http://www.galois.com/~sof/papers/hdirect.ps.gz H/Direct: A Binary Foreign Language Interface for Haskell]
+
;[http://research.microsoft.com/~emeijer/Papers/HDirect.pdf H/Direct: A Binary Foreign Language Interface for Haskell]
 
:Sigbjorn Finne, Daan Leijen, Erik Meijer and Simon Peyton Jones. Presented at the International Conference on Functional Programming, Baltimore, M
 
:Sigbjorn Finne, Daan Leijen, Erik Meijer and Simon Peyton Jones. Presented at the International Conference on Functional Programming, Baltimore, M
   
 
;[http://www.reid-consulting-uk.ltd.uk/alastair/publications/ifl03/index.html Template Greencard]
 
;[http://www.reid-consulting-uk.ltd.uk/alastair/publications/ifl03/index.html Template Greencard]
 
:A. Reid. To be presented at IFL 2003, 15th International Workshop on the Implementation of Functional Languages, Edinburgh, Scotland, September 8-10, 2003.
 
:A. Reid. To be presented at IFL 2003, 15th International Workshop on the Implementation of Functional Languages, Edinburgh, Scotland, September 8-10, 2003.
  +
  +
;[http://research.microsoft.com/~simonpj/papers/ptr-tag/index.htm Faster laziness using dynamic pointer tagging]
  +
:Simon Marlow, Alexey Rodriguez Yakushev, and Simon Peyton Jones. Submitted to ICFP 2007.
   
 
[[Category:Research]]
 
[[Category:Research]]

Revision as of 22:54, 14 February 2012

Implementing lazy functional languages on stock hardware: the Spineless Tagless G-machine
SL Peyton Jones, Journal of Functional Programming 2(2), Apr 1992, pp127-202. (Cited by 206)
How to make a fast curry: push/enter vs eval/apply
Simon Marlow and Simon Peyton Jones, Proc International Conference on Functional Programming, Snowbird, Sept 2004, pp4-15. (Cited by 6)
The New GHC/Hugs Runtime System
Simon Marlow and Simon Peyton Jones. (Unpublished.) (Cited by 6)
The interactive Lazy ML System
Lennart Augustsson, J. Funct. Program. 3(1): 77-92 (1993) (Cited by 3)
Stretching the storage manager: weak pointers and stable names in Haskell
Simon Peyton Jones, Simon Marlow, and Conal Elliott. Proc Workshop on Implementing Functional Languages, 1999.
Putting the Spine back in the Spineless Tagless G-machine: An Implementation of Resumable Blackholes
A. Reid, In Proceedings of Implementation of Functional Languages (IFL98), Lecture Notes in Computer Science, volume 1595, pp 189-202, Springer Verlag, 1999.
The Brisk Machine: A Simplified STG Machine
Ian Holyer and Eleni Spiliopoulou. University of Bristol. Technical Report CSTR-98-003. March 1998.
The Brisk Machine: the Next Step in the Execution of Functional Languages
Eleni Spiliopoulou. Proceedings of Festival Workshop in Foundations and Computations, FC'00. July 2000.
The GRIN Project: A Highly Optimising Back End For Lazy Functional Languages
Urban Boquist and Thomas Johnsson. 8th International Workshop on Implementation of Functional Languages. LNCS 1268. September 1996.
The Cache Behaviour of Large Lazy Functional Programs on Stock Hardware
Nicholas Nethercote, In Proceedings of the ACM SIGPLAN Workshop on Memory System Performance. 2003

Profiling

Formally-based profiling for higher-order functional languages
PM Sansom and SL Peyton Jones, ACM Transactions on Programming Languages and Systems, 19(2), March 1997, pp 334-385.
Time and space profiling for non-strict functional languages
P Sansom and SL Peyton Jones, 22nd ACM Symposium on Principles of Programming Languages (POPL'95), San Francisco, Jan 1995, pp355-366.
Execution profiling for non-strict functional languages
P Sansom, PhD thesis, University of Glasgow, Nov 1994.
Heap Profiling of Lazy Functional Programs
Colin Runciman and David Wakeling. York University. YCS-92-172. 1992.
New Dimensions in Heap Profiling
Colin Runciman and Niklas Rojemo. York University. YCS-95-256. 1995.

Garbage collection

See also parallel garbage collection

Exploring the Barrier to Entry: Incremental Generational Garbage Collection for Haskell
Andy Cheadle, Tony Field, Simon Marlow, Simon Peyton Jones, and Lyndon While, International Symposium on Memory Management, Vancouver, 2004.
Non-stop Haskell
Andy Cheadle, Tony Field, Simon Marlow, Simon Peyton Jones, and Lyndon While. ICFP 2000.
Generational garbage collection for Haskell
P Sansom and SL Peyton Jones Proc Functional Programming Languages and Computer Architecture (FPCA'93), Copenhagen, June 1993, pp106-116.
An Incremental Garbage Collector for Embedded Real-Time Systems,
Malcolm Wallace and Colin Runciman. Proceedings of Chalmers Winter Meeting, June 1993.
Fixing some space leaks with a garbage collector
Philip Wadler. Software Practice and Experience, 17(9):595-608, September 1987.

Optimistic Evaluation

Optimistic Evaluation: an adaptive evaluation strategy for non-strict programs
Robert Ennals and Simon Peyton Jones, Proc ACM International Conference on Functional Programming, Uppsala, Aug 2003 (ICFP'03).
Eager Haskell: Resource-bounded Execution Yields Efficient Iteration
Jan-Willem Maessen. Proceedings of the 2002 ACM SIGPLAN workshop on Haskell. Pittsburgh, Pennsylvania. 38 - 50. 2002 ISBN 1-58113-605-6
Cheap Eagerness: Speculative Evaluation in a Lazy Functional Language
Karl-Filip Faxn. ICFP 2000. September 2000.

Dynamic linking

Plugging Haskell In
Andre Pang, Don Stewart, Sean Seefried, and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 10-21. ACM Press, 2004
Dynamic Applications From the Ground Up
Don Stewart and Manuel M. T. Chakravarty. In Proceedings of the ACM SIGPLAN Workshop on Haskell, pages 27-38. ACM Press, 2005.

Loop detection

A Loop-detecting Interpreter for Lazy, Higher-order Programs
Alex Ferguson and John Hughes. The 1992 Glasgow Workshop on Functional Programming. 85-101

Foreign language interfaces

Scripting COM components in Haskell
SL Peyton Jones, E Meijer, and D Leijen, Software Reuse 1998.
Calling hell from heaven and heaven from hell
Sigbjorn Finne, Daan Leijen, Erik Meijer, and Simon Peyton Jones. ICFP '99.
Green Card: a foreign-language interface for Haskell
T Nordin and SL Peyton Jones, Proceedings of the Haskell Workshop, Amsterdam, June 1997.
Calling heaven from hell, and hell from heaven
Sigbjorn Finne, Daan Leijen, Erik Meijer and Simon Peyton Jones. ICFP'99
C -> Haskell, or Yet Another Interfacing Tool
Manuel M. T. Chakravarty. In Pieter Koopman and Chris Clack, editors, Implementation of Functional Languages, 11th. International Workshop (IFL'99), Springer-Verlag, LNCS 1868, 2000.
H/Direct: A Binary Foreign Language Interface for Haskell
Sigbjorn Finne, Daan Leijen, Erik Meijer and Simon Peyton Jones. Presented at the International Conference on Functional Programming, Baltimore, M
Template Greencard
A. Reid. To be presented at IFL 2003, 15th International Workshop on the Implementation of Functional Languages, Edinburgh, Scotland, September 8-10, 2003.
Faster laziness using dynamic pointer tagging
Simon Marlow, Alexey Rodriguez Yakushev, and Simon Peyton Jones. Submitted to ICFP 2007.