Skip to content

Commit fcc55a6

Browse files
committed
typos
1 parent 7eb55a7 commit fcc55a6

21 files changed

+114
-112
lines changed

blog/2022-10-09-welcome/index.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,16 @@ I expected **BehaviorTree.CPP** to gain so much adoption in the robotic communit
1010
Even if that is generally meant as a rhetorical question that expects and humble answer,
1111
I usually answer "yes".
1212

13-
There are few reasons why I was optimistic about the fact that this
13+
There are a few reasons why I was optimistic about the fact that this
1414
library might be well received:
1515

16-
- It helps implementing a crucial component of a robotic software system,
16+
- It helps implement a crucial component of a robotic software system,
1717
Task Planning; this part is often neglected until the end of the project.
1818

19-
- I spent an unusual amount of time (may be 30% of my whole development time)
19+
- I spent an unusual amount of time (maybe 30% of my whole development time)
2020
writing documentation.
2121

22-
- I wanted to build an inclusive project, where people needs and opinions are heard.
22+
- I wanted to build an inclusive project, where people's needs and opinions are heard.
2323
I am the "benevolent dictator" of the project, but I **do** listen and I **do** learn from others!
2424

2525
## Adoption in recent years,
@@ -34,8 +34,8 @@ This data was obtained from the paper:
3434
[Behavior Trees and State Machines in Robotics Applications](https://arxiv.org/abs/2208.04211)
3535

3636
SMACH is still the strongest contender,
37-
but you can also note as **BT.CPP** and **PyTrees** are gained more
38-
an more popularity in our community.
37+
but you can also note as **BT.CPP** and **PyTrees**
38+
have gained more and more popularity in our community.
3939

4040
If you want to learn more about the
4141
methodology used to obtain these numbers,
@@ -54,12 +54,12 @@ My personal version of it is:
5454
5555
In both cases, we know that the answer is (or might be) **"yes"**, but hopefully you see what I mean.
5656

57-
Very often, open source is about "scratching your own hitch" and share what you did with others. That is fine!
57+
Very often, open source is about "scratching your own hitch" and sharing what you did with others. That is fine!
5858

5959
But in my case, This project was created **specifically to help others**; the more it is adopted and used, the more
6060
I feel that my initial goal has been achieved.
6161

62-
In my career, I learn that the best way to drive adoption is:
62+
In my career, I have learned that the best way to drive adoption is:
6363

6464
- built something that people need.
6565
- build trust with your users.
@@ -69,11 +69,11 @@ The latter point is particularly important and it is often underestimated.
6969
For me, lowering the entry barrier involved three key steps:
7070

7171
- writing good documentation (this website).
72-
- adding tutorials which give the new users a sense of progression.
73-
- providing a tool that help people learn visually (Groot).
72+
- adding tutorials that give the new users a sense of progression.
73+
- providing a tool that helps people learn visually (Groot).
7474

7575
The documentation of **BT.CPP** is not perfect, but probably a little above the average,
76-
considering the average open source project: this costed a lot of time, but paid off enormously.
76+
considering the average open source project: this cost a lot of time, but paid off enormously.
7777

78-
If you have any suggestion about how to improve this site,
78+
If you have any suggestions about how to improve this site,
7979
[let me know](https://github.com/BehaviorTree/btcpp_website/issues).

docs/tutorial-advanced/asynchronous_nodes.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,12 @@ We achieve reactive behaviors through "concurrency" and asynchronous execution.
3131
In other words, an Action that takes a long time to execute should
3232
return as soon as possible the state RUNNING.
3333

34-
This tells the tree executor that the action was started and need more time to return
34+
This tells the tree executor that the action was started and needs more time to return
3535
the state SUCCESS or FAILURE.
3636
We need to tick that Node again, to know if the state changed or not (polling).
3737

3838
An Asynchronous node may delegate this long execution either to another process
39-
(usning inter-process communication) or another thread.
39+
(using inter-process communication) or another thread.
4040

4141
## Asynchronous vs Synchronous
4242

@@ -63,7 +63,7 @@ the __StatefulAsyncAction__.
6363

6464
using namespace std::chrono;
6565

66-
// Example of Asynchronous node that use StatefulActionNode as base class
66+
// Example of Asynchronous node that uses StatefulActionNode as base class
6767
class SleepNode : public BT::StatefulAsyncAction
6868
{
6969
public:
@@ -128,7 +128,7 @@ This may return SUCCESS immediately if the sleep time is 0 or will return RUNNIN
128128
A **wrong** way to implement the `SleepNode` would be this one:
129129
130130
```c++
131-
// This is the synchronous version of the Node. probably not what we want.
131+
// This is the synchronous version of the Node. Probably not what we want.
132132
class BadSleepNode : public BT::ActionNodeBase
133133
{
134134
public:
@@ -152,7 +152,7 @@ class BadSleepNode : public BT::ActionNodeBase
152152
153153
void halt() override
154154
{
155-
// No one can invoke this method, because I freezed the tree.
155+
// No one can invoke this method, because I froze the tree.
156156
// Even if this method COULD be executed, there is no way I can
157157
// interrupt std::this_thread::sleep_for()
158158
}

docs/tutorial-advanced/pre_post_conditions.md

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ sidebar_position: 2
66

77
Leveraging the power of the scripting language
88
introduced in the [previous tutorial](tutorial-advanced/scripting.md),
9-
BT.CPP 4.x introcude the concept of Pre and Post Conditions,
10-
i.e script that can run either before or after the actual
9+
BT.CPP 4.x introduces the concept of Pre and Post Conditions,
10+
i.e scripts that can run either before or after the actual
1111
__tick()__ of a Node.
1212

13-
Pre and Post condition are supported by __all__ the nodes and
13+
Pre and Post conditions are supported by __all__ the nodes and
1414
don't need any modifications in your C++ code.
1515

1616
:::caution
@@ -20,7 +20,7 @@ reduce the need for custom C++ Nodes in very simple
2020
use cases.
2121

2222
If your scripts become too long, you may want to
23-
reconsider your decision of using them.
23+
reconsider your decision to use them.
2424
:::
2525

2626
## Pre conditions
@@ -30,11 +30,11 @@ reconsider your decision of using them.
3030
| **_skipIf** | Skip the execution of this Node, if the condition is true |
3131
| **_failureIf** | Skip and return FAILURE, if the condition os true |
3232
| **_successIf** | Skip and return SUCCESS, if the condition os true |
33-
| **_while** | Same as _skipIf, but mau also interrupt a RUNNING Node if the condition becomes false. |
33+
| **_while** | Same as _skipIf, but may also interrupt a RUNNING Node if the condition becomes false. |
3434

3535
### Example
3636

37-
In a previous tutorials we saw how to build an if-then-else
37+
In previous tutorials we saw how to build an if-then-else
3838
logic in the tree using a fallback.
3939

4040
The new syntax is much more compact:
@@ -106,16 +106,16 @@ New implementation:
106106

107107
One of the areas where Behavior Trees may struggle, when
108108
compared to State Machines, is in those patterns where
109-
a diferent strategy should be executed based on the
109+
a different strategy should be executed based on the
110110
result of an Action.
111111

112112
Since BTs are limited to SUCCESS and FAILURE, that could
113113
be unintuitive.
114114

115-
A solution is to store the __result / error code__ in the
115+
A solution is storing the __result / error code__ in the
116116
blackboard, but that was cumbersome in version 3.X.
117117

118-
Pre conditions can help us implementing code that is more
118+
Pre conditions can help us implement code that is more
119119
readable, like this one:
120120

121121
![error_codes.svg](images/error_codes.svg)
@@ -124,26 +124,26 @@ In the tree above, we added an Output port __return__ to
124124
__MoveBase__ and we conditionally take the second or third branch
125125
of the Sequence based on the value of `error_code`.
126126

127-
# Design pattern: states and declarrative trees
127+
# Design pattern: states and declarative trees
128128

129129
Even if the promise of Behavior Tree is to free us from
130-
the tiranny of states, but the truth is that sometimes it is
130+
the tyranny of states, but the truth is that sometimes it is
131131
hard to reason about our application without states.
132132

133-
Using states can make our Tree easier. For instance we can
133+
Using states can make our Tree easier. For instance, we can
134134
take a certain branch of the tree only when the robot
135135
(or a subsystem) is in a particular state.
136136

137137
Consider this Node and its pre/post conditions:
138138

139139
![landing.svg](images/landing.svg)
140140

141-
This node will be executed only if state is equal to **DO_LANDING** and, once the value of `altitude` is small
142-
enough, the stated is changed to **LANDED**.
141+
This node will be executed only if the state is equal to **DO_LANDING** and, once the value of `altitude` is small
142+
enough, the state is changed to **LANDED**.
143143

144144
Note as DO_LANDING and LANDED are enums, not strings
145145

146146
:::tip
147-
A surprising side effect of this patterns is that we made our
147+
A surprising side effect of this pattern is that we made our
148148
Node more __declarative__ i.e. it is easier to move this specific Node/Subtree into a different portion of the tree.
149149
:::

docs/tutorial-advanced/scripting.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ sidebar_position: 1
77
Behavior Tree 4.X introduces a simple but powerful new concept:
88
a scripting language with XML.
99

10-
The implemented scriting language has a familiar syntax; it allow the user to quickly
11-
read from / writeto the variables of the blackboard.
10+
The implemented scripting language has a familiar syntax; it allows the user to quickly
11+
read from / write to the variables of the blackboard.
1212

1313
The simpler way to learn how scripting works is using the built-in action __Script__,
14-
that was introcuded first in the [second tutorial](tutorial-basics/tutorial_02_basic_ports.md)
14+
which was introduced in the [second tutorial](tutorial-basics/tutorial_02_basic_ports.md)
1515

16-
## Assignemnt operators, strings and numbers
16+
## Assignment operators, strings and numbers
1717

1818
Example:
1919

@@ -28,9 +28,9 @@ message = 'hello world'
2828
- The third line assigns the string "hello world" to the blackboard entry __message__.
2929

3030
:::tip
31-
The difference beyween the operator __":="__ and __"="__ is that the former
31+
The difference between the operator __":="__ and __"="__ is that the former
3232
may create a new entry in the blackboard, if it doesn't exist, whilst the latter will throw
33-
an exception of the blackboard doesn't contain the entry.
33+
an exception if the blackboard doesn't contain the entry.
3434
:::
3535

3636
You can also use __semicolons__ to add multiple
@@ -40,7 +40,7 @@ commands in a single script.
4040
A:= 42; B:=24
4141
```
4242

43-
### Arithmetic operators and parentesis
43+
### Arithmetic operators and parenthesis
4444

4545
Example:
4646

@@ -53,7 +53,7 @@ param_C := (param_A * 3) + param_B
5353

5454
The resulting values of `param_B` is 10 and `param_C` is 31.
5555

56-
The following operatos are supported:
56+
The following operators are supported:
5757

5858
| Operator | Assign Operator | Description |
5959
|----------|---------|---------|
@@ -62,14 +62,14 @@ The following operatos are supported:
6262
| * | *= | Multiply |
6363
| / | /= | Divide |
6464

65-
Note that the addition operator is the only one that works also with string (used to cancatenate two strings).
65+
Note that the addition operator is the only one that also works with string (used to concatenate two strings).
6666

6767
## Bitwise operator and hexadecimal numbers
6868

69-
This operators work only if the value can be casted to
69+
These operators work only if the value can be cast to
7070
an integer number.
7171

72-
Trying to use them with a string or real number will
72+
Using them with a string or real number will
7373
cause an exception.
7474

7575
Example:
@@ -129,8 +129,8 @@ val_B = (val_A > 1) ? 42 : 24
129129

130130
## C++ example
131131

132-
Demonstration of the scripting langiage, including how to use enums to
133-
represent **integer value**.
132+
Demonstration of the scripting language, including how to use enums to
133+
represent **integer values**.
134134

135135
The XML:
136136

@@ -158,7 +158,7 @@ The C++ code to register the Nodes and the enums:
158158
``` cpp
159159
int main()
160160
{
161-
// Simple tree: a sequence of two asycnhronous actions,
161+
// Simple tree: a sequence of two asynchronous actions,
162162
// but the second will be halted because of the timeout.
163163

164164
BehaviorTreeFactory factory;

docs/tutorial-basics/tutorial_01_first_tree.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ What happens inside these callbacks is up to you.
1212
We will use the expression __"to invoke the callback"__ and __"to tick"__ interchangeably.
1313

1414
In this tutorial series, most of the time our dummy Actions will simply
15-
print some information on console,
15+
print some information on the console,
1616
but keep in mind that real "production" code would probably do something
1717
more complicated.
1818

@@ -51,7 +51,7 @@ As you can see:
5151
- The method __tick()__ is the place where the actual Action takes place.
5252
It must always return a `NodeStatus`, i.e. RUNNING, SUCCESS or FAILURE.
5353
54-
Alternatively, we can use __dependecy injection__ to create a TreeNode given
54+
Alternatively, we can use __dependency injection__ to create a TreeNode given
5555
a function pointer (i.e. "functor").
5656
5757
The only requirement of the functor is to have either one of these signatures:

docs/tutorial-basics/tutorial_02_basic_ports.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Similar to functions, we often want to:
2020
BehaviorTree.CPP provides a basic mechanism of __dataflow__
2121
through __ports__, that is simple to use but also flexible and type safe.
2222

23-
In this tutorial we will create the following tree:
23+
In this tutorial, we will create the following tree:
2424

2525
![Tutorial2](images/tutorial_blackboard.svg)
2626

@@ -36,7 +36,7 @@ can write into an entry.
3636

3737
A valid Input can be either:
3838

39-
- a __static string__ which the Node will read and parse, or
39+
- a __static string__ that the Node will read and parse, or
4040
- a "pointer" to an entry of the Blackboard, identified by a __key__.
4141

4242
Let's suppose that we want to create an ActionNode called `SaySomething`,
@@ -51,7 +51,7 @@ Consider these alternative XML syntaxes:
5151
<SaySomething name="second" message="{greetings}" />
5252
```
5353

54-
- In the __first__ node, the port receive the string "hello world";
54+
- In the __first__ node, the port receives the string "hello world";
5555
- The __second__ node, instead, is asked to find the value in the blackboard,
5656
using the entry "greetings".
5757

@@ -124,7 +124,7 @@ periodically.
124124
## Output ports
125125

126126
An input port pointing to the entry of the blackboard will be valid only
127-
if another node have already written "something" inside that same entry.
127+
if another node has already written "something" inside that same entry.
128128

129129
`ThinkWhatToSay` is an example of Node that uses an __output port__ to write a
130130
string into an entry.
@@ -164,7 +164,7 @@ about the [new scripting language inside BT.CPP](tutorial-advanced/scripting.md)
164164

165165
:::tip
166166
If you are migrating from BT.CPP 3.X, __Script__ is a drop-in replacement
167-
for __SetBlackboard__, that is now discouraged.
167+
for __SetBlackboard__, which is now discouraged.
168168
:::
169169

170170
## A complete example

docs/tutorial-basics/tutorial_03_generic_ports.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ Next, we will show how to assign generic C++ types to your ports.
1212

1313
## Parsing a string
1414

15-
__BehaviorTree.CPP__ supports automatic conversion of strings into common
15+
__BehaviorTree.CPP__ supports the automatic conversion of strings into common
1616
types, such as `int`, `long`, `double`, `bool`, `NodeStatus`, etc.
17-
User defined types can be supported easily as well.
17+
User-defined types can be supported easily as well.
1818

1919
For instance:
2020

0 commit comments

Comments
 (0)