diff --git a/misc_docs/syntax/operators_float_addition.mdx b/misc_docs/syntax/operators_float_addition.mdx
new file mode 100644
index 000000000..27072c4d5
--- /dev/null
+++ b/misc_docs/syntax/operators_float_addition.mdx
@@ -0,0 +1,23 @@
+---
+id: "float-addition"
+keywords: ["plus", "add", "addition", "sum", "float"]
+name: "+."
+summary: "This is the `floating point addition` operator."
+category: "operators"
+---
+
+This operator performs *floating point* addition.
+
+
+
+```res
+let result = 1.3 +. 0.5
+```
+
+```js
+var result = 1.3 + 0.5;
+```
+
+
+
+For adding *integers* see the `+` operator.
diff --git a/misc_docs/syntax/operators_float_division.mdx b/misc_docs/syntax/operators_float_division.mdx
new file mode 100644
index 000000000..899e0eac0
--- /dev/null
+++ b/misc_docs/syntax/operators_float_division.mdx
@@ -0,0 +1,23 @@
+---
+id: "float-division"
+keywords: ["divide", "division", "float"]
+name: "/."
+summary: "This is the `floating point division` operator."
+category: "operators"
+---
+
+This operator performs *floating point* division.
+
+
+
+```res
+let result = 3.0 /. 2.5
+```
+
+```js
+var result = 3.0 / 2.5;
+```
+
+
+
+For dividing *integers* see the `/` operator.
diff --git a/misc_docs/syntax/operators_float_multiplication.mdx b/misc_docs/syntax/operators_float_multiplication.mdx
new file mode 100644
index 000000000..391ad78da
--- /dev/null
+++ b/misc_docs/syntax/operators_float_multiplication.mdx
@@ -0,0 +1,23 @@
+---
+id: "float-multiplication"
+keywords: ["multiply", "multiplication", "float"]
+name: "*."
+summary: "This is the `floating point multiplication` operator."
+category: "operators"
+---
+
+This operator performs *floating point* multiplication.
+
+
+
+```res
+let result = 1.5 *. 2.3
+```
+
+```js
+var result = 1.5 * 2.3;
+```
+
+
+
+For multiplying *integers* see the `*` operator.
diff --git a/misc_docs/syntax/operators_float_subtraction.mdx b/misc_docs/syntax/operators_float_subtraction.mdx
new file mode 100644
index 000000000..256754e2e
--- /dev/null
+++ b/misc_docs/syntax/operators_float_subtraction.mdx
@@ -0,0 +1,23 @@
+---
+id: "float-subtraction"
+keywords: ["subtract", "minus", "subtraction", "float"]
+name: "-."
+summary: "This is the `floating point subtraction` operator."
+category: "operators"
+---
+
+This operator performs *floating point* subtraction.
+
+
+
+```res
+let result = 3.0 -. 2.5
+```
+
+```js
+var result = 3.0 - 2.5;
+```
+
+
+
+For subtracting *integers* see the `-` operator.
diff --git a/misc_docs/syntax/operators_integer_addition.mdx b/misc_docs/syntax/operators_integer_addition.mdx
new file mode 100644
index 000000000..3d89ab707
--- /dev/null
+++ b/misc_docs/syntax/operators_integer_addition.mdx
@@ -0,0 +1,25 @@
+---
+id: "integer-addition"
+keywords: ["plus", "add", "addition", "sum", "int", "integer"]
+name: "+"
+summary: "This is the `integer addition` operator."
+category: "operators"
+---
+
+This operator performs *integers* addition.
+
+
+
+```res
+let result = 1 + 2
+```
+
+```js
+val result = 3;
+```
+
+
+
+For adding *floats* see the `+.` operator.
+
+For contatenating *strings* see the `++` operator.
diff --git a/misc_docs/syntax/operators_integer_division.mdx b/misc_docs/syntax/operators_integer_division.mdx
new file mode 100644
index 000000000..7e2670ed5
--- /dev/null
+++ b/misc_docs/syntax/operators_integer_division.mdx
@@ -0,0 +1,25 @@
+---
+id: "integer-division"
+keywords: ["divide", "division", "int", "integer"]
+name: "/"
+summary: "This is the `integer division` operator."
+category: "operators"
+---
+
+This operator performs *integer* division, with the result truncated to an integer value.
+
+If the second argument is *zero* then a `Division_by_zero` exception is thrown. Refer to the [Exception](/docs/manual/latest/exception) section for handling exceptions.
+
+
+
+```res
+let result = 3 / 2
+```
+
+```js
+var result = 1;
+```
+
+
+
+For dividing *floats* see the `/.` operator.
diff --git a/misc_docs/syntax/operators_integer_multiplication.mdx b/misc_docs/syntax/operators_integer_multiplication.mdx
new file mode 100644
index 000000000..4ea81b129
--- /dev/null
+++ b/misc_docs/syntax/operators_integer_multiplication.mdx
@@ -0,0 +1,23 @@
+---
+id: "integer-multiplication"
+keywords: ["multiply", "multiplication", "int", "integer"]
+name: "*"
+summary: "This is the `integer multiplication` operator."
+category: "operators"
+---
+
+This operator performs *integer* multiplication.
+
+
+
+```res
+let result = 2 * 3
+```
+
+```js
+var result = 6;
+```
+
+
+
+For multiplying *floats* see the `*.` operator.
diff --git a/misc_docs/syntax/operators_integer_subtraction.mdx b/misc_docs/syntax/operators_integer_subtraction.mdx
new file mode 100644
index 000000000..1a090e6dc
--- /dev/null
+++ b/misc_docs/syntax/operators_integer_subtraction.mdx
@@ -0,0 +1,23 @@
+---
+id: "integer-subtraction"
+keywords: ["subtract", "minus", "subtraction", "int", "integer"]
+name: "-"
+summary: "This is the `integer subtraction` operator."
+category: "operators"
+---
+
+This operator performs *integer* subtraction.
+
+
+
+```res
+let result = 3 - 2
+```
+
+```js
+var result = 1;
+```
+
+
+
+For subtracting *floats* see the `-.` operator.
diff --git a/misc_docs/syntax/operators_string_concatenation.mdx b/misc_docs/syntax/operators_string_concatenation.mdx
new file mode 100644
index 000000000..0d6b49ac8
--- /dev/null
+++ b/misc_docs/syntax/operators_string_concatenation.mdx
@@ -0,0 +1,23 @@
+---
+id: "string-concatenation"
+keywords: ["concat", "concatenation", "add", "string"]
+name: "++"
+summary: "This is the `string concatenation` operator."
+category: "operators"
+---
+
+This operator concatenates two *strings* together.
+
+
+
+```res
+let greetings = "Hello " ++ "world!"
+```
+
+```js
+var greetings = "Hello world!";
+```
+
+
+
+
diff --git a/src/components/SyntaxLookupWidget.js b/src/components/SyntaxLookupWidget.js
index 8ed53cbaf..c7e13ef05 100644
--- a/src/components/SyntaxLookupWidget.js
+++ b/src/components/SyntaxLookupWidget.js
@@ -14,6 +14,15 @@ import * as GithubSlugger from "github-slugger";
import Decorator_asMdx from "misc_docs/syntax/decorator_as.mdx";
import Decorator_moduleMdx from "misc_docs/syntax/decorator_module.mdx";
import Controlflow_ifelseMdx from "misc_docs/syntax/controlflow_ifelse.mdx";
+import Operators_float_additionMdx from "misc_docs/syntax/operators_float_addition.mdx";
+import Operators_float_divisionMdx from "misc_docs/syntax/operators_float_division.mdx";
+import Operators_integer_additionMdx from "misc_docs/syntax/operators_integer_addition.mdx";
+import Operators_integer_divisionMdx from "misc_docs/syntax/operators_integer_division.mdx";
+import Operators_float_subtractionMdx from "misc_docs/syntax/operators_float_subtraction.mdx";
+import Operators_integer_subtractionMdx from "misc_docs/syntax/operators_integer_subtraction.mdx";
+import Operators_float_multiplicationMdx from "misc_docs/syntax/operators_float_multiplication.mdx";
+import Operators_string_concatenationMdx from "misc_docs/syntax/operators_string_concatenation.mdx";
+import Operators_integer_multiplicationMdx from "misc_docs/syntax/operators_integer_multiplication.mdx";
var render = (function(c) {
return React.createElement(c, {});
@@ -77,6 +86,125 @@ var allItems = [
summary: "This is an `uncurried` function.",
category: /* Other */3,
component: Controlflow_ifelseMdx
+ },
+ {
+ id: "integer-addition",
+ keywords: [
+ "plus",
+ "add",
+ "addition",
+ "sum",
+ "int",
+ "integer"
+ ],
+ name: "+",
+ summary: "This is the `integer addition` operator.",
+ category: /* Operators */2,
+ component: Operators_integer_additionMdx
+ },
+ {
+ id: "integer-subtraction",
+ keywords: [
+ "subtract",
+ "minus",
+ "subtraction",
+ "int",
+ "integer"
+ ],
+ name: "-",
+ summary: "This is the `integer subtraction` operator.",
+ category: /* Operators */2,
+ component: Operators_integer_subtractionMdx
+ },
+ {
+ id: "integer-multiplication",
+ keywords: [
+ "multiply",
+ "multiplication",
+ "int",
+ "integer"
+ ],
+ name: "*",
+ summary: "This is the `integer multiplication` operator.",
+ category: /* Operators */2,
+ component: Operators_integer_multiplicationMdx
+ },
+ {
+ id: "integer-division",
+ keywords: [
+ "divide",
+ "division",
+ "int",
+ "integer"
+ ],
+ name: "/",
+ summary: "This is the `integer division` operator.",
+ category: /* Operators */2,
+ component: Operators_integer_divisionMdx
+ },
+ {
+ id: "float-addition",
+ keywords: [
+ "plus",
+ "add",
+ "addition",
+ "sum",
+ "float"
+ ],
+ name: "+.",
+ summary: "This is the `floating point addition` operator.",
+ category: /* Operators */2,
+ component: Operators_float_additionMdx
+ },
+ {
+ id: "float-subtraction",
+ keywords: [
+ "subtract",
+ "minus",
+ "subtraction",
+ "float"
+ ],
+ name: "-.",
+ summary: "This is the `floating point subtraction` operator.",
+ category: /* Operators */2,
+ component: Operators_float_subtractionMdx
+ },
+ {
+ id: "float-multiplication",
+ keywords: [
+ "multiply",
+ "multiplication",
+ "float"
+ ],
+ name: "*.",
+ summary: "This is the `floating point multiplication` operator.",
+ category: /* Operators */2,
+ component: Operators_float_multiplicationMdx
+ },
+ {
+ id: "float-division",
+ keywords: [
+ "divide",
+ "division",
+ "float"
+ ],
+ name: "/.",
+ summary: "This is the `floating point division` operator.",
+ category: /* Operators */2,
+ component: Operators_float_divisionMdx
+ },
+ {
+ id: "string-concatenation",
+ keywords: [
+ "concat",
+ "concatenation",
+ "add",
+ "string"
+ ],
+ name: "++",
+ summary: "This is the `string concatenation` operator.",
+ category: /* Operators */2,
+ component: Operators_string_concatenationMdx
}
];
diff --git a/src/components/SyntaxLookupWidget.res b/src/components/SyntaxLookupWidget.res
index a884ebd9c..017110e1f 100644
--- a/src/components/SyntaxLookupWidget.res
+++ b/src/components/SyntaxLookupWidget.res
@@ -23,6 +23,33 @@ external decorator_as: MdxComp.t = "default"
@module("misc_docs/syntax/controlflow_ifelse.mdx")
external controlflow_ifelse: MdxComp.t = "default"
+@module("misc_docs/syntax/operators_integer_addition.mdx")
+external operators_integer_addition: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_integer_subtraction.mdx")
+external operators_integer_subtraction: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_integer_multiplication.mdx")
+external operators_integer_multiplication: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_integer_division.mdx")
+external operators_integer_division: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_float_addition.mdx")
+external operators_float_addition: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_float_subtraction.mdx")
+external operators_float_subtraction: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_float_multiplication.mdx")
+external operators_float_multiplication: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_float_division.mdx")
+external operators_float_division: MdxComp.t = "default"
+
+@module("misc_docs/syntax/operators_string_concatenation.mdx")
+external operators_string_concatenation: MdxComp.t = "default"
+
module Category = {
type t = Decorators | ControlFlow | Operators | Other
@@ -87,6 +114,78 @@ let allItems = [
category: Other,
component: controlflow_ifelse,
},
+ {
+ id: "integer-addition",
+ keywords: ["plus", "add", "addition", "sum", "int", "integer"],
+ name: "+",
+ summary: "This is the `integer addition` operator.",
+ category: Operators,
+ component: operators_integer_addition,
+ },
+ {
+ id: "integer-subtraction",
+ keywords: ["subtract", "minus", "subtraction", "int", "integer"],
+ name: "-",
+ summary: "This is the `integer subtraction` operator.",
+ category: Operators,
+ component: operators_integer_subtraction,
+ },
+ {
+ id: "integer-multiplication",
+ keywords: ["multiply", "multiplication", "int", "integer"],
+ name: "*",
+ summary: "This is the `integer multiplication` operator.",
+ category: Operators,
+ component: operators_integer_multiplication,
+ },
+ {
+ id: "integer-division",
+ keywords: ["divide", "division", "int", "integer"],
+ name: "/",
+ summary: "This is the `integer division` operator.",
+ category: Operators,
+ component: operators_integer_division,
+ },
+ {
+ id: "float-addition",
+ keywords: ["plus", "add", "addition", "sum", "float"],
+ name: "+.",
+ summary: "This is the `floating point addition` operator.",
+ category: Operators,
+ component: operators_float_addition,
+ },
+ {
+ id: "float-subtraction",
+ keywords: ["subtract", "minus", "subtraction", "float"],
+ name: "-.",
+ summary: "This is the `floating point subtraction` operator.",
+ category: Operators,
+ component: operators_float_subtraction,
+ },
+ {
+ id: "float-multiplication",
+ keywords: ["multiply", "multiplication", "float"],
+ name: "*.",
+ summary: "This is the `floating point multiplication` operator.",
+ category: Operators,
+ component: operators_float_multiplication,
+ },
+ {
+ id: "float-division",
+ keywords: ["divide", "division", "float"],
+ name: "/.",
+ summary: "This is the `floating point division` operator.",
+ category: Operators,
+ component: operators_float_division,
+ },
+ {
+ id: "string-concatenation",
+ keywords: ["concat", "concatenation", "add", "string"],
+ name: "++",
+ summary: "This is the `string concatenation` operator.",
+ category: Operators,
+ component: operators_string_concatenation,
+ },
]
let fuseOpts = Fuse.Options.t(