Nu (programming language)


Nu (programming language)
Nu
Paradigm(s) structured, imperative, object-oriented
Appeared in 2007
Designed by Tim Burks
Developer Tim Burks
Stable release 2.0.1 (September 2, 2011; 2 months ago (2011-09-02))
Typing discipline dynamic
Influenced by Lisp, Objective-C, Ruby
License Apache License, v. 2.0
Website programming.nu

Nu is an interpreted object-oriented programming language, with a Lisp-like syntax, created by Tim Burks as an alternative scripting language to program Mac OS X through its Cocoa application programming interface (API). Implementations also exist for Linux, and iPhone.

The language was first announced at C4,[1] a conference for indie Mac developers held in August 2007.

Although being for the moment confined as a niche tool, possibly because of its Lisp-like syntax,[2] it is generally considered stable,[3] and is notable as part of a recent rise in use of functional programming languages.[4]

Contents

Example code

This Nu code defines a simple complex numbers class.

(class Complex is NSObject
  (ivar (double) real
        (double) imaginary)
 
  (- 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 Nu code and the equivalent Objective-C code; it also shows the similarity with Ruby.

(unless @prefix
        (set @prefix 
             "#{((((NSProcessInfo processInfo) arguments) 0) dirName)}.."))
 
(unless @icon_files 
        (set @icon_files 
             (array "#{@prefix}/share/nu/resources/nu.icns")))

This snippet, from the nuke tool bundled with Nu, also shows the influence of Objective-C, Lisp, and Ruby in the design of the language.

See also

References

External links


Wikimedia Foundation. 2010.

Look at other dictionaries:

  • Programming language — lists Alphabetical Categorical Chronological Generational A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that… …   Wikipedia

  • Programming language theory — (commonly known as PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and programming language features. It is a multi disciplinary field, both… …   Wikipedia

  • Programming Language Design and Implementation — (PLDI) is one of the ACM SIGPLAN s most important conferences. The precursor of PLDI was the Symposium on Compiler Optimization, held July 27–28, 1970 at the University of Illinois at Urbana Champaign and chaired by Robert S. Northcote. That… …   Wikipedia

  • Programming Language for Business — or PL/B is a business oriented programming language originally called DATABUS and designed by Datapoint in the early 1970s as an alternative to COBOL because its 8 bit computers could not fit COBOL into their limited memory, and because COBOL did …   Wikipedia

  • programming language — ➔ language * * * programming language UK US noun [C] ► COMPUTER LANGUAGE(Cf. ↑computer language) …   Financial and business terms

  • programming language — Language Lan guage, n. [OE. langage, F. langage, fr. L. lingua the tongue, hence speech, language; akin to E. tongue. See {Tongue}, cf. {Lingual}.] [1913 Webster] 1. Any means of conveying or communicating ideas; specifically, human speech; the… …   The Collaborative International Dictionary of English

  • Programming Language One — Programming Language One, oft als PL/I (auch PL/1, PL1 oder PLI) abgekürzt ist eine Programmiersprache, die in den 1960er Jahren von IBM entwickelt wurde. Die Bezeichnung PL/1 ist vor allem in Deutschland gebräuchlich. Ursprünglich wurde PL/I… …   Deutsch Wikipedia

  • Programming Language 1 — noun A computer programming language which combines the best qualities of commercial and scientific oriented languages (abbrev PL/1) • • • Main Entry: ↑programme …   Useful english dictionary

  • Programming Language —   [engl.], Programmiersprache …   Universal-Lexikon

  • Programming language specification — A programming language specification is an artifact that defines a programming language so that users and implementors can agree on what programs in that language mean.A programming language specification can take several forms, including the… …   Wikipedia

  • programming language — noun (computer science) a language designed for programming computers • Syn: ↑programing language • Topics: ↑computer science, ↑computing • Hypernyms: ↑artificial language …   Useful english dictionary