3 ms·
I have to credit HyperCard/HyperTalk with giving me my start in programming. Although I started programming in BASIC on a Commodore setup at a pretty young age,
by thaumaturgy 16y ago
I have to credit HyperCard/HyperTalk with giving me my start in programming. Although I started programming in BASIC on a Commodore setup at a pretty young age, it was HyperCard along about the seventh grade that got me thinking about more complex concepts.
When I was a high school freshman about 17 years ago (yuk), I wrote a complicated self-modifying program in HyperCard. I wanted to write a program that could understand human sentences and reply accordingly, and figured that self-modifying code would be the best way to go about that. Of course it never quite succeeded, but the program was stable and could run for a very long time, and gradually improve. Debugging it was a real adventure.
There was a way to add 'external resources' to HyperCard stacks, and then call them from HyperTalk. I can't remember what they were called now, but there were 'functions' and 'procedures' I think. With those, you could get color working, or do really almost anything on a Mac, all from HyperCard.
They were compiled bits of code, so naturally my interest shifted towards making those instead. I wanted to try writing my own, instead of browsing eWorld and the nascent AOL for stuff written by that Peter what's-his-name.
Somewhere I was told that they were written in Pascal, so I got my hands on a copy of THINK Pascal, and started playing with that. It came with a really wonderful hyperlinked library of the MacOS toolbox. From there, to C, to assembly, and on and on.
I still have a real soft spot in my heart for HyperCard. If there were a modern equivalent, it would be perfect for teaching programming to beginners.
EDIT: I have an idea. If anybody happens to have an old pile of HyperTalk laying around, please email me. Address is in my profile.
- pvg 16y agoI can't remember what they were called now XFCN and XCMD for external function and command. Just to round out this quick nostalgia wallow.
- warwick 16y agoI also credit HyperCard for really getting me started. Yeah, I learned a little BASIC, but I could write real programs in HyperCard. It was amazing and breathtaking. HyperCard was to the Mac as Applesoft BASIC was to the Apple II. Since most stacks were interpreted, not compiled, you could just look at the source. HyperTalk is why I learned how to read code. I still remember when I finally realized what HyperCard meant when it said 'too much recursion'. It was like a flashbulb going off in my brain. The modern equivalent, in terms of 'wow, how do I do that?' is obviously Javascript, but HyperTalk was just easier to read and get started with. A minor happy note: iOS autocorrects the capitalization in HyperTalk and HyperCard. That just made me very happy.