Skip to content
Morten Kromberg edited this page Apr 28, 2019 · 8 revisions

Link facilitates the use of text files for APL source code through the creation of one or more links between namespaces inside the active workspace and directories containing source code. Functionality provided by links include:

  • Keeping Source Files Up-to-date: Typically, links are configured to replicate any changes made using the Dyalog editor and tracer to external source files. As a result, the source files source are kept up-to-date without further action by the developer.

  • Integrating External Changes into the workspace: Links can be also be configured to use a "file system watcher" to replicate changes made using external tools such as editors and source code management systems inside the active APL session. This functionality is currently only available under Microsoft Windows, but the intention is to extend support to all platforms.

  • Loading and Saving Source Files: Link can also be used to copy source code into or out of an APL session without subsequently detecting and replicating changes made in- or outside the APL system.

Note that Link is not a source code management system, but is designed to support tools like Git or Subversion which can be used to manage the linked directories.

Installation: Link is implemented as a set of APL functions which are loaded into a session namespace (⎕SE.Link) when Dyalog APL version 17.1 or later is started with a default session file. For instructions on installing and using Link with version 17.0, or with a more recent interpreter with a non-standard session file, please read the installation instructions.

Usage: Once installed, Links can be created and managed with user commands, which is probably the most convenient mechanism for interactive or casual use. The API functions in the ⎕SE.Link namespace can also be called directly, which is recommended if you want to integrate Link into your own load / build tools, or other "devops" code.

Further Reading: For more details on using Link, continue with the Overview, or proceed directly to the API reference.

Clone this wiki locally