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-...@simula.no 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@fenics.org > > > http://www.fenics.org/mailman/listinfo/dolfin-dev > > > > _______________________________________________ > > DOLFIN-dev mailing list > > DOLFIN-dev@fenics.org > > http://www.fenics.org/mailman/listinfo/dolfin-dev > > > _______________________________________________ > DOLFIN-dev mailing list > DOLFIN-dev@fenics.org > http://www.fenics.org/mailman/listinfo/dolfin-dev
signature.asc
Description: Digital signature
_______________________________________________ DOLFIN-dev mailing list DOLFIN-dev@fenics.org http://www.fenics.org/mailman/listinfo/dolfin-dev