3 ms·
The line between languages is very blurry. Almost all languages support meta programming techniques like macros, code generation, decorators, annotations, etc.
by cle 10y ago
The line between languages is very blurry. Almost all languages support meta programming techniques like macros, code generation, decorators, annotations, etc. Advanced libraries are essentially new languages themselves, built upon the shoulders of their hosting language.
I think the distinction with human language is that programming languages don't just describe what is happening, they describe what they themselves are doing. The description is "complected" with the action being described, so changes in one may (and often do) affect the other. I often find this philosophically fascinating...