Hello <http://dict.tu-chemnitz.de/english-german/Hello.html> everybody 
<http://dict.tu-chemnitz.de/english-german/everybody.html>!

I've recently upgraded to version 1.2.3 and recognized that some of my spad 
files do not compile anymore. The strange error messages let me suppose 
that there might be some problem with 'coercion'. There wasn't a problem up 
to and including V 1.2.2.  I compared the generated *.lsp files of V1.2.1 
and V1.2.3 and recognized some differences which I can't interpret. To be 
short: I'm stuck. I hope somebody can give me a clue, therefore I attached 
an example.

- PQTY.spad (source) 
- V123.txt, V121.txt (output)
- PQTY_121.lsp, PQTY_123.lsp (NRLIB, erlib lisp)

Of course, the code is certainly not state of the art, however it worked 
for me for a long time. The output is from the Cygwin version (I tried on 
Ubuntu too, getting the same result).

Thanks for any help.
Kurt

      

-- 
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 [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.
                       FriCAS Computer Algebra System
                            Version: FriCAS 1.2.3
                  Timestamp: Wed, May 07, 2014  3:39:04 PM
-----------------------------------------------------------------------------
   Issue )copyright to view copyright notices.
   Issue )summary for a summary of useful system commands.
   Issue )quit to leave FriCAS and return to shell.
-----------------------------------------------------------------------------

(1) -> )compile ./pqty/PQTY.spad
   Compiling FriCAS source code from file /home/scios/pqty/PQTY.spad
      using old system compiler.
   SI abbreviates domain SI_UNIT
------------------------------------------------------------------------
   initializing NRLIB SI for SI_UNIT
   compiling into NRLIB SI
   compiling exported mksi : List Integer -> $
Time: 0.08 SEC.

   compiling exported * : ($,$) -> $
Time: 0.01 SEC.

   compiling exported / : ($,$) -> $
Time: 0.03 SEC.

   compiling exported ^ : ($,Integer) -> $
Time: 0 SEC.

   compiling exported = : ($,$) -> Boolean
Time: 0.02 SEC.

   compiling exported coerce : $ -> OutputForm
Time: 0.06 SEC.

   compiling exported %m : Integer -> $
Time: 0 SEC.

   compiling exported %kg : Integer -> $
Time: 0 SEC.

   compiling exported %s : Integer -> $
Time: 0.02 SEC.

   compiling exported %A : Integer -> $
Time: 0 SEC.

   compiling exported %K : Integer -> $
Time: 0 SEC.

   compiling exported %mol : Integer -> $
Time: 0.02 SEC.

   compiling exported %cd : Integer -> $
Time: 0 SEC.

   compiling exported %one : () -> $
Time: 0 SEC.

(time taken in buildFunctor:  15000)

;;;     ***       SI_UNIT REDEFINED

;;;     ***       SI_UNIT REDEFINED
Time: 0.01 SEC.


   Warnings:
      [1] *: signature of lhs not unique: $$$ chosen
      [2] ^: signature of lhs not unique: $$(Integer) chosen
      [3] coerce:  f has no value


   Cumulative Statistics for Constructor SI_UNIT
      Time: 0.25 seconds

--------------non extending category----------------------
.. SI_UNIT of cat
(|Join| (|Ring|) (|CoercibleTo| (|OutputForm|)) (|ConvertibleTo| (|String|))
 (CATEGORY |domain| (SIGNATURE |mksi| ($ (|List| (|Integer|))))
  (SIGNATURE * ($ $ $)) (SIGNATURE / ($ $ $)) (SIGNATURE ^ ($ $ (|Integer|)))
  (SIGNATURE = ((|Boolean|) $ $)) (SIGNATURE |%m| ($ (|Integer|)))
  (SIGNATURE |%kg| ($ (|Integer|))) (SIGNATURE |%s| ($ (|Integer|)))
  (SIGNATURE %A ($ (|Integer|))) (SIGNATURE %K ($ (|Integer|)))
  (SIGNATURE |%mol| ($ (|Integer|))) (SIGNATURE |%cd| ($ (|Integer|)))
  (SIGNATURE |%one| ($))))   has no
(|IntegerNumberSystem|)    finalizing NRLIB SI
   Processing SI_UNIT for Browser database:
--------constructor---------
--->-->SI_UNIT((mksi (% (List (Integer))))): Not documented!!!!
--->-->SI_UNIT((* (% % %))): Not documented!!!!
--->-->SI_UNIT((/ (% % %))): Not documented!!!!
--->-->SI_UNIT((^ (% % (Integer)))): Not documented!!!!
--->-->SI_UNIT((= ((Boolean) % %))): Not documented!!!!
--->-->SI_UNIT(   %(Integer())()
): Not documented!!!!
--->-->SI_UNIT((%kg (% (Integer)))): Not documented!!!!
--->-->SI_UNIT(((% (|Integer|)))): Not documented!!!!
--->-->SI_UNIT((%A (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%K (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%mol (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%cd (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%one (%))): Not documented!!!!
;; Compiling file /home/scios/SI.NRLIB/SI.lsp ...
;; Wrote file /home/scios/SI.NRLIB/SI.fas
0 errors, 0 warnings
------------------------------------------------------------------------
   SI_UNIT is now explicitly exposed in frame initial
   SI_UNIT will be automatically loaded when needed from
      /home/scios/SI.NRLIB/SI

   PQTY abbreviates domain PhysQty
------------------------------------------------------------------------
   initializing NRLIB PQTY for PhysQty
   compiling into NRLIB PQTY
Local variable Rep type redefined: (Join (SetCategory) (CATEGORY domain 
(SIGNATURE construct ((Record (: val (Fraction (Integer))) (: err (Fraction 
(Integer))) (: unt (SI_UNIT))) (Fraction (Integer)) (Fraction (Integer)) 
(SI_UNIT))) (SIGNATURE ~= ((Boolean) (Record (: val (Fraction (Integer))) (: 
err (Fraction (Integer))) (: unt (SI_UNIT))) (Record (: val (Fraction 
(Integer))) (: err (Fraction (Integer))) (: unt (SI_UNIT))))) (SIGNATURE coerce 
((OutputForm) (Record (: val (Fraction (Integer))) (: err (Fraction (Integer))) 
(: unt (SI_UNIT))))) (SIGNATURE elt ((Fraction (Integer)) (Record (: val 
(Fraction (Integer))) (: err (Fraction (Integer))) (: unt (SI_UNIT))) val)) 
(SIGNATURE elt ((Fraction (Integer)) (Record (: val (Fraction (Integer))) (: 
err (Fraction (Integer))) (: unt (SI_UNIT))) err)) (SIGNATURE elt ((SI_UNIT) 
(Record (: val (Fraction (Integer))) (: err (Fraction (Integer))) (: unt 
(SI_UNIT))) unt)) (SIGNATURE setelt! ((Fraction (Integer)) (Record (: val 
(Fraction (Integer))) (: err (Fraction (Integer))) (: unt (SI_UNIT))) val 
(Fraction (Integer)))) (SIGNATURE setelt! ((Fraction (Integer)) (Record (: val 
(Fraction (Integer))) (: err (Fraction (Integer))) (: unt (SI_UNIT))) err 
(Fraction (Integer)))) (SIGNATURE setelt! ((SI_UNIT) (Record (: val (Fraction 
(Integer))) (: err (Fraction (Integer))) (: unt (SI_UNIT))) unt (SI_UNIT))) 
(SIGNATURE copy ((Record (: val (Fraction (Integer))) (: err (Fraction 
(Integer))) (: unt (SI_UNIT))) (Record (: val (Fraction (Integer))) (: err 
(Fraction (Integer))) (: unt (SI_UNIT))))))) to (Join 
(OneDimensionalArrayAggregate (Integer)) (CATEGORY domain (SIGNATURE 
oneDimensionalArray ($ (List (Integer)))) (SIGNATURE oneDimensionalArray ($ 
(NonNegativeInteger) (Integer)))))
   compiling exported pqty : (Fraction Integer,Fraction Integer,SI_UNIT) -> $
Time: 0.09 SEC.

   compiling exported pqty_value : $ -> Fraction Integer
      PQTY;pqty_value;$F;2 is replaced by QVELTr0
Time: 0 SEC.

   compiling exported pqty_error : $ -> Fraction Integer
      PQTY;pqty_error;$F;3 is replaced by QVELTr1
Time: 0 SEC.

   compiling exported pqty_unit : $ -> SI_UNIT
      PQTY;pqty_unit;$Siunit;4 is replaced by QVELTr2
Time: 0 SEC.

   compiling exported pqty_interval : $ -> List Fraction Integer
Time: 0 SEC.

   compiling exported * : ($,$) -> $
Time: 0.03 SEC.

   compiling exported / : ($,$) -> $
Time: 0.03 SEC.

   compiling exported + : ($,$) -> $
Time: 0.02 SEC.

   compiling exported - : ($,$) -> $
Time: 0.03 SEC.

   compiling exported ^ : ($,Integer) -> $
Time: 0.02 SEC.

   compiling exported pqty_scale : ($,Fraction Integer) -> $
Time: 0.01 SEC.

   compiling exported coerce : $ -> OutputForm
****** comp fails at level 5 with expression: ******
error in function coerce

(SEQ (LET (|:| |f1| (|OutputForm|)) (|empty|))
 (LET (|:| |f2| (|OutputForm|)) (|empty|))
 (LET (|:| |f3| (|OutputForm|)) (|empty|))
 (LET (|:| |pm| (|OutputForm|))
  (|vconcat| (|outputForm| (|::| "+" (|Symbol|)))
   (|outputForm| (|::| "-" (|Symbol|)))))
 (LET (|:| |rval| (|Fraction| (|Integer|))) (|pqty_value| |r|))
 (LET (|:| |rerr| (|Fraction| (|Integer|))) (|pqty_error| |r|))
 (LET (|:| |runt| (SI_UNIT)) (|pqty_unit| |r|))
 (LET |f1|
  (|hconcat| (|outputForm| | << | (|::| |rval| (|DoubleFloat|)) | >> |)
   (|outputForm| (|::| " +- " (|Symbol|)))))
 (LET |f2|
  (|hconcat| (|outputForm| (|::| |rerr| (|DoubleFloat|)))
   (|outputForm| (|::| " " (|Symbol|)))))
 (LET |f3| (|hconcat| |f2| (|coerce| |runt|)))
 (|exit| 1 (|hconcat| |f1| |f3|)))
****** level 5  ******
$x:= (:: rval (DoubleFloat))
$m:= (Integer)
$f:=
((((|runt| # #) (|rerr| # #) (|rval| # #) (|pm| # #) ...)))

   >> Apparent user error:
   Cannot coerce (call (ELT $ 47) rval)
      of mode (DoubleFloat)
      to mode (Integer)

(1) ->

Attachment: PQTY.spad
Description: Binary data

                       FriCAS Computer Algebra System
                            Version: FriCAS 1.2.1
                Timestamp: Tuesday June 25, 2013 at 22:33:50
-----------------------------------------------------------------------------
   Issue )copyright to view copyright notices.
   Issue )summary for a summary of useful system commands.
   Issue )quit to leave FriCAS and return to shell.
-----------------------------------------------------------------------------

(1) -> )compile ./pqty/PQTY.spad
   Compiling FriCAS source code from file /home/scios/pqty/PQTY.spad
      using old system compiler.
   SI abbreviates domain SI_UNIT
------------------------------------------------------------------------
   initializing NRLIB SI for SI_UNIT
   compiling into NRLIB SI
   compiling exported mksi : List Integer -> $
Time: 0.08 SEC.

   compiling exported * : ($,$) -> $
Time: 0.02 SEC.

   compiling exported / : ($,$) -> $
Time: 0.03 SEC.

   compiling exported ^ : ($,Integer) -> $
Time: 0 SEC.

   compiling exported = : ($,$) -> Boolean
Time: 0.02 SEC.

   compiling exported coerce : $ -> OutputForm
Time: 0.08 SEC.

   compiling exported %m : Integer -> $
Time: 0.01 SEC.

   compiling exported %kg : Integer -> $
Time: 0 SEC.

   compiling exported %s : Integer -> $
Time: 0 SEC.

   compiling exported %A : Integer -> $
Time: 0.02 SEC.

   compiling exported %K : Integer -> $
Time: 0 SEC.

   compiling exported %mol : Integer -> $
Time: 0 SEC.

   compiling exported %cd : Integer -> $
Time: 0.01 SEC.

   compiling exported %one : () -> $
Time: 0.02 SEC.

(time taken in buildFunctor:  0)

;;;     ***       SI_UNIT REDEFINED

;;;     ***       SI_UNIT REDEFINED
Time: 0 SEC.


   Warnings:
      [1] *: signature of lhs not unique: $$$ chosen
      [2] ^: signature of lhs not unique: $$(Integer) chosen
      [3] coerce:  f has no value


   Cumulative Statistics for Constructor SI_UNIT
      Time: 0.28 seconds

--------------non extending category----------------------
.. SI_UNIT of cat
(|Join| (|Ring|) (|CoercibleTo| (|OutputForm|)) (|ConvertibleTo| (|String|))
 (CATEGORY |domain| (SIGNATURE |mksi| ($ (|List| (|Integer|))))
  (SIGNATURE * ($ $ $)) (SIGNATURE / ($ $ $)) (SIGNATURE ^ ($ $ (|Integer|)))
  (SIGNATURE = ((|Boolean|) $ $)) (SIGNATURE |%m| ($ (|Integer|)))
  (SIGNATURE |%kg| ($ (|Integer|))) (SIGNATURE |%s| ($ (|Integer|)))
  (SIGNATURE %A ($ (|Integer|))) (SIGNATURE %K ($ (|Integer|)))
  (SIGNATURE |%mol| ($ (|Integer|))) (SIGNATURE |%cd| ($ (|Integer|)))
  (SIGNATURE |%one| ($))))   has no
(|IntegerNumberSystem|)    finalizing NRLIB SI
   Processing SI_UNIT for Browser database:
--------constructor---------
--->-->SI_UNIT((mksi (% (List (Integer))))): Not documented!!!!
--->-->SI_UNIT((* (% % %))): Not documented!!!!
--->-->SI_UNIT((/ (% % %))): Not documented!!!!
--->-->SI_UNIT((^ (% % (Integer)))): Not documented!!!!
--->-->SI_UNIT((= ((Boolean) % %))): Not documented!!!!
--->-->SI_UNIT(   %(Integer())()
): Not documented!!!!
--->-->SI_UNIT((%kg (% (Integer)))): Not documented!!!!
--->-->SI_UNIT(((% (|Integer|)))): Not documented!!!!
--->-->SI_UNIT((%A (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%K (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%mol (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%cd (% (Integer)))): Not documented!!!!
--->-->SI_UNIT((%one (%))): Not documented!!!!
;; Compiling file /home/scios/SI.NRLIB/SI.lsp ...
;; Wrote file /home/scios/SI.NRLIB/SI.fas
0 errors, 0 warnings
------------------------------------------------------------------------
   SI_UNIT is now explicitly exposed in frame initial
   SI_UNIT will be automatically loaded when needed from
      /home/scios/SI.NRLIB/SI

   PQTY abbreviates domain PhysQty
------------------------------------------------------------------------
   initializing NRLIB PQTY for PhysQty
   compiling into NRLIB PQTY
   compiling exported pqty : (Fraction Integer,Fraction Integer,SI_UNIT) -> $
Time: 0.05 SEC.

   compiling exported pqty_value : $ -> Fraction Integer
      PQTY;pqty_value;$F;2 is replaced by QVELTr0
Time: 0.01 SEC.

   compiling exported pqty_error : $ -> Fraction Integer
      PQTY;pqty_error;$F;3 is replaced by QVELTr1
Time: 0 SEC.

   compiling exported pqty_unit : $ -> SI_UNIT
      PQTY;pqty_unit;$Siunit;4 is replaced by QVELTr2
Time: 0 SEC.

   compiling exported pqty_interval : $ -> List Fraction Integer
Time: 0.03 SEC.

   compiling exported * : ($,$) -> $
Time: 0.01 SEC.

   compiling exported / : ($,$) -> $
Time: 0.02 SEC.

   compiling exported + : ($,$) -> $
Time: 0.01 SEC.

   compiling exported - : ($,$) -> $
Time: 0.05 SEC.

   compiling exported ^ : ($,Integer) -> $
Time: 0 SEC.

   compiling exported pqty_scale : ($,Fraction Integer) -> $
Time: 0.01 SEC.

   compiling exported coerce : $ -> OutputForm
Time: 0.03 SEC.

(time taken in buildFunctor:  0)

;;;     ***       |PhysQty| REDEFINED

;;;     ***       |PhysQty| REDEFINED
Time: 0.02 SEC.


   Warnings:
      [1] *: signature of lhs not unique: $$$ chosen
      [2] ^: signature of lhs not unique: $$(Integer) chosen


   Cumulative Statistics for Constructor PhysQty
      Time: 0.25 seconds

--------------non extending category----------------------
.. PhysQty of cat
(|Join| (|Ring|) (|CoercibleTo| (|OutputForm|)) (|ConvertibleTo| (|String|))
 (CATEGORY |domain| (SIGNATURE * ($ $ $)) (SIGNATURE / ($ $ $))
  (SIGNATURE + ($ $ $)) (SIGNATURE - ($ $ $)) (SIGNATURE ^ ($ $ (|Integer|)))
  (SIGNATURE |pqty|
   ($ (|Fraction| (|Integer|)) (|Fraction| (|Integer|)) (SI_UNIT)))
  (SIGNATURE |pqty_value| ((|Fraction| (|Integer|)) $))
  (SIGNATURE |pqty_error| ((|Fraction| (|Integer|)) $))
  (SIGNATURE |pqty_unit| ((SI_UNIT) $))
  (SIGNATURE |pqty_interval| ((|List| (|Fraction| (|Integer|))) $))
  (SIGNATURE |pqty_scale| ($ $ (|Fraction| (|Integer|))))))   has no
(|IntegerNumberSystem|)    finalizing NRLIB PQTY
   Processing PhysQty for Browser database:
--------constructor---------
--->-->PhysQty((mksi (% (List (Integer))))): Not documented!!!!
--->-->PhysQty((* (% % %))): Not documented!!!!
--->-->PhysQty((/ (% % %))): Not documented!!!!
--->-->PhysQty((^ (% % (Integer)))): Not documented!!!!
--->-->PhysQty((= ((Boolean) % %))): Not documented!!!!
--->-->PhysQty(   %(Integer())()
): Not documented!!!!
--->-->PhysQty((%kg (% (Integer)))): Not documented!!!!
--->-->PhysQty(((% (|Integer|)))): Not documented!!!!
--->-->PhysQty((%A (% (Integer)))): Not documented!!!!
--->-->PhysQty((%K (% (Integer)))): Not documented!!!!
--->-->PhysQty((%mol (% (Integer)))): Not documented!!!!
--->-->PhysQty((%cd (% (Integer)))): Not documented!!!!
--->-->PhysQty((%one (%))): Not documented!!!!
--------constructor---------
--->-->PhysQty((* (% % %))): Not documented!!!!
--->-->PhysQty((/ (% % %))): Not documented!!!!
--->-->PhysQty((+ (% % %))): Not documented!!!!
--->-->PhysQty((- (% % %))): Not documented!!!!
--->-->PhysQty((^ (% % (Integer)))): Not documented!!!!
--->-->PhysQty((pqty (% (Fraction (Integer)) (Fraction (Integer)) (SI_UNIT)))): 
Not documented!!!!
--->-->PhysQty((pqty_value ((Fraction (Integer)) %))): Not documented!!!!
--->-->PhysQty((pqty_error ((Fraction (Integer)) %))): Not documented!!!!
--->-->PhysQty((pqty_unit ((SI_UNIT) %))): Not documented!!!!
--->-->PhysQty((pqty_interval ((List (Fraction (Integer))) %))): Not 
documented!!!!
--->-->PhysQty((pqty_scale (% % (Fraction (Integer))))): Not documented!!!!
--->-->PhysQty(): Spurious comments: \blankline
;; Compiling file /home/scios/PQTY.NRLIB/PQTY.lsp ...
WARNING in |PQTY;pqty_value;$F;2| in line 17 :
variable $ is not used.
Misspelled or missing IGNORE declaration?
WARNING in |PQTY;pqty_error;$F;3| in line 21 :
variable $ is not used.
Misspelled or missing IGNORE declaration?
WARNING in |PQTY;pqty_unit;$Siunit;4| in line 25 :
variable $ is not used.
Misspelled or missing IGNORE declaration?
;; Wrote file /home/scios/PQTY.NRLIB/PQTY.fas
0 errors, 3 warnings
------------------------------------------------------------------------
   PhysQty is now explicitly exposed in frame initial
   PhysQty will be automatically loaded when needed from
      /home/scios/PQTY.NRLIB/PQTY

(1) ->

Attachment: PQTY_121.lsp
Description: Binary data

Attachment: PQTY_123.lsp
Description: Binary data

Reply via email to