Nu | |
Designer: | Tim Burks |
Developer: | Tim Burks |
Latest Release Version: | 2.3.0 |
Influenced By: | Lisp, Objective-C, Ruby |
Typing: | dynamic |
Paradigm: | structured, imperative, functional, object-oriented |
Platform: | x86 |
Operating System: | OS X |
License: | Apache, v. 2.0 |
Nu is an interpreted object-oriented programming language, with a Lisp-like syntax, created by Tim Burks as an alternative scripting language to program OS X through its Cocoa application programming interface (API). Implementations also exist for iPhone and Linux.
The language was first announced at C4,[1] a conference for indie Mac developers held in August 2007.
This Nu code defines a simple complex numbers class.
(- initWithReal:(double) x imaginary:(double) y is (super init) (set @real x) (set @imaginary y) self))
The example is a basic definition of a complex number: it defines the instance variables, and a method to initialize the object. It shows the similarity between the code in Nu and the equivalent in Objective-C; it also shows the similarity with Ruby.
(unless @icon_files (set @icon_files (array "#/share/nu/resources/nu.icns")))
This sample, from the nuke tool bundled with Nu, also shows the influence of Objective-C, Lisp, and Ruby in the design of the language.