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が最近リリースされ、重要な変...
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
■ [Haskell] The Typeclassopediaを訳しました The Monad.ReaderのIssue 13に掲載されたThe Typeclassopediaという記事が、Functor, Monad, Monoid, Applicative, Foldable, Traversable, Arrowといったような型クラスについて良くまとまっていて、そのあたりを知りたい時の取っ掛かりになりそうだったので翻訳してみました。 作者のBrent Yorgeyさんからも許可がいただけたので公開します。翻訳に慣れていないので変な日本語(特に専門用語の日本語訳はかなり怪しい)があったり、そもそも間違っていたりするかもしれませんので、何か見つけたらコメントを頂けると助かります。 ■ [Haskell] The Typeclassopedia by Brent Yorgey <first
Sather is an object oriented language designed to be simple, efficient, safe, flexible and non-proprietary. One way of placing it in the "space of languages" is to say that it aims to be as efficient as C, C++, or Fortran, as elegant as and safer than Eiffel, and support higher-order functions and iteration abstraction as well as Common Lisp, CLU or Scheme. Note: Sather has now been converted to t
Java Generics の Reification の章を読み始めている。型の情報がランタイムまで完全に残っている場合それは reifiable な型という風に呼ばれるが、Java では昔からの配列は reifiable だけど generics はそうではなくて例えば List<Integer> は List にされてしまって(これを erasure と呼ぶ)、型パラメタの情報は実行時には利用できない。これはキャストを行ったり実行時にオブジェクトの型についての問い合わせをする場合に意識しなければならない。Java はこのような方針を採用することによってクライアントはレガシーなままライブラリをジェネリックにアップグレードしても相互運用可能であるというような高い後方互換性を実現している。 さて Scala は JVM バイトコードにコンパイルされる都合上、 Java と同様にジェネリクス
こんな基準でどうか。用語には自信ありません クラス(or 型) X のインスタンスを Duck のように振る舞わせたいとき… intrusive:X を定義するときに一緒に "X は Duck っぽい" と明記する 例: class X implements Duck { ... } nonintrusive-explicit: 外付けで "XはDuckっぽい" と明記する 例: (ある場所で) data X = ... (別のところで) instance Duck X where ... nonintrusive-implicit: 明記しない。普通 duck typing と言うとこれ。特に dynamic なものを指す。 例: template<typename X> void foo(X x) { x.like_a_duck(); } dynamic: 特定のメソッドを持った異なる
These pages have been migrated from stlab.adobe.com/wiki for preservation. They may eventually be revised and moved into a more appropriate location on the site. Adobe’s Software Technology Lab web site is the home for the Adobe Source Libraries (ASL). ASL provides peer-reviewed and portable C++ source libraries. The libraries are intended to be widely useful, leveraging and extending both the C++
http://d.hatena.ne.jp/gnarl/20080801/1217523822 元のエントリが静的なものと動的なものを比較していますので,それに対する批判としてはまったく正当なものなのでそこには異論はありません.ですが,蛇足として, static duck typing が与えられればそこから dynamic duck typing を導出することは C++ ではできるんだよにゃ,ということは指摘しておきたいのです.これは,書籍のような整理された形でまとめられていない技法を用いますので,しばしばこういう議論の中で見落とされるのですが. それ C++ でできるよ,というのはつまり,要件が「ダックタイピングだと共通の基底クラス/インタフェースがなくても統一的やりかたで『かつ動的に』メソッド呼べる」だけなら, C++ でも特に問題なく記述できる,ということです.ただし,それが簡潔
19:27 08/02/29 不動点ふたたび LtU で "Data Types a la Carte" を読みました。これの鍵となる技は「型コンストラクタに対する不動点演算子」だと思うのだけど、 あれ、なんで俺これ考えたことなかったんだ…?と不思議に思うくらい楽しげなアイデアですね。てい。 // 不動点演算子 via テンプレート。Dで。 // // Haskell でいう"普通の"不動点関数 fix f = f (fix f) と同じようなもの // = の代わりに継承になっちゃってますけど、まあ似たようなものです class Fix!(alias F) : F!(Fix!(F)) {} 不動点演算の実装は本題ではないので、Yコンビネータみたいな無駄な複雑化はしない方針で。 さて、これを使って class Pair(T) { T left; T right; } 2個同じ型の値のペアを
「ボヘミアン」と「貴族」という名称が使われるきっかけとなったのは、2002年12月にADTmag.comに掲載されたUche Ogbuji氏執筆の記事「XML class warfare」(XML階級闘争)だ。この記事では、XMLにおける型情報の扱いなどに関するこれまでの議論の経緯や整理が行われている。その内容を要約すると、以下のようになる。 W3CのXML SchemaによるXMLデータ型の標準化は、「貴族」の登場を確立するきっかけになった。貴族はXMLのデータにおいても、C++やJavaやSQLにおけるデータと同様に常にデータと型情報を関連付けるのを好む人たちである。一方で従来のようにXML内のデータと型情報との対応は最小限のものにとどめ、記述されたテキストのまま処理できることが重要と考える一派が「ボヘミアン」となった。私(Ogbuji氏)自身はボヘミアンである。 両派は、XPathと
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く