Revisions of #1736
Contributors: Dennis Hackethal
Veritula implements a recursive epistemology. For a criticism to be outstanding, it can’t have any outstanding criticisms itself, and so on, in a deeply nested fashion.
def criticized? idea
outstanding_criticisms(idea).any?
end
def outstanding_criticisms idea
criticisms(idea).filter { |c| outstanding_criticisms(c).none? }
end
def criticisms idea
children(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.
↓
Veritula implements a recursive epistemology. For a criticism to be outstanding, it can’t have any outstanding criticisms itself, and so on, in a deeply nested fashion.
def criticized? idea
outstanding_criticisms(idea).any?
end
def outstanding_criticisms idea
criticisms(idea).filter { |c| outstanding_criticisms(c).none? }
end
def criticisms idea
children(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 outstanding, it can’t have any outstanding criticisms itself, and so on, in a deeply nested fashion.
def criticized? idea
outstanding_criticisms(idea).any?
end
def outstanding_criticisms idea
criticisms(idea).filter { |c| outstanding_criticisms(c).none? }
end
def criticisms idea
children(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.
↓
Simplify language
Recursive Epistemology
Veritula implements a recursive epistemology. For a criticism to be outstanding, it can’t have any outstanding criticisms itself, and so on, in a deeply nested fashion.
def criticized? idea
outstanding_criticisms(idea).any?
end
def outstanding_criticisms idea
criticisms(idea).filter { |c| outstanding_criticisms(c).none? }
end
def criticisms idea
children(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 criticized? idea
pending_criticisms(idea).any?
end
def pending_criticisms idea
criticisms(idea).filter { |c| pending_criticisms(c).none? }
end
def criticisms idea
children(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.