Changeset 2629
- Timestamp:
- 05/02/05 19:26:05 (4 years ago)
- svk:copy_cache_prev:
- 4152
- Files:
-
- 7 added
- 4 modified
-
Makefile.PL (modified) (2 diffs)
-
README (modified) (1 diff)
-
inc/Module/Install/Pugs.pm (modified) (1 diff)
-
src/Pugs/Eval.hs (modified) (5 diffs)
-
src/pge (added)
-
src/pge/pge.h (added)
-
src/pge/pge_gen.c (added)
-
src/pge/pge_opt.c (added)
-
src/pge/pge_parse.c (added)
-
src/pge/pge_parseglob.c (added)
-
src/pge/pge_parsep5.c (added)
Legend:
- Unmodified
- Added
- Removed
-
Makefile.PL
r2622 r2629 93 93 my $pcre_c = "src/pcre/pcre.c"; 94 94 my @syck_c = glob("src/syck/*.c"); 95 my @pge_c = glob("src/pge/*.c"); 95 96 my $pcre = "src/pcre/pcre.o"; 96 97 my @syck = map { substr($_, 0, -1) . 'o' } @syck_c; 98 my @pge = map { substr($_, 0, -1) . 'o' } @pge_c; 97 99 my $unicode = "src/UnicodeC.o"; 98 100 my $unicode_c = "src/UnicodeC.c"; 99 101 100 my @prereqs = ($config_h, $pcre, @syck, $unicode);101 $ghc_output .= " $pcre @syck $unicode";102 my @prereqs = ($config_h, $pcre, @syck, @pge, $unicode); 103 $ghc_output .= " $pcre @syck @pge $unicode"; 102 104 103 105 my $config = get_pugs_config(); … … 126 128 \$(NOOP) 127 129 128 @{[join("\n", map {$emit->($_)} ($unicode_c, $pcre_c, @syck_c ))]}130 @{[join("\n", map {$emit->($_)} ($unicode_c, $pcre_c, @syck_c, @pge_c))]} 129 131 130 132 src/Pugs/Config.hs : util/PugsConfig.pm -
README
r2621 r2629 13 13 14 14 Pugs is Copyright 2005 by Autrijus Tang. All Rights Reserved. 15 16 The "PGE" subsystem is derived from PGE by Patrick Michaud, 17 under the Perl license. See src/pge/README. 15 18 16 19 The "PCRE" subsystem is derived from PCRE 5.0 by Philip Hazel, -
inc/Module/Install/Pugs.pm
r2621 r2629 163 163 . 164 164 } 165 my $ghc_flags = "-H0 -L. -Lsrc -Lsrc/syck -Lsrc/p cre -I. -Isrc -Isrc/pcre -Isrc/syck";166 $ghc_flags .= " -i. -isrc -isrc/pcre -isrc/syck - static ";165 my $ghc_flags = "-H0 -L. -Lsrc -Lsrc/syck -Lsrc/pge -Lsrc/pcre -I. -Isrc -Isrc/pcre -Isrc/syck -Isrc/pge"; 166 $ghc_flags .= " -i. -isrc -isrc/pcre -isrc/syck -isrc/pge -static "; 167 167 $ghc_flags .= " -Wall -Werror " 168 168 unless $self->is_extension_build; -
src/Pugs/Eval.hs
r2615 r2629 36 36 syms <- initSyms 37 37 glob <- newTVar (combine (pad ++ syms) $ mkPad []) 38 return $ Env38 return $ MkEnv 39 39 { envContext = CxtVoid 40 40 , envLexical = mkPad [] … … 508 508 flag_i <- fromAdverb hv ["i", "ignorecase"] 509 509 when (not p5) $ do 510 fail "Perl 6 rules is not implemented yet, use :P5" 510 parsed <- liftIO $ parseRule ("(" ++ encodeUTF8 str ++ ")") 511 let banner = "\n*** Perl 6 rules support coming soon...\n" 512 error $ banner ++ parsed ++ banner 511 513 retVal $ VRule $ MkRule 512 514 { rxRegex = mkRegexWithPCRE (encodeUTF8 str) $ … … 788 790 -- XXX - what about defaulting that depends on a junction? 789 791 doApply :: Env -> VCode -> [Exp] -> [Exp] -> Eval Val 790 doApply Env{ envClasses = cls }sub@MkCode{ subBody = fun, subType = typ } invs args =792 doApply env sub@MkCode{ subBody = fun, subType = typ } invs args = 791 793 case bindParams sub invs args of 792 794 Left errMsg -> fail errMsg … … 836 838 v <- eval 837 839 typ <- evalValType v 840 let cls = envClasses env 838 841 if isaType cls "Junction" typ then return v else do 839 842 case (lv, rw) of … … 853 856 return $ genericDrop n (concat elms :: [Val]) 854 857 isCollapsed typ 855 | isaType cls"Bool" typ = True856 | isaType cls"Junction" typ = True858 | isaType (envClasses env) "Bool" typ = True 859 | isaType (envClasses env) "Junction" typ = True 857 860 | otherwise = False 858 861
