From 36e5da24339a67d7cdeffc4bbe47114253615b5e Mon Sep 17 00:00:00 2001 From: Slpy Lert Date: Mon, 30 Sep 2019 00:45:13 +0700 Subject: [PATCH 1/3] This should mean "There is no more left.". --- 1-js/04-object-basics/02-garbage-collection/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/04-object-basics/02-garbage-collection/article.md b/1-js/04-object-basics/02-garbage-collection/article.md index 620cbc21a2..77d7d19a0d 100644 --- a/1-js/04-object-basics/02-garbage-collection/article.md +++ b/1-js/04-object-basics/02-garbage-collection/article.md @@ -156,7 +156,7 @@ The following "garbage collection" steps are regularly performed: - The garbage collector takes roots and "marks" (remembers) them. - Then it visits and "marks" all references from them. - Then it visits marked objects and marks *their* references. All visited objects are remembered, so as not to visit the same object twice in the future. -- ...And so on until there are unvisited references (reachable from the roots). +- ...And so on until there isn't any unvisited reference (reachable from the roots). - All objects except marked ones are removed. For instance, let our object structure look like this: From a474141a9fdc39dc5b26635992393986794b5a69 Mon Sep 17 00:00:00 2001 From: Slpy Lert Date: Mon, 30 Sep 2019 01:00:54 +0700 Subject: [PATCH 2/3] Add a prepositional phrase to describe the context explicitly. --- 1-js/06-advanced-functions/01-recursion/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/06-advanced-functions/01-recursion/article.md b/1-js/06-advanced-functions/01-recursion/article.md index 9d2176536e..2c657f9d81 100644 --- a/1-js/06-advanced-functions/01-recursion/article.md +++ b/1-js/06-advanced-functions/01-recursion/article.md @@ -185,7 +185,7 @@ Here's the context stack when we entered the subcall `pow(2, 2)`: The new current execution context is on top (and bold), and previous remembered contexts are below. -When we finish the subcall -- it is easy to resume the previous context, because it keeps both variables and the exact place of the code where it stopped. Here in the picture we use the word "line", but of course it's more precise. +When we finish the subcall -- it is easy to resume the previous context, because it keeps both variables and the exact place of the code where it stopped. Here in the picture we use the word "line", but of course it's more precise in the real stacks. ### pow(2, 1) From 3fd89708f5aad4b0faacb6f80a7705ad11608d33 Mon Sep 17 00:00:00 2001 From: Slpy Lert Date: Mon, 30 Sep 2019 01:07:25 +0700 Subject: [PATCH 3/3] We don't have it yet. We just want to have it. --- 1-js/05-data-types/10-destructuring-assignment/article.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/1-js/05-data-types/10-destructuring-assignment/article.md b/1-js/05-data-types/10-destructuring-assignment/article.md index c22888479a..d069ccf031 100644 --- a/1-js/05-data-types/10-destructuring-assignment/article.md +++ b/1-js/05-data-types/10-destructuring-assignment/article.md @@ -356,7 +356,7 @@ The problem is that JavaScript treats `{...}` in the main code flow (not inside } ``` -So here JavaScript assumes that we have a code block, that's why there's an error. We have destructuring instead. +So here JavaScript assumes that we have a code block, that's why there's an error. We want destructuring instead. To show JavaScript that it's not a code block, we can wrap the expression in parentheses `(...)`: