100% found this document useful (3 votes)
27 views

Functional Light JavaScript Balanced Pragmatic FP in JavaScript 1st Edition Kyle Simpson instant download

Functional-Light JavaScript by Kyle Simpson is a book that explores functional programming concepts in JavaScript in a balanced and pragmatic way. It covers various topics including the nature of functions, managing inputs, composing functions, and reducing side effects, aiming to make functional programming accessible without complex terminology. The book is available for digital download and was published in 2018.

Uploaded by

semmakdhava2
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (3 votes)
27 views

Functional Light JavaScript Balanced Pragmatic FP in JavaScript 1st Edition Kyle Simpson instant download

Functional-Light JavaScript by Kyle Simpson is a book that explores functional programming concepts in JavaScript in a balanced and pragmatic way. It covers various topics including the nature of functions, managing inputs, composing functions, and reducing side effects, aiming to make functional programming accessible without complex terminology. The book is available for digital download and was published in 2018.

Uploaded by

semmakdhava2
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 50

Functional Light JavaScript Balanced Pragmatic

FP in JavaScript 1st Edition Kyle Simpson pdf


download

https://ebookfinal.com/download/functional-light-javascript-
balanced-pragmatic-fp-in-javascript-1st-edition-kyle-simpson/

Explore and download more ebooks or textbooks


at ebookfinal.com
Here are some recommended products for you. Click the link to
download, or explore more at ebookfinal

JavaScript Unlocked 1st Edition Sheiko

https://ebookfinal.com/download/javascript-unlocked-1st-edition-
sheiko/

JavaScript bible Danny Goodman

https://ebookfinal.com/download/javascript-bible-danny-goodman/

JavaScript Creativity 1st edition Edition Hudson

https://ebookfinal.com/download/javascript-creativity-1st-edition-
edition-hudson/

You Don t Know JS ES6 Beyond Kyle Simpson

https://ebookfinal.com/download/you-don-t-know-js-es6-beyond-kyle-
simpson/
Learning JavaScript 2nd Edition Shelley Powers

https://ebookfinal.com/download/learning-javascript-2nd-edition-
shelley-powers/

Jasmine JavaScript Testing 2nd Edition Test your


JavaScript applications efficiently using Jasmine and
React js Paulo Ragonha
https://ebookfinal.com/download/jasmine-javascript-testing-2nd-
edition-test-your-javascript-applications-efficiently-using-jasmine-
and-react-js-paulo-ragonha/

Test Driven JavaScript Development 1st Edition Christian


Johansen

https://ebookfinal.com/download/test-driven-javascript-
development-1st-edition-christian-johansen/

Pro JavaScript Design Patterns 1st Edition Ross Harmes

https://ebookfinal.com/download/pro-javascript-design-patterns-1st-
edition-ross-harmes/

JavaScript Essentials for Dummies 1st Edition Paul


Mcfedries

https://ebookfinal.com/download/javascript-essentials-for-dummies-1st-
edition-paul-mcfedries/
Functional Light JavaScript Balanced Pragmatic FP in
JavaScript 1st Edition Kyle Simpson Digital Instant
Download
Author(s): Kyle Simpson, Brian MacDonald (editor)
ISBN(s): 9781981672349, 1981672346
Edition: 1
File Details: PDF, 3.00 MB
Year: 2018
Language: english
Functional-Light JavaScript
Balanced, Pragmatic FP in JavaScript

Kyle Simpson
This version was published on 2018-02-09

ISBN 9781617296512

Published by GetiPub (http://getipub.com), a division of Getify Solutions, Inc.


While the publisher and the author have used good faith efforts to ensure that the
information and instructions contained in this work are accurate, the publisher and
the author disclaim all responsibility for errors or omissions, including without
limitation responsibility for damages resulting from the use of or reliance on this
work. Use of the information and instructions contained in this work is at your own
risk. If any code samples or other technology this work contains or describes is
subject to open source licenses or the intellectual property rights of others, it is your
responsibility to ensure that your use thereof complies with such licenses and/or
rights.

DISTRIBUTED BY MANNING

This book was created solely by its Author and is being distributed by Manning
Publications “as is,” with no guarantee of completeness, accuracy, timeliness, or
other fitness for use. Neither Manning nor the Author make any warranty
regarding the results obtained from the use of the contents herein and accept no
liability for any decision or action taken in reliance on the information in this book
nor for any damages resulting from this work or its application.

© 2016 - 2018 Getify Solutions, Inc.


Tweet This Book!
Please help Kyle Simpson by spreading the word about this book on Twitter!
The suggested tweet for this book is:
#FP #JS #FLJSBook Monads, and monoids, and functors, oh my!! I just discovered
”Functional-Light JavaScript”, a pragmatic take on FP in JS without all the crazy
terminology and math.
The suggested hashtag for this book is #FLJSBook.
Find out what other people are saying about the book by clicking on this link to
search for this hashtag on Twitter:
#FLJSBook
I owe gratitude to dozens of folks in the JS and FP communities whose work has helped
me on my multiple-year journey to try to learn what FP is all about. I’m also grateful
to all 738 backers of my crowd-funding campaign (listed at the very end of the book),
who helped make this happen.
But I especially want to give a deep and profound thank you to Brian Lonsdorf for
allowing me to pester him endlessly with FP questions, and for being so patient and
attentive in his assistance. He even tech-edited this book, and wrote the Foreword.
You’re my FP hero, man!
Published by GetiPub (http://getipub.com), a division of Getify Solutions, Inc.
Editors: Brian MacDonald and Brian Lonsdorf
Copyeditor: Jasmine Kwityn
November 2017: First Edition
Revision History for the First Edition
2017-11-27: First Release
2017-12-05, 2017-12-14, 2018-01-29: Reformat For Print, Errata Updates
CONTENTS

Contents

Foreword . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i

Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iii
Mission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv

Chapter 1: Why Functional Programming? . . . . . . . . . . . . . . . . . . 1


At a Glance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Confidence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Readability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Perspective . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
How to Find Balance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

Chapter 2: The Nature Of Functions . . . . . . . . . . . . . . . . . . . . . . 14


What Is a Function? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Function Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Named Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Function Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Functions of Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
What’s This? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Chapter 3: Managing Function Inputs . . . . . . . . . . . . . . . . . . . . . 52


All for One . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Functional-Light JavaScript
CONTENTS

Adapting Arguments to Parameters . . . . . . . . . . . . . . . . . . . . 57


Some Now, Some Later . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
One at a Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Order Matters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
No Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

Chapter 4: Composing Functions . . . . . . . . . . . . . . . . . . . . . . . 92


Output to Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
General Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Reordered Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Abstraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Revisiting Points . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Chapter 5: Reducing Side Effects . . . . . . . . . . . . . . . . . . . . . . . . 122


Effects on the Side, Please . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Once Is Enough, Thanks . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Pure Bliss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
There or Not . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Purifying . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159

Chapter 6: Value Immutability . . . . . . . . . . . . . . . . . . . . . . . . . 160


Primitive Immutability . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Value to Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Reassignment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Treatment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

Chapter 7: Closure vs. Object . . . . . . . . . . . . . . . . . . . . . . . . . 178


The Same Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
Look Alike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180
Two Roads Diverged in a Wood… . . . . . . . . . . . . . . . . . . . . . . 191
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202

Functional-Light JavaScript
CONTENTS

Chapter 8: Recursion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204


Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
Declarative Recursion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Rearranging Recursion . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

Chapter 9: List Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . 232


Non-FP List Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
Reduce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Advanced List Operations . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Method vs. Standalone . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
Looking for Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
Fusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
Beyond Lists . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

Chapter 10: Functional Async . . . . . . . . . . . . . . . . . . . . . . . . . 284


Time as State . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
Eager vs. Lazy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
Reactive FP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296

Chapter 11: Putting It All Together . . . . . . . . . . . . . . . . . . . . . . 298


Setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
Stock Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Stock Ticker UI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315

Appendix A: Transducing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317


Why, First . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
How, Next . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
What, Finally . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337

Functional-Light JavaScript
CONTENTS

Appendix B: The Humble Monad . . . . . . . . . . . . . . . . . . . . . . . 338


Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Loose Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
Just a Monad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
Maybe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Humble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352

Appendix C: FP Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353


Stuff to Investigate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Ramda (0.23.0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Lodash/fp (4.17.4) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Mori (0.3.2) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Bonus: FPO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Bonus #2: fasy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363

Functional-Light JavaScript
Foreword i

Foreword
It’s no secret that I am a Functional Programming nut. I evangelize functional ideas
and languages wherever I can, try to read the latest academic papers, study abstract
algebra in my spare time…the works. Even in JavaScript, I refuse to write an impure
statement, which is what led to writing Professor Frisby’s Mostly Adequate Guide to
Functional Programming. Yep, full on, dogmatic zealot.
I was not always this way… I was once obsessed with objects. I loved modeling the
“real world”. I was the inventor of synthetic automatons, tinkering through the night
with masterful precision. The creator of sentient puppets, fingers dancing on the
keyboard to give them life – a real 1337 h4x0r Geppetto. Yet, after 5 solid years of
writing object-oriented code, I was never quite satisfied with the outcome. It just
never worked out well for me. I felt like a lousy programmer. I even lost faith that a
simple, flexible codebase of decent scale was possible.
I figured I’d try something different: Functional Programming. I began to dabble
with functional ideas in my everyday codebase, and much to my coworkers’ dismay,
hadn’t the slightest clue what I was doing. The code I wrote in those days was awful.
Atrocious. Digital sewage. The reason was a lack of clear vision or goal on what I
was even trying to accomplish. My Jiminy-Coding-Cricket, if you like, was not there
to guide me. It took a long time and a lot of garbage programs to figure out how to
FP.
Now, after all that messy exploration, I feel that pure Functional Programming has
delivered on its promise. Readable programs do exist! Reuse does exist! I no longer
invent, but rather discover my model. I’ve become a rogue detective uncovering
a vast conspiracy, cork board pinned full of mathematical evidence. A digital-age
Cousteau logging the characteristics of this bizarre land in the name of science! It’s
not perfect and I still have a lot to learn, but I’ve never been more satisfied in my
work and pleased with the outcome.
Had this book existed when I was starting out, my transition into the world of
Functional Programming would have been much easier and less destructive. This

Functional-Light JavaScript
Foreword ii

book is two-fold (right and left): it will not only teach you how to use various
constructs from FP effectively in your daily code, but more importantly, provide
you with an aim; guiding principles that will keep you on track.
You will learn Functional-Light: A paradigm that Kyle has pioneered to enable
declarative, Functional Programming while providing balance and interop with the
rest of the JavaScript world. You will understand the foundation which pure FP is
built upon without having to subscribe to the paradigm in its entirety. You will gain
the skills to practice and explore FP without having to rewrite existing code for it
to work well together. You can take a step forward in your software career without
backtracking and wandering aimlessly as I did years ago. Coworkers and colleagues
rejoice!
Kyle is a great teacher known for his relentless pursuit of the whole picture, leaving
no nook or cranny unexplored, yet he maintains an empathy for the learner’s plight.
His style has resonated with the industry, leveling us all up as a whole. His work
has a solid place in JavaScript’s history and most people’s bookmarks bar. You are in
good hands.
Functional Programming has many different definitions. A Lisp programmer’s
definition is vastly different from a Haskell perspective. OCaml’s FP bears little
resemblance to the paradigm seen in Erlang. You will even find several competing
definitions in JavaScript. Yet there is a tie that binds – some blurry know-it-when-
I-see-it definition, much like obscenity (indeed, some do find FP obscene!) and this
book certainly captures it. The end result might not be considered idiomatic in certain
circles, but the knowledge acquired here directly applies to any flavor of FP.
This book is a terrific place to begin your FP journey. Take it away, Kyle…
-Brian Lonsdorf (@drboolean)

Functional-Light JavaScript
Preface iii

Preface
A monad is just a monoid in the category of endofunctors.

Did I just lose you? Don’t worry, I’d be lost, too! All those terms that only
mean something to the already-initiated in Functional ProgrammingTM (FP) are just
jumbled nonsense to many of the rest of us.
This book is not going to teach you what those words mean. If that’s what you’re
looking for, keep looking. In fact, there are already plenty of great books that teach
FP the right way, from the top-down. Those words have important meanings and if
you formally study FP in-depth, you’ll absolutely want to get familiar with them.
But this book is going to approach the topic quite differently. I’m going to present
fundamental FP concepts from the ground-up, with fewer special or non-intuitive
terms than most approaches to FP. We’ll try to take a practical approach to each
principle rather than a purely academic angle. There will be terms, no doubt. But
we’ll be careful and deliberate about introducing them and explaining why they’re
important.
Sadly, I am not a card-carrying member of the FP Cool Kids Club. I’ve never been
formally taught anything about FP. And though I have a CS academic background
and I am decent at math, mathematical notation is not how my brain understands
programming. I have never written a line of Scheme, Clojure, or Haskell. I’m not an
old-school Lisp’r.
I have attended countless conference talks about FP, each one with the desperate
clinging hope that finally, this time would be the time I understood what this
whole functional programming mysticism is all about. And each time, I came away
frustrated and reminded that those terms got all mixed up in my head and I had no
idea if or what I learned. Maybe I learned things. But I couldn’t figure out what those
things were for the longest time.
Little by little, across those various exposures, I teased out bits and pieces of
important concepts that seem to just come all too naturally to the formal FPer.

Functional-Light JavaScript
Preface iv

I learned them slowly and I learned them pragmatically and experientially, not
academically with appropriate terminology. Have you ever known a thing for a long
time, and only later found out it had a specific name you never knew!?
Maybe you’re like me; I heard terms such as “map-reduce” around industry segments
like “big data” for years with no real idea what they were. Eventually I learned what
the map(..) function did – all long before I had any idea that list operations were a
cornerstone of the FPer path and what makes them so important. I knew what map
was long before I ever knew it was called map(..).
Eventually I began to gather all these tidbits of understanding into what I now call
“Functional-Light Programming” (FLP).

Mission
But why is it so important for you to learn functional programming, even the light
form?
I’ve come to believe something very deeply in recent years, so much so you could
almost call it a religious belief. I believe that programming is fundamentally about
humans, not about code. I believe that code is first and foremost a means of human
communication, and only as a side effect (hear my self-referential chuckle) does it
instruct the computer.
The way I see it, functional programming is at its heart about using patterns in your
code that are well-known, understandable, and proven to keep away the mistakes
that make code harder to understand. In that view, FP – or, ahem, FLP! – might be
one of the most important collections of tools any developer could acquire.

The curse of the monad is that… once you understand… you lose the
ability to explain it to anyone else.

Douglas Crockford 2012 “Monads and Gonads”


https://www.youtube.com/watch?v=dkZFtimgAcM

Functional-Light JavaScript
Preface v

I hope this book “Maybe” breaks the spirit of that curse, even though we won’t talk
about “monads” until the very end in the appendices.
The formal FPer will often assert that the real value of FP is in using it essentially
100%: it’s an all-or-nothing proposition. The belief is that if you use FP in one part of
your program but not in another, the whole program is polluted by the non-FP stuff
and therefore suffers enough that the FP was probably not worth it.
I’ll say unequivocally: I think that absolutism is bogus. That’s as silly to me as
suggesting that this book is only good if I use perfect grammar and active voice
throughout; if I make any mistakes, it degrades the entire book’s quality. Nonsense.
The better I am at writing in a clear, consistent voice, the better your reading
experience will be. But I’m not a 100% perfect author. Some parts will be better
written than others. The parts where I can still improve are not going to invalidate
the other parts of this book which are useful.
And so it goes with our code. The more you can apply these principles to more parts
of your code, the better your code will be. Use them well 25% of the time, and you’ll
get some good benefit. Use them 80% of the time, and you’ll see even more benefit.
With perhaps a few exceptions, I don’t think you’ll find many absolutes in this text.
We’ll instead talk about aspirations, goals, principles to strive for. We’ll talk about
balance and pragmatism and trade-offs.
Welcome to this journey into the most useful and practical foundations of FP. We
both have plenty to learn!

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 1

Chapter 1: Why Functional


Programming?
Functional programmer: (noun) One who names variables “x”, names
functions “f”, and names code patterns “zygohistomorphic prepromor-
phism”

James Iry @jamesiry 5/13/2015


https://twitter.com/jamesiry/status/598547781515485184

Functional Programming (FP) is not a new concept by any means. It’s been around
almost the entire history of programming. However, and I’m not sure it’s fair to
say, but… it sure hasn’t seemed like as mainstream of a concept in the overall
developer world until perhaps the last few years. I think FP has more been the realm
of academics.
That’s all changing, though. A groundswell of interest is growing around FP, not just
at the languages level but even in libraries and frameworks. You very well might be
reading this text because you’ve finally realized FP is something you can’t ignore
any longer. Or maybe you’re like me and you’ve tried to learn FP many times before
but struggled to wade through all the terms or mathematical notation.
This first chapter’s purpose is to answer questions like “Why should I use FP
style with my code?” and “How does Functional-Light JavaScript compare to what
others say about FP?” After we’ve laid that groundwork, throughout the rest of the
book we’ll uncover, piece by piece, the techniques and patterns for writing JS in
Functional-Light style.

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 2

At a Glance
Let’s briefly illustrate the notion of “Functional-Light JavaScript” with a before-and-
after snapshot of code. Consider:

var numbers = [4,10,0,27,42,17,15,-6,58];


var faves = [];
var magicNumber = 0;

pickFavoriteNumbers();
calculateMagicNumber();
outputMsg(); // The magic number is: 42

// ***************

function calculateMagicNumber() {
for (let fave of faves) {
magicNumber = magicNumber + fave;
}
}

function pickFavoriteNumbers() {
for (let num of numbers) {
if (num >= 10 && num <= 20) {
faves.push( num );
}
}
}

function outputMsg() {
var msg = `The magic number is: ${magicNumber}`;
console.log( msg );
}

Now consider a very different style that accomplishes exactly the same outcome:

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 3

var sumOnlyFavorites = FP.compose( [


FP.filterReducer( FP.gte( 10 ) ),
FP.filterReducer( FP.lte( 20 ) )
] )( sum );

var printMagicNumber = FP.pipe( [


FP.reduce( sumOnlyFavorites, 0 ),
constructMsg,
console.log
] );

var numbers = [4,10,0,27,42,17,15,-6,58];

printMagicNumber( numbers ); // The magic number is: 42

// ***************

function sum(x,y) { return x + y; }


function constructMsg(v) { return `The magic number is: ${v}`; }

Once you understand FP and Functional-Light, this is likely how you’d read and
mentally process that second snippet:

We’re first creating a function called sumOnlyFavorites(..) that’s


a combination of three other functions. We combine two filters, one
checking if a value is greater-than-or-equal to 10 and one for less-than-
or-equal to 20. Then we include the sum(..) reducer in the transducer
composition. The resulting sumOnlyFavorites(..) function is a re-
ducer that checks if a value passes both filters, and if so, adds the value
to an accumulator value.
Then we make another function called printMagicNumber(..) which
first reduces a list of numbers using that sumOnlyFavorites(..)
reducer we just defined, resulting in a sum of only numbers that passed
the favorite checks. Then printMagicNumber(..) pipes that final sum
into constructMsg(..), which creates a string value that finally goes
into console.log(..).

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 4

All those moving pieces speak to an FP developer in ways that likely seem highly
unfamiliar to you right now. This book will help you speak that same kind of
reasoning so that it’s as readable to you as any other code, if not more so!
A few other quick remarks about this code comparison:

• It’s likely that for many readers, the former snippet feels closer to comfort-
able/readable/maintainable than the latter snippet. It’s entirely OK if that’s
the case. You’re in exactly the right spot. I’m confident that if you stick it out
through the whole book, and practice everything we talk about, that second
snippet will eventually become a lot more natural, maybe even preferable!
• You might have done the task significantly or entirely different from either
snippet presented. That’s OK, too. This book won’t be prescriptive in dictating
that you should do something a specific way. The goal is to illustrate the
pros/cons of various patterns and enable you to make those decisions. By the
end of this book, how you would approach the task may fall a little closer to
the second snippet than it does right now.
• It’s also possible that you’re already a seasoned FP developer who’s scanning
through the start of this book to see if it has anything useful for you to read.
That second snippet certainly has some bits that are quite familiar. But I’m
also betting that you thought, “Hmmm, I wouldn’t have done it that way…” a
couple of times. That’s OK, and entirely reasonable.
This is not a traditional, canonical FP book. We’ll at times seem quite heretical
in our approaches. We’re seeking to strike a pragmatic balance between the
clear undeniable benefits of FP, and the need to ship workable, maintainable JS
without having to tackle a daunting mountain of math/notation/terminology.
This is not your FP, it’s “Functional-Light JavaScript”.

Whatever your reasons for reading this book, welcome!

Confidence
I have a very simple premise that sort of underlies everything I do as a teacher of
software development (in JavaScript): code that you cannot trust is code that you do

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 5

not understand. The reverse is true also: code that you don’t understand is code you
can’t trust. Furthermore, if you cannot trust or understand your code, then you can’t
have any confidence whatsoever that the code you write is suitable to the task. You
run the program and basically just cross your fingers.
What do I mean by trust? I mean that you can verify, by reading and reasoning,
not just executing, that you understand what a piece of code will do; you aren’t just
relying on what it should do. More often than is perhaps prudent, we tend to rely
on running test suites to verify our programs’ correctness. I don’t mean to suggest
tests are bad. But I do think we should aspire to be able to understand our code well
enough that we know the test suite will pass before it runs.
The techniques that form the foundation of FP are designed from the mindset of
having far more confidence over our programs just by reading them. Someone who
understands FP, and who’s disciplined enough to diligently use it throughout their
programs, will write code that they and others can read and verify that the program
will do what they want.
Confidence is also increased when we use techniques that avoid or minimize likely
sources of bugs. That’s perhaps one of the biggest selling points of FP: FP programs
often have fewer bugs, and the bugs that do exist are usually in more obvious places,
so they’re easier to find and fix. FP code tends to be more bug-resistant – certainly
not bug-proof, though.
As you journey through this book, you will begin to develop more confidence in the
code you write, because you will use patterns and practices that are already well
proven; and you’ll avoid the most common causes of program bugs!

Communication
Why is Functional Programming important? To answer that, we need to take a bigger
step back and talk about why programming itself is important.
It may surprise you to hear this, but I don’t believe that code is primarily a set
of instructions for the computer. Actually, I think the fact that code instructs the
computer is almost a happy accident.
I believe very deeply that the vastly more important role of code is as a means of
communication with other human beings.

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 6

You probably know by experience that an awful lot of your time spent “coding” is
actually spent reading existing code. Very few of us are so privileged as to spend all
or most of our time simply banging out all new code and never dealing with code
that others (or our past selves) wrote.
It’s widely estimated that developers spend 70% of code maintenance time on reading
to understand it. That is eye-opening. 70%. No wonder the global average for a
programmer’s lines of code written per day is about 10. We spend up to 7 hours
of our day just reading the code to figure out where those 10 lines should go!
We need to focus a lot more on the readability of our code. And by the way,
readability is not just about fewer characters. Readability is actually most impacted
by familiarity.¹
If we are going to spend our time concerned with making code that will be more
readable and understandable, FP is central in that effort. The principles of FP are
well established, deeply studied and vetted, and provably verifiable. Taking the time
to learn and employ these FP principles will ultimately lead to more readily and
recognizably familiar code for you and others. The increase in code familiarity, and
the expediency of that recognition, will improve code readability.
For example, once you learn what map(..) does, you’ll be able to almost instantly
spot and understand it when you see it in any program. But every time you see a
for loop, you’re going to have to read the whole loop to understand it. The syntax
of the for loop may be familiar, but the substance of what it’s doing is not; that has
to be read, every time.
By having more code that’s recognizable at a glance, and thus spending less time
figuring out what the code is doing, our focus is freed up to think about the higher
levels of program logic; this is the important stuff that most needs our attention
anyway.
FP (at least, without all the terminology weighing it down) is one of the most effective
tools for crafting readable code. That is why it’s so important.
¹Buse, Raymond P. L., and Westley R. Weimer. “Learning a Metric for Code Readability.” IEEE Transactions on Software
Engineering, IEEE Press, July 2010, dl.acm.org/citation.cfm?id=1850615.

Functional-Light JavaScript
Chapter 1: Why Functional Programming? 7

Readability
Readability is not a binary characteristic. It’s a largely subjective human factor
describing our relationship to code. And it will naturally vary over time as our skills
and understanding evolve. I have experienced effects similar to the following figure,
and anecdotally many others I’ve talked to have as well.

Readability of Declarative FP

You may just find yourself experiencing similar effects as you work through the book.
But take heart; if you stick this out, the curve comes back up!
Imperative describes the code most of us probably already write naturally; it’s
focused on precisely instructing the computer how to do something. Declarative code
– the kind we’ll be learning to write, which adheres to FP principles – is code that’s
more focused on describing the what outcome.
Let’s revisit the two code snippets presented earlier in this chapter.
The first snippet is imperative, focused almost entirely on how to do the tasks; it’s
littered with if statements, for loops, temporary variables, reassignments, value
mutations, function calls with side effects, and implicit data flow between functions.
You certainly can trace through its logic to see how the numbers flow and change to
the end state, but it’s not at all clear or straightforward.
The second snippet is more declarative; it does away with most of those afore-
mentioned imperative techniques. Notice there’s no explicit conditionals, loops, side
effects, reassignments, or mutations; instead, it employs well-known (to the FP
world, anyway!) and trustable patterns like filtering, reduction, transducing, and

Functional-Light JavaScript
Discovering Diverse Content Through
Random Scribd Documents
kann es auch vielleicht besser als »begrenzt« d. h. »zu eng gefasst«
übersetzt werden, »er machte die Begrenzungen weiter«).
Die Elemente des Theudios gehen Aristoteles.
denen des Euklid unmittelbar voran, und auf
sie beziehen sich die mathematischen Angaben bei A r i s t o t e l e s.
Dieser weltumfassendste Geist nicht Zeit bei Platon.
bloss des Altertums, der Wissenschaft und
Kunst fast 2000 Jahre lang beherrscht hat und die formale Logik
sogar bis auf S i g w a r t, d. h. bis zum letzten Drittel des 19.
Jahrhunderts, hat noch weit mehr als Platon die Mathematik nur als
Hilfswissenschaft der Philosophie insbesondere für die Lehre vom
Schluss und von den Beweisen betrachtet, und allenfalls für die
Astronomie, in der er wie K a n t den stärksten Beweis des für sein
System ganz unentbehrlichen Gottesbegriffes sah. Es steht nicht
einmal fest, ob Aristoteles auf der vollen Höhe der mathematischen
Bildung seiner Zeit gestanden hat, von höheren Problemen streift er
eigentlich nur einmal ganz gelegentlich in de coelo die Quadratur des
Zirkels. Dass er die Kegelschnitte nicht beachtet hat, versteht sich
von selbst, da sie ja gerade zu seiner Zeit von seinem Mitschüler
M e n a i c h m o s gefunden wurden. Aber um so grösser ist seine
Bedeutung für die Grundbegriffe der Mathematik. Während
J . L . H e i b e r g (Teubner Abh. z. Gesch. der Math. Wiss. Heft 18,
1904) das spez. Mathematische bei Aristoteles gesammelt hat,
ähnlich wie Theon Smyrneus die Mathematik bei Platon, ist
A . G ö r l a n d in seiner Dissertation und besonders in dem Werke:
Aristoteles und die Mathematik, Marburg 1899 auch der begrifflichen
Seite gerechter geworden. Aristoteles ist auch der erste der Hellenen
der sich genauer mit dem Begriff Zeit beschäftigt hat. P l a t o n, wie
er den Aristoteles an schöpferischer Kraft der Phantasie weit
überragt, übertrifft ihn auch in der Erkenntnis gerade der tiefsten
Quellen unserer Erkenntnis, aber dass die Zeit auch eine Idee sei,
wie das Gute, ist dem Idealisten κατ ἐξοχήν entgangen. Die
Hauptstelle findet sich Timäos 366–370. Gott schuf die Welt als
Abbild der ewigen Ideen (personifiziert durch die einzelnen Götter),
und in der Freude über seine Schöpfung beschloss er sie dem
Urbilde noch ähnlicher zu machen und schuf dazu die Zeit als
b e w e g l i c h e s, nach Zahlenverhältnissen fortschreitendes, ewiges
Abbild. Denn Tage und Nächte und Monate und Jahre gab es nicht,
bevor der Himmel geschaffen, sondern damals als dieser
zusammengesetzt wurde, bewirkte er zugleich auch ihre Entstehung.
Alle diese (die Tage etc.) sind Teile der Zeit, und das »E s w a r« und
das »E s w i r d s e i n« sind entstandene Formen der Zeit, die wir
u n v e r m e r k t auf das ewige Wesen übertragen, und mit
U n r e c h t. Denn wir sprechen von einem »es war, es ist, es wird
sein« jener aber kommt in Wahrheit nur das »Es ist« zu, das »war«
und das »wird sein« aber ziemt es sich von der in der Zeit sich
bewegenden Entstehung auszusagen. Wenn hier auch die
transzendentale Idealität der Zeit gestreift ist, so sind doch Zeit und
Bewegung nicht scharf geschieden, und insbesondere scheint die
Zeit selbst als Dauer aufgefasst zu sein, was schon eine Anwendung
der Kategorie Raum auf die Zeit einschliesst.
A r i s t o t e l e s hat sich besonders in Aristoteles über Zeit.
der Physik mit der Zeit beschäftigt, er hat
den Zusammenhang der Zeit mit der Zahl erkannt und im direkten
Gegensatz zu Kant die Zeit auf die Zahl zurückgeführt. Im Buch IV
der Physik heisst es: die Zeit s c h e i n t die Bewegung einer Kugel zu
sein, weil durch sie die übrigen Bewegungen (Rotationen)
g e m e s s e n werden. — Ganz ähnlich heisst es in der
Naturphilosophie L o r e n z O k e n ' s, des Vorgängers von Darwin,
die Zeit ist gleichsam eine fortrollende Kugel, die immer in sich selbst
wiederkehrt. — An anderer Stelle nennt er die Zeit die Z a h l d e s
K o n t i n u u m s, und die Zahl der Bewegung in bezug auf v o r h e r
und n a c h h e r, Mass der Ruhe und Bewegung. Wichtig ist, dass er
Phys. 10 auseinandersetzt, dass die Zeit nicht aus Momenten
bestehe und ganz des Aristoteles würdig ist die Stelle Phys. IV Kap.
10: Ob das Jetzt, das Vergangenheit und Zukunft trennt, immer ein
und dasselbe sei, oder anderes und anderes, das ist nicht leicht zu
entscheiden.
A r i s t o t e l e s, der S t a g i r i t e, wie er Aristoteles (vita).
oft genannt wird, ist 384 in Stageira einer
Stadt der athenischen Landschaft Chalcidice geboren. Sein Vater
Nikomachos war Leibarzt des Königs Amyntas von Macedonien, des
Vaters Philipps der die entzweiten Hellenen unter das Macedonische
Joch einte. Im 18. Jahre kam er nach dem Tode beider Eltern als ein
wohlhabender und wohlerzogener Hellene nach Athen vermutlich um
Platons willen, dessen Schule er bis zum Tod Platons, zwanzig Jahre
lang angehörte. Daneben muss der Sohn des Arztes mit dem Fleiss
und der ungeheuren Arbeitskraft eines grossen Genius geschafft
haben um sich auf naturwissenschaftlichem und politisch-
historischem Gebiete das Riesenmaterial von Kenntnissen
anzueignen, das in seinen Schriften verarbeitet ist. Zwei Strömungen
von ganz ungewöhnlicher Stärke sind in Aristoteles vereinigt,
einerseits ist er der erste grosse B i o l o g e, der mit gleicher Sorgfalt
das grösste wie das kleinste Lebewesen beobachtet, er hat es ja
selbst ausgesprochen, dass es für den Forscher nichts Grosses und
nichts Kleines gebe, — andererseits ein Systematiker von extremer
Nüchternheit und Klarheit.
Dass der über dreissigjährige Mann in den letzten Jahren seines
Lehrers dem Platonismus schon mit kritischem Geiste
gegenüberstand, ist an sich im höchsten Grade wahrscheinlich, auch
wenn es nicht durch den Klatsch der Schule bezeugt wäre.
Insbesondere richtete sich seine Kritik wohl damals schon gegen die
Ideenlehre. Aristoteles hat hier wohl von Anfang an dem Schwunge
des Dichters nicht folgen können, vermöge einer Schwäche seiner
Begabung gerade auf dem Gebiete der Phantasie. Und dann muss
gesagt werden, dass Platon selbst seine eigene grossartige
Auffassung der Idee, des reinen ewigen Urbilds, die über den Dingen
stehend, die Kraft ist, welche die Dinge schafft, mit zunehmendem
Alter mehr und mehr verdunkelt und abgeschwächt hat, man
vergleiche die »νόμοι«, die Gesetze, auch den Zusatz, die επινομις.
So erklärt es sich, dass in der Darstellung des Aristoteles die
Ideenlehre in die Zahlenmystik der Pythagoräer überging.
Doch war und blieb er Platoniker, wie schon daraus hervorgeht,
dass er unmittelbar nach dem Tode des Meisters Athen für lange Zeit
verliess, und zwar in Gemeinschaft mit dem leidenschaftlichsten
Verehrer Platons, dem X e n o k r a t e s, der nach dem Tode von
Platons Neffen Speusippos der Leiter der Akademie war. Aristoteles
brachte die nächsten drei Jahre bei seinem Bundesbruder Hermias,
dem Fürsten von Atarneos und Assos zu, und heiratete nach dessen
Tode die Schwester oder Nichte desselben. Im Jahre 343 (oder 342)
übernahm er die Ausbildung des damals dreizehnjährigen
A l e x a n d e r, und diese Verbindung, obwohl sie nur 3 Jahre
dauerte, da Alexander schon mit 16 Jahren die Vertretung seines
Vaters Philipp in Macedonien übernahm, wurde für beide grosse
Männer von höchster Bedeutung. — Aristoteles ging zunächst in
seine Heimatstadt Stageira, er blieb aber bis kurz vor Alexanders
Tode, bis er durch die Torheit seines Neffen Kallisthenes jenem
entfremdet wurde, in innigster Verbindung mit dem Könige. Mit
königlicher Freigebigkeit gewährte Alexander die Mittel, welche er zu
seinen Arbeiten brauchte, alle fremden Tiere und Pflanzen wurden
ihm zugesandt, und die Summen, derer er zu seiner grossen
Bibliothek bedurfte, verdankte er wohl auch zum grossen Teil dem
Könige. Aristoteles ist der erste Gelehrte, von dem wir wissen, dass
er sich eine grosse Büchersammlung angelegt hat, und das war
damals ein noch weit kostspieligeres Vergnügen als heute, um so
mehr als er auch dafür sorgte, dass die wichtigsten Werke durch
Abschriften weiteren Kreisen zugänglich gemacht wurden. Die
Sammlung hat er seinem bedeutendsten Schüler, dem
T h e o p h r a s t hinterlassen.
Dreizehn Jahre nach dem Tode Platons kehrte er nach Athen
zurück, nahm den Unterricht in der Rhetorik, den er schon bei
Lebzeiten Platons sehr erfolgreich geführt hatte, wieder auf, und
eröffnete jetzt ebenfalls bei einem Gymnasium, dem Lyceum, eine
eigene Philosophenschule und begründete den dazu gehörigen
Freundschaftsbund. In den Parkanlagen des Lyceums auf- und
abgehend, disputierte er mit seinen Schülern und von dieser
Gewohnheit erhielten die Jünger den Namen der »Peripatetiker.«
Übermenschliches hat er in den 12 Jahren seiner Lehrtätigkeit
geleistet. Abgesehen von einzelnen Dialogen, welche schon zu
Platons Zeiten veröffentlicht waren, sind fast alle seine grossen
Lehrschriften, die ja im wesentlichen Vorlesungshefte für seinen und
seine Schüler Gebrauch waren, hier entweder entstanden oder doch
wenn nicht konzipiert, so doch redigiert. Aristoteles starb 332 zu
Chalcis auf Euboea, wo er ein Landgut besass, an einem
Magenleiden.
Ich erwähne zuerst seine grossartigen Aristoteles, Werke.
naturwissenschaftlichen Werke, als
Systematiker beginnt er mit der unorganischen Natur. Zunächst die
P h y s i k, φυσικη ακροασις, 8 Bücher, zu denen uns der sehr
wichtige Kommentar des Simplicius erhalten ist. Dies Werk hat bis an
das 18. Jahrh. heran den Stoff für die Vorlesungen über Physik
gegeben. Dann die Astronomie, περι ουρανου de coelo, 4 Bücher
(dazu Kommentar des Simplicius). Er kritisiert die Pythagoräer, den
Hiketas, den Aristarch von Samos, welche die zentrale Stellung der
Erde im Weltsystem aufgegeben; und seine Autorität hat bis auf
Kopernikus den Weg zum Fortschritt versperrt. In de coelo β 13, 293
lesen wir: δειν τη γη του μεσου χωραν αποδιδοναι. Man muss der
Erde die Stelle des Mittelpunktes wiedergeben: denn χώρα Raum
steht bei Aristoteles häufig für τόπος Ort. Weiter nenne ich die
Schrift über Entstehen und Vergehen, περὶ γενέσεως καὶ φθορᾶς 2
Bücher, die Meteorologie 4 Bücher, woran sich auch ein Werk über
Mathematik im engeren Sinne angeschlossen haben soll, was aber
nicht gerade wahrscheinlich ist. Es schliessen sich dann die Werke
über die lebenden Wesen an, beschreibende und untersuchende.
Zunächst die grossartige Z o o l o g i e, περὶ τα ζῷα ἱστορια. 9 Bücher,
dann 7 Bücher A n a t o m i e, dann die (physiologische)
P s y c h o l o g i e, περὶ ψυχής, Wahrnehmen und Wahrgenommenes,
Gedächtnis und Erinnerung, Traum und Wachen. — Ferner über
Kurz- und Langlebigkeit, Leben und Tod, und damit verbunden, über
das Atmen. Über die Teile der Tiere, die Erzeugung und den Gang
der Tiere (wahrscheinlich unecht). — Die 2 Bücher über die Pflanzen
sind verloren, weil sie von der reichhaltigeren Schrift des
T h e o p h r a s t aufgesaugt und verdrängt sind, eine im Altertum
häufige Erscheinung. — An die Zoologie, welche mit dem Menschen
endet, reihen sich dann folgerichtig die grossen Werke über das
sittliche Handeln des einzelnen Menschen, und über sein Leben im
Staate an, Ethik und Politik. Von den drei Ethiken ist die grosse sog.
N i k o m a c h i s c h e E t h i k unbezweifelt das echte Werk des
Aristoteles, während die andere die Eudemische ein Kollegienheft
des Eudemos ist, und die dritte, die sog. grosse Moral ein Auszug
aus dem Eudemos ist. Die Ethik handelt von dem höchsten Gut, von
der Tugend, von der Freundschaft etc. Das höchste Gut sieht sie in
der reinen Denktätigkeit; die wissenschaftliche Arbeit um ihrer selbst
willen, diese ist göttlich. Ihr zunächst steht im Werte die Tugend, die
ethische Tugend ist auf den W i l l e n gerichtet, der lernen muss, um
es kurz auszudrücken, die richtige Mitte zwischen zwei Lastern zu
halten. Tief empfunden und wahrhaft beredt ist, was Aristoteles über
die F r e u n d s c h a f t sagt, ohne die ihm zufolge keine Gemeinschaft
bestehen kann.
Von den s t a a t s w i s s e n s c h a f t l i c h e n Werken ist uns die
Politik erhalten, 8 Bücher, unvollendet, aber wie Z e l l e r sagt, eins
von den reifsten und bewundernswertesten Erzeugnissen seines
Geistes. Verloren sind bis auf wenige Bruchstücke, die sog. πολιτείαι,
eine wahrscheinlich lexikalisch geordnete Sammlung der Verfassung
von 158 Staaten oder Städten, anfangend mit Athen. Vor wenigen
Jahren ist gerade die Verfassung Athens in der Leichenbinde einer
ägyptischen Mumie gefunden und von K e i b e l und K i e s s l i n g
meisterhaft übersetzt worden. Sie zeigt uns was wir verloren haben
und ist unschätzbar für die Beurteilung des Aristoteles. Während
dieser in den exakt-wissenschaftlichen und philosophischen Schriften
in Sprache und Form meist trocken, nüchtern und knapp ist, — er
hat ja die philosophische Fachsprache, ich möchte sagen, den Jargon
geschaffen, der die meisten philosophischen Werke so ungeniessbar
macht, — begreifen wir hier wie C i c e r o sagen konnte, Aristoteles
habe die alten Rhetoren »suavitate et brevitate dicendi,« durch
Anmut und treffende Kürze der Sprache, weit hinter sich gelassen.
Zugleich aber bekommen wir auch zum ersten Male ein genaues
Bild vom alten Athen und sind imstande die Anziehungskraft zu
begreifen, welche Athen auf die Hellenen ausübte. Wir sehen hier
eine Verfassung von solchem echten Liberalismus und von solcher
Humanität, wie sie noch nie zum zweiten Male existiert hat. Selbst
die Staatssklaven der Athener erfreuten sich einer Freiheit, die in
vieler Hinsicht grösser war als die der heutigen Staatssklaven, der
Beamten. Interessant ist auch die Rolle, welche die Erbtochter schon
damals spielte.
Die Anschauung des Aristoteles über K u n s t kann ich hier nur
flüchtig streifen, erhalten ist nur die P o ë t i k, und auch sie nur als
Fragment, aber Sie wissen, welchen langdauernden Einfluss die sog.
drei Einheiten, welche Aristoteles für das Drama forderte, die Einheit
des Orts, der Zeit und der Handlung, gerade weil die Forderungen
missverstanden wurden, insbesondere auf das klassische Drama der
Franzosen gehabt haben.
Nun zu den eigentlichen philosophischen Schriften des
Aristoteles. Zuerst bereitet er sich den Boden für das Verständnis
seiner Gedanken dadurch, dass er die Gesetze, denen unser Denken
unterworfen ist, die Lehre vom Schluss und vom Beweise, die
formale Logik, als der Erste genau formulierte. Die Logik des
Aristoteles zerfällt in 2 grosse Abteilungen, die To p i k und die
Analytik, zusammengefasst als O r g a n o n id est Werkzeug. Ich
nenne hier F. K a m p e, die Erkenntnistheorie des Aristoteles Leipz.
1870, R . E u c k e n, die Methode der arist. Forschung Berl. 1872.
Von neuen Ausgaben seien die der Berliner Akademie von 1831–70
in 5 Bänden und die auf 35 Bände berechnete der griech.
Kommentare hervorgehoben, darunter die P h y s i k des
S i m p l i c i u s von H . D i e l s 1882 und eben desselben Astronomie
von J . L . H e i b e r g 1894.
Die Grundlagen jeder wissenschaftlichen Arbeit sind im Organon
für ewig gelegt. Die Logik wird als wissenschaftliche Technik
aufgefasst, er will keine vollständige Erkenntnistheorie geben, etwa
wie H . C o h e n's Logik der reinen Erkenntnis, sondern zunächst
eine Untersuchung über die Formen und Gesetze der
wissenschaftlichen Beweisführung. Die Topik beschäftigt sich mit der
Dialektik, der Lehre vom Beweisbaren und dem Wahrscheinlichen;
von den Analytiken beschäftigt sich die erste mit dem Schlusse, die
andere mit der Beweisführung gestützt auf den Syllogismus. Die
Syllogistik hat es mit der Erkenntnis derjenigen Denkformen zu tun,
denen zufolge mit Hilfe eines Zwischenbegriffs, der im einen Urteil
Prädikat, im anderen Subjekt ist, entschieden werden soll, ob ein
Begriff unter einem andern subsumiert werden soll, ganz oder
teilweise, oder nicht. Aristoteles hat die Urteile nach Quantität und
Qualität eingeteilt, und zwar nach Quantität: generelle, partikuläre,
singuläre, (allgemeine, besondere, einzelne) und nach Qualität:
affirmative und negative (bejahende und verneinende).
Ein Punkt der für Mathematiker besonders wichtig ist muss
betont werden. Nicht S c h o p e n h a u e r hat zuerst die Forderung
erhoben: der wahre Beweis muss nicht nur dass etwas ist, sondern
warum es ist, aufdecken, sondern A r i s t o t e l e s hat περι ψυχής II,
2 mit grösster Schärfe das nämliche gefordert.
An die Logik, die Wissenschaftslehre, Aristoteles Philosophie.
schliesst sich die M e t a p h y s i k an.
Aristoteles setzt die Platonische Philosophie voraus, und indem er sie
umbildet, verbildet und fortbildet, ist er der Vollender der
Begriffsphilosophie. Die Metaphysik beginnt mit der berühmten Tafel
der K a t e g o r i e n, der irreduzibeln Stammbegriffe der Vernunft, die
Grundformen aller Aussagen. Sie sind bei ihm nicht völlig das was
ich K o n s t i t u e n t e n des Intellekts nenne, Methoden grosse
Gruppen von Erkenntnissen zusammenzufassen und zu ordnen.
Er unterscheidet: 1) Substanz (ουσία, Aristoteles über Grösse.
Wesenheit) 2) Grösse, Quantität, ποσόν., 3)
Beschaffenheit, Qualität, ποιόν, 4) Beziehung, Relation, πρός τι., 5)
Worin, Raum, χώρα., 6) Wann, Zeit, πότε., 7) Lage, θέσις, 8) Haben,
ἕξις, 9) Wirken, ποιεῖν, 10) Leiden, πάσχειν. Lage und Haben
scheinen nur aufgestellt, um die Zehnzahl der Pythagoräer voll zu
machen, er lässt sie im Laufe der Untersuchung fallen. Doch wird die
θέσις die Lage von ihm als Grundeigenschaft des Raumes erkannt.
Uns interessiert am meisten was er über Grösse sagt. Alles was sich
in substantielle Teile teilen lässt, ist eine Grösse (dieselbe Definition
gab W e i e r s t r a s s im Colleg.). Sind die Teile zusammenhängend,
so ist die Grösse s t e t i g (συνεχές), die Lehre von der
kontinuierlichen Grösse geht wie beinahe jede scharfe begriffliche
Untersuchung auf Aristoteles zurück, der auch die recht eigentlichen
mathematischen Probleme, die Zusammensetzung und Trennung des
Kontinuums erfasst hat. Ausführlicher spricht er sich über Kontinuität
in der Physik c. 3, 227 und 10 aus: Es sei etwas stetig, wenn die
Grenze eines jeden zweier aufeinander folgenden Teile, in der
dieselben sich berühren, e i n u n d d i e s e l b e i s t, und sie, wie
es auch das Wort bedeutet, (συν zusammen, έχω halten)
zusammengehalten werden. Sind die Teile in einer bestimmten
L a g e, so sind die Grössen extensive oder Raumgrössen, das
U n g e t e i l t e oder die E i n h e i t, mit der sie gemessen wird, und
die M e s s b a r k e i t, dass sie ein Mass hat, ist das unterscheidende
Merkmal der Grössen. Auch die für die Ausbildung des
Integralbegriffs grundlegenden Probleme der Zusammensetzung und
Trennung des Kontinuums sind von ihm gestellt. Und wenn auch περι
ατομων γραμμων vielleicht wie Tannery meint, nur ein Schülerheft,
so ist doch περι φύσεως unbestritten. Das Argument mit dem
Aristoteles bewies, dass Raum und Zeit nicht aus Punkten bestehen
(es hätten sonst z. B. Seite und Diagonale des Quadrats gleichviel
Punkte und wären gleich) haben die Arabischen Aristoteliker, (wie
Averroës), gegen die Mutakallimun (Logiker) gebraucht.
Für die Qualitäten werden zwei Hauptarten unterschieden,
diejenigen, welche sich auf einen substantiellen Unterschied und
diejenigen, welche sich auf Bewegung und Tätigkeit beziehen. Als
ein charakteristisches Merkmal der Qualität wird der Gegensatz des
Ähnlichen und Unähnlichen betrachtet; zu bemerken ist hier, dass
Kategorien der Anschauung von Aristoteles nicht aufgestellt werden,
wie z. B. Abstand, Richtung.
Der wichtigste Stammbegriff ist der der Substanz, der der
Träger der Übrigen ist, und so ist es die Untersuchung über das
Seiende als Seiendes von der die Philosophie, welche den Zweck hat
die Erfahrung zur Einheit zusammenzufassen, ausgehen muss. Ich
führe hier als den wichtigsten Satz an das berühmte: το δ' ειναι
ουσια ουδενι., der widerspruchsfreie Begriff begründet keine
Existenz des Definierten, mit dem z. B. der ontologische Beweis des
Daseins Gottes und die Grundlage S p i n o z a s zusammenbricht. Die
erste und höchste Philosophie hat die Aufgabe die letzten (A. sagt
richtiger die ersten) und allgemeinsten Gründe der Dinge zu
erforschen, sie gewährt das umfassendste Wissen, dasjenige,
welches am schwersten zu erlangen ist, da die allgemeinsten
Prinzipien von der sinnlichen Erfahrung am weitesten abliegen, das
sicherste, weil sie es mit den irreduziblen Begriffen und Axiomen zu
tun hat, das was am meisten Selbstzweck ist, weil es die Zwecke,
denen alles dient, feststellt. Sie muss alles Wirkliche schlechthin
umfassen, denn die letzten (πρώτας) Gründe sind nur die, welche
alles Seiende als Solches erklären. Andere Wissenschaften, wie
Medizin und Mathematik, beschränken sich auf ihr Gebiet, das sie
nicht weiter definieren, die Wissenschaft von den letzten Gründen
muss die Gesamtheit der Dinge auf ihre ewigen Ursachen und in
letzter Instanz auf das Unbewegte und Unkörperliche, d. h. auf
G o t t zurückführen, von dem alle Bewegung und Gestaltung des
Körperlichen ausgeht. Er nennt diese Wissenschaft, die Metaphysik,
erste Philosophie auch Theologie. Angesichts des Schwungs der
Sprache und der Wucht der Gründe mit denen Aristoteles den
Gottesbegriff stützt, wird es begreiflich, wie die Scholastik, wie ein
Thomas von Aquino im Gegensatz zu Platon, mehr und mehr sich
auf Aristoteles stützen musste, der fast zu einem Heiligen der
katholischen Kirche geworden ist. Verbot doch im Jahr 1624 das
französische Parlament jeden Angriff gegen seine Autorität bei
Todesstrafe.
Indem er nun näher auf dasjenige Aristoteles und die
eingeht, was allen Seienden als solchem Ideenlehre.
zukommt, untersucht er den Satz vom
Widerspruch, der ja in der Mathematik eine so entscheidende Stelle
im indirekten Beweis einnimmt, denken Sie nur an die grosse Menge
stereometrischer Sätze, welche sich auf den Widerspruch gegen das
Parallelenaxiom zurückführen lassen. Er knüpft an seine
Untersuchung den Satz vom »ausgeschlossenen Dritten« (aut est,
aut non est, tertium non datur). Ich muss für Aristoteles' Metaphysik
auf Bonitz, Windelband, Zeller etc. verweisen, nur seine Gestaltung
der Ideenlehre muss ich besprechen, denn in ihr besteht ja seine
Emanzipation von P l a t o n. Aristoteles hat die Idee Platons
missverstanden, vielleicht weil Platon sich nicht mit Konsequenz
dahin ausgesprochen, dass seine Idee auf der Ausschaltung des
Zufälligen beruht. Letzteres ist für uns unbefriedigend und indem wir
es auffassen als etwas, was sein oder nicht sein kann, verstösst es
gegen den Satz vom Widerspruch. Die Platonische Idee, als zeitlose
Norm aus wenigen Erfahrungen vermöge eines Grundtriebs unseres
Intellekts geschaffen, steht ü b e r den Dingen, Aristoteles und
vermöge seiner Autorität fast alle Nachfolger fassen sie als n e b e n
den Dingen, ἑν παρα τα πολλα., als ausserhalb der wirklichen Welt
und in keinem Zusammenhange mit ihr stehend, wie die
p r a e s t a b i l i e r t e H a r m o n i e d e s L e i b n i z, wo ihre
Wirkung dann allerdings unerklärlich ist. Aristoteles fasst die Idee als
ἑν κατα πολλα, als in jedem Dinge, jedes Ding existiert eigentlich nur
insoweit, als es seine Idee ausdrückt. Man sieht, dass er Platon
missversteht, um im Grunde auf ihn zurückzugreifen. Aristoteles
unterscheidet die ὑλη, den Stoff, die Materie, die gestaltlos, nur die
Möglichkeit, die δύναμις, zum Wirklichen, zur ενεργεια hat, das ihnen
allein durch die Idee εἶδος, die Form zugeführt wird. Die Idee ist
zugleich die Z w e c k u r s a c h e, der gemäss die Wesen sich
entwickeln, sie ist die Seele jedes einzelnen Dinges.
Man darf den aristotelischen Begriff der Aristoteles, Stoff und Form.
Form nicht mit unserm Wort verwechseln,
ein toter Mensch ist der Idee nach kein Mensch, noch ein gefällter
Baum ein Baum. Stoff und Form wechseln, Bauholz ist in Bezug auf
den lebenden Baum Stoff, in Bezug auf den unbehauenen Stamm
Form, Erz für den Bildhauer Stoff, für den Erzgiesser Form etc. So
stellt sich die Gesamtheit alles Seienden als eine Stufenleiter dar,
deren unterste Stufe, die erste Materie oder πρωτη ὑλη,
unterschiedslos, unbestimmt und formlos, deren oberste eine letzte
Idee, der mit gar keinen Stoff behaftete absolute göttliche Geist. Der
Gottesbegriff des Aristoteles hat etwas Überwältigendes. Er hat den
ontologischen, den kosmologischen, den teleologischen, den
moralischen Beweis für das Dasein Gottes geschaffen, er beherrscht
die katholische Theologie nicht nur durch das ganze Mittelalter,
sondern noch heute und Metaphysik XII finden Sie in einen bei
Aristoteles ganz ungewöhnlichen fast dichterischem Schwung die
Schilderung des Wesens der Gottheit.
In dem Verhältnis des Stoffs zur Form hat nun Aristoteles die
beiden für sein System und für die M a t h e m a t i k gleich wichtigen
Begriffe des Potentiellen und Aktuellen, der δυναμις und ενεργεια
(auch εντελεχεια Vollendung), Möglichkeit und Wirksamkeit
geschaffen, denken Sie nur an die potentielle und aktuelle
(kinetische) Energie der heutigen Mechanik. In der Auffassung der
Bewegung als Übergang des Potentiell-Seienden zum Aktuell-
Seienden hat er die Schwierigkeit die der Begriff des Werdens seinen
Vorgängern machte überwunden; es ist ein und dasselbe Sein, um
das es sich handelt, nur auf verschiedener Entwicklungsstufe.
Potentiell, κατα δυναμιν ist das Samenkorn ein Baum, der
ausgewachsene Baum ist es aktuell, κατ' ενεργειαν. Potentieller
Philosoph ist Aristoteles, wenn er schläft, der bessere Feldherr Sieger
vor der Schlacht, potentiell ist der Raum ins Unendliche teilbar, die
Zahl ins Unendliche zählbar, potentiell ist Alles, was sich gemäss der
in ihm liegenden Idee entwickeln kann, wenn möglich zur
Vollendung, zur Entelechie, zur vollendeten Darstellung seiner Idee.
Diese beiden fundamentalen Aristoteles, das Unendliche.
Unterschiede des Seins, das Potentielle und
das Aktuelle, hat Aristoteles auch im Begriff des Unendlichen
hervorgehoben; von ihm rührt die bis auf den heutigen Tag, ich
nenne G e o r g C a n t o r, herrschende Unterscheidung des infinitum
potentia et actu, des Unendlichen im Werden und des Unendlichen
im Sein. Es ist unmöglich die Scholastiker oder Cusanus zu
verstehen, ohne diese Unterscheidung zu kennen. Aristoteles hat
zuerst und bis auf G a l i l e i als der Einzige wissenschaftlich den
Begriff Unendlich untersucht. Wohl hat Zeno den Integralbegriff
gestreift, Demokrit diesen ganz bewusst benutzt, aber hier handelt
es sich um eine logische Untersuchung, denn
Unendlichkeitsbetrachtungen sind an sich so alt wie der Mensch.
Schon in den Veden kommt die Göttin des Unendlichen, A d i t i, vor
und Max Müller sagt in seiner ersten Strassburger Vorlesung »alle
Religion entspringt aus dem Druck, den das Unendliche auf das
Endliche ausübt«. Ich habe l. c. auf den Ursprung des
Unendlichkeitsbegriffs aus dem Werkzeug unseres Intellekts: Zeit
hingewiesen, bezw, darauf, dass wir uns ein Ende unserer Erlebnisse
nicht denken können. Wenn F r e g e in seinen Grundlagen der
Arithmetik von 1884 den Versuch macht die Existenz von (n + 1)
mittelst des Schlusses von n auf n + 1 zu beweisen, so halte ich
dagegen die Unendlichkeit der Anzahlenreihe für das Prius, das
unmittelbar durch den Zusammenhang der Ordinalzahl mit der Zeit
gegeben ist. Mit jedem neuen Erlebnis ist eben auch eine neue
Einheitssetzung und damit eine neue Ordinal- und Kardinalzahl
gegeben. Aristoteles kommt wie G a u s s zu dem Schluss, dass das
Unendliche im Sein, das infinitum actu oder κατ' ενέργειαν, das
ἄπειρον, das wovon es kein Jenseits gibt, in der Natur nicht existiert,
ἡ φυσις φευγει το απερον, also als sinnlich wahrnehmbar existiert
keine unendliche Grösse. Nur in Gott als der unendlichen Kraft,
welche die unendliche Bewegung der Welt hervorbringt, existiert das
infinitum actu. Wohl aber gibt er zu, dass es ein infinitum potentia
(κατά δύναμιν) gibt. Die Raumgrösse ist unbegrenzt teilbar, aber ein
unendlich kleines gibt es nicht, sondern das ἄπειρον ist nur im
Entstehen und Vergehen. Und die Zeit und mit ihr die Zahl ist
unendlich gross im Werden, aber auch hier ist die Zunahme endlich,
die grosse Zahl entsteht und vergeht, und macht der grösseren Zahl
Platz, eine unendlich grosse Zahl existiert nicht. Aber dieser grosse
Denker streift doch schon die Lösung, er sagt in der Physik Cap. 5,
204: »Vielleicht ist die Untersuchung ob das Unendliche auch in der
Mathematik und in dem Denkbaren und in demjenigen was keine
Grösse hat, existiere, eine weit allgemeinere.« Die Lösung liegt eben
darin, dass das mathematisch Unendliche überhaupt keine Grösse
besitzt. Es genüge hier auf B . B o l z a n o's klassische »Paradoxien
des Unendlichen« zu verweisen. Bolzano, auf den W e i e r s t r a s s
und G . C a n t o r ganz unmittelbar fussen, hat den Hauptanstoss
hinweggeräumt, allerdings wörtlich nach G a l i l e i, als er hervorhob,
dass der Begriff des Ganzen keineswegs durch alle seine Teile
hindurchzugehen braucht. Ich verweise hier auf einen Vortrag im
internationalen Kongress zu Rom.
Mit dem was Aristoteles über das Raum und Zeit.
ἄπειρον sagt, hängen seine Betrachtungen
über Raum und Zeit und Bewegung eng zusammen. Der Raum kann
wohl unbegrenzt verkleinert, aber nicht unbegrenzt vergrössert
werden, auch gegen den Demokritischen Begriff des leeren Raumes
(und des Atoms) polemisiert er, dagegen nähert er sich der
Auffassung K a n t s und noch mehr der von H . C o h e n beträchtlich
und führt die Zeit auf die Bewegung des Jetzt (το νύν) zurück und
bemerkt, dass sie ohne das erkennende Subjekt nicht existiere. Sehr
wichtig ist das, was er vom Zeit- und Raumpunkt sagt: das zeitlich
und räumlich nicht mehr Teilbare ist niemals an und für sich (actu)
gegeben, sondern nur potentiell in der s t e t i g e n Grösse enthalten,
und wird nur durch V e r n e i n u n g d. h. durch negative Prädikate
(limitierende Urteil Cohens) erkannt. Und einigermassen erstaunt
war ich, als ich die Auffassung der Ruhe als Grenze der sich stetig
verlangsamenden Bewegung, welche ich mir vor 30 Jahren ohne
noch L e i b n i z zu kennen gebildet hatte, dem Wesen nach bei
A r i s t o t e l e s fand, der sagt, dass es in einem Zeitpunkt weder
Ruhe noch Bewegung gibt, sondern nur einen Übergang und der
Körper, wenn er von der Bewegung zur Ruhe übergeht, noch in
Bewegung ist.
A r i s t o t e l e s der heute nach mehr als 2000 Jahren noch
lebendig fortwirkt, der auf Christentum, Judentum, ja selbst auf den
Islam auf das tiefste eingewirkt hat, — ist doch Moses ben Maimon,
der auf Thomas von Aquino so bedeutenden Einfluss übte, durch
seine Schule gegangen — der abstrakteste Denker und zugleich der
exakteste Beobachter, der grösste Empiriker und zugleich einer der
grössten Idealisten, hat eigentlich erst die einzelnen Disziplinen
geschaffen. Bis zu ihm gibt es eine Gesamtwissenschaft τα
μαθήματα, von ihm ab und durch ihn existieren die einzelnen
Disziplinen. Sein Schüler Medon schrieb nach seinem Plan die
Medizin »Ιατρικα.«, seine Physik, Astronomie, Zoologie, Psychologie
bilden den Inhalt der Universitätsvorlesungen bis in die Neuzeit,
Botanik, Meteorologie, ja selbst Chemie wie Rhetorik, Poetik etc.
werden selbständig, wie Mathematik und die Philosophie selbst, der
er die besondere Aufgabe zuwies, die Erfahrung zur Einheit
zusammenzufassen. Und nicht minder die Geschichte, das erste
Buch seiner Metaphysik ist die erste und zugleich mit die beste
Geschichte der Philosophie und überall hat er Geschichte und
K r i t i k hineingewoben. Von ihm an beginnt eine 500 Jahre
andauernde Periode der Einzelforschung, die erst bei den
Neuplatonikern zur Zusammenfassung führt.
Die beiden bedeutendsten Peripatetiker, Aristoteles: Theophrast,
T h e o p h r a s t, der Freund und Schüler des Eudemos.
Aristoteles, der die Botanik seiner Zeit
kodifiziert hat, und E u d e m o s der Rhodier haben beide eine
Geschichte der Mathematik geschrieben. Die des Theophrast ist
spurlos verschwunden, von der des Eudemos sind spärliche
Fragmente durch Proklos, Eutokios und Simplicius erhalten, sowie
eine Notiz aus dem Buch über den Winkel, περί γωνίας, bei Proklos.
Das wichtigste ist das oft erwähnte Mathematikerverzeichnis bei
Proklos. Friedl. Prolog II p. 65 ff., das aber Ta n n e r y zufolge nicht
direkt aus Eudemos stammt, sondern aus einer Verarbeitung des
Eudemos durch G e m i n o s im 1. Jahrh. n. Chr. Es endigt
unmittelbar vor E u k l i d.
Von dem Verfasser der »Elemente«, des Euklid, vita.
Werkes, das unter allen mathematischen
Werken für die Bildung der Menschheit weitaus das wichtigste
gewesen ist, kennt man weder Ort noch Zeit der Geburt und des
Todes, γενέσεως και φθοράς. Seinen Zeitgenossen und der
nächstfolgenden Generation war Euklid einfach der »στοιχειοτης«,
der Verfasser der Elemente und bald ging die Kenntnis seiner Person
verloren. Viele Jahrhunderte ist er mit dem Philosophen Euklid von
Megara verwechselt worden, der nach dem Tode des Sokrates die
Schule zusammenhielt, und dieser Irrtum findet sich schon bei
Valerius Maximus um 30 v. Chr. und ist dort aus einer falschen
Auffassung einer Stelle bei Geminos (Prokl. p. 60) entstanden. —
Das Wenige, was wir von ihm wissen, verdanken wir zumeist
P r o k l o s, einem Neuplatoniker und Nachfolger (Diadochos) des
Plato in der Leitung der Akademie, d. h. also Rektor der Universität
Athen, der um 450 n. Chr. einen Kommentar zum Euklid verfasst hat,
von dem uns die beiden Prologe und der Kommentar des ersten
Buchs der Elemente erhalten sind. Die Stelle (Friedl. S. 68) lautet:
»Nicht viel jünger als diese (Hermotimos, der Kolophoner und
Philippos, der Schüler Platons) ist Eukleídēs, der die Elemente [τα
στοιχεία] verfasste, wobei er vieles was vom E u d o x o s herrührte,
in zusammenhängende Ordnung brachte, vieles was Theaitet
begonnen, vollendete und ausserdem so manches was früher ohne
rechte Strenge bewiesen war, auf unantastbare Beweise
zurückführte. Und dieser Mann lebte unter Ptolemaios dem ersten,
denn A r c h i m e d e s, dessen Lebenszeit sich an die des ersten
Ptolemaios anschliesst, erwähnt des Euklid [in περί σφαίρας και
κυλίνδρου, Heib. I, 2, p. 14] und zwar erzählt er: Ptolemaios frug
einmal den Euklid, ob es nicht zur Geometrie einen bequemeren
Weg gebe als die Elemente. Jener aber antwortete: Zur Geometrie
gibt es für Könige keinen Privatweg [ουκ εστι βασιλικη ατροπος επι
γεωμετριαν]. Er ist also jünger als die [direkten] Schüler des Platon
und älter als Eratosthenes und Archimedes, denn diese waren
Zeitgenossen, wie Eratosthenes irgendwo sagt. Aus Grundsatz war
er Platoniker und in der Platonischen Philosophie zu Hause.«
Danach ergibt sich für Euklid etwa 300 v. Chr. als Zeit seines
Mannesalters (der ακμή, der Zeit blühendster Körper- und
Geisteskraft, welche die Hellenen in das vierzigste Jahr verlegten),
und dass er in Athen an der Akademie gehört hatte und dem
engeren Kreise der Akademiker angehörte.
Zur Charakterisierung des Euklid haben wir noch eine Stelle bei
Stobaios. »Ein Mensch, der bei Euklid Unterricht in der Geometrie zu
nehmen begonnen hatte, frug, nachdem er den ersten Satz der
Elemente kennen gelernt hatte, was habe ich nun davon, dass ich
das weiss? Euklid rief seinen Sklaven und sagte: Gib dem Manne drei
Obolen, da er studiert um Profit zu machen.« Und schliesslich
schildert ihn P a p p o s in der Vorrede zum 7. Buch der Kollektaneen
wie folgt: Erat ingenio mitissimus et erga omnes, ut par erat,
benignus qui vel tantillum mathematicas disciplinas promovere
poterant, aliisque nullo modo infensus, sed summe accuratus. »Er
war von mildester Gesinnung und wie es sich geziemt wohlwollend
gegen jeden, der und wär's noch so wenig, die mathematischen
Disziplinen zu fördern vermochte, in keiner Weise anderen gehässig,
sondern im höchsten Grade rücksichtsvoll.« Sie sehen, dass Euklid in
der Tradition seines Volkes als hochgesinnter, reiner
wissenschaftlicher Tätigkeit hingegebener Mann fortlebte.
Gelehrt hat er für reife Leute, ganz in der Weise unserer
Universitätsprofessoren, an der Universität (Museum)
A l e x a n d r i a, wie uns l. c. Pappos berichtet. Unter der den
Wissenschaften überaus ergebenen Diadochen-Dynastie der
Ptolemäer entwickelte sich des grossen Alexander Stadt zur Zentrale
des Hellenischen Geisteslebens. Man nennt diese Periode die
H e l l e n i s t i s c h e. Es ist lange Zeit Mode gewesen die Alexandriner
zu verspotten als Pedanten, wegen ihrer grammatischen, auf die
einzelnen Worte gerichteten Untersuchungen, haben sie doch z. B.
die Akzente eingeführt. Aber auf dem Gebiete der exakten
Wissenschaften ist die Hellenistische Periode erstklassig. Euklid
grade hat den Schwerpunkt von Athen nach Alexandrien verlegt,
A r c h i m e d e s, A p o l l o n i o s, E r a t o s t h e n e s sind aus der
Alexandrinischen Schule hervorgegangen. —
Die Euklidischen Schriften kennen wir Euklid, Schriften: die Data.
durch die Angaben der Proklos p. 68 f. und
Pappos l. c. Von den Elementen abgesehen sind im griechischen
Urtext erhalten a) die Data, δεδομενα, »Gegebenes,« mit einer
Vorrede des M a r i n o s von Neapolis in Palästina, einem Schüler des
Proklos. Die Echtheit des Textes wird durch die Inhaltsangabe bei
Pappos (300 n. Chr.) bestätigt, welche im Wesentlichen mit dem Text
der Codices übereinstimmt. Die Schrift enthält 95 Sätze (Pappos 90)
welche aussagen, dass wenn gewisse geometrische Gebilde gegeben
sind, andere dadurch mit bestimmt sind, also eine Art
g e o m e t r i s c h e r F u n k t i o n e n t h e o r i e. Beispiele: Satz 2:
Wenn eine gegebene Grösse zu einer zweiten Grösse ein gegebenes
Verhältnis hat, so ist die zweite ebenfalls gegeben. Satz 33: In einem
gegebenen Streifen ist durch die W i n k e l, welche eine Querstrecke
mit den Grenzen bildet, die L ä n g e der Querstrecke bestimmt. Dem
Inhalt nach gehen die »Data« nicht über die »Elemente« hinaus,
doch war und ist eine solche Zusammenstellung praktisch im hohen
Grade wertvoll für die Anwendung der seit und durch Platon sich
immer mehr ausbreitenden analytischen Methode, deren Wesen
gerade darin besteht, die durch die gegebenen Stücke mit
bestimmten Punkte, Linien, Figuren aufzusuchen, bis man zu einer
konstruierbaren Nebenfigur gelangt. Die Data sind daher eine sich
eng an die Elemente anschliessende Anleitung zum Konstruieren
nach der analytischen Methode, etwa entsprechend P e t e r s e n ' s
bekannten »Methoden und Theorien«.
Erhalten ist unter dem Titel Astronomie.
»Phaenomena« eine Schrift über Astronomie
(lectio sphaerica) mit den Anfangsgründen der Sphärik. Die Schrift
geht bedeutend über die kurz vorhergehende des A u t o l y k o s
hinaus. Ich bemerke beiläufig, das die lectio sphaerica bis in die
Neuzeit hinein der Schrittmacher für die Geometrie gewesen, die
sich im Lehrplan der Gymnasien erst aus ihr entwickelt hat. Die
Schrift beginnt mit dem Satz: »Die Erde liegt in der Mitte der Welt
und vertritt in bezug auf dieselbe die Stelle des Mittelpunkts«
(Aristoteles) und schliesst mit dem Satz: »Von zwei gleichen Bogen
des Halbkreises zwischen dem Äquator und dem Sommerwendekreis
durchwandelt der eine, beliebig genommen in längerer Zeit die
sichtbare Halbkugel als der andere die unsichtbare.« Das Wort
»H o r i z o n t« stammt aus der Schrift, welche von Pappos im 6.
Buch seiner Kollektaneen erläutert und ergänzt wurde. (A . N o k k,
deutsche Übersetzung Prgr. Freiburg i. Brg. 1850). H e i b e r g hat
nach einer Bemerkung Nokks bewiesen, dass diese Schrift des Euklid
einen sehr wesentlichen Bestandteil der für unsere elementare
Sphärik grundlegenden Schrift des T h e o d o s i o s v o n T r i p o l i s
(etwa 100 v. Chr.) gebildet hat (siehe M . S i m o n, E u k l i d und die
sechs planim. Bücher, Leipzig 1901).
Echt Euklidisch sind auch die »Optica«, Optik.
deren Text Heiberg restituiert hat. Der sonst
gebräuchliche Text geht vermutlich auf ein Kollegienheft nach
T h e o n von Alexandrien, dem Vater der H y p a t i a, der ersten uns
bekannten ordentlichen Professorin. Sie ist mutmasslich der Autor
unserer Quadratwurzelausziehung und bekannt durch ihre Schönheit
und ihr unglückliches Schicksal. Von dem bestialischen christlichen
Mönchspöbel Alexandriens zerrissen, wurde sie nach ihrem Tode zu
Professorenromanen ausgeschlachtet. Die Schrift Euklids gehörte zu
der Sammlung, welche unter dem Titel »μικρος αστρονουμενος,«
der kleine Astronom, neben den »Elementen« das Rüstzeug des
Astronomen bildete, ehe er an das grosse Lehrbuch des Ptolemaios,
die μεγαλη συνταξις (der Almagest) gehen konnte. Die Schrift gibt
die Anfangsgründe der Perspektive.
Dagegen ist die andere Schrift über Optik, welche unter Euklids
Namen ging, die K a t o p t r i k unecht. H e i b e r g macht es sehr
wahrscheinlich, dass die von Proklos unter diesem Titel erwähnte
Schrift des Euklid rasch durch das inhaltreiche Werk des
A r c h i m e d e s über den gleichen Gegenstand verdrängt wurde.
Noch über einen anderen Zweig der Euklid, Schriften: Musik.
angewandten Mathematik haben wir eine
Schrift des Euklid, die καταιομη κανονος, die Lehre von den
musikalischen Intervallen, 20 Sätze, wissenschaftlich auf dem
Standpunkt der Pythagoräer. Eine zweite musikalische Schrift, die
Harmonielehre, εισαγωγή ἁρμονική, rührt wie schon H u g o
G r o t i u s 1599 erkannte von dem Aristoxenianer Kleonides her.
[A r i s t o x e n o s, direkter Schüler des Aristoteles als Philosoph,
setzte der auf die arithmetischen Intervalle gegründete
Harmonielehre der Pythagoräer die Lehre von den harmonischen
Sinneseindrücken entgegen].
Aus A r a b i s c h e n Q u e l l e n besitzen Über Teilung.
wir durch D e e 1563 eine Bearbeitung und
durch W o e p c k e 1851 eine Übersetzung der von P r o k l o s
zweimal erwähnten Schrift περὶ διαιρέσεων, über Teilungen, welche
wertvolle Aufgaben über Flächenteilung enthielt. Dort findet sich die
noch heute im Schulunterricht stets vorkommende Aufgabe: ein
Dreieck durch Gerade von gegebener Richtung in Teile zu teilen,
welche ein gegebenes Verhältnis haben; ferner Teilung von
Vierecken, von Kreisen, von Figuren die von Kreisbogen und
Geraden begrenzt sind. Euklid zeigt sich hier als sehr gewandter
Konstrukteur, er benutzt ausser den Sätzen der Elemente nur solche,
welche sich mühelos aus ihnen ergeben.
V e r l o r e n sind die Schriften, welche Euklid, Verlorene Schriften.
sich auf die eigentliche höhere Mathese
seiner Zeit beziehen. Zunächst die zwei wichtigen Bücher τόποι πρὸς
ἐπιϕάνειαν, Oberflächen als geometrische Orte, welche Proklos und
Pappos erwähnen. Der Begriff des geometrischen Ortes wird schon
von Pappos gerade so wie heute definiert als die Gesamtheit aller
Punkte, denen ein und dieselbe bestimmte Eigenschaft (Symptoma)
zukommt, und je nachdem diese Gesamtheit eine Linie oder eine
Fläche bildete, heissen die Orte Linien- oder Flächenorte. Davon
verschieden sind »körperliche Orte« (στερεοι), dies sind Linien,
welche durch den Schnitt von Körpern entstehen, wie die
K e g e l s c h n i t t e. Die Schrift des Euklid hat nach Pappos
vermutlich Ortseigenschaften der Kugel-, Kegel- und Zylinderflächen
behandelt und scheint in der bedeutenderen Arbeit des
A r c h i m e d e s über Konoide und Sphäroide aufgegangen zu sein.
Mehr wissen wir von den 3 Büchern Porismata.
»Porismata«, da Pappos den Inhalt so
ausführlich angegeben hat, dass M i c h a e l Elemente.
C h a s l e s danach eine Rekonstruktion
versucht hat, nach Vorarbeiten von R . S i m s o n, dessen
Euklidbearbeitung von 1756 noch heute für England massgebend ist.
Allerdings hat P. B r e t o n d e C h a m p zuerst erkannt, dass die
29 Sätze in der Vorrede des VII. Buches bei P a p p o s ein Résumé
der 171 Sätze des Euklid enthalten. Das Wort Porisma selbst bildet
noch eine Streitfrage. Es hat 2 Bedeutungen, erstens Zusatz, so
kommt es vielfach in den Handschriften der Elemente vor, zweitens
bedeutet es ein Mittelding zwischen einem gewöhnlichen Lehrsatz
und einem sogenannten Ortssatz, d. h. einem Satz der ausspricht,
dass eine bestimmte Kurve eine bestimmte Eigenschaft hat. Als
Beispiel diene der Satz: Der Ort der Punkte, deren Abstände von
zwei festen Punkten ein festes Verhältnis haben ist der Kreis (des
A p o l l o n i o s) dessen Durchmesser die Strecke zwischen den
beiden in diesem Verhältnis zu den gegebenen Punkten
harmonischen auf der gegebenen Graden ist. Ein Porisma wäre
demzufolge in der Geometrie etwa das, was man in der Arithmetik
einen Existenzbeweis nennt, es spräche aus, dass ein bestimmter
Ort existiert, ohne ihn direkt zu konstruieren. Die Porismata bildeten
vermutlich für die synthetische oder direkte Konstruktionsmethode
ein Seitenstück zu den »Data« als Hilfsmittel für die analytische
Methode. Nach dem Résumé bei Pappos gingen sie weit über die
Elemente hinaus und mit C h a s l e s und H . Z e u t h e n müssen wir
annehmen, dass sie die Grundlagen für die p r o j e k t i v e
Behandlung der K e g e l s c h n i t t e enthalten.
Auch über diese zu seiner Zeit höchste Mathematik hat Euklid
geschrieben, vier Bücher Konika. Ebenso wie Euklid die Arbeiten
seiner Vorgänger insbesondere des Theudios für seine Elemente
benutzte und verdrängte, wurden seine Konika nach dem Zeugnis
des Pappos von dem grossartigen Werk der 8 Bücher Konika des
A p o l l o n i o s verdrängt, in dessen erste 4 Bücher sie vermutlich
vollständig Aufnahme gefunden haben. Sie werden daher auch
schwerlich aus arabischen Quellen je wieder zum Vorschein
kommen, wenn sie nicht zufällig als Leichenbinde einer Mumie
gefunden werden.
Verloren ist auch eine Schrift mathophilosophischen Charakters
ψευδαρια, »Trugschlüsse« genannt und zwar sind absichtliche
Falschschlüsse gemeint. Proklos nennt die Schrift »καθαρκεικον και
γυμναστικον«, reinigend und übend durch Anstrengung d. h. die
Schrift war zur Geistesgymnastik der Schüler bestimmt.
Und nun zu dem Werke das den Namen des Euklid unsterblich
gemacht hat, zu den Elementen, die »στοιχεία«, wozu ich meine
Schrift Euklid etc. von 1901 heranzuziehen bitte.

Die Elemente des Euklid.


Den 13 Büchern der Elemente des
Die Elemente des Euklid.
Euklid wurden schon früh zwei Bücher
angehängt. Das 14. Buch ist eine tüchtige Arbeit des in Alexandrien
etwa 150 v. Chr. lebenden Mathematikers und Astronomen
H y p s i k l ē s, über die fünf regulären (platonischen) Körper; das 15.
Buch ist eine weit schwächere Arbeit und hat nach Ta n n e r y und
H e i b e r g, beides grosse Kenner der hellenischen Mathematik,
einen Schüler des I s i d o r o s, des Erbauers der Sophienkirche um
530 n. Chr. zum Verfasser.
Den Zweck der Elemente gibt Proklos S. 72 an: Elemente nennt
man das, dessen Theorie hinreicht zum Verständnis von allem
anderen, und mittelst dessen man im Stande ist die Schwierigkeiten,
welche das andere bietet, aus dem Wege zu räumen. Stoicheion
bedeutet eigentlich Buchstabe und l. c. sagt Proklos gradezu: die
Elemente enthalten die Sätze, welche als Bestandteile aller
folgenden auftreten, wie die Buchstaben im Wort. Die
Grundbedeutung von Stoichos ist eine militärische es bedeutet das,
was wir einen Zug nennen, also auch die Grundlage der Formation.
Der Zweck und die Notwendigkeit der Euklid'schen Elemente
folgt aus der Entwicklung der hellenischen Mathematik. Die
Pythagoräer (s. d.) waren bei den Problemen zweiten Grades auf die
√2, die Savisescha gestossen oder gestossen worden und damit auf
die Irrationalzahl und die Inkommensurabilität. Damit wurden alle
früheren Beweise über Teilung, Ähnlichkeit, Flächenmessung
hinfällig. Das 4. Jahrhundert, P l a t o n, Theaitet, Eudoxos und die
Schüler des Platon und Eudoxos, widmeten sich der methodischen
Arbeit die neuen Grundlagen festzustellen. Boten doch die
mathematischen Definitionen Platon vortreffliche Beispiele seinem
sokratischen Hang zur Definition der Begriffe zu folgen. Von
E u d o x o s rührt das ganze fünfte Buch der Elemente, die Lehre von
den Proportionen in, ich möchte sagen, Weierstrass'scher Strenge,
her, er ist der eigentliche Schöpfer der Exhaustionsmethode, die
vermutlich durch ihn schon bei A r i s t o t e l e s erwähnt ist, und die
sich später, befruchtet mit dem Demokritischen Differentialbegriff,
bei Archimedes und Apollonios zur Infinitesimalrechnung auswuchs.
Von T h e a i t e t wissen wir, dass er die Einteilung der
Irrationalzahlen oder genauer die Lösung von Gleichungen 4.
Grades, welche auf quadratische Gleichungen reduzierbar sind,
jedenfalls begonnen hat. Wahrscheinlich von P l a t o n selbst,
jedenfalls aus seiner Schule, rühren die Fassungen vieler
Definitionen und Axiome bei Euklid her, welche Aristoteles (vgl.
H e i b e r g, Teubnersche Abh. z. Gesch. etc. Heft 18, 1904) nach den
Elementen des Magnesiers Theudios zitiert. Nach einem Jahrhundert
waren die methodischen Arbeiten zum Abschluss reif und den gab
Euklid, bei dem das methodische Gefühl bereits in so eminenten
Grade ausgebildet ist, dass er mit dem Beweise schliesst: M e h r
als fünf regelmässige Körper kann es nicht
geben.
Die Aufgabe die er sich setzte auf Grund der notwendigsten
Voraussetzungen die Geometrie und in geometrischer Einkleidung
auch die Arithmetik als ein zusammenhängendes Ganzes
unantastbar darzustellen, hat er in einer Weise gelöst, die alle
Vorgänger spurlos verschwinden liess und die, niemals übertroffen,
die Bewunderung aller Zeiten und aller Völker erregt hat.
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookfinal.com

You might also like