2018-01-01から1年間の記事一覧
Scala の記事を書くのは地味に初めてかもしれません.今回は,Scala の cats-effect というライブラリの中にある IO モナドを使って Web アプリケーションを構築してみたいと思ってやってみたので,その話を簡単にメモしておきます. cats とは? Scala 界隈…
この記事は Rust Advent Calendar 2018 25日目の記事です. Rust 2018 edition より,Procedural Macros (以下もずっと英語表記します) という機能が新たに追加されました. Procedural Macros においては, TokenStream というストリームが概念の中心にあり…
こういう本好きなのと,話題になっていたので買ってみて真面目に読んでみています. 話題になってて気になってポチった本が届いた。ソフトウェアデザインをしていてよく思う迷いどころに対する解決策が載ってそう pic.twitter.com/CCUdzvB6wh— yuki (@helloy…
この記事は CyberAgent Developers Advent Calendar 2018 3日目の記事です. アドテクスタジオ所属の yuki です.社内の方向けに軽く自己紹介をしておくと,2017/11 中途入社です.アドテクスタジオの某プロダクトでテックリードをしています. Rust が好き…
11/21 に Shinjuku.rs で登壇しました.今回は actix-web に関する話をしました.もちろん LT ではすべてを話しきることができませんでしたので,今回も裏話を記事にして書き留めておこうかと思います (自身の頭の整理にもなるためです). forcia.connpass.c…
関数型プログラミング言語を触っていると,「モナド」という言葉が登場します.関数型プログラミングの文脈でのモナドは,圏論という数学の一分野が元ネタです.しかし,モナドにはさらに元ネタがいます.高校の倫理をやった方は,聞き覚えがあるかもしれま…
Rust LT#2 で話をしました.「インタプリタを作ってまなぶ Rust らしい書き方」という話です.内容は実は,Ruby のコードを Rust のコードに置き換えてみようという内容でした.Ruby 製のインタプリタを Rust に置き換えるセッションです. speakerdeck.com …
もしかすると一般的な話なのかもしれませんが,おもしろかったのでメモ書き程度に残しておきます *1.ソースコードはすべてアセンブリに直されているものだとばかり思っていましたが,そうではないんですね. 使ったツールは,Compiler Explorer というサイ…
先日開催された Rust LT #1 で話をしました.話は HTTP サーバーを自作してみるというものです.Rust に最近入門された方や,今回の LT ではじめて Rust に触れる方向けに,なにかお話できたらなと思い LT をしました. Rust で簡易 HTTP サーバーを作ってみ…
シェルをフルスクラッチしてみようと思い,まずは手始めに簡易的なシェルとして紹介されていた LSH を実装してみました. 実装したソースコードはこちらにあります. github.com LSH に実装されている機能 LSH には次のコマンドが実装されています. cd help…
3/23-2/25 で,Junction Tokyo というハッカソンに参加してきました.そして,Logistics 部門において見事,優勝をすることができました.3日間本当にお疲れ様でした.スタッフの皆さんもどうもありがとうございました. Junction Tokyo は,毎年5月頃に開催…
自分の好きなサイトのフィードを取得してリストアップしてくれるツールを簡単に作ってみました.ライブラリに関する知識を整理しておきたいので,記事として残しておきます. Rust で CLI ツール 先日,Rust が CLI ツールにも今後注力すると発表しました.…
先日,LINE の Meetup in Tokyo #28 に参加してきました.そのときに,Netty を作っている Apple の方が話をしていたのですが,彼の話す ByteBuffer や Channel ,Selector などの単語がよくわからず,帰ってから気になって調べてみました.そこで,java.nio…
lang_item とは具体的には rustc の下記の箇所で設定されている言語固有のアイテムのことを指しています。また、#[lang = "<lang_item_name>"] アトリビュートを使用することで、その lang_item の実装を書き換えてしまうことができます。 lang_item の一覧: rust/lang_items</lang_item_name>…
詳しいところはドキュメントを読みましょう事案なのですが、今作っているプログラムで次のような文言がはじめて出てきて、どういうことか整理しておきたいのでメモ程度に残しておきます。 出てきたアトリビュートは下記です: #![no_std] 以下、あいまいな理…
ANTLR 作者による本で、中身は後半から ANTLR を使った実装でした。ただ、ANTLR を使用する・しないに限らず、解説を読むだけでもインタプリタ制作に詳しくなることができる一冊かなと思います。要するに、何か特定のツールや言語に限らない広く使える知識を…
『Emacs実践入門』をひととおり読んでみました。仕事で Emacs を使うことがだんだん増えてきており、いつかちゃんと勉強したいなと思っていたので、年末年始でいろいろ設定してみました。 [改訂新版]Emacs実践入門―思考を直感的にコード化し、開発を加速する…