DYNA26: 27 April 2026. More info

New to Programming

An introduction to APL for those who have not programmed before

These resources assume no prior programming experience.

For those who like to learn by doing, there are interactive tutorials, exercises, and resources that enable you to develop your knowledge of Dyalog APL at your own pace.

If you like exploring reference material, there are guides that break down concepts into manageable lessons and websites that can expand your understanding.

Prefer to see things in action? Our video tutorials provide clear explanations and demonstrations of various APL concepts, all presented by experienced APL programmers.

Learn by Doing

TryAPL offers an interactive environment that allows users to play with simple APL expressions. Its Learn tab includes tutorials in which various scenarios are explored.

The APL Challenge is a quarterly competition aimed specifically at newcomers to APL. Its ten entry-level problems offer a chance of winning cash prizes.

APL Quest is a set of 110 easy-to-intermediate-level problems that can be solved in one line of code. It includes automatic grading, reference solutions, and walkthroughs. These problems were originally part of the APL Problem Solving Competition, which ran from 2009 until 2023. It is more advanced than the APL Challenge, but still aimed at newcomers to APL.

The APL Tutor is a conversational tutorial that takes you through the foundations of APL (terminology, conventions, and functionality). It includes exercises in reading and writing APL. It looks a little dated but is a useful introduction.

Study Materials

Mastering Dyalog APL by Bernard Legrand is a comprehensive guide to both the APL language and the Dyalog development environment.

Watch and Learn

Dyalog Basics: Namespaces in Dyalog is an introduction to namespaces, including what they are, why they’re useful, how to create and use them, the system function ⎕NS, the root namespace #, the namespace ⎕SE, and namespace references.
APL Seeds was a series of events aimed at new and prospective users of APL. Each event comprised brief overviews of the language, introductions to available resources, and demonstrations of real-world applications using APL. Recordings of the presentations (and downloadable materials) are available.

Learning Support and Community

Getting started with any new programming language can seem like a daunting task, and you might appreciate some individual/specific guidance to help you if you encounter issues.

If you prefer more directed learning, or would like to attend hands-on sessions with your peers, we offer various training courses and workshops.

In addition to asking us questions directly (in the Dyalog Forums or through one of our social media channels), APL has a thriving and enthusiastic community of users who are very happy to answer questions:

Join the APL Orchard, a friendly chat room where you can ask questions and learn from the community.

Find answers to common problems or ask your own questions in Stack Overflow’s active APL community.

Join discussions about APL (as well as other array languages) on the r/apljk subreddit.


You Can Also Connect With Us on These Platforms


Next Steps
Congratulations, you’ve mastered the basics and are ready to take the next steps on your APL journey! See what resources are available to help you to advance your Dyalog APL skills.
Dyalog D logo
Adám Brudzewsky
Learning APL is different but you’re not on your own
If you have not been able to find the answers you want, you can ask your question in the “New to Dyalog” channel of our forums.

Adám Brudzewsky, Head of Language Design

Get Support
Technical advice and assistance on all aspects of Dyalog usage is available by e-mail (support@dyalog.com) and/or telephone (+44 1256 830030 – limited to U.K. office hours). Limited advice on design and coding is available, but is not intended to replace the use of the printed and on-line documentation. Except when reporting an issue with the software, users are encouraged to seek advice from the user community via the Dyalog Forum (reading the content of the forums does not require membership).