+begin_src 指代从lisp对象的文本表示转换为实际lisp对象的程序reader 反之为printer
- 基本约定
- "the lisp reader/printer"
- nil的语义
- 真值的表示
- nil和t都是常量
- 判断是否为bool类型
- require / provide
- 在文件末尾导出模块
- 导入模块
- emacs的导入模块的寻找路径(load-path)
- 添加新的模块到load-path
- 将当前目录下的每个目录的路径加入到loadpath中
- interactive
- 简介
- 以光标位置为参数 "d"
- 前缀参数 "P/p"
- 文件/目录相关
- 当前目录 default-directory
- 查找包含指定文件的父目录 locate-dominating-file
- 打开文件 find-file
- 判断某文件是否存在 file-exists-p
- 获取目录的名字 directory-file-name
- 获取文件路径的目录部分 file-name-directory
- 将路径转换为绝对路径
- 返回目录形式的文件路径(加个斜线在最后) file-name-as-directory
- list相关
- note
- list和cons cell
- 和list相关的谓词
- 访问list中的元素
- 创建list/cons-cell
- 修改list类型变量
- 修改已经存在的list结构
- 数据类型
- 简介
- 对象的输出表示 && 读取语法
- 注释
- 和编程相关的类型
- 文本属性
- buffer
- current buffer
- 操作系统接口
- 空闲定时器
CS61A python解释器是你指下魔法咒语背后,默默付出的苦力。
(无章节)
CS61B (无描述)
(无章节)
Csharp [System.Serializable]使得自定义类可序列化.
Handmade Hero 学习路线Rust · Arch Linux · 全 667 集 Handmade Hero 是 Casey Muratori 历时两年,从空文件夹到一个完整可玩游戏,每行代码都在视频里讲清楚的项目。原作是 C/C++ + Win32 + DirectSound + OpenGL,但你讨厌平台特定 API,所以这份路线把所有平台相关代码翻译成 Rust 的跨平台等价物——winit管…
L1: C 声明变量要尽量立即进行初始化(赋初值) , 这是很多bug的根源.
My Notes (无描述)
- Table of Contents
- 1emacs备忘
- 1.1kill buffer: C-x k
- 1.2
- 2org 入门
- 2.1S-tab 对整个文件进行缩进
- 2.2Tab 对特定标题下的内容进行展开/折叠
- 2.3C-<RET> 自动创建和上面相同的标题
- 2.4M-左/右 对标题的缩进进行调整
- 2.5M-上/下 对标题所在行的位置进行调整
- 2.6用三组括号标记链接/图片
- 2.7表格 行末按Tab
- 2.8任务状态切换 C-c C-t
- 2.8.1TODOtask1
- 2.8.2TODOtask2
- 2.9查看整个文件中的todo事项
- 2.10为todo事项添加子任务
- 2.10.1TODOsome hige task[0/3][0%](用C-c C-c来刷新任务进度)
- 2.11C-c [将文件加入agenda列表中
- 2.12C-c ]将当前文件从agenda列表中移除
- 2.12.1Mx org-agenda
- 2.13代码块
- 2.14C-c d/s 为任务设定开始和截止日期
- 2.14.1TODOsometask
- 2.15agenda来查看任务时间表
- 2.16C-c C-e h将org导出为html
- 3VSCode
- 3.1C-S-p
- 3.1.1open file
- 3.1.2close edit :关闭当前文件
- 3.1.3shortcuts
- 3.1.4new untitled file 创建新文件
- 3.1.5new window
- 3.1.6open Folder :打开文件夹
- 3.1.7open recent
- 3.1.8add folder to workspace
- 3.1.9save workspace as
- 3.1.10prefer setting (ui/json) 设置
- 3.2选中范围内查找替换
- 3.3
- 4Elisp
- 4.1eval-expression M-: 对表达式进行求值
- 4.2eval-buffer
- 4.3variable
- 5hello
Rust辨析: Deref、AsRef、Borrow、From、Into 在现代系统级编程中,类型系统的严密性直接决定了程序的安全边界。Rust 摒弃了传统语言的隐式垃圾回收(GC),开创性地利用生命周期与借用检查器来实现零成本抽象。然而,这一设计带来了极其复杂的引用转换机制:Deref、AsRef、Borrow、From、Into等。本手册致力于剥离所有伪名词和学术包装,用第一性原理与直观…
- 目录大纲
- 解引用家族的核心底牌 (Deref & DerefMut)
- 1.1 痛点引入:为什么需要解引用?
- 1.2 心智模型:智能指针的“隐形披风”
- 1.3 底层机制与内存物理布局
- 1.4 相似与不同:Deref 与 DerefMut 的约束继承
- 1.5 工业级代码实例
- 借用视角的化身协议 (AsRef, AsMut & Borrow)
- 2.1 痛点引入:多重视角切换与函数入参爆炸
- 2.2 心智模型:多功能的“观察窗口(Viewing Port)”
- 🎯 核心对比:AsRef 与 Borrow 的细微差别
- 2.3 物理内存布局
- 2.4 工业界选型指南
- 2.5 工业级代码实例:通杀路径的公共文件处理器
- 所有权转换的钢铁鸿沟 (From & Into 及其变体)
- 3.1 痛点引入:深浅拷贝的混乱与所有权毁灭
- 3.2 心智模型:原子重组舱
- 3.3 物理内存布局与零拷贝退化
- 3.4 相似与不同:深度厘清 4 对黄金转换特征
- 1. From & Into vs TryFrom & TryInto
- 2. FromStr vs TryFrom<&str>
- 3. Display vs From<MyType> for String
- 4. From vs Into 的自动推导机制
- 3.5 工业级代码实例
- 孤儿规则与泛型特赦
- 4.1 痛点引入:下游依赖的混乱地狱
- 4.2 心智模型:原住民优先保障政策
- 4.3 底层机制与泛型特赦漏洞
- 4.4 工业界选型指南
- 借用生命周期的微观生死 (Reborrowing)
- 5.1 痛点引入:可变借用的独占性灾难
- 5.2 心智模型:唯一的特权车钥匙与临时分包
- 5.3 底层机制与借用检查器的微观工作链条
- 5.4 工业级代码演示:探索可变引用的生死边界
- 坐标与索引的工业设计哲学
- 6.1 痛点引入:数据解构的职责混乱
- 6.2 心智模型:视口的专属翻译官
- 6.3 物理内存布局与 Index 语法糖
- 6.4 工业级代码演示:零成本网格索引器
- Map 映射操作的万物生化
- 7.1 痛点引入:命令式循环与临时状态污染
- 7.2 心智模型:无水的流式管道线
- 7.3 物理底牌与寄存器级内联优化
- 7.4 工业级代码演示:从数据提取到高精度映射
- 🎯 结语:Rust 极简思维的终极回归
claude使用 实用的 Claude Code 使用指南。
day1 5.17 完成了rustlings的50%.
elisp 杂记 在org中插入一个代码块比起markdown要麻烦不少:
emacs备忘 (无描述)
- kill buffer: C-x k
- S-tab 对整个文件进行缩进
- Tab 对特定标题下的内容进行展开/折叠
- C-\<RET> 自动创建和上面相同的标题
- M-左/右 对标题的缩进进行调整
- M-上/下 对标题所在行的位置进行调整
- 用三组括号标记链接/图片
- 表格 行末按Tab
- 任务状态切换 C-c C-t
- TODOtask1
- TODOtask2
- 查看整个文件中的todo事项
- 为todo事项添加子任务
- TODOsome hige task [0/3] [0%] (用C-c C-c来刷新任务进度)
- C-c [将文件加入agenda列表中
- C-c ]将当前文件从agenda列表中移除
- Mx org-agenda
- 代码块
- C-c d/s 为任务设定开始和截止日期
- TODOsometask
- agenda来查看任务时间表
- C-c C-e h将org导出为html
- C-S-p
- open file
- close edit :关闭当前文件
- shortcuts
- new untitled file 创建新文件
- new window
- open Folder :打开文件夹
- open recent
- add folder to workspace
- save workspace as
- prefer setting (ui/json) 设置
- 选中范围内查找替换
- eval-expression M-: 对表达式进行求值
- eval-buffer
- variable
fd (find) 在当前目录下的所有文件中寻找某字符串:\{\}表示fd找到的每个文件/路径, 将其传给-exec的子命令
- 忽略错误继续执行
- 退出 exit n
- 判断文件是否存在
- 设置/取消代理
- clone 子模块
- 指定需要克隆的branch
- 查看目录下的大文件
- debtap
- dpkg
- 重启ssh服务
- 查看ssh服务是否启动
- 定义变量
- 伪目标 .PHONY
- 为整个项目添加宏定义
- 为目标链接上库
- 通配符
- 函数调用
- 当前目录下某一类型的所有文件形成的列表
- 将列表中的所有匹配项替换为指定形式
- 为可执行文件设置环境变量
- 为可执行程序传参
- 显示某文件源代码
- 添加断点
- 查看断点
- 禁用断点
- 重新启用断点
- 删除断点
- 保存断点到文件
- 单步跳过 next
- 继续执行, 直至遇到断点
- 运行到某处,忽略期间的断点
- 进入到函数内部
- 从函数中跳出并暂停
- 强制从函数中返回特定值
- 跳转到指定位置继续执行
- 显示当前所有的局部变量
- 变量/表达式相关
- 打印变量/表达式
- 自动显示变量值
- 取消对变量的自动显示
- 显示变量/表达式类型
- 修改变量的值
- 监视某变量的值
- 栈相关
- 显示堆栈信息: bt
- 切换栈帧
- 调试已经运行的程序
- 检查点
- 在当前位置添加checkpoint
- 查看所有checkpoints
- 删除指定checkpoint
- 线程
- 显示所有线程
- 切换到指定线程
- 以指定格式显示某地址处的内容
- 反向运行
- 无法使用, 报错
- 配置纯C项目
- 配置C++项目
- 组成
- 功能
- 接口
- eg: pids控制器
- 删除cgroup
- 控制器概览
- cpu
- cpuset: 控制cpu和内存亲和度
git (无描述)
learning 核心哲学:学习不是被动的信息消费,而是一场主动的知识构建工程。本流程旨在将您从“观众”转变为“建筑师”。
- 精通任何技术视频教程的终极 S.O.P. (标准作业流程)
- 彻底改变学习习惯的五句“心智箴言”
- 1. 当你因为计划不够完美、工具不够好、时机不合适而迟迟不敢开始时,对自己说:
- 2. 当你因为一个“工房项目”做得不够好、不够酷,而感到羞愧、不想示人时,对自己说:
- 3. 当你卡在一个Bug上数小时、肌肉紧绷、头疼欲裂、开始怀疑自己是不是“不适合编程”时,对自己说:
- 4. 当你看到别人快速“刷完”一门课程,而自己进度缓慢,开始羡慕和焦虑时,对自己说:
- 5. 当你感觉好像理解了一个概念,但不确定是否真的懂了时,对自己说:
- 第一部分:学习操作总流程
- 阶段〇:战略准备 (课程或大章节开始前)
- 阶段一:学习执行 (每个专注时段,推荐以 25+5 的番茄钟为单位)
- 阶段二:课后固化 (学习时段结束后立即进行,至关重要)
- 阶段三:长期内化 (每日/每周坚持)
- 第二部分:笔记记录工作流
- 第一步:判断知识类型
- A. “工匠工具箱”工作流 (记录工具用法)
- B. “建筑师蓝图”工作流 (记录算法/数据结构)
- C. “四角色解构”工作流 (记录抽象思想)
- 通用:做作业/项目时的“侦探日志”
- 费曼学习法
- 第一步:放下“必须用比喻”的执念(核心心态转变)
- 第二步:启动“纯逻辑”降维打击(替代操作流)
- A. 从“问题”出发,讲述一个“故事” (Problem-First Narrative)
- B. 用“流程图”的方式讲话 (Step-by-Step Blueprint)
- C. 用一个“具体例子”贯穿始终 (Concrete Example Walkthrough)
- 第三步:如何“刻意练习”你的类比能力(长期策略)
- 何时开始费曼学习
- 第一部分:何时开始?—— 最佳时机
- 第二部分:如何应用于“操作性知识”?—— 讲解“工作流”而非“定义”
- 1. 讲解一个“黑箱”的内部工作流 (Explaining a "Black Box" Workflow)
- 2. 讲解一个“决策点”的权衡取舍 (Explaining a "Decision Point")
- 3. 讲解一个“标准操作程序” (Explaining a Standard Operating Procedure, S.O.P.)
- 第三部分:费曼学习法终极S.O.P. (一步步照做)
- 第一步:锁定目标与准备 (Target & Prepare)
- 第二步:尝试讲解 (Attempt to Teach)
- 第三步:识别“卡壳点” (Identify Sticking Points)
- 第四步:回溯研究 (Go Back & Research)
- 第五步:简化与重构 (Simplify & Refactor)
- “代码复刻”的正确姿势:三遍阅读与实践法
- 第一遍:侦察兵模式 —— “只读不写,建立地图”
- 第二遍:学徒模式 —— “预测-执行-注释”
- 第三遍:工匠模式 —— “闭卷重建与自由创作”
- 总结
manateelazycat 2018 年12 月 11 日 07:10 #16 学习Emacs有几条曲线:
(无章节)
x86-64 运行结果为1
(无章节)
不用#define 修饰返回类型 能修饰尽量修饰,除非是涉及返回引用/指针 (这种多出现于非const版本成员函数中)
为函数添加别名 在org中插入一个代码块比起markdown要麻烦不少:
(无章节)
从“破防”到“顿悟”的 Rust 类型驱动设计思维全纪录 导读:在学习 Rust 的过程中,几乎每个从面向对象语言迁移过来的开发者都会经历一次关于“封装”的价值观崩塌。本文记录了一次由浅入深的硬核思维对线,揭示了 Rust 如何通过“公开类型签名”重新定义封装的边界,并展示了如何不看内部实现,仅凭签名就能秒杀内存生命周期的顶级超能力。
内存管理、mmap、brk/sbrk、文件映射、软渲染与实践项目 把整段对话中涉及的概念、问答、纠偏、例子和最终实践项目,整理成一份可离线阅读的单文件说明书。
- 目录
- 1. GDI 对象、DeleteObject、DC 的生命周期
- 2. Windows 虚拟内存:VirtualAlloc、HeapAlloc、MEM_RESERVE、MEM_COMMIT
- 3. Linux 内存:brk/sbrk、mmap、malloc 的关系
- 4. 文件映射 mmap:原型、偏移、长度、与 read 的差别
- 5. 从 CPU 视角理解 read / mmap / DMA / page fault / zero-copy
- read 的路径
- mmap 的路径
- 6. softbuffer 是什么,它在 Linux 上如何工作
- 7. Handmade Hero 风格是否还能在 Linux 上实现
- 8. Arch Linux 解压 rar
- 9. 重要结论:碎片、层级、边界与误区
- 9.1 碎片不是 bug,而是动态分配的自然代价
- 9.2 brk/sbrk 像 stack,但不是 stack
- 9.3 mmap 是独立 mapping,不是“自动免碎片”
- 9.4 不能把“物理页是否存在”与“逻辑上是否属于你”混为一谈
- 10. 最终实践项目:软件渲染图片查看器
- 10.1 项目总目标
- 10.2 总体技术栈
- 10.3 项目结构
- 10.4 阶段 1:窗口 + framebuffer
- 10.5 阶段 2:软件绘图 API
- 10.6 阶段 3:BMP 解析器
- 10.7 阶段 4:mmap 文件读取
- 10.8 阶段 5:arena allocator
- 10.9 阶段 6:摄像机和平移/缩放
- 10.10 阶段 7:性能分析
- 10.11 阶段 8:扩展为小型 2D 软件渲染器
- 10.12 为什么这个项目能“巩固整个会话”
- 11. 关键术语速查
基本的 cmake 命令 cmake -B build -D CMAKE_CXX_COMPILER=clang++
基础算法 代码
字体包名中的附加术语: 更纱黑体(Sarasa Gothic)全字体包数量惊人。由于对字体术语研究不多,看来看去还是一头雾水不知道下载哪一个。 搜来搜去,看了个半懂,现在罗列如下:
定义C++迭代器 所有的STL容器都定义了: - 该容器的迭代器类型,如:iterator、const_iterator - 该容器的begin() end() 方法
定义C++迭代器 所有的STL容器都定义了:
数据结构 //#+startup: content
文本文件显示异常( 中文utf-8编码 ) emacs 打开包含中文的文本文件后中文显示为8进制 但在vim等编辑器中却显示正常
(无章节)
特权级架构 广义上, M 和 S 都属于"特权态".
白斩鸡 秘方重点是‘3落3起,细火煮12分钟,焗20分钟,浸冰水15分钟’。
(无章节)
目录 (无描述)
简介 desktop-save-mode
计划 好的,收到最终指令。
- 终极蓝图V13.0:“学习之道”实战计划
- 阶段一:计算的基石 —— 机器、语言与抽象 (第1 - 9个月)
- 阶段二:现代Web“工具箱”的构建 (第10 - 18个月)
- 阶段三:Rust与后端“铸造” (第19 - 27个月)
- 阶段四:跨平台与价值实现 (第28 - 30个月)
- inbox
- 清华 rust 课
- C即时通讯 in Rust
- java DataBase书 in rust
- rust写预定系统
- sylar服务器 in Rust
- 陈硕 muduo in Rust
- rust lecture
- 整理 the rust book 的 todo list
- Self Referential Structs in Rust@rust
- Build your own blockon()@rust
- Build your own executor@rust
- Green Threads Explained in 200 lines of rust@rust
- Futures Explained in 200 Lines of Rust@rust
- rust数据结构@rust
- 学习 gtd 书
- TODO 整理多线程代码@rust
- 抄一遍到笔记上.
- TODO [#C] 学习linux basic
- TODO [#C] 看emacs region这篇文
- TODO [#B] 整理 compiler 计划
- TODO [#C] 看cpp atomic videos
- DOING [#A] 完成Eoc课程@compiler
- DONE L1
- DONE L2
- DONE L3
- DONE L4
- DONE L5
- DONE L6
- DONE L7
- TODO L8
- TODO L9
- TODO L10
- TODO L11
- TODO L12
- TODO L13
- TODO L14
- TODO L15
- TODO L16
- TODO L17
- TODO L18
- TODO L19
- TODO L20
- TODO L21
- TODO L22
- TODO L23
- TODO L24
- TODO L25
- TODO L26
- TODO L27
- TODO L28
- TODO L29
- DOING [#A] Unity Pokemon
- p1-p3
- p4-p6
- p7-p9
- p10-p12
- p13-p15
- p16-p18
- p19-p21
- p22-p24
- p25-27
- p28-30
- p31-33
- DOING [#A] rust语言圣经@rust
- DONE 多线程
- TODO 全局变量
- 错误处理
- unsafe
- Macro
- async/await
- tokio
- 难点攻关
- 自动化测试
- cargo
- 实现链表
- 征服编译错误
- DOING [#A] 分析cranelift源码@rust@compiler
- DOING [#A]印度compiler课程@compiler
- L18 machine independent opts
- L19 basic block, cfg
- L20 local optimizition
- L21 ssa
- L22 dataflow examples
- L23 liveness
- L24 available
- L25 llvm101
- L26 runtime
- L27 code gen
- L29 local reg alloc
- L30 global reg alloc
- DOING [#B] 抄个sfml rpg
- DONE sfml rpg 11–13节
- DONE sfml rpg 14–16节
- DONE sfml rpg 17–19节
- TODO sfml rpg 20–22节
- TODO sfml rpg 23–25节
- TODO sfml rpg 26–28节
- TODO sfml rpg 29–31节
- TODO sfml rpg 32–34节
- TODO sfml rpg 35–37节
- TODO CSEP 501 (EAC)@compiler
- TODO [#A] 北大编译课@compiler
- [#A] Rust 秘典(死灵书)@rust
- [#A] 学习EAC书的内容@compiler
- [#B] 阅读async book@rust
- 韩国编译课程@rust@compiler
- TODO DC 888@compiler
- TODO CSE 231 advanced compiler@compiler@cpp
- TODO [#C] ece459@rust@system
- TODO [#B] cs110L@rust@system
- [#C] 完成过程宏的几个实验@rust
- [#B] 学习elisp@emacs
- compilerai课程@compiler
- [#C]Vulkan Game Engine Series
- [#C] mydocker@system
- [#C] 每天看一小节陈正康单词课
- Python Cookbook
- 看完mini perl
- 编译器 eoc
- react + web 开发
- standford 网络
- cmu db
- OS mit lab /thu os in rust
- 南京大学 & csapp lab
- youtube 静态分析 cpp lab
- llvm@compiler
- https://vmm.dev/en/rust/@rust
- spinlock
- data structures
- build a os@system
- emacs文章@emacs
- org mode gtd@emacs
- learn C++@cpp
- 读懂 Rust 的Arc@rust
- A Guide to Porting C/C++ to Rust@rust@cpp
- rust cookbook@rust
- cs110L lab@rust@system
- opengl modern
- C programming + basic makefile
- React源码
- 职业编曲课
- DONE 配置org的番茄钟在界面上显示时间
- DONE [#B] 看rust atomic video
- DONE [#C] Emacs Lisp: Get User Input