diff --git a/doc/headers.html b/doc/headers.html
index 90b59fd..e96b25e 100644
--- a/doc/headers.html
+++ b/doc/headers.html
@@ -138,8 +138,10 @@
punctuation/
comma.hpp
comma_if.hpp
+ is_begin_parens.hpp (v)
paren.hpp
paren_if.hpp
+ remove_parens.hpp (v)
repeat.hpp*
repeat_2nd.hpp*
repeat_3rd.hpp*
diff --git a/doc/headers/punctuation/is_begin_parens.html b/doc/headers/punctuation/is_begin_parens.html
new file mode 100644
index 0000000..4897623
--- /dev/null
+++ b/doc/headers/punctuation/is_begin_parens.html
@@ -0,0 +1,26 @@
+
+
+
+ punctuation/is_begin_parens.hpp
+
+
+
+ The punctuation/is_begin_parens.hpp
+ header defines a macro that determines if variadic data begins with a
+ parenthesis.
+ Usage
+ #include <boost/preprocessor/punctuation/is_begin_parens.hpp>
+
+ Contents
+
+
+ © Copyright Edward Diener 2014
+
+
+
diff --git a/doc/headers/punctuation/remove_parens.html b/doc/headers/punctuation/remove_parens.html
new file mode 100644
index 0000000..f2b6e46
--- /dev/null
+++ b/doc/headers/punctuation/remove_parens.html
@@ -0,0 +1,26 @@
+
+
+
+ punctuation/remove_parens.hpp
+
+
+
+ The punctuation/remove_parens.hpp
+ header defines a macro that removes the beginning parenthesis from its
+ input if it exists.
+ Usage
+ #include <boost/preprocessor/punctuation/remove_parens.hpp>
+
+ Contents
+
+
+ © Copyright Edward Diener 2014
+
+
+
diff --git a/doc/ref.html b/doc/ref.html
index 82c2905..4d2081f 100644
--- a/doc/ref.html
+++ b/doc/ref.html
@@ -105,6 +105,7 @@
INCLUDE_SELF
INDIRECT_SELF
INTERCEPT
+ IS_BEGIN_PARENS (v)
IS_ITERATING
IS_SELFISH
ITERATE
@@ -209,6 +210,7 @@
RELATIVE_FLAGS
RELATIVE_ITERATION
RELATIVE_START
+ REMOVE_PARENS (v)
REPEAT
REPEAT_1ST*
REPEAT_2ND*
diff --git a/doc/ref/is_begin_parens.html b/doc/ref/is_begin_parens.html
new file mode 100644
index 0000000..0e0b39c
--- /dev/null
+++ b/doc/ref/is_begin_parens.html
@@ -0,0 +1,47 @@
+
+
+
+ BOOST_PP_IS_BEGIN_PARENS
+
+
+
+ The BOOST_PP_IS_BEGIN_PAREN S
+ determines whether the input starts with a set of parenthesis.
+ Usage
+ BOOST_PP_IS_BEGIN_PARENS (...)
(v)
+ Arguments
+ ...
+ The input as variadic data.
+ Remarks
+ If the input input begins with a parenthesis, with any data within
+ that parenthesis, the macro returns 1, otherwise it returns 0. Data may
+ follow the beginning parenthesis and the macro still will return 1.
+
+ For Visual Studio 2005 ( VC8 ) the input data must be a single parameter
+ else a compilation error will occur.
+ See Also
+
+ Requirements
+
+ Sample Code
+
+
#include <boost/preprocessor/punctuation/is_begin_parens.hpp >
+
+#define VARDATA more_data , more_params #define VARDATAP ( data ) more_data , more_params #define DATA data #define DATAP ( data ) more_data
+BOOST_PP_IS_BEGIN_PARENS(VARDATA) // expands to 0, compiler error with VC8
+BOOST_PP_IS_BEGIN_PARENS(VARDATAP) // expands to 1, compiler error with VC8 BOOST_PP_IS_BEGIN_PARENS(DATA) // expands to 0
+BOOST_PP_IS_BEGIN_PARENS(DATAP) // expands to 1 BOOST_PP_IS_BEGIN_PARENS() // expands to 0
+
+
+ © Copyright Edward Diener 2014
+
+
+
diff --git a/doc/ref/remove_parens.html b/doc/ref/remove_parens.html
new file mode 100644
index 0000000..72312dd
--- /dev/null
+++ b/doc/ref/remove_parens.html
@@ -0,0 +1,44 @@
+
+
+
+ BOOST_PP_REMOVE_PARENS
+
+
+
+ The BOOST_PP_REMOVE_PAREN S macro
+ removes the beginning parenthesis, if it exists, from the input data and
+ expands to the result
+ Usage
+ BOOST_PP_REMOVE_PARENS (param)
(v)
+ Arguments
+ param
+
+ The input data.
+ Remarks
+ If the input begins with a parenthesis, with any data within that
+ parenthesis, the macro removes the parenthesis and expands to the result.
+ If the input does not begin with a parenthesis the macro expands to the
+ input.
+
+ See Also
+
+ Requirements
+
+ Sample Code
+
+
+ © Copyright Edward Diener 2014
+
+
+