6 ms·
Interesting perspectives on a variety of languages, at first. Then when he says that XSLT is the best language I was thinking that we are very differently mind
by nickserv 7y ago
Interesting perspectives on a variety of languages, at first.
Then when he says that XSLT is the best language I was thinking that we are very differently minded. So I suppose it makes sense that the Tailspin language is completely incomprehensible to me.
- gmueckl 7y agoFor me it was the blatant rejection of C++ without any further discussion. C++ has a lot of baggage from C, but it also sports powerful metaprogramming, even though that is flawed (the necessity of SFINAE speaks volumes...). There are newer languages that improve on that a lot. The author doesn't even care to mention them by name. To me, it is pretty clear that the author has a very specific world view, probably defined by the set of problems he's solving. I can't quite tell what that perspective is. But this makes his claims a lot less universal than he admits.
- kick 7y agoYou just acknowledged that C++ was not the perfect programming language in your (rather biased for it) comment.
- gmueckl 7y agoThat is not what I wrote. Dismissing C++ summarily as this article does skips over a few points that are worth talking about. Generics and templates are not discussed. Memory management approaches of different languages are not discussed. The world of programming languages is huge. The author seems to ignore most of it, yet claims to search for a "perfect language" while clinging to the nonsensical illusion that a single languagecan be perfect forall use cases.
- mbrock 7y agoThe built-in ability to pattern match on data nested deeply within the application state (or the XML document) is radically powerful. Haskell, for example, has nothing like this. Eve is a really interesting language where you define global pattern matches, using datalog-style unification rather than XPath, and these "templates" can result in state changes. So for example you can trivially define global invariants over the entire state, kind of like defining a database integrity constraint but for your program's state. As an aside, I'm recently feeling disillusioned with Haskell—after loving it since 2004—as any kind of ultimate or next-level general purpose language, precisely because of the lack of this dimension. Dealing with relational data in Haskell is quite tedious. Even writing multipass compilers in Haskell is not very pleasant.
- tome 7y ago> The built-in ability to pattern match on data nested > deeply within the application state (or the XML document) > is radically powerful. Haskell, for example, has nothing > like this. Now I'm puzzled because I know that you know about lenses, so you must mean something different by "pattern match on data nested deeply" and I'm wondering what. Could you expand?
- Terretta 7y agoYeah, at that one I started trying to decide if the whole thing was meta trolling: ”XSLT is my favourite language of all time and it made all sorts of lights go on in my head. This is what sparked my analysis of programming languages, I wanted to program generally in an XSLT-like style, whatever that really means, and more. Of course, all data should really be in XML at all times, but that got killed with the whole XMLSchema nonsense...”
- hyperpallium 7y agoXSLT syntax (x < 10) would be its worst problem, except for its other problems. But seriously, XSLT's recursive templates are a nice idea for transformation, and the homoiconicism enables transformation of XSLT stylesheets theselves.
- ebruchez 7y agoYou can write `x lt 10` since XSLT 2.0 in 2007.
- Mikhail_Edoshin 7y agoXSLT 2.0 has fewer implementations.
- pjmlp 7y agoEnough to be usable. I don't remember when it was the last time I needed to care about not using it.
- Mikhail_Edoshin 7y agoXSLT is actually a very good language. It's a declarative general-purpose tree transformer, there's very few tools like that. It's a pity that the general prejudice against XML obscures what really is good tech.