あと味

たくさん情報を食べて、たくさん発信すると、あとになって味わい深い。

jstudyで「JavaScriptとLisp」ってタイトルのLTしました

昨日、jstudyの第一回目のイベントがめでたく開催されました。

Twitterで見かけて、速攻で申し込んだんですが、せっかくだからLTしたいなと思い、稚拙ながら「JavaScriptLisp」というタイトルでLTをさせていただくことができました。

発表するまで、ネタとしてどうなんだろうと不安でしたが、予想外に反応があったので良かったです。

jstudyの感想

jQuery、Dojo、JavaScriptの設計手法 x 2、ECMAScript5の仕様、jsdo.itの紹介、iPadJavaScriptJavaScriptの高速化手法、JavaScriptで昔を懐かしむなどなど、JavaScript好きにはとっても楽しいひと時を過ごすことができました。

LTに立候補していた人があまりいないように思いましたが、実際には11名?の方が発表し、最初から最後まで飽きることなく楽しめました。

今回が第一回目ということだったので、次回も今回のように盛り上がりを見せてくれるとうれしいなーと思います。

発表したこと

JavaScriptLispというタイトルでLTをさせていただきました。

読者の方はご存知かもしれませんが、私はJavaScriptが大好きで、少しLispの勉強もしてみたことがあります。

その中で、JavaScriptLispの関連の深さを感じていて、調べてきたことをまとめたものです。

以下、SlideShareにアップしたスライドを掲載します。

参考URL、参考書籍等

スライドの中で紹介した参考URLや参考書籍を以下に掲載します。

参考URL

NetscapeにてJavaScriptを作ったブレンダン・アイクさんのwikiのページと、JavaScriptSchemeを載せるつもりで作ったということを告白している記事です。

その和訳です。

JavaScript: The Good Partsの著者で、JSONの産みの親である、ダグラス・クロックフォードさんのwikiのページと、JavaScriptがCやJavaよりも関数型言語に似てるということを言及している記事です。

その和訳です。

同じくクロックフォードさんが、SchemeのコードとJavaScriptのコードを比較対象している記事です。和訳は見つかりませんでした。

参考書籍

JavaScript: The Good Parts

JavaScript: The Good Parts


The Little Schemer

The Little Schemer

あと味の関連エントリー

自己紹介にて。

JavaScriptLispのエッセンスを感じるためには、上記のエントリーのようにreturn縛りでコードを書いてみるといいと思います。

副作用を使わないでどうやって書くか考えると、関数型言語のエッセンスが感じられると思います。また、ループを使わず再帰で書くことが求められたり、その場で評価する無名関数も必要になると思います。*1

Lispのリスト相当のデータ構造をJavaScriptで作ってみる実験をしたエントリーです。

#jstudyのTwitterでの盛り上がり

twitter記法でまとめようと思ったけど、めんどくさすぎて断念orz...

まとめ

勉強会って参加してもなかなか顔を覚えていただけないので*2、何でもいいからLTした方がいいなと思いました。今後はそうしようと思います。

JavaScriptが大好きだということも再認識したし、やっぱりJavaScriptの仕事ができるようになるといいなーと思います。

運営の方々、お疲れ様でした!楽しい勉強会をありがとう!

追記

全体を通してLispと単に表記をしていましたが、Commom LispSchemeを同一化して扱っていたのはちょっと問題だったかもしれません。

Twitterid:Ehrenさん(@Masahito)さんから教えていただいたことも追記します。





いろいろ中途半端な知識ですいません><

Schemeの方がJavaScriptに近いようなので、もしこのエントリーでLispファミリーに興味をもたれた方は、SchemeもしくはSchemeベースのものを選択してみることをおすすめします。

*1:ただし、実用性はなし

*2:自分の存在感が薄いのが一番の原因だけど