shinya
10-09-2008, 09:59
Girando un pò su reddit ho trovato questo link.
http://www.stepanovpapers.com/eop/eop.pdf
Da una prima occhiata sembra un cosa un pò intellettualoide e densissima, ma l'idea è molto interessante.
Per chi non lo sapesse, Stepanov è praticamente l'ideatore di STL (gli esempi del libro sono in C++ infatti).
Uno stralcio dall'introduzione:
This book presents programming as a mathematical discipline that enables the
construction of abstract and efficient software components. Only the develop-
ment of abstract components leads to secure, reliable, and high-performance
software.
....
Starting with a brief taxonomy of ideas in our minds, we introduce notions of
value, object, type, procedure, and concept that represent different categories of
ideas in the computer. A central notion of the book, regularity, is introduced
and elaborated. When applied to procedures, regularity means that they produce
equal results for equal arguments. When applied to types, regularity means that
they possess the equality operator and equality-preserving copy construction and
assignment. Regularity enables us to apply equational reasoning (substituting
equals for equals) to transform and optimize programs.
http://www.stepanovpapers.com/eop/eop.pdf
Da una prima occhiata sembra un cosa un pò intellettualoide e densissima, ma l'idea è molto interessante.
Per chi non lo sapesse, Stepanov è praticamente l'ideatore di STL (gli esempi del libro sono in C++ infatti).
Uno stralcio dall'introduzione:
This book presents programming as a mathematical discipline that enables the
construction of abstract and efficient software components. Only the develop-
ment of abstract components leads to secure, reliable, and high-performance
software.
....
Starting with a brief taxonomy of ideas in our minds, we introduce notions of
value, object, type, procedure, and concept that represent different categories of
ideas in the computer. A central notion of the book, regularity, is introduced
and elaborated. When applied to procedures, regularity means that they produce
equal results for equal arguments. When applied to types, regularity means that
they possess the equality operator and equality-preserving copy construction and
assignment. Regularity enables us to apply equational reasoning (substituting
equals for equals) to transform and optimize programs.