Scheme编程入门:固定天数学会
5星 · 超过95%的资源 需积分: 9 57 浏览量
更新于2024-07-27
收藏 1.28MB PDF 举报
"Teach Yourself Scheme in Fixnum Days" 是一本关于学习 Scheme 语言的教程,作者 Dorai Sitaram,在1998年至2004年间创作并保留所有版权。该教程涵盖了一系列主题,旨在帮助读者在较短的时间内掌握 Scheme 的基本概念和用法。
教程内容包括:
1. **进入 Scheme**:这部分可能是介绍如何设置环境,启动 Scheme 解释器,并进行基本的交互式编程。
2. **数据类型**:
- **简单数据类型**:讲解了 Scheme 中的基本数据类型,如布尔值(booleans)、数字(numbers)、字符(characters)和符号(symbols)。
- **复合数据类型**:涉及字符串(strings)、向量(vectors)、带有尾点的对(dotted pairs)和列表(lists),以及不同数据类型之间的转换。
- **其他数据类型**:可能涵盖了更多高级或特定于 Scheme 的数据结构。
- **S-表达式(S-expressions)**:Scheme 的基础,用于表示代码和数据。
3. **形式(Forms)**:
- **过程(Procedures)**:定义和使用函数,包括参数处理和可变数量的参数。
- **apply 函数**:用于将列表中的元素作为参数传递给另一个函数。
- **序列化(Sequencing)**:描述如何执行一系列操作,可能包括表达式的顺序和控制流。
4. **条件语句**:包括 when 和 unless 控制结构,以及 cond、case、and 和 or 逻辑操作符。
5. **词法变量(Lexical variables)**:
- **let 和 let\***:局部变量的绑定,let\* 保证变量按顺序初始化。
- **fluid-let**:提供动态绑定的变量,允许在作用域内改变变量的值。
6. **递归**:
- **letrec**:支持递归定义的构造,允许在定义过程中引用自身。
- **命名 let**:另一种实现递归的方式。
- **迭代**:可能介绍了替代递归的循环结构。
- **列表映射**:如何使用函数遍历和操作列表。
7. **输入/输出(I/O)**:
- **读取(Reading)**:从输入源获取数据的方法。
- **写入(Writing)**:向输出设备或文件写入数据。
- **文件端口(File ports)**:关于打开、关闭和操作文件的详细内容,可能包括自动打开和关闭。
这本教程通过详细的解释和实例,逐步引导读者深入理解 Scheme 语言的各个方面,适合初学者入门和有经验的程序员进一步探索 Scheme 的特性。同时,提供的下载链接包含了所有页面的文档存档和 TeX 源代码,方便读者自行打印或进一步编辑。
2010-05-06 上传
2009-12-24 上传
点击了解资源详情
2023-07-08 上传
2021-10-04 上传
2020-06-14 上传
2011-04-14 上传
2018-03-03 上传
2022-07-15 上传
abcdevilangel
- 粉丝: 0
- 资源: 1
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码