krakow salt mine Guillaume Marceau

I am a software architect at the innovative software company Sefaira. We are building true-to-physics simulations of the energy consumption of green building, delivered in a browser, running on clusters in the cloud, and uniquely easy to use.

Before that I was a Ph.D. student in computer science at WPI with Kathi Fisler. I worked with the PLT research group on how to best teach programming. Specifically, I ran experiments to inform the design of the curriculum and of its supporting crew, like DrRacket and WeScheme.

Before that I was teaching intro to programming at IIITM-K, in Thiruvananthapuram, Kerala, India. And from 2002 to 2006 I was a grad student at Brown University where I did research on programming languages design and theory with Shriram Krishnamurthi. One of my early award-winning paper was on widening the appeal of functional reactive programming.

Live in New York now. Grew up a Montreal. I have a somewhat thick French-Québécois accent with a non-trivial Gaspé inclination, from my mother's side.


I created DivaScheme, which is both a semi-structured editing mode for DrRacket and an editor for people who are worried about developing RSI (or already have it.) In DivaScheme, editing commands are unchorded (no ctrl/shift/alt contortions,) and they work on whole expressions by default.

As part of an earlier research project, I built MzTake, a scripted debugger which uses the programming language FrTime to process events. FrTime is the work of my peer Greg Cooper. It is a programming language specialized in the processing of events, including the kind of events generated by a process running under the supervision of a debugger. Thanks to FrTime, within MzTake debugging scripts are concise and reusable.


I share some thoughts on a separate blog.

I post longer articles on their own page:

I am also on Twitter and (if you know me) on Facebook.


The pictures on this page were taken in Germany and Poland. I also have a flickr photostream with more photography on display, notably of Vietnam and India.


A full list of my publications, with links to citations, can also be found on my Google Scholar profile.

Measuring the Effectiveness of Error Messages Designed for Novice Programmers
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
Technical Symposium on Computer Science Education (SIGCSE), 2011, best paper award
(a preliminary version of this paper appeared in Scheme and Functional Programming 2010. [pdf])

Do Values Grow on Trees?: Expression Integrity in Functional Programming
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
SIGCSE International Computing Education Research Workshop, 2011

Mind Your Language: On Novices' Interactions with Error Messages
Guillaume Marceau, Kathi Fisler, Shriram Krishnamurthi
SPLASH/Onward!, 2011

The HAL Project -- Discovering local artists through Zeroconf
Pascal Charest, Michael Lenczner and Guillaume Marceau
Linux Journal, January 2007

The Case for Analysis Preserving Language Transformation
X. Zhang, L. Koved, M. Pistoia, S. Weber, T. Jaeger, G. Marceau
International Symposium on Software Testing and Analysis (ISSTA), 2006

The Design and Implementation of a Dataflow Language for Scriptable Debugging
G. Marceau, G. H. Cooper, J. P. Spiro, S. Krishnamurthi, S. P. Reiss
Automated Software Engineering Journal (ASE), 2006 (by invitation)

A Dataflow Language for Scriptable Debugging
G. Marceau, G. H. Cooper, S. Krishnamurthi, S. P. Reiss
IEEE International Symposium on Automated Software Engineering (ASE), 2004, award paper

Robotics-Based Location Sensing For Wireless Ethernet
A.M. Ladd, K.E. Bekris, G. Marceau, A. Rudys, D.S. Wallach, L.E. Kavraki
International Conference on Mobile Computing and Networking (Mobicom), 2002

Using Wireless Ethernet for Localization
A. Ladd, K. E. Bekris, G. Marceau, A. Rudys, L. E. Kavraki, D. S. Wallach
IEEE/RJS International Conference on Intelligent Robots and Systems (IROS), 2002

Efficient Inference Of Static Types For Java Bytecode
Etienne M. Gagnon, Laurie J. Hendren, Guillaume Marceau
Static Analysis Symposium (SAS), 2000

Guillaume Marceau
gmarceau @