Functional Programming in JavaScript How to improve your JavaScript programs using functional techniques First Edition Luis Atencio - The full ebook with complete content is ready for download
Functional Programming in JavaScript How to improve your JavaScript programs using functional techniques First Edition Luis Atencio - The full ebook with complete content is ready for download
com
https://textbookfull.com/product/functional-programming-in-
javascript-how-to-improve-your-javascript-programs-using-
functional-techniques-first-edition-luis-atencio/
OR CLICK HERE
DOWLOAD EBOOK
https://textbookfull.com/product/the-joy-of-javascript-1st-edition-
luis-atencio/
textbookfull.com
Beginning Functional JavaScript: Uncover the Concepts of
Functional Programming with EcmaScript 8 2nd Edition
Srikanth Machiraju
https://textbookfull.com/product/beginning-functional-javascript-
uncover-the-concepts-of-functional-programming-with-ecmascript-8-2nd-
edition-srikanth-machiraju/
textbookfull.com
https://textbookfull.com/product/the-joy-of-javascript-1st-edition-
atencio/
textbookfull.com
https://textbookfull.com/product/head-first-javascript-
programming-2nd-edition-a-learners-guide-to-modern-javascript-eric-
freeman/
textbookfull.com
https://textbookfull.com/product/head-first-javascript-
programming-2nd-edition-a-learners-guide-to-modern-javascript-eric-
freeman-2/
textbookfull.com
Functional Programming in JavaScript
Functional
Programming
in JavaScript
LUIS ATENCIO
MANNING
SHELTER ISLAND
For online information and ordering of this and other Manning books, please visit
www.manning.com. The publisher offers discounts on this book when ordered in quantity.
For more information, please contact
Special Sales Department
Manning Publications Co.
20 Baldwin Road
PO Box 761
Shelter Island, NY 11964
Email: orders@manning.com
Many of the designations used by manufacturers and sellers to distinguish their products are
claimed as trademarks. Where those designations appear in the book, and Manning
Publications was aware of a trademark claim, the designations have been printed in initial caps
or all caps.
Recognizing the importance of preserving what has been written, it is Manning’s policy to have
the books we publish printed on acid-free paper, and we exert our best efforts to that end.
Recognizing also our responsibility to conserve the resources of our planet, Manning books
are printed on paper that is at least 15 percent recycled and processed without the use of
elemental chlorine.
ISBN: 9781617292828
Printed in the United States of America
1 2 3 4 5 6 7 8 9 10 – EBM – 21 20 19 18 17 16
To my wonderful wife, Ana.
Thank you for your unconditional support
and for being the source of passion and inspiration in my life.
brief contents
PART 1 THINK FUNCTIONALLY ..................................................1
1 ■ Becoming functional 3
2 ■ Higher-order JavaScript 23
vii
contents
preface xv
acknowledgments xvii
about this book xix
1 Becoming functional
1.1
3
Can functional programming help? 5
1.2 What is functional programming? 5
Functional programming is declarative 7 Pure functions and
■
ix
x CONTENTS
2 Higher-order JavaScript 23
2.1 Why JavaScript? 24
2.2 Functional vs. object-oriented programming 24
Managing the state of JavaScript objects 31 Treating objects ■
of closures 50
2.5 Summary 53
programming 111
4.6 Managing control flow with functional combinators 112
Identity (I-combinator) 112 Tap (K-combinator) 113
■
null-checking 121
5.2 Building a better solution: functors 121
Wrapping unsafe values 122 ■ Functors explained 124
5.3 Functional error handling using monads 127
Monads: from control flow to data flow 128 Error handling with
■
dependencies 164
6.4 Capturing specifications with property-based testing 166
6.5 Measuring effectiveness through code coverage 172
Measuring the effectiveness of testing functional code 173
Measuring the complexity of functional code 177
6.6 Summary 179
xv
xvi PREFACE
xvii
xviii ACKNOWLEDGMENTS
On the technical side, special thanks to Dean Iverson, who served as the book’s
technical editor; Daniel Lamb, who served as the book’s technical proofreader; and
Brian Hanafee, for his thorough and in-depth evaluation of the entire book. They are
the best technical editors I could have hoped for.
Last but not least, I thank my wife for always supporting me, and my family for
pushing me to become better every day and not asking why I didn’t call as often to
check in while I was writing this book. Also, thanks go to my colleagues at work for
purchasing early releases of the chapters. I am grateful to have the pleasure of work-
ing alongside such wonderful people.
about this book
Complexity is a huge beast to tame, and we’ll never get rid of it entirely; it will always
be an aspect of software development. I’ve spent countless hours and immeasurable
brainpower trying to understand what a particular piece of code does. The secret is to
control the complexity so it doesn’t grow in proportion to the size of your code base—
and functional programming can help. We’re writing more JavaScript than ever before.
We’ve gone from building small client-side event-handling routines, to heavy client-
side architectures, to complete isomorphic (server + client) JavaScript applications.
Functional programming isn’t a tool—it’s a way of thinking that can apply equally to
any of these environments.
This book is designed to teach you how to apply functional programming tech-
niques to your code using ECMAScript 6 JavaScript. The material is presented at a
gradual, steady pace and covers both theoretical and practical aspects of functional
programming. I provide additional information for advanced readers, to help you get
deeper into some of the harder concepts.
Roadmap
This book has eight chapters and is divided into three parts that guide you from fun-
damental building blocks to more-advanced and practical applications of functional
programming.
xix
xx ABOUT THIS BOOK
Part 3, “Enhancing your functional skills,” discusses the practical benefits of using
functional programming to tackle real-world challenges:
■ Chapter 6 reveals the inherent ease with which functional programs can be unit
tested. In addition, it introduces a rigorous, automated testing mode called
property-based testing.
■ Chapter 7 takes a look at JavaScript’s memory model, which is used to support
the evaluation of functions. This chapter also discusses techniques that help
optimize the execution time of functional JavaScript applications.
■ Chapter 8 introduces some of the main challenges JavaScript developers face
on a day-to-day basis when dealing with event-driven and asynchronous behav-
ior. It discusses how functional programming can provide elegant solutions to
reduce the complexity of existing imperative solutions with a related paradigm
known as reactive programming, implemented using RxJS.
Typographical conventions
The following conventions are used throughout the book:
■ Italic typeface is used to reference important terms.
■ Courier typeface is used to denote code listings, as well as elements and attri-
butes, methods names, classes, functions, and other programming artifacts.
■ Code annotations accompany some of the source code listings, highlighting
important concepts.
xxii ABOUT THIS BOOK
Author Online
Purchase of Functional Programming in JavaScript includes free access to a private web
forum run by Manning Publications where you can make comments about the book,
ask technical questions, and receive help from the author and from other users. To
access the forum and subscribe to it, point your web browser to https://www.manning
.com/books/functional-programming-in-javascript. This page provides information
on how to get on the forum once you are registered, what kind of help is available,
and the rules of conduct on the forum.
Manning’s commitment to our readers is to provide a venue where a meaningful
dialog between individual readers and between readers and the author can take place.
It is not a commitment to any specific amount of participation on the part of the
author, whose contribution to Author Online remains voluntary (and unpaid). We
suggest you try asking the author some challenging questions lest his interest stray!
The Author Online forum and the archives of previous discussions will be accessible
from the publisher’s website as long as the book is in print.
Part 1
Think functionally
I t’s highly probable that most of your experience building professional appli-
cations has been with an object-oriented language. You may have heard or read
about functional programming in other books, blogs, forums, and magazine
articles, but you’ve probably never written any functional code. Don’t worry; this
is to be expected. I’ve done most of my development in an object-oriented envi-
ronment as well. Writing functional code isn’t difficult, but learning to think
functionally and letting go of old habits is. The primary goal of part 1 of this
book is to lay the foundation for and prepare your mind to embrace the func-
tional techniques discussed in parts 2 and 3.
Chapter 1 discusses what functional programming is and the mindset you
need to embrace it; it also introduces some of the most important techniques
based on pure functions, immutability, side effects, and referential transparency.
These form the backbone of all functional code and will help you transition into
functional more easily. Also, these will be the guiding principles that set the stage
for many of the design decisions we make in the following chapters.
Chapter 2 provides a first view of JavaScript as a functional language. Because
it’s so ubiquitous and mainstream, it’s an ideal language with which to teach func-
tional programming. If you aren’t a strong JavaScript developer, this chapter will
bring you up to speed with everything you need to know to understand functional
JavaScript, such as higher-order functions, closures, and scoping rules.
Becoming functional
If you’re reading this book, chances are you’re a JavaScript developer with a work-
ing knowledge of object-oriented or structured design, and you’re curious about
functional programming. Perhaps you’ve tried to learn it before and haven’t been
able to apply it successfully at work or on your personal projects. In either case,
your main goal is to advance your development skills and improve the quality of
your code. This book can help you accomplish that.
3
4 CHAPTER 1 Becoming functional
The rapid pace of web platforms, the evolution of browsers, and—most impor-
tant—the demands of end users have all had a profound effect on the way we design
web applications today. Users demand that web applications feel more like a native
desktop or a mobile app with rich and responsive widgets. Naturally, these demands
force JavaScript developers to think more broadly about the solution space and to
adopt adequate programming paradigms and best practices that provide the best pos-
sible solutions.
As developers, we gravitate toward frameworks that help us create extensible and
clean application architectures. Yet the complexity of our codebase still gets out of
control, and we’re challenged to reexamine the basic design principles of our code.
Also, the web of today is radically different than it was years ago for JavaScript develop-
ers, because we can do many things now that weren’t technically feasible before. We
can choose to write large server-side applications with Node.js or push the bulk of the
business logic onto the client, leaving a thin server behind. In either case, we need to
interact with storage technology, spawn asynchronous processes, handle events, and
much more.
Object-oriented design helps solve part of the problem; but because JavaScript is
such a dynamic language with lots of shared state, it isn’t long before we accumulate
enough complexity to make our code unwieldy and hard to maintain. Object-oriented
design certainly moves the needle in the right direction, but we need more. Perhaps
you’ve heard the term reactive programming in recent years. This programming para-
digm facilitates working with data flows and propagation of change. In JavaScript, this
is extremely important when dealing with asynchronous or event-based code. Overall,
what we need is a programming paradigm that encourages us to think carefully about
our data and the functions that interact with it. When thinking about an application’s
design, ask yourself the following questions in terms of these design principles:
■ Extensibility—Do I constantly refactor my code to support additional functionality?
■ Easy to modularize—If I change one file, is another file affected?
■ Reusability—Is there a lot of duplication?
■ Testability—Do I struggle to unit test my functions?
■ Easy to reason about—Is my code unstructured and hard to follow?
If you answer “Yes” or “I don’t know” to any of these questions, then you’ve picked up
the right book as a guide on the path to productivity. Functional programming (FP) is
the programming paradigm you need. Although it’s based on simple concepts, FP
requires a shift in the way you think about problems. FP isn’t a new tool or an API, but
a different approach to problem solving that will become intuitive once you under-
stand the basic principles.
In this chapter, I define what functional programming is and tell you how and why
it’s useful and important. I introduce the core principles of immutability and pure func-
tions and talk about FP techniques and how those techniques affect your approach to
designing programs. These techniques allow you to easily pick up reactive programming
What is functional programming? 5
and use it to solve complex JavaScript tasks. But before we can get into all this, you
need to learn why thinking functionally is important and how it can help you tackle
the complexities of JavaScript programs.
and reduce mutation of state in your application. I know this sounds like a mouthful, but
I’ll visit each of these terms further and build on them throughout the book.
Normally, FP books start with computing Fibonacci numbers, but I’d rather start
with a simple JavaScript program that displays text on an HTML page. What better text
to print than the good ol’ “Hello World”:
This program is simple, but because everything is hardcoded, you can’t use it to dis-
play messages dynamically. Say you wanted to change the formatting, the content, or
perhaps the target element; you’d need to rewrite this entire expression. Maybe you
decide to wrap this code with a function and make the change points parameters, so
you can write it once and use it with any configuration:
function printMessage(elementId, format, message) {
document.querySelector(`#${elementId}`).innerHTML =
`<${format}>${message}</${format}>`;
}
An improvement, indeed, but still not a completely reusable piece of code. Suppose
you want to write to a file instead of an HTML page. You need to take the simple
thought process of creating parameterized functions to a different level, where param-
eters aren’t just scalar values but can also be functions themselves that provide addi-
tional functionality. Functional programming is a bit like using functions on steroids,
because your sole objective is to evaluate and combine lots of functions with others to
achieve greater behavior. I’ll fast-forward a bit and show you a sneak peek at this same
program using a functional approach.
printMessage('Hello World');
Without a doubt, this looks radically different than the original. For starters, h1 isn’t a
scalar anymore; it’s a function just like addToDom and echo. Visually, it feels as though
you’re creating a function from smaller functions.
There’s a reason for this madness. Listing 1.1 captures the process of decomposing
a program into smaller pieces that are more reusable, more reliable, and easier to
Random documents with unrelated
content Scribd suggests to you:
La Geisha revient bientôt au bras de son amant de cœur. Il tient une
branche d'amandier fleuri; il paraît heureux autant qu'elle.—Le
seigneur repoussé les voit, les arrête, les sépare; il insulte, provoque
l'amant. Une courte lutte s'engage; les sabres sont au clair;—le
rideau tombe.
Il se relève sur l'antichambre d'un temple. L'amant du premier acte
est, paraît-il, fiancé; la Geisha le poursuit; c'est pour éviter sa colère
amoureuse qu'il a fui dans le pays jusqu'à ce temple; il arrive avec
sa fiancée; elle et lui vont y prendre refuge.—La scène, après qu'ils
sont entrés dans l'intérieur du temple, reste occupée par cinq bonzes
bizarres, types, je pense, traditionnels comme les apothicaires au
temps de Molière. Ils sont oisifs, niais, couards et fantoches assez
pour ne pouvoir, à cinq, garder la porte du temple lorsque la Geisha
tout à l'heure va venir pour y pénétrer. Car elle a découvert la
retraite de l'amant et de la rivale. Et d'abord elle s'y prend par la
douceur; et repoussée d'abord, demande aux bonzes la faveur de
danser devant eux pour le dieu.—Cette danse commence lente et
grave; puis s'anime; la Geisha tout entière y paraît, avec ses docilités
langoureuses, ses souplesses de courtisane, avec aussi les sursauts
brusques, les élans de l'amante passionnée. Cependant les gardiens,
séduits au début, se reprennent, et devant sa croissante insistance,
la repoussent enfin assez brutalement. Elle revient; sa passion fait sa
force; elle envoie, en quelques coups de reins culbuter les gardiens
du temple, et pénètre tragiquement.
Dans cette scène, où, dépouillant de minces robes superposées, trois
fois elle se métamorphose, Sada Yacco est merveilleuse. Elle l'est
plus encore lorsqu'au bout d'un instant, parmi le désarroi que vient
de causer sa violence, elle reparaît, pâle, les vêtements défaits, les
cheveux tombants, les yeux fous. La pauvre fiancée cependant a pu
réoccuper la scène; les bonzes la protègent, l'entourent, et, dans son
égarement, la Geisha ne la voit pas d'abord. Mais, dès qu'elle l'a
vue, sa fureur, l'acharnement contre cette victime misérable, que
défendent en vain les gardiens, sa lutte enfin contre le prêtre
survenu, ses efforts insensés où sa passion et sa vie s'exténuent ...
je n'irai pas chercher comparaison bien loin, chère Angèle: ce fut
beau comme de l'Eschyle.
Oui, Sada Yacco nous donna, dans son emportement rythmique et
mesuré, l'émotion sacrée des grands drames antiques, celles que
nous cherchons et ne trouvons plus sur nos scènes. Car aucune
inharmonie dans ses gestes que scande et rythme un lyrisme
constant; aucune nuance inutile, aucun détail; ce fut d'un paroxysme
très sobre, comme celui des hautes œuvres d'art, que domine et que
se soumet une supérieure idée de beauté, Sada Yacco ne cesse
jamais d'être belle; elle l'est d'une manière continue et
continuellement accrue; elle ne l'est jamais plus que dans sa mort,
toute droite et toute raidie, dans les bras de l'amant qu'un si
farouche amour a reconquis, et qui la touche et qui la presse, mais
qu'elle ne reconnaît pas d'abord, tant la tendresse et la douceur ont
déjà déserté son âme; mais quand elle comprend à la fin que c'est
lui qui la tient dans ses bras, tandis que déjà la mort les sépare, elle
pousse un grand cri d'étonnement d'amour, puis retombe épuisée,
ayant fini de haïr et d'aimer.—C'est à vrai dire le seul cri qu'elle
pousse dans toute la pièce; et même ce suprême cri d'amour est
tempéré; il arrive admirablement et simplement satisfait une attente,
une attente très préparée. (Les acteurs, même dans les instants de
plus grande fureur tragique, parlent à voix très maintenue; ils ne
donnent jamais toute leur voix; jamais ils ne «donnent de la voix».)
—Et je me réjouissais qu'il soit encore ici bien prouvé que: l'œuvre
d'art ne s'obtient que par contrainte, et par la soumission du
réalisme à l'idée de beauté préconçue.
C'est pour vous redire cela que je vous écris cette lettre; mais je
vous connais bien; vous lirez peut-être ma lettre, mais sauterez par
là-dessus. Tant pis.
IX
Chère Angèle,
Excusez mon silence de deux mois; je voudrais le prolonger encore,
en prolongeant l'été qui le causa. Et je m'attarde où il s'attarde, dans
un petit repli des Cévennes; après le temps affreux de Normandie, la
chaleur y paraît plus belle, et je ne croirais pas à l'hiver sans la chute
des feuilles lassées, sans l'abandon des champs et sans mon désir
de la ville.
J'ai pu revoir, avant de m'exiler ici, les grands champs plats de la
Seine-Inférieure, qui, fauchés, nous rappelèrent le désert, à cause
aussi des oasis qu'y forment au loin les hêtraies.
Est-ce à ces vastes horizons, à des conditions économiques
différentes, que l'on doit le repos de voir à quelque cent kilomètres à
peine du Calvados d'où je revenais attristé, des paysans, de même
race je suppose, mais non plus perdus de richesse et de paresse et
d'alcool, mais laborieux, graves, décents et prolifiques, Sous le ciel
léger du Midi, la différence est bien plus grande encore; je
comprends volontiers ceux de Toulouse ou d'Aix, qui, n'ayant point
quitté leur soleil radieux, parlent du peuple comme j'en parlerais, je
pense, si je vivais toujours au milieu d'eux.—Oui certes, je crois le
théâtre du peuple possible; mais cela dépend des contrées. Le
malheur est que là où il pourrait faire le plus de bien, c'est là que
son établissement est le plus difficile.—Riante terre du Midi, donne-
nous de nouveaux exemples! De loin on peut traiter cela de
chimères: on se rapproche et l'on y croit.
Dans la campagne des environs de Nîmes, je retrouve un simple
jardinier qui baptise sa chienne Corinne par enthousiasme pour le
livre de Madame de Staël.—En Normandie, on ne se réjouit de rien
d'humain sans être dupe. Votre ami Raymond Bonheur vint m'y voir:
—Quelle excellente idée vous eûtes, me dit-il, de nommer votre
poulain Chopin. Comme cela convient à sa grâce!
—Oh! lui dis-je, ne m'attristez pas. Je ne fus pour rien au baptême,
et ne peux rien à rien, ici. S'il s'appelle Chopin, c'est que sa mère
s'appelait Chopine; voilà tout.
—A Magny, dit Bonheur, je m'émus d'un petit garçon, parce qu'il
s'appelait Virgile. Qui t'a nommé ainsi, lui demandai-je?—C'est ma
marraine.—Et pourquoi?—Parce qu'elle s'appelle Virginie.—Ne vous
plaignez donc pas; vous voyez que c'est partout la même chose.
—Eh bien, non! cher Bonheur: dans le Midi, ce n'est pas la même
chose; c'est pourquoi j'aime le Midi.—Vous pensez bien qu'il m'est
assez indifférent que cette chienne ou cette jument près de moi
s'appelle ou Corinne ou Chopine; mais un pays où l'homme ne songe
pas uniquement à s'enrichir et s'alcooliser me paraîtra toujours un
beau pays, et que j'envie.—Que des fêtes comme celles de Béziers y
aient été possibles, voilà qui dit un pays admirable. Verrons-nous
donc revivre enfin, ailleurs qu'en des musées, l'art pour qui nous
vivons, mais de qui nous portions le deuil? De peur de trop me
désoler après, je doute encore, et retiens encore ma joie. Le seul
récit des belles fêtes de la Grèce nous a laissé de si mortels
regrets!...
Mais que sert de parler? Ils n'écouteront pas.—Et c'est moi qui les
écouterai m'appeler, moi et d'autres, esprits craintifs, âmes
pondérées, n'ayant eu jusque-là aucun contact avec nous,—et cela
au nom de la Vie, de la Joie dont ils se disent déjà dispensateurs.
Les poèmes de Griffin, les Nourritures Terrestres, les poèmes de
Henri Ghéon, etc., ont pourtant précédé, non suivi leurs dires; s'ils le
savaient un peu plus, peut-être écouteraient-ils un peu plus nos
paroles et comprendraient-ils mieux que, si nous leur crions: fausse-
route! c'est au nom même des dieux qu'ils nomment et dont aussi la
religion délaissée nous réunit à quelques-uns dans l'Ermitage. Et
c'est au nom de l'œuvre d'art qu'ils veulent faire—et qu'il faudra
réinventer complètement, car notre littérature a désappris le goût du
beau et en a perdu le souci.
Pour la musique et la peinture, nous sommes certes moins à plaindre
—et pourtant combien le ciel s'assombrit de la seule mort d'un Puvis!
—Le ciel de notre littérature est resté sombre assez longtemps. Du
côté de l'occident, plus rien n'y luit beaucoup; mais l'orient s'emplit
de lueurs. Un extraordinaire silence semble creuser l'espace entre le
siècle mort et celui qui commence, comme il se fit entre le xviie
siècle et le suivant. Malgré son œuvre déjà grande, Verhaeren pas
plus que Moréas ni que Griffin n'est de la génération passée, sans
quoi je n'eusse pas dit que notre ciel était si sombre. Régnier, plus
différent de nous peut-être, maintient le goût d'une langue si pure,
que c'est à lui que je voudrais aller comme à un maître, s'il était plus
âgé, ou si j'étais plus jeune.—Chère Angèle, dites aux jeunes gens
du Pays de France et de l'Effort que nous, tout autant qu'eux, c'est
l'œuvre d'art que nous voulons: que c'est vers elle que nous
marchons, et qu'ils se trompent en croyant notre but opposé ou nos
routes divergentes. Répétez-leur ce vers du Dante:
Adieu.
X
Chère Angèle,
Aujourd'hui, je ne vous enverrai qu'un livre; et ce livre en vaudra
beaucoup: Voici les Mille et une Nuits, que le Dr Mardrus vient de
traduire, et de rebaptiser avec une pointe d'arabisme: Les Mille Nuits
et une Nuit.
Vous savez mon admiration pour ce livre. Mon père qui l'admirait
aussi le mit entre mes mains de si bonne heure que c'est, je crois,
avec la Bible le premier livre que j'ai lu.—Mais je pense que, si,
seule, la traduction de Mardrus eût alors existé, mon père eût choisi,
pour m'y apprendre à lire, un autre livre. A peine osai-je vous le
donner. Il faut bien, pour m'y décider, la tranquille assurance de la
préface, dans laquelle le traducteur se fait garant de la naïveté et de
l'ingénuité du conteur.
On m'avait mis en garde contre Galland, dit et redit qu'il prenait
dans sa traduction toutes les libertés qu'il enlevait aux contes; à
défaut de Burton, dont j'ai l'ennui de ne comprendre pas la langue,
j'avais pu lire la version allemande de Weil et me rendre compte que
celle de Galland respectait bien plus Louis XIV que le grand sultan
Schahriar; que Galland omettait systématiquement (entre autres
choses) les citations poétiques qui surabondent dans le récit, en sont
une des particularités merveilleuses, et pourraient, réunies, former
une très importante anthologie.
Les critiques contre la traduction de Galland sont faciles. Elles sont
inutiles aussi. Il s'agissait à cette époque de réduire au bon goût
français les ouvrages qu'on prétendait traduire. Près de cinquante
ans plus tard, l'abbé Prévost écrivait en préface de sa traduction de
Grandison: «J'ai supprimé ou réduit aux usages communs de
l'Europe ce que ceux de l'Angleterre peuvent avoir de choquant pour
les autres nations.» Et le biographe de Prévost ajoute: «Son goût
était trop sûr pour se borner à traduire son original.» Galland avait
aussi «le goût trop sûr».—Ces phrases font sourire aujourd'hui; mais
on oublie trop que, sous Louis XIV, les Français avaient plus de droit
que nous n'avons d'être infatués de la France.
La langue de Galland est plaisante, douce à lire, classique encore et
souvent non sans grâce. Son orientalisme affaibli garde un charme.
Enfin peut être sa traduction n'était-elle pas inutile à titre d'initiation
préparatoire. Celle de Mardrus[1] d'abord eût pu surprendre et
rebuter. Galland fut comme l'étuve tiède qui précède, dans un
Hammam, la salle torride. Et, tandis que Galland, à la manière de
son siècle, recherchait dans ses contes avant tout l'émotion générale
et la part qu'il croyait être commune à tous parce qu'il la sentait être
semblable à lui, Mardrus, lui, se plaît au contraire (et nous nous
plaisons avec lui), à l'étrange, à la différence; ou mieux, il ne se plaît
à rien qu'à une traduction très fidèle, et, si la vie de ces contes va
différer de notre vie, c'est par toute l'ardeur et la saveur orientale
qu'il leur laisse. Ah! l'habile Mardrus! Ah! vive Mardrus! Ah! merci! Ici
l'on exulte; on éclate; on s'enivre par tous les sens.
Que la sensualité de Galland paraît pâle! Le bol «plein de grains de
grenade apprêtés au sucre, aux amandes décortiquées, et parfumés
délicieusement et juste à point» que le faux pâtissier Hassan prépare
pour le petit Agib, et auquel il ajoute encore, lorsqu'on lui
redemande de ce plat, «un peu de musc et d'eau de roses»; ce plat
exquis par lequel Hassan se laisse inespérément reconnaître, devient
chez Galland «une tarte à la crème», bonnement. Et dire que déjà
les «confitures sèches» qu'on y goûte me faisaient rêver! qu'eût-ce
été si j'avais ouï parler de la «boisson délicieuse et parfumée aux
fleurs»? si j'avais lu: «Elle m'offrit à boire du sirop au musc»?—Car
ce qui ressort avant tout de cette traduction si nouvelle, ce n'est pas
l'invention prodigieuse de ces contes, pour laquelle je garde une
inlassable curiosité mais que, plus ou moins, nous connaissions déjà,
—c'est la sensualité splendide, persistante, indécente, et mêlée de
rires. Permettez-vous que je cite? «. . . . . . . . . . . . . . . . . . . . .»
Non; décidément, je n'ose pas citer.—Mais il y a d'autres passages;
par exemple ces vers si moqueurs et charmants «sur l'excellence des
pâtisseries arabes», ces vers que le troisième calender (il s'appelle
ici: saalouk), métamorphosé en singe, écrit pour révéler qu'il est un
homme,—et l'on ne saura ce dont on doit s'étonner le plus: ou de
son lyrisme subit, ou de la subtilité de sa gourmandise:
«O pâtisseries, douces, fines et sublimes; pâtisseries enroulées par
les doigts! Vous êtes la thériaque, antidote de tout poison! En
dehors de vous, pâtisseries, je ne saurais aimer jamais rien; et vous
êtes mon seul espoir, toute ma passion!
O frémissements de mon cœur à la vue d'une nappe tendue ou, en
son milieu, s'aromatise une Kenafa (ici une note nous apprend que
la Kenafa est «une sorte de pâtisserie faite avec des filets très fins
de vermicelle») nageant au milieu du beurre et du miel, dans le
grand plateau!
O Kenafa! Kenafa amincie en une chevelure appétissante,
réjouissante! mon désir, le cri de mon désir vers toi, ô Kenafa, est
extrême! Et je ne pourrais, au risque de mourir, passer un jour de
ma vie sans toi sur ma nappe, ô Kenafa, ya Kenafa!
Et ton sirop! ton adorable, délicieux sirop! Haï! en mangerais-je, en
boirais-je jour et nuit, que j'en reprendrais dans la vie future!»
—Je ne sais pas, chère amie, ce que ces strophes valent dans le
texte; dans la traduction de Mardrus, je les trouve parfaitement
merveilleuses.
Cette traduction abonde d'ailleurs en passages exquis. Écoutez cette
courte phrase: «Par Allah! notre nuit va être une nuit bénie, une nuit
de blancheur!»—Mais c'est de sensualité que je voulais vous parler.
Le mot «sensualité» est devenu chez nous de signification si vilaine
que vous n'osez plus l'employer; c'est un tort; il faudra réformer
cela. Sachez que Coleridge, à propos de Millon, fait de la sensualité
une des trois vertus du poète. La sensualité, chère amie, consiste
simplement à considérer comme une fin et non comme un moyen
l'objet présent et la minute présente. C'est là ce que j'admire aussi
dans la poésie persane; c'est là ce que j'y admire surtout.—Car la
littérature persane presque entière m'apparaît pareille à ce palais
doré, dont il est raconté, dans le récit d'un des trois saalouks, que
les quarante portes ouvrent, la première sur un verger plein de
fruits, la seconde sur un jardin de fleurs, la troisième sur une volière,
la quatrième sur des joyaux entassés ... mais dont la quarantième
défendue, ferme une salle très obscure dont l'atmosphère saturée
d'une sorte de parfum très subtil vous soûle et vous fait défaillir; une
salle où l'on entre pourtant, où l'on trouve un cheval très noir, qui n'a
l'air qu'étrange et que beau, mais qui, dès qu'on l'enfourche, déploie
des ailes, des ailes «qu'on n'avait pas d'abord remarquées»,—qui
bondit avec vous, vous enlève au plus haut d'un ciel inconnu; puis
brusquement s'abat, vous désarçonne, et puis vous crève un œil
avec la pointe de son aile, comme pour marquer mieux
l'éblouissement que laisse ce rapide voyage en plein ciel.—C'est ce
cheval noir que les commentateurs d'Omar et de Hafiz appellent «le
sens mystique des poètes persans». Car on affirme qu'il y est. Pour
moi qui n'apprécie que peu cette équitation aérienne, ni surtout la
demi-cécité qui la suit, plus sage que le troisième saalouk, je n'ouvre
pas la porte défendue et préfère m'attarder encore dans les vergers,
et les jardins et les volières. Je trouve là quelques voluptés si
intenses qu'elles suffisent pour désaltérer mes désirs et pour
endormir ma pensée.
XI
Chère Angèle,
Que votre palais délicat excuse un tel pâté d'arêtes: Voici le livre de
Stirner l'Unique et sa propriété[1], que M. Lasvignes vient de
traduire,—avec quelle patience, vous en jugerez par celle qu'il faut
pour le lire.
Du temps de Jean-Paul Richter, ce qu'on appelait l'Unique, c'était lui
—lui Jean-Paul, et c'était assez.—Vous souvient-il qu'en le lisant,
nous nous disions: quelle chance qu'il soit Unique! S'il devait y en
avoir beaucoup comme lui, le monde des lettres ne serait plus
tenable... Hélas! ô mon unique Angèle! l'Unique de M. Max Stirner
est légion!—Unique, il ne l'est plus d'ailleurs que pour lui-même:
c'est sa seule «propriété»; l'Unique, c'est moi, vous, Tityre; l'Unique,
c'est chacun pour soi.
Voilà ce que M. Stirner expose en un livre de près de 500 pages; et il
ne faut pas dire: l'Egoïsme, nous le connaissions déjà; ce serait mal
entendre le jeu du philosophe: nomenclateur, sa mission n'est pas
d'inventer; n'en déplaise au grand Nietzsche, le philosophe ne crée
ni ne déplace les valeurs: simplement il légitime et enrôle ce que des
tempéraments neufs et robustes lui proposaient. L'homme propose;
le philosophe dispose. L'Unique et sa propriété, c'est l'égoïsme bien
disposé.
Au cours des 500 pages, pas un accroc, pas un trouble, pas une
rencontre; le livre est laid, ressasseur, comble et vide. C'est un livre
de ruminant.
Et je ne vous en parlerais même pas, chère Angèle, si, par un
procédé digne des lois scélérates, certains ne voulaient à présent lier
le sort de Nietzsche à celui de Stirner, juger l'un avec l'autre pour les
englober mieux tous deux dans une admiration ou une réprobation
plus facile. Il serait trop long aujourd'hui de chercher avec vous en
quoi l'un de l'autre diffère, diffère jusqu'à s'opposer; la question
demeurera si grave que plus d'une fois nous y reviendrons, je
suppose. En attendant, indignez-vous tout simplement en entendant
dire: «Stirner et Nietzsche» comme Nietzsche lui-même s'indignait
en entendant dire: «Gœthe et Schiller».
C'est à propos de Stirner, non de Nietzsche qu'il me plaît de vous
parler un peu des «dangers de l'individualisme». Je crains, Angèle,
je crains les ratés de l'individualisme, autant que tous les autres
ratés. Ratés et médiocres, laissons-les donc aux religions établies; ils
s'en trouveront mieux; nous aussi. Ne poussons donc pas vers
l'individualisme ce qui n'a rien d'individuel; le résultat serait piteux.
Ou mieux:
Pourquoi formuler l'individualisme? Il n'y a pas d'individualisme qui
tienne; les grands individus n'ont nul besoin des théories qui les
protègent: ils sont vainqueurs. Laissons donc aux médiocres et aux
faibles la joie de les pouvoir condamner, et vaincus, écrasés par eux,
de prendre une innocente revanche en les vainquant en effigie[2].
Il me plaît, à Moi, l'unique, que le «grand homme» continue à me
paraître un grand coupable. Et puisque Max Stirner ose encore
employer le mot de lâcheté, je dirai que je trouve lâche, Moi, de
l'innocenter. Eh quoi! pour disculper sa grandeur, rétablirez-vous
donc la notion du bien et du mal? Aurez-vous peur du crime encore,
Monsieur Stirner? Vous n'êtes qu'un théoricien, non un vrai criminel.
Sous votre apparence logique, vous souhaitez encore mon estime.
Eh bien! vous ne l'aurez pas! précisément, vous ne l'aurez pas. Je ne
m'accorde la mienne que lorsque je ne pense plus comme vous.
O Stirner! allez-vous à nouveau nous rendre le «Moi, haïssable»?
Nous espérions n'y plus penser!...
Mais c'est qu'il faudrait mieux s'entendre et ne pas illustrer un tel
livre avec l'image d'un Gœthe, d'un Beethoven, d'un Balzac, d'un
Nietzsche ou d'un Napoléon (ces grandes et altières figures furent
admirablement dévouées à quelque grande idée projetée devant
eux, au-dessus d'eux); car il faut encore dire ceci d'admirable, c'est
que plus les individus sont grands, moins il y en a. En sorte qu'une
théorie qui chercherait à produire le plus grand nombre possible
d'individus diminuerait chacun pour tous, et tendrait à se rapprocher
du socialisme. Tous individus: plus d'individu. Ah! pour l'amour de
Moi! pas d'individualisme!!!
Retenez-les! Angèle! Retenez-les! Ne favorisons pas ces éclosions
malheureuses; continuons à honnir, à bannir, à lapider l'individu.
Ceux que ne retiendra ni le respect d'autrui, ni la crainte, ni la pitié,
ni la pudeur, ni le mépris ou la haine d'autrui, ceux-là ce sont les
vrais; nous pouvons espérer qu'ils vaudront quelque chose. Et ils
s'inquiètent peu qu'un Stirner les approuve, ou que les désapprouve
un Tolstoï. S'ils sont grands, c'est qu'ils sont en petit nombre; ils sont
triés. Et rien n'a pu contre eux, pas même mon épouvante: voilà
pourquoi je les admire, je les aime, je les trouve grands. Il faut, pour
en obtenir quelques-uns, forcer à la médiocrité beaucoup d'autres et
tâcher d'y contraindre même celui-là.
Pourquoi le disculper?—Il faut que tout s'acharne contre le grand
homme, car le grand homme est l'ennemi de beaucoup[3].
Pourquoi le plaindre?—C'est un grand homme. Et, s'il est
authentique, il saura toujours bien s'en tirer.
Pourquoi le protéger?—Ses épreuves mêmes et son isolement feront
sa force—ou du moins celui-là seul qui les supporte et qui en sort
était puissant.
Par pitié, pas d'individualisme! par pitié pour les individus.
N'encouragez jamais les grands hommes; et pour les autres:
découragez! découragez!...
10 décembre 1899.
XII
Chère Angèle,
Vous recevrez par le même courrier deux gros livres de Nietzsche.
Vous ne les lirez probablement pas; mais je veux que vous les ayez
quand même. C'est mon petit cadeau de janvier.
Et je préférerais, il est vrai, du fond de l'Algérie, vous envoyer des
dattes, ainsi que je faisais si joliment, les ans passés. Hélas! Paris
me tient encore et, si j'y pensais trop, l'approche ici d'un nouvel an
me rendrait triste.—Que ne puis-je parler des sables et des palmes!
je m'y connais, et mieux qu'à la philosophie... Mais j'en suis loin, et
voici Nietzsche, chère amie; si je suis grave, excusez-moi.
Grâces soient rendues à M. Henri Albert qui nous donne enfin notre
Nietzsche, et dans une fort bonne traduction. Depuis si longtemps
nous l'attendions! L'impatience nous le faisait épeler déjà dans le
texte—mais nous lisons si mal les étrangers!
Et peut-être valait-il mieux que cette traduction ait mis tant de
temps à paraître: grâce à cette cruelle lenteur, l'influence de
Nietzsche a précédé chez nous l'apparition de son œuvre; celle-ci
tombe en terrain préparé; elle eût risqué sinon de ne pas prendre; à
présent elle ne surprend plus, elle confirme; ce qu'elle apprend
surtout, c'est sa splendide et enthousiasmante vigueur;—mais elle
n'était presque plus indispensable; car l'on peut presque dire que
l'influence de Nietzsche importe plus que son œuvre, ou même que
son œuvre est d'influence seulement.
Encore et malgré tout l'œuvre importe, car son influence, on
commençait de la fausser.—Il faut, pour bien comprendre Nietzsche,
s'en éprendre, et seuls le peuvent comme il faut les cerveaux
préparés à lui depuis longtemps par une sorte de protestantisme ou
de jansénisme natif; des cerveaux qui n'ont rien tant en horreur que
le scepticisme, ou chez qui le scepticisme, nouvelle forme de
croyance qui mue amour en haine, garde toute la chaleur d'une foi.
—Voilà pourquoi tels esprits ingénieux et souples comme celui de M.
de Wyzewa s'y trompèrent: peu d'études sur Nietzsche (je ne parle
que des plus remarquables) trahissent autant Nietzsche que la
sienne[1]. Il voulut voir en lui un pessimiste: Nietzsche est avant tout
un croyant. Il ne sut voir en son œuvre que démolitions et que
ruines: elles y sont, mais loués soient ceux-là qui nous permettent
de construire! Seuls ceux-là ruinent qui découragent et diminuent
notre croyance en la vie...:
Je veux l'homme le plus orgueilleux, le plus vivant, le plus affirmatif;
je veux le monde, et le veux tel quel, et le veux encore, le veux
éternellement, et je crie insatiablement: Bis! et non seulement pour
moi seul, mais pour toute la pièce, et pour tout le spectacle; et non
pour tout le spectacle seul, mais au fond pour moi, parce que le
spectacle m'est nécessaire—parce qu'il me rend nécessaire—parce
que je lui suis nécessaire—et parce que je le rends nécessaire.
Oui, Nietzsche démolit; il sape, mais ce n'est point en découragé,
c'est en féroce; c'est noblement, glorieusement, surhumainement,
comme un conquérant neuf violente des choses vieillies. La ferveur
qu'il y met, il la redonne à d'autres pour construire. L'horreur du
repos, du confort, de tout ce qui propose à la vie une diminution, un
engourdissement, un sommeil, c'est là ce qui lui fait crever murailles
et voûtes: On ne produit qu'à condition d'être riche en
antagonismes, dit-il; on ne reste jeune qu'à condition que l'âme ne
se détende pas, n'aspire pas au repos. Il sape les œuvres fatiguées
et n'en forme pas de nouvelles, lui—mais il fait plus: il forme des
ouvriers. Il démolit pour exiger plus d'eux; les accule.
L'admirable, c'est qu'il les gonfle en même temps de vie joyeuse,
c'est qu'avec eux il rit au milieu des décombres, c'est qu'il y sème à
tour de bras. Il n'est jamais plus rouge de vie que quand c'est pour
ruiner les choses mortelles ou tristes. Chaque page est alors saturée
d'une énergie créatrice; d'indistinctes nouveautés s'y agitent; il
prévoit, il pressent, il appelle—et il rit.—Œuvre admirable? non—
mais préface d'œuvres admirables. Démolir, Nietzsche? Allons donc!
Il construit,—il construit, vous dis-je! il construit à bras raccourcis.
Je voudrais pouvoir louer plus le petit livre de Lichtenberger sur
Nietzsche. A défaut de Nietzsche même, c'est là, chère Angèle, ce
que je vous conseillerais de lire. Je le ferais plus volontiers si
certaine timidité d'esprit n'avait fait l'auteur traiter son sujet avec
presque trop de conscience. Oui, pour bien parler de Nietzsche, il
faut plus de passion et moins d'école; plus de passion surtout, et
partant moins de crainte. Le dernier chapitre, en guise de
conclusion, étudiant Nietzsche dans son ensemble, cherche en quoi il
est bon, en quoi mauvais—etc.; il pondère, limite, sauvegarde.
Nietzsche entraîne tant d'effrayantes choses après lui! Si donc la
peur domine, je préfère entendre bannir Nietzsche en entier plutôt
que d'en voir approuver seulement les parties rassurantes. Ce sont
parties d'un tout. La modération le supprime. Et je comprends que
Nietzsche fasse peur; mais les idées qui ne heurtent rien d'abord ne
sont en rien réformatrices.
Tout cela ne suffirait pas à me faire critiquer ce petit livre, je lui en
veux un peu pour de plus particulières raisons: certaines de vos
amies, chrétiennes il est vrai, ont pu à travers lui se représenter
Nietzsche comme «quelqu'un d'excessivement triste». Et c'est
vraiment contrariant, vous l'avouerez, cherchant la joie jusque dans
la folie et la glorifiant à travers toutes les souffrances, martyr
vraiment dans le sens plein du mot, d'arriver aux yeux de certains à
représenter «Quelqu'un d'excessivement triste»!—Mais la joie
chrétienne admet malaisément d'autre forme de joie que la sienne:
ne pouvant réduire celle-là, elle la nie.
«Œuvre profondément triste», dit aussi M. de Wyzewa, et diront
encore long temps d'autres. Décidément il était temps que cette
traduction parût!
Ces deux livres[2] font connaître Nietzsche autant que le pourra faire
l'œuvre entière—d'une admirable monotonie. Douze volumes; de l'un
à l'autre aucune nouveauté; le ton seul change, devient plus lyrique
et plus âpre, plus forcené.
Dès le premier ouvrage (la Naissance de la Tragédie), l'un des plus
beaux, Nietzsche s'affirme et se montre tel qu'il sera: tous ses futurs
écrits sont là en germe. Dès lors une ferveur l'habite qui va toucher
à tout en lui, réduire en cendres ou vitrifier tout ce qui ne supporte
pas tant de chaleur.
L'œuvre des philosophes est fatalement monotone; nulle surprise en
eux; une appliquée conséquence à soi-même; aucune contradiction
qui ne soit dès lors une erreur.—«L'esprit fait sa maison, dit
Emerson, puis la maison enferme l'esprit.»—Système clos; la solidité
des murs d'enceinte en fait la force; on ne les perd jamais de vue ...
ou sinon ce sont des transes: on croit être sorti du système, s'être
trompé.—Se tromper!—Comment me tromperais-je? «Qui trompe-t-
on ici?»—Un philosophe ne trompe jamais que les autres... On ne
trompe jamais que les autres.
Et Nietzsche lui-même s'emprisonne; ce passionné, ce créateur, se
débat dans son système qui se replie de toutes parts sur lui comme
un rets; il le sait et rugit de le savoir, mais n'en sort pas; c'est un lion
dans une cage d'écureuil. Quoi de plus dramatique que cela: cet
antirationnel veut prouver. Ses moyens sont autres, mais qu'importe?
Artiste, il ne crée pas; il prouve; il prouve passionnément. Il nie la
raison et raisonne. Il nie avec une ferveur de martyr.—De part en
part son œuvre n'est qu'une polémique: douze volumes de cela; on
ouvre au hasard; on lit n'importe quoi; d'une page à l'autre, c'est
tout de même; la ferveur seule se renouvelle et la maladie
l'alimente; aucun calme; il y souffle sans cesse une colère, une
passion enflammée. Etait-ce donc là que devait aboutir le
protestantisme?—Je le crois—et voilà pourquoi je l'admire;—à la plus
grande libération.
Je suis trop protestant moi-même, et pour cela j'admire trop
Nietzsche pour oser parler en mon nom propre. J'aime mieux laisser
parler M. Fouillée. En 1895, il écrivait dans la Revue des Deux
Mondes[3]:
«Le protestantisme, après avoir été plus réactionnaire que le catholicisme lui-
même, s'avisa d'opposer à l'immobilité catholique l'idée du libre examen.
Quand ils eurent trouvé cela, les protestants eurent cause gagnée—et aussi
perdue. Ils avaient trouvé l'arrêt de mort de leurs adversaires; car en face
d'une religion enchaînée par elle-même et engagée dans son passé comme un
terme dans une gaine, ils dressaient une religion libre, progressive, capable de
tout ce que la libre recherche scientifique lui apporterait. Le leur: car, n'y ayant
pas de limite au libre examen, ils créaient une religion illimitée, donc indéfinie,
donc indéfinissable, qui ne saurait pas, le jour où le libre examen lui
apporterait l'athéisme, si l'athéisme fait partie d'elle-même ou non; une
religion destinée à s'évanouir dans le cercle indéfini du philosophisme qu'elle a
ouvert. Toute la libre pensée, tout le philosophisme, toute l'anarchie
intellectuelle étaient contenus, dans le protestantisme dès qu'il cesserait d'être
un catholicisme radical.»
Certes, cela n'apporte pas de repos, et rien n'y est plus opposé. Rien
n'est plus opposé à ces phrases (magistrales certes) de Bossuet,
dans ses lettres pastorales:
Nous n'avons jamais condamné nos prédécesseurs et nous laissons la foi des
Eglises telle que nous l'avons trouvée... Dieu a voulu que la vérité vînt à nous
de pasteur en pasteur et de main en main sans que jamais on n'aperçût
d'innovation. C'est par là qu'on reconnaît ce qui a toujours été cru et par
conséquent ce que l'on doit toujours croire. C'est pour ainsi dire dans ce
toujours que paraît la force de la vérité et de la promesse, et on le perd tout
entier dès qu'on trouve de l'interruption en un seul endroit[4].»
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.
textbookfull.com