<commit_before>import Html exposing (..)

import Center
import TopBar


port title : String
port title =
  "Elm Blog"


main =
  div []
    [ TopBar.topBar "blog"
    , Center.markdown "600px" blog
    ]


blog = """


# Blog

### Articles

 * [Compiler Errors for Humans](/blog/compiler-errors-for-humans)
 * [Time Travel made Easy](/blog/time-travel-made-easy)
 * [Blazing Fast HTML](/blog/blazing-fast-html)
 * [Elm&rsquo;s Time Traveling Debugger](http://debug.elm-lang.org)
 * [Elm package manager](/blog/announce/package-manager)
 * [Elm REPL](/blog/announce/repl)
 * [Hot-swapping in Elm](/blog/interactive-programming)
 * [Concepts behind the Elm Logo](https://prezi.com/npjjrmt_badc/tangrams-logo/)
 * [Elm in VentureBeat](http://venturebeat.com/2013/07/26/why-i-designed-a-front-end-programming-language-from-scratch/)
 * [Elm &hearts; Prezi](/blog/announce/elm-and-prezi)
 * [Escape from Callback Hell](/blog/escape-from-callback-hell)
 * [Making Pong](/blog/making-pong)

### Release Notes

* <code>[0.15.1][151]            &nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>Dramatically improved error messages
* <code>[0.15][15]        &nbsp; &nbsp; Apr &nbsp; &nbsp; &nbsp; &nbsp;</code>Tasks, better HTTP library
* <code>[0.14.1][141]            &nbsp; Jan 2015 &nbsp; </code>HTML through main
* <code>[0.14][14]        &nbsp; &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Package manager, parallel builds, JSON
* <code>[0.13][13]        &nbsp; &nbsp; Sep &nbsp; &nbsp; &nbsp; &nbsp;</code>Debugging with elm-reactor
* <code>[0.12.3][123]            &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>3D rendering with WebGL
* <code>[0.12.1][121]            &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>Fast Immutable Arrays
* <code>[0.12][12]        &nbsp; &nbsp; Mar &nbsp; &nbsp; &nbsp; &nbsp;</code>Interactive UI Elements
* <code>[0.11][11]        &nbsp; &nbsp; Jan 2014 &nbsp; </code>Drastically improved FFI with ports
* <code>[0.10.1][101]            &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Package manager integration
* <code>[0.10][10]        &nbsp; &nbsp; Oct &nbsp; &nbsp; &nbsp; &nbsp;</code>Strings, Colors, Operators
* <code>[0.9][9]    &nbsp;&nbsp; &nbsp; Aug &nbsp; &nbsp; &nbsp; &nbsp;</code>Fast and reliable type inference
* <code>[0.8][8]    &nbsp;&nbsp; &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>HTML/JS integration
* <code>[0.7.1][71]        &nbsp;&nbsp; Feb &nbsp; &nbsp; &nbsp; &nbsp;</code>Libraries for touch, either, and keyboard
* <code>[0.7][7]    &nbsp;&nbsp; &nbsp; Jan 2013 &nbsp; </code>Extensible records
* <code>[0.6][6]    &nbsp;&nbsp; &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Whitespace sensitivity
* <code>[0.5][5]    &nbsp;&nbsp; &nbsp; Oct &nbsp; &nbsp; &nbsp; &nbsp;</code>Libraries for dictionaries, sets, and automata
* <code>[0.4][4]    &nbsp;&nbsp; &nbsp; Sep &nbsp; &nbsp; &nbsp; &nbsp;</code>Markdown
* <code>0.3.6              &nbsp;&nbsp; Aug &nbsp; &nbsp; &nbsp; &nbsp;</code>JSON support
* <code>0.3.5              &nbsp;&nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>JavaScript FFI
* <code>0.3         &nbsp;&nbsp; &nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>Modules
* <code> 0.1        &nbsp;&nbsp; &nbsp; Apr 2012 &nbsp; </code>Initial Release

  [3]:  http://www.testblogpleaseignore.com/2012/06/19/announcing-elm-0-3-modules/
  [35]: http://www.testblogpleaseignore.com/2012/06/29/announcing-elm-0-3-5-javascript-integration-signal-filters-and-more/
  [36]: http://www.testblogpleaseignore.com/2012/08/16/elm-0-3-6json-support-and-better-error-messages/
  [4]:  /blog/announce/0.4
  [5]:  /blog/announce/0.5
  [6]:  /blog/announce/0.6
  [7]:  /blog/announce/0.7
  [71]: /blog/announce/0.7.1
  [8]:  /blog/announce/0.8
  [9]:  /blog/announce/0.9
  [10]: /blog/announce/0.10
  [101]: /blog/announce/0.10.1
  [11]: /blog/announce/0.11
  [12]: /blog/announce/0.12
  [121]: /blog/announce/0.12.1
  [123]: /blog/announce/0.12.3
  [13]: /blog/announce/0.13
  [14]: /blog/announce/0.14
  [141]: https://groups.google.com/forum/#!topic/elm-announce/6zRwjN68Ap0
  [15]: /blog/announce/0.15
  [151]: /blog/compiler-errors-for-humans

### Conference Videos

* [Controlling Time and Space][sl2014] &mdash; categorizes the many
  formulations of FRP, showing how they relate to Elm and what benefits you
  get from doing it the Elm way.

* [Functional Reactive Programming in Elm][sl2013] &mdash; Teaches the basics
  of graphics and FRP in Elm and builds up to implementing a basic [Mario
  game](/edit/examples/Intermediate/Mario.elm) *and* it is pretty fun to watch.

* [Elm: Making the Web Functional][sl2012] &mdash; First conference talk ever.
  Covers the basics of graphics and FRP before Elm even had its record system!

[sl2014]: https://youtu.be/Agu6jipKfYw
[sl2013]: http://www.infoq.com/presentations/elm-reactive-programming
[mlocjs]: http://www.ustream.tv/recorded/29330499
[sl2012]: http://www.infoq.com/presentations/Elm<commit_msg>Add 0.16 link, add "let's be mainstream" talk link<commit_after>import Html exposing (..)

import Center
import TopBar


port title : String
port title =
  "Elm Blog"


main =
  div []
    [ TopBar.topBar "blog"
    , Center.markdown "600px" blog
    ]


blog = """


# Blog

### Articles

 * [Compilers as Assistants](/blog/compilers-as-assistants)
 * [Compiler Errors for Humans](/blog/compiler-errors-for-humans)
 * [Time Travel made Easy](/blog/time-travel-made-easy)
 * [Blazing Fast HTML](/blog/blazing-fast-html)
 * [Elm&rsquo;s Time Traveling Debugger](http://debug.elm-lang.org)
 * [Elm package manager](/blog/announce/package-manager)
 * [Elm REPL](/blog/announce/repl)
 * [Hot-swapping in Elm](/blog/interactive-programming)
 * [Concepts behind the Elm Logo](https://prezi.com/npjjrmt_badc/tangrams-logo/)
 * [Elm in VentureBeat](http://venturebeat.com/2013/07/26/why-i-designed-a-front-end-programming-language-from-scratch/)
 * [Elm &hearts; Prezi](/blog/announce/elm-and-prezi)
 * [Escape from Callback Hell](/blog/escape-from-callback-hell)
 * [Making Pong](/blog/making-pong)

### Release Notes

* <code>[0.16][16]        &nbsp; &nbsp; Nov &nbsp; &nbsp; &nbsp; &nbsp;</code>Even better error messages!
* <code>[0.15.1][151]            &nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>Dramatically improved error messages
* <code>[0.15][15]        &nbsp; &nbsp; Apr &nbsp; &nbsp; &nbsp; &nbsp;</code>Tasks, better HTTP library
* <code>[0.14.1][141]            &nbsp; Jan 2015 &nbsp; </code>HTML through main
* <code>[0.14][14]        &nbsp; &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Package manager, parallel builds, JSON
* <code>[0.13][13]        &nbsp; &nbsp; Sep &nbsp; &nbsp; &nbsp; &nbsp;</code>Debugging with elm-reactor
* <code>[0.12.3][123]            &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>3D rendering with WebGL
* <code>[0.12.1][121]            &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>Fast Immutable Arrays
* <code>[0.12][12]        &nbsp; &nbsp; Mar &nbsp; &nbsp; &nbsp; &nbsp;</code>Interactive UI Elements
* <code>[0.11][11]        &nbsp; &nbsp; Jan 2014 &nbsp; </code>Drastically improved FFI with ports
* <code>[0.10.1][101]            &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Package manager integration
* <code>[0.10][10]        &nbsp; &nbsp; Oct &nbsp; &nbsp; &nbsp; &nbsp;</code>Strings, Colors, Operators
* <code>[0.9][9]    &nbsp;&nbsp; &nbsp; Aug &nbsp; &nbsp; &nbsp; &nbsp;</code>Fast and reliable type inference
* <code>[0.8][8]    &nbsp;&nbsp; &nbsp; May &nbsp; &nbsp; &nbsp; &nbsp;</code>HTML/JS integration
* <code>[0.7.1][71]        &nbsp;&nbsp; Feb &nbsp; &nbsp; &nbsp; &nbsp;</code>Libraries for touch, either, and keyboard
* <code>[0.7][7]    &nbsp;&nbsp; &nbsp; Jan 2013 &nbsp; </code>Extensible records
* <code>[0.6][6]    &nbsp;&nbsp; &nbsp; Dec &nbsp; &nbsp; &nbsp; &nbsp;</code>Whitespace sensitivity
* <code>[0.5][5]    &nbsp;&nbsp; &nbsp; Oct &nbsp; &nbsp; &nbsp; &nbsp;</code>Libraries for dictionaries, sets, and automata
* <code>[0.4][4]    &nbsp;&nbsp; &nbsp; Sep &nbsp; &nbsp; &nbsp; &nbsp;</code>Markdown
* <code>0.3.6              &nbsp;&nbsp; Aug &nbsp; &nbsp; &nbsp; &nbsp;</code>JSON support
* <code>0.3.5              &nbsp;&nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>JavaScript FFI
* <code>0.3         &nbsp;&nbsp; &nbsp; Jun &nbsp; &nbsp; &nbsp; &nbsp;</code>Modules
* <code> 0.1        &nbsp;&nbsp; &nbsp; Apr 2012 &nbsp; </code>Initial Release

  [3]:  http://www.testblogpleaseignore.com/2012/06/19/announcing-elm-0-3-modules/
  [35]: http://www.testblogpleaseignore.com/2012/06/29/announcing-elm-0-3-5-javascript-integration-signal-filters-and-more/
  [36]: http://www.testblogpleaseignore.com/2012/08/16/elm-0-3-6json-support-and-better-error-messages/
  [4]:  /blog/announce/0.4
  [5]:  /blog/announce/0.5
  [6]:  /blog/announce/0.6
  [7]:  /blog/announce/0.7
  [71]: /blog/announce/0.7.1
  [8]:  /blog/announce/0.8
  [9]:  /blog/announce/0.9
  [10]: /blog/announce/0.10
  [101]: /blog/announce/0.10.1
  [11]: /blog/announce/0.11
  [12]: /blog/announce/0.12
  [121]: /blog/announce/0.12.1
  [123]: /blog/announce/0.12.3
  [13]: /blog/announce/0.13
  [14]: /blog/announce/0.14
  [141]: https://groups.google.com/forum/#!topic/elm-announce/6zRwjN68Ap0
  [15]: /blog/announce/0.15
  [151]: /blog/compiler-errors-for-humans
  [16]: /blog/compilers-as-assistants

### Conference Videos

* [Let’s be Mainstream!][curryon] &mdash;
  “If functional programming is so great, why is it still niche? We have a
  product that can practically eliminate runtime errors, make refactoring much
  easier, lighten the testing burden, all while being quite delightful to use.
  What’s the hold up?”

* [Controlling Time and Space][sl2014] &mdash; categorizes the many
  formulations of FRP, showing how they relate to Elm and what benefits you
  get from doing it the Elm way.

* [Functional Reactive Programming in Elm][sl2013] &mdash; Teaches the basics
  of graphics and FRP in Elm and builds up to implementing a basic [Mario
  game](/edit/examples/Intermediate/Mario.elm) *and* it is pretty fun to watch.

* [Elm: Making the Web Functional][sl2012] &mdash; First conference talk ever.
  Covers the basics of graphics and FRP before Elm even had its record system!

[curryon]: https://youtu.be/oYk8CKH7OhE
[sl2014]: https://youtu.be/Agu6jipKfYw
[sl2013]: http://www.infoq.com/presentations/elm-reactive-programming
[mlocjs]: http://www.ustream.tv/recorded/29330499
[sl2012]: http://www.infoq.com/presentations/Elm
{'fraction_non_alphanumeric': 0.1878367975365666, 'fraction_numerical': 0.0550423402617398, 'mean_word_length': 3.8272178355782627, 'pattern_counts': {'":': 0, '<': 93, '<?xml version=': 0, '>': 93, 'https://': 7, 'lorem ipsum': 0, 'www.': 12, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5351911', 'n_tokens_mistral': 4239, 'n_tokens_neox': 3871, 'n_words': 899}