digitalmars.D - D 1.0 - object(.d) and print(f)
- =?ISO-8859-1?Q?Anders_F_Bj=F6rklund?= (31/51) Feb 11 2005 Now that we have the new "writef",
Now that we have the new "writef", how long is it until D 1.0 is here - is it time to start deprecating "printf" and "Object.print()" in object.d just yet ? Like Kris asked, last year: http://www.digitalmars.com/d/archives/digitalmars/D/bugs/255.html That is:extern (C) { int printf(char *, ...); }andclass Object { void print() { printf("%.*s\n", toString()); }I know they are just "while debugging", but isn't D getting stable real soon ? :-) ("print" is totally not needed, and "printf" really lives in std.c.stdio) Couldn't they at least be wrapped in a debug( ) { } statement, or something ? So that they'll both be stripped out of the release builds, when done debugging deprecated could probably work meanwhile for printf, for the non-debug version ? (object.printf that is, not the final std.c.stdio.printf location of course)extern(C) { debug { int printf(char *, ...); } else { deprecated int printf(char *, ...); } }printf can be a good help while debugging/unittesting, but it shouldn't be included in the release builds... It has to go eventually, so better start preparing for it already ? (will be a huge effort to clean all code up later, if it remains...) Thomas started to clean up Phobos: http://www.digitalmars.com/drn-bin/wwwnews?digitalmars.D.bugs/2026 What else is holding off 1.0, besides shared libraries and debugging information (-g) on Linux ? Phobos, still ? (I posted patches to a few of the shortcomings of it, such as for std.format:unittest and std.stdio:writeln) --anders
Feb 11 2005