(program (foreign fun mul -> float2 [(:= float2) (:= float2)]) (foreign fun mul -> float3 [(:= float3) (:= float3)]) (foreign fun mul -> float4 [(:= float4) (:= float4)]) (foreign fun mul -> float4x4 [(:= float4x4) (:= float4x4)]) (foreign fun float2 -> float2 [(:= float) (:= float)]) (fun vertex vs_main [] (:= v1 float2 (float2 1 1)) (:= v2 float2 (float2 3 3)) (:= v3 float2 (mul v1 v2))))