mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-04-09 04:59:31 -06:00
don't count app nodes in term size
This commit is contained in:
@@ -80,7 +80,7 @@ sizeConstant sgr t = err (const 0) id $ do
|
||||
-- ground terms count as 1, i.e. as "one work" each
|
||||
sizeTerm :: Term -> Int
|
||||
sizeTerm t = case t of
|
||||
App c a -> 1 + sizeTerm c + sizeTerm a
|
||||
App c a -> sizeTerm c + sizeTerm a -- app nodes don't count
|
||||
Abs _ _ b -> 2 + sizeTerm b
|
||||
Prod _ _ a b -> 2 + sizeTerm a + sizeTerm b
|
||||
S c a -> 1 + sizeTerm c + sizeTerm a
|
||||
|
||||
@@ -191,7 +191,7 @@ execute1 opts gfenv0 s0 =
|
||||
ops <- case xs of
|
||||
_:_ -> do
|
||||
let ts = [t | Right t <- map (runP pExp . encodeUnicode utf8) xs]
|
||||
err error (return . nub . (ts ++) . concat) $ mapM (constantDepsTerm sgr) ts
|
||||
err error (return . nub . concat) $ mapM (constantDepsTerm sgr) ts
|
||||
_ -> error "expected one or more qualified constants as argument"
|
||||
let prTerm = showTerm sgr TermPrintDefault Qualified
|
||||
let size = sizeConstant sgr
|
||||
|
||||
Reference in New Issue
Block a user