Yedalog is a query language created in 2015 by Brian Chin and Daniel von Dincklage and Vuk Ercegovac and Peter Hawkins and Mark S. Miller and Franz Och and Chris Olston and Fernando Pereira.
#2167on PLDB | 9Years Old |
Documents = Load{path: "document-parse-trees"};
# Code to execute for each document:
module PerDocument{tokens: T} = {
# Computes parent-child relationships
Child{p} = c :- T[c] == {parent: p, .._};
# Computes nodes that transitively descend from "influenced"
Descendants{t: c} :- T[p] == {text: "influenced", .._}, c == Child{p};
Descendants{t: c} :- Descendants{t: p}, c == Child{p};
# Counts nodes in which each entity appears under the verb "influenced".
Influence{mid} += 1 :- Descendants{t}, T[t] == {entity: mid, .._};
};
# Each entity’s influence from each hostname
Influential{mid, hostname} += count :-
Documents{tokens, hostname, .._},
PerDocument{tokens}.Influence{mid} == count;
# Persists Influential as protocol buffer data
? Store{data: Influential, path: "influential-entities"};
Feature | Supported | Token | Example |
---|---|---|---|
Comments | ✓ | # A comment |
|
Line Comments | ✓ | # | # A comment |
Semantic Indentation | X |