I've always tried to write documents in a simple format that's easy to translate to newer formats, and minimizes noise and scaffolding and boilerplate.
When we were developing the HyperTIES hypermedia browser in 1988 [1] at the UMD HCIL, we considered using SGML as the markup language, but decided against it, because we were focusing on designing a system that made it easy for normal people to author documents, and working with SGML took a lot of tooling at the time. (It was great for publishing Boeing's 747 reference manual, but not for publishing poetry and cat pictures.) So we designed our own markup language. [2]
[1] Designing to Facilitate Browsing: A Look Back at the Hyperties Workstation Browser: http://www.donhopkins.com/drupal/node/102
[2] HyperTIES documentation directory: http://donhopkins.com/home/ties/doc/ typical document files: http://donhopkins.com/home/ties/doc/whyanew.st0 http://donhopkins.com/home/ties/doc/formatcommand.st0
It's not which scripting language you have, it's that you have a scripting language at all that's important. HyperTIES was actually implemented in C, plus 3 different scripting languages: FORTH for the markup language interpreter and formatter [3], PostScript for the user interface and display driver and embedded applets [4], and Emacs MockLisp for the authoring tool [5].
[3] HyperTIES Forth code: http://donhopkins.com/home/ties/doc/formatter.st0 http://donhopkins.com/home/ties/fmt.f
[4] HyperTIES PostScript code: http://donhopkins.com/home/ties/doc/tnformat.st0 http://donhopkins.com/home/ties/fmt.ps http://donhopkins.com/home/ties/target.ps
[5] HyperTIES MockLisp code: http://donhopkins.com/home/ties/yahtittie.ml
When you try to design something from the start without a scripting language, like a hypermedia browser or authoring tool, or even a window system or user interface toolkit, you end up getting fucked by Greenspun's Tenth Rule [6]
[6] Greenspun's Tenth Rule: Any sufficiently complicated C or Fortran program contains an ad-hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp. https://en.wikipedia.org/wiki/Greenspun%27s_tenth_rule
But when you start from day one with a scripting language, you can relegate all the flexible scripty stuff to that language, and don't have to implement a bunch of incoherent lobotomized almost-but-not-quite-turing-complete kludgy mechanisms (like using X Resources for event handler bindings and state machines, or the abomination that is XSLT, etc).
TCL/Tk really hit the nail on the head in that respect. TCL isn't a great language design (although it does have its virtues: clean simple C API, excellent for string processing, and a well written implementation of a mediocre language design), but its ubiquitous presence made the design of the Tk user interface toolkit MUCH simpler yet MUCH more extensible, by orders of magnitude compared to all existing X11 toolkits of the time, since it can just seamlessly call back into TCL with strings as event handlers and data, and there is no need for any of the ridiculous useless brittle contraptions that the X Toolkit Intrinsics tried to provide.
The web was pretty crippled before JavaScript and DHTML came along. Before there was client side JavaScript, there were server side scripting languages, like Perl, PHP, Python, Frontier (Radio Userland) [7], HyperTalk, etc.
Frontier / Manilla / Radio Userland was a programmable authoring tool, content management system, web server, with a build-in scripting language (UserTalk, integrated with an outliner and object database). That scriptability enabled Dave Winer and others to rapidly prototype and pioneer technologies such as blogging, RSS, podcasting, XML/RPC, SOAP, OPML, serving dynamic web sites and services, exporting static web sites and content, etc.
[7] Frontier: https://en.wikipedia.org/wiki/UserLand_Software#Frontier Manilla: https://en.wikipedia.org/wiki/UserLand_Software#Manila Radio Userland: https://en.wikipedia.org/wiki/Radio_UserLand
One of the coolest early applications of server side scripting was integrating HyperCard with MacHTTP/WebStar, such that you could publish live interactive HyperCard stacks on the web! Since it was based on good old HyperCard, it was one of the first scriptable web authoring tools that normal people and even children could actually use! [8]
[8] MacHTTP / WebStar from StarNine by Chuck Shotton, and LiveCard HyperCard stack publisher: https://news.ycombinator.com/item?id=7865263 CGI and AppleScript: http://www.drdobbs.com/web-development/cgi-and-applescript/1...
That inspired me to do some similar stuff with another ill-fated scripting language, Kaleida ScriptX. [9]
[9] ScriptX and the World Wide Web: "Link Globally, Interact Locally": http://www.art.net/~hopkins/Don/lang/scriptx/scriptx-www.htm... Demo by Don Hopkins of DreamScape on Kaleida Labs ScriptX presented at the 1995 Apple World Wide Developer Conference. https://www.youtube.com/watch?v=5NytloOy7WM Kaleida ScriptX: https://en.wikipedia.org/wiki/Kaleida_Labs#ScriptX