diff --git a/doc/design.htm b/doc/design.htm index 084ab1a..79abceb 100644 --- a/doc/design.htm +++ b/doc/design.htm @@ -35,7 +35,7 @@ perform portable filesystem operations on directories and their contents. The Filesystem Library was developed to fill that void.

The intent is not to compete with traditional scripting languages, but to -provide a solution for situations like Boost, where C++ is already the language +provide a solution for situations where C++ is already the language of choice..

Requirements

@@ -100,12 +100,23 @@ of choice..

Libraries with elaborate interfaces and difficult to port specifications are much less likely to be accepted for standardization.
  -
  • The usual Boost requirements for any library also apply.
    +
  • The usual Boost requirements and + guidelines apply.
     
  • Encourage, but do not require, portability in path names.
    +
    + Rationale: For paths which originate from user input it is unreasonable to + require portable path syntax.
     
  • -
  • Avoid the illusion of portability where portability in fact does not - exist.
  • +
  • Avoid giving the illusion of portability where portability in fact does not + exist.
    +
    + Rationale: Defining important behavior unspecified or "implementation defined" does a + great disservice to programmers using a library because it makes it appear + that code relying on the behavior is portable, when in fact there is nothing + at all portable about it. The only case where such under-specification is acceptable is when both users and implementors know from + other sources exactly what behavior is required, yet for some reason it isn't + possible to specify it exactly.
  • Realities

    @@ -203,6 +214,11 @@ answers to that question, the Filesystem Library alerts programmers of the need to ask it in the first place.

    Abandoned Designs

    operations.hpp

    +

    Dietmar Kühl's original dir_it design and implementation supported +wide-character file and directory names. It was abandoned after extensive +discussions among Library Working Group members failed to identify portable +semantics for wide-character names on systems not providing native support. See +FAQ.

    Previous iterations of the interface design used explicitly named functions providing a large number of convenience operations, with no compile-time or run-time options. There were so many function names that they were very confusing to use, @@ -268,7 +284,7 @@ Variable Considered Harmful, ACM SIGPLAN Notices, 8, 2, 1973, pp. 23-34


    © Copyright Beman Dawes, 2002

    Revised -30 July, 2002

    +13 September, 2002

    diff --git a/doc/do-list.htm b/doc/do-list.htm index 4287b50..97c5afa 100644 --- a/doc/do-list.htm +++ b/doc/do-list.htm @@ -5,7 +5,8 @@ Do-list @@ -17,9 +18,6 @@ Do-list