[Uim] Some comments for SigScheme
tkng at xem.jp
Mon Aug 8 19:21:46 EEST 2005
On Mon, 8 Aug 2005 01:06:26 +0900
Kazuki Ohta <mover at hct.zaq.ne.jp> wrote:
> > Hi kazuki, I'm happy if you consider this comments.
> Of course, I consider:-)
> > * ARGNUM is not intuitive
> > I guess ARGNUM is an abbreviation of 'argument number'. I
> > think it's not intuitive because distinction of ARGNUM_L,
> > ARGNUM_R_NotEval and ARGNUM_R_Eval is not related on the
> > number of arguments. I propose ARG_TYPE or FUNC_TYPE.
> You're right. Now, I'm considering to abolish ARGNUM_R_Eval
> and ARGNUM_R_NotEval, because its name is not so intuitive,
> as you suggest. And I plan to rename ARGNUM to FUNC_TYPE.
> But FUNC_TYPE_R or FUNC_TYPE_L is also not intuitive. Do
> you come up with proper name for these symbols?
Ah, yes. I'd not noticed that.
Unlike Haskell, Scheme is a strict language (is this word right? I'm
not detailed in informatics...), all arguments of a procedure should be
evaluated before calling of the procedure. And since 'function' seems
having same meaning as procedure in Scheme, as a default behavior,
evaluating all arguments would be natural. So I propose replacing
ARGNUM_L with FUNC_TYPE_LIST. (You may prefer FUNC_TYPE_List.)
Following is my idea of new function types, though I'm not thinking
them so good.
ARGNUM_L -> FUNC_TYPE_LIST
ARGNUM_R_Eval -> FUNC_TYPE_LIST_ARG_NOT_EVAL
ARGNUM_R_NotEval -> FUNC_TYPE_LIST_ARG_NOT_EVAL_RETURN_NOT_EVALED
Maybe last one is too long, but it is only used from the expressions
which has tail context, long function type would not be a big problem.
The problem is that is's still not intuitive...
tkng at xem jp
More information about the uim