Wenn ich durch die Elixir-Quelle schaue, sehe ich, dass Multiplikation wie folgt definiert ist:
%Vor%Ich wollte eine ** Funktion machen, um Macht als Übung zu machen. Wenn ich es jedoch versuche, bekomme ich eine Ausnahme und ich kann nicht herausfinden, wie es richtig gemacht wird.
%Vor%Gibt immer einen Fehler aus wie:
%Vor%Ich habe versucht, es zu einem Makro zu machen, indem ich unquote benutze: "**" anstelle von **. Nicht sicher, warum das nicht funktioniert ...
Irgendwelche Ideen?
Binäre Operatoren sind in Elixir vordefiniert, was bedeutet, dass der Elixier-Parser nur eine Menge von Operatoren analysiert (die natürlich *
enthalten). Sie können die Liste der Operatoren ungefähr in diesem Abschnitt <~>
**
gehört nicht zu ihnen.
Nur um zu zeigen, dass Parseable-Operatoren tun können, was Sie wollen:
%Vor% Elixir hat keinen Operator **
. Sie können keinen neuen Infix-Operator definieren, ohne mindestens der Elixir-Parser und the Macro
Modul .