Changeset 1464

Show
Ignore:
Timestamp:
04/03/05 10:29:11 (4 years ago)
Author:
mugwump
svk:copy_cache_prev:
2941
Message:

r6094@speights: samv | 2005-04-03 16:28:18 +0800
Rename Category back to Assoc, Category is probably incorrect

Files:
2 modified

Legend:

Unmodified
Added
Removed
  • VICTUALS

    r1409 r1464  
    3737 
    3838Kwiki, the Ritalin and Everything        Brian Ingerson ref:YAPC::Taipei::2005 
     39 
     40the true Black Meat, flesh of the 
     41giant aquatic Brazilian centipede        Sam Vilain 
  • src/Class.hs

    r1427 r1464  
    4343    --, clsAssocs     :: Map Label MetaAssoc 
    4444    --, clsRevAssocs  :: Map Label MetaAssoc 
    45     , clsCats       :: Map Label (Visibility, MetaCategory) 
     45    , clsCats       :: Map Label (Visibility, MetaAssoc) 
    4646    } 
    4747 
     
    8282    writing proofs. 
    8383-} 
    84 data MetaCategory = MetaCategory 
     84data MetaAssoc = MetaAssoc 
    8585    { catClass       :: MetaClass 
    86     , catPair        :: MetaCategory 
     86    , catPair        :: MetaAssoc 
    8787    , catRange       :: Range 
    8888    , catIsComposite :: Bool        -- if you kill this, its children 
     
    9595{- 
    9696 
    97     ∃ MetaClass A, MetaCategory C : A.clsCats ∋ C ↔ C.catClass = A 
    98  
    99     ∃ MetaCategory C₁, C₂ : C₁.catPair = C₂ ↔ C₂.catPair = C₁ 
     97    ∃ MetaClass A, MetaAssoc C : A.clsCats ∋ C ↔ C.catClass = A 
     98 
     99    ∃ MetaAssoc C₁, C₂ : C₁.catPair = C₂ ↔ C₂.catPair = C₁ 
    100100 
    101101    -- can't be composite both ways 
    102102 
    103     ∃ MetaCategory C₁, C₂ : C₁.catPair = C₂ ∧ C₁.catIsComposite 
     103    ∃ MetaAssoc C₁, C₂ : C₁.catPair = C₂ ∧ C₁.catIsComposite 
    104104         → ¬(C₂.catIsComposite) 
    105105 
    106106    -- this seems the simplest way to specify complementary categories 
    107107 
    108     ∃ MetaCategory C₁, C₂, MetaClass M₁, M₂ 
     108    ∃ MetaAssoc C₁, C₂, MetaClass M₁, M₂ 
    109109       : C₁.catPair = C₂ ∧ C₁.catClass = M₁ ∧ C₂.catClass = M₂ 
    110110       → (   ∃ M₁.clsCats{C₂.catCompanion} 
     
    178178  Package.clsCats = 
    179179        { pkgChildren =  
    180               (Public, MetaCategory 
     180              (Public, MetaAssoc 
    181181                { catIsComposite = true, 
    182182                  catRange = (Zero, One), 
    183183                  catCompanion = "pkgParent", 
    184                   catPair = MetaCategory { 
     184                  catPair = MetaAssoc { 
    185185                     catClass = Package, 
    186186                     catRange = (Zero, Many), 
     
    218218 
    219219  Module.clsAssocs = 
    220         { modTraits = (Public, MetaCategory 
     220        { modTraits = (Public, MetaAssoc 
    221221                      { catIsComposite = true, 
    222222                        catRange = (Zero, Many), 
    223223                        catCompanion = "pkgParent", 
    224224                        catKeyed = true, 
    225                         catPair = MetaCategory 
     225                        catPair = MetaAssoc 
    226226                                   ( { catClass = PkgTrait, 
    227227                                       catRange = (One, One) } ), 
     
    231231  Class := MetaClass where clsName = "Class" 
    232232  Class.clsAssocs = 
    233         { isa = (Public, MetaCategory 
     233        { isa = (Public, MetaAssoc 
    234234                         { catOrdered = true, 
    235235                           catRange = (Zero, Many), 
    236236                           catCompanion = "subClasses", 
    237                            catPair = MetaCategory 
     237                           catPair = MetaAssoc 
    238238                                     { catRange = (Zero, Many), 
    239239                                       catClass = Class } 
    240240                         }), 
    241           methods = (Public, MetaCategory 
     241          methods = (Public, MetaAssoc 
    242242                             { catKeyed = true, 
    243243                               catRange = (Zero, Many), 
    244244                               catCompanion = "Class", 
    245                                catPair = MetaCategory 
     245                               catPair = MetaAssoc 
    246246                                         { catRange = (One, One), 
    247247                                           catClass = Method