Skip to content

ZARK: an APL Tutor

Vector 7:4, page 62

The text of this article is not yet online. No complete scan of this issue has been found. The only copy found, on vector.org.uk, is damaged: its page images are lost, but the text machine-read from them survives, shown below (help find a scan).

Unedited OCR text, machine-read from a scan now lost: it contains errors, and its APL is wrong. Shown for searching.

VECTOR Vol.7 No.4

ZARK: an APL Tutor for APL*PLUS/PC

reviewed by Emily Timson

ZARK is a software package which aims to teach APL to novices whilst providing a valuable reference aid to experienced APLers. My parents both work with computers and seem to be infatuated with the things: I have been fairly successful in avoiding anything to do with them. Then my husband bought one and also tried to get me interested and that’s how I was persuaded to try ZARK and relate my experiences for Vector, a magazine ] have never read. When I began I knew almost nothing about APL.

The ZARK APL Tutor Kit The Software was on 4 floppy disks and a couple of pages of information about getting ZARK up and running on your PC all container. The instructions were brief and straight forward for my husband. They worked first time. Within a couple of minutes he had started ZARK for me and I was sitting comfortably and ready to begin.

Zark is written in American, which sometimes makes it hard to follow, and is frequently amusing. I laughed out loud on many occasions. Here is a sample of the style from the Starting instructions:

The Zark APL Tutor won't do you any good if won’t talk APL. These instructions may help to get you going. Follow them carefully.

1, Find someone who's installed APL on his or her computer. Get down on your knees and ask for help.

2. Failing that, read the installation instructions that come with the APL product. Do what they say.

3. Failing that, follow the steps below. We've distilled them from the manuals .... If you have trouble, return to step 1 or 2 above.

4, Failing that, learn COBOL.

The Introduction I thought it would to give this section a visit. (You see the Zark style is catching). Getting here was simple, I just pressed the SPACE BAR. Instantly, full colour easy to read text screens (we have VGA, but they work on Hercules too

62

VECTOR Vol.7 No.4

because we used to have that). Six pages followed in which I was told about the structure of the lessons and more importantly which THREE keys I had to press. SPACE BAR to proceed with the lesson, Fl for HELP and best of all ESC to get me out of all difficulties and back to the main menu.

Feeling in control and not yet confronted with anything confusing or difficult I moved straight on to the first lesson (SPACE BAR).

The LESSONS ZARK seems to be meticulous in the way it has covered aspects of the language with a lesson for each one. If you know what subject you want to be taught you can quickly select from the index screen and move straight into the required lesson. However you get are faced with a three part lesson:

Part 1. Tutorial This section is like an extract from a text book. This is where ZARK teaches you about whatever topic you have selected. The text is very easy to follow and quite humorous. The lessons never seem to get too deep and yet at the end of each tutorial I felt I had covered everything well. Knotty points are sometimes covered by a discussion between three APL creators’ which are represented by faces which pop the screen under the words expressing their point of view. Sometimes they argue other, but they always seem to agree on the best way of solving each problem.

Part 2. Reading This is the shortest part of the lesson. ZARK illustrates the usage of the function being taught and invites you to predict the result of the expressions shown. This truly tests your understanding. Every usage is illustrated:

Predict the result of the following APL expressions:

3 + 7 (Press Enter) 10 3 - 7 (Press Enter) 4

Note the (~) sign, it signifies that the result is negative. The (-) sign is a function which subtracts the right argument from the left argument.

63

VECTOR VoL7 No.4

7 + (Press Enter) SYNTAX ERROR 7+ A

... addition needs both left and right arguments.

It is easy to work through each example (Press Enter) and if you experience any trouble you can easily go back to the tutorial section to recap (Press ESC). You can also lesson at any time by pressing SCROLL LOCK to enter immediate execution mode to experiment as you choose. Pressing SCROLL LOCK again returns you to the lesson at the place where you left it.

Part 3. Writing This is the best part of the lesson. In this section you find yourself working in immediate execution mode. ZARK presents you with a simple problem such as:

What length of fence is required to enclose a garden of tength 7 metres and width 5.5 metres, Assign the answer to the variable LENGTH.”

You are required to type the APL expression to satisfy the question and then press can then check it by entering other APL expressions or submit it to ZARK by pressing SCROLL LOCK. ZARK replies with Correct if you are correct and gives you some alternative (equally valid) expressions. If you are wrong then ZARK offers you the chance to try again (twice). ] enjoyed this hands-on practice. The problems posed by the tutor were worded your knowledge of APL, not your knowledge of solving puzzles. The questions are all very interesting and kept my attention all the way through the lessons.

LENGTH + 7+ 7+ 5.5 + 5.5 LENGTH 25 CSCROLL LOCK}

Correct, the answer is 25. Other possible expressions are:

2x(7 + 5.5) ¬2*5.5)4+2%7 (74+5.5)*2

64

VECTOR Vol.7 No.4

Topics Covered ZARK contains 26 chapters labelled A to Z. As a tutor ZARK should be followed in sequence as the writing  section assumes that you have covered all preceding topics. The APL functions and the unique APL concepts such as Vectors, Matrices and Rank have separate sections of tutorial. The index seems thorough. The quantity of information in the index is searching I found a few topics which brought up a message that the not covered in this course; encode and decode produced this message.

ZARK allows you to search through the index by function. This means you can scan the index for’+’ and ZARK will take you directly to the appropriate point in the series of lessons and commence at the reading  stage. This is a very effective way of providing speedy and efficient reference after you through the course,

If, on the other hand, you know what you want to do but not know which APL function is appropriate then you can search the topics by subject index. This means you can search the index for Magnitude  or Modulus  and ZARK will swiftly transport you into the lesson which deals with the relevant APL function. If you know another programming language and you want to learn APL then this index would help you make the translation.

General Comments ZARK impressed me because I did not expect it to be so much fun or such a variety of tricks to be used in the presentations. My husband says the instructions to install ZARK are terrific. The ZARK environment is clear and simple to negotiate.

The depth and variety of information offered by ZARK is staggering. I know there was so much in APL. I think that if I were going to write programs in APL this would be a very good way to truth is that found APL rather difficult and haven't yet finished all the sections of the Tutor, but I think that anyone could pick up this package and be able to make good effective use of the language after working all through it.

What I found was that too often I was waylaid by the Tutor into making notes about the APL I was learning and forgetting entirely to make notes about the package I was supposed to be reviewing.

65

VECTOR Vol.7 No.4

Little details such as telling you where a symbol is on the keyboard are never overlooked, It may seem trivial but how would you deduce or guess where the symbol is.

The tutor is positively enthusiastic about the versatility, flexibility and power of this language. This enthusiasm comes across in the lessons. A little has rubbed off on me!

Conclusions T think this is a very good tutor for course it is only for use with STSC’s APL*PLUS/ PC. I was lent version 8.0 for the review.

I am almost everything about Zark. I recommend it to anyone who wishes to learn APL or would like a handy encyclopedia of APL for quick reference.

&s APL PEOPLE

Serving the International APL Community

Consultancy advice and assistance with all aspects of APL systems development Recruitment unique placement service for companies and individuals Software Competitive prices on all APL software tools and interpreters

Contact: Jill Moss, APL People Ltd., The Old Malthouse, Clarence Street, Bath BA1 5NS Tel: 0225 462602 during office hours 0225 333618 evenings and weekends

66