Calling External Programs

The Wolfram Language immediately allows you to call both standalone programs and individual functions or methods within running programs. The Wolfram Language's architecture allows external functionality to be represented in a symbolic form that can immediately be manipulated within the Wolfram Languageand that often makes access to external functionality from within the Wolfram Language more convenient even than from its own native environment.

Basic External Program Operations

Run run an external command-line program (!prog to run as a shell escape)

RunThrough feed standard input to an external program and capture output

Compile automatically generate C code and link back to the Wolfram Language

Import  ▪  Export  ▪  CForm  ▪  FortranForm

SystemOpen open a file, URL, or other target on your computer system

Direct Control of External Processes »

RunProcess run an external process within the operating system

StartProcess  ▪  ProcessConnection  ▪  KillProcess  ▪  ...

External Services

SendMail  ▪  SendMessage

ServiceExecute execute a command on an external service

ServiceConnect  ▪  ServiceObject

Calling Interpreted Languages »

ExternalEvaluate run a command in an external language, and return the result

StartExternalSession start a persistent external language session

RegisterExternalEvaluator  ▪  ...


Install install a WSTP-installable external program

LinkPatterns find functions available in a running WSTP program

mprep externally prepare a WSTPinstallable C or C++ program

LinkRead  ▪  LinkWrite  ▪  LinkLaunch  ▪  ...

Wolfram LibraryLink »

LibraryFunctionLoad load a function from a dynamic library into the Wolfram Language

LibraryFunction a function that calls into a dynamic library

LibraryFunctionInformation  ▪  LibraryFunctionUnload  ▪  LibraryLoad  ▪  LibraryUnload  ▪  FindLibrary  ▪  $LibraryPath  ▪  ...

J/Link »

JavaNew create a new Java object in any specified class

LoadJavaClass  ▪  MakeJavaObject  ▪  JavaBlock  ▪  JavaShow  ▪  ...

.NET/Link »

NETNew create a new .NET object of any specified type

LoadNETType  ▪  NETTypeInfo  ▪  MakeNETObject  ▪  NETBlock  ▪  ...

Calling Programs on Remote Systems

RemoteConnect set up a connection to a remote system

RemoteRun, RemoteRunProcess run command-line programs on a remote system

WSDL Web Services »

InstallService install web services from a WSDL description

GPU Computing »

CUDAFunctionLoad  ▪  OpenCLFunctionLoad  ▪  ...

Related Tutorials