logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

storm - a language system for extensible languages

Description

       Storm itself is a language system for extensible languages. It is bundled with two languages, the general
       purpose  language  Basic Storm and the syntax language for specifying context-free grammars. Normal usage
       of Storm is typically confined to the lanugage Basic Storm.

       The easiest way to get started with Storm is to launch the interactive REPL:

              $ storm
              bs> "Testing:"+1.toS
              => Testing: 1

       To write programs, create a file, myprogram.bs for example, and write code there. It can then  be  loaded
       as follows:

              $ stormmyprogram.bs
              bs> usemyprogram
              using myprogram
              bs> main()
              ...

       As the above example attempts illustrate, this loads the contents of the file into the package myprogram.
       That  package  may  then  be  imported and functions may be executed from there. To execute the functions
       automatically, one can invoke storm as follows:

              $ stormmyprogram.bs-fmyprogram.main

       For larger programs, it is useful to put all files inside a directory and point storm  to  the  directory
       rather than an individual file. In that case, the entire directory will be loaded as a package.

       If  the  -i  flag  is not used to specify imports (as above), Storm will automatically try to execute the
       main function in the imported package(s). As such,  the  above  example  can  be  simplified  further  as
       follows:

              $ stormmyprogram.bs

       If  a  double  dash is present (--), then any parameters that appear after the double dash are treated as
       parameters to the Storm program, and are made available to the Storm program without further processing.

Name

       storm - a language system for extensible languages

Options

storm recognizes the following command-line options.

       -llanguage
              Launch the interactive REPL for language. The default is to launch the bs REPL.

       -ffunction
              Execute function. The function may not require any formal parameters.

       -cexpr
              Evaluate expr in the specified REPL.

       -tpackage
              Execute all tests in package.

       -Tpackage
              Execute all tests in package and any sub-packages.

       -ipath
              Import the directory or file path as a package in the root namespace.

       -Inamepath
              Import the directory path as a package with the name name.

       -rpath
              Use the directory path as the root of the namespace in Storm. By default /usr/lib/storm is used.

       --version
              Print version information.

       --server
              Launch the language server.  Communicates  with  an  editor  using  stdin/stdout  using  a  binary
              protocol.

       --help Print a summary of command-line options.

See Also

       For further information about Storm, see: https://storm-lang.org/

                                                 October 15 2023                                        STORM(1)

Synopsis

storm [options] [-l language] [path] [--] <arguments>
                                                                                     Launch an interactive REPL.
       storm [file/directory]
                                                                        Import file as package, try to run main.
       storm [options] -f function
                                                                                        Run a function and exit.
       storm [options] -t/-T package
                                                                    Run tests in the specified package and exit.
       storm [options] -c expr
                                                                          Evaluate the expression expr and exit.
       storm --server
                                                                                      Start the language server.
       storm --version
                                                                             Print version information and exit.
       storm --help
                                                                    Print help on command-line options and exit.

See Also