HomePhorge

(PUP-2027) Support lambdas in 4x function API
e015c8271a66Unpublished

Unpublished Commit ยท Learn More

Repository Importing: This repository is still importing.

Description

(PUP-2027) Support lambdas in 4x function API

  • Adds ability to accept lambdas/blocks in the 4x function API
  • Adds ability to define "last arg captures rest"
  • Adds CallableSignature as API for information about a callable (was different for functions and lambdas earlier)
  • Function and Closure now implements CallableSignature
  • Refactoring of how evaluator calls functions (no need to assert

function exsistnce separately (just takes time to look up functions
twice).

  • TypeCalculator can now infer Callable from Function and Closure
  • TypeFactory supports creating Callable with a block type last
  • Callable type is given convenience methods to get range of types and block (accepted, optional, required).
  • Spec tests added for many additional examples (for blocks)

Details

Provenance
Henrik Lindberg <henrik.lindberg@cloudsmith.com>Authored on
vanmeeuwenPushed on Jun 2 2015, 2:22 PM
Parents
rPU3a9ba20ff9ab: (PUP-2027) Use Callable in Function API
Branches
Unknown
Tags
Unknown

Event Timeline

Henrik Lindberg <henrik.lindberg@cloudsmith.com> committed rPUe015c8271a66: (PUP-2027) Support lambdas in 4x function API (authored by Henrik Lindberg <henrik.lindberg@cloudsmith.com>).Apr 14 2014, 1:48 AM