There is a great documentary film about the origins of
Python, which also talks about the ABC license, which
influenced Python syntax (and the ABC project gave G. v. Rossum the job during which he created Python):
https://www.youtube.com/watch?v=GfH4QL4VqJ0
From it I learned a remarkable nugget of computing history: P.J. Plauger, well known as a C language guy (he and I were both on X3J11, the C Language Standards committee), originated the idea of using significant white space as the "signal" to the compiler to indicate statement grouping instead of using begin/end keywords or braces.
Both date to 1987. Aside from the use of whitespace, I don't really see the same influence. HyperTalk loops looked like `repeat with i = 1 to ...`; it didn't have the same concept of iterating over a container directly, even though it could treat strings as containers (not just of "characters", but also space-separated "words" or comma-separated "items").
On the other hand, it had explicit syntax sugar that was specific to the HyperCard environment (thus actions like `ask` and `answer` for simple modal dialog prompts), along with phrasing intended to make things read in English and even avoiding basic operators (thus, `put ... into ...` as an assignment syntax, `the number of` as a length operator, `it` referring to the result of the previous line in some contexts, ...). And of course, the HyperCard environment was event-driven; you could write explicitly callable functions, but your entry point was only ever some GUI interaction, not top-level code or a "main" function.
Perhaps you could say that they both came from a similar philosophy about how to make a programming language "natural-language-like". Which IMO was a big step up from COBOL at least ;)
There is a great documentary film about the origins of Python, which also talks about the ABC license, which influenced Python syntax (and the ABC project gave G. v. Rossum the job during which he created Python): https://www.youtube.com/watch?v=GfH4QL4VqJ0
There's an article at the above site: https://inference-review.com/article/the-origins-of-python
From it I learned a remarkable nugget of computing history: P.J. Plauger, well known as a C language guy (he and I were both on X3J11, the C Language Standards committee), originated the idea of using significant white space as the "signal" to the compiler to indicate statement grouping instead of using begin/end keywords or braces.
Documentary excellent
Meta: this might benefit from a "(1987)" in the title, to clarify it's not a(nother) new language.
Seems to be strongly influenced by HyperTalk... or is it the other way around?
Both date to 1987. Aside from the use of whitespace, I don't really see the same influence. HyperTalk loops looked like `repeat with i = 1 to ...`; it didn't have the same concept of iterating over a container directly, even though it could treat strings as containers (not just of "characters", but also space-separated "words" or comma-separated "items").
On the other hand, it had explicit syntax sugar that was specific to the HyperCard environment (thus actions like `ask` and `answer` for simple modal dialog prompts), along with phrasing intended to make things read in English and even avoiding basic operators (thus, `put ... into ...` as an assignment syntax, `the number of` as a length operator, `it` referring to the result of the previous line in some contexts, ...). And of course, the HyperCard environment was event-driven; you could write explicitly callable functions, but your entry point was only ever some GUI interaction, not top-level code or a "main" function.
Perhaps you could say that they both came from a similar philosophy about how to make a programming language "natural-language-like". Which IMO was a big step up from COBOL at least ;)
Is it still mantained and instalable under current OSes?
https://homepages.cwi.nl/~steven/abc/implementations.html
Installable under current OSes? Looks like a yes. Assuming your OS still provide 32-bit compatibility mode.
Not to be confused with the ABC music notation programming language