Changeset 22f6bc in git
- Timestamp:
- Apr 27, 2005, 5:15:18 PM (18 years ago)
- Branches:
- (u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
- Children:
- fdcb36f66ca35bb8a596233506340b4ff74084b1
- Parents:
- 64345a457201efbd876e37497c327e80554da35d
- Location:
- Singular
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
Singular/grammar.y
r64345a4 r22f6bc 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: grammar.y,v 1.10 4 2005-01-18 15:41:58Singular Exp $ */4 /* $Id: grammar.y,v 1.105 2005-04-27 15:15:15 Singular Exp $ */ 5 5 /* 6 6 * ABSTRACT: SINGULAR shell grammatik … … 310 310 %token <i> EXAMPLE_CMD 311 311 %token <i> EXPORT_CMD 312 %token <i> EXPORTTO_CMD313 %token <i> IMPORTFROM_CMD314 312 %token <i> HELP_CMD 315 313 %token <i> KILL_CMD -
Singular/iparith.cc
r64345a4 r22f6bc 2 2 * Computer Algebra System SINGULAR * 3 3 ****************************************/ 4 /* $Id: iparith.cc,v 1.34 6 2005-04-26 08:59:10Singular Exp $ */4 /* $Id: iparith.cc,v 1.347 2005-04-27 15:15:18 Singular Exp $ */ 5 5 6 6 /* … … 146 146 147 147 #define ii_div_by_0 "div. by 0" 148 #define ii_not_for_plural "not implemented for non-commutative rings" 149 148 150 int iiOp; /* the current operation*/ 149 151 … … 195 197 { "execute", 0, EXECUTE_CMD , CMD_1}, 196 198 { "export", 0, EXPORT_CMD , EXPORT_CMD}, 199 { "exportto", 0, EXPORTTO_CMD , CMD_2}, 197 200 { "factorize", 0, FAC_CMD , CMD_12}, 198 201 { "fetch", 0, FETCH_CMD , CMD_2}, … … 216 219 { "imap", 0, IMAP_CMD , CMD_2}, 217 220 { "impart", 0, IMPART_CMD , CMD_1}, 221 { "importfrom", 0, IMPORTFROM_CMD , CMD_2}, 218 222 { "indepSet", 0, INDEPSET_CMD , CMD_12}, 219 223 { "insert", 0, INSERT_CMD , CMD_23}, … … 1451 1455 int typ; 1452 1456 BOOLEAN t=FALSE; 1453 if (u->rtyp!=IDHDL) 1457 if (u->rtyp!=IDHDL) 1454 1458 { 1455 1459 tmp_proc.id="_auto"; 1456 1460 tmp_proc.typ=PROC_CMD; 1457 tmp_proc.data.pinf=(procinfo *)u->Data(); 1461 tmp_proc.data.pinf=(procinfo *)u->Data(); 1458 1462 tmp_proc.ref=1; 1459 1463 d=u->data; u->data=(void *)&tmp_proc; … … 1647 1651 res->data=(char *)idElimination((ideal)u->Data(),(poly)v->Data()); 1648 1652 setFlag(res,FLAG_STD); 1653 return FALSE; 1654 } 1655 static BOOLEAN jjEXPORTTO(leftv res, leftv u, leftv v) 1656 { 1657 Print("exportto %s -> %s\n",v->Name(),u->Name() ); 1649 1658 return FALSE; 1650 1659 } … … 1710 1719 L->Init(l); 1711 1720 l=0; 1712 while(h!=NULL) 1721 while(h!=NULL) 1713 1722 { 1714 1723 L->m[l].data=(char *)h->d; … … 1918 1927 return FALSE; 1919 1928 } 1929 static BOOLEAN jjIMPORTFROM(leftv res, leftv u, leftv v) 1930 { 1931 Print("importfrom %s::%s ->.\n",v->Name(),u->Name() ); 1932 return FALSE; 1933 } 1920 1934 static BOOLEAN jjINDEPSET2(leftv res, leftv u, leftv v) 1921 1935 { … … 2059 2073 static BOOLEAN jjBRACKET(leftv res, leftv a, leftv b) 2060 2074 { 2061 if (rIsPluralRing(currRing)) 2075 if (rIsPluralRing(currRing)) 2062 2076 { 2063 2077 poly p = (poly)a->CopyD(POLY_CMD); … … 2097 2111 break; 2098 2112 } 2099 case POLY_CMD: 2113 case POLY_CMD: 2100 2114 case VECTOR_CMD: 2101 2115 { … … 2105 2119 break; 2106 2120 } 2107 case IDEAL_CMD: 2108 case MODUL_CMD: 2121 case IDEAL_CMD: 2122 case MODUL_CMD: 2109 2123 { 2110 2124 ideal Q = (ideal)IDDATA(w); … … 2113 2127 break; 2114 2128 } 2115 case MATRIX_CMD: 2129 case MATRIX_CMD: 2116 2130 { 2117 2131 ring save = currRing; … … 2122 2136 ideal S = idOppose(r,Q); 2123 2137 id_Delete(&Q, r); 2124 res->data = idModule2Matrix(S); 2138 res->data = idModule2Matrix(S); 2125 2139 res->rtyp = argtype; 2126 2140 break; 2127 2141 } 2128 default: 2129 { 2130 Werror ("unsupported type in oppose");2142 default: 2143 { 2144 WerrorS("unsupported type in oppose"); 2131 2145 return TRUE; 2132 2146 } 2133 2147 } 2134 2148 } 2135 else 2149 else 2136 2150 { 2137 2151 Werror("identifier %s not found in %s",b->Fullname(),a->Fullname()); … … 2140 2154 return FALSE; 2141 2155 } 2142 2143 2156 #endif /* HAVE_PLURAL */ 2144 2157 … … 2286 2299 if (ww!=NULL) { delete ww; ww=NULL; } 2287 2300 if ((r->weights!=NULL) && (r->weights[0]!=NULL)) 2288 { 2301 { 2289 2302 ww=ivCopy(r->weights[0]); 2290 2303 if (weights!=NULL) (*ww) += add_row_shift; … … 2685 2698 ,{jjELIMIN, ELIMINATION_CMD,IDEAL_CMD, IDEAL_CMD, POLY_CMD ALLOW_PLURAL} 2686 2699 ,{jjELIMIN, ELIMINATION_CMD,MODUL_CMD, MODUL_CMD, POLY_CMD ALLOW_PLURAL} 2700 ,{jjEXPORTTO, EXPORTTO_CMD, NONE, PACKAGE_CMD, IDHDL ALLOW_PLURAL} 2687 2701 ,{jjEXTGCD_I, EXTGCD_CMD, LIST_CMD, INT_CMD, INT_CMD ALLOW_PLURAL} 2688 2702 #ifdef HAVE_FACTORY … … 2724 2738 ,{jjFETCH, IMAP_CMD, ANY_TYPE/*set by p*/,RING_CMD, ANY_TYPE ALLOW_PLURAL} 2725 2739 ,{jjFETCH, IMAP_CMD, ANY_TYPE/*set by p*/,QRING_CMD, ANY_TYPE ALLOW_PLURAL} 2740 ,{jjIMPORTFROM,IMPORTFROM_CMD, NONE, PACKAGE_CMD, ANY_TYPE ALLOW_PLURAL} 2726 2741 ,{jjINDEPSET2, INDEPSET_CMD, LIST_CMD, IDEAL_CMD, INT_CMD NO_PLURAL} 2727 2742 ,{lInsert, INSERT_CMD, LIST_CMD, LIST_CMD, DEF_CMD ALLOW_PLURAL} … … 3081 3096 L->Init(l); 3082 3097 l=0; 3083 while(h!=NULL) 3098 while(h!=NULL) 3084 3099 { 3085 3100 L->m[l].data=(char *)h->d; … … 3150 3165 if (p==NULL) 3151 3166 { 3152 Werror ("module must be zero-dimensional");3167 WerrorS("module must be zero-dimensional"); 3153 3168 if (delete_w) delete w; 3154 3169 return TRUE; … … 3635 3650 ring r = (ring)a->Data(); 3636 3651 if (rIsPluralRing(r)) 3637 { 3652 { 3638 3653 res->data = rOpposite(r); 3639 3654 } … … 3646 3661 ring r = (ring)a->Data(); 3647 3662 if (rIsPluralRing(r)) 3648 { 3663 { 3649 3664 // ideal i; 3650 3665 // if (a->rtyp == QRING_CMD) … … 5262 5277 } 5263 5278 5279 //static BOOLEAN jjEXPORTTO_M(leftv res, leftv u) 5280 //{ 5281 // int l=u->listLength(); 5282 // if (l<2) return TRUE; 5283 // BOOLEAN b; 5284 // leftv v=u->next; 5285 // leftv zz=v; 5286 // leftv z=zz; 5287 // u->next=NULL; 5288 // do 5289 // { 5290 // leftv z=z->next; 5291 // b=iiExprArith2(res,u,iiOp,z, (iiOp > 255)); 5292 // if (b) break; 5293 // } while (z!=NULL); 5294 // u->next=zz; 5295 // return b; 5296 //} 5264 5297 static BOOLEAN jjIDEAL_PL(leftv res, leftv v) 5265 5298 { … … 5451 5484 if(!pIsUnit((poly)u2->Data())) 5452 5485 { 5453 Werror ("2nd argument must be a unit");5486 WerrorS("2nd argument must be a unit"); 5454 5487 return TRUE; 5455 5488 } … … 5467 5500 if(!mpIsDiagUnit((matrix)u2->Data())) 5468 5501 { 5469 Werror ("2nd argument must be a diagonal matrix of units");5502 WerrorS("2nd argument must be a diagonal matrix of units"); 5470 5503 return TRUE; 5471 5504 } … … 5593 5626 if(!mpIsDiagUnit((matrix)u2->Data())) 5594 5627 { 5595 Werror ("2nd argument must be a diagonal matrix of units");5628 WerrorS("2nd argument must be a diagonal matrix of units"); 5596 5629 return TRUE; 5597 5630 } … … 5608 5641 if(!pIsUnit((poly)u2->Data())) 5609 5642 { 5610 Werror ("2nd argument must be a unit");5643 WerrorS("2nd argument must be a unit"); 5611 5644 return TRUE; 5612 5645 } … … 5635 5668 if(!mpIsDiagUnit((matrix)u2->Data())) 5636 5669 { 5637 Werror ("2nd argument must be a diagonal matrix of units");5670 WerrorS("2nd argument must be a diagonal matrix of units"); 5638 5671 return TRUE; 5639 5672 } … … 5651 5684 if(!pIsUnit((poly)u2->Data())) 5652 5685 { 5653 Werror ("2nd argument must be a unit");5686 WerrorS("2nd argument must be a unit"); 5654 5687 return TRUE; 5655 5688 } … … 5811 5844 ,{jjDIVISION4, DIVISION_CMD, ANY_TYPE/*or set by p*/,4 NO_PLURAL} 5812 5845 ,{jjDBPRINT, DBPRINT_CMD, NONE, -2 ALLOW_PLURAL} 5846 //,{jjEXPORTTO_M, EXPORTTO_CMD, NONE, -2 ALLOW_PLURAL} 5813 5847 ,{jjCALL1ARG, IDEAL_CMD, IDEAL_CMD, 1 ALLOW_PLURAL} 5814 5848 ,{jjIDEAL_PL, IDEAL_CMD, IDEAL_CMD, -1 ALLOW_PLURAL} … … 6261 6295 if (dArith2[i].valid_for_plural==0 /*NO_PLURAL*/) 6262 6296 { 6263 Werror ("not implemented for non-commutative rings");6297 WerrorS(ii_not_for_plural); 6264 6298 break; 6265 6299 } … … 6304 6338 if (dArith2[i].valid_for_plural==0 /*NO_PLURAL*/) 6305 6339 { 6306 Werror ("not implemented for non-commutative rings");6340 WerrorS(ii_not_for_plural); 6307 6341 break; 6308 6342 } … … 6438 6472 if (dArith1[i].valid_for_plural==0 /*NO_PLURAL*/) 6439 6473 { 6440 Werror ("not implemented for non-commutative rings");6474 WerrorS(ii_not_for_plural); 6441 6475 break; 6442 6476 } … … 6489 6523 if (dArith1[i].valid_for_plural==0 /*NO_PLURAL*/) 6490 6524 { 6491 Werror ("not implemented for non-commutative rings");6525 WerrorS(ii_not_for_plural); 6492 6526 break; 6493 6527 } … … 6618 6652 if (dArith3[i].valid_for_plural==0 /*NO_PLURAL*/) 6619 6653 { 6620 Werror ("not implemented for non-commutative rings");6654 WerrorS(ii_not_for_plural); 6621 6655 break; 6622 6656 } … … 6664 6698 if (dArith3[i].valid_for_plural==0 /*NO_PLURAL*/) 6665 6699 { 6666 Werror ("not implemented for non-commutative rings");6700 WerrorS(ii_not_for_plural); 6667 6701 break; 6668 6702 } … … 6850 6884 if (dArithM[i].valid_for_plural==0 /*NO_PLURAL*/) 6851 6885 { 6852 Werror ("not implemented for non-commutative rings");6886 WerrorS(ii_not_for_plural); 6853 6887 break; 6854 6888 } -
Singular/tok.h
r64345a4 r22f6bc 7 7 * ABSTRACT: tokens, types for interpreter; general macros 8 8 */ 9 /* $Id: tok.h,v 1. 59 2004-10-18 18:57:46 levandovExp $ */9 /* $Id: tok.h,v 1.60 2005-04-27 15:15:17 Singular Exp $ */ 10 10 11 11 #ifndef MYYSTYPE … … 78 78 ERROR_CMD, 79 79 EXECUTE_CMD, 80 EXPORTTO_CMD, 80 81 EXTGCD_CMD, 81 82 FAC_CMD, … … 90 91 HRES_CMD, 91 92 IMPART_CMD, 93 IMPORTFROM_CMD, 92 94 INSERT_CMD, 93 95 INT_CMD,
Note: See TracChangeset
for help on using the changeset viewer.