trusted
46
edits
(→Interpreting: Add ivy talk) |
mNo edit summary |
||
(10 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
This page lists some resources for learning how to implement array languages. | This page lists some resources for learning how to implement array languages. See also the [[list of open-source array languages]], which links to implementations in a wide variety of styles and languages. | ||
== Interpreting == | == Interpreting == | ||
Line 5: | Line 5: | ||
* [https://mathspp.com/blog/tag:lsbasi-apl#body-wrapper Let's build a simple interpreter for APL] series (currently incomplete) on Mathspp Blog | * [https://mathspp.com/blog/tag:lsbasi-apl#body-wrapper Let's build a simple interpreter for APL] series (currently incomplete) on Mathspp Blog | ||
* [https://talks.godoc.org/github.com/robpike/ivy/talks/ivy.slide Slides] and [https://www.youtube.com/watch?v=PXoG0WX0r_E talk] by [[wikipedia:Rob Pike|Rob Pike]] about implementing [[ivy]] | * [https://talks.godoc.org/github.com/robpike/ivy/talks/ivy.slide Slides] and [https://www.youtube.com/watch?v=PXoG0WX0r_E talk] by [[wikipedia:Rob Pike|Rob Pike]] about implementing [[ivy]] | ||
* [https://dfns.dyalog.com/n_parse.htm parse] | * [https://www.researchgate.net/publication/234776477_APL_two_by_two-syntax_analysis_by_pairwise_reduction Bunda-Gerth parsing], implemented with commentary as [https://dfns.dyalog.com/n_parse.htm parse] in the [[dfns workspace]] | ||
* [https://www.jsoftware.com/help/dictionary/dicte.htm Parsing and Execution] in the [[J]] dictionary | * [https://www.jsoftware.com/help/dictionary/dicte.htm Parsing and Execution] in the [[J]] dictionary | ||
* [http://www.softwarepreservation.org/projects/apl/Papers/197201_APL%20In%20Exposition_320-3010.pdf#page=54 APL In Exposition], from page 54 (labelled 51) down | |||
* [https://rickyhan.com/jekyll/update/2020/01/16/j-incunabulum-disected.html J Incunabulum] is the initial partial implementation of J | |||
* [http://sblom.github.io/openj-core/ioj.htm An Implementation of J] describes the implementation of J in C terms | |||
== Compiling == | == Compiling == | ||
Line 16: | Line 19: | ||
* [http://archive.vector.org.uk/art10501160 Compiling APL to JavaScript] describes some implementation decisions made in [[ngn/apl]] | * [http://archive.vector.org.uk/art10501160 Compiling APL to JavaScript] describes some implementation decisions made in [[ngn/apl]] | ||
[[Category:Lists]][[Category:Resources]] | {{APL development}}[[Category:Lists]][[Category:Resources]] |