Changeset 15374 for src/Pugs/Val

Show
Ignore:
Timestamp:
02/28/07 00:25:27 (21 months ago)
Author:
audreyt
Message:

* Adapt existing newVal implementation in Pugs.Val to MO.

A "Val" is now simply an invocant within the Eval monad.

Location:
src/Pugs/Val
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • src/Pugs/Val/Base.hs

    r15373 r15374  
    88import Pugs.Class 
    99import {-# SOURCE #-} Pugs.Val 
     10 
     11{- 
    1012 
    1113 
     
    136138        ] 
    137139 
     140 
     141-} 
  • src/Pugs/Val/Code.hs

    r15297 r15374  
    1 {- 
    2  - {-# OPTIONS_GHC -fglasgow-exts -fallow-overlapping-instances #-} 
     1{-# OPTIONS_GHC -fglasgow-exts -fallow-undecidable-instances -fallow-overlapping-instances -fno-warn-missing-methods #-} 
    32module Pugs.Val.Code where 
    43import Pugs.Internals 
    54import Pugs.Types 
    6  
     5import Data.Monoid 
     6import qualified Data.Map as Map 
     7import qualified Data.Set as Set 
     8import qualified Pugs.Types as Types 
     9 
     10import {-# SOURCE #-} Pugs.Exp 
    711import {-# SOURCE #-} Pugs.Val 
    8 --import {-# SOURCE #-} Pugs.Val.Sig 
    9 -} 
    10  
     12 
     13 
     14type Code = () 
     15type Table = Map ID Val 
     16 
     17{- 
    1118-- | AST for a primitive Code object 
    1219data Code 
     
    5865 
    5966-------------------------------------------------------------------------------------- 
     67-} 
    6068 
    6169-- | AST for function signature. Separated to method and function variants 
     
    139147    deriving (Show, Eq, Ord, Typeable) {-!derive: YAML_Pos, Perl6Class, MooseClass!-} 
    140148 
     149{- 
    141150instance ICoercible P Sig where 
    142151    asStr = return . cast . render . purePretty 
    143152 
    144153instance Pure Sig where 
    145     purePretty s = colon <> (parens $ prettySig s) 
    146      
     154-} 
     155{- 
     156purePretty s = colon <> (parens $ prettySig s) 
     157 
    147158prettySig :: Sig -> Doc 
    148159prettySig s@(SigMethSingle {}) = invocant <> colon `invSpace` (prettySubSig s) 
     
    188199    debugDump   = if True then empty else braces $ text $ show p -- XXX delme 
    189200-------------------------------------------------------------------------------------- 
     201-} 
    190202 
    191203-- | a Capture is a frozen version of the arguments to an application. 
     
    222234type ValFeed = Feed Val 
    223235 
    224 instance ICoercible P ValCapt where 
    225         asStr _ = return (cast "<capt>") -- XXX 
    226