On Jan 10, 10:41 pm, Nick Alexander <[EMAIL PROTECTED]> wrote: > That may be true, but this function is already so overloaded that > understanding the code is very difficult.
well, what if there are both functions and matrix just calls block_matrix if there are matrix objects in the list of arguments? i don't think code complexity is an issue there, since you can encapsulate all functionality in methods and at last, one of the main ideas behind object oriented programming with class hierarchies is that functions look the same but behave different depending on the object. from my point of view it is always more important to think of user friendliness (means less but more intelligent functions .. you can see this in the first posting, where this proposed extension is a logical "try-and-error" generalization to the current matrix command) and not of coding friendliness ;) > As for replicating the matrix to make > it fit, that's a terrible idea: hooray for difficult to diagnose bugs > and confusing semantics. this should be discussed. for example there could be a safeguard: like a parameter 'replicate' with default value 'none'. then nothing happens, just an error message. it could be easily extended in the future by implementing replication methods ('diagonal', 'full', 'upper- triangle','band3',...) then there is no problem with unintended automatic behaviour and all extensions are backwards compatible. H --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/ -~----------~----~----~----~------~----~------~--~---