Changeset 5592
- Timestamp:
- 07/14/05 15:26:31 (3 years ago)
- svk:copy_cache_prev:
- 7591
- Files:
-
- 7 modified
-
docs/notes/plan (modified) (1 diff)
-
docs/yaht.kwid (modified) (1 diff)
-
perl5/Perl6-MetaModel/t/31_Submethod.t (modified) (2 props)
-
src/Pugs/AST/Internals.hs (modified) (2 diffs)
-
src/Pugs/Junc.hs (modified) (1 diff)
-
src/Pugs/Monads.hs (modified) (5 diffs)
-
util/gen_prelude.pl (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
docs/notes/plan
r5519 r5592 122 122 Aside from code generation, each backend will need a runtime that 123 123 implements the builtin operations and functions not provided by the 124 Perl 6 prelude. In addition, the new backend will require a native124 Perl 6 Prelude. In addition, the new backend will require a native 125 125 implementation of the Perl 6 object metamodel. 126 126 -
docs/yaht.kwid
r1003 r5592 343 343 must be specified using options on the command line, in the 344 344 environment or in the registry. 345 * The prelude file is loaded. The interpreter will look for the prelude346 file on the path specified by the -P option. If the prelude, located345 * The Prelude file is loaded. The interpreter will look for the Prelude 346 file on the path specified by the -P option. If the Prelude, located 347 347 in the file Prelude.hs, cannot be found in one of the path 348 348 directories or in the current directory, then Hugs will terminate; 349 Hugs will not run without the prelude file.349 Hugs will not run without the Prelude file. 350 350 * Program files specified on the command line are loaded. The effect of 351 351 a command hugs `f1 ... fn` is the same as starting up Hugs with the -
perl5/Perl6-MetaModel/t/31_Submethod.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
src/Pugs/AST/Internals.hs
r5556 r5592 760 760 If it evaluates to /too many/ args, the call will fail. 761 761 762 This needs to be a list (rather than a @Maybe@) because Perl 6's @.assuming@762 This needs to be a list (rather than a @Maybe@) because Perl 6's @.assuming@ 763 763 (i.e. explicit currying) means that a sub can have its arguments bound in 764 764 separate stages, and each of the bindings needs to be checked. … … 1283 1283 defined VUndef = False 1284 1284 defined _ = True 1285 -- | Produce an undefined Perl 6 value (i.e. 'VUndef').1285 -- | Produce an undefined Perl 6 value (i.e. 'VUndef'). 1286 1286 undef :: VScalar 1287 1287 undef = VUndef -
src/Pugs/Junc.hs
r5588 r5592 194 194 195 195 Note that 'argCollapsed' is set to @True@ only if the corresponding sub param 196 is explicitly specified as accepting the Perl 6 type @Junc@.196 is explicitly specified as accepting the Perl 6 type @Junc@. 197 197 -} 198 198 data ApplyArg = ApplyArg -
src/Pugs/Monads.hs
r5498 r5592 34 34 35 35 {-| 36 Perform the specified evaluation in the specified (Perl 6) context ('Cxt').36 Perform the specified evaluation in the specified (Perl 6) context ('Cxt'). 37 37 38 38 (Subsequent chained 'Eval's do /not/ see this new scope.) … … 42 42 43 43 {-| 44 Evaluate the specified wxpression in the specified (Perl 6) context ('Cxt').44 Evaluate the specified wxpression in the specified (Perl 6) context ('Cxt'). 45 45 46 46 (Subsequent chained 'Eval's do /not/ see this new scope.) … … 124 124 125 125 {-| 126 Generate a new Perl 6 operation from a Haskell function, give it a name, and126 Generate a new Perl 6 operation from a Haskell function, give it a name, and 127 127 generate a @('Pad' -> 'Pad')@ transformer that can be used to install it into 128 128 a pad. … … 151 151 152 152 {-| 153 Generate a Perl 6 primitive that, when called, will activate the /current/153 Generate a Perl 6 primitive that, when called, will activate the /current/ 154 154 continuation (i.e. one that can be used to immediately break out of whatever 155 155 evaluation we are about to perform). This is great for @&last@ and the like. … … 169 169 170 170 {-| 171 Create a Perl 6 @&?BLOCK_EXIT@ function that, when activated, breaks out of171 Create a Perl 6 @&?BLOCK_EXIT@ function that, when activated, breaks out of 172 172 the block scope by activating the current continuation. The block body 173 173 evaluation is then performed in a new lexical scope with @&?BLOCK_EXIT@ -
util/gen_prelude.pl
r5558 r5592 33 33 34 34 sub null { 35 print STDERR "Generating null prelude... " if $Config{verbose};35 print STDERR "Generating null Prelude... " if $Config{verbose}; 36 36 open my $np, "src/Pugs/PreludePC.hs-null" or 37 die " can't open null prelude: $!";37 die "Couldn't open null Prelude (src/Pugs/PreludePC.hs-null): $!"; 38 38 print while (<$np>); 39 39 print STDERR "done.\n" if $Config{verbose}; … … 41 41 42 42 sub precomp { 43 print STDERR "Generating precompiled prelude... " if $Config{verbose};43 print STDERR "Generating precompiled Prelude... " if $Config{verbose}; 44 44 die "*** Error: $0 needs an already compiled Pugs to precompile the Prelude\n" 45 45 unless $Config{pugs}; … … 119 119 Creates a PreludePC.hs file (written to stdout), to be included by Run.hs. 120 120 121 In the first build phase, a "null" prelude with only placeholder functions121 In the first build phase, a "null" Prelude with only placeholder functions 122 122 is used. In the second phase, the Standard Prelude is precompiled and 123 123 inlined into the resulting pugs executable.
