Build the power of the Wolfram Engine into your technology stack
The Wolfram Engine Integration System provides a variety of ways to integrate the Wolfram Engine into your technology stack—with convenient solutions that optimize various attributes such as local footprint, network independence, computation efficiency, communication overhead, and installability.
Make the Wolfram Engine an internal part of systems you build, calling it from code through interprocess and intraprocess communication mechanisms such as APIs, function calls, and scripts.
Use the Wolfram Engine to add power inside a system you build.
Use the Wolfram Engine to provide user interface elements that control and interact with systems you build—communicating through WSTP and other interprocess communication mechanisms.
Use the Wolfram Engine to provide or enhance the "face" of a system you build.
The Wolfram Engine Integration System supports both one-time calls and persistent sessions.
Some sample objectives:
Call on the power of the Wolfram Engine inside a software product—or a device or cloud service.
Use the Wolfram Language to add sophisticated programmability to any system or service.
Use the Wolfram Language to access and control a complex software or other system.
Use the Wolfram Language to generate rich visualizations, reports, dashboards, etc. from within a system.
Use the Wolfram Language to create form-based interfaces with natural language understanding.
Use CDF powered by the Wolfram Engine to add interactive elements to documents, pages, etc.
Use the Wolfram Language and Wolfram Data Framework (WDF) as a uniform way to represent, transport, and compute with code and data inside a system.
Leverage the Wolfram Universal Deployment System to enable access to a system across many platforms and deployment channels.
Integrate the Wolfram Engine and Wolfram Language to raise the level of capability of developers on a new or existing platform.
Many versions of the Wolfram Engine
Pick the underlying Wolfram Engine deployment that's best for your integration project.
Call on a fully hosted Wolfram Engine in the Wolfram Cloud.
Call on managed instances of the Wolfram Engine in an on-premise or hosted Wolfram Private Cloud.
Call on a Wolfram Engine using cloud protocols, but with the engine running locally on a computer.
Get a dedicated Wolfram Engine instance initiated on demand on a single computer or subnet.
Link a Wolfram Engine Library into the code space of a program.
Use Wolfram Engine SDKs to build programs that include the Wolfram Engine.
Run Wolfram Language scripts using a Wolfram Engine.
Run a command-line program that calls the Wolfram Engine.
Set up a Wolfram Notebook interface to connect to a program.
Use an embedded Wolfram Engine to power standalone CDF documents.
The Wolfram Engine Integration System supports a range of styles of access and communication—each of which can be implemented in multiple ways appropriate for different deployment and scenarios.
Call Wolfram Language code by giving a sequence of named arguments and getting back a single result.
Execute a web URL (cloud only).
Use automatically synthesized or custom-written code in any standard language (cloud or local).
Execute a command-line program in the operating system shell (cloud or local).
Provide a block of Wolfram Language code to run.
Run a #!wolfram script, using side effects to generate output (local only).
Run the Wolfram Engine with input from stdin and output on stdout (local only).
Evaluate inputs in a notebook that's provided (local or cloud).
Use WSTP (Wolfram Symbolic Transfer Protocol) for flexible two-way communication.
Communicate directly with a Wolfram Engine from within the Wolfram Language (local or remote).
Communicate directly with a Wolfram Engine from C, Java, .NET, etc. (typically local only).
Make the Wolfram Engine an integrated part of an executable program.
Call the Wolfram Engine within a single executable process (single-process local only).
Expose a form-like interface to Wolfram Language code.
Call the Wolfram Engine from an embeddable form on the web (cloud only).
Call the Wolfram Engine through forms on mobile or native apps (effectively local only).
Have a Wolfram Engine user interface.
Expose a single interactive element (such as a Manipulate) for users (local or cloud).
Allow a back-and-forth dialog with a Wolfram Engine in a document interface (local or cloud).
Have an ASCII-terminal-style back-and-forth dialog with a Wolfram Engine (local only).
Depending on the scenario, there are a variety of ways to distribute Wolfram Engine functionality and software.
Don't distribute any actual Wolfram Engine software; just call the cloud (Wolfram Cloud, Wolfram Private Cloud).
Distribute machine images that can be brought up as Wolfram Private Clouds (Wolfram Private Cloud).
Distribute embeddable virtual machine images that can be installed to provide microcloud functionality (Wolfram Microcloud).
Distribute packaged software that can be installed by end users through an operating system (Wolfram Desktop, Wolfram Standalone Kernel, Wolfram CDF Player, ...).
Distribute packaged software to be installed by administrators on individual machines or subnets (Wolfram Launch Manager/Wolfram Engine Server).
Distribute the Wolfram Engine as part of an operating system, to provide shared capabilities for many programs (Wolfram Launch Manager/Wolfram Engine Server, Wolfram Standalone Kernel, ...).
Use a shared library that is dynamically linked into a program and accessed through function calls (Wolfram Engine Library).
Use a software development framework that includes appropriate libraries to connect or include with programs (Wolfram Engine SDKs).
There are ways to integrate the Wolfram Engine into whatever kind of infrastructure environment you want.
Use the Wolfram Cloud from any environment for fully hosted Wolfram Engine services.
Wolfram Engine Inside: Wolfram Private Cloud, Wolfram Engine Server, Wolfram Standalone Kernel
Wolfram Engine Outside: Wolfram Private Cloud
Wolfram Engine Inside: Wolfram Engine Server, Wolfram Standalone Kernel, Wolfram Engine Command-Line Driver
Wolfram Engine Outside: Wolfram Microcloud
Wolfram Engine Inside: Wolfram Engine Server, Wolfram Standalone Kernel, Wolfram Engine Library
Wolfram Engine Outside: Wolfram Desktop, Wolfram CDF Player
Wolfram Engine Inside: Wolfram Engine SDKs
Wolfram Engine Outside: Wolfram Engine SDKs
Contact us for details on the Wolfram Embedded Computing System.
There are a variety of ways Wolfram Engines can be configured for a project.
Use the Wolfram Engine Library or Wolfram Engine SDKs to link the Wolfram Engine directly into your program.
Use the Wolfram Engine Server to connect to an instance of the Wolfram Engine when needed.
Use a Wolfram Private Cloud to have a managed pool of Wolfram Engines.
In many applications, you'll want to initialize the Wolfram Engine with your particular code or data.
Initialize whenever the engine is called.
Allows best sharing of Wolfram Engine resources.
Initialize whenever your program is started.
Suitable for single instance and linked library configurations.
Always maintain a dedicated pool of pre-initialized Wolfram Engines.
Suitable for Wolfram Private Cloud configurations.
Any Wolfram Engine needs to go to the cloud for certain services.
Get your own Wolfram Knowledge Server to keep all services within your infrastructure.