Update README.
This commit is contained in:
parent
7a61760344
commit
ecbdb92fe9
|
@ -1,4 +1,4 @@
|
||||||
# README
|
# type-unlambda
|
||||||
|
|
||||||
[![MIT License][]](LICENSE)
|
[![MIT License][]](LICENSE)
|
||||||
|
|
||||||
|
@ -37,8 +37,9 @@ type-unlambda:
|
||||||
To write loops in TypeScript's type system, we have to use recursions,
|
To write loops in TypeScript's type system, we have to use recursions,
|
||||||
like we do in other purely functional programming languages. Meanwhile, we use
|
like we do in other purely functional programming languages. Meanwhile, we use
|
||||||
[CPS][] to implement continuations, which also introduces heavy recursion.
|
[CPS][] to implement continuations, which also introduces heavy recursion.
|
||||||
However, TypeScript's type system is not meant for general purpose programming,
|
|
||||||
and recursion has its limits.
|
However, TypeScript's type system is not meant for general purpose programming.
|
||||||
|
There is no [TCE][Tail Call], and recursion has its limits.
|
||||||
|
|
||||||
In [src/compiler/checker.ts][TSC checker], there is a hard-coded limit for
|
In [src/compiler/checker.ts][TSC checker], there is a hard-coded limit for
|
||||||
type instantiation:
|
type instantiation:
|
||||||
|
@ -64,6 +65,7 @@ in `node_modules`, until the error no longer applies. Changing
|
||||||
[MIT License]: https://img.shields.io/badge/license-MIT-blue.svg
|
[MIT License]: https://img.shields.io/badge/license-MIT-blue.svg
|
||||||
[Unlambda]: http://www.madore.org/~david/programs/unlambda/
|
[Unlambda]: http://www.madore.org/~david/programs/unlambda/
|
||||||
[CPS]: https://en.wikipedia.org/wiki/Continuation-passing_style/
|
[CPS]: https://en.wikipedia.org/wiki/Continuation-passing_style/
|
||||||
|
[Tail Call]: https://en.wikipedia.org/wiki/Tail_call/
|
||||||
[TSC checker]:
|
[TSC checker]:
|
||||||
https://github.com/microsoft/TypeScript/blob/v4.1.2/src/compiler/checker.ts
|
https://github.com/microsoft/TypeScript/blob/v4.1.2/src/compiler/checker.ts
|
||||||
[PR 29602]: https://github.com/microsoft/TypeScript/pull/29602
|
[PR 29602]: https://github.com/microsoft/TypeScript/pull/29602
|
||||||
|
|
Loading…
Reference in New Issue