The Return of Language-Oriented Programming
13 days ago
- #Programming Languages
- #LLMs
- #DSLs
- LLMs may lower the cost of developing new programming languages, contrary to initial assumptions.
- Language-Oriented Programming (LOP) involves designing domain-specific languages (DSLs) for specific problem domains, splitting development into parallel tracks.
- DSLs like SQL, LaTeX, and Kubernetes YAMLs are common and focus on specific subdomains of software systems.
- LLMs can assist in generating DSL implementations, documentation, and examples, making DSL development more accessible.
- Token efficiency in programming languages is a new consideration, as LLMs tokenize code differently than traditional compilers.
- Examples show Python can be more token-efficient than JavaScript, and Q more efficient than APL, despite readability differences.
- Token-Oriented Object Notation (TOON) is a compact alternative to JSON, designed to reduce token usage in LLMs.
- LLMs can generate functional prototypes of DSLs quickly, such as a Piano DSL or Business Rules Language, facilitating rapid iteration.
- Maintenance concerns for DSLs are mitigated by LLMs' ability to generate documentation and tooling, reducing traditional overhead.
- The distinction between external and internal DSLs blurs with flexible host languages like Racket, which allow custom syntax.
- The advent of LLMs may reignite interest in DSL design, shifting the economics of language development.