Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Programming Businesses Apple IT Technology

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.""
This discussion has been archived. No new comments can be posted.

Alternative Development Systems for the Mac

Comments Filter:
  • you just got to try it out. Haven't you tried it? ;-)
    • No (Score:3, Funny)

      by ravenspear ( 756059 )
      It costs $700. I have to eat you know.
      • Re:No (Score:1, Informative)

        by Anonymous Coward
        You can get a free trial version (for OS X only) through the Apple Developer Connection (http://developer.apple.com/). Check out the details at http://www.apple.com/webobjects/getting_started.ht ml.

        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.
        • Yeah $700 per server (or was it per CPU? can't remember). And remember to deploy a gazillion instances of your app with the Monitor because concurrent request handling can become a nightmare since many EOF components are not thread-safe (unless you want to spend countless nights debugging all the thread stuff, counting all those lock() and unlock() calls to EOEditingContext).

          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)

        by wirelessbuzzers ( 552513 ) on Monday November 22, 2004 @06:34PM (#10893113)
        I have to eat you know.

        You misspelled "now."
      • It costs $99 if you are part of any educational institution.
  • What about Mono? (Score:4, Informative)

    by Kryptkrwlr_XTC ( 521685 ) on Monday November 22, 2004 @10:22AM (#10888142)
    Before you flame me as a troll, the Mono Project does have a Framework installer for OS X. so you can develop under Mono and have a app run on a Mac.
    • Re:What about Mono? (Score:5, Interesting)

      by OmniVector ( 569062 ) <see my homepage> on Monday November 22, 2004 @10:39AM (#10888279) Homepage
      the performance isn't there. nor is the reason. why bother with C#/Cocoa# when you can use java/Cocoa and it's shipped with every mac already, and it has better performance (hotspot is way better than mono's vm right now). not to mention the dev tools for java in os x are about a million times better than anything for C#. (intellij, eclipse, xcode...)
      • Re:What about Mono? (Score:4, Interesting)

        by tod_miller ( 792541 ) on Monday November 22, 2004 @12:01PM (#10889080) Journal
        Mod up parent +5 Sane

        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?
      • That's an easy answer to this question. What if you do c# development for a living and you don't want to waste any of your aging brain cells trying to learn a completely new framework just so you can tinker around on your shiny new mac.
        • then you're in the wrong industry. learning a new language is an easy task. the java frameworks are so rediculously well documented (the best i've ever seen honestly) that finding what you want on the javadoc pages is a snap. C# is a complete rip of of java anyways, so finding your way around isn't hard.
          • You're missing the point. I came to C# from Java. Learning new frameworks isn't HARD, it is time consuming. I could write MONO on my mac without even blinking an eye, but learing Cocoa -- whether through ObjectiveC or through Java will require more pain than Mono would.

            Now, all that argument aside, why the hell would anyone want to write Mono for their Mac? :)
    • According to this screenshot [monodevelop.com], the MonoDevelop [monodevelop.com] IDE (in it's early stages) appears to run on Mac OS X.
      • I managed to compile and run MonoDevelop on my powerbook once. What a royal pain in the ass. You need to compile a whole bunch of GTK stuff, much of it beta, some mozilla stuff, and I don't even remember what else.
        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)

    by torpor ( 458 ) <ibisum&gmail,com> on Monday November 22, 2004 @10:23AM (#10888147) Homepage Journal
    Has anyone ever used Runtime Revolution? I remember this system in the days before Java, and its quite surprising that its still around .. because I've never heard of or seen anyone ever use it to write an application ..

    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?)
    • Has anyone ever used Runtime Revolution?

      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...

    • Runtime Revolution isn't that new, Java is certainly older than it. You may have used MetaCard or HyperCard, but Runtime Revolution just came out in 2001. [google.com] I mean, it's only been 3 years since it came out- not that surprising that it's still alive.

      • 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 ..
        • I can't say I've any clue what they were doing back then. Though I've followed them for a while, since around '98- we used to use the Ten Thumb Typing Tutor, which was (is) a pretty good little app. Playing with RunRev I wouldn't be surprised if they used some beta of RunRev on TTTT, which is a cross-platform app, though back in 1999 or so they didn't have any beta or alpha out, or at least didn't want to share one with me. I exhanged some emails with them about their cross-platform technology, looking to u
        • I definitely remember them being around about 1996/97 Must be remembering something else. It didn't start development until 1999, and the "Revolution" name didn't come along until the next year.
    • Yep, I use it all the time. We've built a number of pretty cool apps with it, including a Content Management System, a Version Control System and more.

      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...
    • We use Revolution for all of our commercial app development. You can view both medical and education apps here: http://www.canelasoftware.com/ [canelasoftware.com] Revolution is very powerful, easy to use, and runs on Macs, Win, and Linux natively.
    • I have. I just recently found out that it can read my HyperCard stacks from '90-'96, so I've been getting a kick out of loading up all the crazy games and animations I made. HyperCard was really amazing like that. I have platform games, a scumm clone, shoot-em-ups, etc etc. And I made some of these things as a 9 year old! Talk about user-friendly.
    • I've been using Rev for more than six years, since the engine was called MetaCard. It's really hard to beat it for productivy in rapidly building multi-platform GUI apps. With a bytecode arguably more efficient than Java's, Rev's performance is much faster than you'd expect from such a high-level language -- my apps are commonly mistaken for being written in C (see my article in the Jan 04 edition of MacTech for more on 4GLs in general and Rev specifically).

      With one-liners for most common tasks (includin
  • Flash and Director (Score:5, Interesting)

    by xanderwilson ( 662093 ) on Monday November 22, 2004 @10:25AM (#10888171) Homepage
    I'm surprised Flash and Director didn't make the list. Some of those tools I've never heard of and I did a pretty long search for a crossplatform game development tool not too long ago, when I decided RealBASIC wasn't going to cut it for me.

    Alex.
    • Director was the basis for a lot of those early "multimedia CD-ROM experience" type games. The CHAOS Continuum, The Journeyman Project, etc. etc. were just big Director projects.
    • by DLWormwood ( 154934 ) <wormwood@@@me...com> on Monday November 22, 2004 @10:42AM (#10888306) Homepage
      I'm surprised Flash and Director didn't make the list.

      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.

      • Then I wonder who suggested Coldstone... I bought Coldstone when it first came out, because Ambrosia is such a great developer (they're the distributor of CS, but not the creator) and most of the games I'm interested in making are of the Coldstone type. It was buggy, unstable, and pretty much unusable even after the 1.1 release. And then they stopped selling it less than a year after its original release IIRC. I don't think anybody but Ambrosia ever developed anything with it and they even pulled their game
        • by DLWormwood ( 154934 ) <wormwood@@@me...com> on Monday November 22, 2004 @02:04PM (#10890288) Homepage
          And then they stopped selling it less than a year after its original release IIRC. I don't think anybody but Ambrosia ever developed anything with it and they even pulled their game because it just didn't work right.

          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...

          1. Beenox Studios has gone on to "bigger and better things" and are now mostly focused on doing ports of commercials games, leaving Andrew and company in the lurch. Ambrosia is said to be doing the update work themselves, if I'm understanding the discussion on the boards right.
          2. The development IDE was written in REALbasic, IIRC. And to get stability for Panther and Tiger, they are going to have to rebuild it using a more modern release of it. This is going to lead to a new QA testing cycle, since RB is infamous for breaking things with each update.
          3. Ambrosia has prioritized on getting a shareware version of WireTap out the door, making it a separate product from Snapz Pro. There's a "sticky" post in the Coldstone forum mentioning that the game tool has been "backburnered" as a result.
    • by danigiri ( 310827 ) on Monday November 22, 2004 @12:30PM (#10889395)
      I have several multimedia CD-ROMs under development in Director. I have done at least a dozen of them and they are usually fairly well-paid projects (v.s. low-pay and hassle-full interactive websites).

      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.

      • by ThousandStars ( 556222 ) on Monday November 22, 2004 @03:06PM (#10890896) Homepage
        Sad, the Flash community is swallowing it all in their enthusiasm.

        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.


        • 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.

        • by Anonymous Coward
          "Sadly, I find Flash so irritating, both in for creating full websites..."

          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
          • No worse than GIFs, really (if you actually like advertising of any kind).

            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.

            ...there's a lot of interesting entertainment out there which uses Flash

    • I use Flash and Director as well, finding both to be good tools for making multimedia projects. Flash, however, is just recently arrived at the point where you can use it for "application development" and not just components, and Director is IMNSHO suffering from both shrinking support from Macromedia and a QuarkXPress-like syndrome of considering itself irreplaceable. One other thing that hurts them (perception-wise) is the way Macromedia has been pushing their products as ways to replace PowerPoint, and n
  • You missed eclipse ! (Score:5, Informative)

    by compactable ( 714182 ) on Monday November 22, 2004 @10:45AM (#10888329) Homepage
    Geez. The best IDE I've ever used, providing SWT libs for apple ... how is this not there?

    A million different cheez-o basic versions listed, but they forgot eclipse ...

    • I think that maybe everything Java was overlooked because that's kind of a duh. I mean, if you're going to work with IB, your options are C, C++, ObjC, and Java.

      That, and it's a video game website, and the list they gave looked pretty game-oriented.
      • list they gave looked pretty game-oriented

        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

        • True. And it's worth pointing out that Java is plenty good for games if you're looking for cross-platform. But Java is slow enough on older Macs that using it might lose a significant portion of your potential audience if you're going Mac-only. (I have no numbers to back this up, it just seems that Mac users don't upgrade nearly as often as PC users from what I've seen.)
    • Well the list says 'alternative development tools' and I think Eclipse isn't precisely alternative on the Mac, since xCode kinda sucks for java development compared to it, my guess is a lot of people use Eclipse on the mac for Java development, so it's not really alternative.
  • RealBasic (Score:5, Informative)

    by Blakey Rat ( 99501 ) on Monday November 22, 2004 @10:51AM (#10888385)
    RealBasic, IMO, is the best cross-platform RAD tool in existence today. Not that there is a ton of competition...

    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 .exe file on Windows, one .app bundle on MacOS X... no DLLs whatsoever. That's a huge plus for me. A drawback is that it relies on Quicktime to present some media formats, such as PDF, and most Windows machines don't have Quicktime installed.

    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 .dll files with version conflicts. Instead, they're advertising it as some stupid game development tool, wasting their time maintaining a "sprite surface" object and an entire 3D framework based on, get this, Quesa, which is in turn based on QD3D... two obsolete technologies layered atop each other. Let me save you some time: RealBasic SUCKS for game development. It has no native support for OpenGL or any decent sound libraries.

    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)

      by Blakey Rat ( 99501 ) on Monday November 22, 2004 @10:57AM (#10888444)
      Oh, I and I guess I should link to the actual website of the product, sorry. :)

      http://realbasic.com/ [realbasic.com] RealBasic's Homepage. You can download a free trial, I recommend giving it a try.
    • by compactable ( 714182 ) on Monday November 22, 2004 @11:14AM (#10888615) Homepage
      Let me save you some time: RealBasic SUCKS for game development

      ... 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)

      by Anonymous Coward on Monday November 22, 2004 @02:01PM (#10890262)
      REALbasic has excellent Linux support for Red Hat, SuSE and just about any other version of Linux provided that GTK 2.0 or later and a few other libraries are installed.

      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)

      by niteice ( 793961 )
      Problem is...people who have learned MS's flavor of Basic are going to have trouble using RealBasic (at least last time I tried, OS8-era).
  • what about xul? (Score:2, Interesting)

    by biggyfries ( 622846 )
    xul is cross platform. Granted, you need to install a "reader" for it (mozilla, gecko, firefox, etc), but you need to for some other languages too (flash, shockwave, the different C's, etc). Plus, xul accepts javascript and html, so if someone knows those, then the can build upon their skills.
  • by jaoswald ( 63789 ) on Monday November 22, 2004 @11:17AM (#10888649) Homepage
    There are a few Common Lisp implementations as well

    Open Source:

    Open MCL [clozure.com]
    SBCL [sourceforge.net]

    Commercial:

    Macintosh Common Lisp [digitool.com]
    Allegro Common Lisp [franz.com]
    Xanalys Lispworks [lispworks.com]

  • I predict that in a few years time we'll learn that xCode secretly embeds spy-code to harvest key logs and other user data. This secret code will be activated April 1st in the year 2006 and upload all collected data to Apple's iTunes division. The harvested data will allow Apple to create THE killer song for your iPod, which by then will interact directly with you brain. This song will control you and bend your listening ways to the financial gain of Apple. 7 days later Bungie will buy Microsoft and rel
  • API dependencies (Score:5, Insightful)

    by saddino ( 183491 ) on Monday November 22, 2004 @11:51AM (#10888965)
    But with if you want to work in a language other than Objective-C,C, C++ or Java?

    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)

    by quamaretto ( 666270 ) on Monday November 22, 2004 @12:11PM (#10889186) Homepage

    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)

      by macrealist ( 673411 )
      It's almost like there are a large group of people who take offense at the mention of Python...

      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)

        by dJOEK ( 66178 )
        In addition, Python users are often as fanatical as mac users, and end up pushing python into inappropriate uses

        Inappropriate uses .. .such as, oh, say, Google? ;-)
      • 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

        • I have nothing against Python. Just was trying to explain why a large group on engineers around me take offense at the mention of Python. Unfortunately it offense taken for the wrong reasons.

          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
          • I don't think it has one, but a simple Lint like program for Python should solve this error. But, the problem isn't really with being interpreted, since a C/C++ compiler mostly catches typo errors (for me anyway...), but instead the problem I see is in the fact that it's dynamicly typed rather than statically typed. The problem here is that in a dynamicaly typed language, since you don't declare varaibles (but instead assign them) if you have a typo it won't get caught even by a lint program (since how is
    • It is. But, that shouldn't stop someone from making games with Python. Just with PyGame.
  • What about Fortran? (Score:3, Informative)

    by tyrione ( 134248 ) on Monday November 22, 2004 @12:41PM (#10889525) Homepage

    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?

    • First, let me just say "yuck!", because I've had few less enjoyable experiences than trying to figure out what is wrong with someone's fortran code. Fortran IO functions must die. Just a personal preference, I understand plenty of people like Fortran for whatever reason, and it will always be used to write little, fast, hard to maintain programs with bad I/O routines.

      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

      • First, let me just say "yuck!"

        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
        • by javaxman ( 705658 ) on Monday November 22, 2004 @07:05PM (#10893457) Journal
          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.

          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 ;-)

          • Nice reply. If I had mod points I would give you some.

            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].
          • Your knowledge of Fortran is based on the outdated Fortran 77 standard. Since then, there have been three standards, Fortran 90, 95, and recently 2003. Please consult a Fortran tutorial at http://www.dmoz.org/Computers/Programming/Languag e s/Fortran/Tutorials/Fortran_90_and_95/ before spreading misinformation in the future. About ten Fortran 95 compilers exist -- see http://www.dmoz.org/Computers/Programming/Language s/Fortran/Compilers/ .

            To answer your specific assertions: Fortran and most other languag
            • Not C++ (Score:3, Interesting)

              by hummassa ( 157160 )
              I have said and repeat: C++ is not C.

              Your examples, no loop:
              vector<int> v;
              copy(istream_iterator<int>(cin), istream_iterator<int>(), inserter(v, v.begin()));
              copy(v.begin(), v.end(), ostream_iterator<int>(cout));
              • Perhaps I missed something, but I think your C++ example proved his point. The Fortran technique is about 100 times easier for a mid-level programmer to understand, or anyone who hasn't programmed C++ since they actually made templates work.

                Plus, I don't think you customized the formatting of the output as he did. And you aren't printing doubles.
                • I disagree.

                  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

                  vector<int>

                  by

                  vector<double>

                  the second one, adding

                  cout

                  • *I* never said you couldn't do it. It just doesn't convince me that C++ is easier. In fact, it tells me that C++ is becoming ever more baroque and more biased toward the gurus over the years.

                    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
            • Your knowledge of Fortran is based on the outdated Fortran 77 standard. Since then, there have been three standards, Fortran 90, 95, and recently 2003. Please consult a Fortran tutorial at http://www.dmoz.org/Computers/Programming/Languag e s/Fortran/Tutorials/Fortran_90_and_95/ before spreading misinformation in the future. About ten Fortran 95 compilers exist -- see http://www.dmoz.org/Computers/Programming/Language s/Fortran/Compilers/

              It's definitely true the most of the Fortran I've had to work with

    • Besides gfortran, which is part of GCC, there is also the free g95, with compiler binaries for Mac OS X, Linux, and Windows -- see http://www.g95.org/ [g95.org] . G95 currently supports almost all of Fortran 95, unlike gfortran. Absoft sells their own Fortran 95 compiler for Mac OS X, in addition to IBM's -- see http://www.absoft.com/ [absoft.com] . NAG has also has an F95 compiler -- see http://lists.apple.com/archives/scitech/2002/Jul/m sg00076.html [apple.com] .
  • Squeak! (Score:5, Informative)

    by Axello ( 587958 ) on Monday November 22, 2004 @01:43PM (#10890075)
    Squeak is the modern Smalltalk implementation. It supports opengl, quicktime, widgets, networking etc. It is cross platform and runs on Windoze, Linux, other unices, Mac OS X, PDAs etc. http://www.squeak.org/ [squeak.org]
  • SuperCard (Score:5, Interesting)

    by Swedentom ( 670978 ) on Monday November 22, 2004 @02:29PM (#10890527) Homepage
    I'd recommend SuperCard [supercard.us]. When Apple abandoned HyperCard, they left a big void. SuperCard is OS X native and has excellent HC compatibility. Of course, it's far from a HC clone, as it it has all the things you'd expect from a development environment these days.

    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]
  • by javaxman ( 705658 ) on Monday November 22, 2004 @02:33PM (#10890567) Journal
    But with if you want to work in a language other than Objective-C,C, C++ or Java?

    (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.

    • by wirelessbuzzers ( 552513 ) on Monday November 22, 2004 @06:50PM (#10893322)
      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?

      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?
      • by javaxman ( 705658 ) on Monday November 22, 2004 @07:35PM (#10893792) Journal
        I don't know why I even bother, but it beats working...

        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?

        • You want fast and a garbage collector??

          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)

    by Ada95 ( 183169 ) on Monday November 22, 2004 @02:56PM (#10890781) Homepage
    Mac software can de developed in Ada 95 using the GNAT Ada 95 front end for GCC. A description is available at http://www.macada.org/
  • by kerobaros ( 683745 ) on Monday November 22, 2004 @03:29PM (#10891143) Homepage
    ...Metrowerks CodeWarrior series has been with us since the early PowerPC days...

    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.

    • While CW ran on 68k Machines, it wasn't released since the introduction of the first PPCs. I've been told that most of the CW developers have been working in Symantec's THINK C Team before, though.
  • by spir0 ( 319821 ) on Monday November 22, 2004 @04:07PM (#10891511) Homepage Journal
    BlitzMax (the mac version of blitzbasic, but 2d) does not seem to exist yet. rumours date back to 2002, but there is no mention of it on BlitzBasic's product pages.

    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?
  • by SIGFPE ( 97527 ) on Monday November 22, 2004 @07:51PM (#10893933) Homepage
    ...compiler on Macs as it's not a great compiler on x86. Here [mac.com]'s a test I did recently where MSVC can produce code that can easily be about 100 times faster than gcc. So I'd be interested to see what happens with the same code on Macs. I have gcc but I don't have codewarrior. So if someone could run that test for me and post the results I'd be interested.
    • Extra karma for you, SIGFPE. You have dispelled all doubt in my mind that moderators are full of sh*t. I'm going to giggling for a week over this one.

      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.
    • The version of GCC that comes with macs is optimized by Apple. Of course the changes are open-source but they have not been integrated in the main branch of GCC yet.

      In my experience Apple's GCC optimizes better on Macs than the IBM compiler for PowerPC CPUS.
  • realbasic? (Score:5, Informative)

    by hpavc ( 129350 ) on Monday November 22, 2004 @10:03PM (#10894766)
    Realbasic is pretty good, the windows+linux+mac+osx build is nice.
  • Emacs for OSX (Score:3, Informative)

    by omnipotus ( 214689 ) on Tuesday November 23, 2004 @03:27PM (#10902472)
    There is a beautiful port of Emacs to Carbon with a Aqua interface. Emacs of course has modes to handle so many programming language dialects that it makes a great tool for developing on OS X. There have been changes made to the main trunk of the Emacs project so that you can compile your own after checking out the official cvs repository, or you can google yourself up a binary.

Successful and fortunate crime is called virtue. - Seneca

Working...