Skip to content

Commit 4df922f

Browse files
committed
README: adding links/clarifications for online foi-toy web tool
1 parent 1dd1481 commit 4df922f

File tree

4 files changed

+26
-4
lines changed

4 files changed

+26
-4
lines changed

Grammar.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# Foi Grammar
22

3-
The **Foi** language grammar in [EBNF form](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form), as [verified here](https://mdkrajnak.github.io/ebnftest/):
3+
The **Foi** language grammar in [EBNF form](https://en.wikipedia.org/wiki/Extended_Backus%E2%80%93Naur_form), as [verified here](https://mdkrajnak.github.io/ebnftest/).
4+
5+
You can also use this grammar to validate code using the [Online Foi-Toy web tool](https://toy.foi-lang.com) or the [Foi-Toy CLI tool](foi-toy/README.md).
46

57
```ebnf
68
(*************** Program / Statements ***************)

README.md

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Foi: a different kind of functional programming language
22

3+
----
4+
5+
[ONLINE FOI PLAYGROUND](https://toy.foi-lang.com)
6+
7+
----
8+
39
**Foi** is a programming language that pragmatically balances Functional Programming (FP) and imperative programming techniques. It pulls inspiration for various syntax and behaviors from a variety of languages, including: JS, Scala, Haskell, F#, Go, Clojure, Scheme, and others.
410

511
```java
@@ -47,6 +53,7 @@ If you're already convinced and ready to jump in, you may want to check these ou
4753
* [(Mostly Complete) Foi Guide](Foi-Guide.md)
4854
* [Formal Grammar](Grammar.md) (for language theory enthusiasts)
4955
* [Foi-Toy](foi-toy/README.md) (CLI tool)
56+
* [Foi-Toy Online](https://toy.foi-lang.com) (Web tool)
5057

5158
But if you're still skeptical, please read on for more about the [intent](#mission) and [design philosophy](#design-philosophy) of the **Foi** language.
5259

@@ -244,9 +251,11 @@ For implementers or language design enthusiasts, a [formal grammar specification
244251

245252
**Foi** is still being designed. As such, there's no official compiler/interpreter yet.
246253

247-
However, [Foi-Toy](foi-toy/README.md) is an experimental tool for playing around with **Foi** code, prior to there being an official compiler.
254+
However, [Foi-Toy](foi-toy/README.md) is an experimental tCLI ool for playing around with **Foi** code, prior to there being an official compiler.
255+
256+
Foi-Toy currently supports tokenizing **Foi** code, and syntax highlighting (via HTML/CSS) as shown in the above screenshots. Foi-Toy can also validate code against the formal language grammar.
248257

249-
Foi-Toy currently supports tokenizing **Foi** code, and syntax highlighting (via HTML/CSS) as shown in the above screenshots.
258+
Additionally, there's an [online version of Foi-Toy](https://toy.foi-lang.com) to play around with tokenization, syntax highlighting, and validation.
250259

251260
## License
252261

foi-toy/README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,15 @@
11
# Foi-Toy
22

3+
----
4+
5+
[ONLINE FOI-TOY](https://toy.foi-lang.com)
6+
7+
----
8+
39
This is an experimental tool for toying around with **Foi** code. It is **not** an official implementation of the **Foi** language.
410

11+
Foi-Toy is available as an [online tool](https://toy.foi-lang.com) or as a [CLI tool](#to-use).
12+
513
## Features
614

715
Main features of Foi-Toy:
@@ -158,7 +166,9 @@ Tokens/syntax highlighting output are skipped if the validation fails.
158166

159167
## To Use
160168

161-
Save **Foi** code in a file -- generally with a `.foi` filename extension, but you can use whatever you like.
169+
You can [play with Foi-Toy online here](https://toy.foi-lang.com), or use the CLI tool.
170+
171+
To use the CLI tool of Foi-Toy, save **Foi** code in a file -- generally with a `.foi` filename extension, but you can use whatever you like.
162172

163173
Then invoke `node cli.js --file={FILE-PATH}` with a path to the file you want to check. Foi-Toy will default to printing out a list of tokens that were processed from the file.
164174

foi-toy/web/index.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
</head>
88
<body>
99
<h1>Foi-Toy</h1>
10+
<h2>Online playground for the <a href="http://foi-lang.com">Foi Language</a></h2>
1011

1112
<textarea id="input">
1213
def x: "Hello world!";

0 commit comments

Comments
 (0)