🤖 AI Summary
This work addresses the semantic gap between programming languages and pure mathematics—particularly algebraic structures—by proposing a novel functional language design methodology grounded in algebraic hierarchy decomposition theory. Methodologically, it introduces the first categorical generalization of the Krohn–Rhodes theorem to semigroupoids and systematically applies this extension to the design of concatenative functional languages. By constructing a family of hierarchical languages endowed with explicit semigroupoid semantics, the approach enables structural modeling and controlled compositional reasoning about computation. The contributions include: (i) a rigorous algebraic foundation for program decomposition, synthesis, and verification; and (ii) a class of prototype programming languages equipped with precise, mathematically grounded semantics. This bridges formal methods and practical language design, advancing their integration in both theoretical and applied settings.
📝 Abstract
Programming languages tend to evolve over time to use more and more concepts from theoretical computer science. Still, there is a gap between programming and pure mathematics. Not all theoretical results have realized their promising applications. The algebraic decomposition of finite state automata (Krohn-Rhodes Theory) constructs an emulating hierarchical structure from simpler components for any computing device. These decompositions provide ways to understand and control computational processes, but so far the applications were limited to theoretical investigations. Here, we study how to apply algebraic decompositions to programming languages. We use recent results on generalizing the algebraic theory to the categorical level (from semigroups to semigroupoids) and work with the special class of concatenative functional programming languages. As a first application of semigroupoid decompositions, we start to design a family of programming languages with an explicit semigroupoid representation.