Pot.js非同期イテレータだけの軽量版を作ってみました

Pot.js の実装のうち Pot.Deferred.forEach などの
非同期/同期イテレータだけにした軽量タイプを PotPico.js として作ってみました。
サイズは約 50KB で、PotLite.js より軽くなりました。
単に CPU 負荷を抑えて JavaScript を実行したい時とか、
Pot.Deferred や Pot.js のイテレータがどんなものか触ってみるきっかけになれたらと思ってます。
サイズと実装は、
Pot.js >>>>>> PotLite.js >>> PotPico.js
 (full)          (非同期処理のみ)    (イテレータとDeferredのみ)
こんな感じです。

PotPico.js はイテレータに必要なものだけにして、 Minify 用に少し最適化した感じです。
なので Pot.js / PotLite.js とまったく同じに使えて、リファレンス も同じく参照できます。

Download

Document and Reference

PotPico.js で利用できる関数/オブジェクトのリファレンス:

JSDoc

Closure Compiler でソースコードから自動生成したドキュメント。

Compatibility

PotPico.js は Pot.js と同じく以下の環境で動きます。

  • Mozilla Firefox *
  • Internet Explorer 6+
  • Safari *
  • Opera *
  • Google Chrome *

以下の環境でも利用可能です。

  • Greasemonkey (userscript)
  • Mozilla Firefox Add-On (on XUL)
  • Node.js
  • Other non-browser environment

TestRun

以下のページで動作テストして確認できます。

License

Dual licensed under the MIT and GPL v2 licenses.

PotPico.js のページ

PotPico.js - JavaScript Async Library


PotPico.js は今のところレポジトリ (GitHub /master) に含まれてません。
PotLite.js もあるのに、これ以上そういうの増やすのもどうかと思って API サーバのほうに置いてます。
Pot.js より手軽でイイ! ていうことになったら master に含めようと思ってます (もし使ってくれる方がいたら…)。
もしくは、PotLite.js を PotPico.js として置き換えてもいいかも (WebWorker とかたぶん使われてない)。



Pot.js のほうの情報についてはリファレンス等から参照ください。

レポジトリ




その他、なにか問題・バグ・感想・指摘などあれば、
コメントやメールまたは @polygon_planet まで送っていただけるとうれしいです。