Monday, October 24, 2011

Toolstrapping is everywhere - can you see it?







John Shutt said...

Re plain text, I note that everything today is toolstrapped. The first computer I learned on (using a vintage BASIC) was a PDP-8E minicomputer; it had toggle switches and lights across the front, so one could, if one chose, directly access the binary contents of the computer. Anything above that level is toolstrapped.

But I maintain plain text, being a sequence of symbols, is inherently simple, and therefore advantageous.

In a related vein, I recall an interview some years ago (sometime in the 80's, I'll guess) with someone representing the Indian programming community. The US interviewer asked about the Indian software industry's competitiveness in the future, obviously expecting a comparison with the US software industry. The reply was that India has a fundamental programming advantage over China because India has a strong historical tradition of using an alphabet.

Manuel Simoni said...

"plain text, being a sequence of symbols" made something click for me. This description shows the appeal of plain text, but also its hard limits: contrast a "sequence of (non-composable) symbols" with Alan Kay's "(encapsulated, abstract, self-displaying) turtles all the way down".

John Shutt said...

Which, in turn, made me think of this :-).

Manuel Simoni said...

Oh! This reminded me of Why the "currency" in the the meta-currency project?: we change our focus from the information tokens, to the flows themselves. We begin to actually be able to see these flows [...] and how the information tokens just help us interact with the flows.

Mathnerd314 said...

But what is a browser? A program designed to turn sequences of plain text symbols into a structured page.

And how do people write web pages? Sure, there are some WYSIWYG editors, but the vast majority of sites are written as more plain text.

The web is not the answer to your question, although it is the answer to some other important questions.

dmbarbour said...

Toolstrapping is the whole reason I got into language design. I needed a language to build my vision. I tried Scheme, but it was counterproductive with respect to distribution, concurrency, and security.

John Shutt said...

Come to think, toolstrapping is to some extent why I got into language design, too. I have in mind a software system or two I'd like to develop, at least in prototype, myself (as the most efficient way to explain what I have in mind), which are simply too vast for one human being. Unless, of course, that one human being is using a programming language with immense abstractive power.