Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
project-3-draft [2021/04/22 12:30]
roxana_elena.stiuca [Graph queries]
project-3-draft [2021/04/25 16:07] (current)
roxana_elena.stiuca prerequisite for taskset3
Line 26: Line 26:
     | Cartesian (Row -> Row -> Row) [String] Query Query     | Cartesian (Row -> Row -> Row) [String] Query Query
     | Projection [String] Query     | Projection [String] Query
---    ​| forall a. Filter (FilterCondition a) Query +    ​| forall a. FEval a => Filter (FilterCondition a) Query 
-    | Graph EdgeOp ​query+    | Graph EdgeOp ​Query
     ​     ​
 -- where EdgeOp is defined: -- where EdgeOp is defined:
Line 34: Line 34:
 **Don'​t worry about Graph or Filter queries yet.** **Don'​t worry about Graph or Filter queries yet.**
  
- +==== Prerequisite ==== 
 +Add the following lines at the beginning of your .hs files: 
 +<code haskell>​ 
 +{-# LANGUAGE ExistentialQuantification #-} 
 +{-# LANGUAGE FlexibleInstances #-} 
 +</​code>​ 
 + 
 +The first line allows ''​forall a''​. 
 +The second allows ''​instance FEval String''​. 
 ===== Query Evaluation ===== ===== Query Evaluation =====
  
Line 188: Line 197:
  
 Your task is to write ''​similarities_query''​ as a **sequence of queries**, that once evaluated results in the graph described above. Your task is to write ''​similarities_query''​ as a **sequence of queries**, that once evaluated results in the graph described above.
 +
 +**Note**: ''​similarities_query''​ is a Query. The checker applies ''​eval''​ on it.
  
 ===== TL;DR Tasks ===== ===== TL;DR Tasks =====