4 ms·
Scala had XML literals as part of the language! Apparently Philip Wadler was the person who told them needed it, because the future was XML. ( Walder is big H
by adamgordonbell 4y ago
Scala had XML literals as part of the language!
Apparently Philip Wadler was the person who told them needed it, because the future was XML.
( Walder is big Haskell/PL person)
- tuukkah 4y agoWas it far from JSX?
- chimeracoder 4y agoIt was almost literally JSX (except with Scala syntax instead of Javascript, of course). An XML literal in Scala would have been: // XML literals (to be dropped) val mails1 = for (from, to, heading, body) <- todoList yield <message> <from>{from}</from><to>{to}</to> <heading>{heading}</heading><body>{body}</body> </message> println(mails1) This was replaced with "XML string interpolation", which // XML string interpolation val mails2 = for (from, to, heading, body) <- todoList yield xml""" <message> <from>${from}</from><to>${to}</to> <heading>${heading}</heading><body>${body}</body> </message>""" println(mails2)
- bryik 4y agoThat's surprising! Wasn't it Philip Wadler who said "The essence of XML is this: the problem it solves is not hard, and it does not solve the problem well." http://harmful.cat-v.org/software/xml/ http://harmful.cat-v.org/software/xml/
- orthoxerox 4y agoVB.NET still has them. I remember doing a project with an XML database (ugh) back in college when the version with the literals was released. I was ecstatic.
- tracker1 4y agoActionScript 3 as well as the E4X support in Mozilla's Browser+JS/XUL engine for a while (removed now afaik). Around that time it was pretty nice passing around XML, as I was forced to work with VB.Net which also had an XML literal syntax on the backend and Flash/AS3 on the UI. I had built a POC with E4X that was VERY similar to React/Redux over a decade before React, but the other browser vendors didn't have it... At the time IE and Chrome were shifting towards JSON.
- taeric 4y agoThe irony, to me, is how it is viewed as a bit of a mistake that they had XML in Scala. Hard to square that with how instrumental JSX was in getting some of the modern JavaScript frameworks as far as it has.