'1급시민'에 해당되는 글 1건

위키피디아에서는 first-class citizen을 다음과 같이 정의하고 있습니다.


In programming language design, a first-class citizen (also typeobjectentity, or value) in a given programming language is an entity which supports all the operations generally available to other entities. These operations typically include being passed as an argument, returned from a function, and assigned to a variable.

- Wikikpedia


  프로그래밍 언어 디자인에서 프로그래밍 언어의 first-class citizen는 다른 엔티티가 일반적으로 사용할 수 있는 모든 작업들을 지원하는 엔티티라고 합니다. 이러한 작업들에는 객체 등을 함수의 인자로 넘기거나, 함수에서 반환하고 변수에 할당할 수 있는 것들이 포함되어 있습니다.



first, second class 객체의 개념은 1960년대 Christopher Strachey에 의해 소개되었습니다. 그는 실제로 용어를 엄격하게 정의하지는 않았지만 ALGOL에서 실제 수와 프로시져를 비교하였습니다.


그는 직접 변수에 할당할 수 있는 실수(real number)가 first-class citizen인 것과 달리 그렇지 못한 프로시저는 second-class citizen이라고 하였습니다.



일반적으로 1급 시민의 조건은 다음과 같이 정의한다고 합니다. (참고)

  • 변수(variable)에 담을 수 있다
  • 인자(parameter)로 전달할 수 있다
  • 반환값(return value)으로 전달할 수 있다



블로그 이미지

NCookie

,