コンテンツにスキップ

tekri について

短く書いて、ネイティブに実行する。

tekri(テクリ)は、競技プログラミングに向けて設計している言語です。.tkr ファイルをC++20へ変換し、C++コンパイラで実行ファイルを作ります。処理系はRustで実装しています。

larger.tkr
fn larger(a: i64, b: i64) -> i64 {
a > b ? a : b
}
read x: i64, y: i64;
print larger(x, y);
ターミナルウィンドウ
tekri run larger.tkr

標準入力に 12 7 を渡すと 12 を出力します。インストール方法ははじめにを参照してください。

項目 tekri の書き方
定義・更新 x = 10;。可視な変数があれば更新し、なければ定義します
型の明示 x: i64 = 10;
式から値を返す ブロック末尾の式を、; を付けずに書きます
条件で値を選ぶ x > y ? x : y、または if x > y { x } else { y }
条件の括弧 if x > 0 { ... } と if (x > 0) { ... } の両方に対応します
整数の割り算 -7 / 3 は -3。負の無限大へ丸めます
スコープ ブロック単位です。可視な同名変数を隠すシャドーイングは行いません

let・mut・:= は使いません。通常の文は ; で区切ります。if 本体には {} が必要です。

  • はじめに — 処理系をビルドして動かします。
  • 変数とスコープ — 定義、更新、型注釈の規則を確認します。
  • 式と文 — ブロック式、if、三項演算子を確認します。
  • 演算子 — 優先順位、床除算、評価順を確認します。