Nu (프로그래밍 언어)

리스프 계열 문법을 사용하는 인터프리터 방식의 객체 지향 프로그래밍 언어

Nu리스프 계열 문법을 사용하는 인터프리터 방식의 객체 지향 프로그래밍 언어이며, 개발자는 팀 벅스이다. 코코아 API를 통해 macOS를 프로그래밍하는 스크립트 언어의 다른 대안이다. 아이폰리눅스용 구현체도 존재한다.

Nu
패러다임구조적, 명령형, 함수형, 객체 지향
설계자팀 벅스(Tim Burks)
개발자팀 벅스(Tim Burks)
발표일2007년(15년 전)(2007)
최근 버전2.2.2
최근 버전 출시일2017년 4월 17일(5년 전)(2017-04-17)
자료형 체계동적
플랫폼x86
운영 체제macOS
라이선스아파치, v. 2.0
웹사이트programming-nu.github.io
영향을 받은 언어
리스프, 오브젝티브-C, 루비

이 언어는 2007년 8월 인디 맥 개발자들을 위한 콘퍼런스인 C4에서 처음 발표되다.[1]

예시 코드편집

이 Nu 코드는 단순 복소수 클래스를 정의한다.

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

아래 예시는 복소수의 기본 정의이다: 인스턴스 변수를 정의하고 객체를 초기화하기 위한 메소드를 정의한다. Nu의 코드와 오브젝티브-C의 동일 코드 간 유사성을 보여주고 있다. 또, 루비와도 유사성을 보여준다.

(unless @prefix
        (set @prefix
             "#{((((NSProcessInfo processInfo) arguments) 0) dirName)}.."))

(unless @icon_files
        (set @icon_files
             (array "#{@prefix}/share/nu/resources/nu.icns")))

이 샘플은 Nu에 번들링된 "nuke" 도구로부터 비롯된 것으로 언어 설계에 오브젝티브-C, 리스프, 루비 언어가 영향을 미친 것을 보여준다.

같이 보기편집

각주편집

  1. “Burks: Bridges and Beyond”. 2011년 5월 14일에 원본 문서에서 보존된 문서. 2011년 4월 11일에 확인함. 

외부 링크편집