How to deeply understand the signal circuit described in SICP?

SICP Chapter 3.5.3 http://mitpress.mit.edu/sicp/full-text/book/book-ZH-24.html#%_sec_3.5.3

In the Streams as signals section, SICP provides an audiovisual explanation of the Implicit style of definition - feedback loop. But I want to know how to understand the diagram exactly? What is the real advantage and is there any basic knowledge?

Take another example, not in Scheme, but in Haskell:

 fibs = fix (scanl (+) 0 . (1:)) fibs = fix ((0:) . scanl (+) 1) 

We can also draw a signal diagram. How can we use these charts?

Thanks for the tips and information!

+7
source share
2 answers

For a real audio-visual explanation of the diagrams, why not take a look at the accompanying videos? They are in here , lectures 6A and 6B.

As for the “real advantage” of diagrams, they are a visual representation of stream processing; they do not require “background knowledge” to understand them. AFAIK designation for these diagrams is part of the SICP features. By reading a book and watching a video, you will all learn about them.

+4
source

To answer your question in the comments,

 Prelude> let bs = 1:map (\n-> sum $ take (n+1) bs) ( map (`div`2) [1..]) Prelude> take 20 bs [1,1,2,2,4,4,6,6,10,10,14,14,20,20,26,26,36,36,46,46] Prelude> let as = 1:1:g 2 (drop 2 as) where gx ~(a:b) = x:x:g(x+a)b Prelude> take 20 as [1,1,2,2,4,4,6,6,10,10,14,14,20,20,26,26,36,36,46,46] Prelude> take 20 $ map (\n-> sum $ take (n+1) as) $ map (`div`2) [0..] [1,1,2,2,4,4,6,6,10,10,14,14,20,20,26,26,36,36,46,46] 
+1
source

All Articles