Go to the first, previous, next, last section, table of contents.

### `ox_rpc`, `ox_cmo_rpc`, `ox_execute_string`

`ox_rpc(number,`"func"`,arg0,...)`
`ox_cmo_rpc(number,`"func"`,arg0,...)`
`ox_execute_string(number,`"command"`,...)`
  :: Calls a function on an OpenXM server

return
  0
number
  integer (process identifier)
func
  function name
command
  string
arg0, arg1, ...
  arbitrary (arguments)

- Calls a function on an OpenXM server whose identifier is number.
- It returns 0 immediately. It does not wait the termination of the function call.
- `ox_rpc()` can be used when the server is ``ox_asir'`. Otherwise `ox_cmo_rpc()` should be used.
- The result of the function call is put on the stack of the server. It can be received by `ox_pop_local()` or `ox_pop_cmo()`.
- If the server is not ``ox_asir'`, only data defined in OpenXM can be sent.
- `ox_execute_string` requests the server to parse and execute command by the parser and the evaluater of the server. The result is pushed to the stack.

    [234] ox_cmo_rpc(0,"dp_ht",dp_ptod((x+y)^10,[x,y]));
    0
    [235] ox_pop_cmo(0);
    (1)*<<10,0>>
    [236] ox_execute_string(0,"12345 % 678;");
    0
    [237] ox_pop_cmo(0);
    141

`References`
  section `ox_pop_cmo`, `ox_pop_local`

Go to the first, previous, next, last section, table of contents.