ワークスペース

Gleam

Gleam をゼロから学ぶための基本構文、実行、実践

まず定義

Gleam とは何か

Gleam は、コンピューターに正確な手順を伝えるためのプログラミング言語です。最初は暗記ではなく「入力、手順、出力」の流れだけをつかみます。

最小実行情報ファイル src/main.gleam実行 gleam run習慣 Gleam の小さな構文を一つ学んだら、すぐ最小例を入力して実行する
プログラム

順番に実行される命令の集まりです。入力を読み、処理し、出力します。

値と変数

値はデータです。変数はそのデータにつける名前です。

関数

小さな仕事をまとめたものです。入力を受け取り、結果を返します。

実行環境

Gleam が src/main.gleam のコードを実行します。

最初に読むコード

プログラム出力

entry point output syntax io.println
io.println("42")
出力 42

言語の系譜

Gleam の系譜

Gleam の出自、近い言語、次に学ぶ候補を一目で確認します。

起源
ErlangElixirML
現在Gleam関数型と論理型の言語ファミリー
ファミリー関数型と論理型の言語ファミリー
向いている用途

向いている用途 Gleam をゼロから学ぶための基本構文、実行、実践

ゼロベース

1規則を一つ読む2出力を予測3記憶で入力4チェックを実行5一つ変えて反復

問題バンク

検索してから練習

段階を選ぶか、現在の言語の問題を検索して練習へ移動します。

18 件
1選択第1段階 定義

Gleam 問題 1

Gleam 問題 1 値の出力 に最も合う説明を選んでください

2選択第1段階 定義

Gleam 問題 2

Gleam 問題 2 値に名前を付ける に最も合う説明を選んでください

3選択第1段階 定義

Gleam 問題 3

Gleam 問題 3 再利用できる関数 に最も合う説明を選んでください

4選択第1段階 定義

Gleam 問題 4

Gleam 問題 4 基本コレクション に最も合う説明を選んでください

5選択第1段階 定義

Gleam 問題 5

Gleam 問題 5 値の出力 に最も合う説明を選んでください

6選択第1段階 定義

Gleam 問題 6

Gleam 問題 6 値に名前を付ける に最も合う説明を選んでください

7選択第1段階 定義

Gleam 問題 7

Gleam 問題 7 再利用できる関数 に最も合う説明を選んでください

8選択第1段階 定義

Gleam 問題 8

Gleam 問題 8 基本コレクション に最も合う説明を選んでください

9選択第1段階 定義

Gleam 問題 9

Gleam 問題 9 値の出力 に最も合う説明を選んでください

10選択第1段階 定義

Gleam 問題 10

Gleam 問題 10 値に名前を付ける に最も合う説明を選んでください

11選択第1段階 定義

Gleam 問題 11

Gleam 問題 11 再利用できる関数 に最も合う説明を選んでください

12選択第1段階 定義

Gleam 問題 12

Gleam 問題 12 基本コレクション に最も合う説明を選んでください

13選択第1段階 定義

Gleam 問題 13

Gleam 問題 13 値の出力 に最も合う説明を選んでください

14選択第1段階 定義

Gleam 問題 14

Gleam 問題 14 値に名前を付ける に最も合う説明を選んでください

15選択第1段階 定義

Gleam 問題 15

Gleam 問題 15 再利用できる関数 に最も合う説明を選んでください

16選択第1段階 定義

Gleam 問題 16

Gleam 問題 16 基本コレクション に最も合う説明を選んでください

17選択第1段階 定義

Gleam 問題 17

Gleam 問題 17 値の出力 に最も合う説明を選んでください

18選択第1段階 定義

Gleam 問題 18

Gleam 問題 18 値に名前を付ける に最も合う説明を選んでください

選択問題

Gleam 問題 1

1選択新規

Gleam 問題 1 値の出力 に最も合う説明を選んでください

io.println("42")

参考

src/main.gleam のパターン

Gleamgleam run
記憶から書く小さな概念を見たら閉じて自分で再現します
コードを追跡実行前に変数の変化を一行ずつ追います
自分で入力コピーを減らし一つずつエラーを直します

entry point output syntax io.println

プログラム出力

io.println("42")
  • 最小のファイルから実行する
  • まず確実な値を一つ出力する
  • コードを増やす前に出力を確認する

variables assignment types let

値と名前

let total = 42
io.println(int.to_string(total))
  • 値に読みやすい名前を付ける
  • 学習中は一行に一つの考えを書く
  • 値を変える前に流れを追う

function collection List

関数とコレクション

fn add(a: Int, b: Int) -> Int {
  a + b
}

let scores = [40, 2]
io.println(int.to_string(list.length(scores)))
  • 関数を小さく保つ
  • 役に立つ値を返す
  • framework の前に基本コレクションを使う