Main Page: Difference between revisions
Miraheze>Adám Brudzewsky No edit summary |
Miraheze>Adám Brudzewsky No edit summary |
||
Line 2: | Line 2: | ||
__NOTOC__ | __NOTOC__ | ||
{| style="border-spacing: 1ex;" | {| style="border-spacing: 1ex;" | ||
| style="background:#f9f9f9;border:1px solid #ddd; | | style="background:#f9f9f9;border:1px solid #ddd;" colspan="2" | | ||
= Welcome to APL Wiki | {| style="border-spacing: 1em;" | ||
| style="width:50%;text-align:center;" | <span style="font-size:xx-large">Welcome to APL Wiki,</span></br> | |||
[[Special:Statistics|{{NUMBEROFARTICLES}}]] articles about APL that anyone can edit | |||
|| | |||
APL is an [https://en.wikipedia.org/wiki/Array_programming array-oriented programming language]. Its powerful, concise [[syntactic overview|syntax]] lets you develop shorter programs that enable you to think more about the problem you're trying to solve than how to express it to a computer. | |||
|} | |||
|- style="vertical-align:top" | |- style="vertical-align:top" | ||
| style="background:#f5fffa;border:1px solid #cef2e0;padding:0 1em" | | | style="background:#f5fffa;border:1px solid #cef2e0;padding:0 1em" | | ||
= | <h2 style="margin:.75em 0; background:#cef2e0; font-family:inherit; font-size:120%; font-weight:bold; border:1px solid #a3bfb1; color:#000; padding:0.2em 0.4em;">Running APL</h2> | ||
{{Main|Running APL}} | {{Main|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. | 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. | ||
| style="background:#f5faff;border:1px solid #cee0f2;padding:0 1em" | | | style="background:#f5faff;border:1px solid #cee0f2;padding:0 1em" | | ||
= | <h2 style="margin:0.75em 0; background:#cedff2; font-family:inherit; font-size:120%; font-weight:bold; border:1px solid #a3b0bf; color:#000; padding:0.2em 0.4em;>Introduction to APL</h2> | ||
{{Main|Tutorials}} | {{Main|Tutorials}} | ||
Line 19: | Line 23: | ||
|- style="vertical-align:top" | |- style="vertical-align:top" | ||
| style="background:#faf5ff;border:1px solid #e0cef2;padding:0 1em" | | | style="background:#faf5ff;border:1px solid #e0cef2;padding:0 1em" | | ||
= | <h2 style="margin:0.75em 0; background:#ddcef2; font-family:inherit; font-size:120%; font-weight:bold; border:1px solid #afa3bf; color:#000; padding:0.2em 0.4em">Who uses APL?</h2> | ||
There are many [[case studies]] of both hobby and real-world APL applications. | There are many [[case studies]] of both hobby and real-world APL applications. | ||
Line 26: | Line 30: | ||
There are active [[:Category:user groups|user groups]] all around the globe, many of these hold regular in-person meet-ups. | There are active [[:Category:user groups|user groups]] all around the globe, many of these hold regular in-person meet-ups. | ||
| style="background:#fff5fa;border:1px solid #f2cee0;padding:0 1em" | | | style="background:#fff5fa;border:1px solid #f2cee0;padding:0 1em" | | ||
= | <h2 style="margin:0.75em 0; background:#f2cedd; font-family:inherit; font-size:120%; font-weight:bold; border:1px solid #bfa3af; color:#000; padding:0.2em 0.4em">Contributing</h2> | ||
{{Main|Contributing}} | {{Main|Contributing}} | ||
APL Wiki is an online open-content collaborative knowledge base; that is, a voluntary association of individuals and groups working to develop a common knowledge resource. The structure of the project allows anyone with an Internet connection to alter its content. APL Wiki is not directly affiliated with any particular individuals, companies, or organisations. | APL Wiki is an online open-content collaborative knowledge base; that is, a voluntary association of individuals and groups working to develop a common knowledge resource. The structure of the project allows anyone with an Internet connection to alter its content. APL Wiki is not directly affiliated with any particular individuals, companies, or organisations. | ||
|- | |- | ||
| colspan="2" style="border:1px solid #e2e2e2;padding:0 1em" | | | colspan="2" style="border:1px solid #e2e2e2;padding:0 1em" | | ||
= | <h2 style="margin:0.75em 0; background:#eeeeee; border:1px solid #ddd; color:#222; padding:0.2em 0.4em; font-size:120%; font-weight:bold; font-family:inherit;">Examples</h2> | ||
{{Main|Examples}} | {{Main|Examples}} | ||
APL's terseness means that substantial programs are | APL's terseness means that substantial programs are expressible 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!] | [https://tryapl.org/?a=%27%2C%27%28%u2260%u2286%u22A2%29%27comma%2Cdelimited%2Ctext%27&run Try it now!] |
Revision as of 12:41, 31 October 2019
| |||
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
Taking up APL can ba a daunting task; 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. |
Contributing
APL Wiki is an online open-content collaborative knowledge base; that is, a voluntary association of individuals and groups working to develop a common knowledge resource. The structure of the project allows anyone with an Internet connection to alter its content. APL Wiki is not directly affiliated with any particular individuals, companies, or organisations. | ||
Examples
APL's terseness means that substantial programs are expressible in a small space, relative to many other programming languages. Here are some examples: Split text by delimiter','(≠⊆⊢)'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": ⊢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 | Conferences ∙ User groups and meetups ∙ Iverson Award ∙ Exercises |
Chat rooms and forums | APL Farm ∙ APL Orchard ∙ APL Wiki |
People | Phil Abrams ∙ Brian Becker ∙ Bob Bernecky ∙ Larry Breed ∙ Charles Brenner ∙ Jim Brown ∙ Adám Brudzewsky ∙ Gitte Christensen ∙ Peter Donnelly ∙ John Earnest ∙ Adin Falkoff ∙ Garth Foster ∙ Lib Gibson ∙ Aaron Hsu ∙ Roger Hui ∙ Ken Iverson ∙ Morten Kromberg ∙ Dick Lathwell ∙ Marshall Lochbaum ∙ Eugene McDonnell ∙ Roger Moore ∙ Trenchard More ∙ Alan Perlis ∙ Raghu Ranganathan ∙ Henry Rich ∙ Al Rose ∙ John Scholes ∙ Ian Sharp ∙ Bob Smith ∙ Geoff Streeter ∙ Joey Tuttle ∙ Arthur Whitney |
Other | APL Trust ∙ APL Quote Quad ∙ Blogs ∙ Books ∙ Case studies ∙ Famous APL users ∙ Humour ∙ Jobs ∙ Merchandise ∙ Papers ∙ Podcasts ∙ TryAPL ∙ Try It Online ∙ Video channels |