Changeset 2029
- Timestamp:
- 04/16/05 15:30:17 (4 years ago)
- svk:copy_cache_prev:
- 3535
- Files:
-
- 3 modified
-
Makefile.PL (modified) (1 diff)
-
src/Pugs/Embed.hs (modified) (1 diff)
-
src/Pugs/Prim.hs (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
Makefile.PL
r2010 r2029 56 56 57 57 my ($ghc, $ghc_version, $ghc_flags) = assert_ghc(); 58 # $ghc_flags .= ' -dcore-lint -ignore-package eval-0.9.8'; 58 # $ghc_flags .= ' -dcore-lint'; 59 $ghc_flags .= " -keep-tmp-files"; 59 60 if (!has_ghc_package('plugins')) { 60 61 warn << '.'; -
src/Pugs/Embed.hs
r2009 r2029 12 12 module Pugs.Embed ( 13 13 module Pugs.Embed.Perl5, 14 --module Pugs.Embed.Haskell14 module Pugs.Embed.Haskell 15 15 -- module Pugs.Embed.Parrot 16 16 -- module Pugs.Embed.Ponie 17 17 ) where 18 18 import Pugs.Embed.Perl5 19 --import Pugs.Embed.Haskell19 import Pugs.Embed.Haskell 20 20 -- import Pugs.Embed.Parrot 21 21 -- import Pugs.Embed.Ponie -
src/Pugs/Prim.hs
r2024 r2029 201 201 opEval False "<eval>" str 202 202 op1 "eval_perl5" = boolIO evalPerl5 203 op1 "eval_haskell" = op1EvalHaskell 203 204 op1 "defined" = op1Cast (VBool . defined) 204 205 op1 "last" = \v -> return (VError "cannot last() outside a loop" (Val v)) … … 375 376 op1 "log10" = op1Cast (VNum . logBase 10) 376 377 op1 other = return . (\x -> VError ("unimplemented unaryOp: " ++ other) (App other [Val x] [])) 378 379 op1EvalHaskell :: Val -> Eval Val 380 op1EvalHaskell cv = do 381 cstr <- (fromVal cv) :: Eval String 382 retstr <- liftIO (evalHaskell cstr) 383 return $ VStr $ retstr 377 384 378 385 op1Cast :: (Value n) => (n -> Val) -> Val -> Eval Val … … 611 618 then op2Num (**) x y 612 619 else op1Cast (VNum . exp) x 620 -- FIXME: Generalize to N args for arb N? Is this possible? 613 621 op2 "sprintf" = \x y -> do 614 622 str <- fromVal x … … 1235 1243 \\n Str pre perl (rw!Any)\ 1236 1244 \\n Any pre eval (Str)\ 1237 \\n Any pre eval_perl5 (Str)\ 1245 \\n Any pre eval_perl5 (Str)\ 1246 \\n Any pre eval_haskell (Str)\ 1238 1247 \\n Any pre require (?Str=$_)\ 1239 1248 \\n Any pre require_haskell (Str)\
