- From: Holger Knublauch <yahoo@knublauch.com>
- Date: Tue, 27 Oct 2009 10:08:51 -0700
- To: SPARQL Working Group Comments <public-rdf-dawg-comments@w3.org>
Received on Tuesday, 27 October 2009 17:09:28 UTC
Hi Danny, > > But as Holger points out, LET could likely be order-dependent, but - > it doesn't have to be a drain. CONSTANT, no? The first assignation is > the only assignation to care about. Whenever the right hand side of the LET contains variables and these variables change their binding, then the LET would need to be recomputed. So just computing them once won't work. However, there might be a nice compromise here that also preserves the declarative purity of SPARQL: only compute LETs on demand. In this scenario, LET would need to have an unbound variable on the left, and any algebraic operation that refers to that variable (e.g. in a BGP) would first call the function on the right to compute the value. Engines can then easily optimize the performance and avoid duplicate computations as long as the input variables have not changed yet. What would be the problems with this approach? Holger
Received on Tuesday, 27 October 2009 17:09:28 UTC