> first real apps, so I'm eager for feedback on anti-patterns I'm using
> or other things that could use improvement.
Haven't tried it yet. Just skimmed through some of the code. Looked
mainly at Pong. I guess what makes sense in a large program
isn't necessarily what makes sense in a small one.
But if it was a bigger game I think I would make a Sprite interface
type and let Paddle, Enemy and Ball implement this. The way your game
works now you can't treat
Ball, Paddle and Enemy as the same.
But if we stick to the fact that the game is small:
It doesn't seem like Paddle and Enemy share much functionality, so
there is perhaps no point in forwarding from Enemy to Paddle in your
code (the embedding). I think you could have used: "type Enemy Paddle"
to have Enemy use the same storage structure as Paddle but be of a
different type.