Soumettre la recherche
Mettre en ligne
Naïveté vs Experience How We Thought Scala Clojure Actually Did
•
Télécharger en tant que ODP, PDF
•
1 j'aime
•
7,052 vues
Titre amélioré par l'IA
Mike Fogus
Suivre
Presentation given at the 2010 Commercial Users of Functional Programming conference.
Lire moins
Lire la suite
Technologie
Affichage du diaporama
Signaler
Partager
Affichage du diaporama
Signaler
Partager
1 sur 87
Télécharger maintenant
Recommandé
Code as data as code.
Code as data as code.
Mike Fogus
The Macronomicon
The Macronomicon
Mike Fogus
Fertile Ground: The Roots of Clojure
Fertile Ground: The Roots of Clojure
Mike Fogus
How to Clone Flappy Bird in Swift
How to Clone Flappy Bird in Swift
Giordano Scalzo
Better Software: introduction to good code
Better Software: introduction to good code
Giordano Scalzo
ES6 in Real Life
ES6 in Real Life
Domenic Denicola
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Tsuyoshi Yamamoto
はじめてのGroovy
はじめてのGroovy
Tsuyoshi Yamamoto
Recommandé
Code as data as code.
Code as data as code.
Mike Fogus
The Macronomicon
The Macronomicon
Mike Fogus
Fertile Ground: The Roots of Clojure
Fertile Ground: The Roots of Clojure
Mike Fogus
How to Clone Flappy Bird in Swift
How to Clone Flappy Bird in Swift
Giordano Scalzo
Better Software: introduction to good code
Better Software: introduction to good code
Giordano Scalzo
ES6 in Real Life
ES6 in Real Life
Domenic Denicola
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Tsuyoshi Yamamoto
はじめてのGroovy
はじめてのGroovy
Tsuyoshi Yamamoto
Scala vs Java 8 in a Java 8 World
Scala vs Java 8 in a Java 8 World
BTI360
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
Fabio Collini
EcmaScript 6
EcmaScript 6
Manoj Kumar
Realm to Json & Royal
Realm to Json & Royal
Leonardo Taehwan Kim
Haskell in the Real World
Haskell in the Real World
osfameron
Fun never stops. introduction to haskell programming language
Fun never stops. introduction to haskell programming language
Pawel Szulc
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
Fabio Collini
Groovy
Groovy
Zen Urban
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Fabio Collini
Hammurabi
Hammurabi
Mario Fusco
ECMAScript 6
ECMAScript 6
Piotr Lewandowski
SDC - Einführung in Scala
SDC - Einführung in Scala
Christian Baranowski
Building fast interpreters in Rust
Building fast interpreters in Rust
Ingvar Stepanyan
About java
About java
Jay Xu
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
Ruslan Shevchenko
Groovy puzzlers по русски с Joker 2014
Groovy puzzlers по русски с Joker 2014
Baruch Sadogursky
Is Haskell an acceptable Perl?
Is Haskell an acceptable Perl?
osfameron
Go ahead, make my day
Go ahead, make my day
Tor Ivry
The Ring programming language version 1.2 book - Part 79 of 84
The Ring programming language version 1.2 book - Part 79 of 84
Mahmoud Samir Fayed
Why Learn Python?
Why Learn Python?
Christine Cheung
The Shape of Functional Programming
The Shape of Functional Programming
Mike Fogus
Introduction to Zeder - a production rules toolkit for Clojure
Introduction to Zeder - a production rules toolkit for Clojure
Mike Fogus
Contenu connexe
Tendances
Scala vs Java 8 in a Java 8 World
Scala vs Java 8 in a Java 8 World
BTI360
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
Fabio Collini
EcmaScript 6
EcmaScript 6
Manoj Kumar
Realm to Json & Royal
Realm to Json & Royal
Leonardo Taehwan Kim
Haskell in the Real World
Haskell in the Real World
osfameron
Fun never stops. introduction to haskell programming language
Fun never stops. introduction to haskell programming language
Pawel Szulc
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
Fabio Collini
Groovy
Groovy
Zen Urban
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Fabio Collini
Hammurabi
Hammurabi
Mario Fusco
ECMAScript 6
ECMAScript 6
Piotr Lewandowski
SDC - Einführung in Scala
SDC - Einführung in Scala
Christian Baranowski
Building fast interpreters in Rust
Building fast interpreters in Rust
Ingvar Stepanyan
About java
About java
Jay Xu
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
Ruslan Shevchenko
Groovy puzzlers по русски с Joker 2014
Groovy puzzlers по русски с Joker 2014
Baruch Sadogursky
Is Haskell an acceptable Perl?
Is Haskell an acceptable Perl?
osfameron
Go ahead, make my day
Go ahead, make my day
Tor Ivry
The Ring programming language version 1.2 book - Part 79 of 84
The Ring programming language version 1.2 book - Part 79 of 84
Mahmoud Samir Fayed
Why Learn Python?
Why Learn Python?
Christine Cheung
Tendances
(20)
Scala vs Java 8 in a Java 8 World
Scala vs Java 8 in a Java 8 World
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
From Java to Kotlin beyond alt+shift+cmd+k - Kotlin Community Conf Milan
EcmaScript 6
EcmaScript 6
Realm to Json & Royal
Realm to Json & Royal
Haskell in the Real World
Haskell in the Real World
Fun never stops. introduction to haskell programming language
Fun never stops. introduction to haskell programming language
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
From java to kotlin beyond alt+shift+cmd+k - Droidcon italy
Groovy
Groovy
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Async code on kotlin: rx java or/and coroutines - Kotlin Night Turin
Hammurabi
Hammurabi
ECMAScript 6
ECMAScript 6
SDC - Einführung in Scala
SDC - Einführung in Scala
Building fast interpreters in Rust
Building fast interpreters in Rust
About java
About java
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
JDays Lviv 2014: Java8 vs Scala: Difference points & innovation stream
Groovy puzzlers по русски с Joker 2014
Groovy puzzlers по русски с Joker 2014
Is Haskell an acceptable Perl?
Is Haskell an acceptable Perl?
Go ahead, make my day
Go ahead, make my day
The Ring programming language version 1.2 book - Part 79 of 84
The Ring programming language version 1.2 book - Part 79 of 84
Why Learn Python?
Why Learn Python?
En vedette
The Shape of Functional Programming
The Shape of Functional Programming
Mike Fogus
Introduction to Zeder - a production rules toolkit for Clojure
Introduction to Zeder - a production rules toolkit for Clojure
Mike Fogus
ClojureScript Anatomy
ClojureScript Anatomy
Mike Fogus
The Return of the Living Datalog
The Return of the Living Datalog
Mike Fogus
Scaling up genomic analysis with ADAM
Scaling up genomic analysis with ADAM
fnothaft
Confo
Confo
Mike Fogus
Good Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas Crockford
rajivmordani
Kotlin in action
Kotlin in action
Ciro Rizzo
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
Spark Summit
Open Stack Cheat Sheet V1
Open Stack Cheat Sheet V1
Anuchit Chalothorn
Tachyon-2014-11-21-amp-camp5
Tachyon-2014-11-21-amp-camp5
Haoyuan Li
Linux Filesystems, RAID, and more
Linux Filesystems, RAID, and more
Mark Wong
Distributed machine learning 101 using apache spark from the browser
Distributed machine learning 101 using apache spark from the browser
Andy Petrella
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
Spark Summit
The Hot Rod Protocol in Infinispan
The Hot Rod Protocol in Infinispan
Galder Zamarreño
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
Daniel Krook
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
Ceph Community
ELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot Times
andrewmurraympc
Why is Bioinformatics a Good Fit for Spark?
Why is Bioinformatics a Good Fit for Spark?
Timothy Danford
Velox: Models in Action
Velox: Models in Action
Dan Crankshaw
En vedette
(20)
The Shape of Functional Programming
The Shape of Functional Programming
Introduction to Zeder - a production rules toolkit for Clojure
Introduction to Zeder - a production rules toolkit for Clojure
ClojureScript Anatomy
ClojureScript Anatomy
The Return of the Living Datalog
The Return of the Living Datalog
Scaling up genomic analysis with ADAM
Scaling up genomic analysis with ADAM
Confo
Confo
Good Parts of JavaScript Douglas Crockford
Good Parts of JavaScript Douglas Crockford
Kotlin in action
Kotlin in action
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
The Little Warehouse That Couldn't Or: How We Learned to Stop Worrying and Mo...
Open Stack Cheat Sheet V1
Open Stack Cheat Sheet V1
Tachyon-2014-11-21-amp-camp5
Tachyon-2014-11-21-amp-camp5
Linux Filesystems, RAID, and more
Linux Filesystems, RAID, and more
Distributed machine learning 101 using apache spark from the browser
Distributed machine learning 101 using apache spark from the browser
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
Lessons Learned with Spark at the US Patent & Trademark Office-(Christopher B...
The Hot Rod Protocol in Infinispan
The Hot Rod Protocol in Infinispan
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
Advanced Data Retrieval and Analytics with Apache Spark and Openstack Swift
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
Accelerating Cassandra Workloads on Ceph with All-Flash PCIE SSDS
ELC-E 2010: The Right Approach to Minimal Boot Times
ELC-E 2010: The Right Approach to Minimal Boot Times
Why is Bioinformatics a Good Fit for Spark?
Why is Bioinformatics a Good Fit for Spark?
Velox: Models in Action
Velox: Models in Action
Similaire à Naïveté vs Experience How We Thought Scala Clojure Actually Did
Scala introduction
Scala introduction
Alf Kristian Støyle
AST Transformations
AST Transformations
HamletDRC
Why Scala?
Why Scala?
Mike Fogus
AST Transformations at JFokus
AST Transformations at JFokus
HamletDRC
Scala presentation by Aleksandar Prokopec
Scala presentation by Aleksandar Prokopec
Loïc Descotte
Scala introduction
Scala introduction
Yardena Meymann
The Kotlin Programming Language
The Kotlin Programming Language
intelliyole
Beginning Scala Svcc 2009
Beginning Scala Svcc 2009
David Pollak
Ruby For Java Programmers
Ruby For Java Programmers
Mike Bowler
Groovy Ast Transformations (greach)
Groovy Ast Transformations (greach)
HamletDRC
Scala in Places API
Scala in Places API
Łukasz Bałamut
Scala 2 + 2 > 4
Scala 2 + 2 > 4
Emil Vladev
Ast transformations
Ast transformations
HamletDRC
Pragmatic Real-World Scala (short version)
Pragmatic Real-World Scala (short version)
Jonas Bonér
Pragmatic Real-World Scala
Pragmatic Real-World Scala
parag978978
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
Hiroshi Ono
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
Hiroshi Ono
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
Hiroshi Ono
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
Hiroshi Ono
Scala - en bedre Java?
Scala - en bedre Java?
Jesper Kamstrup Linnet
Similaire à Naïveté vs Experience How We Thought Scala Clojure Actually Did
(20)
Scala introduction
Scala introduction
AST Transformations
AST Transformations
Why Scala?
Why Scala?
AST Transformations at JFokus
AST Transformations at JFokus
Scala presentation by Aleksandar Prokopec
Scala presentation by Aleksandar Prokopec
Scala introduction
Scala introduction
The Kotlin Programming Language
The Kotlin Programming Language
Beginning Scala Svcc 2009
Beginning Scala Svcc 2009
Ruby For Java Programmers
Ruby For Java Programmers
Groovy Ast Transformations (greach)
Groovy Ast Transformations (greach)
Scala in Places API
Scala in Places API
Scala 2 + 2 > 4
Scala 2 + 2 > 4
Ast transformations
Ast transformations
Pragmatic Real-World Scala (short version)
Pragmatic Real-World Scala (short version)
Pragmatic Real-World Scala
Pragmatic Real-World Scala
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
pragmaticrealworldscalajfokus2009-1233251076441384-2.pdf
Scala - en bedre Java?
Scala - en bedre Java?
Dernier
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
Delhi Call girls
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
ThousandEyes
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Enterprise Knowledge
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Miguel Araújo
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
Anna Loughnan Colquhoun
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
Malak Abu Hammad
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
Delhi Call girls
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Allon Mureinik
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Neo4j
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
Michael W. Hawkins
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Results
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
naman860154
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
hans926745
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
The Digital Insurer
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
wesley chun
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
Delhi Call girls
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
Pooja Nehwal
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Roshan Dwivedi
Dernier
(20)
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Naïveté vs Experience How We Thought Scala Clojure Actually Did
1.
Naïveté vs. Experience
How We Thought We Could Use Scala and Clojure, and How We Actually Did
2.
Who
3.
4.
5.
C, C++, Java,
CLIPS, Clojure, Scala
6.
7.
Why
8.
Java
9.
Compression Potential
10.
Compression Potential
11.
Essential Boilerplate
12.
Essential Boilerplate equals
hashCode get set public Foo toString
13.
Essential Boilerplate equals
hashCode get set public Foo toString try catch finally ; { } @override static int System.out boolean . void import String Exception throws toString toString throws throws finally finally finally get get equals hashCode try } System.out boolean toString throws throws finally get public Foo catch finally ; int import String Exception throws toString get equals get toString try finally static import String toString throws finally equals try toString throws get finally String Exception hashCode finally { @override int void Exception toString throws finally hashCode toString throws finally public Foo finally int Exception @override static finally hashCode try throws throws static @override hashCode throws hashCode @override void toString toString int hashCode void finally finally public Foo int hashCode @override void toString toString int hashCode void finally finally public Foo int hashCode @override void toString toString int hashCode void finally finally public Foo int toString static finally equals try finally String toString throws finally toString finally
14.
What
15.
16.
17.
18.
19.
Java != JVM
20.
Reprieve
21.
22.
Jython
23.
Jess
24.
Scala
25.
Clojure
26.
Groovy
27.
Rhino
28.
29.
Jython
30.
Jess
31.
Scala
32.
Clojure
33.
Groovy
34.
35.
Clojure
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
(spouse !=
null ? " married to " + spouse.getFirstName() + "." : "." ); } }
47.
48.
(spouse !=
null ? " married to " + spouse.getFirstName() + "." : "." ); } }
49.
50.
(spouse !=
null ? " married to " + spouse.getFirstName() + "." : "." ); } }
51.
52.
(spouse !=
null ? " married to " + spouse.getFirstName() + "." : "." ); } }
53.
54.
override def
toString(): String = firstName + " " + lastName +
55.
(spouse match
{
56.
case None
=> "."
57.
case Some(s)
=> " married to " + s.firstName + "."
58.
});
59.
} By
default , Scala classes are immutable.
60.
61.
Disingenuous
62.
63.
( toString
[_]
64.
( str
fname " " lname
65.
( when-let
[n ( :fname spouse)]
66.
( str
" married to " n))
67.
))) By
default , Scala classes are immutable.
68.
69.
70.
71.
72.
Everything is an
Object
73.
Functional Programming
74.
List Comprehensions
75.
Case Classes
76.
Pattern Matching
77.
Interoperability
78.
Currying
79.
Implicits
80.
Architecture
81.
services The Internet
82.
services The Internet
83.
services The Internet
84.
services The Internet
85.
services The Internet
86.
services The Internet
87.
services The Internet
88.
services The Internet
89.
The Internet
90.
The Internet
91.
The Internet
92.
The Internet
93.
Naïveté
94.
95.
Everything is an
Object
96.
Functional Programming
97.
List Comprehensions
98.
Case Classes
99.
Pattern Matching
100.
Interoperability
101.
Currying
102.
Implicits
103.
104.
105.
List Comprehensions
106.
Case Classes
107.
Pattern Matching
108.
Currying
109.
Implicits
110.
111.
List Comprehensions
112.
Pattern Matching
113.
Currying
114.
Experience
115.
116.
117.
118.
119.
Disingenuous
120.
Dis ingenuous
121.
122.
123.
124.
125.
def get(ref:ReferenceParam):ComponentReturn =
{ ... }
126.
...
127.
} By
default , Scala classes are immutable.
128.
129.
def get(ref: ReferenceParam
): ComponentReturn = { ... }
130.
...
131.
}
132.
133.
def get(ref: ReferenceParam
): ComponentReturn = { ... }
134.
...
135.
136.
137.
138.
139.
140.
def get(ref: ReferenceParam
): ComponentReturn = { ... }
141.
...
142.
143.
}
144.
145.
def get(ref: ReferenceParam
): ComponentReturn = { ... }
146.
...
147.
148.
}
149.
RPCTypes LocalTypes CachedTypes
DelayedTypes ... RPCTypes LocalTypes ... The Internet
150.
151.
152.
153.
When a tree
falls in a lonely forest ... does it make a sound? – Charles Riborg Mann and George Ransom Twiss
154.
If a pure
function mutates some local data in order to produce an immutable return value, is that ok? – Rich Hickey
155.
156.
157.
158.
159.
160.
Optional Immutability
161.
Weak Laziness
162.
Less Functional
163.
Grand Hierarchies
164.
Literals-lite
165.
166.
Optional Immutability
167.
Weak Laziness
168.
Less Functional
169.
170.
171.
My employer
172.
Dean Wampler for
feedback
173.
Rich Hickey and
Martin Odersky for Clojure and Scala
174.
Chris Houser my
co-author
175.
Ryan Tomayko for
the screaming face
176.
The fam
177.
178.
Is Scala too
complicated?
179.
Best zombie movies?
180.
Kobaia is de
hundin?
181.
Favorite hangout in
Baltimore?
182.
What's with the
tie?
Télécharger maintenant