base package
기본 패키지
둘러보기로 가기
검색하러 가기
기본 패키지는 런타임이 기본적으로 제공해야 하는 패키지이다.
기본 패키지는 naru
로 시작하는 패키지 경로를 사용한다는 점과, 사용자 입장에서 항상 사용할 수 있다고 기대할 수 있다는 점에서 표준 패키지와 유사하지만, 런타임이 바로 제공하지 않고 외부 라이브러리 등으로 만들 수 있는 표준 패키지와는 달리 기본 패키지는 런타임이 항상 제공해야 한다. 즉 관리 책임이 커뮤니티가 아닌 구현체에게 있다. 물론 나루 구현체는 내부적으로 기본 패키지의 구현에 다른 라이브러리를 사용할 수는 있다.
목록
이름 | 설명 |
---|---|
naru core
|
모든 나루 코드가 기본으로 use하게 되는 패키지. 핵심 타입을 제공한다. |
naru lang
|
나루의 언어 기능을 지원하기 위한 패키지. |
논의
보통 "표준 라이브러리"는 언어의 근간을 이루는 기능과 대부분의 사용자가 널리 사용하지만 언어의 근간은 아닌 기능 두 부분으로 크게 나눌 수 있다. 두 부분은 변경 속도 면에서 차이가 큰데, 이를 하나의 프레임워크로 관리하려는 시도는 한계가 있다(예를 들어 파이썬의 거대한 "표준 라이브러리"는 두 부분을 모두 포함하나, 후자는 오늘날 짐이 된다는 평가가 대부분이다). 따라서 똑같은 패키지 경로를 사용하더라도 관리 주체를 분리하여 후자의 발전이 지체되는 상황을 막기 위하여 표준 패키지로부터 기본 패키지를 분리하였다.
? 기본 패키지와 표준 패키지의 경계선은 무엇인가? 기록/2019-05-25에서 권한 또는 서약에 영향을 받는지의 여부를 기준으로 해야 한다는 얘기가 있었다. (disjukr, kroisse)