What are the programming languages you have used / are using now to write applications for Mac OS X? What kind of applications have you developed?
Objective-C for Cocoa apps, Flex/Zinc for other apps (cross platform) and PHP/Rails for webby stuff. We also have a cross platform C++ app, but I don't get involved with that :-)
Mostly Ruby and it I were to write a GUI for it, I'd probably use RubyCocoa. There is also this thingy called Shoes to write GUI applications. See there too.
Python, both with and without Cocoa bits.
Objective-C.
ANSI C, Scheme, Prolog and Java - but the stuff I write with these could run anywhere.
Free-pascal/Lazarus for cross-platform applications that I can use easily on Linux/Windows. Mainly command-line number-crunching and signal processing, but the occasional GUI app (ported from Delphi)
The same ones used on any other operating system, with the major exception of Objective-C for Cocoa applications.
You won't find that many operating-system specific languages, so a better question would be about popular frameworks and libraries, especially in the case of GUI stuff.
Personally, I use php and mono (c#) for commandline stuff and Cocoa (objective c) from time to time for UI work.
Haven't been doing much GUI lately, well nothing that wasn't strictly web based anyway.
Mostly, I do automation stuff. for example: Script to keep my desktop clean and the files moved away from it organized.
Last GUI thing I did was a WOW launcher where the user could choose a realmlist file before launching the game. Did a Cocoa version for Mac OS X and a Windows.Forms (c#) version for windows, That was just about when the Burning Cruisade was all the rage.
Python for the desktop/console stuff, and some PHP for the intranet server's app.
Java/groovy for a desktop app, objective-C for iphone, ruby/rails for most other stuff.
I use (mostly) C for command-line stuff, Objective C for GUI things.
For command-line work, I tend to be writing deliberately cross-platform, whereas GUI work is exclusively targeting Mac OS X. I've been programming in C for approaching two decades now, so it's a case of best tool for the job. Really, though, it's a matter of what you're comfortable with and can get the job done and (if it's GUI work) what allows you to produce a decent fluid UI.
I use Python for command-line programs, or C in the rare event that I really need the performance benefit.
Of course, for GUI apps, I use Objective-C in conjunction with Cocoa.
Mostly Java (even though it's a HUGE pain...the Apple version of Java is just different enough in minor aspects that I could never get things working when I had to collaborate with a group of people who primarily worked in Windows). I've also done Python, Lisp, and C++ in the past, as well as various web technologies (JSP, etc).
I'm using Python, PHP and thinking about learning Ruby.
At uni I also used C, Java and Haskell.
One day I want to learn Obj-C but my work doesn't mean I have need to.
Cocoa-Java. It's not very nice and fairly poorly supporter in my opinion, although back in the day Apple claimed it would be almost a first-class application environment.
Java for university assigned work - I'd totally recommend the netbeans IDE!
REALbasic for commercial cross-platform work, currently accounting and warehousing systems.
Objective-C and C++ for desktop apps partly because I'm targetting iPhone and partly because I have a large legacy code base with PowerPlant GUI I'm converting.
Python and Ruby for various utilities including sizeable code generators.
XSLT via the Saxon jars for document conversion including a REALbasic to Java class converter to preprocess for Doxygen.
REALbasic for desktop apps. I've done a lot of graphics/pre-press production utilities with it. RB has really evolved nicely over the past few years. It's worth checking out.
I use Ruby for very quick console based scripts as well as with Rails for web-apps.
I mostly use Perl and C. I'll be delving into GUIs soon, probably with Perl or C using wxWidgets or GTK+. (I'd love to learn Objective-C, but it's syntax seems relatively foreign at first glance, and I'm not sure where to start. Any book or tutorial suggestions on where to start learning Objective-C would be appreciated.)
I know some PHP (it's a huge language, and I have to poke around the manual a lot), but I don't use it. As a scripting language it feels awkward, so I don't get much experience with it outside of slowly building a few websites for myself.
I've also poked around with (forgive me) NASM and assembly language, and I've discovered that OS X's choice to use the Mach-O file format seems horribly misguided (4000 bytes for Hello World - compare to about 400-600 on Linux), but there may be other benefits I just don't see (like the supposed ability to store PowerPC and Intel code in the same executable). Assembly on OS X is like assembly on *BSD, except for NASM you use -f macho
instead of -f aout
. Otherwise, the kernel calls are the same, as is the calling convention. But a lot of assembly coders don't touch OS X, and so it's hard to find good OS X assembly code to learn from. Just so you know.
All my Mac OS X development is done using REALbasic. I primarily build database applications for my consulting clients.
I use RealBasic. Object Oriented Language, Cross-Platform with the ability to use external declares if needed. The company has a 90-day release policy that helps improves stability and capability over time. I'd highly recommend it.
I use Objective-C for iPhone development. XCode is terrific, but not inherently cross-platform.
Also, the support community around RealBasic is as good as any out there. This can't be underestimated.