일부 부품으로 도면 패키지를 작성하고 있으며 연산자와 데이터 유형이 흩어져 있습니다. 그러나 사용자가 매번 해당 모듈을 추가하는 것을 원하지 않습니다. 예를 들어, Point
클래스, Monoid
역할 및 Style
클래스가 다른 경로에 있기 때문에 상당히 지저분 합니다.
unit module Package::Data::Monoid;
# $?FILE = lib/Package/Data/Monoid.pm6
role Monoid {...}
unit module Package::Data::Point;
# $?FILE = lib/Package/Data/Point.pm6
class Point {...}
unit module Package::Data::Style;
# $?FILE = lib/Package/Data/Style.pm6
class Style {...}
나는
그런 스크립트를 쓸 수있는 효과와 haskell
같은 서곡 을 갖고 싶다lib/Package/Prelude.pm6
use Package::Prelude;
# I can use Point right away, Style etc...
대신에
use Package::Data::Style;
use Package::Data::Point;
use Package::Data::Monoid;
# I can too use point right away, but for users not knowing the
# inner workings it's too overwhelming
나는 많은 것을 시도했다.
- 이 버전은 나에게 올바른 효과를 제공하지 않습니다. 나는 가리킬 전체 경로를 입력해야합니다
Package::Data::Point
.
unit module Package::Prelude;
# $?FILE = lib/Package/Prelude.pm6
use Package::Data::Style;
use Package::Data::Point;
use Package::Data::Monoid;
- 이 버전은
Point
바로 나에게 제공 하지만 연산자와 관련된 문제가 발생합니다. 또한 언급 된 예제 패키지의 내 보낸 루틴의 모든 것을 자동으로 추가하고 싶습니다.
# $?FILE = lib/Package/Prelude.pm6
use Package::Data::Style;
use Package::Data::Point;
use Package::Data::Monoid;
sub EXPORT {
hash <Point> => Point
, <Style> => Style
, <mappend> => &mappend
...
}
당신은 사람들이 그런 전주곡 같은 파일을 얻는 더 좋고 빠른 방법을 알고 있습니까?
unit class Package::Data::Point
. 을 사용할 필요는 없습니다module
.