Java VMを実装したのは5年前にRで書いて以来2度目になる。(Rで実装したときのまとめ: Java VM 自作 方法) 異なる言語で同じものを作る過程で、両言語の違いや特徴を感じる場面があったので記録しておく。 Rではいろいろなものが値を返すRではいろいろなものが値を返す。 例えばRのif文は値を返すので結果を代入できる。 val <- if (cond) 1 else -1Pythonのif文だとこう書くことになる。 if cond: val = 1 else: val = -1Pythonで結果を代入したい場合は条件式 (三項演算子) を使う必要がある。 val = 1 if cond else -1もう一つの例としてswitchを見てみる。 Rの場合、switchの結果を代入できる。 name <- "two" val <- switch(name, one = 1, two =