Browse files

[doc] book: removed deprecated book

  • Loading branch information...
1 parent 875d1bd commit a39aaed4a7a34685300c7669141c9f93a0d3ef1c @Aqua-Ye Aqua-Ye committed Mar 26, 2012
Showing with 0 additions and 16,463 deletions.
  1. 0 doc/{book → }/DOCUMENTATION
  2. 0 doc/{book → }/GUIDELINES
  3. +0 −90 doc/book/Makefile
  4. +0 −221 doc/book/about.adoc
  5. +0 −776 doc/book/also_bindings/also_bindings.adoc
  6. +0 −13 doc/book/also_bindings/sources/Makefile
  7. +0 −18 doc/book/also_bindings/sources/c_binding/Makefile
  8. +0 −2 doc/book/also_bindings/sources/c_binding/
  9. +0 −54 doc/book/also_bindings/sources/c_binding/freq.c
  10. +0 −2 doc/book/also_bindings/sources/c_binding/freq.opa
  11. +0 −10 doc/book/also_bindings/sources/external_types/Makefile
  12. +0 −37 doc/book/also_bindings/sources/external_types/
  13. +0 −77 doc/book/also_bindings/sources/external_types/bigint.opa
  14. +0 −35 doc/book/also_bindings/sources/hello_bindings.opa
  15. +0 −17 doc/book/also_bindings/sources/opa_types/Makefile
  16. +0 −134 doc/book/also_bindings/sources/opa_types/
  17. +0 −97 doc/book/also_bindings/sources/opa_types/dbm.opa
  18. +0 −9 doc/book/also_bindings/sources/plugin.js
  19. +0 −4 doc/book/also_bindings/sources/
  20. +0 −16 doc/book/also_directives/also_directives.adoc
  21. +0 −293 doc/book/also_filenames/also_filenames.adoc
  22. +0 −14 doc/book/also_warnings/also_warnings.adoc
  23. +0 −316 doc/book/asciidoc.conf
  24. +0 −29 doc/book/bsl.adoc
  25. +0 −17 doc/book/chunked.xsl
  26. +0 −106 doc/book/common.xsl
  27. +0 −35 doc/book/db.adoc
  28. +0 −5 doc/book/grammar.lang
  29. +0 −897 doc/book/hello_chat/hello_chat.adoc
  30. +0 −87 doc/book/hello_chat/hello_chat.opa
  31. +0 −94 doc/book/hello_chat/hello_chat_author.opa
  32. +0 −75 doc/book/hello_chat/hello_chat_min.opa
  33. +0 −41 doc/book/hello_chat/resources/css.css
  34. BIN doc/book/hello_chat/resources/opa-logo.png
  35. BIN doc/book/hello_chat/resources/user.png
  36. BIN doc/book/hello_chat/result.png
  37. BIN doc/book/hello_chat/result_without_css.png
  38. +0 −281 doc/book/hello_distribution/hello_distribution.adoc
  39. +0 −5 doc/book/hello_recaptcha/Makefile
  40. +0 −820 doc/book/hello_recaptcha/hello_recaptcha.adoc
  41. +0 −239 doc/book/hello_recaptcha/hello_recaptcha.opa
  42. +0 −35 doc/book/hello_recaptcha/hello_recaptcha_app.opa
  43. +0 −141 doc/book/hello_recaptcha/hello_recaptcha_test.opa
  44. +0 −35 doc/book/hello_recaptcha/recaptcha.js
  45. BIN doc/book/hello_recaptcha/result.png
  46. +0 −942 doc/book/hello_web_services/hello_web_services.adoc
  47. +0 −70 doc/book/hello_web_services/hello_wiki_rest.opa
  48. +0 −93 doc/book/hello_web_services/hello_wiki_rest_client.opa
  49. +0 −106 doc/book/hello_web_services/hello_wiki_rest_client_customizable.opa
  50. +0 −1 doc/book/hello_web_services/resources
  51. +0 −552 doc/book/hello_wiki/hello_wiki.adoc
  52. +0 −134 doc/book/hello_wiki/hello_wiki.opa
  53. +0 −185 doc/book/hello_wiki/hello_wiki_mongo.opa
  54. +0 −275 doc/book/hello_wiki/hello_wiki_mongo2.opa
  55. +0 −134 doc/book/hello_wiki/hello_wiki_simple.opa
  56. +0 −13 doc/book/hello_wiki/resources/css.css
  57. BIN doc/book/hello_wiki/resources/opa-logo.png
  58. BIN doc/book/hello_wiki/result.png
  59. +0 −10 doc/book/hello_xml/hello_xml.adoc
  60. +0 −192 doc/book/install.adoc
  61. +0 −128 doc/book/javascripts/asciidoc-xhtml11.js
  62. +0 −94 doc/book/main.adoc
  63. +0 −725 doc/book/mlstatebook.cls
  64. +0 −3 doc/book/
  65. BIN doc/book/one_binary.png
  66. BIN doc/book/oni.png
  67. BIN doc/book/opa-logo-orange.png
  68. BIN doc/book/opa-logo.png
  69. +0 −62 doc/book/opa.lang
  70. +0 −444 doc/book/opalang.css
  71. +0 −38 doc/book/print-cover.html
  72. +0 −26 doc/book/print-footer.html
  73. +0 −29 doc/book/print-header.html
  74. +0 −21 doc/book/style.sty
  75. +0 −1,541 doc/book/the_core_language/the_core_language.adoc
  76. +0 −967 doc/book/the_database/mongo.adoc
  77. +0 −337 doc/book/the_database/the_database.adoc
  78. +0 −18 doc/book/the_distribution/the_distribution.adoc
  79. +0 −34 doc/book/the_execution/opa-plugin-browser.adoc
  80. +0 −34 doc/book/the_execution/opa-plugin-builder.adoc
  81. +0 −220 doc/book/the_execution/opa.adoc
  82. +0 −83 doc/book/the_execution/opa_applications.adoc
  83. +0 −88 doc/book/the_execution/opadoc.adoc
  84. +0 −25 doc/book/the_execution/the_execution.adoc
  85. +0 −18 doc/book/the_modularity/the_modularity.adoc
  86. +0 −13 doc/book/the_security/the_security.adoc
  87. +0 −13 doc/book/the_stdlib/the_stdlib.adoc
  88. +0 −2,566 doc/book/the_type_system/the_type_system.adoc
  89. +0 −17 doc/book/the_ui/the_ui.adoc
  90. +0 −81 doc/book/the_web_language/including_resources.adoc
  91. +0 −183 doc/book/the_web_language/slicer.adoc
  92. +0 −694 doc/book/the_web_language/the_web_language.adoc
  93. +0 −77 doc/book/toc.xsl
File renamed without changes.
File renamed without changes.
@@ -1,90 +0,0 @@
-OPA ?= opa --parser classic
-OPA_PLUGIN_BUILDER ?= opa-plugin-builder
-OCAMLOPT ?= ocamlopt.opt
- hello_chat/hello_chat.exe \
- hello_chat/hello_chat_author.exe \
- hello_wiki/hello_wiki.exe \
- hello_web_services/hello_wiki_rest.exe \
- hello_web_services/hello_wiki_rest_client.exe \
- hello_web_services/hello_wiki_rest_client_customizable.exe \
- hello_recaptcha/hello_recaptcha_app.exe
-all: book.pdf index.html
-zip: ../
- opa.lang grammar.lang
- rm -f
- source-highlight --lang-list >>
- cat >
- rm -f
-book.pdf: *.adoc */*.adoc asciidoc.conf
- a2x --asciidoc-opts="--conf asciidoc.conf" -d book -v --dblatex-opts="--texstyle=style.sty -d" -a toc main.adoc;
- mv main.pdf book.pdf
-book.epub: *.adoc */*.adoc asciidoc.conf
- a2x --asciidoc-opts="--conf asciidoc.conf" -d book -v -f epub -a toc main.adoc;
- mv main.epub book.epub
-book.xml: *.adoc */*.adoc opalang.css */*.opa
- asciidoc --conf asciidoc.conf -a toclevel=4 -a theme=slidy -a stylesheet=$(CURDIR)/opalang.css -a toc -a numbered -b docbook -v -d book main.adoc;
- mv main.xml book.xml
-book_multipart/index.html: book.xml
- xsltproc --stringparam html.stylesheet opalang.css -o book_multipart/ --nonet chunked.xsl book.xml
-book3.pdf: *.adoc */*.adoc asciidoc.conf mlstatebook.cls
- a2x --asciidoc-opts="--conf asciidoc.conf" -d book -v --dblatex-opts="--texstyle=style.sty -d -P" -a toc main.adoc;
- mv main.pdf book3.pdf
-index.html: book.xml
- asciidoc --conf asciidoc.conf -a toclevel=4 -a theme=slidy -a stylesheet=$(CURDIR)/opalang.css -a toc -a numbered -b xhtml11 -v main.adoc;
- mv main.html index.html
-book2.pdf: index2.html Makefile toc.xsl print-cover.html print-footer.html print-header.html
- $(HTML2PDF) --enable-toc-back-links --print-media-type --margin-left 20mm --margin-right 20mm --margin-top 30mm --margin-bottom 30mm --page-width 210 --page-height 297 --header-left "[section]" --header-right "[subsection]" --header-font-name serif --header-font-size 8 --header-line --header-spacing 5 --footer-left "Simple, Secure, Scalable Web Development with Opa" --footer-right "[page]" --footer-font-name serif --footer-font-size 8 --footer-line --footer-spacing 2 --debug-javascript cover print-cover.html toc --xsl-style-sheet toc.xsl --disable-dotted-lines index2.html book2.pdf
-index2.html: index.html
- asciidoc --conf asciidoc.conf -a theme=slidy -a stylesheet=$(CURDIR)/opalang.css -b xhtml11 -v -d book -a numbered main.adoc;
- mv main.html index2.html
-test-chunked.html: test.html
- asciidoc --conf asciidoc.conf -a theme=slidy -a stylesheet=$(CURDIR)/opalang.css -b xhtml11 -v -d book -a numbered --nonet $(ADOCDIR)docbook-xsl/chunked.xsl test.adoc
-test.html: *.adoc */*.adoc opalang.css
- asciidoc --conf asciidoc.conf -a theme=slidy -a stylesheet=$(CURDIR)/opalang.css -b xhtml11 -v -d book -a numbered test.adoc
-test.pdf: test.html Makefile toc.xsl print-cover.html print-footer.html print-header.html
- $(HTML2PDF) --enable-toc-back-links --print-media-type --margin-left 20mm --margin-right 20mm --margin-top 30mm --margin-bottom 30mm --page-width 210 --page-height 297 --header-left "[section]" --header-right "[subsection]" --header-font-name serif --header-font-size 8 --header-line --header-spacing 5 --footer-left "Simple, Secure, Scalable Web Development with Opa" --footer-right "[page]" --footer-font-name serif --footer-font-size 8 --footer-line --footer-spacing 2 --debug-javascript cover print-cover.html toc --xsl-style-sheet toc.xsl --disable-dotted-lines test.html test.pdf
-../ clean index.html
- zip ../ *
-examples: $(EXAMPLES)
- $(MAKE) -C also_bindings/sources
- $(MAKE) -C also_bindings/sources/c_binding
- $(MAKE) -C also_bindings/sources/external_types
- $(MAKE) -C also_bindings/sources/opa_types
- $(MAKE) -C $(@D) $(@F)
-%.exe: %.opa
- cd $(<D) && $(OPA) $(<F)
- rm -rf */_build */_tracks */*.opp */*.opx
- rm -f */*.exe
-clean: clean-examples
- rm -f index*.html test*.html *.pdf *.log book_multipart/*
@@ -1,221 +0,0 @@
-Introducing Opa
-This is a great time to be a developer: As a community, we are
-changing the world, every day, thanks to the web, the cloud and their
-myriads of applications. Web applications and technologies available
-to developers have evolved tremendously since the first days of the
-Opa is a new generation of web development platform that lets you
-write distributed web applications using a single technology.
-Throughout the pages of this book, we will introduce you to the
-many features of Opa. To quote but a few, Opa is concise, simple,
-concurrent, dynamically distributed, and secure.
-What problem does Opa solve?
-The web is evolving at a very fast pace. Unfortunately, the _process_
-of web application development has evolved neither quite as far, nor
-nearly as fast. Indeed, developing a web application in 2011 is not so
-different from developing a PC application in 1991: an impressive
-amount of developer time is spent not working on features or
-improvements but on _gluing_ together antagonist technologies that
-were never designed to work together or in this context. In 1991, the
-technologies were the various hardware components, the low-level
-operating system, the high-level operating system and the memory
-itself, which could only be hacked into compliance through copious
-amounts of machine code. Per se, none of these technologies was wrong,
-but they just failed to fit together -- a problem now known as
-_impedance mismatch_.
-Today, the technologies involved include the various incompatible
-browsers, the server components or the database components, to quote
-but a few. As in 1991, none of these technologies is wrong, but they
-do not fit together. Because of this impedance mismatch, developers
-need to add to their application logic copious amounts of glue code
-just to get the components to agree on communication mechanisms and
-application-level protocols. Not only is this glue code tedious,
-repetitive and error-prone, but this is also where most safety and
-security issues arise.
-In 1991, the answer to impedance mismatch was Software Development
-Kits, and indeed these SDKs proved very useful at allowing developers
-to develop anything at all, but failed to address the underlying
-issues. This was only achieved later, through better operating
-systems, better development tools, and resulted in today's Java
-Platform, C#, Objective-C or Python, for instance.
-In 2011, web frameworks, both client-side and server-side, have the
-same role as the SDKs of the 1991s, with the same success but also the
-same shortcomings. But the problem remains: Building web applications
-is hackish, relies on glue code and is barely reusable.
-How Opa solves it
-With Opa, we set out to provide another, better, way of developing web
-applications for the cloud. Opa is designed to get you to your
-finished app faster, concentrating only on the interesting parts,
-without the hassle of writing the glue or of using a programming
-language against its original design; also without having to keep such
-a constant watch on low-level security issues.
-Opa is a programming language and a standard library comprising a
-database management system, a web server, a server-side framework, a
-client-side framework, a distribution middleware, a security audit
-tool, but without the complexity of deployment, administration, or
-impedance mismatch stemming from the use of many different
-Developing with Opa is as simple as it gets: First, write your code
-with the Opa programming language -- and only the Opa programming
-language, no JavaScript, no SQL, or anything such. Then compile the
-code, and let Opa analyze security, generate the code for the browser,
-for the server, for the database, and combine it with the web
-server. Finally, launch your executable and every browser, including
-mobile, can connect to your application. There is need to
-independently deploy, administer or maintain a database management
-system, a web server, frameworks or middleware. If you have lots of
-users, deploying in the cloud is just a command away.
-Simply put, Opa is a programming language and its runtime,
-designed to carry web developers from start to finish of their development,
-from early prototype to seamless deployment.
-What Opa is not
-While Opa offers all the features that developers have come to expect
-from a high-end web server, a high-end distributed database management
-system, frameworks or distribution engine, Opa does _not_ resemble
-Apache or Tomcat, MySQL or Oracle SQL, Drupal or Ruby on Rails, Google
-AppEngine or Hadoop. With some effort, Opa could certainly be used to
-mimic some of these components, but that is not how or why Opa was
-To this day, Opa does not offer a command-line database interface, or
-mechanisms to serve web pages from the file system. Opa is probably
-not well suited for writing embedded or desktop applications or
-anything else which does not run in the web.
-What is it good for?
-Opa was designed for all users, beginners or seasoned developers, students or
-professionals, but not for all applications.
-Indeed, Opa was built from the bottom-up for _cloud_ applications, and
-shines most with applications that require scalability, security,
-interactivity, real-time web and complex data manipulation.
-Think of a social application. Numerous users communicating in
-real-time by chat, e-mail, forums or other means, through a rich user
-interface, but also through web services that can be accessed by
-third-party websites or native mobile interfaces. Perhaps these users
-can even modify shared appointment tables or work on some documents
-together. Developers need to combine complex information sources,
-extract the results quickly and get them back to the user in
-real-time. As the number of users grows, servers must be added, both
-to store large amounts of data, to manipulate it, and to respond
-quickly to end-users.
-Out of the box, Opa features scalable storage, heavily
-concurrent/distributed manipulation of data, service-oriented API and
-load-balanced web serving. Even better, as social applications
-commonly require considerable computing power, the computing
-performance of Opa ensures that fewer machines are required to handle
-crowds than would be required with other development solutions.
-Or think of an e-Commerce store. Highly dynamic web pages, generated
-constantly from the database, and a user experience that may need to
-be altered quickly and without disrupting the flow, to match holiday
-seasons or ongoing ad campaigns, but also a base of orders that needs
-to be kept secure from would-be intruders, and safe from accidents,
-including hardware failures.
-Opa is also great for these kinds of applications. Its content
-management engine is second to none, whether in flexibility, power or
-security. Opa's built-in security checks guarantee that the
-application will resist most attacks, while the replicated and
-versioned database ensures that you can always rollback to previous
-data or recover from outages.
-We have used Opa to build social networks, e-Commerce applications,
-but also multiplayer web games, communication tools,
-developer-oriented tools -- and of course the CMS behind
-[our website].
-A first peek at Opa
-The rest of the book will introduce you in all details to Opa, but let us take
-a sneak peek preview and take a look at the simplest application: Hello, web.
-[source, opa]
-server = one_page_server("Hello", -> <>Hello, web!</>)
-This is the full source code of the application. Without any setup (besides the
-installation of the compiler), obtaining a complete, deployable application is
-only a matter of one step:
-opa hello_web.opa
-This command produces a stand-alone executable binary, containing
-everything required for execution, including database management, compiled
-requests, server code, client code, user interface and everything that may be
-needed to connect them or to handle malicious connections or inputs. Opa generated
-and checked all this code for you. You may now launch the server:
-Or, if you prefer, you may deploy it to a cloud:
-opa-cloud hello_web.exe --host localhost --host my@my_server1 --host my@my_server2
-Your application is launched, load-balanced, and servers share whichever information
-is necessary.
-//Welcome to Opa. It really is that simple.
-In the following chapters, we will introduce you to the various features and
-use-cases of Opa. Each chapter concentrates on writing one specific application, and
-on how best to achieve this using combinations of skills developed in previous and
-current chapter. At the end of the book, additional reference chapters recapitulate
-in detail all the concepts of the language and the platform.
-This book assumes some knowledge of programming (any language should do) and web
-pages (knowledge of HTML and CSS will be useful). Any additional knowledge of
-web applications will let you understand better how much Opa makes development
-Getting in touch
-If you have any question or feedback, do not hesitate to contact us.
-A few ways to get in touch:
-- Opa[mailing list];
--[Stack Overflow], an excellent site for seeking
- help with programming problems (do not forget to mark Opa related questions with
- the ``Opa'' tag);
-- through[Twitter], as opalang.
-We will be there!
Oops, something went wrong.

0 comments on commit a39aaed

Please sign in to comment.