Taylor Allred

dblp:362/5876 · DBLP profile ↗
← Back
1ranked-venue papers
0as first author
1since 2021 · last 2023
0009-0000-7238-1816ORCID · reported

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

Software engineering, systems software and programming languages · 1 · 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.

Software engineering, system software, and programming languages
1 paper
Programming languages and type systems · 100%

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

TopicWeightPapersLastEvidence papers
Programming languages and type systems
extensibility
0.712023
Rhombus: A New Spin on Macros without All the Parentheses · Proc. ACM Program. Lang. 2023
Programming languages and type systems › metaprogramming
macro systems
0.712023
Rhombus: A New Spin on Macros without All the Parentheses · Proc. ACM Program. Lang. 2023
Programming languages and type systems
metaprogramming
0.212023
Rhombus: A New Spin on Macros without All the Parentheses · Proc. ACM Program. Lang. 2023

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

macro expansion protocol · 0.7
YearPublicationVenuePosition
2023 Rhombus: A New Spin on Macros without All the Parentheses
abstract
Rhombus is a new language that is built on Racket. It offers the same kind of language extensibility as Racket itself, but using traditional (infix) notation. Although Rhombus is far from the first language to support Lisp-style macros without Lisp-style parentheses, Rhombus offers a novel synthesis of macro technology that is practical and expressive. A key element is the use of multiple binding spaces for context-specific sublanguages. For example, expressions and pattern-matching forms can use the same operators with different meanings and without creating conflicts. Context-sensitive bindings, in turn, facilitate a language design that reduces the notational distance between the core language and macro facilities. For example, repetitions can be defined and used in binding and expression contexts generally, which enables a smoother transition from programming to metaprogramming. Finally, since handling static information (such as types) is also a necessary part of growing macros beyond Lisp, Rhombus includes support in its expansion protocol for communicating static information among bindings and expressions. The Rhombus implementation demonstrates that all of these pieces can work together in a coherent and user-friendly language.
Matthew Flatt, Taylor Allred, Nia Angle, Stephen De Gabrielle, Robert Bruce Findler, Jack Firth, Kiran Gopinathan, Ben Greenman, Siddhartha Kasivajhula, Alex Knauth, Jay A. McCarthy, Sam Phillips, Sorawee Porncharoenwase, Jens Axel Søgaard, Sam Tobin-Hochstadt
Proc. ACM Program. Lang.2