# Vnano Standard Plug-ins Specifications

## Abstract

Vnano Standard Plug-ins are a set of official plug-ins providing basic utility features as functions/variables available in Vnano (VCSSL nano) scripts.

These standard plug-ins may be bundled with applications (software) on which scripting features in the Vnano are supported. On such applications, features (functions/variables) provided by standard plug-ins are available by default. However, depending with the purpose of the scripting feature of the application, some (or all) of standard plug-ing may not be bundled. See the document of the application for checking which standard plug-ins are available.

## License

All Vnano Standard Plug-ins are released under CC0.

## List of Standard Plug-ins and Features

### System Plug-in Group

Plug-ins providing basic features, e.g.: I/O features, utility features, and so on.

SystemEnvironmentXnci1Plugin
  Provides environment-related variables.
  Variables: EOL / LF / CR
SystemDataTypeXnci1Plugin
  Provides data-type-utility functions/variables.
  Variables: INT_MAX / INT_MIN / FLOAT_MAX / FLOAT_MIN_ABS_NORMAL / FLOAT_MIN_ABS_DENORMAL / NAN / INF / UP / UP_SIGNIF / DOWN / DOWN_SIGNIF / HALF_UP / HALF_UP_SIGNIF / HALF_DOWN / HALF_DOWN_SIGNIF / HALF_TO_EVEN / HALF_TO_EVEN_SIGNIF
  Functions: nan(value) / inf(value) / length(array, dimIndex) / rank(array) / round(float floatValue, int numberOfDigits, int mode) / round(string stringValue, int numberOfDigits, int mode)
SystemTerminalIOXnci1Plugin
  Provides I/O functions from/to the terminal.
  Variables: print(...) / println(...)
SystemUserIOXnci1Plugin
  Provides interactive I/O functions from/to the user.
  Variables: popup(message) / alert(message) / confirm(message) / input(message) / input(message, defaultValue)
SystemFileIOXnci1Plugin
  Provides I/O functions from/to files.
  Variables: READ / WRITE / APPEND / READ_CSV / WRITE_CSV / APPEND_CSV / READ_TSV / WRITE_TSV / APPEND_TSV / READ_STSV
  Functions: open(fileName, mode) / open(fileName, mode, encoding) / close(fileId) / flush(fileId) / write(fileId, ...) / writeln(fileId, ...) / read(fileId) / readln(fileId) / countln(fileId) / save(filePath, value) / load(filePath) / exists(filePath) / isdir(directoryPath) / listdir(directoryPath) / mkdir(directoryPath) /
SystemTimeXnci1Plugin
  Provides time-utility functions.
  Functions: time() / sleep(sleepTime)
SystemTerminationXnci1Plugin
  Provides functions for terminating scripts.
  Functions: exit() / exit(exitStatusCode) / error(errorMessage)
SystemTestXnci1Plugin
  Provides utility functions for testing.
  Functions: assert(expectedCondition)

### Math Plug-in Group

Plug-ins providing elementary math & statistical functions.

MathElementaryXnci1Plugin
  Provides elementary math functions.
  Variables: PI
  Functons: rad(degree) / deg(radian) / sin(x) / cos(x) / tan(x) / asin(x) / acos(x) / atan(x) / sqrt(x) / ln(x) / log10(x) / pow(x,exponent) / exp(x) / abs(x)
MathStatisticalXnci1Plugin
  Provides elementary statistical functions.
  Functions: sum(...) / sum(array) / mean(...) / mean(array) / van(...) / van(array) / van1(...) / van1(array) / sdn(...) / sdn(array) / sdn1(...) sdn1(array)