V言語を触った


タイトル通り。

簡単に触った。


僕はIDEを使用するのが好きなので、vim, nano, Visual Studo Codeで激しくコードを書くことは少ない。

JetBrains製品を使用することが多いので(IntelliJ IDEA, GoLandなど)、VS Codeで書くのは少し辛かった。とはいえV用のExtensionがあるので、凄く困ることはなかった。

GitHubもどうやら、V言語自体はサポートしているようでシンタックスハイライトも効くし、割と恵まれている言語なのかも知れない。

触った感覚としては、Goに似ていると感じた。

以下はIPアドレスを checkip.amazonaws.com から取得するコード。

import http

fn main() {
    data := http.get('https://checkip.amazonaws.com') 
 		or { panic(err) }
    println("Status code: $data.status_code")
    println("Reponse body: $data.text")
}

楽だと感じたのは or { panic(err) } の部分。

Goだと if err != nil を沢山書く事になるが、それが短く書ける分良く感じた。(panic自体さほど使わないが…)

例: よくあるエラーをcatchするコード

func main() {
    result, err := somefunc()
    if err != nil {
        panic(err)
    }
    print(result)
}

Vで詰まった部分というか戸惑った部分は println("Reponse body: $data.text") のような部分。

PHPライクに書けるのが驚きだった。(はじめは + で文字列を連結するのかと思ってた。)※

サッと書いたが引き続き暇な時間に触ってみたいと思う。


※ 細かくドキュメントを見てないのでもしかしたら他の方法で連結できるかもしれない