Changeset 7127
- Timestamp:
- 09/24/05 15:28:50 (3 years ago)
- Files:
-
- 24 modified
-
docs/journal/2005-09-22.kwid (modified) (2 props)
-
docs/notes/theory.pod (modified) (2 props)
-
lib/pugs/run.pod (modified) (1 diff)
-
perl5/PIL2JS/runjs.pl (modified) (3 diffs)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder.pm (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Output.pm (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Test.pm (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/TestPlan.pm (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Tester.pm (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/001_load.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/010_Test_Builder.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/020_Test_Builder_Test.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/021_Test_Builder_Test_Pass.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/022_Test_Builder_Test_Fail.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/023_Test_Builder_Test_Skip.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/024_Test_Builder_Test_TODO.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/030_Test_Builder_Output.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/040_Test_Builder_TestPlan.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/050_Test_Builder_Tester.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/t/33_BUILD.t (modified) (2 props)
-
perl5/Perl6-MetaModel2.0/t/34_nested_parameterized_classes.t (modified) (2 props)
-
src/Main.hs (modified) (1 diff)
-
src/Pugs/CodeGen.hs (modified) (2 diffs)
-
src/Pugs/Help.hs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
docs/journal/2005-09-22.kwid
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
docs/notes/theory.pod
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
lib/pugs/run.pod
r6926 r7127 70 70 71 71 causes Pugs to execute the program using C<I<backend>>. Currently, valid 72 backends are C<Parrot> and C<PIR>.73 74 T he JavaScript backend (PIL2JS) provides an interactive shell in75 F<perl5/PIL2JS/jspugs.pl>; The interactive compiler and evaluator of the Perl 5 76 backend (PIL-Run) can be found in F<perl5/PIL-Run/crude_repl.pl>.72 backends are C<Parrot>, C<PIR>, C<Perl5>, and C<JS>. 73 74 To start the interactive shell of a backend, run C<pugs -BI<backend>>, but note 75 that currently only the Perl 5 and JavaScript backends provide interactive 76 shells. 77 77 78 78 The normal runcore supports more features than the other runcores, the Parrot 79 backend is quite fast, PIL2JS is good on binding and references, and PIL-Run80 offers excellent support for laziness.79 backend is quite fast, the JavaScript backend is good on binding and 80 references, and Perl 6 on Perl 5 offers excellent support for laziness. 81 81 82 82 =item C<-CI<backend>> 83 83 84 84 causes Pugs to compile the program using C<I<backend>>. Currently, valid 85 backends are C<Pugs>, C<Parrot>, C<PIR>, C<Haskell>, and C<PIL> with its85 backends are C<Pugs>, C<Parrot>, C<PIR>, C<Haskell>, C<JS>, and C<PIL> with its 86 86 variants C<Perl5>, C<JSON>, and C<Binary>. 87 87 -
perl5/PIL2JS/runjs.pl
r6693 r7127 37 37 "p6prelude=s" => \$PIL2JS::cfg{prelude}, 38 38 "testpc=s" => \$PIL2JS::cfg{testpc}, 39 "compile-only" => \my $compile_only, 39 40 "help" => \&usage, 40 41 ) and @pugs_args or usage(); … … 58 59 @pugs_args 59 60 )); 61 print($js), exit if $compile_only; 60 62 run_js($js); 61 63 #run_js_on_jssm($js); … … 78 80 --pil2js=/path/to/pil2js.pl (usually in perl5/PIL2JS/) 79 81 --p6prelude=/path/to/lib6/Prelude/JS.pm (usually in perl5/PIL2JS/lib6/) 80 --p6preludepc=/path/to/preludepc.js ( compile using81 perl5/PIL2JS/jspugs.pl)82 --p6preludepc=/path/to/preludepc.js (automatically created) 83 --compile-only 82 84 --help 83 85 EOF -
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder.pm
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Output.pm
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Test.pm
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/TestPlan.pm
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/lib/TestBuilder/Tester.pm
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/001_load.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/010_Test_Builder.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/020_Test_Builder_Test.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/021_Test_Builder_Test_Pass.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/022_Test_Builder_Test_Fail.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/023_Test_Builder_Test_Skip.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/024_Test_Builder_Test_TODO.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/030_Test_Builder_Output.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/040_Test_Builder_TestPlan.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/ext/Test-Builder/t/050_Test_Builder_Tester.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/t/33_BUILD.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
perl5/Perl6-MetaModel2.0/t/34_nested_parameterized_classes.t
- Property svn:mime-type set to text/plain; charset=UTF-8
- Property svn:eol-style set to native
-
src/Main.hs
r7117 r7127 79 79 run ("-c":file:_) = readFile file >>= doCheck file 80 80 81 run ("-C":backend:args) | map toUpper backend == "JS" = 82 doHelperRun "JS" ("--compile-only":args) 81 83 run ("-C":backend:"-e":prog:_) = doCompileDump backend "-e" prog 82 84 run ("-C":backend:file:_) = slurpFile file >>= doCompileDump backend file 83 85 84 run ("-B":backend:args) = doHelperRun backend args 86 run ("-B":backend:args) | (== map toLower backend) `any` ["js","perl5"] = 87 doHelperRun backend args 88 run ("-B":backend:"-e":prog:_) = doCompileRun backend "-e" prog 89 run ("-B":backend:file:_) = slurpFile file >>= doCompileRun backend file 85 90 86 91 run ("--external":mod:"-e":prog:_) = doExternal mod "-e" prog -
src/Pugs/CodeGen.hs
r6250 r7127 28 28 generators :: Map String Generator 29 29 generators = Map.fromList $ 30 [ ("G hc", genGHC)30 [ ("GHC", genGHC) 31 31 , ("Parrot", genPIR) 32 , ("P ir", genPIR)33 , ("P il", genPIL)34 -- , ("P il2", genPIL2)32 , ("PIR", genPIR) 33 , ("PIL", genPIL) 34 -- , ("PIL2", genPIL2) 35 35 , ("Perl5", genPerl5) 36 36 , ("Pugs", genPugs) 37 37 , ("Binary", genBinary) 38 , ("J son", genJSON)39 -- , ("X ml", genXML)38 , ("JSON", genJSON) 39 -- , ("XML", genXML) 40 40 ] 41 41 … … 44 44 45 45 norm :: String -> String 46 norm "" = "" 47 norm (x:xs) = toUpper x : map toLower xs 46 norm = norm' . map toLower 47 where 48 norm' "ghc" = "GHC" 49 norm' "parrot" = "Parrot" 50 norm' "pir" = "PIR" 51 norm' "pil" = "PIL" 52 -- norm' "pil2" = "PIL2" 53 norm' "perl5" = "Perl5" 54 norm' "pugs" = "Pugs" 55 norm' "binary" = "Binary" 56 norm' "json" = "JSON" 57 -- norm' "xml" = "XML" 58 norm' x = x 48 59 49 60 doLookup :: String -> IO Generator -
src/Pugs/Help.hs
r5447 r7127 17 17 import Pugs.Version 18 18 import Pugs.CodeGen (backends) 19 import Data.List (sort) 19 20 20 21 printInteractiveHelp :: IO () … … 51 52 putStrLn "See documentation of pugs::run for more help." 52 53 where 53 backendsStr = foldr1 addComma backends54 backendsStr = foldr1 addComma $ sort ("JS":backends) 54 55 addComma w s = w ++ (',':' ':s) 55 56
