> 
> As for "BOOT::|sayFunctionDeps| is undefined" error, it can be fixed
> by following patch,
> after the patch, ")display properties" works:
> 
> (1) -> z == 2
>                                                                    Type: Void
> (2) -> )display properties z
> Properties of z :
>    This is an interpreter rule.
>    Definition:   z () == 2
> 

OK, please commit.
 
> diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot
> index 24bdc499..f25e88fb 100644
> --- a/src/interp/i-syscmd.boot
> +++ b/src/interp/i-syscmd.boot
> @@ -913,26 +913,7 @@ displayProperties(option,l) ==
>            sayMSG '"   This is recursive."
>          prop = 'isInterpreterFunction =>
>            sayMSG '"   This is an interpreter function."
> -          sayFunctionDeps v where
> -            sayFunctionDeps x ==
> -              if dependents := GETALIST($dependentAlist,x) then
> -                null rest dependents =>
> -                  sayMSG ['"   The following function or rule ",
> -                    '"depends on this:",:bright first dependents]
> -                sayMSG
> -                  '"   The following functions or rules depend on this:"
> -                msg := ["%b",'"     "]
> -                for y in dependents repeat msg := ['" ",y,:msg]
> -                sayMSG [:nreverse msg,"%d"]
> -              if dependees := GETALIST($dependeeAlist,x) then
> -                null rest dependees =>
> -                  sayMSG ['"   This depends on the following function ",
> -                    '"or rule:",:bright first dependees]
> -                sayMSG
> -                  '"   This depends on the following functions or rules:"
> -                msg := ["%b",'"     "]
> -                for y in dependees repeat msg := ['" ",y,:msg]
> -                sayMSG [:nreverse msg,"%d"]
> +          sayFunctionDeps v
>          prop = 'isInterpreterRule =>
>            sayMSG '"   This is an interpreter rule."
>            sayFunctionDeps v
> @@ -947,6 +928,26 @@ displayProperties(option,l) ==
>      sayKeyedMsg("S2IZ0068",[option])
>    terminateSystemCommand()
> 
> +sayFunctionDeps x ==
> +  if dependents := GETALIST($dependentAlist,x) then
> +    null rest dependents =>
> +      sayMSG ['"   The following function or rule ",
> +        '"depends on this:",:bright first dependents]
> +    sayMSG
> +      '"   The following functions or rules depend on this:"
> +    msg := ["%b",'"     "]
> +    for y in dependents repeat msg := ['" ",y,:msg]
> +    sayMSG [:nreverse msg,"%d"]
> +  if dependees := GETALIST($dependeeAlist,x) then
> +    null rest dependees =>
> +      sayMSG ['"   This depends on the following function ",
> +        '"or rule:",:bright first dependees]
> +    sayMSG
> +      '"   This depends on the following functions or rules:"
> +    msg := ["%b",'"     "]
> +    for y in dependees repeat msg := ['" ",y,:msg]
> +    sayMSG [:nreverse msg,"%d"]
> +
>  displayModemap(v,val,giveVariableIfNil) ==
>    for mm in val repeat g(v,mm,giveVariableIfNil) where
>      g(v,mm,giveVariableIfNil) ==
> 
> 
> On Tue, Jul 10, 2018 at 11:51 PM, Riccardo GUIDA
> <riccardo.gu...@gmail.com> wrote:
> > Hi
> >
> > Command line interpreter: I realize that type declaration is ignored in
> > delayed assignment == even for variables (see [1] for a similar behavior for
> > functions)
> >
> > Same behavior from .input file.
> >
> > AND
> >
> > At the same occasion I get a weird system error in )display properties,
> > which might interest Waldek...
> >
> > cheers,
> > riccardo
> >
> > (1) -> x:Integer := 1
> >
> >    (1)  1
> >                                                                 Type:
> > Integer
> > (2) -> y:Integer == 1
> >                                                                    Type:
> > Void
> > (3) -> z == 1
> >                                                                    Type:
> > Void
> > (4) -> [x,y,z]
> >    Compiling body of rule z to compute value of type PositiveInteger
> >
> >    (4)  [1, y, 1]
> >                                               Type:
> > List(Polynomial(Integer))
> > (5) -> )display properties x y z
> > Properties of x :
> >    Declared type or mode:   Integer
> >    Value (has type Integer):  1
> > Properties of y :
> >    none
> > Properties of z :
> >    This is an interpreter rule.
> >     >> System error:
> >    The function BOOT::|sayFunctionDeps| is undefined.
> >
> >
> >
> > (5) -> )read test.input
> > )clear completely
> >     All user variables and function definitions have been cleared.
> >    All )browse facility databases have been cleared.
> >    Internally cached functions and constructors have been cleared.
> >    )clear completely is finished.
> > x2:Integer := 1
> >
> >    (1)  1
> >                                                                 Type:
> > Integer
> > y2:Integer == 1
> >                                                                     Type:
> > Void
> > z2 == 1
> >                                                                     Type:
> > Void
> > [x2,y2,z2]
> >     Compiling body of rule z2 to compute value of type PositiveInteger
> >
> >    (4)  [1, y2, 1]
> >                                               Type:
> > List(Polynomial(Integer))
> > )display properties x2 y2 z2
> >  Properties of x2 :
> >    Declared type or mode:   Integer
> >    Value (has type Integer):  1
> > Properties of y2 :
> >    none
> > Properties of z2 :
> >    This is an interpreter rule.
> >     >> System error:
> >    The function BOOT::|sayFunctionDeps| is undefined.
> >
> >
> >
> >
> > [1]
> > https://www.mail-archive.com/fricas-devel@googlegroups.com/msg12308.html
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> > "FriCAS - computer algebra system" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to fricas-devel+unsubscr...@googlegroups.com.
> > To post to this group, send email to fricas-devel@googlegroups.com.
> > Visit this group at https://groups.google.com/group/fricas-devel.
> > For more options, visit https://groups.google.com/d/optout.
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "FriCAS - computer algebra system" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to fricas-devel+unsubscr...@googlegroups.com.
> To post to this group, send email to fricas-devel@googlegroups.com.
> Visit this group at https://groups.google.com/group/fricas-devel.
> For more options, visit https://groups.google.com/d/optout.
> 


-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to fricas-devel+unsubscr...@googlegroups.com.
To post to this group, send email to fricas-devel@googlegroups.com.
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to