タグ

2012年12月16日のブックマーク (5件)

  • Common Lisp マクロを書くときにおろそかにしてはいけないこと - cranebirdの日記

    他にも沢山ありそうですが、最初の方にひっかかったことを列挙。 シンボルが何なのか。変数名みたいなものと曖昧に思っているとつまづく。パッケージと関連していることを意識すること。 keyword がなぜ便利か、理解する。マクロを書いたパッケージと違うパッケージでマクロを展開してみる。 リスト処理をパズルと思っておろそかにしていると、よくない。プログラムを書くプログラム(つまりマクロ)は、結局リスト処理そのもの、ということを忘れない。 read関数とリードテーブル。 ラムダリスト。各種のパラメーター &key &rest を綺麗に使えば、リスト処理を簡潔にできる。 クォート。何が評価されて何が評価されないのか? 見た目。emacs のインデントはカスタマイズできるので、自作マクロのインデントが汚くても悩まない。 以下はむしろ強調されているのであまり引っ掛からなかった。 変数捕捉。ちゃんと gen

    Common Lisp マクロを書くときにおろそかにしてはいけないこと - cranebirdの日記
  • Common Lisp Loop マクロはミニ言語 - cranebirdの日記

    loop マクロは、知れば知るほど繰り返し処理のためのミニ言語だということが分かってくる。 最近覚えたのは、ループ内のローカル変数の使い方。 var x from n to m と書けば数列を生成するが、 to 以降は省略可能。ファイルを行単位で読みながら、行数を数えたりする時など、範囲が分からないときに便利。map系の高階関数に無名関数渡すより、見やすいかも。 誰か なんでも再帰 に対抗すべく? なんでもloop を書いてほしい。豊かな繰り返し処理に必要なのは優しい構文なんかじゃない、繰り返しを記述する能力を持った専用の「言語」だったんだよ! ちなみに仕様書をちゃんと読むとちゃんと書いてある、それこそが loop マクロのいいところ。

    Common Lisp Loop マクロはミニ言語 - cranebirdの日記
  • 採用面接ゲリラガイド(version 3.0) - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2006年10月25日 水曜 無政府主義者とフリーラブの提唱者とバナナの権利の擁護者の寄せ集めの一団が、プエルト・バリャルタを出たラブボート号をハイジャックし、7日以内に要求が受け入れられなければ616人の乗客と327人の乗員もろとも、船を沈めると脅している。要求は何か? 番号を控えていない小額紙幣で100万ドルと、評価の高いWaterloo Fortran IVコンパイラ、WATFIVのGPL実装だ。(フリーラブの連中がバナナの権利の連中と合意できることがいかに少ないかは驚くばかりだ。) フェスティバルクルーズ社のプログラミングチームのチーフプログラマとして、あなたはFortranコンパイラを7日間でスクラッチから作れるか判断しなければならない。あなたには2人のプログラマがサポートにつく。 どうだ、できるか? 「条件によりますね」とあなたは答える

  • MongoDB開発者にセマンティックウェブの特徴を与えるMongoGraph

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    MongoDB開発者にセマンティックウェブの特徴を与えるMongoGraph
  • langturn.com is coming soon