parameters: (val, predicate, k, name)
return_statement: return val
docstring: Returns VAL.  Raises a SchemeError if not PREDICATE(VAL)
      using "argument K of NAME" to describe the offending value.
docstring_summary: Returns VAL.  Raises a SchemeError if not PREDICATE(VAL)
      using "argument K of NAME" to describe the offending value.
docstring_tokens: Returns VAL . Raises a SchemeError if not PREDICATE ( VAL ) using argument K of NAME to describe the offending value .
function: def check_type(val, predicate, k, name):
      """Returns VAL.  Raises a SchemeError if not PREDICATE(VAL)
      using "argument K of NAME" to describe the offending value."""
      if not predicate(val):
          msg = "argument {0} of {1} has wrong type ({2})"
          raise SchemeError(msg.format(k, name, type(val).__name__))
      return val
function_tokens: def check_type ( val , predicate , k , name ) : if not predicate ( val ) : msg = "argument {0} of {1} has wrong type ({2})" raise SchemeError ( msg . format ( k , name , type ( val ) . __name__ ) ) return val