| Bill Allombert on Mon, 18 Mar 2013 18:06:11 +0100 |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: function defaults |
On Mon, Mar 11, 2013 at 06:54:17PM +0100, Bill Allombert wrote:
> I created a branch bill-strictargs which add a new default:
>
> Doc: this toggle is either 1 (on) or 0 (off). If on, all arguments to new
> functions are mandatory unless the function supply an explicit default value.
> Otherwise arguments have the default value $0$.
>
> The default value is \kbd{0}.
>
> Example:
>
> ? default(strictargs,1)
> ? f(x,e=0)=x+e
> %1 = (x,e=0)->x+e
> ? f(5)
> %2 = 5
> ? f()
> *** at top-level: f()
> *** ^---
> *** in function f:
> *** ^-
> *** missing mandatory argument in user function.
>
> the error message should be improved.
>
> Note that this affect functions at compile time, but the test is done at runtime.
I have commited this branch. Thanks for the suggestion!
Cheers,
Bill.