1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344
|
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<!-- %% -->
<!-- %W obsolete.tex GAP documentation Frank Lübeck -->
<!-- %% -->
<!-- %% -->
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Chapter Label="Replaced and Removed Command Names">
<Heading>Replaced and Removed Command Names</Heading>
<#Include Label="obsolete_intro">
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Group Actions - Name Changes">
<Heading>Group Actions – Name Changes</Heading>
<Index>group operations</Index>
The concept of a group action is sometimes referred to as a
<Q>group operation</Q>.
In &GAP; 3 as well as in older versions of &GAP; 4 the term
<C>Operation</C> was used instead of <C>Action</C>.
We decided to change the names to avoid confusion with the term
<Q>operation</Q> as in <Ref Func="DeclareOperation"/> and
<Q>operations for Xyz</Q>.
<P/>
Here are some examples of such name changes.
<P/>
<Table Align="l|l">
<Row>
<Item><E>OLD</E></Item>
<Item><E>NOW USE</E></Item>
</Row>
<HorLine/>
<Row>
<Item><C>Operation</C><Index Key="Operation"><C>Operation</C></Index></Item>
<Item><Ref Func="Action" Label="for a group, an action domain, etc."/></Item>
</Row>
<Row>
<Item><C>RepresentativeOperation</C><Index Key="RepresentativeOperation"><C>RepresentativeOperation</C></Index></Item>
<Item><Ref Func="RepresentativeAction"/></Item>
</Row>
<Row>
<Item><C>OperationHomomorphism</C><Index Key="OperationHomomorphism"><C>OperationHomomorphism</C></Index></Item>
<Item><Ref Func="ActionHomomorphism" Label="for a group, an action domain, etc."/></Item>
</Row>
<Row>
<Item><C>FunctionOperation</C><Index Key="FunctionOperation"><C>FunctionOperation</C></Index></Item>
<Item><Ref Attr="FunctionAction"/></Item>
</Row>
<Row>
<Item><C>IsLexicographicallyLess</C><Index Key="IsLexicographicallyLess"><C>IsLexicographicallyLess</C></Index></Item>
<Item><Ref Oper="\<"/></Item>
</Row>
</Table>
</Section>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Package Interface - Obsolete Functions and Name Changes">
<Heading>Package Interface – Obsolete Functions and Name Changes</Heading>
With &GAP; 4.4 the package interface was changed. Thereby some functions
became obsolete and the names of some others were made more consistent.
<P/>
<Index Key="DeclarePackage"><C>DeclarePackage</C></Index>
<Index Key="DeclareAutoPackage"><C>DeclareAutoPackage</C></Index>
<Index Key="DeclarePackageDocumentation">
<C>DeclarePackageDocumentation</C></Index>
<Index Key="DeclarePackageAutoDocumentation">
<C>DeclarePackageAutoDocumentation</C></Index>
The following functions are no longer needed:
<C>DeclarePackage</C>,
<C>DeclareAutoPackage</C>,
<C>DeclarePackageDocumentation</C> and
<C>DeclarePackageAutoDocumentation</C>.
They are substituted by entries in the packages' <F>PackageInfo.g</F> files,
see <Ref Sect="The PackageInfo.g File"/>.
<P/>
Furthermore, the global variable <C>PACKAGES_VERSIONS</C> is no longer needed,
since this information is now contained in the <C>GAPInfo.PackagesInfo</C> record
(see <Ref Subsect="GAPInfo"/>). The global variable <C>Revisions</C> is also
no longer needed, since the function <C>DisplayRevision</C> was made obsolete in
&GAP; 4.5 and removed in &GAP; 4.7.
<P/>
The following function names were changed.
<P/>
<Index Key="RequirePackage"><C>RequirePackage</C></Index>
<Index Key="ReadPkg"><C>ReadPkg</C></Index>
<Index Key="RereadPkg"><C>RereadPkg</C></Index>
<Table Align="l|l">
<Row>
<Item><E>OLD</E></Item>
<Item><E>NOW USE</E></Item>
</Row>
<HorLine/>
<Row>
<Item><C>RequirePackage</C></Item>
<Item><Ref Func="LoadPackage"/></Item>
</Row>
<Row>
<Item><C>ReadPkg</C></Item>
<Item><Ref Func="ReadPackage"/></Item>
</Row>
<Row>
<Item><C>RereadPkg</C></Item>
<Item><Ref Func="RereadPackage"/></Item>
</Row>
</Table>
</Section>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Normal Forms of Integer Matrices - Name Changes">
<Heading>Normal Forms of Integer Matrices – Name Changes</Heading>
<Index>Smith normal form</Index>
<Index>Hermite normal form</Index>
Former versions of &GAP; 4 documented several functions for computing
the Smith or Hermite normal form of integer matrices.
Some of them were never implemented and it was unclear which commands to use.
The functionality of all of these commands is now available with
<Ref Func="NormalFormIntMat"/> and a few interface functions.
</Section>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="Miscellaneous Name Changes or Removed Names">
<Heading>Miscellaneous Name Changes or Removed Names</Heading>
<Index Key="QUIET"><C>QUIET</C></Index>
<Index Key="BANNER"><C>BANNER</C></Index>
In former releases of &GAP; 4 there were some global variable names
bound to general information about the running &GAP;,
such as path names or command line options.
Although they were not officially documented they were used by several users
and in some packages.
We mention here <C>BANNER</C> and <C>QUIET</C>.
This type of information is now collected in the global record
<Ref Var="GAPInfo"/>.
<P/>
Here are some further name changes.
<P/>
<Table Align="l|l">
<Row>
<Item><E>OLD</E></Item>
<Item><E>NOW USE</E></Item>
</Row>
<HorLine/>
<Row>
<Item><C>MonomialTotalDegreeLess</C><Index Key="MonomialTotalDegreeLess"><C>MonomialTotalDegreeLess</C></Index></Item>
<Item><Ref Func="MonomialExtGrlexLess"/></Item>
</Row>
<Row>
<Item><C>MultRowVector</C><Index Key="MultRowVector"><C>MultRowVector</C></Index></Item>
<Item><Ref Oper="MultVectorLeft"/></Item>
</Row>
<Row>
<Item><C>MutableCopyMat</C><Index Key="MutableCopyMat"><C>MutableCopyMat</C></Index></Item>
<Item><Ref Oper="MutableCopyMatrix" Label="for a matrix object"/></Item>
</Row>
<Row>
<Item><C>MutableIdentityMat</C><Index Key="MutableIdentityMat"><C>MutableIdentityMat</C></Index></Item>
<Item><Ref Func="IdentityMat"/></Item>
</Row>
<Row>
<Item><C>MutableNullMat</C><Index Key="MutableNullMat"><C>MutableNullMat</C></Index></Item>
<Item><Ref Func="NullMat"/></Item>
</Row>
<Row>
<Item><C>NormedVectors</C><Index Key="NormedVectors"><C>NormedVectors</C></Index></Item>
<Item><Ref Attr="NormedRowVectors"/></Item>
</Row>
<Row>
<Item><C>RadicalGroup</C><Index Key="RadicalGroup"><C>RadicalGroup</C></Index></Item>
<Item><Ref Attr="SolvableRadical"/></Item>
</Row>
</Table>
<List>
<Item>
<Index Key="PositionFirstComponent"><C>PositionFirstComponent</C></Index>
The operation <C>PositionFirstComponent</C> has been deprecated in GAP
4.8 due to issues with its documentation and implementation, and was
removed in GAP 4.10.
Instead of <C>PositionFirstComponent(list,obj)</C>, you may use
<C>PositionSorted(list,[obj])</C> or
<C>PositionProperty(list,x->x[1]=obj)</C> as a replacement, depending on
your specific use case.
</Item>
<Item>
<Index Key="MultRowVector"><C>MultRowVector</C></Index>
The five argument version of the operation <C>MultRowVector</C> has been
deprecated in GAP 4.10 since it was unused and only available for coefficient
lists.
Note that <C>MultRowVector</C> was also renamed to <C>MultVectorLeft</C>.
</Item>
<Item>
<Index Key="TemporaryGlobalVarName"><C>TemporaryGlobalVarName</C></Index>
The function <C>TemporaryGlobalVarName</C> has been deprecated in GAP 4.11.
Code using it typically can be restructured to not need it, e.g. by
using <Ref Func="EvalString"/>.
</Item>
<Item>
A bunch of synonyms have been deprecated in GAP 4.13.
The alternative names have always existed and so are safe
to use even in code which is meant to run in older GAP versions.
<Table Align="l|l">
<Row>
<Item><E>Deprecated</E></Item>
<Item><E>Recommended alternative</E></Item>
</Row>
<HorLine/>
<Row>
<Item><C>OneSM</C><Index Key="OneSM"><C>OneSM</C></Index></Item>
<Item><Ref Oper="OneSameMutability"/></Item>
</Row>
<Row>
<Item><C>InverseSM</C><Index Key="InverseSM"><C>InverseSM</C></Index></Item>
<Item><Ref Oper="InverseSameMutability"/></Item>
</Row>
<Row>
<Item><C>ZeroSM</C><Index Key="ZeroSM"><C>ZeroSM</C></Index></Item>
<Item><Ref Oper="ZeroSameMutability"/></Item>
</Row>
<Row>
<Item><C>AdditiveInverseSM</C><Index Key="AdditiveInverseSM"><C>AdditiveInverseSM</C></Index></Item>
<Item><Ref Oper="AdditiveInverseSameMutability"/></Item>
</Row>
<Row>
<Item><C>OneAttr</C><Index Key="OneAttr"><C>OneAttr</C></Index></Item>
<Item><Ref Attr="One"/>, <Ref Attr="OneImmutable"/></Item>
</Row>
<Row>
<Item><C>InverseAttr</C><Index Key="InverseAttr"><C>InverseAttr</C></Index></Item>
<Item><Ref Attr="Inverse"/>, <Ref Attr="InverseImmutable"/></Item>
</Row>
<Row>
<Item><C>ZeroAttr</C><Index Key="ZeroAttr"><C>ZeroAttr</C></Index></Item>
<Item><Ref Attr="Zero"/>, <Ref Attr="ZeroImmutable"/></Item>
</Row>
<Row>
<Item><C>AdditiveInverseAttr</C><Index Key="AdditiveInverseAttr"><C>AdditiveInverseAttr</C></Index></Item>
<Item><Ref Attr="AdditiveInverse"/>, <Ref Attr="AdditiveInverseImmutable"/></Item>
</Row>
</Table>
</Item>
</List>
<ManSection>
<InfoClass Name="InfoObsolete"/>
<Description>
is an info class to display warnings when an obsolete variable is used.
By default, the info level for this class is set to 1, which will only
show variables which will be removed in the next major version of GAP.
Setting it to 2 will trigger further warnings, for variables which have
alternative names, or may be removed in future.
This class can be set to 0 to disable all obsolete warnings.
<P/>
To check that the &GAP; code does not use any obsolete variables at
parsing time, and not at a runtime, use the <C>-O</C> command line option,
see <Ref Sect="Command Line Options"/>.
</Description>
</ManSection>
</Section>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="obsolete-gaprc">
<Heading>The former .gaprc file</Heading>
Up to &GAP; 4.4, a file <F>.gaprc</F> in the user's home directory
(if available, and &GAP; was started without <C>-r</C> option) was
read automatically during startup,
early enough for influencing the autoloading of packages and
late enough for being allowed to execute any &GAP; code. On Windows
machines this file was called <F>gap.rc</F>.
<P/>
In &GAP; 4.5 the startup mechanism has changed, see
<Ref Sect="sect:gap.ini"/> for details. These new configuration
files are now contained in a directory <C>GAPInfo.UserGapRoot</C>.
<P/>
For the sake of partial backwards compatibility,
also the former file <F>~/.gaprc</F> is still supported for such
initializations, but this file is read only if the directory
<C>GAPInfo.UserGapRoot</C> does not exist.
In that case the <F>~/.gaprc</F> is read at the same time as <F>gaprc</F>
would be read, i. e., too late for influencing the startup of &GAP;.
<P/>
As before, the command line option <C>-r</C> disables reading
<F>~/.gaprc</F>, see <Ref Sect="Command Line Options"/>.
<P/>
To migrate from the old setup to the new one introduced with &GAP; 4.5,
first have a look at the function <Ref Func="WriteGapIniFile"/>. Many users
will find that all or most of what was set in the old <F>~/.gaprc</F> file
can now be done via the user preferences in a <F>gap.ini</F> file.
If you had code for new functions or abbreviations in your old <F>~/.gaprc</F>
file or you were reading additional files, then move this into
the file <F>gaprc</F> (without the leading dot, same name for all operating
systems) in the directory <C>GAPInfo.UserGapRoot</C>.
</Section>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<Section Label="obsolete-semigroups-properties">
<Heading>Semigroup properties</Heading>
Until Version 4.8 of &GAP; there was inconsistent use of the following
properties of semigroups: <C>IsGroupAsSemigroup</C>, <C>IsMonoidAsSemigroup</C>,
and <C>IsSemilatticeAsSemigroup</C>. <C>IsGroupAsSemigroup</C> was true for
semigroups that mathematically defined a group, and for semigroups in the
category <Ref Filt = "IsGroup"/>; <C>IsMonoidAsSemigroup</C> was true for
semigroups that mathematically defined monoids, but did not belong to the
category <Ref Filt = "IsMonoid"/>; and <C>IsSemilatticeAsSemigroup</C> was
simply a property of semigroups, there is no category <C>IsSemilattice</C>.
<P/>
From Version 4.8 onwards, <C>IsMonoidAsSemigroup</C> returns
<K>true</K> for semigroups in the category <Ref Filt = "IsMonoid"/>,
and <C>IsSemilatticeAsSemigroup</C> has been moved to the
<Package>Semigroups</Package> under the new name
<Ref Prop="IsSemilattice" BookName = "Semigroups"/>.
</Section>
</Chapter>
|