15 ms·
All hyped up for Hypercard: further adventures with an Apple legacy format
- mmphosis 5y agoThe contents of the file appear to be a chunk file format. https://mmphosis.netlify.app/hypercard/file-format/#chunk https://mmphosis.netlify.app/hypercard/file-format/#chunk
- jrochkind1 5y agoI wonder if it would be possible to get entries for hypercard in "magic byte" databases like https://freedesktop.org/wiki/Software/shared-mime-info/ https://freedesktop.org/wiki/Software/shared-mime-info/ The work is figuring out if it's even possible, and what the bytes would be.
- duskwuff 5y ago> The work is figuring out if it's even possible, and what the bytes would be. Easy. 4 string STAK\xff\xff\xff\xff
- jrochkind1 5y agoOK, I guess now the work is getting it into the magic bytes databases! :)
- Someone 5y agoFTA: For instance, a stack file begins with a stack block (signified by the hexadecimal values, “53 54 41 4B,” which correspond to the ASCII characters, “STAK”), and the file is terminated by a tail block (signified by the ASCII characters, “TAIL”
- duskwuff 5y agoFun fact: the tail block contains the constant string "Nu är det slut…", Swedish for "this is the end".
- rvense 5y agoYou want the file type and creator code, but they're eaten along with the resource fork when you move the file to something that's not HFS, I think.
- Isthatablackgsd 5y agoWow, it has been a while since I play with Hypercard. I remember doing this in my 7th grade science class back in the 90s. I and my classmates have to create something out of Hypercard for the project.
- dbg31415 5y agoHyperCard and Excel were my programming gateway drugs. HyperCard was a mix of like PowerPoint and HTML / JavaScript. Just was so much fun for a kid to play around with. And everything you built had a visual element you could show your friends. I used HyperCard to re-create a MUD I really liked with a visual interface. Sort of like Myst... I had a blast. Certainly wasn't the first person to do that, but all the little coding tricks I had to learn to pull off my vision all came in handy later.
- karmelapple 5y agoWhat was the name? I played plenty of stacks back in the day!
- tombert 5y ago> HyperCard and Excel were my programming gateway drugs. Same! I had played with C++ a bit, but what really made programming logic stick for me was when I made my teacher a gradebook in Excel in 9th grade. His logic for calculating the grades in class was a bit strange, and he was doing it all manually, and my grades were exceptionally bad in that class, so I asked if I could get some extra credit if I could make his grading easier. Surprisingly he said yes [1], so that weekend I really crunched through Excel and pumped out a gradebook that implemented all the rules he was using to grade. It was the first time that "if" and "else" statements really clicked for me, and it got me interested in "real" languages. [1] In hindsight he really shouldn't have. It was sort of an unfair bit of favoritism he was paying to me, but 15 year old me didn't really care.
- beamatronic 5y agoOn a side note, why doesn't anybody MOO/MUD any more?
- duskwuff 5y ago> Sort of like Myst... Guess what Myst was developed in. (HyperCard! With some custom extensions to display color images and video.)
- cstross 5y agoLooks like the LOC folks are also unaware of the existence of HyperCard clones such as SuperCard (a compiler) and subsequently Runtime Revolution (now discontinued): before the company stopped selling its end-product cross-platform HyperCard clone there was a brief open source foray, and some folks appear to still be trying to develop an open source XTalk platform (XTalk is the generalized descendant language of HyperTalk): https://openxtalk.org/forum/ https://openxtalk.org/forum/ https://en.wikipedia.org/wiki/XTalk https://en.wikipedia.org/wiki/XTalk ... They also don't seem to know about how files on an HFS filesystem all have separate resource/data forks: it's a distinctly different paradigm from the familiar a-file-is-a-stream-of-bytes convention of Linux/UNIX/NTFS, and some of their problem seems to arise because they're looking at a "flattened" HFS file that has been squished to fit on a non-HFS filesystem. (Modern macOS makes almost no use of resource forks, so they're vestigial in HFS+; not sure APFS even provides them.)
- GeekyBear 5y agoThe original version of Windows NT Server allowed you to install Services for Macintosh and act as an AppleTalk file server, so support for resource forks was added to NTFS. https://en.wikipedia.org/wiki/NTFS#Alternate_data_stream_(ADS) https://en.wikipedia.org/wiki/NTFS#Alternate_data_stream_(AD...
- p_l 5y agoAlternate Data Streams are pretty interesting, cause I'm pretty sure Services for Macintosh weren't the only users - it's also way more powerful (closest thing on Unix would be Solaris-style extended attributes) and pretty fundamental part of NTFS on-disk structures (in fact, "alternate" data streams differ from main one only by having a name - the default data stream simply has no name, and all data streams are equal in importance)
- retrac 5y agoExtended attributes aren't limited just to Solaris. A variety of *nix file systems have generally supported forks/multiple data streams for some time. FreeBSD has support for arbitrary-sized extended attributes in UFS/ZFS, for example, and implements its access control with them. Linux probably has the most limited form, where the xattr are capped at 4 or 64 kilobytes depending on the underlying FS. I think the big issue for uptake is that it just doesn't fit into the UNIX world. Nothing else is aware of xattrs/forks. The basic file utilities will blindly strip them so you can't just cp or tar such a file, for example. If cp transparently breaks all your files, that's pretty much a show-stopper as anyone who remembers the classic Mac to OS X transition will know.
- JALUK 5y agoThere are still Apps out there that are derivatives of the HyperCard family. LiveCode is based upon Metacard and was the subject of another Hacker News Thread: https://news.ycombinator.com/item?id=24874102 https://news.ycombinator.com/item?id=24874102 There is also SuoerCard: https://supercard.us/index.html https://supercard.us/index.html Which unfortunately is 32 bit only so only works on older variants of modern day OSX.
- tombert 5y agoI generally hate the expression "Ahead of its time", but I think that it definitely applies to Hypercard. I've only played a bit with Hypercard, but it's one of those things that feels almost anachronistic; it's hard to believe that something released in 1987 would be as trivial to use and be productive with as Hypercard.
- jandrese 5y agoIt's a language that is object oriented without having to teach the programmers any of the theory. The language has a considerable amount of syntactic sugar but makes for some pretty incredible looking code. on mouseUp put "100,100" into pos repeat with x = 1 to the number of card buttons set the location of card button x to pos add 15 to item 1 of pos end repeat end mouseUp
- tombert 5y agoThat's really cool! Reminds me of some of the crazy stuff you can do with the Lua metatables to get really pretty code (if you are careful).
- kragen 5y agoAlthough I hate to recommend proprietary software, you might be interested in looking at Inform 7, designed for authoring interactive fiction; https://rosettacode.org/wiki/FizzBuzz#Inform_7 https://rosettacode.org/wiki/FizzBuzz#Inform_7 has an example: The space is a room. An item is a kind of thing. In the space are 100 items. To say the name: let the count be the number of items carried by the player; say "[if the count is the count to the nearest 15]fizzbuzz.[otherwise if the count is the count to the nearest 3]fizz.[otherwise if the count is the count to the nearest 5]buzz.[otherwise][the count in words].". To count: if an item is in the space begin; let the next one be a random item in the space; silently try taking the next one; say "[the name]" in sentence case; count; end the story; end if. When play begins: count. Use no scoring.
- phaedryx 5y agoOh man, Hypercard and ResEdit were my gateway drugs. I don't know of anything equivalent nowadays. The pinnacle for me was getting it to run my teacher's laser disc player.
- webwielder2 5y agoI've just learned that the would be de facto successor to HyperCard, SuperCard, is still being maintained/updated https://supercard.us https://supercard.us
- rchaud 5y agoAccording to the product page, it's not compatible with the last 3 Mac OS releases. That doesn't sound like it's being maintained. https://supercard.us/purchase.html https://supercard.us/purchase.html
- lr4444lr 5y agoBill Atkinson allegedly came up with the idea for HyperCard during an LSD trip Makes me pause to think what innovations we missed out on for loss of creative inspiration from all of our anti-drug policies.
- jazzyjackson 5y agothe book “what the dormouse said” is an amazing retelling of this era detailing who tripped when and what they went on to invent IIRC photolithography and CPU architecture came out of this subculture, berkeley and harvard both had sanctioned LSD experimentation that grad students were happy to participate in, in the “center for advanced studies” it’s been a few years since I read it so my memory is hazy
- cmg 5y agoYour comment made me go search for a short article that I'd seen in the past [0] with a text version at [1]. "Use of LSD-25 for Computer Programming" "While stimulated by the LSD I was able to get the entire system wholly in my mind at the same time. I spent some time mentally visualizing various aspects of the compiler, the language and the processing which would take place. I did discover three or four design inconsistencies while being stimulated by the effect of the LSD, and I made notes for later checking." [0] https://maps.org/news-letters/v18n1/v18n1-MAPS_24.pdf https://maps.org/news-letters/v18n1/v18n1-MAPS_24.pdf [1] https://slidelegend.com/use-of-lsd-25-for-computer-programming_59cc52ad1723dd9ca4243d23.html https://slidelegend.com/use-of-lsd-25-for-computer-programmi...
- rightbyte 5y agoHe probably just felt like getting the whole system in his head? Shouldn't LSD trivially make people score higher on IQ test otherwise.
- jazzyjackson 5y agomaybe “felt like” is the important part? just spit-balling here as a non-lsd-user, but I do have the experience of “writers block” when I feel a program I wrote is too complex, I feel like it would be better to scrap it and start over perhaps the effect of LSD is more anti-anxiety of approaching the problem despite its complexity, not improving your IQ, but lowering your inhibitions that otherwise prevent you from problem solving (I am on the side of things that drugs in general turn parts of the brain off, rather than somehow making you superhuman, but maybe there are parts of the brain we could do without from time to time)
- gnufx 5y agoNot relevant to the article, but while people are talking about HyperCard and derivatives generally, it inspired HyperNeWS, which I remember fondly, though it wasn't free software. Perhaps that kibozes Don Hopkins: http://www.art.net/studios/Hackers/Hopkins/Don/hyperlook/index.htm http://www.art.net/studios/Hackers/Hopkins/Don/hyperlook/ind...
- ignoranceprior 5y agoLink should end with '.html', not '.htm': http://www.art.net/studios/Hackers/Hopkins/Don/hyperlook/index.html http://www.art.net/studios/Hackers/Hopkins/Don/hyperlook/ind...
- anthk 5y ago>Perhaps that kibozes Don Hopkins Ask him, he is on HN regularly.
- gnufx 5y agoThat's https://en.wikipedia.org/wiki/Kibo_(Usenet) https://en.wikipedia.org/wiki/Kibo_(Usenet) for non-Usenetters. (Too bad what happened to Usenet.)
- anthk 5y agoUsenet is still alive on some tech newsgroups, at least on the English speaking side. On the Spanish hierarchy (es.*), here there is nothing more than a ghost town.
- macintux 5y agoLast year I stumbled upon a promotional card deck from Apple and took some quick photos. I've just uploaded them: https://ibb.co/album/y4t3vT https://ibb.co/album/y4t3vT