Author: Qijia Fan
本文是为了帮助习惯使用汉语拼音的读者学习注音符号而写的学习笔记,希望能让读者更好地了解汉字标音系统的发展历史与发音逻辑。
背景
注音符号(Bopomofo)是由清末民初的语言学家设计的一套用于标注汉字读音的符号系统,于 1918 年由当时教育部正式颁布。其英文名称「Bopomofo」取自前四个符号的读音:ㄅ(b)、ㄆ(p)、ㄇ(m)、ㄈ(f)。目前的使用情况大致如下:
在中国大陆,注音符号自 1958 年起逐步由汉语拼音取代,但在字典等工具书中仍有标注。以个人观察而言,大陆部分建国前后出生的长辈仍能辨识并使用注音符号,年轻一代则对此较为陌生。
在台湾地区,注音符号至今仍广泛应用于学校教育与日常生活。
注音符号表与拼读
注音符号表由声母、介母、韵母和声调符号组成,其中介母与韵母在汉语拼音中合称为韵母。接下来我们分别给出注音符号表与汉语拼音的对应关系
These are also some random scribbles for preparing the discussion section. I suddenly realize that we didn't learn the principle of lexing and parsing during undergrad but directy played with implementations.
Lexer
Lexer is a deterministic finite automata with a collection of regular expressions to describe tokens. A lexer takes code files as input and tries character by character to recognize the
Formal Verification
Testing is a kind of inductive reasoning to accumulate evidence in support of a conclusion but not validate the conclusion (the correctness of program) directly. (This "inductive" is different from the rigorous induction proof technique)
Deductive reasoning proceeds from premises and rules about logic and go to a valid conclusion.
Formal verification is the task for proving th
Notes on pattern matching
Patterns that everyone likes.
The let expression is actually doing a pattern matching. Consider the dynamic semantics of let p = e1 in e2. We first evaluate e1 to a value v1. The p can be any pattern, and we match v1 with pattern p. If they doesn't match, there will be a Match_failure, otherwise it matches and generates bindings (emmm perhaps no bindings are produced beca
The properties of OCaml
First-Class Citizens
OCaml is a statically-typed and type-safe programming language.
A statically-typed language detects type errors at compile time; if a type error is detected, the language won’t allow execution of the program.
A type-safe language limits which kinds of operations can be performed on which kinds of data.
Python is type-safe but dynamically typed. That i