| 211 | | if not found' then evalExp (App (Var name) Nothing (map (Val . PerlSV) (sv:svs))) else do |
| 212 | | env <- ask |
| 213 | | rv <- guardIO $ do |
| 214 | | envSV <- mkVal (VControl $ ControlEnv env) |
| 215 | | subSV <- vstrToSV $ tail name |
| 216 | | invokePerl5 subSV sv svs envSV (enumCxt $ envContext env) |
| 217 | | case rv of |
| 218 | | Right [x] -> return $ PerlSV x |
| 219 | | Right xs -> return $ VList (map PerlSV xs) |
| 220 | | Left err -> throwError $ PerlSV err |
| | 211 | if not found' |
| | 212 | then evalExp (App (Var name) Nothing (map (Val . PerlSV) (sv:svs))) |
| | 213 | else do |
| | 214 | subSV <- liftIO . vstrToSV $ tail name |
| | 215 | runInvokePerl5 subSV sv svs |