diff options
Diffstat (limited to 'docs/_includes')
-rw-r--r-- | docs/_includes/faq.html | 101 | ||||
-rw-r--r-- | docs/_includes/features.html | 114 | ||||
-rw-r--r-- | docs/_includes/getting-started.html | 31 | ||||
-rw-r--r-- | docs/_includes/logo-page.html | 89 | ||||
-rw-r--r-- | docs/_includes/toc.html | 36 |
5 files changed, 354 insertions, 17 deletions
diff --git a/docs/_includes/faq.html b/docs/_includes/faq.html new file mode 100644 index 000000000..7c2126ac4 --- /dev/null +++ b/docs/_includes/faq.html @@ -0,0 +1,101 @@ +<div class="page blue"> + <div class="centered questions"> + <h1 id="why-dotty">Why Dotty?</h1> + <p> + Dotty is a platform to try out new language concepts and compiler + technologies for Scala. The focus is mainly on simplification. We + remove extraneous syntax (e.g. no XML literals), and try to boil + down Scala’s types into a smaller set of more fundamental + constructors. The theory behind these constructors is researched in + <a href="https://infoscience.epfl.ch/record/215280">DOT</a>, a + calculus for dependent object types. + </p> + + <h1 id="is-it-the-future-scala">Is it the future Scala?</h1> + <div class="centered-text"> + <p>Yes, it will be - eventually.</p> + </div> + + <h1 id="can-i-use-it">Can I use it?</h1> + <div class="centered-text"> + <p> + <a href="#getting-started">You can!</a> But it currently comes with + no guarantees of stability. + </p> + </div> + + <h1 id="is-there-scala-2-interop">Is there Scala 2 interop?</h1> + <div class="centered-text"> + <p> + Dotty currently interops with libraries compiled with Scala + 2.11 - but not 2.12 + </p> + </div> + + <h1 id="how-do-i-migrate-my-code-to-dotty">How do I migrate my code to Dotty?</h1> + <p> + An automated rewriting tool is planned for Dotty, more on this to come. + Scala 2 sources can be compiled to some degree by issuing: + </p> + <pre class="sourceCode bright"><code>./bin/dotc -language:Scala2 file.scala</code></pre> + <p>when compiling your program.</p> + + <h1 id="whos-working-on-it">Who’s working on it?</h1> + <div class="contributors"> + <div class="contributors-cell"> + <div class="contributor"> + <a href="http://github.com/odersky"> + <img src="{{ site.baseurl }}/images/martin.jpg"> + </a> + Martin Odersky + </div> + + <div class="contributor"> + <a href="http://www.d-d.me"> + <img src="{{ site.baseurl }}/images/petrashko.png"> + </a> + Dmitry Petrashko + </div> + + <div class="contributor"> + <a href="http://guillaume.martres.me/"> + <img src="{{ site.baseurl }}/images/smarter.jpg"> + </a> + Guillaume Martres + </div> + </div> + <div class="contributors-cell"> + <div class="contributor"> + <a href="http://fengy.me/"> + <img src="{{ site.baseurl }}/images/fengyun.png"> + </a> + Liu Fengyun + </div> + + <div class="contributor"> + <a href="https://github.com/felixmulder"> + <img src="{{ site.baseurl }}/images/felix.jpeg"> + </a> + Felix Mulder + </div> + + <div class="contributor"> + <a href="https://github.com/nicolasstucki"> + <img src="{{ site.baseurl }}/images/nico.png"> + </a> + Nicolas Stucki + </div> + </div> + </div> + + <div class="centered-text"> + <p> + And a long line of + <a href="https://github.com/lampepfl/dotty/graphs/contributors"> + contributors! + </a> + </p> + </div> + </div> +</div> + diff --git a/docs/_includes/features.html b/docs/_includes/features.html new file mode 100644 index 000000000..bbba6d54c --- /dev/null +++ b/docs/_includes/features.html @@ -0,0 +1,114 @@ +<div class="page teal"> + <div class="centered questions"> + <h1 id="so-features">So, features?</h1> + <div class="centered-table"> + <table> + <colgroup> + <col width="82%" /> + <col width="17%" /> + </colgroup> + <tbody> + <tr class="odd"> + <td>Union, intersection and <a href="http://docs.scala-lang.org/sips/pending/42.type.html">literal singleton types</a></td> + <td>Implemented</td> + </tr> + <tr class="even"> + <td>Fast compilation (phase fusion)</td> + <td>Implemented</td> + </tr> + <tr class="odd"> + <td><a href="http://docs.scala-lang.org/sips/pending/trait-parameters.html">Trait parameters</a></td> + <td>Implemented</td> + </tr> + <tr class="even"> + <td><a href="https://github.com/scala/scala.github.com/pull/491">@@static methods and fields</a></td> + <td>Implemented</td> + </tr> + <tr class="odd"> + <td>Improved REPL with colors</td> + <td>Implemented</td> + </tr> + <tr class="even"> + <td>Sbt incremental build</td> + <td>Implemented</td> + </tr> + <tr class="odd"> + <td>Non-blocking lazy vals</td> + <td>Implemented</td> + </tr> + <tr class="even"> + <td>Option-less pattern matching (based on <a href="https://github.com/scala/scala/pull/2848">name-based patmat</a>)</td> + <td>Implemented</td> + </tr> + <tr class="odd"> + <td>Function arity adaptation</td> + <td>Implemented</td> + </tr> + <tr class="even"> + <td>Multiversal equality</td> + <td>Implemented</td> + </tr> + <tr class="odd"> + <td></td> + <td></td> + </tr> + <tr class="even"> + <td>Non-boxed arrays of value classes</td> + <td>In progress</td> + </tr> + <tr class="odd"> + <td>Working contravariant implicits</td> + <td>In progress</td> + </tr> + <tr class="even"> + <td><a href="https://github.com/dotty-linker/dotty">Auto-Specialization</a></td> + <td>In progress</td> + </tr> + <tr class="odd"> + <td><a href="https://github.com/dotty-linker/dotty">Whole program optimizer</a></td> + <td>In progress</td> + </tr> + <tr class="even"> + <td></td> + <td></td> + </tr> + <tr class="odd"> + <td>HList & HMaps/Record types</td> + <td>Considered</td> + </tr> + <tr class="even"> + <td>Implicit functions</td> + <td>Considered</td> + </tr> + <tr class="odd"> + <td>Effects</td> + <td>Considered</td> + </tr> + <tr class="even"> + <td>Auto-completion in repl</td> + <td>Considered</td> + </tr> + <tr class="odd"> + <td>Spec Option-less pattern matching</td> + <td>Considered</td> + </tr> + <tr class="even"> + <td>Exhaustivity checks in pattern matching</td> + <td>Considered</td> + </tr> + </tbody> + </table> + </div> + <p>The complete list is available <a href="https://github.com/lampepfl/dotty#what-are-the-features-that-could-make-me-consider-trying-it">here</a>.</p> + <h1 id="talks-on-dotty">Talks on Dotty?</h1> + <ul> + <li><a href="https://www.youtube.com/watch?v=WxyyJyB_Ssc">Compilers are Databases</a> by Martin Odersky (<a href="http://www.slideshare.net/Odersky/compilers-are-databases">slides</a>)</li> + <li><a href="https://www.youtube.com/watch?v=aftdOFuVU1o">Exploring the future of Scala</a> by Dmitry Petrashko (<a href="https://d-d.me/scalaworld2015/#/">slides</a>)</li> + </ul> + <h1 id="i-have-more-questions">I have more questions!</h1> + <div class="centered-text"> + <p>That’s great! We have more details on the <a href="{{ site.baseurl }}/docs">docs</a> and please join our <a href="https://gitter.im/lampepfl/dotty">Gitter channel</a>!</p> + </div> + </div> +</div> + diff --git a/docs/_includes/getting-started.html b/docs/_includes/getting-started.html new file mode 100644 index 000000000..fc99788f9 --- /dev/null +++ b/docs/_includes/getting-started.html @@ -0,0 +1,31 @@ +<div class="page white"> + <div class="centered" style="padding-top: 32px"> + <h1 id="getting-started">Getting Started</h1> + <p> + Using Dotty to compile your project is now pretty simple. Create the + following structure: + </p> + <pre class="sourceCode bordered"> +<code>. +├── build.sbt +├── project +│ ├── build.properties +│ └── plugins.sbt +└── src</code></pre> + <h2 id="build.sbt">build.sbt</h2> + <pre class="sourceCode bordered"><code>name := "application" +version := "0.1" +enablePlugins(DottyPlugin)</code></pre> + <h2 id="build.properties">build.properties</h2> + <pre class="sourceCode bordered"><code>sbt.version=0.13.11</code></pre> + <h2 id="plugins.sbt">plugins.sbt</h2> + <pre class="sourceCode bordered"><code>addSbtPlugin("com.felixmulder" % "sbt-dotty" % "0.1.4")</code></pre> + <p> + This plugin is based on the + <a href="https://github.com/smarter/dotty-example-project"> + dotty-example-project + </a>, but let’s you skip building dotty from scratch. + </p> + </div> +</div> + diff --git a/docs/_includes/logo-page.html b/docs/_includes/logo-page.html new file mode 100644 index 000000000..53c466cf5 --- /dev/null +++ b/docs/_includes/logo-page.html @@ -0,0 +1,89 @@ +<div class="page red exactly-one-page"> + <div id="header"> + <nav class="nav nav-pills"> + <li class="nav-item"> + <a class="nav-link" href="#why-dotty"> + FAQ + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="{{ site.baseurl }}/blog"> + Blog + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="{{ site.baseurl }}/docs"> + Docs + </a> + </li> + <!-- + <li class="nav-item"> + <a class="nav-link" href="#build-status"> + Community Projects + </a> + </li> + --> + <li class="nav-item"> + <a class="nav-link" href="https://github.com/lampepfl/dotty"> + <img id="github-logo" src="{{ site.baseurl }}/images/github-logo.svg" /> + </a> + </li> + </nav> + </div> + <div id="mobile-header"> + <nav class="navbar navbar-light"> + <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#collapsed-header" aria-controls="collapsed-header" aria-expanded="false" aria-label="Toggle navigation"> + ☰ + </button> + <div class="collapse" id="collapsed-header"> + <div class="bg-inverse p-a-1"> + <ul> + <li class="nav-item"> + <a class="nav-link" href="#why-dotty"> + FAQ + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="{{ site.baseurl }}/blog"> + Blog + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#getting-started"> + Getting Started + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="#build-status"> + Community Projects + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://github.com/lampepfl/dotty/wiki"> + Wiki + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://github.com/lampepfl/dotty"> + <img id="github-logo" src="{{ site.baseurl }}/images/github-logo.svg" /> + </a> + </li> + </ul> + </div> + </div> + </nav> + </div> + <div class="scala-logo-container"> + <p><img src="{{ site.baseurl }}/images/scala-logo.svg" alt="image" /></p> + <div class="centered-subtitle"> + <h1 id="dotty">Dotty</h1> + <p>A next generation compiler for Scala</p> + <a href="#why-dotty"> + <i id="scroll-down-arrow" class="animated infinite pulse material-icons"> + expand_more + </i> + </a> + </div> + </div> +</div> + diff --git a/docs/_includes/toc.html b/docs/_includes/toc.html index 1e165ecaa..905654945 100644 --- a/docs/_includes/toc.html +++ b/docs/_includes/toc.html @@ -1,36 +1,38 @@ <div> - <div id="scala-logo"> - {% include scala-logo.html %} - </div> + <a href="{{ site.baseurl }}/"> + <div id="scala-logo"> + {% include scala-logo.html %} + </div> + </a> <ul id="categories"> <li><ul><li><a href="{{ site.baseurl }}/blog">Blog</a></li></ul></li> - <li><ul><li><a href="{{ site.baseurl }}/">Dotty Docs</a></li></ul></li> + <li><ul><li><a href="{{ site.baseurl }}/docs">Dotty Docs</a></li></ul></li> <li> Usage <ul> - <li><a href="{{ site.baseurl }}/usage/migrating.html">Migrating from Scala 2</a></li> - <li><a href="{{ site.baseurl }}/usage/sbt-projects.html">Using Dotty with sbt</a></li> + <li><a href="{{ site.baseurl }}/docs/usage/migrating.html">Migrating from Scala 2</a></li> + <li><a href="{{ site.baseurl }}/docs/usage/sbt-projects.html">Using Dotty with sbt</a></li> </ul> </li> <li> Contributing <ul> - <li><a href="{{ site.baseurl }}/contributing/getting-started.html">Getting Started</a></li> - <li><a href="{{ site.baseurl }}/contributing/workflow.html">Workflow</a></li> - <li><a href="{{ site.baseurl }}/contributing/eclipse.html">Eclipse</a></li> - <li><a href="{{ site.baseurl }}/contributing/intellij-idea.html">Intellij-IDEA</a></li> + <li><a href="{{ site.baseurl }}/docs/contributing/getting-started.html">Getting Started</a></li> + <li><a href="{{ site.baseurl }}/docs/contributing/workflow.html">Workflow</a></li> + <li><a href="{{ site.baseurl }}/docs/contributing/eclipse.html">Eclipse</a></li> + <li><a href="{{ site.baseurl }}/docs/contributing/intellij-idea.html">Intellij-IDEA</a></li> </ul> </li> <li> Internals <ul> - <li><a href="{{ site.baseurl }}/internals/backend.html">Backend</a></li> - <li><a href="{{ site.baseurl }}/internals/contexts.html">Contexts</a></li> - <li><a href="{{ site.baseurl }}/internals/higher-kinded-v2.html">Higher Kinded Type Scheme</a></li> - <li><a href="{{ site.baseurl }}/internals/overall-structure.html">Project Structure</a></li> - <li><a href="{{ site.baseurl }}/internals/periods.html">Periods</a></li> - <li><a href="{{ site.baseurl }}/internals/type-system.html">Type System</a></li> - <li><a href="{{ site.baseurl }}/internals/dotc-scalac.html">Dotty vs Scala2</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/backend.html">Backend</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/contexts.html">Contexts</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/higher-kinded-v2.html">Higher Kinded Type Scheme</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/overall-structure.html">Project Structure</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/periods.html">Periods</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/type-system.html">Type System</a></li> + <li><a href="{{ site.baseurl }}/docs/internals/dotc-scalac.html">Dotty vs Scala2</a></li> </ul> </li> </ul> |