4 ms·
If you're interested in getting a taste of APL while keeping in ASCII, you might want to check out the J programming language. Ken Iverson (the creator of APL)
by wyc 13y ago
If you're interested in getting a taste of APL while keeping in ASCII, you might want to check out the J programming language. Ken Iverson (the creator of APL) had a hand in its development. J implements most APL operators and is sometimes known as its successor, along with K and Q.
Get started here:
http://www.jsoftware.com/help/learning/contents.htm http://www.jsoftware.com/help/learning/contents.htm
This family of languages really leads to a new way of thinking, evident in the J incunabulum (the C interpreter that started J, purportedly written in one afternoon) [1]. The code looks really dense and borderline gibberish at first glance, but I found it very expressive after a good read.
[1]: http://www.jsoftware.com/jwiki/Essays/Incunabulum http://www.jsoftware.com/jwiki/Essays/Incunabulum
- bjz_ 13y agoTracy Harms did a talk at Strange Loop about J: http://www.infoq.com/presentations/j-language http://www.infoq.com/presentations/j-language
- minikomi 13y agoWhenever APL and it's ilk are discussed I tend to wonder, other than project Euler, what are good "little problems" to start getting your feet wet?
- deleted 13y ago[deleted]
- Q6T46nT668w6i3m 13y agoMost business school problems (e.g. linear programming) are easily translatable.
- kd0amg 13y agoI liked redoing my machine learning homework in J.
- avmich 13y agoI decided once to write a C preprocessor in a clean C. Some weeks and 5000 lines of code later, I had many features of it done except functional macro resolution. By that time I've got substantially tired with manual memory management. So I shelved the project. Then I started learning J, and after some time decided to implement a project in it. After some months I've got working an LR parser generator. I've got so impressed with J convenience - the whole thing was about 700 lines, majority of that was comments and I was writing really simple J, as I was just learning it. You can check out some preliminary notes about parser generator building (only the beginning of the process) here - http://www.jsoftware.com/jwiki/AlexMikhailov/Parsing http://www.jsoftware.com/jwiki/AlexMikhailov/Parsing . I think J could be much better - by certain criteria - suited for many real projects. And I have other examples as well.
- minikomi 13y agoThanks for the comment! I'll have a look at the link.
- adestefan 13y agoThat code is pretty well messed up, but it is straightforward. For anyone that wants to read it just be aware that it uses old style parameter type declarations.
- saryant 13y agoJ was my intro to functional programming back in college. http://www.cs.trinity.edu/~jhowland/ http://www.cs.trinity.edu/~jhowland/ Our professor was heavily involved in the parallelism parts of J (or so I remember). I can't say I enjoyed the class, nor did anyone else in our department. J is fun when you're taking the average of an array: avg=: +/ % # Not so much when you use it to build a rudimentary CMS.