diff general/funutils/bind.m @ 12:fbc0540a9208

Moved some high-order functions from funutils to arrutils, updated docs and cleaned up funutils.
author samer
date Mon, 14 Jan 2013 22:21:11 +0000
parents e44f49929e56
children
line wrap: on
line diff
--- a/general/funutils/bind.m	Mon Jan 14 15:52:31 2013 +0000
+++ b/general/funutils/bind.m	Mon Jan 14 22:21:11 2013 +0000
@@ -1,6 +1,10 @@
-function cfn=bind(fn,varargin)
 % bind - Create a partially applied function
 % 
+% bind :: 
+%    func(A{1}, ..., A{N}->B{1:L})   ~'func from N inputs to L outputs',
+%    A{1}, ..., A{M}                 ~'M<=N input arguments of the correct types'
+% -> func(A{M+1}, ..., A{N}->B{1:L}) ~'func from remaining arguments to returns'.
+%
 % BIND(fn,a1,a2,...)
 %    If fn is an ordinary function, the parameters a1, a2 etc
 %    are bound as the first few arguments
@@ -8,8 +12,8 @@
 %    If fn is a function object as returned by FUNC, BIND, or PERM,
 %    the given parameters are bound to the free slots of the function
 %    and a new partially applied function is returned.
-%
 
+function cfn=bind(fn,varargin)
 if ischar(fn), fn=str2func(fn); end
 if ~isa(fn,'func'), fn=func(fn); end
 cfn=bind(fn,varargin{:});