Skip to content

Commit 9dd3d80

Browse files
committed
Grammar
PullRequest: truffleruby/528
2 parents ee6dbbf + 034dc70 commit 9dd3d80

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

doc/user/compatibility.md

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ Our policy is to match the behaviour of MRI, except where we do not know how to
77
do so with good performance for typical Ruby programs. Some features work but
88
will have very low performance whenever they are used and we advise against
99
using them on TruffleRuby if you can. Some features are missing entirely and may
10-
never be implemented. In a few limited cases we are deliberately incompatible
10+
never be implemented. In a few limited cases, we are deliberately incompatible
1111
with MRI in order to provide a greater capability.
1212

1313
In general, we are not looking to debate whether Ruby features are good, bad, or
1414
if we could design the language better. If we can support a feature, we will do.
1515

16-
In the future we aim to provide compatibility with extra functionality provided
16+
In the future, we aim to provide compatibility with extra functionality provided
1717
by JRuby, but at the moment we do not.
1818

1919
## Identification
@@ -27,11 +27,11 @@ TruffleReport defines these constants for identification:
2727
- `RUBY_RELEASE_DATE` is the Git commit date
2828
- `RUBY_ENGINE_VERSION` is the GraalVM version, or `0.0-` and the Git commit hash if your build is not part of a GraalVM release.
2929

30-
Additionally, TruffleRuby defines
30+
Additionally, TruffleRuby defines:
3131

3232
- `TruffleRuby.revision` which is the Git commit hash
3333

34-
In the C API we define a preprocessor macro `TRUFFLERUBY`.
34+
In the C API, we define a preprocessor macro `TRUFFLERUBY`.
3535

3636
## Features entirely missing
3737

@@ -43,15 +43,15 @@ as their semantics fundamentally do not match the technology that we are using.
4343
#### Fork
4444

4545
You cannot `fork` the TruffleRuby interpreter. The feature is unlikely to ever
46-
be supported when running on the JVM, but could be supported in the future on
46+
be supported when running on the JVM but could be supported in the future on
4747
the SVM. The correct and portable way to test if `fork` is available is:
4848
```ruby
4949
Process.respond_to?(:fork)
5050
```
5151

5252
#### Standard libraries
5353

54-
Quite a few of the less commonly used standard libraries are currently not
54+
Quite a few of the less commonly used standard libraries are currently not
5555
supported, such as `fiddle`, `sdbm`, `gdbm`, `tk`. It's quite hard to get an
5656
understanding of all the standard libraries that should be available, so it's
5757
hard to give a definitive list of those that are missing.
@@ -98,7 +98,7 @@ development tools.
9898

9999
`-X` is an undocumented synonym for `-C` and we (and other alternative
100100
implementations of Ruby) have repurposed it for extended options. We warn if
101-
your `-X` options looks like it was actually intended to be as in MRI.
101+
your `-X` options look like they are actually intended to be as in MRI.
102102

103103
Programs passed in `-e` arguments with magic-comments must have an encoding that
104104
is UTF-8 or a subset of UTF-8, as the JVM has already decoded arguments by the
@@ -124,7 +124,7 @@ If you use standard IO streams provided by the Polyglot engine, via the
124124
be redirected to these streams. That means that other IO operations on these
125125
file descriptors, such as `isatty` may not be relevant for where these streams
126126
actually end up, and operations like `dup` may lose the connection to the
127-
polyglot stream. For example if you `$stdout.reopen`, as some logging frameworks
127+
polyglot stream. For example, if you `$stdout.reopen`, as some logging frameworks
128128
do, you will get the native standard-out, not the polyglot out.
129129

130130
Also, IO buffer drains, writes on IO objects with `sync` set, and
@@ -168,7 +168,7 @@ disabled where we dynamically detect that they probably won't be used. See the
168168
#### Storing Ruby objects in native structures and arrays
169169

170170
You cannot store a Ruby object in a structure or array that has been natively
171-
allocated, such as on the stack, or in a heap allocated structure or array.
171+
allocated, such as on the stack, or in a heap-allocated structure or array.
172172

173173
Simple local variables of type `VALUE`, and locals arrays that are defined such
174174
as `VALUE array[n]` are an exception and are supported, provided their address
@@ -207,7 +207,7 @@ cannot be accessed with `va_start` etc. You can use
207207

208208
Pointers to local variables that have the type `VALUE` and hold Ruby objects can
209209
only be passed as function arguments if the function is inlined. LLVM will never
210-
inline variadic functions, so pointers to local variables that hold Ruby objects
210+
inline variadic functions so pointers to local variables that hold Ruby objects
211211
cannot be passed as variadic arguments.
212212

213213
`rb_scan_args` is an exception and is supported.

0 commit comments

Comments
 (0)