Ocaml学习
文章平均质量分 94
芥末章宇
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OCaml 第四次上机实验课学习指南:手搓表达式解析器
本文是《编程语言与编译器》课程关于词法分析和语法分析的实践指南,使用OCaml语言实现表达式解析器。主要内容包括:1)通过Dune工具初始化项目结构;2)定义表达式的抽象语法树(AST);3)使用ocamllex工具创建词法分析器,处理数字和运算符等token;4)利用ocamlyacc/menhir构建语法分析器,定义优先级规则和语法结构。教程详细解释了每个步骤的OCaml语法和实现细节,并提供了完整的代码示例,最终实现能解析"3+5*2"类算术表达式的解析器。原创 2025-06-16 12:23:05 · 819 阅读 · 0 评论 -
OCaml第五次上机实验课学习指南:如何构建一个解释器
本文介绍了如何构建一个OCaml解释器的实践教程。主要内容包括: 准备工作:克隆GitHub仓库并切换到calculator分支,获取基础代码 核心概念:区分编译器与解释器的差异,解释器工作阶段(词法分析、语法分析、求值) 代码分析:检查ast.ml、lexer.mll和parser.mly文件,理解AST定义和解析规则 实现求值: 介绍小步语义(Big-Step)和大步语义(Small-Step) 实现辅助函数is_value判断表达式是否已求值 编写step函数执行单步表达式简化 教程采用循序渐进的方式原创 2025-06-15 21:45:10 · 955 阅读 · 0 评论 -
OCaml 第三次上机实验课学习指南:模块系统与面向对象编程详解
本文将带你深入学习 OCaml 的第三次上机实验课内容,重点围绕模块系统 (Module System) 和面向对象编程 (Object-Oriented Programming),结合文档中提供的知识点和示例进行详细讲解。为了便于理解,我会将 OCaml 的特性与 C++ 进行类比,帮助熟悉 C++ 的读者快速上手。本文内容基于武汉大学计算机学院的《Object-oriented Programming in OCaml》课程讲义,涵盖模块定义、仿函数 (Functors)、类与对象、继承等核心概念,并提原创 2025-03-15 11:29:13 · 2191 阅读 · 0 评论 -
OCaml 第二次上机实验课学习指南:高级编程任务
本教程涵盖了 OCaml 的高级编程任务,包括递归、模式匹配、列表操作和高阶函数。实践:在 REPL 中运行代码,尝试不同输入。优化:改进is_prime的效率,使用尾递归优化factorial。扩展:学习List模块的其他函数(如mapfold如需进一步帮助,请在评论区交流!原创 2025-03-15 10:49:19 · 806 阅读 · 0 评论 -
OCaml 编程实验教程:从入门到实践
本文是我基于武汉大学计算机学院《编程语言与编译器》课程的 OCaml 实验教程(Tutorial 1: Basic Programming Tasks of OCaml)的学习笔记,旨在帮助初学者快速上手 OCaml 编程。本教程将详细讲解开发环境配置、第一个 OCaml 程序、OCaml 基础知识,并通过编程练习深入理解函数式编程的核心概念。适合 OCaml 初学者阅读。原创 2025-03-15 10:34:08 · 1130 阅读 · 0 评论
分享