In hoc signo vinces (Was: Revamping the numeric classes)

Marcin 'Qrczak' Kowalczyk mk167280@students.mimuw.edu.pl
Mon, 12 Feb 2001 12:36:50 +0100 (CET)


On Mon, 12 Feb 2001, Jerzy Karczmarczuk wrote:

> I not only feel the need, but I feel that this is important that the
> additive structure in the codomain is inherited by functions.

It could support only the basic arithmetic. It would not automatically
lift an expression which uses (>) and if. It would be inconsistent to
provide a shortcut for a specific case, where generally it must be
explicitly lifted anyway. Note that it does make sense to lift (>) and if,
only the type system does not permit it implicitly because a type is fixed
to Bool.

Lifting is so easy to do manually that I would definitely not constrain
the whole Prelude class system only to have convenient lifting of basic
arithmetic. When it happens that an instance of an otherwise sane class
for functions makes sense, then OK, but nothing more.

-- 
Marcin 'Qrczak' Kowalczyk