Publications
In Submission
-
Haskell Beats C Using Generalized Stream
Fusion. . In
submission,
March 2013.
[pdf] [bib]@unpublished{mainland13haskellbeatsc, title = {Haskell Beats {C} Using Generalized Stream Fusion}, author = {Mainland, Geoffrey and Leshchinskiy, Roman and Peyton Jones, Simon}, year = {2013}, note = {In submission} }
Conference and Workshop Papers
-
Explicitly Heterogeneous Metaprogramming with
MetaHaskell. . Proceedings of the Seventeenth ACM
SIGPLAN International Conference on Functional Programming (ICFP '12),
Copenhagen, Denmark,
September 2012.
[doi] [pdf] [bib]@inproceedings{mainland12metahaskell, address = {Copenhagen, Denmark}, title = {Explicitly heterogeneous metaprogramming with {M}eta{H}askell}, isbn = {978-1-4503-1054-3}, url = {http://doi.acm.org/10.1145/2364527.2364572}, doi = {10.1145/2364527.2364572}, booktitle = {Proceedings of the 17th {ACM} {SIGPLAN} International Conference on Functional Programming {(ICFP} '12)}, author = {Mainland, Geoffrey}, year = {2012}, keywords = {linear languages, metaprogramming, open terms, quasiquotation, type systems}, pages = {311--322}, } -
Pause 'n' play: Formalizing asynchronous
C#. . Proceeedings of the 26th European Conference on Object-Oriented Programming (ECOOP '12),
June 2012 ©Springer-Verlag.
[doi] [bib]@inproceedings{bierman12async, address = {Beijing, China}, series = {Lecture Notes in Computer Science}, title = {Pause ’n’ Play: Formalizing Asynchronous csharp}, copyright = {©2012 Springer-Verlag Berlin Heidelberg}, isbn = {978-3-642-31056-0, 978-3-642-31057-7}, shorttitle = {Pause ’n’ Play}, url = {http://link.springer.com/chapter/10.1007/978-3-642-31057-7_12}, booktitle = {Proceeedings of the 26th European Conference on Object-Oriented Programming ({ECOOP} '12)}, publisher = {Springer Berlin Heidelberg}, author = {Bierman, Gavin and Russo, Claudio and Mainland, Geoffrey and Meijer, Erik and Torgersen, Mads}, month = jan, year = {2012}, keywords = {Computer Communication Networks, Logics and Meanings of Programs, Mathematical Logic and Formal Languages, Programming Languages, Compilers, Interpreters, Programming Techniques, Software Engineering}, pages = {233---257} } -
Nikola: Embedding Compiled GPU Functions in
Haskell. . Proceedings of the 2010 ACM
SIGPLAN Symposium on Haskell (Haskell '10),
2010.
[doi] [pdf] [bib]@inproceedings{mainland10nikola, author = {Geoffrey Mainland and Greg Morrisett}, title = {Nikola: Embedding Compiled {GPU} Functions in {H}askell}, booktitle = {Proceedings of the third ACM SIGPLAN {S}ymposium on {H}askell}, series = {Haskell '10}, year = {2010}, pages = {67--78} } -
Flask: Staged Functional Programming for Sensor
Networks.. Proceedings of the
Thirteenth ACM SIGPLAN International Conference on Functional Programming
(ICFP '08),
September 2008.
[doi] [pdf] [bib]@inproceedings{mainland08flask, address = {Victoria, {BC}, Canada}, title = {Flask: Staged Functional Programming for Sensor Networks}, booktitle = {Proceeding of the 13th {ACM} {SIGPLAN} International Conference on Functional Programming ({ICFP} '08)}, author = {Mainland, Geoffrey and Morrisett, Greg and Welsh, Matt}, year = {2008}, pages = {335--346}, } -
LiveNet: Using Passive Monitoring to Reconstruct
Sensor Network Dynamics. . 4th IEEE/ACM International
Conference on Distributed Computing in Sensor Systems (DCOSS 2008),
June 2008.
[doi] [pdf] [bib]@inproceedings{chen08livenet, title = {LiveNet: Using Passive Monitoring to Reconstruct Sensor Network Dynamics}, author = {{Bor-rong} Chen and Geoffrey Peterson and Geoff Mainland and Matt Welsh}, booktitle = {4th IEEE/ACM International Conference on Distributed Computing in Sensor Systems (DCOSS 2008)}, year = {2008}, month = {June} } -
Why It's Nice to be Quoted: Quasiquoting for
Haskell. . Proceedings of the 2007 ACM
SIGPLAN workshop on Haskell (Haskell '07),
2007.
[doi] [pdf] [bib]@inproceedings{mainland07quasiquoting, author = {Geoffrey Mainland}, title = {Why it's nice to be quoted: Quasiquoting for {Haskell}}, booktitle = {Haskell '07: Proceedings of the ACM SIGPLAN workshop on Haskell workshop}, year = {2007}, pages = {73--82}, location = {Freiburg, Germany}, publisher = {ACM}, address = {New York, NY, USA}, } -
Decentralized, Adaptive Resource Allocation for Sensor
Networks. . Proceedings of the 2nd
USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI
'05), May 2005.
[pdf] [bib]@inproceedings{mainland05sora, author = {Geoffrey Mainland and David C. Parkes and Matt Welsh}, title = {Decentralized, adaptive resource allocation for sensor networks}, booktitle = {NSDI'05: Proceedings of the 2nd conference on Symposium on Networked Systems Design \& Implementation}, year = {2005}, pages = {315--328}, publisher = {USENIX Association}, address = {Berkeley, CA, USA}, } -
Using Virtual Markets to Program Global Behavior in
Sensor Networks. . Proceedings of the 11th ACM SIGOPS
European Workshop, September 2004.
[doi] [pdf] [bib]@inproceedings{mainland04markets, author = {Geoff Mainland and Laura Kang and Sebastien Lahaie and David C. Parkes and Matt Welsh}, title = {Using virtual markets to program global behavior in sensor networks}, booktitle = {Proceedings of the 11th workshop on ACM SIGOPS European workshop}, year = {2004}, location = {Leuven, Belgium}, publisher = {ACM}, address = {New York, NY, USA}, } -
Programming Sensor Networks Using Abstract
Regions. . Proceedings of the 1st Symposium
on Networked Systems Design and Implementation
(NSDI '04), March 2004.
[pdf] [bib]@inproceedings{welsh04abstract, author = {Matt Welsh and Geoff Mainland}, title = {Programming sensor networks using abstract regions}, booktitle = {NSDI'04: Proceedings of the 1st conference on Symposium on Networked Systems Design and Implementation}, year = {2004}, pages = {3--3}, location = {San Francisco, California}, publisher = {USENIX Association}, address = {Berkeley, CA, USA}, }
Technical Reports
-
LiveNet: Using Passive Monitoring to Reconstruct Sensor
Network Dynamics. . Harvard Tech Report
TR-11-07, August 2007.
[pdf] [bib]@techreport{chen07livenet-tr, author = {Bor-rong Chen and Geoffrey Peterson and Geoff Mainland and Matt Welsh}, title = {LiveNet: Using Passive Monitoring to Reconstruct Sensor Network Dynamics}, year = {2007}, month = {August}, institution = {Harvard University}, number = {TR-11-07} } -
Flask: A Language for Data-driven Sensor Network
Programs. . Harvard Tech Report
TR-13-06,
May 2006.
[pdf] [bib]@techreport{mainland06flask-tr, author = {Geoffrey Mainland and Matt Welsh and Greg Morrisett}, title = {Flask: A Language for Data-driven Sensor Network Programs}, institution = {Harvard University}, year = 2006, number = {TR-13-06} }
Posters and Abstracts
-
Sensor network programming with
Flask. . SenSys '07:
Proceedings of the 5th international conference on Embedded networked sensor
systems, 2007.
[doi] [bib]@inproceedings{mainland07flask-poster, author = {Geoffrey Mainland and Greg Morrisett and Matt Welsh and Ryan Newton}, title = {Sensor network programming with {Flask}}, booktitle = {SenSys '07: Proceedings of the 5th international conference on Embedded networked sensor systems}, year = {2007}, pages = {385--386}, location = {Sydney, Australia}, publisher = {ACM}, address = {New York, NY, USA}, }
Other Publications
-
CitySense: An Urban-Scale Wireless Sensor Network and
Testbed. . 2008 IEEE International Conference on
Technologies for Homeland Security, May
2008.
[pdf] -
Distributed, Adaptive Resource Allocation for Sensor
Networks. . ;login,
30(5), October 2005.
[pdf] -
Sensor Networks for Emergency Response: Challenges and
Opportunities. . IEEE Pervasive Computing, Special
Issue on Pervasive Computing for First
Response, October/December 2004.
[doi] [pdf]