Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Colin McDonald

dblp:238/0215 · DBLP profile ↗
← Back
2ranked-venue papers
0as first author
1since 2021 · last 2023
0009-0000-8581-0237ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 2 · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Artificial intelligence
1 paper
Probabilistic and Bayesian machine learning · 100%
Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 100%

Topics — the 5 heaviest of 5, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Machine learning › Probabilistic and Bayesian machine learning › probabilistic inference
exact inference
0.712023
Exact Recursive Probabilistic Programming · Proc. ACM Program. Lang. 2023
Machine learning › Probabilistic and Bayesian machine learning
probabilistic programming
0.712023
Exact Recursive Probabilistic Programming · Proc. ACM Program. Lang. 2023
Programming languages and type systems › probabilistic programming
probabilistic programming language
0.712023
Exact Recursive Probabilistic Programming · Proc. ACM Program. Lang. 2023
Programming languages and type systems › type systems › substructural type systems
linear types
0.212023
Exact Recursive Probabilistic Programming · Proc. ACM Program. Lang. 2023
Programming languages and type systems
type systems
0.212023
Exact Recursive Probabilistic Programming · Proc. ACM Program. Lang. 2023

Methods — techniques the papers use, named apart from their topics

refunctionalization · 1.3greedy algorithm · 1.3defunctionalization · 1.3
YearPublicationVenuePosition
2023 Exact Recursive Probabilistic Programming
abstract
Recursive calls over recursive data are useful for generating probability distributions, and probabilistic programming allows computations over these distributions to be expressed in a modular and intuitive way. Exact inference is also useful, but unfortunately, existing probabilistic programming languages do not perform exact inference on recursive calls over recursive data, forcing programmers to code many applications manually. We introduce a probabilistic language in which a wide variety of recursion can be expressed naturally, and inference carried out exactly. For instance, probabilistic pushdown automata and their generalizations are easy to express, and polynomial-time parsing algorithms for them are derived automatically. We eliminate recursive data types using program transformations related to defunctionalization and refunctionalization. These transformations are assured correct by a linear type system, and a successful choice of transformations, if there is one, is guaranteed to be found by a greedy algorithm.
David Chiang 0001, Colin McDonald, Chung-chieh Shan
Proc. ACM Program. Lang.2
2020 Strong functional pearl: Harper's regular-expression matcher in Cedille
abstract
This paper describes an implementation of Harper's continuation-based regular-expression matcher as a strong functional program in Cedille; i.e., Cedille statically confirms termination of the program on all inputs. The approach uses neither dependent types nor termination proofs. Instead, a particular interface dubbed a recursion universe is provided by Cedille, and the language ensures that all programs written against this interface terminate. Standard polymorphic typing is all that is needed to check the code against the interface. This answers a challenge posed by Bove, Krauss, and Sozeau.
Aaron Stump, Stephan Spahn, Colin McDonald
Proc. ACM Program. Lang.4