These are chat archives for juttle/juttle
reducefield referencing behavior discussed above: The currently implemented behavior is no coercion except in identifiers used as reducer arguments, which are coerced to fields. This means:
reduce a = bis an error because
bis not defined
reduce a = count(b)is OK because
bnow refers to a field in reduced points
reduce a = count(b + b)is an error because
bdoes not refer to a field anymore (not a direct reducer argument, merely an expression whose value is used as a reducer argument)
bis not some other identifier in scope (a const for example), in which case
bwould refer to it instead.
reduce a = bshould just work with
bbeing a reference to a (possibly missing) field
b. This is what
putdoes. I don't know why the two do things differently; the only reason I could think of is that it could be confusing if some field references in the expression (those in reducer args) refer to fields in reduced points while others to fields in the created point.