Network


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

Hotspot


Dive into the research topics where Magnus Carlsson is active.

Publication


Featured researches published by Magnus Carlsson.


international conference on functional programming | 1993

FUDGETS: a graphical user interface in a lazy functional language

Magnus Carlsson; Thomas Hallgren

This paper describes an implementation of a small windowbased graphical user interface toolkit for X Windows written in the lazy functional language LML. By using this toolkit, a H askell or LML programmer can crest e a user interface with menus, buttons and other graphical interface objects, without conforming to more or less imperative programming paradigms imposed if she were to use a traditional (imperative) toolkit. Instead, the power of the abstraction methods provided by Haskell or LML are used. The main abstraction we use is the fr.dget. Fudgets are combined in a hierarchical structure, and they interact by message passing, The current implementation is baaed on a sequential evaluator, but by using non-determinism and oracles, we suggest how the fudgets can evaluate in parallel. We believe that the toolkit can be extended to a full-feathered and practically useful high level graphical toolkit.


The Journal of Urology | 1984

Cortical Evoked Potentials Obtained After Stimulation of the Lower Urinary Tract

Gaby G. Badr; Magnus Carlsson; Lars Lindstrom Sven Friberg; Bo Ohlsson

Cortical evoked potentials following stimulation of the lower urinary tract have been recorded in humans. Of 26 patients investigated 9 had no urinary signs or symptoms except genuine stress incontinence, while the remaining 17 had various neurogenic bladder disorders. Monopolar and bipolar stimulation of the bladder and urethra was performed using conventional and newly designed suction-type electrodes. While no cortical evoked potentials could be obtained from patients with complete transverse spinal cord lesions polyphasic cortical evoked potentials (N45, P60, N80 and P100 msec.) were recorded in response to monopolar bladder stimulation in all patients with stress incontinence. Following bipolar stimulation a response with lower amplitude and with latencies slightly divergent could be recorded. This response is assumed to be evoked only from bladder afferent nerves, while the monopolar response could include activity from adjacent structures. The most consistent pattern was recorded at the Cz site. Cortical evoked potentials following stimulation of the urethra were more difficult to evoke but they resembled those obtained after bipolar stimulation of the bladder. The method, when fully developed, may be helpful in the clinical investigation of patients affected by various neurogenic disorders of the lower urinary tract. So far, in our limited series a delayed response at P2 has been observed in patients with uninhibited neurogenic bladders.


international conference on coordination models and languages | 1999

Erratic Fudgets: A Semantic Theory for an Embedded Coordination Language

Andrew Moran; David Sands; Magnus Carlsson

The powerful abstraction mechanisms of functional programming languages provide the means to develop domain-specific programming languages within the language itself. Typically, this is realised by designing a set of combinators (higher-order reusable programs) for an application area, and by constructing individual applications by combining and coordinating individual combinators. This paper is concerned with a successful example of such an embedded programming language, namely Fudgets, a library of combinators for building graphical user interfaces in the lazy functional language Haskell. The Fudget library has been used to build a number of substantial applications, including a web browser and a proof editor interface to a proof checker for constructive type theory. This paper develops a semantic theory for the non-deterministic stream processors that are at the heart of the Fudget concept. The interaction of two features of stream processors makes the development of such a semantic theory problematic: (i) the sharing of computation provided by the lazy evaluation mechanism of the underlying host language, and (ii) the addition of non-deterministic choice needed to handle the natural concurrency that reactive applications entail. We demonstrate that this combination of features in a higher-order functional language can be tamed to provide a tractable semantic theory and induction principles suitable for reasoning about contextual equivalence of Fudgets.


Science of Computer Programming | 2003

Erratic fudgets: a semantic theory for an embedded coordination language

Andrew Moran; David Sands; Magnus Carlsson

The powerful abstraction mechanisms of functional programming languages provide the means to develop domain-specific programming languages within the language itself. Typically, this is realised by designing a set of combinators (higher-order reusable programs) for an application area, and by constructing individual applications by combining and coordinating individual combinators. This paper is concerned with a successful example of such an embedded programming language, namely Fudgets, a library of combinators for building graphical user interfaces in the lazy functional language Haskell. The Fudget library has been used to build a number of substantial applications, including a web browser and a proof editor interface to a proof checker for constructive type theory. This paper develops a semantic theory for the non-deterministic stream processors that are at the heart of the Fudget concept. The interaction of two features of stream processors makes the development of such a semantic theory problematic: (i) the sharing of computation provided by the lazy evaluation mechanism of the underlying host language, and (ii) the addition of non-deterministic choice needed to handle the natural concurrency that reactive applications entail We demonstrate that this combination of features in a higher-order functional language can be tamed to provide a tractable semantic theory and induction principles suitable for reasoning about contextual equivalence of Fudgets.


international conference on functional programming | 2008

Unrestricted pure call-by-value recursion

Johan Nordlander; Magnus Carlsson; Andy Gill

Call-by-value languages commonly restrict recursive definitions by only allowing functions and syntactically explicit values in the right-hand sides. As a consequence, some very appealing programming patterns that work well in lazy functional languages are hard to apply in a call-by-value setting, even though they might not be using laziness for any other purpose than to enable the desired form of recursion. In this paper we present an operational semantics as well as a straightforward implementation technique for unrestricted recursion under pure call-by-value. On that basis we are able to demonstrate that highly recursive programming idioms such as combinator-based parsing are indeed compatible with call-by-value evaluation.


Archive | 1998

Fudgets - Purely Functional Processes with applications to Graphical User Interfaces

Magnus Carlsson; Thomas Hallgren


Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text | 1995

Programming with Fudgets

Thomas Hallgren; Magnus Carlsson


international conference on functional programming | 1997

Reactive objects in a functional language : an escape from the Evil I

Johan Nordlander; Magnus Carlsson


Archive | 2005

Programming with time-constrained reactions

Johan Nordlander; Magnus Carlsson; Mark P. Jones; Jan Åke Jönsson


Archive | 2002

Composed, and in Control: Programming the Timber Robot

Mark P. Jones; Magnus Carlsson; Johan Nordlander

Collaboration


Dive into the Magnus Carlsson's collaboration.

Top Co-Authors

Avatar

Johan Nordlander

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar

Thomas Hallgren

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar

David Sands

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Andrew Moran

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar

Bo Ohlsson

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar

Gaby G. Badr

Chalmers University of Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Lars Lindstrom Sven Friberg

Chalmers University of Technology

View shared research outputs
Researchain Logo
Decentralizing Knowledge