Results 1 -
3 of
3
A Visual Programming Environment for Functional Languages
, 2002
"... I declare that this thesis is my own account of my research and contains as its main content work which has not previously been submitted for a degree at any tertiary education institution. Joel Kelso ii The purported advantages of Visual Programming, as applied to general purpose programming langua ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
I declare that this thesis is my own account of my research and contains as its main content work which has not previously been submitted for a degree at any tertiary education institution. Joel Kelso ii The purported advantages of Visual Programming, as applied to general purpose programming languages, have remained largely unfulfilled. The essence of this thesis is that functional programming languages have at least one natural visual representation, and that a useful programming environment can be based upon this representation. This thesis describes the implementation of a Visual Functional Programming Environment (VFPE). The programming environment has several significant features. • The environment includes a program editor that is inherently
Graphical application and visualization of lazy functional computation
, 1995
"... Mere academic toys or the tools of the future? Lazy functional programming languages have undoubted attractive properties. This thesis explores their potential, from the programmer's point of view, for implementing interactive and graphical applications to which they do not seem immediately suited. ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Mere academic toys or the tools of the future? Lazy functional programming languages have undoubted attractive properties. This thesis explores their potential, from the programmer's point of view, for implementing interactive and graphical applications to which they do not seem immediately suited. The discussion is centred round two example applications. One is a graphical design program based on an idea of the artist M. C. Escher. The thesis argues that the graphical user interface may be encapsulated in an "interpret " function that when applied by a mouse click to an interface of appropriate type yields the required behaviour. The second example is a monitoring interpreter for a functional language. The idea is that if the mechanics of the reduction are presented at a suitable level of abstraction, this may be used to give insight into what is going on. On the basis of this the programmer might modify the code so that a program runs more efficiently in terms of speed and memory requirements. Problems of displaying the reduction are addressed, and solutions proposed for overcoming these: displaying the graph as a spanning tree, to ensure planarity, with extra leaves
Techniques for Simplifying the Visualization of Graph Reduction
- First International Symposium on Functional Programming Languages in Education (FP.LE’95). Nijmegen-Plasmolen, The
, 1995
"... Space and time problems still occasionally dog the functional programmer, despite increasingly efficient implementations and the recent spate of useful profiling tools. There is a need for a model of program reduction that relates directly to the user's code and has a simple graphical representation ..."
Abstract
- Add to MetaCart
Space and time problems still occasionally dog the functional programmer, despite increasingly efficient implementations and the recent spate of useful profiling tools. There is a need for a model of program reduction that relates directly to the user's code and has a simple graphical representation. Nave graph reduction provides this. We address the problems of displaying a series of program graphs which may be long, and the elements of which may be large and complex. We offer a scheme for compacting an individual display by creating a quotient graph through defining equivalence classes, and a similar scheme for reducing the number of graphs to show. A metalanguage to allow the user to define compaction rules gives the model flexibility. A prototype system exists in a Haskell implementation. 1 Motivation People are often unable to predict the behaviour of a lazy functional program. Although the order of reduction is deterministic in a given sequential implementation, it is not intuit...

