Mailing Lists: Apple Mailing Lists
Image of Mac OS face in stamp
Re: OSA modernization and scope
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: OSA modernization and scope



On 2008-12-26, at 16:10:37, Joshua Juran wrote:

Fortunately, Apple has already been shipping an open scripting architecture for several years, which is multiplatform and has enormous developer buy-in. It's called Unix.

We're also talking about "native" applets, droplets, folder actions, mail rules, Perl Studio, Lua Studio, etc. without the hassle that it takes to map the whole freakin' Cocoa.framework into language X.



If you want to attract people who aren't Mac developers, consider designing a wire protocol that anyone can implement. Let applications and scripts communicate over pipes or sockets, which all major scripting languages support.

On Mac OS X, methinks it's mach ports. On anything else, it will probably be variants on the preprocessor conditional below.


typedef struct {
CFIndex version;
void * info;
const void *(*retain)(const void *info);
void (*release)(const void *info);
CFStringRef (*copyDescription)(const void *info);
Boolean (*equal)(const void *info1, const void *info2);
CFHashCode (*hash)(const void *info);
#if defined(__MACH__)
mach_port_t (*getPort)(void *info);
void * (*perform)(void *msg, CFIndex size, CFAllocatorRef allocator, void *info);
#else
HANDLE (*getPort)(void *info);
void (*perform)(void *info);
#endif
} CFRunLoopSourceContext1;




Here are my key questions: Is it available as free software on Linux?

That's why we're suggesting CoreFoundation level.


How would it work with Parrot?

"The goal of the Parrot virtual machine is to host client languages, and allow interoperation between them."


Different goals I think. Definitely not a virtual machine. Interoperability to the extent to which each OSA language can support AppleEvents or deal with another language's text result to an 'exec' call. Due to the groundbreaking work done on sdefs, I'd be inclined to think that transferrable objects would be the least overall hassle if expressed in XML but an alternate llvm format could be worth looking into. Each language would have to provide it's own translators for these cases though (perhaps with the aid of built-in facilities for the basic types).


Is it *really* free, or just another lock-in API?

That would be Apple's call. What I think would be best is if the OSA Team could aim for an international standard by a contribution to the existing open source CoreFoundation.



Philip Aker echo email@hidden@nl | tr a-z@. p-za-o.@

Democracy: Two wolves and a sheep voting on lunch.

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Applescript-implementors mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden


References: 
 >Re: OSA modernization and scope (From: has <email@hidden>)
 >Re: OSA modernization and scope (From: Joshua Juran <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2011 Apple Inc. All rights reserved.