Provided by: coop-computing-tools_9.9-2ubuntu3_amd64 bug

NAME

       jx_repl - interactive command line tool to explore the JX language.

SYNOPSIS

       jx_repl

DESCRIPTION

       jx_repl  is  an  interactive  tool  to explore the JX language.  jx_repl will read in a JX
       expression, evaluate it, print the result, then save both the query and the result to  the
       context.   Results  of  previous expressions can be referenced via the out_%d` symbol, and
       their corresponding query via the `in_%d` symbol.  The program will exit on  EOF  or  when
       the user enters 'quit' or 'exit.

       jx_repl also reserves certain symbols in the context to act as commands when entered:

       •   help display a help message which lists details on reserved commands.

       •   functions display a list of functions supported by the JX language.

       •   values display a list of values supported by the JX language.

       •   operators display a list of operators supported by the JX language.

       •   catalog fetch the catalog data.

       •   exit exit the program.

       •   quit same as 'exit'.

EXIT STATUS

       Will always return 0

EXAMPLES

       Simply run jx_repl with no parameters:

               % jx_repl
               Welcome to the JX Language Explorer.

               Type 'help' for help

               in_0  >>>

       Enter any valid JX expression:

               % jx_repl
               in_0  >>> [ "file" + x + ".txt" for x in range(3) ]
               out_0 <<<
               [
                 "file0.txt",
                 "file1.txt",
                 "file2.txt"
               ]

       Fetch the catalog data:

               % jx_repl
               in_1  >>> catalog
               out_1 <<<
               [
                 {
                   "name":NAME,
                   "lastheardfrom":1620308581,
                   "address":ADDRESS,
                   ...
                   "type":"wq_factory"
                 },

                 ...
               ]

       Perform operations on previous output

               % jx_repl
               in_2  >>> select(type=="wq_master", out_1)
               out_2 <<<
               [

                 {
                   "name":NAME,
                   "lastheardfrom":1620308755,
                   "address":ADDRESS,
                   "tasks_total_disk":0,
                   "tasks_total_memory":0,
                   ...
                   "type": wq_master
                 }
                 ...
               ]

       Do more operations on previous output

               % jx_repl
               in_4  >>> join(project(name, out_2), ", ")
               out_4 <<< NAME_1, NAME_2, NAME_3, ..., NAME_N

       Now, fetch the query used to attain that output

               % jx_repl
               in_5  >>> in_4
               out_5 <<< join(project(name,select(type=="wq_master",fetch("http://catalog.cse.nd.edu:9097/query.json"))),", ")

       Call one of reserved commands

               % jx_repl
               in_7  >>> help

                 help          display this message
                 functions     display a list of functions supported by the JX language
                 values        display a list of values supported by the JX language
                 operators     display a list of operators supported by the JX language
                 in_#          the #'th input query
                 out_#         result of in_#
                 catalog       alias to fetch catalog data
                 quit|exit     exit program

COPYRIGHT

       The  Cooperative Computing Tools are Copyright (C) 2005-2019 The University of Notre Dame.
       This software is distributed under the GNU General Public License.  See the  file  COPYING
       for details.