4 ms·
The idea of "programming paradigms" is not a useful way to talk about programming language design. > The trouble with programming paradigms is that it is rathe
by z1mm32m4n 9y ago
The idea of "programming paradigms" is not a useful way to talk about programming language design.
> The trouble with programming paradigms is that it is rather difficult to say what one is, or how we know we have a new one. Without precise definitions, nothing precise can be said, and no conclusions can be drawn, either retrospectively or prospectively, about language design.
>
> What, if anything, is a programming paradigm? [0]
Luckily, we've studied programming languages and their design rigorously for decades, and we already have a rich, common language for discussion the design space of programming languages: type theory.
It sounds intimidating: "theory" is often general abstract nonsense that's only useful in academic research, etc., etc. But that's not the case at all. "Type theory" is really just a really useful way to understand individual features of a programming language, and how they compose with one another.
[0]: http://www.cambridgeblog.org/2017/05/what-if-anything-is-a-programming-paradigm/ http://www.cambridgeblog.org/2017/05/what-if-anything-is-a-p...
- DonbunEf7 9y agoType theory is only useful up to a certain point; there are plenty of languages that appear identical from a type-theoretic viewpoint but that have deeper richer interpretations in category- or set-theoretic settings. Check out the actual diagram in the article; it shows off some distinctions that would have been totally washed out if only types were considered interesting.
- qznc 9y agoIf a language has syntax specifically for some paradigm then the paradigm is reflected in the type system. A paradigm is invisible in the type system if it is implemented as library only.
- nine_k 9y agoIsn't this why sometimes entire paradigms can be implemented as libraries in Lisp? Isn't the whole idea of DSLs dependent on this?
- deleted 9y ago[deleted]
- asavinov 9y ago> The idea of "programming paradigms" is not a useful way to talk about programming language design. The term "paradigm" is too general indeed and therefore can be quite ambiguous in many situations because it covers different aspects like the underlying computing model or language design.
- olavk 9y agoThe term is perhaps not very precise, but it is a useful shorthand to describe fundamental conceptual difference between say Basic, Haskell and Prolog.