Concatenative Programming: An Overlooked Paradigm
📜 Abstract
The aim of this article is to bring a relatively obscure and potentially valuable programming practice to the attention of programmers. Concatenative languages, named for their method of combining programs, have largely gone unnoticed by developers, despite their potential for simplifying program manipulation and transformation. Such languages encourage thinking of programs as simple compositions of functions, which could benefit program design and development.
✨ Summary
This paper introduces ‘concatenative programming’ as a paradigmatic approach that remains largely unknown within the mainstream programming community. It presents the central notion of concatenative languages, which build programs through the composition of functions, leveraging a stack-based execution model. The paper compares concatenative programming with more familiar paradigms, especially functional programming, highlighting similarities with combinatory logic and differences with traditional imperative languages. The research mentions historical languages such as Forth and Joy, which embody these principles, and explains the paradigm’s benefits in terms of program manipulation, transformation, and brevity.
Upon conducting a web search, this paper seems to have not left a significant footprint in terms of citations in further research or industry applications. The concept of concatenative programming, as discussed, has primarily remained within niche areas of language development and theory. The paper’s detailed explanation does serve as an introductory point for those exploring advanced language features and concepts in programming paradigms, but no direct citations or widespread adoption stemming from this paper are readily apparent. This limits its visible impact on further mainstream programming development.