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