A Type Generic Definition for Debugging Lazy Functional Programs by Value Observation

Faddegon, Maarten and Chitil, Olaf (2017) A Type Generic Definition for Debugging Lazy Functional Programs by Value Observation. Computer Languages, Systems & Structures, 52 . pp. 92-110. ISSN 1477-8424. (doi:https://doi.org/10.1016/j.cl.2017.05.001) (Access to this publication is currently restricted. You may be able to access a copy if URLs are provided)

PDF - Author's Accepted Manuscript
Restricted to Repository staff only until 9 May 2019.

Creative Commons Licence
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
Contact us about this Publication Download (277kB)
Official URL


Observing intermediate values helps to understand what is going on when your program runs. Gill presented an observation method for lazy functional languages that preserves the program's semantics. However, users need to define for each type how its values are observed: a laborious task and strictness of the program can easily be affected. Here we define how any value can be observed based on the structure of its type by applying generic programming. Furthermore we present an extension to specify per observation point how much to observe of a value.

Item Type: Article
Additional information: Email 6a. JAC 04/08/2017
Uncontrolled keywords: tracing, debugging, lazy evaluation, Haskell
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming, > QA76.76 Computer software
Divisions: Faculties > Sciences > School of Computing > Programming Languages and Systems Group
Depositing User: Olaf Chitil
Date Deposited: 02 Aug 2017 15:07 UTC
Last Modified: 20 Nov 2018 10:31 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/62530 (The current URI for this page, for reference purposes)
Chitil, Olaf: https://orcid.org/0000-0001-7986-9929
  • Depositors only (login required):


Downloads per month over past year