#nlp #linguistics #poetry #greek

almanaculum

Core types and traits for analysis

2 releases

Uses new Rust 2024

new 0.1.1 Feb 2, 2026
0.1.0 Jan 12, 2026

#2493 in Text processing

AGPL-3.0-only

140KB
2.5K SLoC

Core types and traits for Ancient Greek scansion.

This crate provides the foundational types and abstractions used throughout the scansion system. It is backend-agnostic and contains no ML code.

Architecture

The scansion pipeline follows a machinique (modular assemblage) structure:

Text → Graphemes → Syllables → Feet → Meter
       (char LSTM)  (soft grouping)  (syl LSTM)
                      ↑         ↓
                   [refinement loop]

Unlike strictly hierarchical models, this architecture supports iterative refinement where higher-level structures (feet) can influence lower-level structures (syllables), enabling proper handling of phonological phenomena like synizesis and contextual sound changes.

Each level maintains byte-offset alignment with the original NFC-normalized text.

Invariants

This library maintains strict invariants about byte offsets and text alignment. See the span module for details on how these guarantees are enforced at the type level.

Dependencies

~1.3–5.5MB
~115K SLoC