Hypercard Simulator

A place to discuss any and all xTalk implementations, not just LC LCC Forks, but HyperCard, SuperCard, MetaCard, Gain Momentum, Oracle MediaTalk, OpenXION, etc.
Forum rules
Please limit any bashing/harping on any commercial interests to a minimum, thanks!
dandandandan
Posts: 8
Joined: Thu May 05, 2022 9:02 pm
Contact:

Hypercard Simulator

Post by dandandandan »

This implementation shows HyperCard's object model and similar edit controls reimplemented as a JavaScript app.

https://hypercardsimulator.com/
User avatar
OpenXTalkPaul
Posts: 1486
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Hypercard Simulator

Post by OpenXTalkPaul »

Hey Nice! I do like me some JS based xTalk interpreters!
Thanks for sharing and welcome to the OXT forum!
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

Serious question: what are the challenges in learning JavaScript?
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

I would suppose the challenges are no more and no less than learning any programming language, like learning a foreign language, it all comes down to motivation and the time to do it.

From a personal point of view, as a person who makes 95% of their bread and cheese from non-programming activities, and 90% of their programming activities are to provide support for that, I have neither the time nor the motivation to learn a new programming language; especially to the semi-fluent level I have achieved in LC/xTALK.

There is also the question of a bridge between set ups like SCRATCH and ENTRY and the likes of Python, C#, and the like: a space that xTalk can and should be filling.

And you, even if no one else, know full well who I hold responsible for the fact that xTalk is NOT that bridge beyond a few schools in Scotland (and despite claims only one school ever gets mentioned).

A fully portable (and I mean 'fully', not 'nearly') version of xTalk (standalones would not be needed on all platforms, c.f. Haiku OS) would be a big start in any sort of push to get it adopted for education.

What xTalk has, and the vast majority of other programming language do not, is a WYSIWYG, instant karma, rolls as it punches, interface, which gets children 'going' in a way a page of Python, C#, WTF just does not.
https://richmondmathewson.owlstown.net/
User avatar
OpenXTalkPaul
Posts: 1486
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Hypercard Simulator

Post by OpenXTalkPaul »

FourthWorld wrote: Wed May 18, 2022 8:08 pm Serious question: what are the challenges in learning JavaScript?
I can only answer for myself...
The biggest challenge for me is mostly that I''m not fond of JS, in particular I don't like the dot.syntax.stuff or the C style symbols. For example, I understand what '==' does, I just don't like the way it reads.

Until fairly recently JS was mostly only used for execution within a web page with no or limited access to operating system APIs. This was mostly a deal-breaker for me. Nowadays there's a few capable JS based app engines such as Electron, and some access to OS APIs/hardware (Node.js / React-Native).

I've learned some JS over the years, but I'm still not a fan.
But I am a fan boy for xTalk(s).
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

Serious question: what are the challenges in learning JavaScript?
I have mucked around with Python recently, and the challenge to me was to get LiveCode "out of my head"
while I tried to learn it.

Recently got myself in trouble trying to explain something about Latin grammar
(something I have not bothered with much since I was 13: 47 years ago) because
both Bulgarian and Sanskrit grammar were getting in the way.

Recently mucking around on one of my BBC Micro computers and forgetting that conditional loops
are written in a different way in BBC BASIC than in LiveCode: then, having got that going, went back to LiveCode
and wrote a BBC BASIC loop inside an LC object and, for a split second, wondered why it didn't work.

Same problem seen in my Summer classes: not with the children, but the interns from the University who
have never seen a RAD IDE, and have heads full of C#, VBscript, Java and so forth. Had 0ne 22 year old
young woman crying because the 9 year olds were doing very, very simple stuff, and she could not
understand it: mainly because she had learnt other programming languages by rote rather than by thinking
her way through them.
https://richmondmathewson.owlstown.net/
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

Had another look at this simulator; and, as far as HyperCard went [not very far compared with LC/OXT], as one cannot export
one's work as HyperCard stacks 7/or standalones for operating systems, it is fun, but really only that.
https://richmondmathewson.owlstown.net/
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

IIRC HC only introduced standalones with v2.0.

Prior to that HC was bundled with every Mac, so we didn't need standalones, we could just share the stack files and knew every Mac user could run them.

Kinda like web apps today.
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

Indeed, but I came late to the party with Mac OS 7 and HC 2.0.

And, in the context of this simulator, one cannot, for the sake of argument, use it to develop a HyperCard stack on Windows and then download one's work as an HC stack to run on Mac OS 9.

As this is now HC's future, I realise this is a bit gratuitous, and I, at least, can always work with HC, should I want to on my PPC Mac Mini running Mac OS 10.4 & 'Classic'.
https://richmondmathewson.owlstown.net/
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

Apple killed HyperCard more than a quarter century ago.

Any web simulation in 2023 is only that, a simulation.

I miss greeting the ice man, but I enjoy a freon refrigerator.
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

I miss greeting the ice man, but I enjoy a freon refrigerator.
Indeed, indeed: but your freon fridge is leaking freon and mucking up your ecosystem.

AND, to extend the metaphor slightly further: my freon fridge has a freezer compartment, [supposedly] never
needs defrosting and [supposedly] should not grow mould on the back, inner wall. But some of the claims in
the booklet that came with the fridge turn out to be wishful thinking and/or hyperbole: but because of those
claims my wife and I feel slightly dissatisfied. Had the fridge company not made those claims we would have
defrosted the fridge and wiped off the mould once every 2 weeks without feeling cheated.
https://richmondmathewson.owlstown.net/
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

Yes, no thing is wholly a different thing, so all metaphors are imperfect.

Nonetheless, HyperCard's still dead, for so long that no emulated necromancy will make it a practical solution for the 21st century.
dandandandan
Posts: 8
Joined: Thu May 05, 2022 9:02 pm
Contact:

Re: Hypercard Simulator

Post by dandandandan »

richmond62 wrote: Wed Jun 07, 2023 9:01 pm Had another look at this simulator; and, as far as HyperCard went [not very far compared with LC/OXT], as one cannot export
one's work as HyperCard stacks 7/or standalones for operating systems, it is fun, but really only that.
Hi, how are you doing?

The simulator is actually capable of exporting an entire stack as a HTML <stack-part> element which will work on any modern browser, using "Export HTML" in the menu. You can take the file and run it locally, or embed it on your own site very easily. Chrome, Mobile Safari, and regular Safari in the upcoming 2023 update, also can make icon-style web apps integrated with the OS, kind of like Electron but without overhead.

As for exporting a real HC stack file, well, I don't know if anyone's ever produced a proof of concept for that, like creating a card with a button and HC loading it. But the file format is pretty well documented by now.

Dan
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

The simulator is actually capable of exporting an entire stack as a HTML <stack-part> element which will work on any modern browser
Quite possibly, but it is still going to look like a Hypercard stack stuck in about 1995: black and white bitmaps and all: so, while it may be
a jolly hayride for old farts like me who have happy memories of HyperCard when we still had pubic hairs, it really serves no other obvious purpose nowadays.
https://richmondmathewson.owlstown.net/
User avatar
OpenXTalkPaul
Posts: 1486
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Hypercard Simulator

Post by OpenXTalkPaul »

FourthWorld wrote: Thu Jun 08, 2023 8:22 am Apple killed HyperCard more than a quarter century ago.

Any web simulation in 2023 is only that, a simulation.

I miss greeting the ice man, but I enjoy a freon refrigerator.
I really didn't give this the proper attention it deserves the first time I looked at it.

HyperSimulator IS indeed more than a simulation, it's HyperCard as a 'virtual machine', much like some SmallTalk VMs, and this is one that can convert basic HyperCard stacks into functional standalone 'web stacks', and it even supports some capabilities of XCMD/XFCN like AddColor that came with later versions of HyperCard. This 'VM' has it's own SimulatorScript that sits at a message-path-level above its Home Stack, this xTalk can directly call JavaScripts and so xTalk syntax may be implemented via Web APIs using this sim script and freely mixing xTalk and JS! It is really brilliant IMO.

If you look at the Sim's SimScript you can see that commands like 'Speak' are 'implemented' at that level using JavaScript calls to WebSpeech API, which is much like how I 'implemented' it in the OpenXTalk Web-Playground Stack, although there's an extra hoops to jump-though with our 'Emscripten' engine. HCSim was obviously built from the ground up to run inside s Web Browser as its 'Engine'.

The HCSim author, 'Hyper Variety... LLC', has another app called 'HyperHello' that takes things beyond being a HyperCard simulation. There is desktop build of this HyperHello or as web app here: https://hyperhello.com

The only problem is that I can't seem to find the source for 'the engine' (named simply Script.js, is this the language grammar interpreter output js from ... ? ) or most importantly a licensing declaration, and so I'm not certain if its GPLv3 or what, but I'd very much like to contribute to extending this code base. I imagine it's fairly liberal as it lets you export standalone html with it's 'engine' embedded, but can't be sure, and 'doc' does not really go into it, no mention of 'MIT', nor GPL/LGPL, etc. that I could see, there is however the typical disclaimers about guarantee of quality (lack thereof) or whatever.
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

OpenXTalkPaul wrote: Tue Dec 05, 2023 4:39 pm
FourthWorld wrote: Thu Jun 08, 2023 8:22 am Apple killed HyperCard more than a quarter century ago.

Any web simulation in 2023 is only that, a simulation.

I miss greeting the ice man, but I enjoy a freon refrigerator.
I really didn't give this the proper attention it deserves the first time I looked at it.

HyperSimulator IS indeed more than a simulation, it's HyperCard as a 'virtual machine', much like some SmallTalk VMs, and this is one that can convert basic HyperCard stacks into functional standalone 'web stacks', and it even supports some capabilities of XCMD/XFCN like AddColor that came with later versions of HyperCard. This 'VM' has it's own SimulatorScript that sits at a message-path-level above its Home Stack, this xTalk can directly call JavaScripts and so xTalk syntax may be implemented via Web APIs using this sim script and freely mixing xTalk and JS! It is really brilliant IMO.
My comment wasn't a statement on the quality of HyperSimulator. It was a statement on the relevance of a HyperCard simulator in 2023.

HyperCard itself was only half of what made it important as the most popular hypermedia authoring system before the web.

The other half was being preinstalled on every computer from a major OS vendor.
User avatar
OpenXTalkPaul
Posts: 1486
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Hypercard Simulator

Post by OpenXTalkPaul »

I'm really enjoying playing around with this HyperSim in Browsers.
It feels a bit like...and has features a bit like 'Decker' , but it does more color and has an HTML5 'native' media player, and has palette command, etc., it's a real HC 2.41 xTalk Compatibility VM, sans the underlying OS (although that is still as accessible as it would be to any web app in a Browser / from JS, so it's inherently sandboxed), and no resource fork. Though the import function does appear to read in some resources like a 'SND ' res, it will even look inside .dsk .img Mac floppy disk images for stacks.

I think it could be interesting to 'wire' this xTalk interpreter up to some Javascript UI widget toolkit, something like Morphic.js (a JS implementation of the Smalltalk UI kit called Morphic) could be neat.
User avatar
OpenXTalkPaul
Posts: 1486
Joined: Sat Sep 11, 2021 4:19 pm
Contact:

Re: Hypercard Simulator

Post by OpenXTalkPaul »

FourthWorld wrote: Wed Dec 06, 2023 2:14 am
OpenXTalkPaul wrote: Tue Dec 05, 2023 4:39 pm
FourthWorld wrote: Thu Jun 08, 2023 8:22 am Apple killed HyperCard more than a quarter century ago.

Any web simulation in 2023 is only that, a simulation.

I miss greeting the ice man, but I enjoy a freon refrigerator.
I really didn't give this the proper attention it deserves the first time I looked at it.

HyperSimulator IS indeed more than a simulation, it's HyperCard as a 'virtual machine', much like some SmallTalk VMs, and this is one that can convert basic HyperCard stacks into functional standalone 'web stacks', and it even supports some capabilities of XCMD/XFCN like AddColor that came with later versions of HyperCard. This 'VM' has it's own SimulatorScript that sits at a message-path-level above its Home Stack, this xTalk can directly call JavaScripts and so xTalk syntax may be implemented via Web APIs using this sim script and freely mixing xTalk and JS! It is really brilliant IMO.
My comment wasn't a statement on the quality of HyperSimulator. It was a statement on the relevance of a HyperCard simulator in 2023.

HyperCard itself was only half of what made it important as the most popular hypermedia authoring system before the web.

The other half was being preinstalled on every computer from a major OS vendor.
It wasn't really about your comment, I actually just came back to this thread because I wanted to talk about HyperSIm again, having just given it a little quality time that I hadn't really done before, and with a different mindset of thinking of 'app engines' as virtual machines of sorts.

But I don't think Apple ever had anymore then about 15% of the market back then and so I maybe wouldn't give 'free / preinstalled' as much as 50% of the credit. I mean don't see anyone talking about still being a big fan of 'Mac Write' in 2023. HC truly was software as a work of art and way ahead of its time (maybe even too far ahead).

The web has still yet to fulfilled the HC/HyperMedia dream for me, HTML5 + WebASM maybe bringing it a bit closer.
Things like Lively and Jupiter Notebooks seem more like that famous 60s 'hyper' demo video to me then what most web apps are (those Squeak/Smalltalk things also remind me of what 'OpenDOC' was meant to be).

I still don't really know what your comment meant (will have to reread this thread), something like this thing, this xTalk environment as web app 'vm', running on top of a browser as its 'platform' (the systemVersion returns '6.08' lol), is as relevant (or at least could be) as any XaavviiNoLowCodesCreator or any other in-browser web app building tool. A web app, sandboxed like it inherently is in a browser, is probably the only way that you can easily get some real xTalk stack editing going on iPadOS due to Apple restrictions, no jailbreak or other-side-loading required.

Building an IDE as Web App makes complete sense IF you wanted to cut out costs (time and/or money) of developing for a bunch of different OS'es all with different code-signing sorts of hoops to jump through, and IF you aren't all that interested in having more low-level access to System API resources, the host computer's hardware/resources. That doesn't initially work OOB for me or a few of my interests (like MIDI), but maybe IF the web app was running in something like an Electron 'native' app with access to Node.js, React Native, etc. JS libraries, then it could have the cake AND eat it too? And really some of these things, like Text-To-Speech, Joystick Input, Recording, etc. an HTML5-'native' engine has a those covered via Web APIs, as evidenced by HyperSim using them to implement some syntax.
FourthWorld
Posts: 280
Joined: Sat Sep 11, 2021 4:37 pm
Contact:

Re: Hypercard Simulator

Post by FourthWorld »

OpenXTalkPaul wrote: Wed Dec 06, 2023 3:12 am ...I wanted to talk about HyperSIm again, having just given it a little quality time that I hadn't really done before, and with a different mindset of thinking of 'app engines' as virtual machines of sorts.
Dan does good work. That one appears to be the lightest and most portable web implementation I've seen yet.
But I don't think Apple ever had anymore then about 15% of the market back then and so I maybe wouldn't give 'free / preinstalled' as much as 50% of the credit.
What percentage of xTalk fans never used a Mac?

It's not zero. But it's not that much above zero.
I mean don't see anyone talking about still being a big fan of 'Mac Write' in 2023.
Of the estimated 27 million software developers around the world today, what percentage would identify as HC fans?

Would the percentage who would even know what it is be higher than 5%?

A lot's happened in 36 years.
The web has still yet to fulfilled the HC/HyperMedia dream for me, HTML5 + WebASM maybe bringing it a bit closer.
Things like Lively and Jupiter Notebooks seem more like that famous 60s 'hyper' demo video to me then what most web apps are (those Squeak/Smalltalk things also remind me of what 'OpenDOC' was meant to be).
SC/MC/LC/OXT often reminds me of OpenDoc. One system, countless objects, interoperating with one another.

But Steve killed HC and OpenDoc at roughly the same time, and for similar reasons. I disagree with that choice, but I can't dispute his business results.

I still don't really know what your comment meant (will have to reread this thread), something like this thing, this xTalk environment as web app 'vm', running on top of a browser as its 'platform' (the systemVersion returns '6.08' lol), is as relevant (or at least could be) as any XaavviiNoLowCodesCreator or any other in-browser web app building tool. A web app, sandboxed like it inherently is in a browser, is probably the only way that you can easily get some real xTalk stack editing going on iPadOS due to Apple restrictions, no jailbreak or other-side-loading required.
One afternoon over tea a couple years ago I had an epiphany about how HyperTalk was a product of its moment in 1987, and how had it been born just ten years later the same people with the same inspiration would have created a language that looks more like JavaScript.

If it's of interest I may write it up for LiveCodeJournal.com when I get a chance.

I like our family of languages. And I observe that most others prefer something else.
Building an IDE as Web App makes complete sense IF you wanted to cut out costs (time and/or money) of developing for a bunch of different OS'es all with different code-signing sorts of hoops to jump through, and IF you aren't all that interested in having more low-level access to System API resources, the host computer's hardware/resources.
Don't get me started. LC has one strength: cross-platform desktop deployment. On mobile, the mix of good and bad makes it at best an also-ran for everyone except those who only know xTalk. On the web the proposition of interpreting scripts through another script interpreter is so fraught with so many challenges on top of trying to fit 30 years of engineering into the confined space of an HTML canvas object that I just can't start on that without eating my hands. And I need those for typing, so I'll pass. Eight years after a half million in crowdfunding later, we are where we are with that. We see it.

Suffice to say that when I company is small, has one unbeatable advantage, faces competition outside that one advantage by firms backed with $100 million Series A rounds, with almost no competition in the one area of advantage where nearly half of all computing time is spent, priorities seem clearer to me than apparently to those with decision-making authority.
User avatar
richmond62
Posts: 2621
Joined: Sun Sep 12, 2021 11:03 am
Location: Bulgaria
Contact:

Re: Hypercard Simulator

Post by richmond62 »

Eight years after a half million in crowdfunding later
It would be interesting to know how that half a million was spent . . .

And, however it was spent: I can make what I swear is the tastiest cocktail in the world and spend buckets of money, and put hours and hours into its construction, but if very few people (except those who drank at my godfather's bar) are prepared to taste it, it may end up either going stale in the glass or chucked down the drain, regardless of the fact that someone else's cocktail is inferior, but has grabbed the popular moment.

What IS interesting is what motivated US (and at least some of those donors were 'us', who are now sheltering on a small off-shore island in self-imposed exile) to stump up funds for that crowdfund . . .

1. Were we 'fooled' by the grand (and largely unrealisable) promises?

1.1. And how much was wishful thinking on our part that made us overlook that a lot of those promises were, quite possibly, unrealisable for that sum and in that time?

I do feel that a lot of people (on all sides) fooled themselves, or acted out of ignorance.
https://richmondmathewson.owlstown.net/
Post Reply

Who is online

Users browsing this forum: No registered users and 3 guests