Main Page: Difference between revisions

From APL Wiki
Jump to navigation Jump to search
Miraheze>Marshall
Miraheze>Adám Brudzewsky
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 ===
[https://tryapl.org/?a=%27%2C%27%28%u2260%u2286%u22A2%29%27comma%2Cdelimited%2Ctext%27&run Try it now!]
<source lang=apl>
<source lang=apl>
       ','(≠⊆⊢)'comma,delimited,text'
       ','(≠⊆⊢)'comma,delimited,text'
Line 39: Line 40:
└─────┴─────────┴────┘
└─────┴─────────┴────┘
</source>
</source>
{{Works in|[[Dyalog APL]], [[dzaima/APL]], [[NARS2000]], [[ngn/apl]]}}
{{Works in|[[Dyalog 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":
[https://tio.run/##SyzI0c1Lz/v//1Hf1EdtE8rzi3JSgLSRAhg@6lpioGBopGAK5JgoGHJBFD3qXQNlVT9qm2io8Kh366OOFXqPOpYbK5jYauvrHFpvqADU96hjht6jrmnIvJ69j7qagOprFcA2/f8PAA Try it online!]
<source lang=apl>
<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
Line 55: Line 57:
0 0 1 0 0 0
0 0 1 0 0 0
</source>
</source>
{{Works in|[[Dyalog APL]], [[dzaima/APL]], [[GNU APL]], [[NARS2000]], [[ngn/apl]]}}
{{Works in|[[Dyalog APL]], [[ngn/apl]]}}


{{APL programming language}}
{{APL programming language}}
{{APL community}}
{{APL community}}

Revision as of 07:44, 30 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

Try it now!

      ','(≠⊆⊢)'comma,delimited,text'
┌─────┬─────────┬────┐
│comma│delimited│text│
└─────┴─────────┴────┘
Works in: Dyalog APL

Conway's "Game of Life"

John Scholes is famous for the following implementation of Conway's "Game of Life": Try it online!

      ⎕←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
Works in: Dyalog APL, ngn/apl

Template:APL programming language

APL community [edit]
Activities ConferencesUser groups and meetupsIverson AwardExercises
Chat rooms and forums APL FarmAPL OrchardAPL Wiki
People Phil AbramsBrian BeckerBob BerneckyLarry BreedCharles BrennerJim BrownAdám BrudzewskyGitte ChristensenPeter DonnellyJohn EarnestAdin FalkoffGarth FosterLib GibsonAaron HsuRoger HuiKen IversonMorten KrombergDick LathwellMarshall LochbaumEugene McDonnellRoger MooreTrenchard MoreAlan PerlisRaghu RanganathanHenry RichAl RoseJohn ScholesIan SharpBob SmithGeoff StreeterJoey TuttleArthur Whitney
Other APL TrustAPL Quote QuadBlogsBooksCase studiesFamous APL usersHumourJobsMerchandisePapersPodcastsTryAPLTry It OnlineVideo channels