Differences between revisions 10 and 11
Revision 10 as of 2011-04-17 17:18:04
Size: 3883
Editor: KaiJaeger
Comment: New version
Revision 11 as of 2011-05-02 09:02:32
Size: 3883
Editor: KaiJaeger
Comment: New version
Deletions are marked like this. Additions are marked like this.
Line 73: Line 73:
||Current state: ||1.8.1 || ||Current state: ||1.8.2 ||

Compare

(Hide table-of-contents)

Compare is part of the CategoryAplApl project.

Overview

Compare offers a couple of methods designed to compare functions, operators and scripts. It is also able to deal with SALTed files as well as acre component files.

Methods

There are three main functions:

Match

Match takes names of functions or operators or scripts and compares the source code. Note that taking the source code with ⎕CR or ⎕SRC and then them is not always going to work: white spaces as well as formatting problems might result in a 0 when the source code is in fact identicall. Match deals with these problems properly.

These

These accepts a varity of arguments listed underneath. According to its arguments it tries to figure out what your intention is and carries out the appropriate action.

Script / Script

Compare the two scripts. Note that you can specify name(s) as well as reference(s).

Script / name of a *.dyalog file

Compare the workspace script with the file.

Script

This syntax requeires "Script" to be a SALTed script. In that case the workspace script is compared with its SALTed source file.

Name of a native file / name of a native file

Compare the two files.

Function name / function name

Compare two functions in the workspace.

Function name / name of a native file

Compare the function in the workspace with the file.

Function name / name of an `acre` component file

Compare the function in the workspace with the acre component file.

Function name

  • If there is an acre component file holding that function the workspace version is compared with any of the components.

Namespace / namespace

Note that this works only with named namespaces, although the argument might be either references or names pointing to the two namespaces.

This is essentially the same as the Merge method but in read-only-mode.

Merge

Although this method works "only" on 9named) namespaces one can effectively use it to compare and merge workspaces by copying the two workspaces into two separate namespaces.

The Merge method presents a GUI with all the information one needs to know in order to perform the merge. Note that all functions, operators and scripts that do equal are on the = tab while all the others are on the tab. Normally one is interested only in the tab:

Merger.png

There are methods available that makes it easy to compare, modify, delete (either from the GUI or the workspace) and move functions, operators and scripts from one namepsace to the other:

ContextMenu.png

Project Page

For bug reports, future enhancements and a full version history see Compare/ProjectPage

Version Information

Original author:

KaiJaeger

Responsible:

KaiJaeger

Email:

kai@aplteam.com

Current state:

1.8.2

Download

You have two options: you can either download the script for usage:

Download Compare script right now

or get the whole thing from the AplWikiRepository, including the development workspace and the script and maybe more for any development or for running the test cases:

svn list svn://aplteam.com/os/dyalog/Compare/

If you plan to contribute please note that all stuff published as part of the APLAPL project must follow certain APLAPL-specific standards.


CategoryAplApl

CompareSimple (last edited 2018-03-03 11:51:12 by KaiJaeger)