Re: [Wing-007-technical] Making wing modules platform-independent ---- much tougher than I expected
Status: Pre-Alpha
Brought to you by:
renqilin
|
From: Stein G. G. <gra...@pv...> - 2009-04-07 10:47:06
|
Hi, "Is there anybody has some thoughts on iostream, log system, string, threads and file/directory?" I think this should be the priority for these. 1. string 2. file/directory 3. iostream 4. log system 5. threads. This is because I think first we will need a string, and to make a io system that works with our string, we'll need file access. But there are some fileIO and string implementation on svn (not cross-platform). Is it those file we need to improve and make them cross-platform? I'll like to start working on some of these problems, and help get the framework cross-platform. But I need to know where to begin and what it should support. Are we going to replace iostream, fstream etc? -steini > On Tue, 2009-04-07 at 11:43 +0800, 任麒麟 wrote: > Hi everyone, > > Recently I was working on platform-independent code base. I uploaded > some pages and codes. > > The pages can be found at (You may need to force refresh the page): > http://wing-007.sourceforge.net/DevGuide/coding_standard.html > > The code can be found at the svn address: > https://wing-007.svn.sourceforge.net/svnroot/wing-007/sandbox/cross_platform_test > > > Now I found that the task is much much tougher than I originally > expected. The major reason is that we need to conform to C and C++ > standard, while current standards are not enough for us. We need > functionalities that are not defined in standard: > > 1. We need to handle endianness. However iostream is designed > majorly for texts, not binary streams. It doesn't handle endianness. > That means if we want to support endianness, we need to provide a > stream system other than the standard one. > 2. Extending the std::stream_buf requires a lot of work. > 3. There is no log system in standard. > 4. Many functions such as char attributes get functions (toupper, > tolower, isdigit, isprint, etc.) are defined in C99, while we cannot > always expect the compiler fully support C99. That means we need to > implement those functions for C89 compilers. > 5. There is no thread, dll and process functions in standard. > 6. A lot of work are needed in order to support cross-platform > file/directory/disk operations. eg. There is no standard for getting > the current directory. > > Is there anybody has some thoughts on iostream, log system, string, > threads and file/directory? > > ------------------------------------------------------------------------------ > This SF.net email is sponsored by: > High Quality Requirements in a Collaborative Environment. > Download a free trial of Rational Requirements Composer Now! > http://p.sf.net/sfu/www-ibm-com > _______________________________________________ Wing-007-technical mailing list Win...@li... https://lists.sourceforge.net/lists/listinfo/wing-007-technical |