include Ecaml__.Defun_intf.Defuninclude Ecaml__.Defun_intf.Open_on_rhs with type a t := a tval return : 'a ‑> 'a tval required : Symbol.t ‑> 'a Value.Type.t ‑> 'a tval optional : Symbol.t ‑> 'a Value.Type.t ‑> 'a option tval rest : Symbol.t ‑> 'a Value.Type.t ‑> 'a list tval optional_with_default : Symbol.t ‑> 'a ‑> 'a Value.Type.t ‑> 'a tmodule Let_syntax : sig ... endval defun : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> 'a Value.Type.t ‑> Symbol.t ‑> 'a t ‑> unitval defun_nullary : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> 'a Value.Type.t ‑> Symbol.t ‑> (unit ‑> 'a) ‑> unitval defun_nullary_nil : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> Symbol.t ‑> (unit ‑> unit) ‑> unitval lambda : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> 'a Value.Type.t ‑> 'a t ‑> Function.tval lambda_nullary : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> 'a Value.Type.t ‑> (unit ‑> 'a) ‑> Function.tval lambda_nullary_nil : ?docstring:string ‑> ?interactive:string ‑> Core_kernel.Source_code_position.t ‑> (unit ‑> unit) ‑> Function.t