DMUG-Archiv 2008

Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

Re: Gibt es etwas ähnliches wie Compilerswitches in MAMA

Hallo,

nö, weil nix compiliert wird, sondern immer interpretiert.
Und "swichtes" heissen bei richtigen Compilern eigentlich Optionen
und Optionen gibts auch bei Mathematica und Compile[]  wie

Options[Compile]

{CompileOptimizations -> Automatic, "RuntimeErrorHandler" -> Evaluate}

zeigt.

Update geplagte Nutzer nehmen

If[$VersionNumber<6.0,
 AlterCode[],
NeuerCode[]
]

wenn's gar nicht geht eventuell im init.m
If[$VersionNumber<6.0,
  Get["AltesPackage`"],
  Get["NeuesPackage`"]
]

Das muss man sowieso machen, weil alle Mathematica Versionen
die selben "per user" Daten benutzen.

Gruss
 Jens

klamser wrote:
Hallo,

gegenwärtig will ich ein Package, das unter MAMA 5.2 entwickelt wurde, unter MAMA >5.2 lauffähig machen.

Das ist mühsamer als gedacht, da grundlegende Änderungen in MAMA >5.2 vorgenommen wurden.

Gegenwärtig mache ich das mit

If[TrueQ[$VersionNumber>=6],
Rotate2D[{x_,y_},\[Alpha]_]=RotationTransform[-\[Alpha],{x,y}][{0,0}];
Rotate2D[{x_,y_},\[Alpha]_,{xr_,yr_}]=RotationTransform[-\[Alpha],{xr,yr}][{x,y}],]

oder

If[TrueQ[$VersionNumber<7],
  GlobalGraphicsSubsidenceLinieListPlot=
    ListPlot[lg,PlotJoined\[Rule]True,Frame\[Rule]True,
      FrameLabel\[Rule]{"r=\!\(\@\(dx\^2 + dy\^2\)\)","Senkung","",""},
      PlotRange\[Rule]All,DisplayFunction\[Rule]Identity],
  GlobalGraphicsSubsidenceLinieListPlot=
    ListPlot[lg,Joined\[Rule]True,Frame\[Rule]True,
      FrameLabel\[Rule]{"r=\!\(\@\(dx\^2 + dy\^2\)\)","Senkung","",""},
      PlotRange\[Rule]All,DisplayFunction\[Rule]Identity]]

weil PlotJoined unter 5.2 durch Joined ersetzt wurde.

Elegant wäre es, bedingte Comilierungen mit Compilerswitches zu verwenden. Gibt es so etwas in MAMA?

Danke & Gruß

Peter





Verweise:
Frühere   Chronologischer Index   Spätere
Vorherige   Thematischer Index   Nächste

DMUG DMUG-Archiv, http://www.mathematica.ch/archiv.html