-- Poplar.model
-- last edited August 3, 1983 10:18 am
LET @OSBasics.modelBcd IN
LET @CedarBasics.model!2606162699 IN
LET [
    ConvertUnsafe: TYPE~@ConvertUnsafe.bcd[],
    RefText: TYPE~@RefText.bcd[],
    RTTypesBasic: TYPE~@RTTypesBasic.bcd[],
    System: TYPE~@System.bcd[],
    ViewerIO: TYPE ~@ViewerIO.bcd[]
    ] IN

  LAMBDA [ 
	ConvertUnsafeImpl: ConvertUnsafe,
	DirectoryImpl: Directory,
	FileImpl: File,
	FileIOImpl: FileIO,
	InlineImpl: Inline,
	IOImpl: IO,
	ProcessImpl: Process,
	RefTextImpl: RefText,
	RopeImpl: Rope,
	RTTypesBasicImpl: RTTypesBasic,
	SafeStorageImpl: SafeStorage,
	SpaceImpl: Space,
	ViewerIOImpl: ViewerIO
	] => [] IN
    REC [
      PString: TYPE~@PString.mesa!2576354169[Rope,"bjn"][];
      PL: TYPE~@PL.mesa!2605973442[IO,PString,Rope,"bjn"][];
      Disp: TYPE~@Disp.mesa!2576351876[PL,Rope,"bjn"][];
      PStringImpl: PString~@PStringImpl.mesa!2605104398[ConvertUnsafe,Directory,File,
	IO,PL,Process,PString,Rope,RTTypesBasic,Space,"bjn"][ConvertUnsafeImpl,DirectoryImpl,
	FileImpl,IOImpl,PLImpl,ProcessImpl,RopeImpl,RTTypesBasicImpl,SpaceImpl];
      DispImpl: Disp~@DispImpl.mesa!2576354366[Disp,IO,PL,PString,Rope,SafeStorage,
	"bjn"][PLImpl,PStringImpl,RopeImpl,IOImpl,SafeStorageImpl];
      WindowProcInt: TYPE~@WindowProcInt.mesa!2576350075[IO,Rope,"bjn"][];
      WindowProcIntImpl: WindowProcInt~@WindowProcImpl.mesa!2590695151[IO,Process,Rope,
	ViewerIO,WindowProcInt,"bjn"][ProcessImpl,IOImpl,ViewerIOImpl];
      Route: TYPE~@Route.mesa!2576352241[PL,"bjn"][];
      RouteImpl1: Route~@RouteImpl1.mesa!2576354837[Disp,IO,PL,PString,Rope,Route,"bjn"]
	[DispImpl,PLImpl,PStringImpl,RopeImpl];
      RouteImpl2: Route~@RouteImpl2.mesa!2605106165[ConvertUnsafe,Directory,File,FileIO,
	IO,PL,PString,RefText,Rope,Route,System,"bjn"][FileIOImpl,RopeImpl,RefTextImpl,
	ConvertUnsafeImpl,PLImpl,PStringImpl,IOImpl,DirectoryImpl];
      PLImpl1: PL~@PLSupImpl.mesa!2605973337[Inline,PL,PString,Rope,SafeStorage,"bjn"]
	[PLImpl,PStringImpl,SafeStorageImpl,RopeImpl];
      PLImpl2: PL~@PLEvalImpl.mesa!2602518872[Disp,IO,PL,Process,PString,Rope,Route,
	"bjn"][PLImpl,PStringImpl,DispImpl,RouteImpl,ProcessImpl,RopeImpl,IOImpl];
      PLImpl3: PL~@PLStoreImpl.mesa!2602518924[Environment,PL,Rope,"bjn"][PLImpl,RopeImpl];
      PLImpl4: PL~@PLParseImpl.mesa!2602532061[Disp,IO,PL,PString,Rope,"bjn"][DispImpl,
	PStringImpl,PLImpl,RopeImpl,IOImpl];
      [Main: CONTROL, PLImpl5: PL]~@PLImpl.mesa!2603202980[Disp,IO,PL,PString,Rope,Route,
	SafeStorage,WindowProcInt,"b-jn"][DispImpl,PStringImpl,PLImpl,RouteImpl,SafeStorageImpl,
	IOImpl,RopeImpl,WindowProcIntImpl];
      RouteImpl: Route~RouteImpl1+RouteImpl2;
      PLImpl: PL~PLImpl1+PLImpl2+PLImpl3+PLImpl4+PLImpl5
      ]