April 2008 Paper: Simply efficient functional reactivity. Unpublished draft. January 2008 New technical blog November 2007 Google tech talk: Tangible Functional Programming: a modern marriage of usability and composability October, 2007 The paper Functional Reactive Animation was awarded as the most influential paper of ICFP '97. July 6, 2007 My paper Tangible Functional Programming was accepted and will appear in ICFP 2007. Paper slightly updated. June 2007 Applicative Data-Driven Programming. Paper draft, with applications to GUI programming. April 2007 I've moved from the Seattle area to San Andreas, CA February 2007 NVC Evolves: Explorations in evolving the understanding, living, and teaching of Nonviolent Communication January 2007 DeepArrow: a framework for composable "editors" of pure values January 2007 TV: combined and separable packaging of functionality and interface November 2006 Phooey: a functional UI library for Haskell. November 2006 Emergence of NVC: a Life-inspired, self-organizing vision for sharing and evolving Nonviolent Communication. March 2006 Pajama: interactive imagery, based on the ideas of Pan, but runs in web pages and much more flexibly interactive. (Some blog notes.) January 2006 Started a technical blog
Most of my research is aimed at supporting the creation of interactive
synthetic media content, including computer animation, human-computer
interaction, images, 2D and 3D geometry, and programmable shaders. In all cases,
I aim to preserve or improve on the flexibility and performance of mainstream
programming approaches, while greatly simplifying the creation process.
Synthetic media programs are almost always implemented in sequential, imperative
(often object-oriented) languages. My research explores use of declarative
languages, resulting in much simpler and more reusable and composable programs.
These languages are also more amenable to execution on parallel architectures
such as modern graphics processors, because declarative languages abstract away
from order of execution, removing the accidental sequentiality found in
imperative programs. Even on sequential machines, declarative formulations have
much simpler mathematical semantics, which facilitates automatic optimization.
They also tend to be spatially and temporally continuous
(resolution-independent), allowing them to adapt naturally to machines with
different speeds and display resolutions.
After exploring explicit programming of synthetic media content for
several years, I'm now also keenly interested in supporting artists. The goal of
my new research agenda is to give artists access to the expressive power of
computers and programming languages, while retaining an artist's working style.
I mean "artist" in a broad sense, in contrast to the verbal and sequential style
of an engineer. (I don't mean to suggest that people fit neatly into these
two categories.) My ideal audience includes graphic designers, musicians, and
children -- really, the playful and curious in all of us.
Some past projects:
Here is my CV (updated October 10, 2007).
Since April of 2003, I have been learning and practicing nonviolent communication (NVC), also called "compassionate communication". NVC is a consciousness and small set of inner and outer practices designed to nurture compassion in ourselves and others by how we speak and listen. Together with my partner Holly, I do training, mediation, and empathic listening for groups, couples, and individuals. Our working partnership is called Awakening Compassion.
My interest is in living and sharing the consciousness of NVC, rather than a particular process or model, i.e., the "sacred place" rather than the "raft". (See this story.) For this reason, I have chosen internal rather than external certification and have seeded two community-open web sites aimed at evolving NVC practice into deeper alignment with NVC consciousness.
I have four children: Jake (25), Becky (23), Charlotte (21), and Patrick (18) (ages as of April 2008). My parents are on the web, too. I love ballroom dance, especially salsa.
Here are some of my favorite quotations.
And here are my online photo collections.
A while back, I played around with making some silly photo collages. Here is a small gallery of examples, with simple instructions to do your own. Nothing serious here.
![]() |
I first saw this spiky ball high up on a rotating post in a used car lot somewhere in Florida. Here are a bigger version (256x256, 24 bit, 30f/s AVI, 866 KB), and a really big version (512x512, 2.15MB). Turn on the auto-repeat property in the AVI viewer to keep it running. |
| Here's a lovely fractal
I happened upon. Click on it for more info. Utero Universalis
|
See the web site of Fr. Magnus Wenninger, OSB, containing pictures of many beautiful polyhedra he has constructed by hand. I had the honor of meeting Fr. Wenninger during the Mosaic 2000 conference in Seattle. Here is a polyhedron he made while there.

If my conal-dot-net email breaks, please resend to conal.elliott-at-gmail-dot-com.
You can also catch me via Yahoo! Messenger (conal_elliott), AIM (Conal WA), GoogleTalk (firstname.lastname), or #haskell IRC (conal). Given a choice, I prefer GoogleTalk or #haskell.
Last updated: October 04, 2006. Visitor Count: since November 20, 1998.