Learning Lustre: Type-safe frontend development