diff --git a/doc/bibliography.htm b/doc/bibliography.htm new file mode 100644 index 0000000..8fec835 --- /dev/null +++ b/doc/bibliography.htm @@ -0,0 +1,47 @@ + +
+ +
+ |
+
+ Boost.Preprocessor+Bibliography+ |
+
Revised + + +
+© Copyright Housemarque Oy 2002
+ +Permission to copy, use, modify, sell and distribute this document is granted +provided this copyright notice appears in all copies. This document is provided +"as is" without express or implied warranty, and with no claim as to its suitability +for any purpose.
+ + diff --git a/doc/index.htm b/doc/index.htm index 2742b19..95ef2c1 100644 --- a/doc/index.htm +++ b/doc/index.htm @@ -26,7 +26,7 @@An especially important thing to remember is to limit the use of preprocessor to the structured, well understood and safe methods. Structure helps to understand - complex systems [4].
+ complex systems [McConnell].PROBLEM: "I'd -like to see Cpp abolished." - Bjarne Stroustrup in [1]
+like to see Cpp abolished." - Bjarne Stroustrup in [Stroustrup]SOLUTION: The C preprocessor will be here for a long time.
In practice, preprocessor metaprogramming is far simpler and more portable - than template metaprogramming [2].
+ than template metaprogramming [Czarnecki].Revised diff --git a/doc/references.htm b/doc/references.htm deleted file mode 100644 index 98f42dc..0000000 --- a/doc/references.htm +++ /dev/null @@ -1,40 +0,0 @@ - -
- -
- |
-
- Boost.Preprocessor-References- |
-
- -
© Copyright Housemarque Oy 2002
- -Permission to copy, use, modify, sell and distribute this document is granted -provided this copyright notice appears in all copies. This document is provided -"as is" without express or implied warranty, and with no claim as to its suitability -for any purpose.
- - diff --git a/doc/tutorial.htm b/doc/tutorial.htm index 399ad37..dbc6e8d 100644 --- a/doc/tutorial.htm +++ b/doc/tutorial.htm @@ -103,7 +103,7 @@ yes_type is_function_tester(R (*)(A0, A1, A2)); specifically does not support repetition or recursive macros. Library support is needed!For detailed information on the capabilities and limitations of the preprocessor, - please refer to the C++ standard [5].
+ please refer to the C++ standard [Std].Using the primitives of the PREPROCESSOR library, the is_function_tester()s could be implemented like this:
@@ -158,8 +158,8 @@ BOOST_PP_DEF(/) the line continuation operator when they are aligned.NOTES: You can extend this example by defining more and different kinds of operators. Before doing so, consider using the Algebraic Categories technique - introduced in [3] or a Layered Architecture (see for instance - [2]). However, at some point you must type the operator tokens + introduced in [Barton] or a Layered Architecture (see for instance + [Czarnecki]). However, at some point you must type the operator tokens *, /, +, -, ..., because it is impossible to generate them using templates. The resulting Categorical Repetition of tokens can be eliminated by using preprocessor metaprogramming.
@@ -369,7 +369,7 @@ BOOST_PP_REPEATNOTE: The repetition of the above -example can be eliminated using template metaprogramming [2] as well. However +example can be eliminated using template metaprogramming [Czarnecki] as well. However categorical repetition of operator tokens can not be completely eliminated by using template metaprogramming.