Braincurry: A domain-specific language for integrative neuroscience

Refereed Proceedings of the Tenth Symposium on Trends in Functional Programming (TFP'09)

Nielsen TA, Matheson T & Nilsson H.


This paper describes Braincurry, a domain-specific, declarative language for describing and analysing experiments in neuroscience. Braincurry has three goals: to allow experiments and data analysis to be described in a way that is sufficiently abstract to serve as a definition; to facilitate carrying out experiments by executing such descriptions; and to be directly usable by end users: neuroscientists. We adopted an experimental and incremental approach to the design and implementation of Braincurry, focusing on the neurophysiological response to visual stimuli in locusts as a test case. Braincurry is currently implemented as an embedding in Haskell, which is a highly effective tool for this kind of exploratory language design. The declarative nature of Haskell and its flexible syntax fitted with our goals. We discuss the requirements for a realistic language meeting the above goals, describe the current Braincurry design and how it may be generalised, and explain how some particularly challenging hard real-time requirements were met.


A PDF of this paper is available here.

Back to publication list

Share this page:

Contact the Department

Department of Neuroscience, Psychology and Behaviour
University of Leicester
University Road

T: +44 (0)116 252 2922


AccessAble logo

The University of Leicester is committed to equal access to our facilities. DisabledGo has detailed accessibility guides for the George Davies Centre, the Adrian Building and the Maurice Shock Medical Sciences Building.