Tags compsci

Parsing Regex with Recursive Descent

A fast and simple way to parse regular expressions.

Introduction to Bimachines

A gentle overview of bimachines with examples.

Resolving Ambiguity in Text Rewriting

Strategies for resolving conflicts that occur when two replacement substrings overlap.

Finite-State Transducers for Text Rewriting

An formal overview of regular expression-based text rewriters.

A Practical Guide to State Machines

Express application logic in a concise and declarative way using state machines and C#’s pattern matching.

Translation using Syntactic Rules

How to describe a formal language and build a translator with ANTLR and JavaScript.

Computing Ranges in Constant Time

Range Minimum Query with Sparse Table and Dynamic Programming.

Gödel's System T in TypeScript

Experimenting with a rudimentary type system that ensures the programs always terminate.

On Recursive Functions

The Y combinator or how to implement recursion in a language that doesn’t support it.

Implementing a Regular Expression Engine

Using Ken Thompson’s construction algorithm.