selected scholarly activity
-
books
- Creating with Code 2023
-
chapters
- Alternative Methods for Retaining Explicit and Finding Implicit Sharing in Embedded DSLs. Lecture Notes in Computer Science. 92-105. 2023
- A Framework for Preadolescent Programmers to Create Cooperative Multiplayer Reading Games. Advances in Soft Computing. 163-174. 2019
- Verified Multicore Parallelism Using Atomic Verifiable Operations. 133-178. 2018
- Verified Multicore Parallelism Using Atomic Verifiable Operations. 107-151. 2013
- Synthesizing and Verifying Multicore Parallelism in Categories of Nested Code Graphs. 25-68. 2008
- Code Graph Transformations for Verifiable Generation of SIMD-Parallel Assembly Code. Lecture Notes in Computer Science. 217-232. 2008
-
conferences
- Exploring Recursion Pedagogies: Innovative Strategies and Their Effects on Engineering Students. Communications in Computer and Information Science. 126-134. 2025
- Mining compilation data to better prepare and assign K-12 coding mentors. CEUR Workshop Proceedings. 39-50. 2025
- Start coding in every human language?. CEUR Workshop Proceedings. 13-26. 2025
- Middle School Architect: Programmatic Modeling and Construction via a 3D Graphics Platform in Elm. 2024 Second International Conference on Emerging Trends in Information Technology and Engineering (ICETITE). 1-7. 2024
- Power-Efficient, Accelerated, Exponential-Based Activation Functions. Cascon 2024 Proceedings 34th Annual International Conference on Collaborative Advances in Software and Computing. 1-10. 2024
- Predicting Modalities of Dyslexic Students using Neuro-Linguistic Programming to Enhance Learning Method. 2022 IEEE International Conference on Data Science and Information System (ICDSIS). 1-6. 2022
- Accelerating Poly1305 cryptographic message authentication on the Z14. Proceedings of the 27th Annual International Conference on Computer Science and Software Engineering Cascon 2017. 48-55. 2020
- Code the future! Teach kids to program in ELM. Proceedings of the 27th Annual International Conference on Computer Science and Software Engineering Cascon 2017. 357. 2020
- NewYouthHack: Using Design Thinking to Reimagine Settlement Services for New Canadians. Communications in Computer and Information Science. 41-62. 2020
- Using z14 fused-multiply-add instructions to accelerate elliptic curve cryptography. Cascon 2019 Proceedings Conference of the Centre for Advanced Studies on Collaborative Research Proceedings of the 29th Annual International Conference on Computer Science and Software Engineering. 284-292. 2020
- Gamification and serious game approaches for introductory computer science tablet software. Proceedings of the First International Conference on Gameful Design, Research, and Applications. 50-57. 2013
- High-performance computing with sparsity and structure. Proceedings of the 2010 Conference of the Center for Advanced Studies on Collaborative Research - CASCON '10. 423-423. 2010
- Case Studies in Model Manipulation for Scientific Computing. Lecture Notes in Computer Science. 24-37. 2008
- Code Graph Transformations for Verifiable Generation of SIMD-Parallel Assembly Code. Lecture Notes in Computer Science. 217-232. 2008
- The gVERSE RF Pulse: An Optimal Approach to MRI Pulse Design. MODELING, SIMULATION AND OPTIMIZATION OF COMPLEX PROCESSES. 25-48. 2008
- MultiLoop. Proceedings of the 2007 conference of the center for advanced studies on Collaborative research - CASCON '07. 260-260. 2007
- Control-Flow Semantics for Assembly-Level Data-Flow Graphs. Lecture Notes in Computer Science. 147-160. 2006
- Harmonic morphisms of metric graphs. HARMONIC MORPHISMS, HARMONIC MAPS, AND RELATED TOPICS. 109-112. 2000
- AAM: A Framework for Preadolescent Programmers to Create Cooperative Multiplayer Reading Games
- Application of Durga - a fast, non-Cartesian volumetric sampling scheme
- Choices in Data Flow for Declarative Assembly
- Graphics Programming in Elm Develops Math Knowledge & Social Cohesion
- High-Level Abstraction, Safety and Code Generation in Coconut
-
journal articles
- Teaching Interaction using State Diagrams. Electronic Proceedings in Theoretical Computer Science. 363:132-152. 2022
- Making the Stitching Process of Montaged SEM Images Automatic Using Fourier Transform Properties. Microscopy and Microanalysis. 27:478-480. 2021
- Code and Structure Editing for Teaching: A Case Study in using Bibliometrics to Guide Computer Science Research 2021
- Scanning Electron Microscope 3D Surface Reconstruction via Optimization. Microscopy and Microanalysis. 25:224-225. 2019
- Multi-Angle Plasma Focused Ion Beam (FIB) Curtaining Artifact Correction Using a Fourier-Based Linear Optimization Model. Microscopy and Microanalysis. 24:657-666. 2018
- Plasma Focused Ion Beam Curtaining Artifact Correction by Fourier-Based Linear Opti-mization Model. Microscopy and Microanalysis. 24:588-589. 2018
- Using Elm to Introduce Algebraic Thinking to K-8 Students. Electronic Proceedings in Theoretical Computer Science. 270:18-36. 2018
- A tribute to Alexander Davidson Bain: An NMR pioneer and mentor at McMaster University. Concepts in Magnetic Resonance Part A: Bridging Education and Research. 45A. 2016
- A Domain-Specific Architecture for Elementary Function Evaluation. International Journal of Mathematics and Mathematical Sciences. 2015:1-8. 2015
- Gamification and serious game approaches for adult literacy tablet software. Entertainment Computing. 5:135-146. 2014
- Designing optimal universal pulses using second-order, large-scale, non-linear optimization. Journal of Magnetic Resonance. 219:61-74. 2012
- An empirical evaluation of user interfaces for a mobile video game. Entertainment Computing. 3:1-10. 2012
- Use of continuous optimization methods to find carbon links in 2D INADEQUATE spectra. Journal of Magnetic Resonance. 210:146-150. 2011
- Exact solution of the CPMG pulse sequence with phase variation down the echo train: Application to R2 measurements. Journal of Magnetic Resonance. 209:183-194. 2011
- Optimizing the gVERSE RF Pulse Sequence: An Evaluation of Two Competitive Software Algorithms.. Algorithmic Oper. Res.. 6:1-19. 2011
- Exact solution to the Bloch equations and application to the Hahn echo. Journal of Magnetic Resonance. 206:227-240. 2010
- Unified Tables for Exponential and Logarithm Families. ACM Transactions on Mathematical Software. 37:1-23. 2010
- Problems, artifacts and solutions in the INADEQUATE NMR experiment. Magnetic Resonance in Chemistry. 48:630-641. 2010
- An Optimized Cell BE Special Function Library Generated by Coconut. IEEE transactions on computers. 58:1126-1138. 2009
- Optimized sampling patterns for multidimensional T2 experiments. Journal of Magnetic Resonance. 197:63-70. 2009
- Robust Solvers for Inverse Imaging Problems Using Dense Single-Precision Hardware. Journal of Mathematical Imaging and Vision. 33:105-120. 2009
- Synthesizing and Verifying Multicore Parallelism in Categories of Nested Code Graphs. PROCESS ALGEBRA FOR PARALLEL AND DISTRIBUTED PROCESSING. 2:3-45. 2008
- Optimizing Teardrop, an MRI sampling trajectory. Optimization Methods and Software. 23:575-592. 2008
- Durga: A heuristically-optimized data collection strategy for volumetric magnetic resonance imaging. Engineering Optimization. 40:117-136. 2008
- Random Volumetric MRI Trajectories via Genetic Algorithms. International Journal of Biomedical Imaging. 2008:297089. 2008
- Random volumetric MRI trajectories via genetic algorithms. International Journal of Biomedical Imaging. 2008. 2008
- Simulation of steady-state NMR of coupled systems using Liouville space and computer algebra methods. Journal of Magnetic Resonance. 189:200-208. 2007
- Magnetic resonance tissue quantification using optimal bSSFP pulse-sequence design. Optimization and Engineering. 8:215-238. 2007
- Explicitly Staged Software Pipelining 2006
- Surface reconstruction from structured-light images for radiation therapy. Proceedings of SPIE - The International Society for Optical Engineering. 5969:59691u-59691u-10. 2005
- Rapid, Embeddable Design Method for Spiral Magnetic Resonance Image Reconstruction Resampling Kernels. Optimization and Engineering. 5:485-502. 2004
- Ward’s Solitons II: Exact Solutions. Canadian Journal of Mathematics. 50:1119-1137. 1998
- A closed form for unitons. Journal of the Mathematical Society of Japan. 50:737-751. 1998
- Ward’s solitons. Geometry and Topology. 1:9-20. 1997
- Uniton Bundles 1995
- A Domain-Specific Language for the Generation of Optimized SIMD-Parallel Assembly Code
- An Empirical Evaluation of Reading Comprehension Tablet Software Utilizing the Question Generation Strategy
- COG-PETS: CODE GENERATION FOR PARAMETER ESTIMATION IN TIME SERIES
- Concurrent Estimation of Coil Sensitivities and Field Inhomogeneity
- Declarative Assembler
- Design of a Universal Refocusing Pulse by Large scale Nonlinear Optimization
- Harmonic maps
- Model Manipulation as Part of a Better Development Process for Scientific Computing Code
- NMR Pulse Design Using Modern Optimization Methods
- Optimal Pulse Design Of Single Spin Systems
- Steady State Spectroscopy - CW NMR Lives
- Unitons and their moduli. Electronic Research Announcements in Mathematical Sciences. 2:7-17.
- VISUAL TRACKING EMPLOYING MAPLE CODE GENERATION
- Ward’s solitons
-
preprints
- A Problem-Based Learning Approach to Teaching Design in CS1 2024
- A Software Engineering Capstone Course Facilitated By GitHub Templates 2024
- Inexactness and Correction of Floating-Point Reciprocal, Division and Square Root 2024
- Teaching Interaction using State Diagrams 2022
- Using Elm to Introduce Algebraic Thinking to K-8 Students 2018
- Ward's solitions 1997
- A closed form for unitons 1995
- Uniton Bundles 1995