# using Symata # when starting a stock Julia image isymata() # when starting the precompiled-with Symata image ClearAll() [AtomQ(x), AtomQ(Sin(x)), AtomQ(1 + I * 2), AtomQ(2 / 3)] [z * Sin(x +y), FullForm(z * Sin(x +y))] a = z * Sin(x +y); FullForm(a) Head(a) Clear(b, f, g, h, x); b = f(g)(h)(x); Head(b) Head(f(g)(h)) Head(f(g)) [Head(f), Head(2), Head(Pi), Head(3.14), Head("abc"), Head(2/3), Head(1 + I)] [a[0], a[1], a[2], a[2, 0], a[2, 1], a[2, 1, 0], a[2, 1, 1], a[2, 1, 2]] Clear(a) a = z * Sin(x + y) + z1 * Cos(x1 + y1) FullForm(a) Level(a, [0]) Level(a, [1]) Level(a, [2]) Level(a, [3]) Level(a, [4]) Level(a, [-1]) Level(a, [-2]) Level(a, [-3]) Level(a, [-4]) [Plus(1, 2, 3, 4), Times(1, 2, 3, 4)] Clear(a, b, c, d, e) a => b [a, c, d, c] ./ (a => b) Clear(f) f(x_) := x^2 [f(2), f("word"), f(Newton)] DownValues(f) Clear(f) f(x_Integer) := x^2 [f(2), f("word"), f(Newton)] Clear(f) f(x_`EvenQ`) := x f(x_`OddQ`) := x^2 f(x_) := Sin(x) [f(1), f(2), f(3), f(4), f(3 / 2), f(Newton), f(Pi)] [EvenQ(2), EvenQ(3), OddQ(2), OddQ(3)] [EvenQ(Newton), OddQ(Newton)] Clear(f) f(x_) := Sin(x) f(x_`EvenQ`) := x f(x_`OddQ`) := x^2 [f(1), f(2), f(3), f(4), f(3 / 2), f(Newton), f(Pi)] DownValues(f) FullForm(Sin(Pi + Pi)) Trace(True) FullForm(Sin(Pi + Pi)) Trace(False); VersionInfo() InputForm(Now())