Alternative Development Systems for the Mac 128
Carlos Camacho writes "Programmers new to the Mac platform, as well as newbie Mac coders often ask (or complain) about available development tools. Most often, Apple's Xcode is recommended since it is free, and a pretty slick package. For cross-platform work, Metrowerks CodeWarrior series has been with us since the early PowerPC days, and is very flexible in its support for multi-platforms. But with if you want to work in a language other than Objective-C,C, C++ or Java? Or learn an entirely new language? How does the Macintosh fare? iDevGames, a site devoted to Mac game developers, has put together a list of "alternative" development tools for Mac OS X. A good number of the tools listed are either free, or low-cost. So, if you're interested in playing around with Lua, Ruby, something similar to HyperCard, or one of the many BASICs, check out "Alternative Development Systems for the Mac.""
WebObjects 5.3.2 (Score:1)
No (Score:3, Funny)
Re:No (Score:1, Informative)
You can keep renewing your trial licence indefinately.
It is all free.
Deploying your app is another story though. If you want to host it yourself, you will need to pay the $700 or get OS X server.
Re:No (Score:2)
I used to love WO but ever since they ported it to Java it wasn't the same thing. Now I prefer JBoss+Tapestry+Hibernate+Spring. All f
Re:No (Score:4, Funny)
You misspelled "now."
Re:No (Score:2)
What about Mono? (Score:4, Informative)
Re:What about Mono? (Score:5, Interesting)
Re:What about Mono? (Score:4, Interesting)
Java and Eclipse for application development under Mac. Even Java3D and many other lovely libraries, plus the L&F is full Mac, and check out Suns guide to macifying a java app.
What, you wanted a drum roll?
Re:What about Mono? (Score:2, Interesting)
Re:What about Mono? (Score:2)
Re:What about Mono? (Score:1)
Now, all that argument aside, why the hell would anyone want to write Mono for their Mac?
Re:What about Mono? (Score:1)
Re:What about Mono? (Score:2)
MonoDevelop only runs on top of X11. It runs better than a Java Swing app but it's just not ready yet... you can do basic apps but not complex WinForms apps or aspx pages.
There is an Eclipse plugin for Mono lying around on the net, I think from a french company. I don't know if it's working on E3
Runtime Revolution? (Score:3, Interesting)
Is this just because its mostly a business-logic style app development environment, or have I just not been paying enough attention to 'strings somerunrev.exe'?
(Anyone remember Vibe?)
Re:Runtime Revolution? (Score:3, Informative)
I don't know about "heavy weight" apps, but the commercial remake of the old HyperCard stack "If Monks Had Macs..." was made using RunRev...
I only found out about this last week, but it was re-released late last year. I'm going to be giving a slightly used copy as a Xmas present this year...
Re:Runtime Revolution? (Score:3, Informative)
If Monk Had Macs... by RiverText [rivertext.com]
Re:Runtime Revolution? (Score:2)
Re:Runtime Revolution? (Score:1)
I definitely remember them being around about 1996/97. I was beta-testing it as a multi-platform tool, but gave up and used Delphi instead
Maybe their 1.0 release was in 2001, but they did a beta or two for 2 or 3 years before that
Re:Runtime Revolution? (Score:2)
Re:Runtime Revolution? (Score:1)
Re:Runtime Revolution? (Score:2, Informative)
You can see some of these at http://www.altuit.com/ [altuit.com] or check out: http://www.altuit.com/webs/altuit2/RunRev/ [altuit.com] for more details on RunRev...
Re:Runtime Revolution? (Score:1)
Re:Runtime Revolution? (Score:2)
Re:Runtime Revolution? (Score:1)
With one-liners for most common tasks (includin
Flash and Director (Score:5, Interesting)
Alex.
Re:Flash and Director (Score:2)
Re:Flash and Director (Score:4, Insightful)
The list was probably compiled to favor the cheap and obscure verses the expensive and well known. iDevGames is now in the judging stage of an annual contest where amateur developers make freeware Mac games. The list was probably compiled based on feedback from the developers while this year's contest was being put together.
Feedback From Developers (Score:2)
Re:Feedback From Developers (Score:5, Informative)
I just check Ambroisa's site and web boards, and they appear to still sell both the engine and the standalone campaign. They just don't appear on the "recent release" pages; you must explictly look for it on the Arcade and Utility pages.
That said, there are a few problems with Coldstone, however...
Re:Flash and Director (Score:4, Insightful)
Flash is all the rage lately, specially on the "rich" front-end app Web environment. Funny thing, MM in their greedy upgrade-cycle frenzy is making exactly the same mistakes that plagued Director in its time. Namely: feature bloat, general inconsistency, dramatic scripting syntax and model changes, legacy burdens, NIH syndrome, feature creep, etc.
Sad, the Flash community is swallowing it all in their enthusiasm.
Re:Flash and Director (Score:4, Interesting)
Sadly, I find Flash so irritating, both in for creating full websites and its use for advertisements, that I uninstalled the plug-in. Any website that relies on Flash for critical functionality will lose me as a viewer or customer. If websites use Flash, they should also provide a simplified HTML version for the rest of us.
Re:Flash and Director (Score:3, Funny)
Sadly, I find Flash so irritating, both in for creating full websites and its use for advertisements, that I uninstalled the plug-in.
Jeez. But you forgot to tell us how good Ogg is.
Re:Flash and Director (Score:2, Insightful)
I couldn't agree more. Its way too heavy for simple browsing.
"...and its use for advertisements..."
No worse than GIFs, really (if you actually like advertising of any kind).
"...that I uninstalled the plug-in. Any website that relies on Flash for critical functionality will lose me as a viewer or customer."
Ignoring it's misuse in splash screens and building entire sites (which is the user's fault, not the software's), there's a lo
Re:Flash and Director (Score:2)
I don't hate all advertising -- it serves a useful function in funding things like Slashdot -- but rather I hate it when the advertising detracts from the overall viewing experience, which happens with some blinking, stuttering and shaking flash ads. Google text placement is advertising done right; "Hit the monkey" motion ads are advertising done horribly wrong.
Re:Flash and Director (Score:2)
You missed eclipse ! (Score:5, Informative)
A million different cheez-o basic versions listed, but they forgot eclipse ...
Re:You missed eclipse ! (Score:2)
That, and it's a video game website, and the list they gave looked pretty game-oriented.
Re:You missed eclipse ! (Score:3, Informative)
Agreed that the list is skewed towards game programming, and java isn't the place to be for bleeding edge games, however there is a java games community [java.net], and more specifically an eclipse games community [sourceforge.net].
Note - I am not a games programmer, however given some of the solutions listed ( I mean, I used to love chipmunk basic but I'm not going to use it these days ) I thought eclipse should have been pointed to. Eclipse on mac doesn't seem to be as big as eclipse on lin
Re:You missed eclipse ! (Score:2)
Re:You missed eclipse ! (Score:2)
RealBasic (Score:5, Informative)
It's a somewhat Java-like Basic syntax, completely object-oriented. It has the capability to use ODBC (on all platforms that support it), native widgets, many types of network sockets, etc. An install on every platform consists of copying a SINGLE file, one
On, the other drawback. The developers and marketers of RealBasic have their head in the sand and have NO CLUE what they are working with. With about 1 minor revision and a decent-sized advertising campaign, these guys could conquer and destroy Microsoft VisualBasic. RealBasic does everything VisualBasic does but cross-platform and without reliance on numerous
Since this is Slashdot, I'll also say that RealBasic includes very very skeletal Linux support, but I think Redhat only. I could be wrong, I don't use Linux.
Pretty much the only competition is Macromedia Director and Runtime Revolution... both of those produce alien-looking not-quite-native interfaces. (Although at least Director is good for game development.)
http://realbasichelp.com/ [realbasichelp.com] is the best forum on the web for RealBasic issues and questions.
Re:RealBasic (Score:4, Informative)
http://realbasic.com/ [realbasic.com] RealBasic's Homepage. You can download a free trial, I recommend giving it a try.
Re:RealBasic (Score:4, Funny)
... shame the article was about platforms for game development (-;
Agreed however if your market is for basic-style apps (where Visual Basic is thrown in today), real basic looks quite polished (although I didn't see anything regardsing Linux ...).
Re:RealBasic (Score:4, Informative)
As for game support, I've seen several games written with REALbasic and they look pretty good. Why does REALbasic include game support? Probably because that's how a lot of people get into programming. They start by writing games. Quesa is a platform-independent 3D API. It uses OpenGL underneath on Windows, Linux and Mac OS X. It only uses QuickDraw3D on Classic Mac OS.
Regarding Visual Basic, one of the big problems for any company selling software into the Windows market is getting above the noise. It's a big market and that's attractive but that's also a negative. And throwing lots of money at a problem is not always be best solution.
Re:RealBasic (Score:2, Insightful)
Re:RealBasic (Score:2)
The fonts selected look wrong in both Windows and MacOS. Text field spacing was off enough that it looked and behaved weird compared to native EditFields on that platform. Fields on MacOS behaved like Windows fields, not like native MacOS fields. The Runtime Revolution IDE had very strange spacing on all the buttons and fields, and didn't look right to me at all on either MacOS or
Re:RealBasic (Score:3, Interesting)
In RealBasic, it doesn't take long to find a tim
Re:RealBasic (Score:2)
Re: Platform issues. Try this in MacOS. Open a multiline text field and fill it full of text. Position the caret at the top of the field and hit the down arrow key. When you get to the bottom line, Windows will simply "beep" at you, but MacOS will move the caret to the far right of that line. (This may or may not be what was wrong with the Runtime Rev
what about xul? (Score:2, Interesting)
Re:what about xul? (Score:2)
if you're talking C/C++/objC, they're compiled languages and don't require a reader....
Lisps for the Macintosh (Score:5, Informative)
Open Source:
Open MCL [clozure.com]
SBCL [sourceforge.net]
Commercial:
Macintosh Common Lisp [digitool.com]
Allegro Common Lisp [franz.com]
Xanalys Lispworks [lispworks.com]
Re:Lisps for the Macintosh (Score:2)
I've been futzing around with Lisp for the first time in about 12 years. Downloaded the personal edition of Lispworks, which has a nice looking IDE and dev tools, IMHO, and OpenMCL.
Thanks in advance for the feedback.
Re:Lisps for the Macintosh (Score:2, Informative)
Re:Lisps for the Macintosh (Score:2)
Re:Lisps for the Macintosh (Score:1)
For someone who wants to do Mac OS X, it is advertised to support the Cocoa/Objective C model of development.
I used Digitool's OS 9 environment for some technical programming, and found it to be excellent. I have not tried it under Mac OS X. Franz & Xanalys didn't really play on classic Mac
Re:Lisps for the Macintosh (Score:2)
Just for another data point:
I develop Lisp code for FreeBSD. The current version uses CMUCL because it's blazing fast, at least on the x86. (I would use SBCL but it wasn't ready when I started the project.) The new version is being developed with Lispworks, mostly because of KnowledgeWorks and CommonSQL.
In general (and in my own opinion only), Allegro is pretty, but Xanalys has a better Lisp implementation. If you're just getting started in Lisp, never used Emacs, and have usually dealt with IDEs, tha
Re:Lisps for the Macintosh (Score:1)
Personally, I've used (now from Digitool) since it was available from Apple, but I've tried [digitool.com] Lispworks [lispworks.com] (since that's what I use on a Linux box at work), and CLISP of course. Most of the other versions, including Franz's, I've used in the past on other platforms (Sun) since I lost my beloved [franz.com] box. MCL was by far the best experience under OS9 and prior, though the user interface elements haven't completely tracked the change to [symbolics.com]
Re:Lisps for the Macintosh (Score:1)
Personally, I've used Macintosh Common Lisp [digitool.com] (now from Digitool) since it was available from Apple, but I've tried Lispworks [lispworks.com] (since that's what I use on a Linux box at work), and CLISP of course. Most of the other versions, including Franz's [franz.com], I've used in the past on other platforms (Sun) since I lost my beloved Symbolics [symbolics.com] box. MCL was by far the best experience under OS9 and prior, though t
Re:Lisps for the Macintosh (Score:2)
Re:Lisps for the Macintosh (Score:2)
Engage Tin Foil Compiler (Score:2, Funny)
Re:Engage Tin Foil Compiler (Score:5, Funny)
Oh, it'll allow you to do both, but only at specified save points.
Re:Engage Tin Foil Compiler (Score:1)
(play halo 2 as an elite to get it)
API dependencies (Score:5, Insightful)
The only "gotcha" about programming for the Mac outside these languages is that access to native APIs (Core Foundation, Quartz, QuickTime, etc.) becomes dependent on the tool maker providing wrappers.
So, while using other tools for RAD, educational or hobbying purposes might be possible; it's easy to miss out on some of the most intriguing and interesting (IMHO) programming possibilites for the Mac.
Of course, if you're just interested in programming on the Mac as opposed to for the Mac, then this isn't an issue.
PyGame (Score:4, Informative)
I appreciate the mention of PyGame, as Python is presently my language of choice for fiddling around. I have recently started using Python and I really enjoy it, and it's odd to see Python based solutions left out of discussions where they are relevant [slashdot.org].
It's almost like there are a large group of people who take offense at the mention of Python...
Re:PyGame (Score:3, Informative)
It is an interpreted language, and in general, interpreted languages don't get much respect. In addition, Python users are often as fanatical as mac users, and end up pushing python into inappropriate uses. A fairly senior manager at my work got hooked on python, and is now trying to use it for embedded real-time applications. He is not a programmer, and tries to use python as a solution to every problem. N
Re:PyGame (Score:3, Funny)
Inappropriate uses
Re:PyGame (Score:1)
1st things first - Yes, it is 'interpreted', in the sense that it is rarely used to produce executables and mostly distributed via source. But it is compiled into Python bytecode before execution, not run straight from text files. Still, I'm aware it just isn't a fast language.
But AFAIK, the same thing is done with C++; a lot of modern software is done in C++ as if it is some miracle cure for the problem of high-level vs. low-level programming, and C++ people (Not per se all the people who know C++) are ju
Re:PyGame (Score:2)
I personally have a problem with interpreted vs. compiled "delivered" applications for only one small reason. By forcing an application to be compiled, some of the simpler errors are caught. I can't count the number of times I've made a "quick" change right before delivering an application that "won't harm anythin
Lint. (Score:1)
PyGame is terribly slow. (Score:1)
Re:PyGame (Score:1)
That was your gerbil? I thought it had choked on a pe- er- some kind of precious stone.
What about Fortran? (Score:3, Informative)
With GCC4.0 the latest Fortran for Mechanical Engineers and other disciplines with a need for numerical analysis and FEM will have this available.
I wonder do languages like SELF or Ada or Eiffel ever get notice like they once did?
Re:What about Fortran? (Score:3, Interesting)
Second, we've successfully recompiled scads of old ( and not-so-old ) fortran code for OS X already. I guess the programs we had didn't need t
Re:What about Fortran? (Score:2)
Hmm. I used to be bilingual in Fortran. I spent a lot of time trying to figure out someone elses code. Most of the time the problem is with the programmer not the compiler.
I have seen C and VB and even Pascal that is tough to understand.
I have also seen Fortran that was well documented and easy to follow.
YMMV
Re:What about Fortran? (Score:5, Insightful)
I have seen C and VB and even Pascal that is tough to understand. I have also seen Fortran that was well documented and easy to follow.
It's definitely true that it is quite possible to write well-commented and easy-to-understand code using Fortran.
The vast majority of Fortran I've seen, however, does not fall into this category. Some old-school optimization tricks, like variable reuse, are partly to blame for the poor readability, as is poor programming ( usually done by engineers, not programmers ). In my experience, most folks writing Fortran programs are scientists and engineers, not programmers, and they approach the problem as if they're writing some little function that will only ever be written once, and never modified. They get it to compile and move on to some "real work". If there's some edge case where the program errors out, users learn by trial and error to avoid that case. User interaction is an afterthought. This is mostly the programmer's fault, although I notice you didn't touch my statement about Fortran I/O routines being uh, not the easiest to use.
Still, ANY language with a "GOTO" construct and unclear if-branching is going to be hard to read. Fortran has both. Not to mention limited symbol length and non-sequential line numbering. It actually takes a great deal of care to create a readable Fortran program, and they are, as a result, rare.
Not to start a flamewar about Fortran, though, it definitely has it's uses, and it is possible to write a reasonably readable Fortran program, but... the language not only doesn't help you do so, it actually includes some limitations and conventions which make it difficult.
But support on OS X? Shoot, Fortran support on OS X rocks! It's frickin' Fortran-lover heaven. You even get Altivec calls from Fortran. All you lack is a decent way to do I/O ;-)
Re:What about Fortran? (Score:2)
Fortran goes back to when saving bits was a good thing. I learned all my bad habits from Fortran.
But I don't really use it anymore. These days I write my unmaintainable code in Perl.
There are a lot of good principles for writing bad code here [mindprod.com].
Re:What about Fortran? (Score:2, Interesting)
To answer your specific assertions: Fortran and most other languag
Not C++ (Score:3, Interesting)
Your examples, no loop:
Re:Not C++ (Score:1)
Plus, I don't think you customized the formatting of the output as he did. And you aren't printing doubles.
Re:Not C++ (Score:2)
The point is: C++ (well programmed, of course) makes you define well your domain and do stuff efficiently to boot.
And I could not know (without knowing fortran) that he did what you said he did (doubles and formating). And I'm not a mid-level programmer, I'm an senior-level programmer (12 years professional experience) that just happened to not have used fortran.
Anyway, the first complaint is fixed just by exchanging
by
the second one, adding
Re:Not C++ (Score:1)
I consider myself quite comfortable and experienced with C. I only have about six months of serious Fortran learning in my past, based on Fortran 77. I had about six months of serious C++ learning, but back before Bjarne and company realized that RTTI, STL, and C++ casting actually belonged in the language, and when t
Re:What about Fortran? (Score:3, Interesting)
It's definitely true the most of the Fortran I've had to work with
Re:What about Fortran? (Score:2, Informative)
Squeak! (Score:5, Informative)
SuperCard (Score:5, Interesting)
SC allows you to build standalone applications playing movies with QuickTime, displaying graphics with alpha channels, running shell commands and AppleScripts, etc...
I also personally use Runtime Revolution [runrev.com], and it's also good, and cross-platform. However, for Mac-only development, SuperCard definitely has my vote. It uses true Aqua GUI controls, and behaves like you expect Mac apps to do.
Here's a few Mac apps I develop with SuperCard: http://www.lightheadsw.com/ [lightheadsw.com]
(1) no problem (2) why?? (Score:5, Informative)
(1) No problem.
XCode's build system is extremely flexible. You can have a custom script or binary run instead of the more standard targets. Just make a new project of "Empty Project" type, add a build target ( Project/New Target ) and pick either "external target" or "Shell Script Target" as appropriate. It'd be hard for it to be a lot easier without being language/tool specific, like the 'canned' target types ( of which there are already quite a few ).
(2)You want to use something that's not the most developer-friendly language ever created ( Objective-C ), the most commonly used language ever created ( C ), the most commonly used in commercial products OO language ( C++ ) nor the best mulitplatform language ever ( Java ) ?? What's your reasoning there?
I understand that there are reasons for using "none of the above" when writing code for OS X, like say, you have a big group of Fortran programs that you don't have time or need to rewrite, or you just rock at Python and don't have time to learn something else, or know you can do what you want in Pearl... but if you're developing a completely new codebase, with a full GUI-based app as your goal?
Learn Objective-C. Learn Cocoa. You'll be glad you did.
Re:(1) no problem (2) why?? (Score:4, Interesting)
Objective-C is slow, it eats memory, and its syntax is very verbose. Most languages don't have 120-some character method names. And for all that, it's still unsafe, and has very little in the way of static type-checking, and no garbage collector (a refcounter where you have to twiddle references a lot doesn't count). I would not call it "the most developer-friendly language every created." I'd much rather code in Python or O'Caml.
C is not a good choice for anything but the core of most games, as it is too developer-unfriendly and lacks in features (like OO, anonymous functions, garbage collection...). While excellent for low-level code, it's not really in the running for high-level.
C++ is a good language for games, but many people would rather have something higher-level. It's unsafe, but many people will overlook.
Java is slow and verbose, and therefore painful for game development.
Maybe they want to code in Python?
Re:(1) no problem (2) why?? (Score:5, Insightful)
Objective-C is slow, it eats memory, and its syntax is very verbose. Most languages don't have 120-some character method names. And for all that, it's still unsafe, and has very little in the way of static type-checking, and no garbage collector (a refcounter where you have to twiddle references a lot doesn't count). I would not call it "the most developer-friendly language every created." I'd much rather code in Python or O'Caml.
You want fast and a garbage collector?? Objective-C is slow? Um... not terribly. Large memory footprint? Not unless you're forgetting to deallocate objects, or just have a bad design. 120-some-character method names? Not typically, and verbose method names are actually good, if occasionally overdone. Yea, it's unsafe, it's a superset of C, of course it's unsafe. You really think Objective-C is less memory-hungry than Python or O'Caml? Interesting... I'd like to see your benchmarks there. It's clear we have different ideas of what makes a language developer-friendly. Access to C routines makes Objective-C developer-friendly in my book.
C is not a good choice for anything but the core of most games, as it is too developer-unfriendly and lacks in features (like OO, anonymous functions, garbage collection...). While excellent for low-level code, it's not really in the running for high-level.
C is great for the core of most calculation routines of any type. Which is how it is often used in the context of an Objective-C program. You don't always need high-level.
C++ is a good language for games, but many people would rather have something higher-level. It's unsafe, but many people will overlook.
Now you're making me wonder how many Python or O'Caml games there are out there. I guess there must be a few... any commercial ones? C++ when written correctly is awfully high-level, no? I can't belive you'd complain about Objective-C syntax and not C++ syntax...
Java is slow and verbose, and therefore painful for game development.
First, slow compared to what? Link me up with that Java/Python benchmark comparison. No, really. Something tells me you might just be making this stuff up, repeating something you read somewhere or something. Java used to be slow. Starting up a JVM can be slow. Some Swing drawing routines on some platforms can be slow. I'm also wondering, huh, do you think of programming in terms of anything besides games? Again, verbose in a programming language == readable == very good.
Maybe they want to code in Python?
Power to you. XCode documentation even has pointers as to how to set up a project for Python. Is Python sytax really less verbose than Objective-C? Is it really faster? Does it really have better, more complete libraries? Is there really a reason other than "I want to", which- don't get me wrong - I think is great reason... just maybe not one you can sell to the other folks working on your project, if you get my drift. Really, yea, Python is cool, but... why not Objective-C, again?
Re:(1) no problem (2) why?? (Score:2, Informative)
Yes.
Objective-C is slow? Um... not terribly. Large memory footprint? Not unless you're forgetting to deallocate objects, or just have a bad design.
Obj-C boxes are huge. Method calls are heavily indirected. All this makes for more dynamism, but I stand by my claim that Python beats it, and that Objective-C beats it.
120-some-character method names? Not typically, and verbose method names are actually good, if occasionally overdone. Yea, it's unsafe, it's a supe
Ada for the Mac (Score:3, Interesting)
Go on, rate me troll. (Score:3, Insightful)
Uh, I distinctly remember using CodeWarrior on my old Quadras, which were all 68k machines. I never really was a fan of Apple's MPW IDE, so yeah.
Just thought I'd point that out. Also, Mac System 7.5.5 forever and such.
Re:Go on, rate me troll. (Score:1, Informative)
BlitzMax and Extreme??? (Score:3, Interesting)
Extreme Basic is a work in progress that seems like it's going to be released for PC and Mac. However, the commands are different for mac and pc, so it's not going to be cross platform -- unforgivable in my eye.
Seeing as they don't exist, should they even be on this list?
I'm trouble by the use of gcc as the default... (Score:4, Interesting)
Kudos (Score:1)
I also loved the cosmic ray detector thing. I used some magnets pulled out from an old hard drive. +3 informative. Priceless.
Checked out your home page. Those are mighty cool robots. Not bad for someone who has no talent for anything practical.
Hope I haven't blown your cover. Have a good one.
Re:I'm trouble by the use of gcc as the default... (Score:3, Informative)
In my experience Apple's GCC optimizes better on Macs than the IBM compiler for PowerPC CPUS.
realbasic? (Score:5, Informative)
Emacs for OSX (Score:3, Informative)