← Back to team overview

dolfin team mailing list archive

Re: Expression and Function

 

On Wed, Nov 04, 2009 at 01:10:17PM +0100, Johan Hake wrote:
> On Wednesday 04 November 2009 09:37:55 Garth N. Wells wrote:
> > kent-and@xxxxxxxxx wrote:
> > > Hi, I am very happy with the  Expression, but old code like
> > >
> > > class Dabla(Function):
> > >     def eval(...)
> > >
> > > still works.
> > >
> > > The only problem is that the function is zero even though eval is
> > > implemented. Is it
> > > possible to turn this old code into an error?
> >
> > In C++, no. There is no mechanism in C++ to prevent a user overloading
> > or hiding a member function.
>
> In Python, using meta classes, yes.
>
> This is a nice exercise for those of you who want to get to know meta classes
> in Python. ;) If and when I have time I can fix this. (Heading for the states
> next Tuesday)
>
> Should we allow sub-classing of Function, but not overloading of eval?

We could start by disallowing subclassing the Function class and then
if a time comes when someone wants to subclass it, we can rethink it.

> Dr. Hake

Must feel good. :-)

--
Anders


> > Garth
> >
> > It would prevent some
> >
> > > debugging, I think.
> > >
> > > Kent
> > >
> > >
> > > _______________________________________________
> > > DOLFIN-dev mailing list
> > > DOLFIN-dev@xxxxxxxxxx
> > > http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/mailman/listinfo/dolfin-dev
> >
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev

Attachment: signature.asc
Description: Digital signature


Follow ups

References