SlideShare a Scribd company logo
Recursion
schemes
in Scala
and also fixed point data types
Today we will speak about freaky
functional stuff, enjoy :)
Arthur Kushka // @Arhelmus
Yo
a method for structuring programs mainly
as sequences of possibly nested function
procedure calls.
programmingFunctional
((x: Array[Byte]) => x)
   .andThen(encodeBase64)
   .andThen(name => s"Hello $name")
   .andThen(println)
everywhere!
Recursive schemas
Lists and trees
Filesystems
Databases
list match {
   // Cons(1, Cons(2, Cons(3, Nil)))
   case 1 :: 2 :: 3 :: Nil =>
   case Nil =>
 }
Example
01
Sum
Multiply
Divide
Square
Math equasionevaluation
Lets define our DSL
sealed trait Exp
case class IntValue(value: Int) extends Exp
case class DecValue(value: Double) extends Exp
case class Sum(exp1: Exp, exp2: Exp) extends Exp
case class Multiply(exp1: Exp, exp2: Exp) extends Exp
case class Divide(exp1: Exp, exp2: Exp) extends Exp
case class Square(exp: Exp) extends Exp
Example
equation
Sum(
   Square(
     IntValue(4)
   ),
   Multiply(
     DecValue(3.3),
     IntValue(4)
   )
 )
4^2 + 3.3 * 4
val evaluate: Exp => Double = {
   case DecValue(value) => value
   case IntValue(value) => value.toDouble
   case Sum(exp1, exp2) =>
      evaluate(exp1) + evaluate(exp2)
   case Multiply(exp1, exp2) =>
      evaluate(exp1) * evaluate(exp2)
   case Divide(exp1, exp2) =>
      evaluate(exp1) / evaluate(exp2)
   case Square(exp) =>
     val v = evaluate(exp)
     v * v
 }
val stringify: Exp => String = {
   case DecValue(value) => value.toString
   case IntValue(value) => value.toString
   case Sum(exp1, exp2) =>
     s"${stringify(exp1)} + ${stringify(exp2)}"
   case Square(exp) =>
     s"${stringify(exp)} ^ 2"
   case Multiply(exp1, exp2) =>
     s"${stringify(exp1)} * ${stringify(exp2)}"
   case Divide(exp1, exp2) =>
     s"${stringify(exp1)} / ${stringify(exp2)}"
 }
It will work!
but...
evaluate(expression) // prints 29.2
stringify(expression) // prints 4 ^ 2 + 3.3 * 4
There are a lot of
mess
   case Sum(exp1: Exp, exp2: Exp) =>
      evaluate(exp1) + evaluate(exp2)
And not only...
Problem of partial
interpretation
val optimize: Exp => Exp = {
   case Multiply(exp1, exp2) if exp1 == exp2 =>
     Square(optimize(exp1))
   case other => ???
}
Lets improve
going to
result
types02
Generalize it
sealed trait Exp[T]
case class IntValue[T](value: Int) extends Exp[T]
case class DecValue[T](value: Double) extends Exp[T]
case class Sum[T](exp1: T, exp2: T) extends Exp[T]
case class Multiply[T](exp1: T, exp2: T) extends Exp[T]
case class Divide[T](exp1: T, exp2: T) extends Exp[T]
case class Square[T](exp: T) extends Exp[T]
val expression: Exp[Exp[Exp[Unit]]] =
Sum[Exp[Exp[Unit]]](
   Square[Exp[Unit]](
     IntValue[Unit](4)
   ),
   Multiply[Exp[Unit]](
     DecValue[Unit](3.3),
     IntValue[Unit](4)
   )
 )
Nesting types issue
its like a hiding of part that doesn't matter
fixed point types
F[_] is a generic type with a hole, after
wrapping of Exp with that we will have
Fix[Exp] type.
let's add
typehack
case class Fix[F[_]](unFix: F[Fix[F]])
val expression: Fix[Exp] = Fix(Sum(
   Fix(Square(
     Fix(IntValue(4))
   )),
   Fix(Multiply(
     Fix(DecValue(3.3)),
     Fix(IntValue(4))
   ))
 ))
Hacked code
case class Square[T](exp: T) extends Exp[T]
object Square {
  def apply(fixExp: Exp[Fix[Exp]]) = Fix[Exp](fixExp)
}
val expression: Fix[Exp] = Square(
   Square(
     Square(
       IntValue(4)
     )))
Let's do it cleaner
time to traverse
our structure
03
def map[F[_], A, B](fa: F[A])(f: A=>B): F[B]
Functor 911
Scalaz example
case class Container[T](data: T)
implicit val functor = new Functor[Container] {
override def map[A, B](fa: Container[A])
(f: A => B): Container[B] =
Container(f(fa.data))
}
functor.map(Container(1))(_.toString) // "1"
For cats you will have same code
implicit val functor = new Functor[Exp] {
override def map[A, B](fa: Exp[A])(f: A => B): Exp[B] =
fa match {
case IntValue(v) => IntValue(v)
case DecValue(v) => DecValue(v)
case Sum(v1, v2) => Sum(f(v1), f(v2))
case Multiply(v1, v2) => Multiply(f(v1), f(v2))
case Divide(v1, v2) => Divide(f(v1), f(v2))
case Square(v) => Square(f(v))
}
}
catamorphism
anamorphism
hylomorphism04
“Functional Programming with Bananas,
Lenses, Envelopes and Barbed Wire”, by
Erik Meijer
generalized folding operation
catamorphism
Lets define
Algebra
type Algebra[F[_], A] = F[A] => A
val evaluate: Algebra[Exp, Double] = {
   case IntValue(v) => v.toDouble
   case DecValue(v) => v
   case Sum(v1, v2) => v1 + v2
   case Multiply(v1, v2) => v1 * v2
   case Divide(v1, v2) => v1 / v2
   case Square(v) => Math.sqrt(v)
 }
So as a result
val expression: Fix[Exp] = Sum(
   Multiply(IntValue(4), IntValue(4)),
   Multiply(DecValue(3.3), IntValue(4))
 )
import matryoshka.implicits._
expression.cata(evaluate) // 29.2
do you remember about partial interpretation?
Extra profit
val optimize: Algebra[Exp, Fix[Exp]] = {
   case Multiply(Fix(exp), Fix(exp2)) if exp == exp2 =>      
      Fix(Square(exp))
   case other => Fix[Exp](other)
 }
import matryoshka.implicits._
expression.cata(optimize).cata(stringify) // 4 ^ 2 + 3.3 * 4
val evaluate: Exp => Double = {
   case DecValue(value) => value
   case IntValue(value) => value.toDouble
   case Sum(exp1, exp2) =>
      evaluate(exp1) + evaluate(exp2)
   case Multiply(exp1, exp2) =>
      evaluate(exp1) * evaluate(exp2)
   case Divide(exp1, exp2) =>
      evaluate(exp1) / evaluate(exp2)
   case Square(exp) =>
     val v = evaluate(exp)
     v * v
 }
type Algebra[F[_], A]
val evaluate: Algebra[Exp, Double] = {
   case IntValue(v) => v.toDouble
   case DecValue(v) => v
   case Sum(v1, v2) => v1 + v2
   case Multiply(v1, v2) => v1 * v2
   case Divide(v1, v2) => v1 / v2
   case Square(v) => Math.sqrt(v)
 }
catamorphism: F[_] => A 
anamorphism: A => F[_] 
hylomorphism: F[_] => A => F[_] 
Just good to
know
Fixed point types is perfect to create
DSLs
Recursion schemas is composable
All you need to use that stuff, you
already know from Scala
Summary
thank you.
any questions?

More Related Content

What's hot

Namespaces
NamespacesNamespaces
Namespaces
Sangeetha S
 
Implementation of c string functions
Implementation of c string functionsImplementation of c string functions
Implementation of c string functions
mohamed sikander
 
Maps
MapsMaps
Python tuples and Dictionary
Python   tuples and DictionaryPython   tuples and Dictionary
Python tuples and Dictionary
Aswini Dharmaraj
 
1 - Introduction to PL/SQL
1 - Introduction to PL/SQL1 - Introduction to PL/SQL
1 - Introduction to PL/SQL
rehaniltifat
 
Stack data structure
Stack data structureStack data structure
Stack data structureTech_MX
 
Datatypes in python
Datatypes in pythonDatatypes in python
Datatypes in python
eShikshak
 
Divide and Conquer - Part 1
Divide and Conquer - Part 1Divide and Conquer - Part 1
Divide and Conquer - Part 1
Amrinder Arora
 
Introduction to Python
Introduction to Python Introduction to Python
Introduction to Python
amiable_indian
 
Character Array and String
Character Array and StringCharacter Array and String
Character Array and String
Tasnima Hamid
 
Python lambda functions with filter, map & reduce function
Python lambda functions with filter, map & reduce functionPython lambda functions with filter, map & reduce function
Python lambda functions with filter, map & reduce function
ARVIND PANDE
 
Dynamic programming - fundamentals review
Dynamic programming - fundamentals reviewDynamic programming - fundamentals review
Dynamic programming - fundamentals review
ElifTech
 
Java Presentation For Syntax
Java Presentation For SyntaxJava Presentation For Syntax
Java Presentation For Syntax
PravinYalameli
 
Data Structure and Algorithms Arrays
Data Structure and Algorithms ArraysData Structure and Algorithms Arrays
Data Structure and Algorithms Arrays
ManishPrajapati78
 
Regular Expressions Cheat Sheet
Regular Expressions Cheat SheetRegular Expressions Cheat Sheet
Regular Expressions Cheat Sheet
Akash Bisariya
 
C++ Arrays
C++ ArraysC++ Arrays
C++ Arrays
أحمد محمد
 
Error and exception in python
Error and exception in pythonError and exception in python
Error and exception in python
junnubabu
 
B tree
B  treeB  tree
Exception handling and function in python
Exception handling and function in pythonException handling and function in python
Exception handling and function in python
TMARAGATHAM
 

What's hot (20)

Namespaces
NamespacesNamespaces
Namespaces
 
Sets in python
Sets in pythonSets in python
Sets in python
 
Implementation of c string functions
Implementation of c string functionsImplementation of c string functions
Implementation of c string functions
 
Maps
MapsMaps
Maps
 
Python tuples and Dictionary
Python   tuples and DictionaryPython   tuples and Dictionary
Python tuples and Dictionary
 
1 - Introduction to PL/SQL
1 - Introduction to PL/SQL1 - Introduction to PL/SQL
1 - Introduction to PL/SQL
 
Stack data structure
Stack data structureStack data structure
Stack data structure
 
Datatypes in python
Datatypes in pythonDatatypes in python
Datatypes in python
 
Divide and Conquer - Part 1
Divide and Conquer - Part 1Divide and Conquer - Part 1
Divide and Conquer - Part 1
 
Introduction to Python
Introduction to Python Introduction to Python
Introduction to Python
 
Character Array and String
Character Array and StringCharacter Array and String
Character Array and String
 
Python lambda functions with filter, map & reduce function
Python lambda functions with filter, map & reduce functionPython lambda functions with filter, map & reduce function
Python lambda functions with filter, map & reduce function
 
Dynamic programming - fundamentals review
Dynamic programming - fundamentals reviewDynamic programming - fundamentals review
Dynamic programming - fundamentals review
 
Java Presentation For Syntax
Java Presentation For SyntaxJava Presentation For Syntax
Java Presentation For Syntax
 
Data Structure and Algorithms Arrays
Data Structure and Algorithms ArraysData Structure and Algorithms Arrays
Data Structure and Algorithms Arrays
 
Regular Expressions Cheat Sheet
Regular Expressions Cheat SheetRegular Expressions Cheat Sheet
Regular Expressions Cheat Sheet
 
C++ Arrays
C++ ArraysC++ Arrays
C++ Arrays
 
Error and exception in python
Error and exception in pythonError and exception in python
Error and exception in python
 
B tree
B  treeB  tree
B tree
 
Exception handling and function in python
Exception handling and function in pythonException handling and function in python
Exception handling and function in python
 

Similar to Recursion schemes in Scala

The Scala Programming Language
The Scala Programming LanguageThe Scala Programming Language
The Scala Programming Language
league
 
Spark workshop
Spark workshopSpark workshop
Spark workshop
Wojciech Pituła
 
R short-refcard
R short-refcardR short-refcard
R short-refcardconline
 
Meet scala
Meet scalaMeet scala
Meet scala
Wojciech Pituła
 
(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?Tomasz Wrobel
 
Scala training workshop 02
Scala training workshop 02Scala training workshop 02
Scala training workshop 02
Nguyen Tuan
 
Files,blocks and functions in R
Files,blocks and functions in RFiles,blocks and functions in R
Files,blocks and functions in R
Vladimir Bakhrushin
 
Scala introduction
Scala introductionScala introduction
Scala introduction
Yardena Meymann
 
Short Reference Card for R users.
Short Reference Card for R users.Short Reference Card for R users.
Short Reference Card for R users.
Dr. Volkan OBAN
 
Reference card for R
Reference card for RReference card for R
Reference card for R
Dr. Volkan OBAN
 
Scala Bootcamp 1
Scala Bootcamp 1Scala Bootcamp 1
Scala Bootcamp 1
Knoldus Inc.
 
Introducing scala
Introducing scalaIntroducing scala
Introducing scala
Meetu Maltiar
 
Functional programming with_scala
Functional programming with_scalaFunctional programming with_scala
Functional programming with_scala
Raymond Tay
 
R Programming Reference Card
R Programming Reference CardR Programming Reference Card
R Programming Reference Card
Maurice Dawson
 
A bit about Scala
A bit about ScalaA bit about Scala
A bit about Scala
Vladimir Parfinenko
 
@ R reference
@ R reference@ R reference
@ R reference
vickyrolando
 
R command cheatsheet.pdf
R command cheatsheet.pdfR command cheatsheet.pdf
R command cheatsheet.pdf
Ngcnh947953
 
R language introduction
R language introductionR language introduction
R language introduction
Shashwat Shriparv
 
C# programming
C# programming C# programming
C# programming
umesh patil
 

Similar to Recursion schemes in Scala (20)

The Scala Programming Language
The Scala Programming LanguageThe Scala Programming Language
The Scala Programming Language
 
Spark workshop
Spark workshopSpark workshop
Spark workshop
 
R short-refcard
R short-refcardR short-refcard
R short-refcard
 
Meet scala
Meet scalaMeet scala
Meet scala
 
(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?(How) can we benefit from adopting scala?
(How) can we benefit from adopting scala?
 
Scala training workshop 02
Scala training workshop 02Scala training workshop 02
Scala training workshop 02
 
Files,blocks and functions in R
Files,blocks and functions in RFiles,blocks and functions in R
Files,blocks and functions in R
 
Scala introduction
Scala introductionScala introduction
Scala introduction
 
Introduction to Scala
Introduction to ScalaIntroduction to Scala
Introduction to Scala
 
Short Reference Card for R users.
Short Reference Card for R users.Short Reference Card for R users.
Short Reference Card for R users.
 
Reference card for R
Reference card for RReference card for R
Reference card for R
 
Scala Bootcamp 1
Scala Bootcamp 1Scala Bootcamp 1
Scala Bootcamp 1
 
Introducing scala
Introducing scalaIntroducing scala
Introducing scala
 
Functional programming with_scala
Functional programming with_scalaFunctional programming with_scala
Functional programming with_scala
 
R Programming Reference Card
R Programming Reference CardR Programming Reference Card
R Programming Reference Card
 
A bit about Scala
A bit about ScalaA bit about Scala
A bit about Scala
 
@ R reference
@ R reference@ R reference
@ R reference
 
R command cheatsheet.pdf
R command cheatsheet.pdfR command cheatsheet.pdf
R command cheatsheet.pdf
 
R language introduction
R language introductionR language introduction
R language introduction
 
C# programming
C# programming C# programming
C# programming
 

Recently uploaded

Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
Kamal Acharya
 
weather web application report.pdf
weather web application report.pdfweather web application report.pdf
weather web application report.pdf
Pratik Pawar
 
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSCW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
veerababupersonal22
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
ClaraZara1
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
Osamah Alsalih
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
aqil azizi
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
heavyhaig
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Teleport Manpower Consultant
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
manasideore6
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
WENKENLI1
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
Massimo Talia
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
ChristineTorrepenida1
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
zwunae
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
gestioneergodomus
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 

Recently uploaded (20)

Cosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdfCosmetic shop management system project report.pdf
Cosmetic shop management system project report.pdf
 
weather web application report.pdf
weather web application report.pdfweather web application report.pdf
weather web application report.pdf
 
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERSCW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
CW RADAR, FMCW RADAR, FMCW ALTIMETER, AND THEIR PARAMETERS
 
6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)6th International Conference on Machine Learning & Applications (CMLA 2024)
6th International Conference on Machine Learning & Applications (CMLA 2024)
 
MCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdfMCQ Soil mechanics questions (Soil shear strength).pdf
MCQ Soil mechanics questions (Soil shear strength).pdf
 
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdfTutorial for 16S rRNA Gene Analysis with QIIME2.pdf
Tutorial for 16S rRNA Gene Analysis with QIIME2.pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
Technical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prismsTechnical Drawings introduction to drawing of prisms
Technical Drawings introduction to drawing of prisms
 
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdfTop 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
Top 10 Oil and Gas Projects in Saudi Arabia 2024.pdf
 
Fundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptxFundamentals of Induction Motor Drives.pptx
Fundamentals of Induction Motor Drives.pptx
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdfGoverning Equations for Fundamental Aerodynamics_Anderson2010.pdf
Governing Equations for Fundamental Aerodynamics_Anderson2010.pdf
 
Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024Nuclear Power Economics and Structuring 2024
Nuclear Power Economics and Structuring 2024
 
Unbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptxUnbalanced Three Phase Systems and circuits.pptx
Unbalanced Three Phase Systems and circuits.pptx
 
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
一比一原版(IIT毕业证)伊利诺伊理工大学毕业证成绩单专业办理
 
DfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributionsDfMAy 2024 - key insights and contributions
DfMAy 2024 - key insights and contributions
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 

Recursion schemes in Scala