Learn You a jQuery for Great Good!

今日からjQueryの練習も兼ねて、jQueryのソースをブログに書いていこうと思います。

jQuery.map() | jQuery API Documentation

最初はmapです。他の言語によくあるmapと同じです。
1.6からはarrayOrObjectを引数に指定できるようになりました。

以下、使用例。(サンプルを少し改造しただけです。)

<!DOCTYPE html>
<html>
<head>
  <style>
  div { color:blue; }
  p { color:green; margin:0; }
  span { color:red; }
  </style>
  <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
  <div id="old"></div>
  <p></p>
  <span></span>
  <div id="new"></div>
<script>
// version added 1.0
  var arr = ["a", "b", "c", "d", "e"];
  $("div#old").text(arr.join(","));

  arr = jQuery.map(arr, function(n, i){
    return (n.toUpperCase() + i);
  });
  $("p").text(arr.join(","));

  arr = jQuery.map(arr, function (a) {
    return a + a;
  });
  $("span").text(arr.join(","));

// version added : 1.6
  var dimensions = { width: 10, height: 15, length: 20};
  dimensions = $.map(dimensions, function(value, index){
    return value *2;
  });
  $("div#new").text(dimensions.join(","));
</script>
</body>
</html>

jQuery git pull + git log

jquery

コミット無し。

jquery-ui

Widget: Update demo to work with 1.6 · e55e1fb · jquery/jquery-ui · GitHub

commit e55e1fb5bf95412a3a5c
widget のデモ。className から "class" に変更。

Accordion tests: Cleanup. · 7134033 · jquery/jquery-ui · GitHub

commit 71340333659577644594
コーディングスタイルの修正。

Spinner: Cleanup, use ._bind() and ._hoverable(). · 6981cab · jquery/jquery-ui · GitHub

commit 6981cab9c40a7b93d675
._bind() と ._hoverable()の変更。

Spinner: Invoke _markupOptions() before _draw(). · c1da941 · jquery/jquery-ui · GitHub

commit c1da941f9f664e3dabe1
_markupOptions() の後に _draw()を異動させた。

Spinner: Don't stop propgation of mousedown. Added TODOs. · 4d2ac1a · jquery/jquery-ui · GitHub

commit 4d2ac1abca64ec19407f
spinner の mousedown の return の値の変更。コメントの変更。

Spinner: Keep the focus on the text field even when using the buttons. · 64cdaa8 · jquery/jquery-ui · GitHub

commit 64cdaa82e6736c4b06f6
テキストフィールドのフォーカスを保つための変更。

Spinner tests: Cleanup. · 160a301 · jquery/jquery-ui · GitHub

commit 160a301d96c09403b87e
Spinner のテストファイルの修正。

Spinner: Define defaults for callbacks. · b10c4cd · jquery/jquery-ui · GitHub

commit b10c4cdab5faf88c8f64
Spinner のコールバックの値にnullを追加。テストファイルも修正。

Merge branch 'spinner-getCreateOptions' · e9cdd57 · jquery/jquery-ui · GitHub

commit e9cdd576f4327f947b00
ブランチのマージ。

jQuery git pull + git log

コミットの量が多すぎ!今回はjqueryのみ。

jquery

Merge pull request #447 from rwldrn/9914 · d7681a1 · jquery/jquery · GitHub

テストフィアル修正。空テストを削除。

Merge pull request #419 from rwldrn/9630 · 6a3395a · jquery/jquery · GitHub

commit 6a3395afcdb958a25f9a
.hasClass()の修正。.contents().hasClass()のテストの修正。

Merge pull request #434 from Bubbi/bug_7071 · 84936f1 · jquery/jquery · GitHub

commit 84936f1e64f57009c838
property on VML IEの問題の修正。

Merge pull request #431 from DenisKnauf/master · 2e298d9 · jquery/jquery · GitHub

commit 2e298d92dbba3f9984a7
ajaxの修正。serializeArrayのfilterに使われている部分にdatetime-localを追加。

Merge pull request #432 from rwldrn/9794 · 59936dc · jquery/jquery · GitHub

commit 59936dc04d4dd2731874
data の
// Check for both converted-to-camel and non-converted data property names
// If a data property was specified
の追加。

Merge pull request #412 from rwldrn/9587 · b5a16ea · jquery/jquery · GitHub

commit b5a16ead1ae2b7449c44
jQuery.clone()の修正とテストファイルの修正。

Merge pull request #416 from gnarf37/ticket_6652 · 8d5c874 · jquery/jquery · GitHub

commit 8d5c874227a65434a694
css の 半透明の処理の追加。テストファイルの追加。

Merge pull request #367 from gnarf37/index-optimize · 3cfb134 · jquery/jquery · GitHub

commit 3cfb134ab41d204a7197
.index()の引数が無かった場合の処理の修正。テストファイルの修正。

Now using getAttributeNode in all attribute cases in IE6/7, which normal... · 8c2cb49 · jquery/jquery · GitHub

commit 8c2cb49917fc1082abac
formHook から nodeHook への名前変更。テストファイルの修正。

Remove unnecessary regex · 700c16b · jquery/jquery · GitHub

commit 700c16b0859a8c982869
rinvalidCharの正規表現が無用だったので、削除。

Add back the background: none setting to avoid any possible crashes in I... · 5c4a9cc · jquery/jquery · GitHub

commit 5c4a9cc001fcd803efa6
IE関連の修正。backgroundにnoneと入れない表示が崩れる問題の修正。

Adds failing tests for #9413 · 7daf44b · jquery/jquery · GitHub

commit 7daf44b5ab1b5fbae9f8
フィルタリング・テストの追加。

Fixes assertion counts and dom element fixture issue · 13647e9 · jquery/jquery · GitHub

commit 13647e94e0141757a17c
ストファイルのコーディングスタイルの修正。

Adds failing tests · 22028e4 · jquery/jquery · GitHub

commit 22028e403f6ae68b5985
ストファイルの修正。

Improves support for arbitrary numbers in data keys. Fixes #9318 · e7af6a2 · jquery/jquery · GitHub

commit e7af6a296b75b8583175
dataのkeysが、キャメルケースの"-"の後の文字がアルファベットのみだったのが、数字でも大丈夫なように修正された。

Merge pull request #455 from rwldrn/9413 · 37254ba · jquery/jquery · GitHub

commit 37254bab91b6e0067160
Merge pull data.jsの修正。

Merge pull request #456 from rwldrn/9318 · b22c904 · jquery/jquery · GitHub

commit b22c9046529852c7ce56
Merge pull request #456 from rwldrn/9318

"Learn You a Haskell for Great Good!"の日本語訳が出版される!?

Learn You a Haskell for Great Good! の日本語訳が出版されるそうです。(某Haskellerの情報より)
私は原書のPDFを購入したのですが、日本語訳がでたら、そちらも購入しようと思います。
"Learn You a Haskell for Great Good!" はwebで無料で読めるのですが、私はiPadで読む用にPDFを購入しました。

Learn You a Haskell for Great Good!: A Beginner's Guide

Learn You a Haskell for Great Good!: A Beginner's Guide

いつ出版予定とか、何か情報ないっすかねぇ?

jQuery git pull + git log

今日のニュースは jquery-mobileが"Releasing 1.0b2."になった事です。
Releasing 1.0b2.
jquery-mobileのコミットが多すぎるので、途中までです。

プログラミング言語の基礎概念

プログラミング言語の基礎概念』をamazonにて注文しました。
しかし、注文した途端、在庫切れになしてしまって、只今、取り寄せ中。
もしかして、ベストセラーに!?

<内容詳細>
関数型言語MLの一種Objective Camlを題材としてプログラミング言語の意味論,型システム,プログラミング言語の基礎概念,これらの概念間の数学的な関連を学ぶ.オンライン演習システムを用いて,「証明」を解答とする演習問題の正誤をWeb上で自動判定することもできる.
<目次>
第1部 導出システム入門
 第1章 自然数の加算・乗算・比較
  1.1 自然数の加算・乗算:導出システム Nat
  1.2 推論規則と導出の記法
  1.3 自然数の比較:導出システム ComparaNat1-3
  1.4 算術式の評価と簡約
 第2章 メタ定理と帰納法による証明
  2.1 メタ理論とメタ定理
  2.2 数学的帰納法
  2.3 構造帰納法
  2.4 帰納法による定義
  2.5 導出に関する帰納法
  2.6 整礎帰納法

第2部 MLの操作的意味論
 第3章 整数・真偽値式の評価
  3.1 ML1とその評価:導出システム EvalML1
  3.2 実行時エラー
 第4章 定義,変数束縛と環境
  4.1 letによる定義
  4.2 変数宣言の有効範囲
  4.3 let式の評価と環境
  4.4 導出システム EvalML2
 第5章 関数と再帰
  5.1 fun式と関数定義
  5.2 高階関数
  5.3 静的有効範囲と関数閉包
  5.4 導出システム EvalML3(その1)
  5.5 再帰的定義
  5.6 導出システム EvalML3(その2)
  5.7 EvalML3のメタ定理
 第6章 静的有効範囲と名前無し表現
  6.1 名前無し表現
  6.2 名前無し式への変換:導出システム NamelessML3
  6.3 名前無し式の評価:導出システム EvalNamelessML3
  6.4 名前無し表現に基づく評価の正しさ
 第7章 リストとパターンマッチング
  7.1 リスト
  7.2 導出システム EvalML4
  7.3 一般的なパターンマッチング
  7.4 導出システム EvalML5

第3部 MLの型システム
 第8章 単純型システム
  8.1 型
  8.2 型付け判断,型環境と型付け規則
  8.3 導出システム TypingML4
  8.4 型安全性
 第9章 多相的型システム
  9.1 単純な型システムの問題点
  9.2 多相的型システム
  9.3 let多相の型システム
  9.4 導出システム PolyTypingML4
  9.5 多相型システムの型安全性
 第10章 型推論
  10.1 型推論のためのアイデア
  10.2 型推論問題の定義と主要型
  10.3 方程式の抽出
  10.4 一階の単一化
  10.5 型推論アルゴリズムとその性質
  10.6 PolyTypingML4での型推論

さらに勉強したい人へ
索引