> Every time you use CSS, you’re doing Aspect-Oriented Programming
Uhm...no. I don't really get how someone could convolute declarative rule-based programming with AOP. Granted, they both deal with modularization (aka separation of concerns), but almost all work in PL does! There is a good reason why the AOSD conference was renamed Modularity.
I loathe the day when AOP comes back in style as a 2nd-run fad.
I agree that CSS is not AOP, but not for the reason you state. From my perspective both CSS and AOP incorporate a declarative rule based programming language. (At least most AOP does).
The difference relevant here between the two is that CSS applies its rules over data, and AOP applies its rules over code. (another big difference ofc is that CSS is a DSL whereas AOP is a general purpose technique)
Not all systems that have referred to themselves as AOP are rule-based...mostly AspectJ and some annotation based systems are (e.g. Spring). Some systems apply rules over execution, but this is just applying it over code in a different phase (think static vs. dynamic type checking).
AOP is not generally described as being limited to rule-based techniques.
Uhm...no. I don't really get how someone could convolute declarative rule-based programming with AOP. Granted, they both deal with modularization (aka separation of concerns), but almost all work in PL does! There is a good reason why the AOSD conference was renamed Modularity.
I loathe the day when AOP comes back in style as a 2nd-run fad.