[Mono-osx] Delphi Prism and all those Cocoa bridges

Andrew Brehm ajbrehm at gmail.com
Fri Feb 27 08:21:02 EST 2009

Tomasz Muszyński wrote:
> Wiadomość napisana w dniu 2009-02-27, o godz. 12:40, przez Andrew Brehm:
>> It's a Mac mentality these days. NeXT solved the problem with the  
>> bundles
>> concept. It's still a whole bunch of files, but it looks like one  
>> file and
>> can easily be copied (and installed by simply copying).
> Not always. Sometimes, You have installers on mac :)

I know. Hate them.

Tomasz Muszyński wrote:
>> I don't know how Linux wants its programs to be delivered  
>> (installer? RPM?
>> ?) but I guess the Windows installer should install, into the  
>> program files
>> directory a bundle.app containing everything needed to run the  
>> program on
>> Windows and Mac OS X, and create a shortcut for the program menu.  
>> The root
>> directory of the bundle should also contain a shortcut creator for  
>> Windows.
>> The Apple version should be distributed as a bundle.
> Mac bundle can also contain Mono distro, without need to install Mono  
> by user. On Windows side You rather have Microsoft .Net already  
> installed.

Yes. I have to figure out how to add a Mono distro to a finished bundle or
how to modify the bundle to include a distro.

Tomasz Muszyński wrote:
>> This has the advantage of two versions for two platforms that both  
>> behave
>> completely native, but are still interchangeable. I can copy the  
>> installed
>> Windows version onto a Mac and it will be a bundle (because it is).  
>> And I
>> can copy the Mac version (or installed Windows version) to a Windows
>> computer's program files folder and run the shortcut creator and  
>> have a
>> working Windows version again.
> The, question is - for what? Why You need to copy application between  
> Mac and Windows without change? Data files should be interchangable,  
> but not data (even if it's Mono). Ofcourse, it can be done, but app  
> will take more place to have platform specific things (which I wrote  
> above about them) and gives user nothing special.

It's extraordinarily useful. It's a benefit of Universal Binaries I enjoy
every day. I don't have to worry whether I copy a program from a PowerPC to
an Intel and whether it is 32 and 64 bit. It's fantastic and it's also a
reason for why there are so useful programs written in Perl and Java out

.NET gives you that advantage; developing separate GUIs for each target
takes it away again. Using the bundle/installer mix described above, I can
get that advantage back.

I can then happily copy my bundle.app folder between Macs and Windows
machines of any architecture; and as long as the .NET framework (Mono or
Microsoft's) is installed, my bundle.app will run.

I copy the bundle, I run it, it's a delight! :-)

It's won't make the bundle much bigger, since the DLL(s) and data files will
be the same for both platforms. The only difference will be the Mono
overhead (starter script etc.), the two EXEs, and the NIB file(s). Disk
space is cheap.

View this message in context: http://www.nabble.com/Delphi-Prism-and-all-those-Cocoa-bridges-tp22180106p22245758.html
Sent from the Mono - OSX mailing list archive at Nabble.com.

More information about the Mono-osx mailing list