4 ms·
JavaScript is the final layout system. No declarative language can ever handle every use case. Fortunately I rarely need to resort to JS since grid came out. I
by zarzavat 3y ago
JavaScript is the final layout system. No declarative language can ever handle every use case. Fortunately I rarely need to resort to JS since grid came out.
I’m not sure a constraint based system would do much good as it would sit awkwardly in the middle of grid and JS.
- baryphonic 3y ago> No declarative language can ever handle every use case. Prolog would beg to differ.
- jampekka 3y agoAnd CSS https://accodeing.com/blog/2015/css3-proven-to-be-turing-complete https://accodeing.com/blog/2015/css3-proven-to-be-turing-com...
- baryphonic 3y agoThis research is cool, but I always feel it needs an asterisk. Requiring a click or event or some external clock feels like a cop out. I've seen a similar thing with PowerPoint. It would be a bit like saying a language with iterations but neither first-class functions nor recursion is Turing complete as long as an external stack is provided. Or maybe it allows a stack (or recursion) but requires external intervention for function application. Cool hacking nevertheless.
- wizzwizz4 3y agoProlog has well-defined execution order with side-effects. It's an imperative language masquerading as a declarative one.
- baryphonic 3y agoMiniKanren, then?
- seanclayton 3y agoSo would LISP, Haskell, and Erlang.
- zarzavat 3y agoDeclarative in this context means no recursion or infinite loops. So none of these are declarative.
- PhilipRoman 3y agoWith great power comes poor performance. I can immediately tell when a page uses JS for layouting (or replacing other browser functions like scrolling) as there is a noticable latency increase and the page lags about 200-300 ms behind when resizing the window.