SRFI 200: Pattern Matching

by Panicz Maciej Godek

status: withdrawn (2022-07-23)

keywords: Pattern Matching

See also SRFI 204: Wright-Cartwright-Shinn Pattern Matcher, SRFI 241: Match — Simple Pattern-Matching Syntax to Express Catamorphisms on Scheme Data, and SRFI 257: Simple extendable pattern matcher with backtracking.

Abstract

This SRFI discusses some of the existing pattern-matching libraries for the Scheme programming language — namely, the pattern matcher presented by Andrew K. Wright and Robert Cartwright in the paper "A Soft Type System for Scheme", the pattern matcher developed by Dan Friedman, Erik Hilsdale and Kent Dybvig, the racket/match module distributed with the Racket programming environment, as well as the Bigloo and Gerbil pattern matchers distributed with their respective implementations. It then extracts a pattern syntax which is compatible with three of those implementations and provides extrinsic rationale for that syntax. It also provides a simple implementation of a pattern matcher which conforms to the specification of a pattern language provided in this document.