I am personally one of the people who really like oop and like the ways in which it makes the programming process more logical. I would also like to point out one thing about the Object/Handle commands in bb3D and how you can imitate them in blitzMax.
in BB3D you used to do this,
in blitz max you can do the following (i think because everything is derived from a base object class but i'm not sure)
now i could be wrong but how does that not give you the same functionality as bb3d's object handle commands.. you're casting the f:foo into a reference integer which is exactly what object handle does
in BB3D you used to do this,
a = CreateFoo() DoSomethingToFoo(a) function CreateFoo() f.foo = new foo f\a = 0 return Handle(f) end function function DoSomethingToFoo(handle) f.foo = Object.foo(handle) f\a = f\a +1 end function
in blitz max you can do the following (i think because everything is derived from a base object class but i'm not sure)
Type foo Field a:Int End Type a:Int = MakeFoo() DoSomethingToFoo(a) Function MakeFoo:foo() f:foo = New foo f.a = 0 Return f End Function Function DoSomethingToFoo(f:foo) f.a :+ 1 End Function
now i could be wrong but how does that not give you the same functionality as bb3d's object handle commands.. you're casting the f:foo into a reference integer which is exactly what object handle does