Differences between revisions 1 and 16 (spanning 15 versions)
Revision 1 as of 2008-09-23 12:53:01
Size: 3299
Editor: SimonMarsden
Comment:
Revision 16 as of 2009-03-11 11:38:13
Size: 4313
Editor: KaiJaeger
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
*****************************************************************************

* UNDER CONSTRUCTION

* The material in this tutorial is currently being converted to Wiki format

*****************************************************************************
{{{#!html
<div class="borderlesstable">
}}}
||<tableclass="borderlesstable">Back || [[../TutorialContents|Contents]] || [[../TutorialContents|Next]]>||
{{{#!html
</div>
}}}
Line 11: Line 10:

<<TableOfContents>>

|| '''Note to contributors:''' Additions and corrections to this tutorial are welcome. Please keep in mind that it tries to be vendor neutral : where possible examples should work in any version of APL. Please make it clear when code is specific to a particular interpreter. ||
Line 13: Line 17:
It was originally written to accompany MicroAPL's APLX interpreter, and is available in PDF form [[http://www.microapl.co.uk/apl/|here]]. It is adapted from an original version written to accompany MicroAPL's APLX interpreter which is available in [[http://www.microapl.co.uk/apl/LearningAPLwithAPLX.pdf|PDF form]].
Line 25: Line 29:
The core APL language is similar in all these products, although each vendor has added proprietory extensions. Where code is specific to a particular APL interpreter it will be indicated in the text. The core APL language is similar in all these products, although each vendor has added proprietory extensions. Where code is specific to a particular APL interpreter it will usually be indicated in the text.
Line 28: Line 32:
The APL tutorial will be most effective if you actually try the example code in an APL interpreter. The APL tutorial will be most effective if you actually try the example code in an APL interpreter. Several vendors provide free or low cost evaluation licenses:
Line 30: Line 34:
To download a time-limited evaluation copy of APLX for Windows, Macintosh or Linux, visit MicroAPL's [[http://www.microapl.co.uk/apl/aplx_downloads.html|Download page]] To download a time-limited evaluation copy of APLX for Windows, Macintosh or Linux, visit MicroAPL's [[http://www.microapl.co.uk/apl/aplx_downloads.html|Download page]]. You can also download an older Linux version which is free for personal use.

To apply for a free educational license, or a cheap (£50/€75) non-commercial copy of Dyalog APL visit Dyalog's [[http://www.dyalog.com/download-zone.htm|Download zone]]
Line 33: Line 39:
To display the material in this tutorial properly, you need to ensure that (a) your browser can correctly handle Unicode (UTF-8) encoding, and (b) that you have a suitable APL Unicode font installed on your system. To display the material in this tutorial properly, you need to ensure that (a) your browser can correctly handle Unicode (UTF-8) encoding, and (b) that you have a suitable APL '''Unicode''' font installed on your system. Note that non-Unicode APL fonts like "Dyalog Std" or "Causeway" won't work!
Line 37: Line 43:
APL code on this Wiki is encoded using Unicode. It should display correctly provided you have at least one of these APL fonts installed on your system:

APL code on this Wiki is encoded using Unicode UTF-8. It should display correctly provided you have at least one of these APL fonts installed on your system:
Line 47: Line 51:
If you don't have either of these fonts installed, the Wiki's style sheets are set to fall back on Microsoft's Arial font, which does have the APL characters but is not a monospaced font. This means that code samples will display the correct characters, but may not be aligned correctly. If you don't have either of these fonts installed, the Wiki's style sheets are set to fall back on Microsoft's Arial font. Some versions of this font (e.g. the "Arial Unicode MS" version which ships with the international support component of MS Office) do have the APL characters, but it is not a monospaced font. This means that code samples will display the correct characters, but may not be aligned correctly.
Line 49: Line 53:
If you do not have any of the APL fonts listed nor Microsoft's Arial font, APL characters will not display properly. If you do not have either of the APL fonts listed nor  a suitable version of Microsoft's Arial font, APL characters will not display properly.
Line 54: Line 58:
    X 3 3½÷¼9  ª Y DATA[DATA] © A comment     X 3 3÷9 Y DATA[DATA] A comment
Line 60: Line 64:
(this is a picture, not text; it will '''always''' display APL chars)
Line 64: Line 70:
{{{#!html
<div class="borderlesstable">
}}}
||<tableclass="borderlesstable">Back || [[../TutorialContents|Contents]] || [[../TutorialContents|Next]]>||
{{{#!html
</div>
}}}
Line 65: Line 78:
[[LearnApl/TutorialContents|Next]] >

&nbsp;
&nbsp;

CategoryAboutApl&nbsp;&nbsp;CategoryGuides&nbsp;&nbsp;CategoryAplX
CategoryAboutApl&nbsp;&nbsp;CategoryGuides&nbsp;&nbsp;CategoryAplx

Back

Contents

Next>

Learning APL

Note to contributors: Additions and corrections to this tutorial are welcome. Please keep in mind that it tries to be vendor neutral : where possible examples should work in any version of APL. Please make it clear when code is specific to a particular interpreter.

This tutorial aims to teach some of the basics of the APL language.

It is adapted from an original version written to accompany MicroAPL's APLX interpreter which is available in PDF form.

The present version has been slightly modified so that examples should work with a number of APLs, including:

The core APL language is similar in all these products, although each vendor has added proprietory extensions. Where code is specific to a particular APL interpreter it will usually be indicated in the text.

Trying APL

The APL tutorial will be most effective if you actually try the example code in an APL interpreter. Several vendors provide free or low cost evaluation licenses:

To download a time-limited evaluation copy of APLX for Windows, Macintosh or Linux, visit MicroAPL's Download page. You can also download an older Linux version which is free for personal use.

To apply for a free educational license, or a cheap (£50/€75) non-commercial copy of Dyalog APL visit Dyalog's Download zone

Installing the APL font

To display the material in this tutorial properly, you need to ensure that (a) your browser can correctly handle Unicode (UTF-8) encoding, and (b) that you have a suitable APL Unicode font installed on your system. Note that non-Unicode APL fonts like "Dyalog Std" or "Causeway" won't work!

Most modern Browsers (such as Internet Explorer 6 or later, Firefox v2 or later, Safari v3 or later) should be fine. However, we have found problems using Firefox v2 on the Macintosh (the Windows version is OK, and Firefox v3 on the Macintosh is OK).

APL code on this Wiki is encoded using Unicode UTF-8. It should display correctly provided you have at least one of these APL fonts installed on your system:

If you don't have either of these fonts installed, the Wiki's style sheets are set to fall back on Microsoft's Arial font. Some versions of this font (e.g. the "Arial Unicode MS" version which ships with the international support component of MS Office) do have the APL characters, but it is not a monospaced font. This means that code samples will display the correct characters, but may not be aligned correctly.

If you do not have either of the APL fonts listed nor a suitable version of Microsoft's Arial font, APL characters will not display properly.

Here's a sample of text which should display in the APL font:

    X ← 3 3⍴÷⍳9 ⋄ Y ← DATA[⍋DATA] ⍝ A comment

It should appear in your browser something like this:

apl_font_ok.jpg

(this is a picture, not text; it will always display APL chars)

If it looks more like this then you do not have the APL font installed:

apl_font_bad.jpg

Back

Contents

Next>


CategoryAboutApl  CategoryGuides  CategoryAplx

LearnApl/LearningApl (last edited 2018-01-17 09:25:47 by ErikKonstantopoulos)