Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Henk Alblas is active.

Publication


Featured researches published by Henk Alblas.


international conference on stochastic algorithms: foundations and applications | 1991

Attribute Evaluation Methods

Henk Alblas

This paper surveys the main evaluation strategies for non-circular attribute grammars, i.e., passes, sweeps, visits and plans. Attention is also focused on the iteration of evaluation passes for circular attribute grammars.


International Summer School on Attribute Grammars, Applications, and Systems | 1991

Introduction to attribute grammars

Henk Alblas

This paper recalls the definition of attribute grammars. To give a first impression of the applicability and the power of attribute grammars two examples are given which describe the type-determination problem for simple arithmetic expressions. Also, Knuths circularity test for attribute grammars is described.


Acta Informatica | 1981

A characterization of attribute evaluation in passes

Henk Alblas

SummaryThis paper describes the evaluation of semantic attributes in a bounded number of passes from left-to-right and/or from right-to-left over the derivation tree of a program. Evaluation strategies where different instances of the same attribute in any derivation tree are restricted to be evaluated in one pass, with for every derivation tree the same pass number, are referred to as simple multi-pass whereas the unrestricted pass-oriented strategies are referred to as pure multi-pass.A graph theoretic characterization is given, showing in which cases an attribute grammar meets the simple multi-pass requirements and what are the minimal pass numbers of its attributes for a given sequence of pass directions. For the special cases where only left-to-right passes are made or where left-to-right and right-to-left passes strictly alternate, new algorithms are developed that associate minimal pass numbers with attributes and indicate in case of failure the attributes that cause the rejection of the grammar. Mixing of a simple multi-pass strategy with other evaluation strategies, in case the grammar is not simple multi-pass, is discussed.


international conference on stochastic algorithms: foundations and applications | 1991

Incremental Attribute Evaluation

Henk Alblas

Transformations of attributed derivation trees are considered. A tree transformation may invalidate attribute instances, not only in the restructured part of the tree, but also elsewhere in the tree. To make the attribution of the tree correct again requires a reevaluator. For some evaluation strategies, reevaluators are defined that work optimally in the number of visits to tree nodes and the number of recomputations.


Acta Informatica | 1989

Iteration of transformation passes over attributed program trees

Henk Alblas

SummaryTransformations of attributed program trees form an essential part of compiler optimizations. A strategy of repeatedly applying alternate attribute evaluation and tree transformation phases is discussed. An attribute evaluation phase consists of a sequence of passes over the tree. A tree transformation phase consists of a single pass, which is never interrupted to carry out a re-evaluation. Both phases can be performed in parallel. This strategy requires a distinction between consistent (i.e., correct) and approximate attribute values. Tree transformations can be considered safe if they guarantee that the attribute values everywhere in the program tree will remain consistent or will become at least approximations of the consistent values, so that subsequent transformations can be applied correctly.This attribute evaluation and tree transformation strategy shows similarities with the evaluation methods for circular attribute grammars.


Information Processing Letters | 1989

Optimal incremental simple multi-pass attribute evaluation

Henk Alblas

An incremental simple multi-pass evaluator is presented, which works optimally in the number of visits to tree nodes and the number of recomputations


Acta Informatica | 1987

One-pass transformations of attributed program trees

Henk Alblas

SummaryThe classical attribute grammar framework can be extended by allowing the specification of tree transformation rules. A tree transformation rule consists of an input template, an output template, enabling conditions which are predicates on attribute instances of the input template, and re-evaluation rules which define the values of attribute instances of the output template. A tree transformation may invalidate attribute instances which are needed for additional transformations.In this paper we investigate whether consecutive tree transformations and attribute re-evaluations are safely possible during a single pass over the derivation tree. This check is made at compiler generation time rather than at compilation time.A graph theoretic characterization of attribute dependencies is given, showing in which cases the recomputation of attribute instances can be done in parallel with tree transformations.


compiler construction | 1996

Code Generation = A* + BURS

Albert Nymeyer; Joost P. Katoen; Ymte Westra; Henk Alblas

A system called BURS that is based on term rewrite systems and a search algorithm A* are combined to produce a code generator that generates optimal code. The theory underlying BURS is re-developed, formalised and explained in this work. The search algorithm uses a cost heuristic that is derived from the termrewrite system to direct the search. The advantage of using a search algorithm is that we need to compute only those costs that may be part of an optimal rewrite sequence.


compiler construction | 1991

An attributed ELL(1)-parser generator

Henk Alblas; Joos Schaap-Kruseman

TCGS is an acronym for Twente Compiler Generating System. It has been developed at the Compiler Methodology Group at the University of Twente. The system consists of a scanner generator, a combined parser and attribute-evaluator generator, a standard routine module, and an interpreter. The standard routine module contains type definitions, routines for the storage and retrieval of declaration information, routines that support attribute evaluation, and routines that support code generation for a hypothetical stack machine. The linker builds a complete compiler in VAX Pascal from the generated attributed parser and scanner, the standard routine module, and possibly, user defined modules. The interpreter, useful in compiler courses, is used to execute programs in target code. This paper is devoted to the parser and attribute-evaluator generator. The generated parsers are L-attributed ELL(l) recursive-descent parsers. ELL(l) parsers are an extension of LL(1) parsers in the sense that they are derived from Extended ContextFree Grammars (abbreviated to ECFGs) instead of normal context-free grammars. ECFGs are also called Regular Right Part Grammars. An attributed ECFG is an ECFG augmented with attributes and attribute evaluation rules. An attributed ECFG can be used to specify both context-free and context-sensitive language properties, as well as the translation from source code to target code. The attribute grammar is restricted to be L-attributed, which means that the information flow, specified by the attributes, goes strictly from left to right. Attribute evaluation rules are represented by actions. Actions must be defined in an action definition list. An action definition consists of an action name and a parameter list. Action parameters are specified as input or output parameters. An action consists of an action name and an argument list which corresponds with the parameter list of the action definition. The output arguments are attribute occurrences. The input arguments are attribute occurrences or constants. For every action there must be a corresponding Pascal procedure declaration in a definition file. The actions are included in the production rules. The position of an action determines when it is executed. Syntactically, an action can be viewed as another


Proceedings of the International Conference WAGA on Attribute Grammars and their Applications | 1990

Concurrent incremental attribute evaluation

Henk Alblas

The design of a concurrent incremental combined static/dynamic attribute evaluator is presented. The static part is an incremental version of the ordered attribute evaluation scheme. The dynamic part is an incremental version of the dynamic evaluation scheme.

Collaboration


Dive into the Henk Alblas's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge