Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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.

share|improve this question

closed as too broad by gnat, MichaelT, Bart van Ingen Schenau, Ixrec, GlenH7 Feb 24 at 0:04

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

1  
Perhaps it's possible add some kind of hardware support to make trees more efficient than they're now. Especially concerning cache locality. – CodesInChaos Feb 20 at 11:55
    
In a certain sense, a computer with multiple cores is more suited to a pure language. – PyRulez Feb 20 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 Feb 20 at 15:28

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.

share|improve this answer
    
Lists are really just arrays with extra features. – Robert Harvey Feb 21 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 Feb 24 at 17:12

Not the answer you're looking for? Browse other questions tagged or ask your own question.