Activity
Simplify code
Recursive Epistemology
Veritula implements a recursive epistemology. For a criticism to be pending, it can’t have any pending criticisms itself, and so on, in a deeply nested fashion.
def criticized? ideapending_criticisms(idea).any?enddef pending_criticisms ideacriticisms(idea).filter { |c| pending_criticisms(c).none? }enddef criticisms ideachildren(idea).filter(&:criticism?)end
This approach is different from non-recursive epistemologies, which handle criticisms differently. For example, they might not consider deeply nested criticisms when determining whether an idea is currently criticized.
Recursive Epistemology
Veritula implements a recursive epistemology. For a criticism to be pending, it can’t have any pending criticisms itself, and so on, in a deeply nested fashion.
def should_adopt? ideapending_criticisms(idea).none?enddef pending_criticisms ideacriticisms(idea).filter { |c| should_adopt?(c) }enddef criticisms ideachildren(idea).filter(&:criticism?)end
This approach is different from non-recursive epistemologies, which handle criticisms differently. For example, they might not consider deeply nested criticisms when determining whether an idea is currently criticized.