Dear Douglas and Miles, This is (essentially) what I am doing at the moment, i.e., I take care of the boundary conditions during the assembly. This is really the "right" thing to do for a serious code, but for quick experimentation and teaching codes, the slicing notation to implement boundary conditions is extremely convenient and intuitive.
Christoph
