DYNA25: Spring Edition is taking place on 7 April in New York City. More info

APL Will Change the Way You .

Dyalog delivers a world-class APL development environment that allows both Subject Matter Experts and IT specialists to efficiently convert their ideas into software solutions

APL Forge 2025 is open

The APL Forge is an annual Dyalog competition that promotes APL by challenging participants to push the boundaries of this powerful language. Competitors develop innovative open-source libraries and commercial applications, contributing to the growth of the APL community.
in Competitions

The APL Challenge Round 2024.4 is now open

Join the APL Challenge and transform ideas into code with ease. No programming experience? No problem! Our questions guide you through the basics of APL, empowering you to solve unique problems in a world-class programming environment.
in Competitions

Dyalog version 19.0 is now available

Dyalog version 19.0 is now available and is supported under Microsoft Windows, IBM AIX, Linux (including the Raspberry Pi) and Apple macOS.
in Announcements

You can also stay up to date with Dyalog on these channels:

Aaron Hsu explains what the APL programming language offers and outlines some of its key benefits.

Concise, Expressive, Array-Centric

What is APL and what are its Benefits?

APL is an array-oriented programming language. Its natural, concise syntax lets you develop shorter programs while thinking more about the problem you’re trying to solve than how to express it to a computer.

APL uses its own character set rather than reserved words written out in English like most other languages, like C or Python. As a language, APL sits at a very high level of abstraction, making it well suited to concise formulations of algorithms.

Dyalog is the Modern APL

We continually provid and improve tools and interfaces to integrate Dyalog with the latest technology stacks.

Microsoft .NET logo

.NET Integration

Take advantage of the .NET ecosystem, all without leaving APL

Python logo

Python

Combine Python packages with the expressive power of APL – from Python or from APL

SQL logo

SQL Databases

Interface to SQL databases including Oracle, Access, MySQL and DB2

Docker Containers

Deploy your apps quickly with our public Docker containers

Curious?

(Lorem ipsum dolor sit amet, consectetur adipiscing elit.)

Dyalog APL is Unique Among Programming Languages

Dyalog has been honed over the last four decades into a robust environment for creating concise, powerful, software solutions

Array Oriented

APL directly manipulates arrays without loops or mapping

APL directly manipulates arrays without loops or mapping

Natural Representation: Most data collected from the real world fits naturally into a list, table or cube.

Highly Performant

Interpreted APL is competitive with compiled code

But still quick to Iterate: Arrays consume less memory and allow faster iteration than other structures.

Concise Elegance

As in mathematics, symbols remove ambiguity

The APL Syntax: a blend of symbols and arrays for unparalleled power and elegance.

Reliability

Write now, run forever

Timeless Solutions: Refactor code when your business requirement changes, not simply when technology changes.

Extensive Integration

A rich ecosystem of tools and interfaces

Modern Convenience: APL remains modern and relevant through its enduring design.

An Enduring Community

Decades of history and experience

We’ve Been Around the Block: Software engineers and subject matter experts, all happy to share.

Tool of Thought

Explore data in real time to construct solutions

Algorithm Mining: Interactive environment allows discovery of algorithms through rapid experimentation.

Multi-paradigm

Array-centric core, object-oriented features

Flexible Solutions: Use the right tool to suit your needs, optimise your workflow effectively.

Join Our Growing GitHub Community!

Stay updated with our latest projects, contribute to open-source initiatives, and connect with like-minded developers. Your support helps us continue to innovate and share valuable resources with the programming world.

Apprehensive? Understandable.

(APL isn't like the status quo.)

Team Dyalog

We promote a culture where innovation, fun, pride, and acceptance is part of our everyday life. We come from a variety of backgrounds, and we learn from each other’s diversity.

Abs Suri
Abs
System Administrator
John Daintree
John
Chief Architect
Jason Rivers
Jason
IT Manager
Josh David
Josh
APL Consultant

Videos

An extensive collection of videos cover all aspects of the language.

Partition with a Twist (APL Quest 2023-10)

Partition with a Twist (APL Quest 2023-10)

Write a function that: • takes a non-negative integer left argument, N • takes a space-delimited character vector right argument, string • returns an array of length N where: ⠀○ if N is less than or equal to the number of sub-arrays in stri...View

/

Flipping Pairs (APL Quest 2023-9)

Flipping Pairs (APL Quest 2023-9)

Write a function that: • takes a non-empty non-scalar array right argument • returns an array of the same shape as the argument, but with pairs of elements along the last axis “flipped”. If the array has an odd number of elements in the last ...View

/

Critical Thinking (APL Quest 2023-8)

Critical Thinking (APL Quest 2023-8)

The biorhythm theory is a pseudo-scientific idea that one’s life is affected by rhythmic cycles beginning from one’s date of birth. “Critical days” are days when a cycle crosses the x-axis. Double critical days can be calculated using multipl...View

/

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).

Search our website...