Difference between revisions of "Language overview"

From APL Wiki
Jump to navigation Jump to search
m (APL language category)
m
Line 10: Line 10:
 
== Community == {{APL community|}}
 
== Community == {{APL community|}}
 
== Built-ins == {{APL built-ins|}}
 
== Built-ins == {{APL built-ins|}}
[[Category:APL language
+
[[Category:APL language]]

Revision as of 15:25, 30 April 2020


This page gives a structured overview of the APL programming language.

Development

APL development [edit]
Interface SessionTyping glyphs (on Linux) ∙ FontsText editors
Publications IntroductionsLearning resourcesSimple examplesAdvanced examplesMnemonicsStandardsA Dictionary of APLCase studiesDocumentation suitesBooksPapersVideosPeriodicalsTerminology (German) ∙ Neural networksError trapping with Dyalog APL (in forms)
Sharing code Backwards compatibilityAPLcartAPLTreeAPL-CationDfns workspaceTatin
Vendors APL2000DyalogGNU APL community ∙ IBMIPSASTSC

Features

APL features [edit]
Built-ins Primitives (functions, operators) ∙ Quad name
Array model ShapeRankDepthBoundIndex (Indexing) ∙ AxisRavelRavel orderElementScalarVectorMatrixSimple scalarSimple arrayNested arrayCellMajor cellSubarrayEmpty arrayPrototype
Data types Number (Boolean, Complex number) ∙ Character (String) ∙ BoxNamespace
Concepts and paradigms Leading axis theoryScalar extensionConformabilityLeading axis agreementScalar functionPervasionGlyphIdentity elementComplex floorTotal array ordering
Errors LIMIT ERRORRANK ERRORSYNTAX ERRORDOMAIN ERRORLENGTH ERRORINDEX ERRORVALUE ERROR

Syntax

APL syntax [edit]
General Comparison with traditional mathematicsPrecedenceTacit programming (Hook)
Array Numeric literalStringStrand notationObject literalArray notation
Function ArgumentFunction valenceDerived functionDerived operatorNiladic functionMonadic functionDyadic functionAmbivalent functionDefined function (traditional)DfnFunction train
Operator OperandOperator valenceTradopDopDerived operator
Assignment MultipleIndexedSelectiveModified
Other Function axisBranchQuad nameSystem commandUser commandKeywordDot notationFunction-operator overloadingControl structure

Dialects

APL dialects [edit]
Maintained APL+WinAPL2APL64APL\ivApletteAprilCo-dfnsDyalog APLdzaima/APLExtended Dyalog APLGNU APLKAPNARS2000Pometo
Historical A Programming LanguageA+ (A) ∙ APL#APL\360APL/700APL\1130APL\3000APL.68000APL*PLUSAPL.jlAPL.SVAPLXIverson notationIVSYS/7090NARSngn/aplopenAPLPATRowanSAXSHARP APLRationalized APLVisualAPL (APLNext) ∙ VS APLYork APL
Derivatives AHPLBQNCoSyELIGleeIIvyJJellyJellyfishK (Q, KDB+) ∙ NialRAD
Overviews Timeline of array languagesTimeline of influential array languagesFamily tree of array languages

Community

APL community [edit]
Activities ConferencesAdvent of CodeAPL CampfireAPL CultivationAPL Meetup (Portuguese) ∙ APL Problem Solving CompetitionAPL SeedsArray CastBAA sessionsCode golfDyalog user meetingsDyalog webinarsIverson AwardSharing code
User groups APL Borealis (Canada) ∙ APL et J (France) ∙ APL Germany (terminology) ∙ BAA (UK) ∙ FinnAPL (Finland) ∙ JAPLA (Japan) ∙ SAUG (Switzerland) ∙ SIGAPL (USA) ∙ SwedAPL (Sweden)
People Phil AbramsBrian BeckerBob BerneckyLarry BreedCharles BrennerJim BrownAdám BrudzewskyGitte ChristensenPeter DonnellyAdin FalkoffGarth FosterAaron HsuRoger HuiKen IversonMorten KrombergMarshall LochbaumEugene McDonnellJon McGrewDonald McIntyreRoger MooreAlan PerlisHenry RichAl RoseWilliam RutiserJohn ScholesIan SharpBob SmithGeoff StreeterRoy SykesArthur Whitney
Other APL OrchardAPL Quote QuadAPL WikiBlogsBooksFamous APL usersForumsHumourJobsPapersSubredditsTryAPLTry It Online

Built-ins

APL built-ins [edit]
Primitive functions
Scalar
Monadic ConjugateNegateSignumReciprocalMagnitudeExponentialNatural LogarithmFloorCeilingFactorialNotPi TimesRollTypeImaginarySquare Root
Dyadic AddSubtractTimesDivideResiduePowerLogarithmMinimumMaximumBinomialComparison functionsBoolean functions (And, Or, Nand, Nor) ∙ GCDLCMCircularComplexRoot
Non-Scalar
Structural ShapeReshapeTallyDepthRavelEnlistTableCatenateReverseRotateTransposeRazeMixSplitEncloseNestCut (K)PairLinkPartitioned EnclosePartition
Selection FirstPickTakeDropUniqueIdentitySelectReplicateExpandSet functions (IntersectionUnionWithout) ∙ Bracket indexingIndex
Selector Index generatorGradeIndex OfInterval IndexIndicesDeal
Computational MatchNot MatchMembershipFindNub SieveEncodeDecodeMatrix InverseMatrix DivideFormatExecuteMaterialiseRange
Primitive operators Monadic EachCommuteConstantReplicateExpandReduceWindowed ReduceScanOuter ProductKeyI-beamSpawnFunction axis
Dyadic BindCompositions (Compose, Reverse Compose, Beside, Withe, Atop, Over) ∙ Inner ProductPowerAtUnderRankDepthVariantStencilCut (J)
Quad names
Arrays Index originMigration levelAtomic vector
Functions Name classCase convertUnicode convert
Operators SearchReplace