-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
"Semi-Automated" Java->Swift conversion of WyldCard for editing/creation? #7
Comments
Hello Jim, thank you for your proposition, You want HyperCardPreview to support HyperTalk? I think of it, from time to time, but it would be complex because I'd have to code a new UI, and I'm not ready to do it yet. @uliwitness has a HyperTalk interpreter in C++ by the way, I'm interested by that one. But I'll see. Apple has stated that they wouldn't release the source code. |
Bill Atkinson actually said a couple years ago that HyperCard's source code was supposed to be released back when they donated MacPaint and Quickdraw source code to a museum. I don't know what happened, but my guess is some lawyer found something that was either licensed and therefore couldn't be released, or was still making Apple money as a trade secret and therefore couldn't be released. I'd be happy to see someone use my HyperTalk interpreter for something else. The "Forge" subproject of Stacksmith would likely be a good starting point. It is a command line tool that shows how to compile and run a script, without all the native Mac stuff around it. I'd happily answer any questions you might have. Note that I've taken a few small liberties in Stacksmith (like Rects and points are actually arrays/dictionaries, not item lists) but it would be fairly easy to replace the Rect/String and Point/String conversion routines to fix that if you wanted 100% HyperTalk compatibility. |
licensed and therefore couldn't be released, or was still making Apple money as a trade secret and therefore couldn't be released. Yeah, probably. But isn't that what redaction is for? True, it would mean that it wouldn't compile - but it already uses the 68K API's, probably has a good bit of 68K/PPC assembly. I suppose you could fire up MPW and compile it for SheepShaver (I should try that with the MacPaint code, come to speak of it.) |
I've looked at the WyldCard repo (https://github.com/defano/wyldcard) and am impressed - except it's in Java. That kind of puts the kibosh on making it into a "native-speed" osx or iOS app (thought how much "native speed" matters these days with multi-GHz processors. I remember processors when Hypercard 1.0 was new). And maybe not be able to distribute anything on the App Store if I ever develop it to that level - depending on whether Apple will allow a Java interpreter/JIT to be included in an App Store app (my guess: no - or at least "Apple might change its mind at any time")
I looked at the WyldCard source and thought for a second I could just convert things one-by-one to Swift (it's only 491 files) - until I saw classes like extending BaseErrorListener which I'm guessing swift doesn't have anything resembling.
Any ideas? Or how to adapt WyldCard to run as a "separated JIT (or even AOT?) layer" that a Swift based interface could then send messages and queries to? One difficulty would be that all the stack data would be contained in
I suppose there's no chance of convincing Apple to actually release the original source? (Thought it might just be a near-unreadable mess of Pascal and assembly.)
The text was updated successfully, but these errors were encountered: