Skip to content

TinyAPL 0.7.0.0

Choose a tag to compare

@RubenVerg RubenVerg released this 05 Sep 13:36
· 268 commits to main since this release

Syntax

  • Add wraps ⊏ and unwraps ⊐ _⊐ _⊐_
  • Add structs ⦃/⦄ and qualified access →
  • Add assignment types: ↩ modify, ⇇ constant, ↚ private

Primitives

  • Add Catenate ⍪
  • Add Precedes ⊲, Precedes or Identical ⊴, Succeeds or Identical ⊵ and Succeeds ⊳
  • Add Minimal ⇂ and Maximal ↾
  • Add Grade Up and Sort By Up ⍋ and Grade Down and Sort By Down ⍒
  • Add Sort Up ⊴ and Sort Down ⊵
  • Add Transpose ⍉
  • Add Matrix Inverse and Matrix Divide ⌹
  • Add Factorial and Binomial !
  • Add Raise ↗
  • Add Table ⊞
  • Add On Cells ◡ and On Scalars ◠
  • Add Boxed ᑣ and On Contents ᑒ
  • Add Inner Product ∙
  • Add Valences ⁖
  • Add Repeat and Until ⍣
  • Add Under ⍢

Quads

  • Add ⎕Type
  • Add ⎕Import
Supported primitives:
  ⍬
  + - × ÷ * ⍟ √ ⌊ ⌈ ⸠ < ≤ = ≥ > ≠ ∧ ∨ ⍲ ⍱ ⊕ ⊗ ≡ ≢ ⍴ , ⊖ ⍮ ⊂ ⊃ ⊇ ↑ ↓ ⊣ ⊢ ⍳ ⍸ ⌿ | ∡ ℜ ℑ ∪ ∩ ~ § ∊ ? ⌷ ϼ ⍪ ⍋ ⍒ ⊲ ⊴ ⊵ ⊳ ⇂ ↾ ⍉ ⌹ ! ↗
  ⍨ ⍆ ⍅ ↟ ↡ ¨ ᐵ ᑈ ⌸ ◡ ◠ ᑣ ᑒ ⊞
  ⍤ ⍥ ∘ ⍛ ⊸ ⟜ ⸚ ⇾ ⇽ ⍣ ⁖ ⍢ ∙
Supported quad names:
  ⎕io ⎕ct ⎕u ⎕l ⎕d ⎕seed ⎕unix ⎕ts ⎕math
  ⎕Exists ⎕Repr ⎕Delay ⎕Type
  
  
Supported features:
* dfns {code}, d-monadic-ops _{code}, d-dyadic-ops _{code}_
  ⍺ left argument, ⍵ right argument,
  ⍺⍺ left array operand, ⍶⍶ left function operand, ⍵⍵ right array operand, ⍹⍹ right function operand,
  ∇ recurse function, _∇ recurse monadic op, _∇_ recurse dyadic op
  ■ early exit, : guard
  ⋄ multiple statements
* numbers: . decimal separator, ¯ negative sign, ⏨ exponent notation, ᴊ complex separator
* character literals: 'abc'
* string literals: "abc" with escapes using ⍘
* names: abc array, Abc function, _Abc monadic op, _Abc_ dyadic op
* get ⎕ read evaluated input, get ⍞ read string input, set ⎕ print with newline, set ⍞ print without newline
* array notation: ⟨⋄⟩ vector, [⋄] higher rank array (combine major cells), ‿ tie (like vector notation)
* trains: ⦅⦆ deriving function, _⦅⦆ deriving adverb, _⦅⦆_ deriving conjunction
* structs: ⦃statements⦄, qualified access →
* assignment with ←, modify assignment with ↩, constant assignment with ⇇, private assignment with ↚
* array assignment with array notation of names
* comments: ⍝ until end of line, ⟃⟄ inline