Main Page: Difference between revisions
Miraheze>Adám Brudzewsky |
Miraheze>Marshall |
||
Line 33: | Line 33: | ||
APL's terseness means that substantial programs are expressable in a small space, relative to many other programming languages. Here are some examples: | APL's terseness means that substantial programs are expressable in a small space, relative to many other programming languages. Here are some examples: | ||
=== Split text by delimiter === | === Split text by delimiter === | ||
< | <source lang=apl> | ||
','(≠⊆⊢)'comma,delimited,text' | ','(≠⊆⊢)'comma,delimited,text' | ||
┌─────┬─────────┬────┐ | ┌─────┬─────────┬────┐ | ||
│comma│delimited│text│ | │comma│delimited│text│ | ||
└─────┴─────────┴────┘ | └─────┴─────────┴────┘ | ||
</ | </source> | ||
{{Works in|[[Dyalog APL]], [[dzaima/APL]], [[NARS2000]], [[ngn/apl]]}} | {{Works in|[[Dyalog APL]], [[dzaima/APL]], [[NARS2000]], [[ngn/apl]]}} | ||
=== Conway's "Game of Life" === | === Conway's "Game of Life" === | ||
[[John Scholes]] is famous for the following implementation of Conway's "Game of Life": | [[John Scholes]] is famous for the following implementation of Conway's "Game of Life": | ||
< | <source lang=apl> | ||
⎕←world←2 2 2 2⊤0 12 5 2 4 1 | ⎕←world←2 2 2 2⊤0 12 5 2 4 1 | ||
0 1 0 0 0 0 | 0 1 0 0 0 0 | ||
Line 54: | Line 54: | ||
0 1 0 1 1 0 | 0 1 0 1 1 0 | ||
0 0 1 0 0 0 | 0 0 1 0 0 0 | ||
</ | </source> | ||
{{Works in|[[Dyalog APL]], [[dzaima/APL]], [[GNU APL]], [[NARS2000]], [[ngn/apl]]}} | {{Works in|[[Dyalog APL]], [[dzaima/APL]], [[GNU APL]], [[NARS2000]], [[ngn/apl]]}} | ||
{{APL programming language}} | {{APL programming language}} | ||
{{APL community}} | {{APL community}} |
Revision as of 12:27, 25 October 2019
This wiki is all about APL, an array-oriented programming language. It has a powerful, concise syntax that lets you develop shorter programs that enable you to think more about the problem you're trying to solve rather than how to express it to a computer.
Running APL
- Main article: Running APL
Traditionally a commercial language, there are now quite a few APL dialects available to download for free without feature limitations, and most of these can be tried online without installing anything.
Introduction to APL
- Main article: Tutorials
Taking up APL can ba a daunting task, but a few introductory guides have been created to help in the process:
Who uses APL?
There are many case studies of both hobby and real-world APL applications.
There is a popular APL chat room on Stack Exchange.
There are active user groups all around the globe, many of these hold regular in-person meet-ups.
Examples
- Main article: Examples
APL's terseness means that substantial programs are expressable in a small space, relative to many other programming languages. Here are some examples:
Split text by delimiter
','(≠⊆⊢)'comma,delimited,text' ┌─────┬─────────┬────┐ │comma│delimited│text│ └─────┴─────────┴────┘
Conway's "Game of Life"
John Scholes is famous for the following implementation of Conway's "Game of Life":
⎕←world←2 2 2 2⊤0 12 5 2 4 1 0 1 0 0 0 0 0 1 1 0 1 0 0 0 0 1 0 0 0 0 1 0 0 1 {↑1 ⍵∨.∧3 4=+/,¯1 0 1∘.⊖¯1 0 1∘.⌽⊂⍵} world 1 1 0 1 0 0 0 1 1 1 0 0 0 1 0 1 1 0 0 0 1 0 0 0
Template:APL programming language