`
cookoo
  • 浏览: 646431 次
  • 性别: Icon_minigender_1
  • 来自: Shanghai
社区版块
存档分类
最新评论

One-day Compiler in Ocaml

    博客分类:
  • FP
阅读更多
Happen to find this nice presentation on quickly developing static DSL in OCaml. Here, 'static' means the DSL is processed by a formal compiler as opposed to dynamic DSL such as the fancy metaprogramming in Ruby in runtime. I've been learning OCaml for a while and find it amazing for the elegance, speed and easiness to play with. It's also very good at writing compilers, which I've been long planning to learn thoroughly.
分享到:
评论
3 楼 cookoo 2006-11-29  
另外发现一个教程:Write Yourself a Scheme in 48 Hours
http://halogen.note.amherst.edu/~jdtang/scheme_in_48/tutorial/overview.html

主要讲Haskell的parsec combinator
2 楼 cookoo 2006-10-30  
我想这可能是因为ML设计的初衷是用来分析和证明程序,所以语法颇像lex和yacc的定义。我个人学习Ocaml不是为了研究compiler,不过PO的作者提到编译工具在复杂文本挖掘中的作用倒是个很有吸引力的观点。

我现在只看到第4章,翻了翻后面的,PO的第16章是讲Ocamllex和Ocamlyacc的。20页不到,O'reilly的那本对应章节也是这个页数。后者用的是传统的计算器的例子,而PO不想集中讲一个复杂的计算器,所以还说了些各种用处的小例子,基本差别不大。

我想主要差别是PO的第17章,这章是个基于16章的知识解析复杂log文件的大例子。另外29章讲怎么用Camlp4在Ocaml的基础上定制DSL,这个O'reilly那本没有涉及。不过作者说Camlp4是Ocaml最深奥的部分,所以也只能讲点皮毛:(

tiger book ML版amazon上也脱销了,而且很奇怪评价极低。我不清楚还有什么别的这方面的书。
1 楼 potian 2006-10-30  
听说用ML写编译器非常自然,可惜很少看到这方面的专著,连tiger book的ML版都无法在国内找到

不知道practical 这本书里面有没有相关的章节

相关推荐

    pg141-dds-compiler_Xilinx_pg141-dds_pg141-dds-compiler_

    标题中的“pg141-dds-compiler_Xilinx_pg141-dds_pg141-dds-compiler_”暗示了这是一个与Xilinx公司的DDS(Direct Digital Synthesis,直接数字频率合成)编译器相关的资源,版本号可能是14.1。DDS是一种广泛应用于...

    device-tree-compiler安装包以及依赖包

    device-tree-compiler_1.4.7-1_amd64.deb 安装包以及其依赖包。 在ubuntu 22.04上离线安装测试可行。推荐大家使用 总共hi三个包,分别是 libfdt1_1.4.7-1_amd64.deb libfdt-dev_1.4.7-1_amd64.deb device-tree-...

    commons-compiler-3.0.8-API文档-中文版.zip

    赠送jar包:commons-compiler-3.0.8.jar; 赠送原API文档:commons-compiler-3.0.8-javadoc.jar; 赠送源代码:commons-compiler-3.0.8-sources.jar; 赠送Maven依赖信息文件:commons-compiler-3.0.8.pom; 包含...

    device-tree-compiler_1.4.7-3ubuntu2_amd64.deb

    下载后ubuntu 终端安装命令:dpkg -i device-tree-compiler_1.4.7-3ubuntu2_amd64.deb 直接安装,外网下载太慢上传备用

    scala-compiler-2.11.8-API文档-中英对照版.zip

    赠送jar包:scala-compiler-2.11.8.jar; 赠送原API文档:scala-compiler-2.11.8-javadoc.jar; 赠送源代码:scala-compiler-2.11.8-sources.jar; 赠送Maven依赖信息文件:scala-compiler-2.11.8.pom; 包含翻译后...

    kotlin-compiler-embeddable-1.3.50.jar

    kotlin-compiler-embeddable-1.3.50.jar下载后直接可用(亲测)。Could not download kotlin-compiler-embeddable.jar,是墙的原因 没有下载下来kotlin-compiler-embeddable.jar的jar包资源。 把下载好的jar,放在...

    CC-RL Compiler

    CC-RL Compiler用户手册 CC-RL Compiler是瑞萨电子公司(Renesas Electronics Corp.)推出的编译器,用于RL78家族单片机的开发。该编译器提供了一个强大的开发环境,帮助开发者快速、可靠地开发基于RL78单片机的...

    Android studio Kotlin kotlin-compiler-embeddable-1.6-M1.jar

    otlin-compiler-embeddable-1.6-M1 下载慢 otlin-compiler-embeddable 下载慢 直接复制到 C:\Users\xxx\.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.6.0-M1

    commons-compiler-3.1.4-API文档-中文版.zip

    赠送jar包:commons-compiler-3.1.4.jar; 赠送原API文档:commons-compiler-3.1.4-javadoc.jar; 赠送源代码:commons-compiler-3.1.4-sources.jar; 赠送Maven依赖信息文件:commons-compiler-3.1.4.pom; 包含...

    kotlin-compiler-embeddable 1.6.10

    《Kotlin-Compiler-Embeddable 1.6.10:Android开发中的编译器嵌入实践》 在移动应用开发领域,尤其是在Android平台上,Kotlin已经成为了开发者们广泛采用的语言。它以其简洁的语法、强大的功能以及与Java的无缝...

    device-tree-compiler_1.4.5-3_amd64.deb

    fdtput版本更新至1.4.5,下载device-tree-compiler_1.4.5-3_amd64.deb,dpkg -i安装

    commons-attributes-compiler-2.2.zip

    commons-attributes-compiler-2.2.zipcommons-attributes-compiler-2.2.zipcommons-attributes-compiler-2.2.zipcommons-attributes-compiler-2.2.zipcommons-attributes-compiler-2.2.zip

    kotlin-scripting-compiler-impl.jar

    kotlin-scripting-compiler-impl.jar

    maven-compiler-plugin-3.8.0-source-release插件

    `maven-compiler-plugin-3.8.0-source-release` 是 Maven 生态系统中不可或缺的一部分,它提供了可靠的源代码编译功能,使得开发者能够专注于编写代码,而无需关心构建过程的细节。通过理解 Maven 插件的工作原理和...

    kotlin-compiler-embeddable-1.4.10.jar

    文件:kotlin-compiler-embeddable-1.4.10.jar下载,kotlin开发必备

    plexus-compiler--2.8.4.jar.rar

    这个压缩包文件"plexus-compiler--2.8.4.jar.rar"包含了Plexus Compiler的三个关键模块,分别是plexus-compiler-api-2.8.4.jar、plexus-compiler-javac-2.8.4.jar和plexus-compiler-manager-2.8.4.jar,这些文件版本...

    maven-compiler-plugin-3.8.1.jar

    maven是个项目管理工具,如果我们不告诉它我们的代码要使用什么样的jdk版本编译的话,它就会用maven-compiler-plugin默认的jdk版本来进行处理,这样就容易出现版本不匹配,以至于可能导致编译不通过的问题。...

    kotlin-compiler-embeddable 1.7.20

    kotlin-compiler-embeddable 1.7.20

    commons-compiler-2.7.6-API文档-中文版.zip

    赠送jar包:commons-compiler-2.7.6.jar; 赠送原API文档:commons-compiler-2.7.6-javadoc.jar; 赠送源代码:commons-compiler-2.7.6-sources.jar; 赠送Maven依赖信息文件:commons-compiler-2.7.6.pom; 包含...

Global site tag (gtag.js) - Google Analytics