Module monomorphic. Class Inhabited (A : Type) : Prop := populate { _ : A }. Arguments populate {_} _.
#[export] Instance prod_inhabited {A B : Type} (iA : Inhabited A)
(iB : Inhabited B) : Inhabited (A * B) := match iA, iB with
| populate x, populate y => populate (x,y) end. (* Error: In environment A : Type B : Type iA : Inhabited A iB : Inhabited B The term "(A * B)%type" has type "Type" while it is expected to have type
"Prop". *) End monomorphic.
Module polymorphic. Set Universe Polymorphism. Class Inhabited (A : Type) : Prop := populate { _ : A }. Arguments populate {_} _.
#[export] Instance prod_inhabited {A B : Type} (iA : Inhabited A)
(iB : Inhabited B) : Inhabited (A * B) := match iA, iB with
| populate x, populate y => populate (x,y) end. End polymorphic.
Messung V0.5
¤ Dauer der Verarbeitung: 0.12 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.