Flamey .... the ?Windows ?Mac and ?Linux directives are all very well but should not be something that the user should have to touch. It's all very well that Max has to do platform specific code behind the scenes, but I shouldn't need to know about it or get involved in it. That's why I think they should be removed, if Max were capable of being purely cross-platform, so I wouldn't have to think about making something specific.
All cross-platform languages that I know of have these sort of compile/run-time directives. What you're sort of suggesting is an abstract "4th way" of performing functions. While not a horrible idea, it presents a lot of long-term problems that aren't always immediately apparent.
As Flameduck eluded to earlier (although his answer was a bit more political than technical), sometimes function A isn't abstract enough to generalize across several platforms. The risk of making it difficult to retain efficient compilation as operating systems upgrade and evolve is greater if you go your own way.
If it weren't for Max's cross-platform nature, I would not be here writing right now, because it's only due to Max coming out on the Mac (first) that I saw the entire programming occupation as a possibility again. If Max weren't on the Mac I would never have gotten back into this stuff.
There are several reasons to own a Mac. Arguably more for owning a PC. Either way, easy cross platform languages have been native to Mac for quite some time... Java and Python have been available since OS X 9 or earlier.
I do agree with your letter "B" though. However, there are problems with that too. That sort of takes Max to the CLR/JVM-like intermediate language model. Since Max is a minor player in the language game, you'd have to pacakge the Max byte-code compiler with each application (unless Mark and Simon could convince Microsoft, Apple and Redhat/BSD/Linux Flavor X to distribute Max virtual machines in their operating systems) Doing so would probably make the install package a fairly daunting size for online distribution.
Never did see the point of the Linux stuff. Linux people don't pay for sofware anyway.
Getting anything to work reliably on every flavor of Linux is a labor of love.
Linux people do not pay for software because a majority of their widely used software is available via open source. It's not so much a piracy thing more than a really can't pay for it thing (though most open source projects do accept donations... and believe it or not... people DO donate if the product is good and there's a desire for long-term support).
I've seen plenty of software for Linux that isn't free. Linux users should technically have more money to spend on entertainment software since they save it on operating system costs. :)
But again, the challenge is making software that stably runs on all linux flavors. Linux open-source approach is it's own worst enemy in many ways. The variety of kernals don't allow a build-once distribute-many luxury found on Windows and (mostly) Mac. This instability produces a support nightmare for the small game shops like the ones here.
Honestly, in my opinion, that's what prevents Linux from becoming a major player in the home market. You usually can't simply install a program and run it. Short of including your source code and letting the application compile natively on install, it's highly difficult to guarantee your program will run on anyone's linux system.
d) Rubbish. Scrap the IDE and provide integration tools for Eclipse, Xtools, Code WArrior and Visual Studio (in that order).
I agree. Except I'd move VS closer to the top now that they have a free version available.