Drkcore

31 07 2012 Haskell Python javascript Tweet

切れ味鋭いPython版underscore.js(knife)

まぁ、僕はSpine派なのであんまりunderscore.jsにそそられないんだけど、knifeってのを見つけたのでちょっと触ってみた。

>>> __(1,2,3,4,5).append(6).append(7).undo(1).peek()
[1, 2, 3, 4, 5, 6]

reduceというかfold系

>>> __(1, 2, 3).worker(lambda x, y: x + y).reduce()
knife.lazy.lazyknife ([IN: ([1, 2, 3]) => WORK: ([]) => HOLD: ([]) => OUT: ([6])]) 
>>> __(1, 2, 3).worker(lambda x, y: x + y).reduce().get()
6

覚えれば短くかけて便利なんだろうけど、覚えたらHaskellとかSchemeとかの構文とバッティングして混乱しそう。

reduceの例はHaskellだったら

Prelude> foldl1 (+) [1,2,3]
6

でいいので、OOPな感じにすると面倒くさそうに感じるかなぁ。

ProductName プログラミングHaskell
Graham Hutton
オーム社 / 2940円 ( 2009-11-11 )


About

  • もう5年目(wishlistありマス♡)
  • 最近はPythonとDeepLearning
  • 日本酒自粛中
  • ドラムンベースからミニマルまで
  • ポケモンGOゆるめ

Tag

Python Deep Learning javascript chemoinformatics Emacs sake and more...

Ad

© kzfm 2003-2021