One small addition. If I try to import:

    import ListFunctions2(M, List M)

and then write:

    blockSplit(A:M, nr:PI, nc:PI) : List List M ==
      map( (X:M):(List M) +-> horizSplit(X, nc), vertSplit(A, nr) 
)$ListFunctions2(M, List M)

this fails with:

-------------------------------------------------------------------
****** comp fails at level 1 with expression: ******
error in function blockSplit 

(((|elt| (|ListFunctions2| M (|List| M)) |map|)
  (|:| (|:| X M) (+-> (|List| M) (|horizSplit| X |nc|))) (|vertSplit| A |nr|)))
****** level 1  ******
$x:= ((elt (ListFunctions2 M (List M)) map) (: (: X M) (+-> (List M) 
(horizSplit X nc))) (vertSplit A nr))
$m := List List M
 
   >> Apparent user error:
    +-> is not a known type
-------------------------------------------------------------------

This error is really not apparent to me and the message does not help.
How can "+->" ever be a Type?

The import I did is based on the information it get by

(1) -> )show ListFunctions2
 ListFunctions2(A: Type,B: Type)  is a package constructor
 ...
 map : ((A -> B),List A) -> List B    
 ...

and inserting A <-> M and B <-> List M by comparing the declarations.

-- 
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.

Reply via email to