構文解析ハンズオン

2017/07/01(土)11:00 〜 19:00 開催
ブックマーク

イベント内容

イベントについて

このイベントは構文解析器(パーザー)を作るためのハンズオン企画です。構文解析器と言われてもピンと来ない 人も多いかもしれません。しかし、技術者の皆さんは知っている居ないに関わらず、ほぼ必ず何らかの構文解析器 のお世話になっています。

たとえば、Webサービスでのデータのやり取りをするための標準的な言語になったJSON、これをプログラム から取り扱うには、JSONのデータを構文解析して、木構造データとしてプログラムから扱えるように加工する 必要があります。あるいは、CSVを解析してカンマ区切りの行から各項目を取り出すのも広い意味での構文解析 です。また、これは通常は言語処理系がやってくれるため意識することは少ないですが、正規表現ライブラリ を使う場合も、裏では正規表現の構文解析器が走っています。

このように、既存のよく知られたデータ形式については構文解析器があらかじめ用意されていることが多い ですが、ときには独自のデータ・フォーマットとその構文解析器を書く必要があることもあります。今回の ハンズオンでは、主に構文解析器を書いたことがない人を対象に、構文解析の基礎について教えます。

今のところ、

  • 数値の構文解析
  • 数式の構文解析
  • JSONの構文解析
  • (基本)正規表現の構文解析

といった題材を通じて、

  • 構文解析に使うアルゴリズム
  • 構文解析によって、テキストからデータ構造を構築する方法

を学べるようにしようと考えています。


参加資格:

  • Javaで普通のプログラムが書ける
  • 自分である程度複雑な構文解析器が書けるようになりたい
  • 休日を丸一日潰しても良い

チューター募集: 今回の企画は、私一人の手には余るものだと思います。そこで、チューターを 1〜2名募集したいと思います。構文解析器を書くのに慣れている(?)人や、LL法や 再帰下降構文解析といった言葉を聞いてひるまないような人であれば大丈夫です(?)


プログラム

  • 10:30 開場
  • 11:00~11:10 諸連絡・チューター紹介
  • 11:10~11:20 構文解析とは: @kmizu
  • 11:20~12:00 1桁整数の構文解析(ハンズオン): @kmizu
  • 12:00~13:00 昼食休憩
  • 13:00〜??:?? 非負整数の構文解析(ハンズオン): @kmizu
  • ??:??~??:?? 単純な算術式の構文解析(ハンズオン): @kmizu
  • ??:??~??:?? 一般的な算術式の構文解析(ハンズオン): @kmizu
  • ??:??~??:?? 正規表現の構文解析(ハンズオン): @kmizu
  • ??:??~??:?? JSONの構文解析(ハンズオン): @kmizu

参加について

会場はドワンゴ セミナールーム(松竹スクエア 13F)です。

懇親会はありません(自分がへとへとになっていそうなので。すいません)。


参加費

  • 無料

入場方法

地下鉄各線東銀座駅5番出口から地上にあがって、橋を渡ったところにあるビルです。 正面入口から入り奥にあるエレベーターで13Fまであがってください。


電源タップについて

無線LANと電源はありますが、電源は床埋込み式で Macのアダプタが刺さりません 。 電源タップをご持参ください。


その他

  • 喫煙室はありません
  • 貴重品は各自で管理してください
  • 会場は飲食可能です

会場は、ドワンゴセミナールームですが、今年から、セミナールームは歌舞伎座ではなく松竹スクエア13Fに移転しましたので、お間違えないようよろしくお願いします。


当日までの準備について

当日のハンズオンをスムーズに進めるために、以下のソフトウェアについて事前にインストールをお願いします。

IntelliJ IDEA

エディタでコーディングしてもらっても構いませんが、IntelliJ IDEAでコーディングしてもらうことを推奨します。IntelliJ IDEAはここからダウンロード可能です。

Apache Maven

ビルド環境として、Apache Mavenを使います。各OSのパッケージマネージャからインストールするか、ここからダウンロード及びインストールして、パスを通してください。

注意事項

※ こちらのイベント情報は、外部サイトから取得した情報を掲載しています。
※ 掲載タイミングや更新頻度によっては、情報提供元ページの内容と差異が発生しますので予めご了承ください。
※ 最新情報の確認や参加申込手続き、イベントに関するお問い合わせ等は情報提供元ページにてお願いします。

関連するイベント