There is an online APL tutorial that is good for beginners as well, and AFAIK it is mostly only APL2 syntax:
http://tutorial.apl2000.com:9005 On Wed, Dec 20, 2023 at 9:02 AM <bug-apl-requ...@gnu.org> wrote: > Send Bug-apl mailing list submissions to > bug-apl@gnu.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.gnu.org/mailman/listinfo/bug-apl > or, via email, send a message with subject or body 'help' to > bug-apl-requ...@gnu.org > > You can reach the person managing the list at > bug-apl-ow...@gnu.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Bug-apl digest..." > > > Today's Topics: > > 1. Re: Getting started with APL (Dr. Jürgen Sauermann) > 2. Re: Getting started with APL (Garjola Dindi) > 3. Re: Getting started with APL (Ala'a Mohammad) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 19 Dec 2023 18:41:50 +0100 > From: Dr. Jürgen Sauermann <m...@xn--jrgen-sauermann-zvb.de> > To: Garjola Dindi <garj...@garjola.net>, bug-apl@gnu.org > Subject: Re: Getting started with APL > Message-ID: > <16ec2b23-8527-495e-8286-104793378...@xn--jrgen-sauermann-zvb.de> > Content-Type: text/plain; charset=UTF-8; format=flowed > > Hi, > > GNU APL is not fully compatible with Dyalog APL. > > GNU APL is (to the extent possible) compatible with IBM APL2. > As long as you only use the APL features that are standardized > (which means ISO standard 13751) you are safe and the > differences between APL interpreters still around (Dyalog, > IBM, NGN, and GNU APL) are relatively minor. > > If you choose to walk along the Dyalog path (which may make sense > under certain circumstances) then your programs will not be portable > to other APLs or to operating systems not supported by Dyalog. > > Same story as Windows for operating systems (more convenient at > the start, but a truckload of troubles later on). Many like it, some > do not for good reasons (freedom of software etc). > > If you only want to learn the basics of APL (as opposed to selling or > sharing your APL programs with others) then any of the different > APL interpreters around should be fine for you and then the proprietary > ones like Dyalog are IMHO better avoided. > > I would also assume that Dyalog and IBM APL2 are easier to install > on Windows while GNU APL is easier to install on GNU/Linux or BSD. > > Best Regards, > Jürgen > > > On 12/19/23 12:58, Garjola Dindi wrote: > > Hi, > > > > Thanks for your prompt answer. I will have a look at those. Is > > "Mastering Dyalog APL" compatible with GNU APL? I was affraid that I > > would have trouble with this book if there are example code which only > > works with Dyalog. > > > > Thanks. > > > > G. Dindi > > > > On Tue 19-Dec-2023 at 11:50:33 +01, Dr. Jürgen Sauermann > > <m...@xn--jrgen-sauermann-zvb.de> > > wrote: > >> Hi Gariola, > >> > >> I believe that the simplest way of learning APL is by examples. > >> There are many good books around, for example Dyalogs > >> "Mastering Dyalog APL": > >> > >> https://www.dyalog.com/uploads/documents/MasteringDyalogAPL.pdf > >> > >> I personnaiiy like "APL ― An Interactive Approach" by Gilman and Allen > >> (not sure though if it is the one I used to learn APL). Have a look at: > >> > >> https://aplwiki.com/wiki/Books > >> > >> for more pointers. > >> > >> Best Regards, > >> Jürgen > >> > >> On 12/19/23 09:49, Garjola Dindi wrote: > >> > >> > >> Hi, > >> > >> Maybe this is not the right place to ask this question. Do not hesitate > >> to tell me so if that’s the case. > >> > >> I am completely new to APL and I am looking for a learning resource > >> (preferably a book, but other media would be fine) that would be > >> compatible with GNU APL. I have found documentation for proprietary > >> versions of APL that I prefer to stay away from and I understand that > >> these have substantial differences wrt GNU APL. > >> > >> I have browsed the resources available at > >> https://www.gnu.org/software/apl/Community.html, but I find them > >> difficult for a beginner like me and I would need a more structured > >> approach to learning APL. > >> > >> Do not hesitate to point me somewhere else if this is not the > >> appropriate forum for my request. > >> > >> Thanks for your time and attention. > >> > >> G. Dindi > >> > > > > > ------------------------------ > > Message: 2 > Date: Wed, 20 Dec 2023 13:40:09 +0100 > From: Garjola Dindi <garj...@garjola.net> > To: bug-apl@gnu.org > Subject: Re: Getting started with APL > Message-ID: <87zfy5gi8m....@pc-117-162.gandi.net> > Content-Type: text/plain; charset=utf-8 > > > Hi, > > Thanks again for this detailed response. > > I favor free software and I use GNU/Linux. I also live in Emacs and I > find the GNU APL mode very nice. So I think that with those and GNU APL > I have good tools ;) > > I can get easy access to the 2 following books: > > - APL With a Mathematical Accent (C. A. Reiter) > - APL\360 AN INTERACTIVE APPROACH (Leonard Gilman, Allen Rose) > > And I also have the pdf for Mastering Dyalog APL from the link you > posted. > > So I think I am all set. I just need to start working on those. My goal > is to widen my horizons beyond OOP and FP to become a better programmer. > And also to have fun, of course. > > Thanks again to everyone who answered to my questions. You are a very > welcoming community. > > Cheers. > > G. Dindi > > > On Tue 19-Dec-2023 at 18:41:50 +01, Dr. Jürgen Sauermann > <m...@xn--jrgen-sauermann-zvb.de> > wrote: > > Hi, > > > > GNU APL is not fully compatible with Dyalog APL. > > > > GNU APL is (to the extent possible) compatible with IBM APL2. > > As long as you only use the APL features that are standardized > > (which means ISO standard 13751) you are safe and the > > differences between APL interpreters still around (Dyalog, > > IBM, NGN, and GNU APL) are relatively minor. > > > > If you choose to walk along the Dyalog path (which may make sense > > under certain circumstances) then your programs will not be portable > > to other APLs or to operating systems not supported by Dyalog. > > > > Same story as Windows for operating systems (more convenient at > > the start, but a truckload of troubles later on). Many like it, some > > do not for good reasons (freedom of software etc). > > > > If you only want to learn the basics of APL (as opposed to selling or > > sharing your APL programs with others) then any of the different > > APL interpreters around should be fine for you and then the proprietary > > ones like Dyalog are IMHO better avoided. > > > > I would also assume that Dyalog and IBM APL2 are easier to install > > on Windows while GNU APL is easier to install on GNU/Linux or BSD. > > > > Best Regards, > > Jürgen > > > > > > On 12/19/23 12:58, Garjola Dindi wrote: > >> Hi, > >> > >> Thanks for your prompt answer. I will have a look at those. Is > >> "Mastering Dyalog APL" compatible with GNU APL? I was affraid that I > >> would have trouble with this book if there are example code which only > >> works with Dyalog. > >> > >> Thanks. > >> > >> G. Dindi > >> > >> On Tue 19-Dec-2023 at 11:50:33 +01, Dr. Jürgen Sauermann > >> <m...@xn--jrgen-sauermann-zvb.de> > >> wrote: > >>> Hi Gariola, > >>> > >>> I believe that the simplest way of learning APL is by examples. > >>> There are many good books around, for example Dyalogs > >>> "Mastering Dyalog APL": > >>> > >>> https://www.dyalog.com/uploads/documents/MasteringDyalogAPL.pdf > >>> > >>> I personnaiiy like "APL ― An Interactive Approach" by Gilman and Allen > >>> (not sure though if it is the one I used to learn APL). Have a look at: > >>> > >>> https://aplwiki.com/wiki/Books > >>> > >>> for more pointers. > >>> > >>> Best Regards, > >>> Jürgen > >>> > >>> On 12/19/23 09:49, Garjola Dindi wrote: > >>> > >>> Hi, > >>> > >>> Maybe this is not the right place to ask this question. Do not hesitate > >>> to tell me so if that’s the case. > >>> > >>> I am completely new to APL and I am looking for a learning resource > >>> (preferably a book, but other media would be fine) that would be > >>> compatible with GNU APL. I have found documentation for proprietary > >>> versions of APL that I prefer to stay away from and I understand that > >>> these have substantial differences wrt GNU APL. > >>> > >>> I have browsed the resources available at > >>> https://www.gnu.org/software/apl/Community.html, but I find them > >>> difficult for a beginner like me and I would need a more structured > >>> approach to learning APL. > >>> > >>> Do not hesitate to point me somewhere else if this is not the > >>> appropriate forum for my request. > >>> > >>> Thanks for your time and attention. > >>> > >>> G. Dindi > >>> > > > > > > > > -- > > > > > ------------------------------ > > Message: 3 > Date: Wed, 20 Dec 2023 18:44:23 +0400 > From: "Ala'a Mohammad" <amal...@gmail.com> > To: Garjola Dindi <garj...@garjola.net> > Cc: bug-apl@gnu.org > Subject: Re: Getting started with APL > Message-ID: > <CAJ--6mbVUvREAH9JP-uU7Yv7Cx4VSmn-z2JTWNG8cu= > fj9c...@mail.gmail.com> > Content-Type: text/plain; charset="UTF-8" > > Hi Garjola, > > The people had already mentioned the books and gave suggestions which > are very useful. > > I'd like to mention the following tripping points (which I fall for), > to keep in mind which minimize confusion: > - Gnu APL is in implementation of ISO/IEC 13751:2001 (and is neither > APL\360 nor APL2). > - Evaluation is always from right to left (parentheses are your friends). > - You may turn Boxing On with ( ]BOXING [OFF|2|3|4|7|8|9] ) as it > helped me initially see and notice when a value was scalar or not. > - Think in arrays operations not in loops. Whenever you start thinking > in iterations (one element at a time), it is usually a habit carried > over from other languages. try to resist it and see how it is done in > APL. > - GNU APL (and others Like Dyalog APL) have extensions. Do not > hesitate from learning to understand and use them. > > Otherwise ask here and we'll try to help. > > Happy APL adventure. > > Regards, > > Ala'a > > On Wed, Dec 20, 2023 at 4:40 PM Garjola Dindi <garj...@garjola.net> wrote: > > > > > > Hi, > > > > Thanks again for this detailed response. > > > > I favor free software and I use GNU/Linux. I also live in Emacs and I > > find the GNU APL mode very nice. So I think that with those and GNU APL > > I have good tools ;) > > > > I can get easy access to the 2 following books: > > > > - APL With a Mathematical Accent (C. A. Reiter) > > - APL\360 AN INTERACTIVE APPROACH (Leonard Gilman, Allen Rose) > > > > And I also have the pdf for Mastering Dyalog APL from the link you > > posted. > > > > So I think I am all set. I just need to start working on those. My goal > > is to widen my horizons beyond OOP and FP to become a better programmer. > > And also to have fun, of course. > > > > Thanks again to everyone who answered to my questions. You are a very > > welcoming community. > > > > Cheers. > > > > G. Dindi > > > > > > On Tue 19-Dec-2023 at 18:41:50 +01, Dr. Jürgen Sauermann > > <m...@xn--jrgen-sauermann-zvb.de> > > wrote: > > > Hi, > > > > > > GNU APL is not fully compatible with Dyalog APL. > > > > > > GNU APL is (to the extent possible) compatible with IBM APL2. > > > As long as you only use the APL features that are standardized > > > (which means ISO standard 13751) you are safe and the > > > differences between APL interpreters still around (Dyalog, > > > IBM, NGN, and GNU APL) are relatively minor. > > > > > > If you choose to walk along the Dyalog path (which may make sense > > > under certain circumstances) then your programs will not be portable > > > to other APLs or to operating systems not supported by Dyalog. > > > > > > Same story as Windows for operating systems (more convenient at > > > the start, but a truckload of troubles later on). Many like it, some > > > do not for good reasons (freedom of software etc). > > > > > > If you only want to learn the basics of APL (as opposed to selling or > > > sharing your APL programs with others) then any of the different > > > APL interpreters around should be fine for you and then the proprietary > > > ones like Dyalog are IMHO better avoided. > > > > > > I would also assume that Dyalog and IBM APL2 are easier to install > > > on Windows while GNU APL is easier to install on GNU/Linux or BSD. > > > > > > Best Regards, > > > Jürgen > > > > > > > > > On 12/19/23 12:58, Garjola Dindi wrote: > > >> Hi, > > >> > > >> Thanks for your prompt answer. I will have a look at those. Is > > >> "Mastering Dyalog APL" compatible with GNU APL? I was affraid that I > > >> would have trouble with this book if there are example code which only > > >> works with Dyalog. > > >> > > >> Thanks. > > >> > > >> G. Dindi > > >> > > >> On Tue 19-Dec-2023 at 11:50:33 +01, Dr. Jürgen Sauermann > > >> <m...@xn--jrgen-sauermann-zvb.de> > > >> wrote: > > >>> Hi Gariola, > > >>> > > >>> I believe that the simplest way of learning APL is by examples. > > >>> There are many good books around, for example Dyalogs > > >>> "Mastering Dyalog APL": > > >>> > > >>> https://www.dyalog.com/uploads/documents/MasteringDyalogAPL.pdf > > >>> > > >>> I personnaiiy like "APL ― An Interactive Approach" by Gilman and > Allen > > >>> (not sure though if it is the one I used to learn APL). Have a look > at: > > >>> > > >>> https://aplwiki.com/wiki/Books > > >>> > > >>> for more pointers. > > >>> > > >>> Best Regards, > > >>> Jürgen > > >>> > > >>> On 12/19/23 09:49, Garjola Dindi wrote: > > >>> > > >>> Hi, > > >>> > > >>> Maybe this is not the right place to ask this question. Do not > hesitate > > >>> to tell me so if that’s the case. > > >>> > > >>> I am completely new to APL and I am looking for a learning resource > > >>> (preferably a book, but other media would be fine) that would be > > >>> compatible with GNU APL. I have found documentation for proprietary > > >>> versions of APL that I prefer to stay away from and I understand that > > >>> these have substantial differences wrt GNU APL. > > >>> > > >>> I have browsed the resources available at > > >>> https://www.gnu.org/software/apl/Community.html, but I find them > > >>> difficult for a beginner like me and I would need a more structured > > >>> approach to learning APL. > > >>> > > >>> Do not hesitate to point me somewhere else if this is not the > > >>> appropriate forum for my request. > > >>> > > >>> Thanks for your time and attention. > > >>> > > >>> G. Dindi > > >>> > > > > > > > > > > > > > -- > > > > > > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > Bug-apl mailing list > Bug-apl@gnu.org > https://lists.gnu.org/mailman/listinfo/bug-apl > > > ------------------------------ > > End of Bug-apl Digest, Vol 123, Issue 3 > *************************************** >