Fold.yqls 658 B

123456789101112
  1. (
  2. #comment
  3. (let config (DataSource 'config))
  4. (let res_sink (DataSink 'result))
  5. (let doFold (lambda '(list) (Fold list (List (TypeOf list)) (lambda '(item state) (Append state item)))))
  6. (let world (Write! world res_sink (Key) (Apply doFold (AsList (String '"1") (String '"2") (String '"3") (String '"4"))) '('('type))))
  7. (let world (Write! world res_sink (Key) (Apply doFold (AsList '((String '"1") (String '"a")) '((String '"2") (String '"b")))) '('('type))))
  8. (let world (Write! world res_sink (Key) (Apply doFold (AsList (AsStruct '('"x" (String '"1"))) (AsStruct '('"x" (String '"2"))))) '('('type))))
  9. (let world (Commit! world res_sink))
  10. (return world)
  11. )