Skip to content

Commit

Permalink
fix link name
Browse files Browse the repository at this point in the history
  • Loading branch information
alvin huang committed Aug 22, 2024
1 parent 62e68d7 commit e8a2cf9
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 6 deletions.
4 changes: 2 additions & 2 deletions docs/implement-detail.md
Original file line number Diff line number Diff line change
Expand Up @@ -574,8 +574,8 @@ type test_add_2 = Add<999, 1000>; // Type instantiation is excessively deep and
![interpreter-3-steps](imgs/interpreter-3-steps.png)

另外为了对比,也为了照顾想我一样非科班出身的人,我会讲两个版本的实现(个人感觉直接看一门熟悉的语言来实现解释器会更好接受一点):
* 用 ts(你可以理解为用 js)实现的,在 [ts-Toc](https://github.com/huanguolin/toc/tree/main/ts-toc) 下。
* 用 ts 类型系统实现的,在 [type-Toc](https://github.com/huanguolin/toc/tree/main/type-toc) 下。
* 用 ts(你可以理解为用 js)实现的,在 [ts-toc](https://github.com/huanguolin/toc/tree/main/ts-toc) 下。
* 用 ts 类型系统实现的,在 [type-toc](https://github.com/huanguolin/toc/tree/main/type-toc) 下。

我在讲一个特性时,会先讲 ts 版,然后说 type 版。在实现 ts 版本时,不会考虑要“翻译”为 type 版,而放弃对它来说最自然的方法。这样做的目的,一是为了好理解(特别是非科班的同学);二是为了对比,能看到在语言“贫瘠”的情况下,我们如何“绕”。

Expand Down
4 changes: 2 additions & 2 deletions docs/implement-detail_en.md
Original file line number Diff line number Diff line change
Expand Up @@ -602,8 +602,8 @@ Our interpreter is mainly divided into three steps: lexical analysis, syntax ana

Additionally, for comparison and to accommodate those like me who are not from a formal computer science background, I will discuss two versions of the implementation (I personally feel that looking at an implementation in a familiar language is easier to accept):

* Implemented in TypeScript (you can think of it as using JavaScript), in [ts-Toc](https://github.com/huanguolin/toc/tree/main/ts-toc) the following.
* Implemented using TypeScript's type system, in [type-Toc](https://github.com/huanguolin/toc/tree/main/type-toc) the following.
* Implemented in TypeScript (you can think of it as using JavaScript), in [ts-toc](https://github.com/huanguolin/toc/tree/main/ts-toc) the following.
* Implemented using TypeScript's type system, in [type-toc](https://github.com/huanguolin/toc/tree/main/type-toc) the following.

when I discuss a feature, I will first explain the TypeScript version, and then the type version. When implementing the TypeScript version, I will not consider translating it into the type version, but will abandon the most natural method for it. The purpose of this approach is primarily for better understanding (especially for non-computer science students); The second is for comparison, to see how we 'navigate' in a 'poor' language context.

Expand Down
4 changes: 2 additions & 2 deletions docs/implement-detail_origin.md
Original file line number Diff line number Diff line change
Expand Up @@ -550,8 +550,8 @@ type test_add_2 = Add<999, 1000>; // Type instantiation is excessively deep and
![interpreter-3-steps](imgs/interpreter-3-steps.png)

另外为了对比,也为了照顾想我一样非科班出身的人,我会讲两个版本的实现(个人感觉直接看一门熟悉的语言来实现解释器会更好接受一点):
* 用 ts(你可以理解为用 js)实现的,在 [ts-Toc](https://github.com/huanguolin/toc/tree/main/ts-toc) 下。
* 用 ts 类型系统实现的,在 [type-Toc](https://github.com/huanguolin/toc/tree/main/type-toc) 下。
* 用 ts(你可以理解为用 js)实现的,在 [ts-toc](https://github.com/huanguolin/toc/tree/main/ts-toc) 下。
* 用 ts 类型系统实现的,在 [type-toc](https://github.com/huanguolin/toc/tree/main/type-toc) 下。

我在讲一个特性时,会先讲 ts 版,然后说 type 版。在实现 ts 版本时,不会考虑要“翻译”为 type 版,而放弃对它来说最自然的方法。这样做的目的,一是为了好理解(特别是非科班的同学);二是为了对比,能看到在语言“贫瘠”的情况下,我们如何“绕”。

Expand Down

0 comments on commit e8a2cf9

Please sign in to comment.