3 ms·
So CSS3 is both Turing complete and so low-level that most projects of significant size use a preprocessor like LESS, SASS, etc to write their CSS3 for them.
by haberman 11y ago
So CSS3 is both Turing complete and so low-level that most projects of significant size use a preprocessor like LESS, SASS, etc to write their CSS3 for them.
- Spivak 11y agoWhat's your point? The same is true for x86 and you don't see many people writing that by hand.
- TeMPOraL 11y agoIt means that JS-as-web-Assembler just got itself a competitor.
- astazangasta 11y agoBoo! Boo to this comment and the horrors it may unleash.
- lucozade 11y agoAlthough as another comment pointed out, as it's Turing complete, you could write an x86 emulator in CSS. So you could write your style sheets in x86 if you were so inclined. Now there's a thought that doesn't bear too much thinking about...
- haberman 11y agox86 is by design an imperative abstraction. It makes sense for it to be Turing-complete. Very few imperative abstractions are not (the only one that comes to mind is DTrace's D Language). CSS is primarily a declarative abstraction that grew complex enough to be Turing-complete. You would hope that by paying that complexity you would at least get an abstraction that was convenient enough to write by hand. But CSS has neither the static-analysis benefits of a non-Turing-complete language nor the convenience benefits of a fully Turing-complete language.