DIRECTORY IO, ProcessorFace, Rope USING [ROPE], SystemVersion, UXIO USING [CreateStandardStream]; Greet: CEDAR PROGRAM IMPORTS IO, ProcessorFace, UXIO EXPORTS SystemVersion ~ BEGIN verbose: BOOL = FALSE; MachineType: TYPE ~ SystemVersion.MachineType; dateRope: Rope.ROPE = "April 11, 1994"; release: PUBLIC SystemVersion.ReleaseNumber ¬ [major: 10, minor: 1, patch: 3]; greetRopeVerbose: Rope.ROPE ¬ IO.PutFLR[" Welcome to Cedar %g.%g.%g of %g. Copyright (c) 1991 by Xerox Corporation. All rights reserved. Copyright protection claimed includes all forms and matters of copyrightable material and information now allowed by statutory or judicial law or hereinafter granted, including without limitation, material generated from the software programs which are displayed on the screen such as icons, screen display looks, character bitmaps, etc. ", LIST[[integer[release.major]], [integer[release.minor]], [integer[release.patch]], [rope[dateRope]] ] ]; greetRope: Rope.ROPE ¬ IO.PutFLR[" Welcome to Cedar %g.%g.%g of %g. ", LIST[[integer[release.major]], [integer[release.minor]], [integer[release.patch]], [rope[dateRope]] ] ]; GetMachineType: PUBLIC PROC RETURNS [MachineType] ~ { RETURN[ProcessorFace.GetProcessorType[]] }; GetMachineTypeName: PUBLIC PROC [type: MachineType] RETURNS [ATOM] ~ { RETURN[ProcessorFace.GetProcessorTypeName[type]] }; MachineTypeFromName: PUBLIC PROC [name: ATOM] RETURNS [MachineType] ~ { RETURN[ProcessorFace.ProcessorTypeFromName[name]] }; LastMachineType: PUBLIC PROC RETURNS[MachineType] ~ { RETURN[ProcessorFace.LastProcessorType[]] }; Run: PROC ~ { greetStream: IO.STREAM ¬ UXIO.CreateStandardStream[output]; greetStream.PutRope[ greetRope ]; greetStream.Close[]; }; IF verbose THEN Run[]; END. 6Greet.mesa Copyright Σ 1989, 1990, 1991, 1992, 1993, 1994 by Xerox Corporation. All rights reserved. JKF September 12, 1990 4:23:48 pm PDT Michael Plass, July 6, 1993 11:22 am PDT Willie-sue Orr, April 11, 1994 10:17 am PDT Chauser, September 25, 1990 2:20 pm PDT Doug Wyatt, May 20, 1992 4:42 pm PDT Κ;–(cedarcode) style•NewlineDelimiter ˜šœ ™ Icodešœ ΟeœO™ZK™%K™(K™+K™'K™$J™—šΟk ˜ Kšžœ˜Kšœ˜Kšœžœžœ˜K˜Kšžœžœ˜"K˜—K˜šΠlnœžœž˜Kšžœžœž˜Kšžœ˜Kšœž˜K˜šœ žœžœ˜K˜—Kšœ žœ˜.K˜Kšœžœ˜'šœ žœ?˜NK˜—Kš œžœžœ ΟfΉœžœd˜ΝKš œžœžœ  $œžœd˜±K˜šΟnœžœžœžœ˜3Kšœžœ%˜-K˜—š ‘œžœžœžœžœ˜Dšœžœ-˜5K˜——š ‘œžœžœžœžœ˜EKšœžœ.˜6K˜—š‘œžœžœžœ˜3Kšœžœ&˜.K˜—š‘œžœ˜ Kšœ žœžœžœ˜;Kšœ!˜!Kšœ˜K˜K˜K˜—Kšžœ žœ˜—K˜Kšžœ˜—…—ή O