diff general/funutils/bind.m @ 4:e44f49929e56

Adding reorganised general toolbox, now in several subdirectories.
author samer
date Sat, 12 Jan 2013 19:21:22 +0000
parents
children fbc0540a9208
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/general/funutils/bind.m	Sat Jan 12 19:21:22 2013 +0000
@@ -0,0 +1,15 @@
+function cfn=bind(fn,varargin)
+% bind - Create a partially applied function
+% 
+% BIND(fn,a1,a2,...)
+%    If fn is an ordinary function, the parameters a1, a2 etc
+%    are bound as the first few arguments
+%
+%    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.
+%
+
+if ischar(fn), fn=str2func(fn); end
+if ~isa(fn,'func'), fn=func(fn); end
+cfn=bind(fn,varargin{:});