macros tag中文 - 使用宏收集優秀的應用程序和程序




4 Answers

Culpepper&Felleisen,Fortifying Macros,ICFP 2010

Culpepper,Tobin-Hochstadt和Felleisen,Advanced Macrology和Typed Scheme的實施,Scheme Workshop 2007

弗拉特,芬德勒,費利森,計劃與類,混合和特徵,APLAS 2006

Herman,Meunier,通過部分評估改進嵌入式語言的靜態分析,ICFP 2004

title字數 description字數

我對Macros非常感興趣,剛剛開始了解它的真正力量。 請幫我收集一些宏觀系統的用法。

到目前為止,我有這些結構:

模式匹配:

安德魯賴特和布魯斯杜巴。 Scheme的模式匹配,1995

Prolog精神中的關係:

Dorai Sitaram。 在schelog中編程。 http://www.ccs.neu.edu/home/dorai/schelog/schelog.html

Daniel P. Friedman,William E. Byrd和Oleg Kiselyov。 理性的計劃者。 麻省理工學院出版社,2005年7月

Matthias Felleisen。 將Prolog音譯成計劃。 技術報告182,印第安納大學,1985年。

可擴展循環結構:

塞巴斯蒂安·埃格納 方案中的熱切理解:SRFI-42的設計。 “計劃與功能規劃研討會”,2005年9月第13-26頁。

奧林顫抖。 循環的解剖:範圍和控制的故事。 在國際功能規劃會議上,第2-14頁,2005年。

班級系統:

PLT。 PLT MzLib:圖書館手冊。 技術報告PLT-TR2006-4-v352,PLT Scheme Inc.,2006。http://www.plt-scheme.org/techreports/

Eli Barzilay。 騙取。 http://www.barzilay.org/Swindle

組件系統:

Ryan Culpepper,Scott Owens和Matthew Flatt。 組件接口中的語法抽象。 在生成編程和組件工程國際會議,第373-388頁,2005年

軟件合同檢查

Matthew Flatt和Matthias Felleisen。 單位:HOT語言的酷模塊在ACM SIGPLAN會議編程語言設計和實現,第236-248頁,1998年

Oscar Waddell和R. Kent Dybvig。 擴展句法抽象的範圍。在編程語言原理研討會上,第203-215頁,第199頁

解析器生成器

Scott Owens,Matthew Flatt,Olin Shivers和Benjamin McMullan。 Scheme中的Lexer和解析器生成器。 “計劃與功能規劃研討會”,2004年9月第41-52頁。

工程語義工具:

Matthias Felleisen,Robert Bruce Findler和Matthew Flatt。 PLT Redex的語義工程。 MIT出版社,2009年8月。

編譯器轉換的規範:

Dipanwita Sarkar,Oscar Waddell和R. Kent Dybvig。 用於編譯器教育的納米框架。 函數式編程,15(5):653-667,2005年9月。教育明珠。

新的執行形式

具有可序列化延續的Servlet Greg Pettyjohn,John Clements,Joe Marshall,Shriram Krishnamurthi和Matthias Felleisen。 廣義堆棧檢查的延續。 在國際功能規劃會議上,第216-227頁,2005年。

定理證明系統

塞巴斯蒂安·埃格納 方案中的熱切理解:SRFI-42的設計。 在計劃和功能規劃研討會,2005年9月第13-26頁。

基類的擴展與類型

Sam Tobin-Hochstadt和Matthias Felleisen。打字方案的設計和實施。 在“編程語言原理研討會”,第395-406頁,2008年。

怠惰

Eli Barzilay和John Clements。 沒有辛勤工作的懶惰:將懶惰和嚴格的語言結合起來進行教學。 在教育中的功能和聲明性編程中,第9-13頁,2005年。

功能反應性

Gregory H. Cooper和Shriram Krishnamurthi。 使用按值調用語言嵌入動態數據流。 在2006年歐洲規劃研討會上

參考:

收集自Ryan Culpepper的論文







我會在列表中添加“Scheme標準庫本身”。 查看guile發行boot-9.scm中的文件boot-9.scm 。 許多最常用的Scheme表單 - case ,等等 - 在那裡被定義為宏。




Here's一個非常棒的使用方案宏來創建用方案編寫的高效機器人系統的例子




Related

macros lisp scheme racket hygiene