Papers by Maarten Pennings
At the back cover: the initial abstract syntax tree left of the varuse grammar de ned in this the... more At the back cover: the initial abstract syntax tree left of the varuse grammar de ned in this thesis and the same tree right after augmenting, splitting and elimination. Preface Numerous years of research in computing science have gone by, and still there is no document preparation system that one can operate without getting a headache now and then. I thank Chritiene Aarts and Rob Udink who were always willing to discuss L a T E X-quirks. By the way, the previewer with encapsulated postscript support has become a r e a l paper-saver now. The Vakgroep has always beena pleasant place to work. I need only to bring into mind the too few sailing days, the lm-list" and skwosj-list". Finally, I thank my family and friends for their interest and moral support. In particular I want to thank my parents for stimulating my curiosity. And I thank Debbie, for being there.
Springer eBooks, Jul 13, 2006
Multi-traversal tree decoration in a functional setting: monads versus bindings
Unknown Publisher eBooks, Dec 1, 1993
In this paper we consider the problem of decorating trees. We examine the special case where mult... more In this paper we consider the problem of decorating trees. We examine the special case where multiple traversals over a tree are needed for full decoration. We compare three functional approaches that do not recompute any values in successive traversals: a circular program to short-circuit multiple passes, a program with bindings from one traversal to the next to explicitly pass values and nally a monadic program that records a suitable state. Given our criteria, avoiding lazy evaluation and the ability to memoize the traversals, bindings seem to have the most advantages.
The formal derivation of an editor
Aggregatorknoten, Verfahren zur Aggregation von Daten, und Computerprogrammprodukt

Strictification of Lazy Functions
This papers describes a transformation from lazy functions into efficient non-lazy ones. The func... more This papers describes a transformation from lazy functions into efficient non-lazy ones. The functions we study perform multiple traversals over a data structure. Our transformation performs a global analysis of the calling structure of a set of mutually recursive lazy-functions in order to transform them into sets of functions which must be called in sequence. Many of the resulting functions can be eliminated by the optimizations presented in this paper. We present measurements that show that transformed and optimized functions allow efficient incremental execution. The paper contains examples that were automatically constructed with a generator of incremental functional programs. 1 Introduction One of the more intricate parts of the world of functional programming deals with the construction of so-called circular programs, with the program repmin of Bird acting as the canonical representative of this class [Bir84]. For almost everyone, when first introduced to such programs, it ta...

Multi-Traversal Tree Decoration in a Functional Setting: Monads Versus Bindings
In this paper we consider the problem of decorating trees. We examine the special case where mult... more In this paper we consider the problem of decorating trees. We examine the special case where multiple traversals over a tree are needed for full decoration. We compare three functional approaches that do not recompute any values in successive traversals: a circular program to short-circuit multiple passes, a program with bindings from one traversal to the next to explicitly pass values and finally a monadic program that records a suitable state. Given our criteria, avoiding lazy evaluation and the ability to memoize the traversals, bindings seem to have the most advantages. 1 Introduction This paper discusses a special form of tree decorations that requires multiple traversals over a tree. Multiple traversals are needed if "global" information must first be gathered before it can be used: information flows from one traversal to the next. Tree decoration in imperative programming is straightforward: attributes are stored in the tree. Therefore, no complications arise when a...
Maarten Christiaan Pennings, Waalre (NL); Timo van Roermund, Eindhoven (NL); Stefan Drude, Waalre... more Maarten Christiaan Pennings, Waalre (NL); Timo van Roermund, Eindhoven (NL); Stefan Drude, Waalre (NL) According to an aspect of the invention a localization method for localizing a host device (100) in a control system, in (73) Assignee: NXP B.V., Eindhoven (NL) particular a building control system, is provided, the local ization method comprising determining geographical loca (21) Appl. No.: 13/692,973 tion information of the host device (100) by means of a localization device (102) and associating the geographical (22) Filed: Dec. 3, 2012 location information with a unique identifier of the host O O device (100). According to another aspect of the invention a (30) Foreign Application Priority Data computer program product is provided that comprises pro Dec. 5, 2011 (EP) .

Generating incremental attribute evaluators
In onze maatschappij wordt tegenwoordig veel met software, dat wil zeggen com- puterprogramma'... more In onze maatschappij wordt tegenwoordig veel met software, dat wil zeggen com- puterprogramma's, gewerkt. Denk daarbij niet alleen aan tekstverwerkers, maar ook aan software in geldautomaten, videorecorders en het administratiesysteem van de scus. Software moet geschreven worden. Programmeurs schrijven software in zoge- heten hogere programmeertalen, waarvan Pascal, C, Basic, Cobol en Fortran de bekenste zijn. Zulke programmeertalen nemen tijdrovende, saaie en administratieve taken verbonden aan het programmeren, uit handen. Echter, computers \begrijpen" hogere programmeertalen niet, zij moeten ge?n- strueerd worden in een zogeheten machinetaal. Om een hogere programmeertaal naar machinetaal te vertalen zijn er speciale computerprogramma's in omloop, zogeheten compilers. Met andere woorden, compilers vormen een vitale schakel in het productieproces van software. Een compiler zet een zogeheten bronprogramma, geschreven in een specieke hogere programmeertaal, om naar een ...
This papers describes a transformation from lazy functions into e cient non-lazy ones. The functi... more This papers describes a transformation from lazy functions into e cient non-lazy ones. The functions we study perform multiple traversals over a data structure. Our transformation performs a global analysis of the calling structure of a set of mutually recursive lazy-functions in order to transform them into sets of functions which must be called in sequence. Many of the resulting functions can be eliminated by the optimizations presented in this paper. We present measurements that show that transformed and optimized functions allow e cient incremental execution. The paper contains examples that were automatically constructed with a generator of incremental functional programs.
Multi-traversal tree-decoration in a functional setting: monads versus bindings
Method of Establishing Control Relationships, Configuration Device, Networked Device and Computer Program Product
Content Based Partial Download
Generating incremental attribute evaluators
... van doctor aan de Universiteit Utrecht op gezag van de Rector Magnifi-cus, Prof. dr. JA van G... more ... van doctor aan de Universiteit Utrecht op gezag van de Rector Magnifi-cus, Prof. dr. JA van Ginkel, ingevolge het besluit van het College van Decanen in het openbaar te verdedigen op vrijdag 25 november 1994 des middags te 12:45 uur door Maarten Christiaan Pennings ...
Configuration Method, Configuration Device, Computer Program Product and Control System
Localization Method, Computer Program Product and Localization Device
Control Method, Controlled Device, User Interaction Device and Computer Program Product
System and Method for Commissioning Devices
Calibration Method, Calibration Device and Measurement Device
Method for Establishing Secure Communication Between Nodes in a Network, Network Node, Key Manager, Installation Device and Computer Program Product
Uploads
Papers by Maarten Pennings