エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
はじめに Ruby用のパーサジェネレータ、Parslet というものを見つけたので、 簡単な練習として算術演算... はじめに Ruby用のパーサジェネレータ、Parslet というものを見つけたので、 簡単な練習として算術演算のパーサを作ってみました。 加減乗除と剰余算・累乗(+-*/%^)、および括弧を使った数式の文字列を入力して、値を浮動小数点数で計算できます。 Parsletの基本的な使い方は Get Started が参考になりました。 方針 パーサで文字列をHashとArrayの組み合わせに分割 パース結果からASTを構築 ASTを評価 パーサ まず、Parslet::Parserクラスを継承して、パースを行うクラスを用意します。 ルールはBNFの様に記述することができます。 Parsletの仕組みとして、パースされた結果はHashとArrayの組み合わせとして出力されます。 class Parser < Parslet::Parser #ルールを指定する rule(:lparen) { st