E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
scalaz
Spark + AI Summit 2020——The Importance of Model Fairness and Interpretability in AI Systems
Spark+AISummit2020TheImportanceofModelFairnessandInterpretabilityinAISystems观看体会报告概览这次我选择观看由微软的France
scaLaz
zeri
int antiluxism
·
2022-11-08 09:53
大数据学习
机器学习
Java 、Groovy、 Scala 的未来
FP派喜欢
scalaz
,喜欢shapeless,喜欢typelevelprogramming。这一派特点是程序高度抽象但可读性奇差。适合PL研究者验证概念,适合业余项目自嗨,也适合学习PL概念。
tao_wei162
·
2020-09-12 23:24
自动机器学习:团队如何在自动学习项目中一起工作?(附链接)
来源|数据派THU作者|France
scaLaz
zeri翻译|王琦责编|Carol出品|AI科技大本营(ID:rgznai100)去年11月,我写了一篇关于使用自动机器学习来进行AI民主化(democratization
AI科技大本营
·
2020-07-04 14:04
scala中的多态 Ad-hoc polymorphism和type class
多态的类型(polymorphism)(1)parametric多态下面例子来自
scalaz
教程:scala>defhead[A](xs:List[A]):A=xs(0)head:[A](xs:List
onwingsofsong
·
2018-09-10 02:20
后端开发
scala
[scala基础]--拉链操作(zip族函数)
运行环境:idea16+scala-2.10-6packagestudy/***Document:本类作用---->
scalaz
ip族函数*User:yangjf*Date:2016/9/0315:15
highfei2011
·
2016-09-03 22:30
Scala
Scalaz
(46)-
scalaz
-stream 基础介绍
scalaz
-stream是一个泛函数据流配件库(functionalstreamcombinatorlibrary),特别适用于函数式编程。
雪川大虫
·
2016-07-07 17:00
第117课: Spark Streaming性能优化:如何最大程度的确保Spark Cluster和Kafka链接的稳
SparkCluster和Kafka链接的稳定性1SparkStreaming与Kafka连接问题2KafkaReceiverspark2.x弄了一个静态类型检查,python就不能用ZkUtils.
scalaz
ookeeper.session.timeout.ms
段智华
·
2016-06-04 21:37
Scalaz
(41)- Free :IO Monad-Free特定版本的FP语法
我们不断地重申FP强调代码无副作用,这样才能实现编程纯代码。像通过键盘显示器进行交流、读写文件、数据库等这些IO操作都会产生副作用。那么我们是不是为了实现纯代码而放弃IO操作呢?没有IO的程序就是一段烧CPU的代码,没有任何意义,所以任何类型的程序都必须具备IO功能,而在FP模式中对IO操作有特别的控制方式:具体实现是通过把代码中产生副作用的部分抽离出来延后运算(在所有纯代码运算之后)。scal
TIGER_XC
·
2016-05-10 18:00
编程
scala
functional
programmi
scalaz
Scalaz
(41)- Free :IO Monad-Free特定版本的FP语法
我们不断地重申FP强调代码无副作用,这样才能实现编程纯代码。像通过键盘显示器进行交流、读写文件、数据库等这些IO操作都会产生副作用。那么我们是不是为了实现纯代码而放弃IO操作呢?没有IO的程序就是一段烧CPU的代码,没有任何意义,所以任何类型的程序都必须具备IO功能,而在FP模式中对IO操作有特别的控制方式:具体实现是通过把代码中产生副作用的部分抽离出来延后运算(在所有纯代码运算之后)。scal
雪川大虫
·
2016-05-10 18:00
Scalaz
(40)- Free :versioned up,再回顾
前面遇到的问题主要与
scalaz
Free的FreeC类型有关系。这个类型主要是针对一些非Functor的F[A]特别设计的。
TIGER_XC
·
2016-04-26 12:00
编程
scala
functional
programmi
scalaz
Scalaz
(39)- Free :a real monadic program
一直感觉FP比较虚,可能太多学术性的东西,不知道如何把这些由数学理论在背后支持的一套全新数据类型和数据结构在现实开发中加以使用。直到FreeMonad,才真正感觉能用FP方式进行编程了。在前面我们已经花了不小篇幅来了解FreeMonad,这次我想跟大家讨论一下用FreeMonad来编写一个真正能运行的完整应用程序。当然,这个程序必须具备FP特性,比如函数组合(functioncompositi
TIGER_XC
·
2016-04-18 11:00
编程
scala
functional
programmi
scalaz
Scalaz
(38)- Free :Coproduct-Monadic语句组合
很多函数式编程爱好者都把FP称为MonadicProgramming,意思是用Monad进行编程。我想FP作为一种比较成熟的编程模式,应该有一套比较规范的操作模式吧。因为Free能把任何F[A]升格成Monad,所以Free的算式(AST)、算法(Interpreter)关注分离(separationofconcern)模式应该可以成为一种规范的FP编程模式。我们在前面的几篇讨论中都涉及了一些
TIGER_XC
·
2016-04-12 11:00
编程
scala
functional
programmi
scalaz
Scalaz
(37)- Free :实践-DB Transaction free style
我们先设计一些示范例子来分析一下惯用的数据库编程过程:import
scalaz
._ import
Scalaz
._ importscala.language.higherKinds importscala.language.implicitConversion
TIGER_XC
·
2016-03-30 12:00
编程
scala
functional
programmi
scalaz
Scalaz
(36)- Free :实践-Free In Action - 实用体验
在上面几期讨论中我们连续介绍了FreeMonad。因为FP是纯函数编程,也既是纯函数的组合集成,要求把纯代码和副作用代码可以分离开来。FreeMonad的程序描述(AST)和程序实现(Interpretation)关注分离(separationof concern)模式恰恰能满足FP要求。我们可以用一些代数数据类型(ADTAlgebraicDataType)来模拟功能,再把这些ADT组合起来形成
TIGER_XC
·
2016-03-28 11:00
编程
scala
functional
programmi
scalaz
Scalaz
(35)- Free :运算-Trampoline,say NO to StackOverflowError
在前面几次讨论中我们介绍了Free是个产生Monad的最基本结构。它的原理是把一段程序(AST)一连串的运算指令(ADT)转化成数据结构存放在内存里,这个过程是个独立的功能描述过程。然后另一个独立运算过程的Interpreter会遍历(traverse)AST结构,读取结构里的运算指令,实际运行指令。这里的重点是把一连串运算结构化(reify)延迟运行,具体实现方式是把Monad的连续运算方法
雪川大虫
·
2016-03-25 21:00
Scalaz
(35)- Free :运算-Trampoline,say NO to StackOverflowError
在前面几次讨论中我们介绍了Free是个产生Monad的最基本结构。它的原理是把一段程序(AST)一连串的运算指令(ADT)转化成数据结构存放在内存里,这个过程是个独立的功能描述过程。然后另一个独立运算过程的Interpreter会遍历(traverse)AST结构,读取结构里的运算指令,实际运行指令。这里的重点是把一连串运算结构化(reify)延迟运行,具体实现方式是把Monad的连续运算方法
TIGER_XC
·
2016-03-25 21:00
编程
scala
functional
programmi
scalaz
Scalaz
(35)- Free :运算-Trampoline,say NO to StackOverflowError
在前面几次讨论中我们介绍了Free是个产生Monad的最基本结构。它的原理是把一段程序(AST)一连串的运算指令(ADT)转化成数据结构存放在内存里,这个过程是个独立的功能描述过程。然后另一个独立运算过程的Interpreter会遍历(traverse)AST结构,读取结构里的运算指令,实际运行指令。这里的重点是把一连串运算结构化(reify)延迟运行,具体实现方式是把Monad的连续运算方法
TIGER_XC
·
2016-03-25 21:00
编程
scala
functional
programmi
scalaz
Scalaz
(35)- Free :运算-Trampoline,say NO to StackOverflowError
在前面几次讨论中我们介绍了Free是个产生Monad的最基本结构。它的原理是把一段程序(AST)一连串的运算指令(ADT)转化成数据结构存放在内存里,这个过程是个独立的功能描述过程。然后另一个独立运算过程的Interpreter会遍历(traverse)AST结构,读取结构里的运算指令,实际运行指令。这里的重点是把一连串运算结构化(reify)延迟运行,具体实现方式是把Monad的连续运算方法
雪川大虫
·
2016-03-25 21:00
Scalaz
(34)- Free :算法-Interpretation
我们说过自由数据结构(freestructures)是表达数据类型的最简单结构。List[A]是个数据结构,它是生成A类型Monoid的最简单结构,因为我们可以用List的状态cons和Nil来分别代表Monoid的append和zero。Free[S,A]是个代表Monad的最简单数据结构,它可以把任何FunctorS升格成Monad。Free的两个结构Suspend,Return分别代表了M
雪川大虫
·
2016-03-23 09:00
Scalaz
(34)- Free :算法-Interpretation
我们说过自由数据结构(freestructures)是表达数据类型的最简单结构。List[A]是个数据结构,它是生成A类型Monoid的最简单结构,因为我们可以用List的状态cons和Nil来分别代表Monoid的append和zero。Free[S,A]是个代表Monad的最简单数据结构,它可以把任何FunctorS升格成Monad。Free的两个结构Suspend,Return分别代表了M
TIGER_XC
·
2016-03-23 09:00
编程
scala
functional
programmi
scalaz
Scalaz
(33)- Free :算式-Monadic Programming
在任何模式的编程过程中都无法避免副作用的产生。我们可以用F[A]这种类型模拟FP的运算指令:A是可能产生副作用的运算,F[_]是个代数数据类型ADT(AlgebraicDataType),可以实现函数组合(functionalcomposition),我们可以不用理会A,先用F[_]来组合形成描述功能的抽象程序AST(AbstractSyntaxTree),对A的运算可以分开另一个过程去实现,而
TIGER_XC
·
2016-03-19 15:00
编程
scala
functional
programmi
scalaz
Scalaz
(33)- Free :算式-Monadic Programming
在任何模式的编程过程中都无法避免副作用的产生。我们可以用F[A]这种类型模拟FP的运算指令:A是可能产生副作用的运算,F[_]是个代数数据类型ADT(AlgebraicDataType),可以实现函数组合(functionalcomposition),我们可以不用理会A,先用F[_]来组合形成描述功能的抽象程序AST(AbstractSyntaxTree),对A的运算可以分开另一个过程去实现,而
雪川大虫
·
2016-03-19 15:00
Scalaz
(32)- Free :lift - Monad生产线
我们再看看freemonad结构Free的定义:
scalaz
/Free.scala/**Afreeoperationalmonadforsomefunctor`S`.Bindingisdoneusing
TIGER_XC
·
2016-03-18 08:00
编程
scala
functional
programmi
scalaz
Scalaz
(32)- Free :lift - Monad生产线
我们再看看freemonad结构Free的定义:
scalaz
/Free.scala /**Afreeoperationalmonadforsomefunctor`S`.Bindingisdoneusi
雪川大虫
·
2016-03-18 08:00
Scalaz
(31)- Free :自由数据结构-算式和算法的关注分离
我们可以通过自由数据结构(FreeStructure)实现对程序的算式和算法分离关注(separationofconcern)。算式(AbstractSyntaxTree,AST)即运算表达式,是对程序功能的描述。算法则是程序的具体运算方式(Interpreter),它赋予了算式意义。下面我们先用一个例子简单解释何为算式、算法:用一个简单的表达式1+2+3,这个表达式同时包含了算式和算法:运算
雪川大虫
·
2016-03-12 21:00
Scalaz
(31)- Free :自由数据结构-算式和算法的关注分离
我们可以通过自由数据结构(FreeStructure)实现对程序的算式和算法分离关注(separationofconcern)。算式(AbstractSyntaxTree,AST)即运算表达式,是对程序功能的描述。算法则是程序的具体运算方式(Interpreter),它赋予了算式意义。下面我们先用一个例子简单解释何为算式、算法:用一个简单的表达式1+2+3,这个表达式同时包含了算式和算法:运算
TIGER_XC
·
2016-03-12 21:00
编程
scala
functional
programmi
scalaz
Scalaz
(30)- Free :Natural Tranformation ~> - map higher kinded types for free
当我们需要定义一些对应高阶类型进行相互类型转换的操作函数时,我们发现scala语言并不提供能定义这种函数的支持。举例来说:如果我们希望定义一个函数把对于任何T值的Option[T]转换成List[T]的话,我们可能这样定义:1deftoList[T](opt:Option[T]):List[T]=opt.toList2//>toList:[T](opt:Option[T])List[T] 3
雪川大虫
·
2016-03-11 14:00
Scalaz
(29)- Free :Coyoneda - Functor for free
很多时候我们会遇到一些高阶类型F[_],但又无法实现它的map函数,也就是虽然形似但F不可能成为Functor。看看下面的例子:traitInteract[A]caseclassAsk(prompt:String)extendsInteract[String]caseclassTell(msg:String)extendsInteract[Unit]Interact类型只容许两种实例:Ask继承
雪川大虫
·
2016-03-11 07:00
Scalaz
(29)- Free :Coyoneda - Functor for free
很多时候我们会遇到一些高阶类型F[_],但又无法实现它的map函数,也就是虽然形似但F不可能成为Functor。看看下面的例子:traitInteract[A] caseclassAsk(prompt:String)extendsInteract[String] caseclassTell(msg:String)extendsInteract[Unit] Interact类型只容许两种实例:As
TIGER_XC
·
2016-03-11 07:00
编程
scala
functional
programmi
scalaz
Scalaz
(28)- ST Monad :FP方式适用变量
函数式编程模式强调纯代码(purecode),主要实现方式是使用不可变数据结构,目的是函数组合(composability)最终实现函数组件的重复使用。但是,如果我们在一个函数p内部使用了可变量(mutablevariables),如果函数的输入参数e是纯代码,那么表达式p(e)同样是纯代码的,因为函数的调用者是无法接触到函数内部申明的这些可变量的。不过,这样的做法会造成函数的臃肿代码,因为在
TIGER_XC
·
2016-02-29 08:00
编程
scala
functional
programmi
scalaz
Scalaz
(28)- ST Monad :FP方式适用变量
函数式编程模式强调纯代码(purecode),主要实现方式是使用不可变数据结构,目的是函数组合(composability)最终实现函数组件的重复使用。但是,如果我们在一个函数p内部使用了可变量(mutablevariables),如果函数的输入参数e是纯代码,那么表达式p(e)同样是纯代码的,因为函数的调用者是无法接触到函数内部申明的这些可变量的。不过,这样的做法会造成函数的臃肿代码,因为在
雪川大虫
·
2016-02-29 08:00
Scalaz
(27)- Inference & Unapply :类型的推导和匹配
本来不想花什么功夫在scala的类型系统上,但在阅读
scalaz
源代码时往往遇到类型层面的编程(typelevelprogramming),常常扰乱了理解
scalaz
代码思路,所以还是要简单的介绍一下scala
TIGER_XC
·
2016-02-23 21:00
编程
scala
functional
programmi
scalaz
Scalaz
(27)- Inference & Unapply :类型的推导和匹配
本来不想花什么功夫在scala的类型系统上,但在阅读
scalaz
源代码时往往遇到类型层面的编程(typelevelprogramming),常常扰乱了理解
scalaz
代码思路,所以还是要简单的介绍一下scala
雪川大虫
·
2016-02-23 21:00
Scalaz
(26)- Lens: 函数式不可变对象数据操作方式
scala中的caseclass是一种特殊的对象:由编译器(compiler)自动生成字段的getter和setter。如下面的例子:1caseclassCity(name:String,province:String)2caseclassAddress(street:String,zip:String,city:City)3caseclassPerson(name:String,age:Int
雪川大虫
·
2016-01-30 11:00
Scalaz
(26)- Lens: 函数式不可变对象数据操作方式
scala中的caseclass是一种特殊的对象:由编译器(compiler)自动生成字段的getter和setter。如下面的例子:caseclassCity(name:String,province:String) caseclassAddress(street:String,zip:String,city:City) caseclassPerson(name:String,age:Int,
TIGER_XC
·
2016-01-30 11:00
编程
scala
functional
programmi
scalaz
Scalaz
(25)- Monad: Monad Transformer-叠加Monad效果
中间插播了几篇
scalaz
数据类型,现在又要回到Monad专题。因为FP的特征就是Monad式编程(Monadicprogramming),所以必须充分理解认识Monad、熟练掌握Monad运用。
TIGER_XC
·
2016-01-20 08:00
编程
scala
functional
programmi
scalaz
Scalaz
(25)- Monad: Monad Transformer-叠加Monad效果
中间插播了几篇
scalaz
数据类型,现在又要回到Monad专题。因为FP的特征就是Monad式编程(Monadicprogramming),所以必须充分理解认识Monad、熟练掌握Monad运用。
雪川大虫
·
2016-01-20 08:00
Scalaz
(24)- 泛函数据结构: Tree-数据游览及维护
在电子商务应用中对于xml,json等格式文件的处理要求非常之普遍,
scalaz
提供了Tree数据类型及相关的游览及操作函数能更方便高效的处理xml,json文件及系统目录这些树形结构数据的相关编程。
雪川大虫
·
2016-01-08 08:00
Scalaz
(24)- 泛函数据结构: Tree-数据游览及维护
在电子商务应用中对于xml,json等格式文件的处理要求非常之普遍,
scalaz
提供了Tree数据类型及相关的游览及操作函数能更方便高效的处理xml,json文件及系统目录这些树形结构数据的相关编程。
TIGER_XC
·
2016-01-08 08:00
编程
scala
functional
programmi
scalaz
Scalaz
(23)- 泛函数据结构: Zipper-游标定位
不要想歪了,我说的不是裤裆拉链而是
scalaz
Zipper,一种泛函数据结构游标(cursor)。
TIGER_XC
·
2016-01-06 21:00
编程
scala
functional
programmi
scalaz
Scalaz
(23)- 泛函数据结构: Zipper-游标定位
不要想歪了,我说的不是裤裆拉链而是
scalaz
Zipper,一种泛函数据结构游标(cursor)。
雪川大虫
·
2016-01-06 21:00
Scalaz
(22)- 泛函编程思维: Coerce Monadic Thinking
前面写过一篇关于用Reader实现依赖注入管理的博文(
Scalaz
(16)-Monad:依赖注入-DependencyInjectionByReaderMonad)。
TIGER_XC
·
2015-12-30 09:00
Scalaz
(22)- 泛函编程思维: Coerce Monadic Thinking
前面写过一篇关于用Reader实现依赖注入管理的博文(
Scalaz
(16)-Monad:依赖注入-DependencyInjectionByReaderMonad)。
雪川大虫
·
2015-12-30 09:00
Scalaz
(21)-类型例证:Liskov and Leibniz - type evidence
碰巧从
scalaz
源代码里发现了这么个东西:
scalaz
/BindSyntax.scala/**Wrapsavalue`self`andprovidesmethodsrelatedto`Bind`*/finalclassBindOps
雪川大虫
·
2015-12-29 08:00
Scalaz
(21)-类型例证:Liskov and Leibniz - type evidence
碰巧从
scalaz
源代码里发现了这么个东西:
scalaz
/BindSyntax.scala/**Wrapsavalue`self`andprovidesmethodsrelatedto`Bind`*/
TIGER_XC
·
2015-12-29 08:00
编程
scala
functional
programmi
scalaz
Scalaz
(20)-Monad: Validation-Applicative版本的Either
scalaz
还提供了个typeclass叫Validation。乍看起来跟\/没什么分别。实际上这个Validation是在\/的基础上增加了Applicative功能,就是实现了ap函数。
雪川大虫
·
2015-12-17 18:00
Scalaz
(20)-Monad: Validation-Applicative版本的Either
scalaz
还提供了个typeclass叫Validation。乍看起来跟\/没什么分别。实际上这个Validation是在\/的基础上增加了Applicative功能,就是实现了ap函数。
TIGER_XC
·
2015-12-17 18:00
编程
scala
functional
programmi
scalaz
Scalaz
(19)- Monad: \/ - Monad 版本的 Either
scalaz
也提供了自己版本的Either,并用\/来分辨表示,以及两种状态-\/和\/-。我想
scalaz
特别提供\/是有原因的:\/不单是一种类
雪川大虫
·
2015-12-17 13:00
Scalaz
(19)- Monad: \/ - Monad 版本的 Either
scalaz
也提供了自己版本的Either,并用\/来分辨表示,以及两种状态-\/和\/-。我想
scalaz
特别提供\/是有原因的:\/不单是一种类
TIGER_XC
·
2015-12-17 13:00
编程
scala
functional
programmi
scalaz
Scalaz
(18)- Monad: ReaderWriterState-可以是一种简单的编程语言
说道FP,我们马上会联想到Monad。我们说过Monad的代表函数flatMap可以把两个运算F[A],F[B]连续起来,这样就可以从程序的意义上形成一种串型的流程(workflow)。更直白的讲法是:任何类型只要实现了flatMap就可以用for-comprehension,for{...}yield。在这个for{...}里我们可以好像OOP一样编写程序。这个for就是一种运算模式,它规范了
TIGER_XC
·
2015-12-15 17:00
编程
scala
functional
programmi
scalaz
上一页
1
2
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他