Cameron Swords
PL Ph.D. Student at Indiana University

CV: See Below
Email: cswords [at] indiana.edu
Github: cgswords
Blog: cgswords.github.io
Microblog: @cameronswords

Current Projects

Mesuda.
I am currently exploring the notion of a statically session-typed, multi-process language, utilizing processes and process interactions as the primary effect to develop effect-as-processes.

Effectful and General Contracts with Amr Sabry and Sam Tobin-Hochstadt.
I am working with Amr Sabry to explore the interactions of software contracts with stateful and effectful computations. We are working toward unifying these behaviors and producing a cleaner, more expansive contract system in the process.

Publications

A Unified Characterization of Runtime Verification Systems as Patterns of Communication.
Cameron Swords.
Dissertation, Indiana University, 2018.
[ To Appear ]

An Extended Account of Contract Monitoring Strategies as Patterns of Communication.
Cameron Swords, Amr Sabry, and Sam Tobin-Hochstadt.
Journal of Functional Programming, 2018.
[ To Appear ]

Big Types in Little Runtime: Open World Soundness and Collaborative Blame for Gradual Type System.
Michael M. Vitousek, Cameron Swords, Jeremy G. Siek.
Symposium on Principles of Programming Languages, 2017.
[ PDF | Artifact ]

Two Advances in the Implementations of Extended Syllogistic Logics.
Jason Hemann, Cameron Swords, and Lawrence Moss.
Workshop on Natural Language Processing and Automated Reasoning, 2015.
[ PDF | Code ]

Expressing Contract Monitors as Patterns of Communication.
Cameron Swords, Amr Sabry, and Sam Tobin-Hochstadt.
International Conference on Functional Programming, 2015.
[ PDF | Code ]

rKanren: Guided Search in miniKanren.
Cameron Swords and Daniel P. Friedman.
Scheme and Functional Programming Workshop, 2013.
[ PDF | Code ]

Extensible Effects.
Oleg Kiselyov, Amr Sabry, and Cameron Swords.
Haskell Symposium, 2013.
[ PDF | Code ]

Lock-Graph: A Tree-Based Locking Method for Parallel Collision Handling with Diverse Particle Populations.
Mark Lewis and Cameron Swords.
Parallel and Distributed Processing Techniques and Applications, 2011.
[ PDF ]

Technical Reports and Drafts

Monads a la Mode.
Cameron Swords, Daniel P. Friedman.
Draft, Spring 2012.
[PDF]

Education

Ph.D. in Computer Science
Indiana University. Bloomington, Indiana, 2011-Current.
Research committee: Amr Sabry (chair), Sam Tobin-Hochstadt, Jeremy Siek, Lawrence S. Moss.
Dissertation: A Unified Characterization of Runtime Verification Systems as Patterns of Communication

Master's of Science in Computer Science
Indiana University. Bloomington, Indiana, 2016.

Bachelor's of Science in Computer Science (with honors)
Trinity University. San Antonio, Texas, 2011.
Undergraduate Thesis: Pocketwatch: A Parallel Langauge

Service & Activities

External Reviewer
PEPM 2014, COMLAN 2016

External Subreviewer
ICFP 2016, POPL 2017

Organizer
PL Wonks, the PL research group at Indiana University (2013-2017).

Odds and Ends

Tannenbaum, a PLT-Games Turing Tarpit Language
[ Code ]

Parenthepress, Scheme + Perl Static Blogging Engine
[ Code ]

racket-rrb, a relaxed radix balance tree implementation for Racket
[ Code ]