quick_start.html 5.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
  4. <title>Quick Start</title>
  5. <link rel="stylesheet" href="../../../../../../../doc/src/boostbook.css" type="text/css">
  6. <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
  7. <link rel="home" href="../../index.html" title="Spirit X3 3.0.4">
  8. <link rel="up" href="../tutorials.html" title="Tutorials">
  9. <link rel="prev" href="../tutorials.html" title="Tutorials">
  10. <link rel="next" href="warming_up.html" title="Warming up">
  11. </head>
  12. <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
  13. <table cellpadding="2" width="100%"><tr>
  14. <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../../boost.png"></td>
  15. <td align="center"><a href="../../../../../../../index.html">Home</a></td>
  16. <td align="center"><a href="../../../../../../../libs/libraries.htm">Libraries</a></td>
  17. <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
  18. <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
  19. <td align="center"><a href="../../../../../../../more/index.htm">More</a></td>
  20. </tr></table>
  21. <hr>
  22. <div class="spirit-nav">
  23. <a accesskey="p" href="../tutorials.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorials.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="warming_up.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
  24. </div>
  25. <div class="section">
  26. <div class="titlepage"><div><div><h3 class="title">
  27. <a name="spirit_x3.tutorials.quick_start"></a><a class="link" href="quick_start.html" title="Quick Start">Quick Start</a>
  28. </h3></div></div></div>
  29. <h5>
  30. <a name="spirit_x3.tutorials.quick_start.h0"></a>
  31. <span class="phrase"><a name="spirit_x3.tutorials.quick_start.why_would_you_want_to_use__emphasis_spirit_x3__emphasis__"></a></span><a class="link" href="quick_start.html#spirit_x3.tutorials.quick_start.why_would_you_want_to_use__emphasis_spirit_x3__emphasis__">Why
  32. would you want to use <span class="emphasis"><em>Spirit.X3</em></span>?</a>
  33. </h5>
  34. <p>
  35. <span class="emphasis"><em>Spirit.X3</em></span> is designed to be a practical parsing tool.
  36. The ability to generate a fully-working parser from a formal EBNF specification
  37. inlined in C++ significantly reduces development time. Programmers typically
  38. approach parsing using ad hoc hacks with primitive tools such as scanf. Even
  39. regular-expression libraries (such as boost regex) or scanners (such as Boost
  40. tokenizer) do not scale well when we need to write more elaborate parsers.
  41. Attempting to write even a moderately-complex parser using these tools leads
  42. to code that is hard to understand and maintain.
  43. </p>
  44. <p>
  45. One prime objective is to make the tool easy to use. When one thinks of a
  46. parser generator, the usual reaction is "it must be big and complex
  47. with a steep learning curve." Not so. Spirit is designed to be fully
  48. scalable. The library is structured in layers. This permits learning on an
  49. as-needed basis, after only learning the minimal core and basic concepts.
  50. </p>
  51. <p>
  52. For development simplicity and ease in deployment, the entire library consists
  53. of only header files, with no libraries to link against or build. Just put
  54. the Spirit distribution in your include path, compile and run. Code size?
  55. -very tight -essentially comparable to hand written recursive descent code.
  56. </p>
  57. <p>
  58. Our tutorials will walk you through the simplest Spirit examples, incrementally
  59. building on top of the earlier examples as we expose more and more features
  60. and techniques. We will try to be as gentle as possible with the learning
  61. curve. We will present the tutorials in a cookbook style approach. This style
  62. of presentation is based on our BoostCon '07 and BoostCon '08 slides.
  63. </p>
  64. <p>
  65. Have fun!
  66. </p>
  67. </div>
  68. <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
  69. <td align="left"></td>
  70. <td align="right"><div class="copyright-footer">Copyright &#169; 2001-2018 Joel de Guzman,
  71. Hartmut Kaiser<p>
  72. Distributed under the Boost Software License, Version 1.0. (See accompanying
  73. file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
  74. </p>
  75. </div></td>
  76. </tr></table>
  77. <hr>
  78. <div class="spirit-nav">
  79. <a accesskey="p" href="../tutorials.html"><img src="../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../tutorials.html"><img src="../../../../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="warming_up.html"><img src="../../../../../../../doc/src/images/next.png" alt="Next"></a>
  80. </div>
  81. </body>
  82. </html>