← Back to Home

Interswift

Education

| January 2026

Description

Developed a custom, feature-rich interpreter for the Swift programming language from scratch using modern C++20.

  • Engineered the frontend architecture using Flex for lexical analysis and Bison for parsing, successfully converting Swift source text into an executable structure.
  • Implemented core language semantics and control flow, including variable/constant declarations, recursive function calls, if/else branching, and while/for-in loops.
  • Developed support for complex data structures and strong typing, accommodating nested multi-dimensional subtypes (e.g., [[(Int, String)]]), arrays, dictionaries, sets, tuples, and strings.
  • Programmed advanced Swift-specific language mechanics, such as function overloading, optional argument labels, range expressions, enumerations, and member properties.
  • Packaged the application as a Command Line Interface (CLI) tool built with CMake, featuring custom debugging modes for step-by-step visibility into the lexing, parsing, and semantic analysis phases.

Tech Stack

BisonBison
C++C++
Flex
SwiftSwift