Imports System Imports uCalcSoftware Public Module Program Public Sub ItemCallback(ByVal cb As uCalc.Callback) Dim itm = cb.Item Console.WriteLine($"Name: {itm.Name}") Console.WriteLine($"Data type: {itm.DataType.Name}") Console.WriteLine($"Param count: {(itm.Count).ToString()}") Console.Write("Procedure type: ") If itm.IsProperty(ItemIs.Operator) Then Console.WriteLine("Operator") ElseIf itm.IsProperty(ItemIs.Function ) Then Console.WriteLine("Function") End If Console.WriteLine($"Definition: {itm.Text}") Console.WriteLine($"Description: {itm.Description}") Console.WriteLine("---") End Sub Public Sub Main() Dim uc As New uCalc() uc.DefineFunction("AAA() As Double", AddressOf ItemCallback).Description = "Does this and that" uc.DefineFunction("BBB(x, y, z) As String", AddressOf ItemCallback).Description = "Does something else" uc.DefineOperator("{x} CCC {y} As Int32", 55, Associativity.LeftToRight, AddressOf ItemCallback) uc.EvalStr("AAA()") uc.EvalStr("BBB(9, 8, 7)") uc.EvalStr("5 CCC 4") End Sub End Module