Latest progress on my programming language: Some basic APL functionality has been implemented (such as ⍴, ⍳, ¨).

The main thing that sets my language apart from APL is that it's lazy evaluated. That is essential when working with large arrays. An operation such as ⍉ or two-argument ⍴ are very cheap in terms of CPU usage.

I've also started building a simple user interface for it.

I also intend to provide a much richer set of flow control operations than typical APL implementation. Normal APL basically only has goto. Dyalog has some structured programming constructs, but they are quite ugly.

I feel that if a program is long enough that it needs flow control, then there isn't as much to gain from the terseness of APL, so I prefer to have it look more "normal" in those cases. By normal I mean that it's OK if I don't do everything with just a few chars.

@loke I tried some test code for primes with GNU APL, dense syntax (even if a bit slow), interesting, first time I tried:
R ← 100
(~R∊R∘.×R)/R←1↓ιR
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97

Follow

@loke Also like the awesome classic light-blue striped continuous paper style ("pyjama") in the interpreter. Looking forward to try your programming language.

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.