You might be curious how this works using Aldor in FriCAS:
(1) -> )sys cat dep1.as
#pile
#include "axiom.as"
f(x:Ring) : LinearAggregate(x) == List (x)
(1) -> )co dep1.as
Compiling FriCAS source code from file /home/page/dep1.as using
AXIOM-XL compiler and options
-O -Fasy -Fao -Flsp -laxiom -Mno-ALDOR_W_WillObsolete -DAxiom -Y
$AXIOM/algebra -I $AXIOM/algebra
Use the system command )set compiler args to change these
options.
"/home/page/dep1.as", line 3:
f(x:Ring) : LinearAggregate(x) == List (x)
..^
[L3 C3] #1 (Warning) Function returns a domain that might not be
constant (which may cause problems if it is used in a dependent type).
Compiling Lisp source code from file ./dep1.lsp
Issuing )library command for dep1
Reading /home/page/dep1.asy
f is now explicitly exposed in frame frame1
f will be automatically loaded when needed from /home/page/dep1
(1) -> x:f(Integer):=construct [1,2,3]
(1) [1,2,3]
Type: f(Integer)
(2) ->
On Fri, Aug 19, 2011 at 2:27 PM, Bill Page <[email protected]> wrote:
> I think one might reasonably expect that
>
> f(x:Ring) : LinearAggregate(x) == List (x)
>
> would work. And in almost does (at least in OpenAxiom):
>
>...
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/fricas-devel?hl=en.