before lisps just part of the past ~ #11 els2014
DESCRIPTION
A tiny report about ELS2014TRANSCRIPT
BeforeLISPs
Just Part of the Past
〜 #11 ELS2014 〜
European Lisp Symposium● 2008年から毎年開催、今年で7回目● May 4 - 6, 2014 IRCAM, Paris, France● 予稿集、動画、スライド(一部)は公式ページから
– http://www.european-lisp-symposium.org/
感想● 話題はCommon Lispが多い● 並列化の話題がいくつかあり、中でも科学技術
計算にフォーカスしているものが2,3あった● 現地からの参加者が食事の案内をしてくれた
ので会期中は食事の心配が一切なかった– 天気も晴れまくった
● 楽しかったのでまた参加したい
論文紹介1● Generalizers : New Metaobjects for Generalized
Dispatch● Christophe Rhodes, Jan Moringen,
David Lighteblau● Classよりも特定的、EQL Specializerよりも非特定的
なSpecializerをMOPで実装、性能評価● Generalizerの層では、 Dispatch用のインスタンスに
Dispatch keyを生成する関数を指定できる● methodをキャッシュしておいても、標準のmethod
dispatchにくらべ2倍以上は遅い
論文紹介1● こんな書き方ができるようになるプロトコルを定義でき
るように拡張
● (defgeneric fact (n) (:generic-function-class signum-generic-function))(defmethod fact ((n (signum 1))) (* n (fact (1- n)))(defmethod fact ((n (signum 0))) 1)
● nが負の場合を与えないで no applicable method errorに
論文紹介2● High Performance concurrency in Common Lisp - hybrid
transactional memory with STMX● Massimiliano Ghilardi● Software and Hardware Transactional Memory
– Intel CPU with TSX and SBCL for HT use● 2013年3月 : IntelからHardware Transactional Memory
をサポートしたCPUが発表、8月にSTMXがHybrid Transactional Memoryを実装
– one of the first published implementations of hybrid transactional memory
論文紹介2● 2つのAPI
– value based : (tvar 42)● $でread、(setf $)でwrite
– slot based : (transactional (defclass ...))● Not object based
● ATOMICマクロで囲んでトランザクションを表現
– composable● Transactional版データ構造
– TCONS, TLIST, THASH-TABLE, TMAP, TSTACK, TFIFO, TCHANNEL and TPORT
その他● ASDF3, or Why Lisp is Now an Acceptable
Scripting Language
– François-René Rideau● Keynote : Parallel Programming with Lisp for
Performance
– Pascal Costanza ● Keynote : Sending Beams into the Parallel Cube
– Gábor Melis