Glee
Glee is a J-inspired left-to-right evaluated ASCII array language which is "targeted at applications where languages like PERL, Python, and Java have found secure homes." It has a focus on programming features which are generally uncommon in array languages, allowing variable references, complex scoping, built-in stream and socket support, pre-made container objects, fields and many others.
Glee has not been updated since 2004. No activity has been logged on the main site since that year.
Design
Glee is designed as a more convenient APL-style language in the creator's eyes:
Glee is my-own, and to me, my-better APL. It keeps the features I enjoyed in APL and removes the warts. It supplies features I always wished APL had.
In that vein of thought, it completely abandons many tools supported in modern APL implementations.
- There are no tradfns and no dfns. All functions are declared using blocks, which take their arguments via variable references.
- The language is evaluated left to right.
- The general method of looping is via imperative looping constructs (
:for
,:while
, etc.) which take blocks as arguments. - Operators (like APL primitives) can be up to 3 symbols in length.
- All values are objects with their own properties (akin to Ruby/Perl). They can be checked using a
:
suffix. - Glee has numerous reserved words which all start with a
#
. These provide additional functions and values outside the symbolic primitives included.
Pretty-printing is not done on values by default. Higher depth arrays can be inspected using the %**
operator.
Glee comes packaged with a GUI-based IDE with some debugging capability. It has been confirmed to work on Windows 10.
APL dialects [edit] | |
---|---|
Maintained | APL+Win ∙ APL2 ∙ APL64 ∙ APL\iv ∙ Aplette ∙ April ∙ Co-dfns ∙ Dyalog APL ∙ Dyalog APL Vision ∙ dzaima/APL ∙ GNU APL ∙ Kap ∙ NARS2000 ∙ Pometo ∙ TinyAPL |
Historical | A Programming Language ∙ A+ (A) ∙ APL# ∙ APL2C ∙ APL\360 ∙ APL/700 ∙ APL\1130 ∙ APL\3000 ∙ APL.68000 ∙ APL*PLUS ∙ APL.jl ∙ APL.SV ∙ APLX ∙ Extended Dyalog APL ∙ Iverson notation ∙ IVSYS/7090 ∙ NARS ∙ ngn/apl ∙ openAPL ∙ Operators and Functions ∙ PAT ∙ Rowan ∙ SAX ∙ SHARP APL ∙ Rationalized APL ∙ VisualAPL (APLNext) ∙ VS APL ∙ York APL |
Derivatives | AHPL ∙ BQN ∙ CoSy ∙ ELI ∙ Glee ∙ I ∙ Ivy ∙ J ∙ Jelly ∙ K (Goal, Klong, Q) ∙ KamilaLisp ∙ Lang5 ∙ Lil ∙ Nial ∙ RAD ∙ Uiua |
Overviews | Comparison of APL dialects ∙ Timeline of array languages ∙ Timeline of influential array languages ∙ Family tree of array languages |