I didn't find a clear description of the difference in the documentation.
For example, if I define a function "Bar" in a separate file, what is the
difference of using "require("Bar")" from "include("Bar")" in another
script?
Also, the documentation for modules says :
Given the statement using Foo, the system looks for Foo within Main. If the
module does not exist, the system attempts to require("Foo"), which
typically results in loading code from an installed package.
What does it mean to require("Foo") when Foo is a Module?