インデントだけでかけるイケてる言語を集めてみた

私たちは、普段{}などをつかってプログラムを書くことが多いと思います。

例えば、JavaScriptだと

function main() {
    console.log("Hello World");
}

ってかんじで書きますよね。

ですが、この世界には、ブロックの境界を表すために、インデントを代わりにつかう言語が存在します。ということで、今回はそんな異端児たちを集めてみました!

PUG

PUGは、HTMLをもっと楽に書くための言語です。(厳密には言語じゃないかも)

HTMLをタグを使わず、インデントだけで書けるので、コードがとにかくシンプルで美しいです。HTMLの代名詞のような存在であるタグから脱却するなんて最高にクールですね!

Before

<html>
    <body>
        <p>Hello World</p>
    </body>
<html>

After

html
    body
        p
        | Hello World
GitHub - pugjs/pug: Pug – robust, elegant, feature rich template engine for Node.js
Pug – robust, elegant, feature rich template engine for Node.js - pugjs/pug

Sass, Stylus

この二つは似ているので並べて書きましたが、少しだけ違います。それは、コロンを使う勝川内科です。

Before (css)

.box {
    background: blue;
}

After (sass)

.box
    background: blue;

After (stylus)

.box
    background blue;

見比べてみるとstylusの方は、:(コロン)が無いことがわかります。

yaml

Yamlは、人間にとって理解しやすいデータフォーマットを目指して設計されました。

自分的に推しポイントは、今回の主題とずれちゃいますがコメントが書けるところです。

コメントが書けるのって意外と大事なポイントなんですよね。通常のJsonでは書けません。(コメントを書けるJsonとして設計されたJsoncフォーマットなら書けます。)

"user" : {
    "name": "bob",
    "age": 20
}
user:
    name: bob
    age: 20

よりシンプルでパッと見た感じすっきりしてますね。地味なポイントですが、行末のカンマは自分は忘れがちなのでそれがいらないのは高評価です。

Python

これは超有名で言わずもがななので省略します。AIを学習する人にとっては特に、相棒になりますね。自分も最近環境構築しました。UVってのがプロジェクトによって導入パッケージを変更できて便利ですね。(今回の内容に関係ない())

まとめ

今回は、インデントを上手に活用したイケてる言語を集めました。気になった言語があればぜひ試してみてくださいね!

コメント

タイトルとURLをコピーしました