《crafting interpreters》阅读笔记:p45-p45

《crafting interpreters》阅读第 23 天,p45-p45 总结,总计 1 页。

一、内容

章:04.Scanning,节:4.6 Longer Lexemes

内容:词法分析之处理注释。

二、开发总结

1.处理注释逻辑

注释符号://。要和除号 / 放在一起处理。

注释的形式:// xxx。只支持单行注释。

判断注释结束逻辑:遇到换行符 \n。

2.源代码点评

复制代码
ef peek(self) -> str:
        """

        :return:
        """
        # todo 源代码中的这部分不知道什么场景会出现,先注释
        # if self.is_at_end():
        #     return "\0"

        return self.source[self.current]

3.Java vs Python

1.获取字符串中的字符

Java:charAt(int index)

Python: strindex

4.Python 代码实现

https://github.com/codists/pylox

三、Python 技术总结

1.\0

表示 ASCII 码为 0 的那个字符。

2.字符串操作

获取字符:strindex

四、其它

前面的阅读内容,偏理论,后续有时间再写总结。

还是不喜欢用 scanning 命名章,应该用 lexical analysis 更准确。

虽然有了 AI agent,但是写代码的过程中始终会有一个疑问:这样写好不好,对后续有没有影响?我的处理方式依然是:先不要去想那么多,先把事情干完,干完再去优化。

五、参考资料

1. 编程

(1) 豆瓣,Robert Nystrom,《Crafting Interpreters》:https://book.douban.com/subject/35548379/

(2)Github,craftinginterpreters: https://github.com/munificent/craftinginterpreters

(3)Github,Python 实现:https://github.com/munificent/craftinginterpreters/wiki/Lox-implementations#python

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com

(2) Cambridge Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

相关推荐
曲径海盗2 小时前
【Python 学习第 41 天】for 循环
python·学习笔记·编程入门
摇滚侠2 小时前
《On Java 中文版 基础卷》阅读笔记 实现隐藏 11
java·笔记·python
沧海一笑-dj2 小时前
【Python】Python学习笔记-模块与包
python·pip·模块·包·python包·python模块·包与模块
echome8882 小时前
Python 异常处理:try、else、finally 的正确搭配
开发语言·前端·python·异常处理·编程技巧
云和数据.ChenGuang2 小时前
Python 单继承与多继承深度剖析:从 MRO 到实战取舍
开发语言·人工智能·python·langchain
威哥爱编程2 小时前
Python 智能体开发实战 02:你的 AI 助教说话像换了个模型?九成的 system prompt 都写错了
python·agent
威哥爱编程2 小时前
Python 智能体开发实战 01:装了三遍环境还在报错?虚拟环境和 DeepSeek 一次配到位
python·agent
小咕聊编程3 小时前
基于Python的豆瓣电影数据可视化系统构建分析
开发语言·python·信息可视化
小小张说故事4 小时前
Python 的 dict 为什么查询是 O(1)?拆开哈希表、扰动函数与扩容阈值
python