|  |  3.5.4 Objects 
Every object in SINGULAR has a type and a value.  In most cases it
has also a name and in some cases an attribute list.  The value of an
object may be examined simply by printing it with a print command:
object;.  The type of an object may be determined by means of thetypeoffunction, the attributes by means of theattribfunction ( typeof,  attrib): 
 |  |   ring r=0,x,dp;
  typeof(10);
==> int
  typeof(10000000000000000);
==> bigint
  typeof(r);
==> ring
  attrib(x);
==> no attributes
  attrib(std(ideal(x)));
==> attr:isSB, type int
 | 
 
Each object of type
poly,ideal,vector,module,map,matrix,number, orresolutionbelongs to a specific ring.  This is also true forlist, if at least one of the
objects contained in the list belongs to a ring.  These objects are local
to the ring.  Their names can be duplicated for other objects in other rings.
Objects from one ring can be mapped to another ring using maps or the
commandsfetchorimap.  See  map,  fetch,  imap. 
All other types do not belong to a ring and can be accessed within every
ring and across rings.  They can be declared even if there is no active
basering.
 
 |