Defining a pi constant (my_pi) at the start of a transformation pass

ID: 1468

See: {@Define}
				
					using uCalcSoftware;

var uc = new uCalc();
var t = uc.NewTransformer();

// Define a variable once during rule initialization
t.FromTo("init_math", "{@Define: Variable: my_pi = 3.14}Math Initialized");
t.FromTo("Eval: {expr}", "{@@Eval: expr}");
Console.WriteLine(t.Transform("init_math"));
Console.WriteLine(t.Transform("Eval: my_pi * 2"));
				
			
Math Initialized
6.28
				
					#include <iostream>
#include "uCalc.h"

using namespace std;
using namespace uCalcSoftware;

int main() {
   uCalc uc;
   auto t = uc.NewTransformer();

   // Define a variable once during rule initialization
   t.FromTo("init_math", "{@Define: Variable: my_pi = 3.14}Math Initialized");
   t.FromTo("Eval: {expr}", "{@@Eval: expr}");
   cout << t.Transform("init_math") << endl;
   cout << t.Transform("Eval: my_pi * 2") << endl;
}
				
			
Math Initialized
6.28
				
					Imports System
Imports uCalcSoftware
Public Module Program
   Public Sub Main()
      Dim uc As New uCalc()
      Dim t = uc.NewTransformer()
      
      '// Define a variable once during rule initialization
      t.FromTo("init_math", "{@Define: Variable: my_pi = 3.14}Math Initialized")
      t.FromTo("Eval: {expr}", "{@@Eval: expr}")
      Console.WriteLine(t.Transform("init_math"))
      Console.WriteLine(t.Transform("Eval: my_pi * 2"))
   End Sub
End Module
				
			
Math Initialized
6.28