| 1 | struct Quad { |
| 2 | mut: |
| 3 | x f64 |
| 4 | y f64 |
| 5 | z f64 |
| 6 | w f64 |
| 7 | } |
| 8 | |
| 9 | type Point = Quad |
| 10 | type Vector = Quad |
| 11 | |
| 12 | fn new_point(x f64, y f64, z f64) &Point { |
| 13 | return &Point{x, y, z, 1} |
| 14 | } |
| 15 | |
| 16 | fn new_vector(x f64, y f64, z f64) &Vector { |
| 17 | return &Vector{x, y, z, 0} |
| 18 | } |
| 19 | |
| 20 | fn main() { |
| 21 | n := new_point(1, 2, 3) |
| 22 | println(n) |
| 23 | } |
| 24 |