Tighten up some of the grammar in the java doc for jsinterop
annotations.

Change-Id: I49ef4fb9c0751f9d28d966505f81077995b1b12f
Review-Link: https://gwt-review.googlesource.com/#/c/14500/
diff --git a/user/src/jsinterop/annotations/JsConstructor.java b/user/src/jsinterop/annotations/JsConstructor.java
index 321dc30..437d06d 100644
--- a/user/src/jsinterop/annotations/JsConstructor.java
+++ b/user/src/jsinterop/annotations/JsConstructor.java
@@ -22,11 +22,11 @@
 import java.lang.annotation.Target;
 
 /**
- * JsConstructor marks a constructor so that it will be the constructor function for the JavaScript
+ * JsConstructor marks a constructor that is the constructor function for the JavaScript
  * type.
  * <p>
- * Note that, there could be only one JsConstructor in a type and all other constructors should be
- * delegating to it.
+ * Note that there can only be one JsConstructor in a type; all other constructors must delegate
+ * to it.
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.CONSTRUCTOR)
diff --git a/user/src/jsinterop/annotations/JsFunction.java b/user/src/jsinterop/annotations/JsFunction.java
index 4ed484a..4a9c80d 100644
--- a/user/src/jsinterop/annotations/JsFunction.java
+++ b/user/src/jsinterop/annotations/JsFunction.java
@@ -30,14 +30,14 @@
  * However there are some additional limitations that are imposed to make this practical and
  * efficient:
  * <li>A class may not implement more than one @JsFunction type. This restriction allows the
- * compiler to construct a one-to-one mapping to the JavaScript function generated and the SAM to be
- * invoked in Java and to preserve referential equality.
+ * compiler to construct a one-to-one mapping between the Java class and the generated JavaScript
+ * function and preserve referential equality.
  * <li>A JsFunction interface cannot extend any other interfaces.
  * <li>A JsFunction interface cannot have defender methods.
  * <li>A class that implements a @JsFunction type (directly or indirectly) cannot be a @JsType.
  * <p>
- * As a best practice, we recommend marking @JsFunction interfaces also with @FunctionalInterface to
- * get improved checking in IDEs.
+ * As a best practice, we also recommend marking @JsFunction interfaces with @FunctionalInterface
+ * to get improved checking in IDEs.
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.TYPE)
diff --git a/user/src/jsinterop/annotations/JsMethod.java b/user/src/jsinterop/annotations/JsMethod.java
index 3a6a6f4..dee9892 100644
--- a/user/src/jsinterop/annotations/JsMethod.java
+++ b/user/src/jsinterop/annotations/JsMethod.java
@@ -22,11 +22,11 @@
 import java.lang.annotation.Target;
 
 /**
- * JsMethod marks a method in a type as a method that will be directly translated into a JavaScript
- * method without any obfuscation to its name.
+ * JsMethod marks a method that will be directly translated into a JavaScript method preserving
+ * its name.
  * <p>
- * Note that, while instance members are slotted in the prototype, class members will be defined
- * under the constructor function of the type.
+ * Note: In JavaScript, instance members are defined on the prototype and class members are defined
+ * on the constructor function of the type.
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target(ElementType.METHOD)
diff --git a/user/src/jsinterop/annotations/JsProperty.java b/user/src/jsinterop/annotations/JsProperty.java
index 3d67e0c..7d03e03 100644
--- a/user/src/jsinterop/annotations/JsProperty.java
+++ b/user/src/jsinterop/annotations/JsProperty.java
@@ -22,8 +22,8 @@
 import java.lang.annotation.Target;
 
 /**
- * JsProperty marks a field in a type as a method that will be directly translated into a JavaScript
- * property without any obfuscation to its name.
+ * JsProperty marks a field or method that is translated directly into a JavaScript property
+ * preserving its name.
  * <p>
  * If it is applied to a method, it will be treated as a property accessor. As a result, instead of
  * translating method calls to JsProperty methods as method calls in JS, they will be translated as
@@ -38,8 +38,8 @@
  * <li> {@code @JsProperty setX(int y)} translates as <tt>this.x=y</tt>
  * </ul>
  * <p>
- * Note that, while non-static member are slotted in the prototype, static members will be defined
- * under the constructor function of the type.
+ * Note: In JavaScript, instance members are defined on the prototype and class members are defined
+ * on the constructor function of the type.
  */
 @Retention(RetentionPolicy.RUNTIME)
 @Target({ElementType.METHOD, ElementType.FIELD})