Бейсик это просто, да?
Ну-ка без подсказки, что тут творится:
struct Rect<T>
Field x0:T,y0:T
Field x1:T,y1:T
End
Function Main()
Local r:=New Rect<Float>
End
А тут:
Function Server( host:String,service:String )
Local server:=Socket.Listen( host,service )
Repeat
Local client:=server.Accept()
New Fiber( Lambda()
Local data:=client.Receive(...)
End )
Forever
End
А такое как:
Struct Vec2
Field x:Float,y:Float
Method New( x:float,y:Float )
Self.x=x
Self.y=y
End
Operator+:Vec2( v:Vec2 )
Return New Vec2( v.x,v.y )
End
Method To:String()
Return "Vec2("+x+","+y+")"
End
End
Function Main()
Local v0:=New Vec2( 10,20 )
Local v1:=New Vec2( 30,40 )
Print (v0+v1).ToString()
End
Такое придётся делать на Monkey2
Там всё на классах.