9

Wadler's original paper on Monads for Functional Programming ( Haskell ) ,he says

Another question with a long history is whether it is desirable to base programs on array update. Since so much effort has gone into developing algorithms and architectures based on arrays, we will sidestep this debate and simply assume the answer is yes.

There is no citation or hints to other possible architectures. I have heard something about an architecture suited to Lisp. Can somebody please guide me with some explanations and guidance on where /how I can get started on this topic. I would much appreciate you can explain the different architecture briefly.

3
  • 1
    Perhaps it's possible add some kind of hardware support to make trees more efficient than they're now. Especially concerning cache locality.CommentedFeb 20, 2016 at 11:55
  • In a certain sense, a computer with multiple cores is more suited to a pure language.CommentedFeb 20, 2016 at 13:41
  • @CodesInChaos The wiki has a stump on Graph Reduction machine and a link to SECD machine based on a 1963 paper. Not sure if that is it.
    – Asterisk
    CommentedFeb 20, 2016 at 15:28

1 Answer 1

0

There is the Symbolics Lisp Machine, also Lisp Machine


On another note, that might also be apropos, there used to be custom hardware for data-flow programming. This text says that the concept developed in the 70's and custom hardware was pursued into the 80's.

2
  • Lists are really just arrays with extra features.CommentedFeb 21, 2016 at 15:19
  • @RobertHarvey Conceptually very different . One provides indexed operations , the other sequential . Only one is required to be aware of next (and previous) i.e. I am part of a sequence. Actually an array needs not store contents sequentially .It's just convenience . An array just needs to provide an index ( this index can be conceptually anything ) and that index can be used to fetch and update the element in O(1).
    – Asterisk
    CommentedFeb 24, 2016 at 17:12

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.