package
지시
둘러보기로 가기
검색하러 가기
package
지시는 패키지 통틀어 최대 한 번만 등장할 수 있으며, 패키지 자체에 대한 정보를 담는다.
--| 모든 나루 코드에 기본으로 `use`되는 패키지. [[system_package]] package naru core { authors := ["나루의 친구들 <[email protected]>"] }
package
지시에는 다음과 같은 요소가 들어 있다.
- 패키지의 문서화 주석. 생략 가능하다.
- 패키지 전체에 적용되는 0개 이상의 속성. (기술적으로는 문서화 주석은 속성의 일종이다.)
- 이 패키지의 패키지 경로.
- 이 패키지가 구현하는 패키지 타입의 패키지 경로. 생략시 이 패키지가 패키지 타입도 동시에 구현한다.
- 메타데이터.
빠른 처리를 위해 package
지시는 주석이나 빈 줄을 제외하고 지시·바인딩을 통틀어 맨 처음으로 나와야 하며, package
예약어가 들어 있는 줄은 세로 공백 문자를 포함해 모두 시작 바이트열에 들어 있어야 한다.
package
지시가 들어 있는 패키지 유닛은 통상 package.n
이라는 이름의 파일명을 가진다.
메타데이터
? 이 지시는 정확히 어떤 메타데이터를 담아야 하는가? 속성이 얼마나 허용되는가? 변수는? 타입은?
? 파이썬처럼 아무 사이트이펙트나 일으킬 수 있는 건가요? node.js처럼 package.json 같은 설정파일의 모습으로 만드는게 좋지 않을까요?