由买买提看人间百态

topics

全部话题 - 话题: clojure
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)
p****o
发帖数: 1340
1
来自主题: Programming版 - 介绍一个学习Clojure的好地方
可以借贴问一个问题吗?我最近也在学clojure,呵呵,主要是因为自己的兴趣,也慢
慢体会到了这个functional programming确实处理很多问题有好处。
HCI说,快糙猛是用clojure的一个好处,但是这个我就没有体会到。我的问题是,如何
才能用clojure快糙猛哩?
h*i
发帖数: 3446
2
来自主题: Programming版 - [bssd]使用clojure的一些个人体会
基本属实。
库少不是问题,Clojure是寄生语言,用宿主的库就行了。有点时间,还可以自己用
Clojure包装一下,放github上,有人用的话,对找工作有帮助。
Clojure现在不算是个时尚语言了,用户大多是有经验的程序员,其实蛮好。
c**s
发帖数: 43
3
来自主题: _FunctionalProgramming版 - Clojure
I think you could start with the 2 books on Clojure, Programming Clojure and
Practical Clojure. If you don't have lisp exp, you maybe want to try OnLisp
later, after you are more familiar with the language.
M*********n
发帖数: 4839
4
来自主题: JobHunting版 - 请教个大牛关于clojure
有大牛用过这个吗?前景如何?
今天又收到一个小公司的offer,用clojure做super computing,我说c/c++好啊,
他说clojure才是未来。
h*i
发帖数: 3446
5
来自主题: Java版 - Anyone start looking at clojure?
No, I am talking about Clojure, the programming language, not closure, the
technique.
Clojure is a Lisp on JVM. It's a functional programming language, not object
-oriented.

an
d*******r
发帖数: 3299
6
来自主题: Programming版 - 关于clojure
Clojure 现在有什么成功的大一点的项目吗?
感觉 Scala 用的地方多一点.
前不久看到 Clojure 的作者也搞了个自己的NoSQL database, Datomic
http://www.datomic.com/about.html
t****a
发帖数: 1212
7
来自主题: Programming版 - clojure data analysis cookbook
个人认为,incanter从设计,功能,和性能上都比R差一截。好处是他很容易和clojure
的其他部分整合,比如弄到hadoop上去运行就很容易。clojure是通用语言,设计上个
人以为比R强。
p*****2
发帖数: 21240
8
来自主题: Programming版 - clojure这语言真不错

scala:
OO, FP, imperative 混杂在一起,上手可能更容易一点,因为大家都熟悉OO和
imperative,但是语言变的复杂化了。
并发:AKKA,actor model 非常适合大型的分布式应用的开发, 如果开发大型应用应选
scala
静态类型,开发速度会比较慢,如果对Scala不是很熟悉,开发效率也未必比Java高
clojure:
基本上纯FP,上手可能更难一点,但是上手之后就是一个爽字了。
并发:STM model, 使得多线程编程更容易,也使得FP里面可以mutate state, thread
safe, 开发一般程序足够了,但是开发大型分布式应用明显不如AKKA
动态类型,适合快速开发
总的来说scala语言复杂,功能强大,clojure语言简单(熟悉以后),属于小快灵的风
格。两者对尾递归的支持都差不多。
d******3
发帖数: 70
9
来自主题: Programming版 - clojure这语言真不错
刚粗略看了下Clojure,觉得在state mutation方面是比Haskell简化了。haskell里主
要还是靠monad来实现。monad是公认的难学,不过monad一旦做好了后,就使得不纯的
function具有了和纯function类似的特质,并发就变得很简单了。我总有点疑虑,
clojure的这种简化是不是还是要花一些代价的,总体来说。另外FP在把很多function
合成一个系统的时候,有type checking还是一个挺大的advantage吧。

mutation
r*******n
发帖数: 3020
10
来自主题: Programming版 - Scala Clojure 难以抉择
我前年比较闲,把几大functional 语言看了一下,纸上的功夫,没有做过项目.
我喜欢阅读技术书籍,比如经典的joy of clojure, clojure programming,
learn you a haskell for great good, ocaml doc, practical common lisp.
还有paper why functional这些都看了,但谈不上研究,就想知道点为什么。
d*******r
发帖数: 3299
11
来自主题: Programming版 - Scala Clojure 难以抉择
二爷你 Node.js 不用啦? 或者是主要用 Clojure,然后需要效能和大并发的地方,用
点 Node.js?

Clojure
z****e
发帖数: 54598
12
用clojure,这个比较纯粹的fp
而且符号比scala好
但是你这个跑在jvm上是为了什么?
用你习惯的语言建模出报表,r什么都可以
然后如果需要,你再用clojure什么
另外jvm上的数学,你应该看一看apache common math这个lib
z****e
发帖数: 54598
13
如果你真要自己实现,再clojure
clojure并没有优化多少,其实还是很烦的一个过程
p*****2
发帖数: 21240
14
来自主题: Programming版 - 这次Scala学Clojure有点不地道了

是。我们公司一个java大牛说他帮助debug了一个scala项目的bug,结果花了好多时间
最后发现是akka的bug,因此强烈鄙视用scala的人。我跟他说了一下clojure,他到挺
同意用clojure的。
c******o
发帖数: 1277
15
来自主题: Programming版 - 这次Clojure把Scala给干了
this comparison happens many times, look at the comment, scala has its
greatness.
I am recently just fascinated by scalaz.
btw, how clojure handle stack overflow for complex recursions?
I am recently studying stackless scala, wondering how clojure handle
recursive that is not tail recursive.
n*****3
发帖数: 1584
16
来自主题: Programming版 - 有人参加Clojure West conference吗?
到了 clojure west
clojure 不温不火, 做并行是不错。。
clojurescipt react om 看起来会很火
m******t
发帖数: 635
17
来自主题: Programming版 - 发现Clojure才是语言的王中王
顶一下二爷和clojure.
搭车问个问题,如果用clojure作REST web service一般怎么搞?我现在在考虑用一个
liberator的库不知道是不是目前的标准套路
e*******o
发帖数: 4654
18
来自主题: Programming版 - clojure这种东西只能自己一个人单干
Perl 的小trick 多,记住了就好了。
基本还是所见即所得,clojure还是容易晕的。
clojure 再给它10年,用的人的数量也没法和perl比吧。
我是写perl的,我在的公司用Perl,10多年了,即使去年开始重写新版本,也没有换语
言。
S*A
发帖数: 7142
19
来自主题: Programming版 - Uncle Bob: Clojure is the new C
看了,臭长。这个人觉得自己很吊。
对于 C 的优点分析以及汇编的接近很赞同。
但是根本没有说明为什么 clojure 是新的 C。
就是可以运行时候自己修改自己代码?
论据非常弱。
Clojure 绝对没有可能接近 C 的地位。
p*****2
发帖数: 21240
20
来自主题: Programming版 - clojure能单独做大系统么?
对手
scala把clojure很多东西都抄了 断了clojure的后路
p*****2
发帖数: 21240
21
来自主题: Programming版 - clojure能单独做大系统么?
我们用clojure比scala多不少 毕竟clojure好学吗
不过你说spark的话干嘛不上scala
另外oo有oo的好处 这个要承认 当然scala fp oo揉在一起更复杂了 所以也得看如何取
舍了
h*i
发帖数: 3446
22
Clojure就是适合做lightweight数据处理,vectors, maps, 等等,很适合做data
munging/feature engineering.
如果你是要作numerical analysis,那还得go native and distributed.
类似R的,Clojure的incanter有dataframe。
h*i
发帖数: 3446
23
看你说的数据分析是指产品中的还是产品前的。
R太慢,一般不用在产品里面跑,而且,产品中很少会跑复杂的算法,R包全的优势不明
显.
我一般是用R建模,训练参数,产品里面用,用的代码用clojure 写,事实上,我们产
品全是用clojure 写的,前后端都是。

★ 发自iPhone App: ChineseWeb 8.7
h*i
发帖数: 3446
24
问题是这样的,Java每个东西都必须取个名字,这个名字指代的复杂数据结构必须装在
程序员脑袋里面: map.put(BattleOrganizer.getBattleParticipant())
http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of
Clojure一切都是直白的,也不用给一切东西取名字,相当于直接在JSON上面操作。{:
battle-orgnaizer {:name "zhaoce" :id 1}}, 这整个东西不需要名字,是什么意思是
直白的。
Clojure里面,如果不写宏的话,特殊符号不多,(), [], {}, #{}, #(%),这是有限的
,而且特殊符号的意思是公共的,学会了就行;而给数据结构可以取的名字是无限的,
名字的意思只有写程序的人自己知道,然后再把每个东西用一个类包起来,放到一个单
独文件里面,这完全就是不想让别人理解了,非用IDE工具不可。
h*i
发帖数: 3446
25
你从来不写JSON config files?
Clojure约定俗成,尽量用:keywords来作key, 现实中,一般见到的clojure map都是这
种样子的:
{:key value
:another-key another-value
:key2 value3}
缩进,空格都有用。
:keywords自己也是函数, 所以可以用来从map中取值:(:a-key a-map)
而不用写 (get a-map :a-key),一个意思,更简略而已。
n*****3
发帖数: 1584
26
nb ah..
BTW why you guys did not use scala instead of clojure ? clojure really
looks bad
since spark gets more and more popular nowdays..

containters,
h*i
发帖数: 3446
27
to me:
Scala : Java :: C++ : C
我15年前放弃C++选了Java, 和今天不用Scala用Clojure的道理是一样的。我只对写应
用感兴趣,对语言本身的特性没有丝毫的兴趣,不想在语言本身上化时间,Clojure让
我把时间用在创造我的应用上,而不是学别人创造的语法上。JVM上的东西我都能用,
包括Spark,我为啥要跟自己过不去?
f******x
发帖数: 98
28
握手,海螺子。Clojure也是我的favorite。可惜incanter还是一块短板,工作环境里
还是只能用Python/R.
期待Clojure将来会有更好的数值计算库和环境。
n*****3
发帖数: 1584
29
agree, clojure is indeed beautiful in terms of design, like c ;
scala is a mixed monster like c++
but spark's clojure wraper is not so mature, and can not always be up-to-
date .
d*******r
发帖数: 3299
30
大牛用 dynamic typing 难道没有错误地 access 某个变量,然后程序 crash 掉的吗?
比如我看你 clojure sample 里还有 access java class 的 data member 的代码,如
果那个 data member 不存在会如何?
我觉得 static typing 确实更 robust,不会run起来再 crash 掉。
还有,clojure 需要处理 validate remote message 这类的问题吗?

ligthtable,
has
d*******r
发帖数: 3299
31
这个叼...
我是想学 Clojure 的,不过工作上没机会用...
大牛说说 Clojure 跟 Scheme 用起来主要区别是啥

production
h*i
发帖数: 3446
32
如果不调用Java,全用Clojure数据结构的话,不会出null pointer exception crash.
Clojure handle it for you.
如果调Java的数据的话,还是和写Java程序一样的,要自己make sure it's not null
。Java's syntax check does not help with such runtime exceptions. Unless it
has a type system like that of Haskell, but Java does not have that.

吗?
n*****3
发帖数: 1584
33
来自主题: Programming版 - clojure的书那本好 适合学习?
o'reilly clojure programming as the first clojure book.
You might only need to cover the first half book【 在 cornbeef (maimai) 的大
作中提到: 】
n*****3
发帖数: 1584
34
来自主题: Programming版 - clojure的书那本好 适合学习?
o'reilly clojure programming as the first clojure book.
You might only need to cover the first half book【 在 cornbeef (maimai) 的大
作中提到: 】
h*i
发帖数: 3446
35
我个人认为clojure 的Llsp特点不是难点,所以CL程序员不比Java程序员学clojure 有
什么优势。

★ 发自iPhone App: ChineseWeb 8.7
h*i
发帖数: 3446
36
mutable data也会用到,但不是必须的。一般atom用得最多,存全局状态方便。我写过
的几个Web应用一般都会用到几个atom,主要是为了方便。如果不图方便,可以用
component这种DI framework,这样就连atom都不用了。我一般是两者都用,常用到的
状态,比如DB connection啥的,用component,只只出现在一个地方的的状态用atom。
但如果是写libary,经常是一个mutable data都没有的。Clojure故意把mutable data
搞得很难用。最容易用的atom,也要搞一些boilerplate,先要定义,然后用的时候要
swap!, swap!的时候还要记得把值包在一个函数里面,最后要deref,一堆事要做。
基本上来说,Clojure日常的代码,bread and butter, 都是用immutable data的,这
个坎必须翻过去才能正常写代码,CL程序员和Java程序员都一样的需要翻这个坎。
h*i
发帖数: 3446
37
来自主题: Programming版 - groovy 和 clojure, 该学哪个?
Clojure
学了clojure 你算是学到了新东西,艺不压身。groovy这种不用学,到时要用拿起来就
用就行了。

★ 发自iPhone App: ChineseWeb 8.7
h*i
发帖数: 3446
38
来自主题: Programming版 - clojure 在业界比scala的job要多。
That's exactly what I said. A team that have adopted Clojure is not a team
that do some Clojure on the side. If they do the later, they are not whom I
refer to in my statement.
c******o
发帖数: 1277
39
来自主题: Programming版 - clojure 在业界比scala的job要多。
...
I already showed. Static JVM language is something clojure can not
substitute, and can not ever do better than in that area.
"Once Clojure is used in a team, there is simply no benefit of using Java
for this team any more."

But
g*****g
发帖数: 34805
40
来自主题: Programming版 - clojure 在业界比scala的job要多。
Groovy didn't aim high but it will stay useful. Clojure aims to take over
the world but struggles to remain relevant. Someday another language will
succeed Java , but it's not Clojure for sure.

.
ones
n*****3
发帖数: 1584
41
second this
我听了这个报告, 感觉 clojure 很有前途,
from data to Web presentation,
clojure/script 一条龙搞定, PE form ace
还很好 , 和 Java 一样 or better。
h*i
发帖数: 3446
42
来自主题: Programming版 - Clojure上手123
我没找过Clojure工作,但从招人角度,感觉是Clojure工作不少,但人很难找到。不过
现在程序员都很吃香吧,所以不用有找不到工作的担心。
p*******8
发帖数: 344
43
来自主题: Programming版 - Clojure上手123
现在最简单的刷了60题,表示还没迈过坎,三周后要去新公司搞clojure, 是不是得抓
紧刷了?clojure的core functions不少啊,感觉还是要不断刷才能真正理解,有时候
很简单的算法也不知道怎么入手,是不是应该多用recursion? 刷题过程还是觉得自己
慢慢在进步
h*i
发帖数: 3446
44
来自主题: Programming版 - Clojure上手123
根据用Clojure主打的公司的人自己的描述,他们往往能让新人在两三周内上手Clojure
。毕竟这个语言很简单,有人带,有具体项目的话,应该很快能上手的。
Enjoy.
r*g
发帖数: 3159
45
来自主题: Programming版 - Clojure上手123
老实讲,这一点clojure 比apl/j 差远了。当然你要说clojure有别的优势那是, 但是
就这个几十个核心函数, 数据为中心,建议看看j的词典。
我学这些不为工作也不为面试,就是玩玩。
h*i
发帖数: 3446
46
来自主题: Programming版 - Clojure上手123
听说过APL/J,以前IBM很多人都会。不过这种语言怪符太多了吧?point-free, 函数
的参数都是藏起来的,这个也太抽象了。
Clojure发展了好几年才发展到这个阶段,这就是Clojure 1.7引入的所谓transducer,
也就是0参数的函数组合。但这已经有人认为太过了,全是point-free的语言,还不得
让人发疯了。
我觉得语言设计掌握一个度很重要。计算机这个行当出新东西不容易,所谓The
sciences of the artificial, 都是人想出来的东西,大部分东东别人都已经想过了。
所以比的不该是谁“最“怎么怎么,比得是应该是谁把已有的东西组合得更好用。
h*i
发帖数: 3446
47
来自主题: Programming版 - go channel和clojure core.async哪个好
作为一个用户,我不管底层是如何实现的,只要我用起来一样就行了。
具体说到实现的话,Clojure好像是把CSP转换成一个finte state machine来实现async
的。从用户角度,这种实现好像也没有什么损害。
好像没有人benchmark过goroutine和core.async两者的效率区别。可能也没有意义,两
个语言的使用场合完全不同。go是底层系统语言,与C/C++啥的竞争,Clojure是高层的
用来写应用的语言,根本不与C/C++的竞争。

async
n******7
发帖数: 12463
48
来自主题: Programming版 - scala基本是死了。clojure还有戏么
scala为啥死了? clojure哪里有大规模的应用吗?
版上写scala的还见过几个
clojure好像就hci了
h*i
发帖数: 3446
49
来自主题: Programming版 - 如何找Clojure工作
好问题,但我不知道答案。
不过一般来说,我觉得能找到本地的,可能也不愿意找远程的。比如我自己,要招人的
话肯定不会招远程工作的,我们内部都商量过了,宁愿招不会Clojure的junior来训练
也不愿意要远程的Clojure老手,我们这种初创公司担不起远程的风险。
当然各公司境况不一样,不能一概而论。
h*i
发帖数: 3446
50
Rich Hickey is an outsider. His college major was Music. His formal
education in Computer Science was taking some class from a local college (
SUNY Empire State College). His linkedin: https://www.linkedin.com/in/
richhickey
However, he has been a professional programmer for several decades, and
taught programming classes in universities such as NYU. He implemented
several versions of Lisp in various platforms before developing Clojure full
-time for a couple of years. After announcing Clojure, ... 阅读全帖
首页 上页 1 2 3 4 5 6 7 8 9 10 下页 末页 (共10页)