Goでインタプリタ実装本を読んで3 evaluator

Writing An Interpreter In Go | Thorsten Ball Evaluationまで読み、実際にインタプリタとして実行出来るようになった。 evaluator ソースコードをlexerによって字句解析し、parserによってASTを構築した後、evaluatorによって演算を行う。 この章を読む前…

Goでインタプリタ実装本を読んで2 parser

Writing An Interpreter In Go | Thorsten Ball Parserまで読み終えたのでまとめておく。 Parser この工程では、Lexerによってソースコードを字句解析した後、それらをよりアクセスしやすい形式に変換する。具体的にはトークンからASTを構築する。 例えば、…

GOでインタプリタ実装本を読んで1 lexer

Writing An Interpreter In Go | Thorsten Ball 去年末に購入してからずっと積読状態だった本をようやく読み始めた。 最近、朝活というものにハマっていて、ちょうど良い機会なので少しずつ読み進めている。 ちなみに、僕は英語が得意ではなくて、洋書を読む…

phperがgolang書いてて調べたこと

配列のループ $item) { } for index, item := range items { } まぁ違和感はない。 package Goji使ってサーバー書いてると、コントローラーやモデルをpackage分割したくなる。例えば以下のようなディレクトリ構造にしたい。 app.go controllers/ helpers/ h…

# React.jsをちょっとだけ調べたので残しとく

うちの奥さんが珍しく子どもと出かけたのでこのチャンスを利用して話題のReact.jsを調べてみた。 前に pocket に突っ込んでいた記事を手がかりに開始。 React / Flux を実案件で使ってみた 上記記事によると、今から学ぶには以下が良いそうなので、素直に読…

composerで自作ライブラリをインストールしたくて

したくて。 共通の処理ってあるじゃないですか。 Webアプリケーションの場合大抵のロジックはモデルに集約されていると思うんですけど、モデル間で共通のロジックってのはやっぱりあって。 ただ、多くのWebアプリケーションフレームワークって、一応ディレク…

如何にしてスクラムを組むに至ったか

プログラマタスクの進捗管理って難しいじゃないですか。 ずーっと難しいなーって感じで特に何もしてこなかったので、何かこう出来ることは無いかと考えていて。 すると、進捗管理の難しさってのは、言ってしまえば以下の2点が問題だという結論に至った。 工…

Web APIの設計にUI Flowsはすごく便利だった 以前、全てがJSONになる - ✘╹◡╹✘ を読んでなるほどなーって具合にpocketに突っ込んでいたんだけど、最近Web API設計をする機会があったので、を参考にIF仕様をJSON Schemaで作成することにした。 IF仕様書という…

情報収集と保存とSlackで共有を自動化する

社内Qiita:Teamに投稿したけど響かなすぎて承認欲求を満たすためにブログに書く。 ここから。 エンジニアを職業にしてると、情報収集がとても大切になってくるわけですが、その上企業に属していると集めた情報を社員間で共有することもとても大切になります…

chef-containerを使ってみて

chef-containerで色々なコンテナを作成してみて思ったことなど。 fig良い と言いつつ、いきなり脱線しちゃうんですが、ちょっと前に、boot2docker v1.3がリリースされ、ホストマシンからboot2docker上のDockerコンテナへディレクトリマウントが可能になりま…

第六回ドメイン駆動設計読書会@大阪に参加した

DDD

ひとまずの最終回。 今回で ユビキタス言語 モデル駆動設計 実践的モデラ と役者が出揃った。 中でも、個人的に印象深かった実践的モデラについて少し考えをまとめたい。 実践的モデラに対する僕の理解は、ドメインエキスパートと共にユビキタス言語を導き、…

第五回ドメイン駆動設計読書会@大阪に参加した

DDD

5回目。 固定メンバーでの勉強回ということもあって流石に馴染んだ感じある。 今回はモデル駆動設計へと続く大事な章。 勇んで独断と偏見による感想文で他を圧倒するしかと思ったけどレポートが素晴らしすぎて鼻血出た。ここに今回の全てがあります。@sugimo…

第四回ドメイン駆動設計読書会@大阪に参加した

DDD

4回目。 隔週1回だから初めて2ヶ月が経過したわけで。 今回はレポート担当。 レポートは読書会中で議論した内容をメモしたものをチョチョッとまとめる感じにして、ブログには今回得ることのできた個人的な知見みたいなものを書こうと思う。 今回のキーワード…

第三回ドメイン駆動設計読書会@大阪に参加した

DDD

第三回ドメイン駆動設計読書会@大阪に参加した 隔週開催のこの勉強会も今日で三度目。 どうでもいいけど勉強会初心者の僕は、集まって始まるまでの間の牽制した感じにまだ慣れない。 もっとこうフランクにニュートラルにその場に馴染むよう心掛けたい。 実は…

第二回ドメイン駆動設計読書会@大阪に参加した

DDD

前回とは打って変わって早起き。 午前中は娘と公園に行ってブランコに乗ったり滑り台を滑ったり鳩を追いかけまわしたりなんか白いボコボコした得体の知れない実を拾ったりした。 そんな感じで前回みたいに寝坊で遅刻することなく余裕の出発。 rebuild.fmの適…

情報共有という名の豊かなコミュニケーション

情報共有難しいよねって話から...。 何が難しいかって意識の問題で。うちの会社も情報共有しようよっていう話はよく出ていて。 で難しいなって思うところが2つある。 圧倒的コミュニケーション不足 うちではYammerとか最近ではようやくQiita team(トライア…

第一回ドメイン駆動設計読書会@大阪に参加した

DDD

取り合えず寝坊した。 前日は朝まで同僚と飲んでいて、帰宅したら朝9時くらいだった。 読書会は15時からだったしまあ3時間くらい寝れるなー...からのまぁこの話はいい。 読書会という形式の会に参加すること自体が初めてで一体どんな感じなんだろうか、会場…

DDDを踏み外してからもう一度踏み出してみた

前回エントリで単体テストとMVCとDDDについて個人的見解を書いた。 結果、@ktz_aliasさんや@j5ik2oさん、@hidenorigotoさんにアドバイス頂き、ちょっと俺踏み外してる感あるなーと。 そもそも「もしかしてこれをDDDと呼んでいるんじゃ...?」みたいな、知見…

単体テストとMVCとDDDに対する個人的見解

NOTE: 2014-01-08 追記あり。 前回のエントリでレガシーな開発環境を改善している話をした。 レガシーな開発環境の上にはレガシーなプロジェクトが存在していて、これを改善するためにどうすれば良いかを考える課程で、MVCとDDDに対する考えがまとまってきた…

レガシーな開発環境を少しずつ改善している話

いくつかのチームやメンバーを経由して今度は自分が担当することになった。 言語はphpで、仕様書もドキュメントも当然単体テストも無いプロジェクト。 よくある話であると思う。もう少し詳しく書くと バージョン管理はsvnでブランチは無くtrunkという概念も…