Website

Check-in [108084d650]
Login
Overview
Comment:Re-worked hook text in header. Added footer with lead-developer name and link to twitter profile. Simplified examples. Began re-working look of details section, which made it look like a mess. Will fix in next commit.
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: 108084d6504bb2eedb0b8eeedba0cf953a66bfa127b755429258dc36143fc463
User & Date: robin.hansen on 2020-11-20 05:55:47
Other Links: manifest | tags
Context
2020-11-20
14:15
Finished re-styling frontpage. check-in: 8501f88f4e user: robin.hansen tags: trunk
05:55
Re-worked hook text in header. Added footer with lead-developer name and link to twitter profile. Si... check-in: 108084d650 user: robin.hansen tags: trunk
05:35
Fix typos and improve explination in several examples. check-in: 8879ef99d1 user: robin.hansen tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Modified src/index.html from [395081b61b] to [1a33a62c94].

17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46

47
48
49

50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95








96
97
                    <ul>
                        <li><a alt="Get caught up on the latest news" href="https://fossils.play-lang.dev/compiler/timeline?udc=1&ss=m&n=10&y=e&advm=0">News</a></li>
                        <li><a alt="" href="https://fossils.play-lang.dev/community">Forum</a></li>
                        <li><a alt="" href="https://fossils.play-lang.dev">Source</a></li>
                    </ul>
                </nav>

                <h2>An easy to learn language, for making reliable applications</h2>

                <ul>
                    <li>Minimal syntax makes the language easy to learn and get started with</li>
                    <li>Strong static typing let's you know when you've made a mistake</li>
                    <li>There are no side effects, making it easier to reason about your code</li>
                    <li>Compiles to web assembly, so it can run in- and outside of a browser</li>
                </ul>

                <a class="link-button" alt="Try the Play language" href="/playground.html">
                    Try
                </a>
            </div>
        </header>

        <section id="selling-points">
            <article>
                <h3>Minimal, yet flexible, syntax</h3>

                <div class="content">
                    <p>The syntax of Play is based on Forth, resulting in a syntax which could fit on a postcard while still being flexible enough for anything you need. All functions (what we call 'words') are implicitly composable, and so Play programs are a concatination of words just like books.</p>

                    <pre class="shell">

                        def: main
                        : 1 inc
                          2 =


                        def: inc
                        : 1 +

                        def: dec
                        : 1 -
                    </pre>
                </div>
            </article>

            <article>
                <h3>Easy to reason about</h3>

                <div class="content">
                    <p>Play uses a static type system with type inference, which lets you rule out bugs while it staying out of your way. In addition, all data structures are immutable, greatly reducing the number of states your program can be in and which you must account for when writing code.</p>

                    <pre class="shell">
                        Compilation failed:

                        2 | def: main
                        3 | type: -- Int
                        4 | entry: true
                        5 | : 1 2

                        The type of 'main' is specified to be  -- Int.
                        However, it seems that the actual type is:  -- Int Int
                    </pre>
                </div>
            </article>

            <article>
                <h3>Portable</h3>

                <div class="content">
                    <p>Play is compiled to web assembly. This allows Play programs to execute in a browser in addition to on the command line, and to work the same no matter where it is executed. The alternative to web assembly would be to compile to javascript, but then we'd have to live with a legacy which includes 53-bit integers and six different falsy values.</p>

                    <img alt="Web assembly logo" src="wasm_logo.svg" />
                </div>
            </article>

            <article>
                <h3>In Alpha</h3>

                <p>Play is still in early development. There are currently no strings, arrays or even garbage collection. All of this will come in time. For more information, take a look at the <a alt="Read the roadmap" href="https://fossils.play-lang.dev/compiler/wiki?name=roadmap">roadmap</a>.</p>
            </article> 
        </section>








    </body>
</html>







|


|
|
|
|








|
<
|

<
|

|
>
|
<
<
>

|
|
<
<
<
|
<
<

<
|

<
|

|
|

|
|
<
|

|
|
|
<
<

<
|

<
|

|
<
<

<
|

|
<
<
>
>
>
>
>
>
>
>


17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

40
41

42
43
44
45
46


47
48
49
50



51


52

53
54

55
56
57
58
59
60
61

62
63
64
65
66


67

68
69

70
71
72


73

74
75
76


77
78
79
80
81
82
83
84
85
86
                    <ul>
                        <li><a alt="Get caught up on the latest news" href="https://fossils.play-lang.dev/compiler/timeline?udc=1&ss=m&n=10&y=e&advm=0">News</a></li>
                        <li><a alt="" href="https://fossils.play-lang.dev/community">Forum</a></li>
                        <li><a alt="" href="https://fossils.play-lang.dev">Source</a></li>
                    </ul>
                </nav>

                <h2>A small, portable language, for making reliable applications</h2>

                <ul>
                    <li>You can learn the syntax and semantics in an afternoon</li>
                    <li>The compiler helps you find mistakes with a strong static type system</li>
                    <li>Tightly controlled side effects gives you a better control over third party code</li>
                    <li>Run your code on a server or in the browser, using web assembly</li>
                </ul>

                <a class="link-button" alt="Try the Play language" href="/playground.html">
                    Try
                </a>
            </div>
        </header>

        <main>

            <h3>Minimal, yet flexible, syntax</h3>


            <p>The syntax of Play is based on Forth, resulting in a syntax which could fit on a postcard while still being flexible enough for anything you need. All functions (what we call 'words') are implicitly composable, and so Play programs are a concatination of words just like books.</p>

            <pre class="shell">
                # Returns 3
                def: main


                : 2 increment

                def: increment
                : 1 +



            </pre>




            <h3>Easy to reason about</h3>


            <p>Play uses a static type system with type inference, which lets you rule out bugs while it staying out of your way. In addition, all data structures are immutable, greatly reducing the number of states your program can be in and which you must account for when writing code.</p>

            <pre class="shell">
                Compilation failed:

                9 | def: some-word
                10| type: -- Bool

                11| : 1

                The type of 'some-word' is specified to be  -- Bool.
                However, it seems that the actual type is:  -- Int.
            </pre>




            <h3>Portable</h3>


            <p>Play is compiled to web assembly. This allows Play programs to execute in a browser in addition to on the command line, and to work the same no matter where it is executed. The alternative to web assembly would be to compile to javascript, but then we'd have to live with a legacy which includes 53-bit integers and six different falsy values.</p>

            <img alt="Web assembly logo" src="wasm_logo.svg" />




            <h3>In Alpha</h3>

            <p>Play is still in early development. There are currently no strings, arrays or even garbage collection. All of this will come in time. For more information, take a look at the <a alt="Read the roadmap" href="https://fossils.play-lang.dev/compiler/wiki?name=roadmap">roadmap</a>.</p>


        </main>

        <footer>
            <ul>
                <li>Created by: Robin Heggelund Hansen</li>
                <li>Twitter: <a href="https://twitter.com/robheghan" alt="Robin's twitter profile">@robheghan</a></li>
            </ul>
        </footer>
    </body>
</html>