Network


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

Hotspot


Dive into the research topics where Don Stewart is active.

Publication


Featured researches published by Don Stewart.


international conference on functional programming | 2007

Stream fusion: from lists to streams to nothing at all

Duncan Coutts; Roman Leshchinskiy; Don Stewart

This paper presents an automatic deforestation system, stream fusion, based on equational transformations, that fuses a wider range of functions than existing short-cut fusion systems. In particular, stream fusion is able to fuse zips, left folds and functions over nested lists, including list comprehensions. A distinguishing feature of the framework is its simplicity: by transforming list functions to expose their structure, intermediate values are eliminated by general purpose compiler optimisations. We have reimplemented the Haskell standard List library on top of our framework, providing stream fusion for Haskell lists. By allowing a wider range of functions to fuse, we see an increase in the number of occurrences of fusion in typical Haskell programs. We present benchmarks documenting time and space improvements.


symposium/workshop on haskell | 2004

Plugging Haskell in

André Pang; Don Stewart; Sean Seefried; Manuel M. T. Chakravarty

Extension languages enable users to expand the functionality of an application without touching its source code. Commonly, these languages are dynamically typed languages, such as Lisp, Python, or domain-specific languages, which support runtime plugins via dynamic loading of components. We show that Haskell can be comfortably used as a statically typed extension language for both Haskell and foreign-language applications supported by the Haskell FFI, and that it can perform type-safe dynamic loading of plugins using dynamic types. Moreover, we discuss how plugin support is especially useful to applications where Haskell is used as an embedded domain-specific language (EDSL). We explain how to realise type-safe plugins using dynamic types, runtime compilation, and dynamic linking, exploiting infrastructure provided by the Glasgow Haskell Compiler. We demonstrate the practicability of our approach with several applications that serve as running examples.


symposium/workshop on haskell | 2005

Dynamic applications from the ground up

Don Stewart; Manuel M. T. Chakravarty

Some Lisp programs such as Emacs, but also the Linux kernel (when fully modularised) are mostly dynamic; i.e., apart from a small static core, the significant functionality is dynamically loaded. In this paper, we explore fully dynamic applications in Haskell where the static core is minimal and code is hot swappable. We demonstrate the feasibility of this architecture by two applications: Yi, an extensible editor, and Lambdabot, a plugin-based IRC robot. Benefits of the approach include hot swappable code and sophisticated application configuration and extension via embedded DSLs. We illustrate both benefits in detail at the example of a novel embedded DSL for editor interfaces.


symposium/workshop on haskell | 2008

Haskell: batteries included

Duncan Coutts; Isaac Potoczny-Jones; Don Stewart

The quality of a programming language itself is only one component in the ability of application writers to get the job done. Programming languages can succeed or fail based on the breadth and quality of their library collection. Over the last few years, the Haskell community has risen to the task of building the library infrastructure necessary for Haskell to succeed as a programming language suitable for writing real-world applications. This on-going work, the Cabal and Hackage effort, is built on the open source model of distributed development, and have resulted in a flowering of development in the language with more code produced and reused now than at any point in the communitys history. It is easier to obtain and use Haskell code, in a wider range of environments, than ever before. This demonstration describes the infrastructure and process of Haskell development inside the Cabal/Hackage framework, including the build system, library dependency resolution, centralised publication, documentation and distribution, and how the code escapes outward into the wider software community. We survey the benefits and trade-offs in a distributed, collaborative development ecosystem and look at a proposed Haskell Platform that envisages a complete Haskell development environment, batteries included.


Macromolecular Theory and Simulations | 2007

A Parallelised High Performance Monte Carlo Simulation Approach for Complex Polymerisation Kinetics

Hugh Chaffey-Millar; Don Stewart; Manuel M. T. Chakravarty; Gabriele Keller; Christopher Barner-Kowollik


Archive | 2007

Generative Code Specialisation for High-Performance Monte-Carlo Simulations

Don Stewart; Gabriele Keller; Manuel M. T. Chakravarty; Hugh Chaffey-Millar; Christopher Barner-Kowollik


Lecture Notes in Computer Science | 2007

Rewriting haskell strings

Duncan Coutts; Don Stewart; Roman Leshchinskiy


Institute for Future Environments; Science & Engineering Faculty | 2007

Specialising simulator generators for high-performance Monte-Carlo methods

Gabriele Keller; Hugh Chaffey-Millar; Manuel M. T. Chakravarty; Don Stewart; Christopher Barner-Kowollik


Institute for Future Environments; Science & Engineering Faculty | 2007

A parallelised high performance Monte Carlo simulation approach for complex polymerisation kinetics

Hugh Chaffey-Millar; Don Stewart; Manuel M. T. Chakravarty; Gabriele Keller; Christopher Barner-Kowollik

Collaboration


Dive into the Don Stewart's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Christopher Barner-Kowollik

Queensland University of Technology

View shared research outputs
Top Co-Authors

Avatar

Hugh Chaffey-Millar

University of New South Wales

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Roman Leshchinskiy

University of New South Wales

View shared research outputs
Top Co-Authors

Avatar

André Pang

Commonwealth Scientific and Industrial Research Organisation

View shared research outputs
Top Co-Authors

Avatar

Sean Seefried

University of New South Wales

View shared research outputs
Researchain Logo
Decentralizing Knowledge