Programming

(and scripting)

OS X and Macintosh applications

 

APPLE's tools: for a description of Cocoa, XCode, Interface Builder, AppleScript, Script Editor and AppleScript Studio, please visit Apple’s web site, including Apple Developer Connection.


Other resources: MacPorts 1.5.2


APLX 4.0

From the site: "APL is a unique, general-purpose high level programming language used in application areas such as financial planning, market research, statistics, management information and for all types of scientific and engineering work. APLX is an advanced, second generation implementation of the APL language, closely based on IBM's APL2, but with a number of important enhancements..."


B-PROLOG 7.1 (Afany Software)

A PROLOG language working in Darwin. From the site: "... a versatile and efficient constraint logic programming (CLP) system".


Chipmunk Basic 3.6.4 beta 8 (Ron Nicholson)

From the web page: "Chipmunk Basic for Mac OS is an old fashioned Basic interpreter which runs on almost all Macs, and is accelerated for PowerMacs. Supported features include AppleScript, Drag & Drop, graphics, sprites, sound, speech and OOP (object oriented programming). Runs on systems from System 6.0.7 thru Mac OS X 10.4".


CocoaBasic 2.5t2 (DSITRI)

Interactive Cocoa development tool using BASIC.


CocoaSqueak 3.2.4 (Meta Object)

Squeak is an open Smalltalk-80 implementation written entirely in Smalltalk. This is a Cocoa version of Squeak. It can be downloaded here.


DrScheme 371

From the site: "DrScheme is an interactive, integrated, graphical programming environment for the Scheme, MzScheme, and MrEd programming languages."


ERLANG 10.3.5 (Open Source Erlang)


F-Script 1.3.5 / 2.0 alpha

From the site: "F-Script is a lightweight object-oriented scripting layer specifically designed for the Mac OS X object system (i.e. Cocoa). F-Script provides scripting and interactive access to Cocoa frameworks and custom Objective-C objects. It aims to be a useful and fun tool for both beginners and experts, allowing to interactively explore, test and use Cocoa-based objects and frameworks. Based on Smalltalk, F-Script provides a pure object-oriented environment that leverage Mac OS X technologies and includes significant innovations, like a high-level model for object manipulation and a graphical object browser."


FutureBASIC 4 release 4 (Staz Software)

Venerable BASIC implementation for the Mac.


METAL 1.7.3 (Galactic Dreams Software)

From the site: "METAL is a 100% free extended BASIC language metacompiler for Mac."


Mozart 1.3.2 (Mozart)

From the page: "The Mozart Programming System is an advanced development platform for intelligent, distributed applications. The system is the result of a decade of research in programming language design and implementation, constraint-based inference, distributed computing, and human-computer interfaces. As a result, Mozart is unequaled in expressive power and functionality."

Also: "Mozart is based on the Oz language, which supports declarative programming, object-oriented programming, constraint programming, and concurrency as part of a coherent whole".


Omikron Basic 8 (Berkhan Software)

From the site: “Omikron Basic is a multipurpose programming language, which is easy to learn and allows even beginners to write their own programs after a short time. For most projects, there is no need for internal knowledge of the Macintosh operating system. Omikron Basic doesn't need complicated project definitions. Simply open a new code window and start to write your program. Omikron Basic has short turnaround periods because you can test your programs immediately by using 'Compile & RUN' and/or 'Debug'. With 'Compile & RUN' programs can be tested immediately. Omikron Basic generates compact PowerPC code as fast as greased lightening. Small programs remain small after compilation; the compiler can remove unused program parts automatically. Omikron Basic allows modular programming by using procedures and functions. Global and local variables enable recursive programming. Multi-Window-Editing: One Program can be worked at in many different windows. You don´t need to scroll to and from anymore. Programs without their own window management, using INPUT and PRINT for input and output, run cleanly in a multitasking environment as well due to the Omikron Basic output windows. This option is especially suitable for older programs or small tests since it is not necessary to program a graphical user interface in these cases.


Pro Fortran 9.5 (Absoft Corporation)

Nothing like Fortran for mathematical computing. This is an implementation with history and excellent track record.


Python 2.5.2 (The Python Group) and PyObjC 1.4 (PyObjC Project)

The classic powerful scripting language and the bridge (PyObjC) that allows full featured Cocoa applications to be written in Python. See the sites for details.

Python resources:

  1. NumPy 1.0.4

  2. SciPy 0.6

  3. And many more (not all listed there, e.g., PsychoPy 0.93.1)


Qu-Prolog 7.4 (The University of Queensland, Australia)

From the site: "Qu-Prolog is an extended Prolog designed primarily as a prototyping language and tactic language for interactive theorem provers. It is the implementation language for the Ergo theorem prover.  Qu-Prolog provides support for symbolic computation on notations which appear in mathematics and in specification languages such as Z. Highlights include support for arbitrary quantifiers with parallel bindings and optional typing information, and support for higher-order notations such as function-valued expressions. The unification algorithm is correspondingly extended to support these features. Qu-Prolog is multi-threaded and provided high-level communication between threads, processes and machines. Together, these features provide a simple, yet powerful mechanism for agent programming."


Ready LISP 1.0.12 (New Artisans LLC; John Wiegley)

From the site: “What is Ready Lisp?  It’s a binding together of several popular Lisp packages for OS X, including: Aquamacs, SBCL and SLIME.  Once downloaded, you’ll have a single application bundle which you can double-click — and find yourself in a fully configured Common Lisp REPL.  It’s ideal for OS X users who want to try out Lisp with a minimum of hassle.”


REALbasic 2008 release 3.1 (REAL software)

A modern object oriented BASIC but with strong graphical environment and database capabilities (has its own database engine and is compatible with Valentina for REALbasic; see database tools). Integration with Microsoft Office. Development on Mac OS classic, OS X & Windows.


Revolution Studio 2.9 and Revolution Media (Runtime Revolution)

Revolution, technically, is more about scripting than programming, although Apple mentions Revolution on their list of development environments. Revolution uses a new xTalk script (Transcript) and the MetaCard engine. It is therefore fast and cross-platform. It has great potential for front end to MySQL. Among the xTalk languages, Revolution seems to have an edge for database development and simplicity with power.


Ruby 1.8.6

From the site: “A dynamic, open source programming language with a focus on simplicity and productivity. It has an elegant syntax that is natural to read and easy to write.”


Self 4.2.1 (Sun Microsystems)

Self is a SmallTalk-like language (object oriented). Information on the language here.


SICStus Prolog 4.0.2

From the site: "SICStus Prolog is a state-of-the-art, ISO standard compliant, Prolog development system ... SICStus is built around a high performance Prolog engine with optional native code generation for Sparc processors. SICStus Prolog is efficient and robust for large amounts of data and large applications."


Smile full edition (SmileLab) and Smile 3.3.1 (Satimage)

More about Smile's features here. See also "Why use Smile?". From the company: SmileLab is an integrated working and production environment to view and analyze numerical data of any sizes, and produce professional graphical documents.

SmileLab provides for the three steps of scientific production:

  1. Data processing: import/export and maths on numbers and arrays are built-in, and you can run any pre-existing executable as in Terminal.

  2. Data visualization: high-quality 1d, 2d, and 3d plots, exportable as many different formats.

  3. Graph finalization: a unique programmable vectorial graphic library enables any custom enrichment of a graph.

SmileLab's primary specificity is the 100% AppleScriptable design of the Smile platform. Whatever you do in SmileLab can be made into a script, thus re-used, included in a larger project or workflow, and automated.

New in Smile 3.2: Smile's plot interface was completely revamped - you can now extract data from files, generate data, program computations, visualize your data and change display settings, all in the same user-friendly interface. Once saved on disk, you can reopen the plot and easily adapt it to some other set of data. Watch a video showing the main features. This new version of Smile introduces XNF version 2.0. XNF is a file data format for storing binary 1D, 2D, and 3D arrays, using an XML tree as its table of contents.


Squeak 3.10.2 (Squeak.org)

This is a carbon implementation of Squeak, an open Smalltalk-80 implementation written entirely in Smalltalk.


SuperCard 4.6.3 v2 (Solutions Etcetera)

A big come back for SuperCard, especially timely considering that HyperCard seems to be definitively abandoned by Apple. Mac OS X and Classic versions available. The xCard application that won't die. Usually labeled "HyperCard on steroids". Script: SuperTalk (similar to HyperTalk). See the MacWorld (4.5 mice!) review (April 2003).


SWI-Prolog 5.6

From the site: "SWI-Prolog is a Free Software Prolog compiler, licensed under the Lesser GNU Public License. Together with its graphics toolkit XPCE, its development started in 1987 and has been driven by the needs for real-world applications. Being free, small and standard compliant, SWI-Prolog has become very popular for education. After changing to a coherent and open license policy commercial application is quickly growing."


TNT Basic 1.3.1 (TNT Basic)

From the site: "TNT Basic allows anyone, regardless of previous experience, to make games for the Macintosh. It is amazingly easy to use development environment allows you to compose all your game's graphics, sounds, music and code with simplicity and ease. "


CINCOM SmallTalk ObjectStudio 8 (formerly VisualWorks SmallTalk)

From the site: "The VisualWorks suite is the premier Smalltalk toolset for building instantly portable server, web-based, and client/server applications. With connectivity to all major relational databases, object databases, and internet standard protocols, VisualWorks offers a complete solution for Windows® (95/98/ME/NT/2000), PowerMac, Intel Linux, AIX, SGI Irix, Compaq UNIX, HP-UX, and Solaris. With the most, well-respected, high-performance virtual machine architecture, VisualWorks is the preferred choice for internet development".


XGP 1.0.0 (PowerPC), and 1.1.0 (Intel)

From the site: "XGP is an integrated development environment the extends gprolog to work with Cocoa under Macintosh OS X (10.2.3 or later). A primary motivation of XGP is to provide the basic user interface and graphics facilities found in LPA's MacProlog32."


XL C A and XL C++ 6.0 (IBM) (not supported in Tiger)

OSX OS X Macintosh Mac Apple