keyword - FFL: Where vs. Let
问题 I was trying to understand the following code: def() ->commands if(deferred_passive_abilities != [], let [{ability: class passive_ability, creature: class creature}] items = []; let found = false; map(deferred_passive_abilities, if(cmd = null, add(items, [value]), [cmd, set(found, true)]) where cmd = value.ability.static_effect(me, value.creature)); if(found, set(deferred_passive_abilities, items); evaluate_deferred_passive_abilities(), set(deferred_passive_abilities, [])) ) Haskell appears