Redian新闻
>
Scala higher-kind type和jvm弱type system
avatar
L*e
2
本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
惯例吗?
avatar
s*u
3
拜谢各位!
avatar
C*e
4
5月中要去意大利开会,现在发现LA意大利使馆最早的预约VISA时间到了5月3号,而且
网站说要3个礼拜的处理时间,这样时间就不够了。
因为意大利是申根国家,那我可否申请其他申根国的签证呢,比如法国(因为听说法国
的VISA申请当天就能取到?)。
因为开是在意大利开,申请法国签证这样理由足够吗?如果持有法国的申根签证,到时
候直接去意大利会有问题吗?
谢谢大家!
avatar
s*1
5
我是一个很喜欢思考也善于思考的人。和朋友们聊天,我也总能够给出一些有深度的看
法,觉得自己算是一个有深度的人。
不知道是否如何,现实生活中反而失去了一些热情。比如,喜欢家里整洁,却没有热情
去收拾整理。希望自己有健美的身材,却没有热情去坚持锻炼。
也许,要有一些原始的冲动,不要太多理智和思考。
avatar
x*x
6
像iPhone, iPod... 设计就是给单独一个人用的,不需要共用,没问题。
家里的电脑,有可能是几个人共用,可以设定多个用户,没问题。
对这个iPad,有些人会考虑买一个放在家里,
谁抓起来谁用,但目前没有多用户的功能,
那邮件,日历,通讯录,一家人用的就都放在一起的, 谁都可以看谁的.
嘿嘿
除非人手一台, 否则目前共用的话,还真是个问题.
avatar
n*w
7
这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
不少贴。结果来了几个大坑。为了避嫌推迟到现在。
一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
,因为要大改clr。
但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
compiler trick。觉得scala的higher kind type要么同样也只是compile-time
checking,要么在jvm上加了东西?
找到这一段“Scala runs on the JVM, which implements a very poor type system
on its own (much poorer than the CLR). It doesn’t support type parameters
of any kind, let alone type constructors. The amazing richness in the Scala
type system is accomplished using compile-time checking only, and a lot of
code transformations. The virtual machine is completely oblivious to it.”。
http://www.sparxeng.com/blog/software/an-example-of-what-higher
jvm的type system确实很弱。个人觉得一个弱type system的vm不能算一个好的vm。可
能java 9会改。这样会不会引起兼容性问题?
avatar
p*e
8
哈哈哈 看到这些我可以回忆出各种经典牌子
tannoy sf bw harbeth
各种山寨啊。。。

【在 w*****3 的大作中提到】
: 这些音箱和一般品牌音箱差距到底多大?
: 就和神器BS41比比吧。
: BS41 原价$149 ~=900rmb,deal $90~=550RMB
: 和这里同等价格的音箱比较比较?
: 如果没有优势显示不出来神器这两个字啊。
: http://tao.etao.com/search?_input_charset=utf-8&catid=50011972&

avatar
k*c
9
没这一说。
avatar
r*y
10
意大利使馆不清楚,但我接触过的意大利领馆都相当好说话,你先email联系他们讲明
情况试试吧,实际上是可能3-5天帮你办好的,至少我问过的领馆这么答复的。
avatar
wy
11
怕老婆check你的email?

【在 x*x 的大作中提到】
: 像iPhone, iPod... 设计就是给单独一个人用的,不需要共用,没问题。
: 家里的电脑,有可能是几个人共用,可以设定多个用户,没问题。
: 对这个iPad,有些人会考虑买一个放在家里,
: 谁抓起来谁用,但目前没有多用户的功能,
: 那邮件,日历,通讯录,一家人用的就都放在一起的, 谁都可以看谁的.
: 嘿嘿
: 除非人手一台, 否则目前共用的话,还真是个问题.

avatar
g*g
12
你反正也不用,就不用操心了。

system

【在 n*w 的大作中提到】
: 这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
: 不少贴。结果来了几个大坑。为了避嫌推迟到现在。
: 一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
: 语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
: ,因为要大改clr。
: 但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
: compiler trick。觉得scala的higher kind type要么同样也只是compile-time
: checking,要么在jvm上加了东西?
: 找到这一段“Scala runs on the JVM, which implements a very poor type system
: on its own (much poorer than the CLR). It doesn’t support type parameters

avatar
w*3
13
要是能山寨出音质,哪怕70-80% 效果 也值了。
价格可是几十分之一啊。

【在 p********e 的大作中提到】
: 哈哈哈 看到这些我可以回忆出各种经典牌子
: tannoy sf bw harbeth
: 各种山寨啊。。。

avatar
r*y
14
你用opt干活儿他就得给钱

pre-

【在 L********e 的大作中提到】
: 本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
: OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
: 惯例吗?

avatar
C*e
15
谢谢,赞~~在LA的是ITALIAN CONSULATE,这个就是领馆,对吧
那你是在签证之前通过email说明了情况,他们回复了email,是吗
谢谢!

【在 r******y 的大作中提到】
: 意大利使馆不清楚,但我接触过的意大利领馆都相当好说话,你先email联系他们讲明
: 情况试试吧,实际上是可能3-5天帮你办好的,至少我问过的领馆这么答复的。

avatar
x*x
16
我只是提出这个问题,
我家的老车都支持"多用户",
我和老婆用不同的车钥匙开锁,
座位和镜子的设定就会切换.

【在 wy 的大作中提到】
: 怕老婆check你的email?
avatar
n*w
17
scala introduced manifests, 缓解了type erasure的部分问题?但performance
issue是不是还存在?
avatar
p*e
18
价格也没便宜啊。。。
最多1/10了

【在 w*****3 的大作中提到】
: 要是能山寨出音质,哪怕70-80% 效果 也值了。
: 价格可是几十分之一啊。

avatar
s*m
19
老板忽悠你啊

pre-

【在 L********e 的大作中提到】
: 本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
: OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
: 惯例吗?

avatar
t*l
20
一般要从落地国家或者呆的最久的国家中申请
建议你给意大利使馆和法国使馆打电话问一下

【在 C*********e 的大作中提到】
: 5月中要去意大利开会,现在发现LA意大利使馆最早的预约VISA时间到了5月3号,而且
: 网站说要3个礼拜的处理时间,这样时间就不够了。
: 因为意大利是申根国家,那我可否申请其他申根国的签证呢,比如法国(因为听说法国
: 的VISA申请当天就能取到?)。
: 因为开是在意大利开,申请法国签证这样理由足够吗?如果持有法国的申根签证,到时
: 候直接去意大利会有问题吗?
: 谢谢大家!

avatar
wy
21
kao,原来是BSO,你啥车啊

【在 x*x 的大作中提到】
: 我只是提出这个问题,
: 我家的老车都支持"多用户",
: 我和老婆用不同的车钥匙开锁,
: 座位和镜子的设定就会切换.

avatar
k*g
22

system
I know nothing about functional programming but I know at least a little
about C++ metaprogramming. Also I am very familiar with generic programming.
I have the feeling that,
(1) Unless the end-users of your language are compiler-writers or language
researchers (that is, users of your language use it to write their own
compilers or design their own languages),
(2) All other users outside this niche can have their practical programming
needs fulfilled with just generics, run-time code generation (which is a
whole new level of advancement over reflection), and run-time type creation.
http://stackoverflow.com/questions/15305804/define-generic-type

【在 n*w 的大作中提到】
: 这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
: 不少贴。结果来了几个大坑。为了避嫌推迟到现在。
: 一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
: 语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
: ,因为要大改clr。
: 但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
: compiler trick。觉得scala的higher kind type要么同样也只是compile-time
: checking,要么在jvm上加了东西?
: 找到这一段“Scala runs on the JVM, which implements a very poor type system
: on its own (much poorer than the CLR). It doesn’t support type parameters

avatar
w*3
23
ok, 这些山寨版的,效果会怎样?
在加上个山寨tube amp啥的

【在 p********e 的大作中提到】
: 价格也没便宜啊。。。
: 最多1/10了

avatar
G*y
24
按定义说博士后必须有博士学位.你拿到opt之后肯定是有工资的.OPT之前没有学位时有
些学校不能按博士后给你发工资.我老板一般是先按Technician发这几个月的工资.

pre-

【在 L********e 的大作中提到】
: 本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
: OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
: 惯例吗?

avatar
C*e
25
我给LA的意大利领馆打了电话,他们会直接问预约的签证日期和出发日记的间隔,我说
一周多的话,他们就说这个不够,签证可能是2天到3个礼拜,但不再说更具体的估计。
我现在不停的刷预约的space,不知道有否可能有人在最近cancel放出位置

【在 r******y 的大作中提到】
: 意大利使馆不清楚,但我接触过的意大利领馆都相当好说话,你先email联系他们讲明
: 情况试试吧,实际上是可能3-5天帮你办好的,至少我问过的领馆这么答复的。

avatar
x*x
26
老爷5系列,不要歪楼了
现在我就再犹豫要不要买iPad, 16gb还是32gb,
如果是公用的话,上面乱七八糟自己东西也不会存太多,
干脆就16随便玩玩,上个网,看看书.
其他看邮件,日历,facebook之类的还是iPhone算了,
还不每次log-in log-out还不够折腾得

【在 wy 的大作中提到】
: kao,原来是BSO,你啥车啊
avatar
H*S
27
It does come with a price, so if you only care about top level information
of the type class, e.g., for List[String] only care about info about the
type constructor List[_], pass in ClassManifest instead of Manifest.

【在 n*w 的大作中提到】
: scala introduced manifests, 缓解了type erasure的部分问题?但performance
: issue是不是还存在?

avatar
l*s
28
这个效果70%怎么评价

【在 w*****3 的大作中提到】
: 要是能山寨出音质,哪怕70-80% 效果 也值了。
: 价格可是几十分之一啊。

avatar
i*t
29
不是学位的问题,而是没有答辩就薄厚的问题,一般答辩通过才可以薄厚。

pre-

【在 L********e 的大作中提到】
: 本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
: OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
: 惯例吗?

avatar
i*m
30
想请问一下lz, 你签申根国有没有要求valid US visa? 比如如果现在的F1 or H1B过期
了,需要先去别的国家返签才能签申根国吗?还是说可以到了欧洲直接返签美国?
avatar
g*y
31
同意
要是没有mobile me
同步都够折腾的
我也就是看中它video和电子书
以前未来多媒体电子书

【在 x*x 的大作中提到】
: 老爷5系列,不要歪楼了
: 现在我就再犹豫要不要买iPad, 16gb还是32gb,
: 如果是公用的话,上面乱七八糟自己东西也不会存太多,
: 干脆就16随便玩玩,上个网,看看书.
: 其他看邮件,日历,facebook之类的还是iPhone算了,
: 还不每次log-in log-out还不够折腾得

avatar
n*w
32
这个倒不是一定是fp才有的东西。

programming.
language
programming
creation.

【在 k**********g 的大作中提到】
:
: system
: I know nothing about functional programming but I know at least a little
: about C++ metaprogramming. Also I am very familiar with generic programming.
: I have the feeling that,
: (1) Unless the end-users of your language are compiler-writers or language
: researchers (that is, users of your language use it to write their own
: compilers or design their own languages),
: (2) All other users outside this niche can have their practical programming
: needs fulfilled with just generics, run-time code generation (which is a

avatar
p*e
33
山寨tube amp可能比山寨bw箱子好一点。。。
你听了再说吧

【在 w*****3 的大作中提到】
: ok, 这些山寨版的,效果会怎样?
: 在加上个山寨tube amp啥的

avatar
l*y
34
it is true that he can't pay you as a postdoc, but he should be able to pay
you as a staff, such as a technician. no pay is bs.

pre-

【在 L********e 的大作中提到】
: 本人明年5月份答辩,拿到学位。找到了一个博后2-3月份就去干活。现在正在准备pre-
: OPT,明年初就去。那个老板突然说没拿到博士学位之前的博后工作不付工钱。这是个
: 惯例吗?

avatar
C*e
35
我有Valid的US Visa。这个应该是申请申根签证的一个要求吧,似乎是
好象是不能去了欧洲再返签回美国

【在 i********m 的大作中提到】
: 想请问一下lz, 你签申根国有没有要求valid US visa? 比如如果现在的F1 or H1B过期
: 了,需要先去别的国家返签才能签申根国吗?还是说可以到了欧洲直接返签美国?

avatar
r*h
36
agree

【在 x*x 的大作中提到】
: 像iPhone, iPod... 设计就是给单独一个人用的,不需要共用,没问题。
: 家里的电脑,有可能是几个人共用,可以设定多个用户,没问题。
: 对这个iPad,有些人会考虑买一个放在家里,
: 谁抓起来谁用,但目前没有多用户的功能,
: 那邮件,日历,通讯录,一家人用的就都放在一起的, 谁都可以看谁的.
: 嘿嘿
: 除非人手一台, 否则目前共用的话,还真是个问题.

avatar
n*w
37
找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
“My understand is that if:
type T = Foo[Bar[Baz]]
then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
ClassManifest[T] only represents Foo[_]”

【在 H****S 的大作中提到】
: It does come with a price, so if you only care about top level information
: of the type class, e.g., for List[String] only care about info about the
: type constructor List[_], pass in ClassManifest instead of Manifest.

avatar
r*y
38
但是有身份工作就该pay钱,跟博后不大一样就是了

【在 i*****t 的大作中提到】
: 不是学位的问题,而是没有答辩就薄厚的问题,一般答辩通过才可以薄厚。
:
: pre-

avatar
C*e
39
谢谢,整个行程都是在意大利,除了中间欧洲其他国的(应该是UK)转机以外
所以看来从法国申请没有足够的support

【在 t*****l 的大作中提到】
: 一般要从落地国家或者呆的最久的国家中申请
: 建议你给意大利使馆和法国使馆打电话问一下

avatar
k*g
40

http://www.scala-lang.org/api/2.9.2/scala/reflect/ClassManifest
def typeArguments: List[scala.reflect.OptManifest[_]]
I don't know Scala, but from its documentation Manifest is similar to the
TypeInfo class that is in CLR Reflection.
Basically, it is a class itself that provides information (type metadata)
about other classes that the user or library provider has written.
In reflection, the type "Bar[Baz]" is said to parameterize "Foo[Bar[Baz]]".
When it is not parameterized, a placeholder is used, as in "Foo[_]"
The same logic can be applied over and over again. After getting hold of "
Bar[Baz]", one can query to see if it is still generic, and if so, access
its type parameter, which is "Baz". Baz is no longer generic.
The corresponding CLR class is TypeInfo.
http://msdn.microsoft.com/en-us/library/system.reflection.typei
http://msdn.microsoft.com/en-us/library/system.reflection.typei
http://msdn.microsoft.com/en-us/library/system.type.generictype

【在 n*w 的大作中提到】
: 找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
: “My understand is that if:
: type T = Foo[Bar[Baz]]
: then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
: ClassManifest[T] only represents Foo[_]”

avatar
L*e
41
就是说理论上未答辩获得博士学位无法开始正式的博后工作,拿正式的工资。但如果需
要在拿到博士学位前工作,老板是可以或多或少给些资助的,无论是staff,
technician,还是其他临时的合同。但如果连这部分钱都不愿意出,又要先去干活,我
想我是不会去的,吃拧了。又不是什么大牛。再退一步,如果他要是愿意等我博士答辩
也行。如果不愿等,也不愿出钱,那纯属玩哥儿呢。Move on 了。
avatar
A*e
42
bless lz~
avatar
H*S
43
implicit m: Manifest[T]
if ( m <: ...="" foo="">
【在 n*w 的大作中提到】
: 找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
: “My understand is that if:
: type T = Foo[Bar[Baz]]
: then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
: ClassManifest[T] only represents Foo[_]”

avatar
l*e
44
没工资就没有 benefit, 千万不要上当.
avatar
r*y
45
你没跟人家强调一下你开会的时间?实在不行找找附近的其他意大利领馆,找个时间用
的短的,先磨一磨让人家接受你申请。
avatar
c*l
46
强烈同意1,码工码农根本不care 类型 这种底层问题

programming.
language
programming
creation.

【在 k**********g 的大作中提到】
:
: http://www.scala-lang.org/api/2.9.2/scala/reflect/ClassManifest
: def typeArguments: List[scala.reflect.OptManifest[_]]
: I don't know Scala, but from its documentation Manifest is similar to the
: TypeInfo class that is in CLR Reflection.
: Basically, it is a class itself that provides information (type metadata)
: about other classes that the user or library provider has written.
: In reflection, the type "Bar[Baz]" is said to parameterize "Foo[Bar[Baz]]".
: When it is not parameterized, a placeholder is used, as in "Foo[_]"
: The same logic can be applied over and over again. After getting hold of "

avatar
w*n
47
决定完全正确!

【在 L********e 的大作中提到】
: 就是说理论上未答辩获得博士学位无法开始正式的博后工作,拿正式的工资。但如果需
: 要在拿到博士学位前工作,老板是可以或多或少给些资助的,无论是staff,
: technician,还是其他临时的合同。但如果连这部分钱都不愿意出,又要先去干活,我
: 想我是不会去的,吃拧了。又不是什么大牛。再退一步,如果他要是愿意等我博士答辩
: 也行。如果不愿等,也不愿出钱,那纯属玩哥儿呢。Move on 了。

avatar
C*e
48
对,谢谢,应该再强调下会议的时间。这次电话里面也说了,不过可能没引起重视
附近的领馆可行吗,似乎领馆有LA,SF,NY等几个,但是在网站上都写了
各自负责一些区域,可以跨区吗?Thanks

【在 r******y 的大作中提到】
: 你没跟人家强调一下你开会的时间?实在不行找找附近的其他意大利领馆,找个时间用
: 的短的,先磨一磨让人家接受你申请。

avatar
n*w
49
相反,type尤其higher kind type是远离硬件底层的抽象。
当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
次,改一点点来处理不同的情况。不断地repeat yourself。

【在 c********l 的大作中提到】
: 强烈同意1,码工码农根本不care 类型 这种底层问题
:
: programming.
: language
: programming
: creation.

avatar
m*g
50
这老板的人品,以后相处你要多小心啊!
avatar
r*y
51
跨区问题正是你需要磨人家的原因嘛……就把你的情况好好跟人家说明一下,说因为怕
LA会赶不及,看这边办理时间比较短,看看人家能不能同意特事特办呗。他们还是比较
好说话的,特别是越清闲的领馆越好说话。

【在 C*********e 的大作中提到】
: 对,谢谢,应该再强调下会议的时间。这次电话里面也说了,不过可能没引起重视
: 附近的领馆可行吗,似乎领馆有LA,SF,NY等几个,但是在网站上都写了
: 各自负责一些区域,可以跨区吗?Thanks

avatar
k*g
52

Actually, nested templates (in C++) is a very common paradigm. So, I wouldn'
t say that nested templates such as the Foo < Bar < Baz > > as useless.
Quite the contrary they are essential for certain types of high-performance
libraries.
However, a competent user of generic programming will need to know what kind
of underlying code will be generated, to avoid some programming mishaps.
It is possible for a programmer to be familiar with both "higher kind type"
and also the underlying execution model.

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
C*e
53
明白了,多谢~~~
刚看了下,至少SF的领馆就是不需要预约就能直接去签证,需要的时间还没查到,不知
道是否会快一点。不过不需要预约等位置,已经很好了。
就看能否同意跨区签证了

【在 r******y 的大作中提到】
: 跨区问题正是你需要磨人家的原因嘛……就把你的情况好好跟人家说明一下,说因为怕
: LA会赶不及,看这边办理时间比较短,看看人家能不能同意特事特办呗。他们还是比较
: 好说话的,特别是越清闲的领馆越好说话。

avatar
c*l
54
java在generic上的宽松,恰恰没有影响复用性,
至于quality code,不好意思,我现在就在不停地纠正手下小孩写的不可重用代码

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
v*u
55
一直以为意大利申根是最容易的,因为我第一次去欧洲就是办意大利的

【在 C*********e 的大作中提到】
: 5月中要去意大利开会,现在发现LA意大利使馆最早的预约VISA时间到了5月3号,而且
: 网站说要3个礼拜的处理时间,这样时间就不够了。
: 因为意大利是申根国家,那我可否申请其他申根国的签证呢,比如法国(因为听说法国
: 的VISA申请当天就能取到?)。
: 因为开是在意大利开,申请法国签证这样理由足够吗?如果持有法国的申根签证,到时
: 候直接去意大利会有问题吗?
: 谢谢大家!

avatar
N*n
56

版上的井底JAVA正HIGH呢,你咋哪壶不开提哪壶?

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
g*g
57
写产品出来大家瞅瞅。现实就是C#写出来的东西跟Java的比不在一个层次上。
让你多俩语法糖撸管有蛋用呀。等.Net写出个ebay, amazon, linkedin再
来吹吧。尼玛语言是个工具,不是按摩棒。连Objective C,PHP这写老古董都秒了C#,
还撸呢?
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.htm

【在 N********n 的大作中提到】
:
: 版上的井底JAVA正HIGH呢,你咋哪壶不开提哪壶?

avatar
n*w
58
java的generic不是宽松。是公认的poor implementation。见过一人对list,list
重复写几次。理由是避免java generic的box/unbox的performance问题。
可重用代码很多方式,有部分是要type system的支持。

【在 c********l 的大作中提到】
: java在generic上的宽松,恰恰没有影响复用性,
: 至于quality code,不好意思,我现在就在不停地纠正手下小孩写的不可重用代码

avatar
g*g
59
jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
经验都没有,成天装逼露怯。

list

【在 n*w 的大作中提到】
: java的generic不是宽松。是公认的poor implementation。见过一人对list,list
: 重复写几次。理由是避免java generic的box/unbox的performance问题。
: 可重用代码很多方式,有部分是要type system的支持。

avatar
S*g
60
没什么稀奇的。
做实时trading的系统里边,要尽量少的制造garbage
就是要避免autoboxing和unboxing的。
container什么的都要自己写。
要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。

list

【在 n*w 的大作中提到】
: java的generic不是宽松。是公认的poor implementation。见过一人对list,list
: 重复写几次。理由是避免java generic的box/unbox的performance问题。
: 可重用代码很多方式,有部分是要type system的支持。

avatar
n*w
61
"成天装逼露怯"形容你最合适不过了。说的东西不是google出来的就是错误连天。滚一
边去。一天到晚像苍蝇一样。

【在 g*****g 的大作中提到】
: jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
: box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
: 经验都没有,成天装逼露怯。
:
: list

avatar
n*w
62
所以那个人的代码也被接受了。我意思是如果jvm当初没这个问题的话就最好了。

【在 S*********g 的大作中提到】
: 没什么稀奇的。
: 做实时trading的系统里边,要尽量少的制造garbage
: 就是要避免autoboxing和unboxing的。
: container什么的都要自己写。
: 要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。
:
: list

avatar
n*w
63
turing complete的c++的template是很强大,实现个monad也很容易。就是调试出错信
息晦涩。

wouldn'
performance
kind
"

【在 k**********g 的大作中提到】
:
: Actually, nested templates (in C++) is a very common paradigm. So, I wouldn'
: t say that nested templates such as the Foo < Bar < Baz > > as useless.
: Quite the contrary they are essential for certain types of high-performance
: libraries.
: However, a competent user of generic programming will need to know what kind
: of underlying code will be generated, to avoid some programming mishaps.
: It is possible for a programmer to be familiar with both "higher kind type"
: and also the underlying execution model.

avatar
S*g
64
你如果不那么做,在我们那里,根本不会让你过review
基本要做到一天下来gc不会被触发
要不然本来每个单子要求100us内完成的,
gc来一下就给卡个2秒,就没法活了

【在 n*w 的大作中提到】
: 所以那个人的代码也被接受了。我意思是如果jvm当初没这个问题的话就最好了。
avatar
n*w
65
这个要求很高啊。会不会用没有gc的c++等更合适?

【在 S*********g 的大作中提到】
: 你如果不那么做,在我们那里,根本不会让你过review
: 基本要做到一天下来gc不会被触发
: 要不然本来每个单子要求100us内完成的,
: gc来一下就给卡个2秒,就没法活了

avatar
s*o
66
为嘛不直接上C++?

【在 S*********g 的大作中提到】
: 你如果不那么做,在我们那里,根本不会让你过review
: 基本要做到一天下来gc不会被触发
: 要不然本来每个单子要求100us内完成的,
: gc来一下就给卡个2秒,就没法活了

avatar
S*g
67
multi-process什么的容易些吧
另外对程序员要求也低一些。
做model的要自己写code,code不能给developer看的。
java对这些人的要求会低很多的

【在 s***o 的大作中提到】
: 为嘛不直接上C++?
avatar
g*g
68
你要做实时trading,第一不非用java,第二有很多实时GC可以选择。boxing/unboxing
,扯蛋。
但凡你用Java的generics,就不能避免这个。

【在 S*********g 的大作中提到】
: 没什么稀奇的。
: 做实时trading的系统里边,要尽量少的制造garbage
: 就是要避免autoboxing和unboxing的。
: container什么的都要自己写。
: 要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。
:
: list

avatar
g*g
69
傻逼你有得瑟了,既然Java不合适,咋不见用C#去做实时trading呀。

【在 n*w 的大作中提到】
: "成天装逼露怯"形容你最合适不过了。说的东西不是google出来的就是错误连天。滚一
: 边去。一天到晚像苍蝇一样。

avatar
n*w
70
你骂别人的话用在自己身上最合适不过。还莫名其妙地扯出c#。

【在 g*****g 的大作中提到】
: 傻逼你有得瑟了,既然Java不合适,咋不见用C#去做实时trading呀。
avatar
g*g
71
怎么喷了粪又要吃回去了?既然CLR比JVM强多了,Boxing/Unboxing在你看来是一个
很严重的性能问题。那实时trading居然还用Java不用C#,难道不是个很正常的问题?

【在 n*w 的大作中提到】
: 你骂别人的话用在自己身上最合适不过。还莫名其妙地扯出c#。
avatar
g*g
72
http://benchmarksgame.alioth.debian.org/u64q/csharp.php
真要对性能有兴趣,看看这个。C#性能比Java差多了。当然你可以推诿Mono实现得不好。
成天拿个boxing说事。就算实时trading有影响,99.99%的程序都不是实时trading,那
叫特例。
说到GC,我老倒是用Scala的Akka的时候发现大量的message造成频繁GC,为了最大化
throughput被迫在一些地方使用object pool。完全违背了Scala FP immutable的本意
。你就一新手,没啥实际经验,成天JJWW一些没意义的东西。不服倒是找个自己做过的
实际项目来证明JVM不行呀。
avatar
n*w
73
你的第一句话自己吃吧。思维逻辑混乱,脏话连篇还出来现。 在说gc,关boxing
unboxing 什么事。如果说没boxing性能问题就意味说可以实时Trading了?没人像你把
个语言当宗教,我前面建议过c++。

【在 g*****g 的大作中提到】
: 怎么喷了粪又要吃回去了?既然CLR比JVM强多了,Boxing/Unboxing在你看来是一个
: 很严重的性能问题。那实时trading居然还用Java不用C#,难道不是个很正常的问题?

avatar
g*g
74
现在又不要谈实时trading了?很好,那你就来说说到底什么系统boxing/unboxing居然
能成为系统的瓶颈。我老给的link,是一堆常见的小算法程序shootout,咋就没有一个
把这个瓶颈体现出来呢?
我老要是谈Strong type,会去举web service这种例子,而不是boxing和性能问题。你
成天驴唇不对马嘴被打脸是必然的。学了个helloworld,看到某个blog自吹Android上C#
比java快7倍,就以为拿到令箭了。

【在 n*w 的大作中提到】
: 你的第一句话自己吃吧。思维逻辑混乱,脏话连篇还出来现。 在说gc,关boxing
: unboxing 什么事。如果说没boxing性能问题就意味说可以实时Trading了?没人像你把
: 个语言当宗教,我前面建议过c++。

avatar
n*w
75
那个快7倍的比较有源代码。你有兴趣自己去下载编译。再决定要不要打自己的脸

上C#

【在 g*****g 的大作中提到】
: 现在又不要谈实时trading了?很好,那你就来说说到底什么系统boxing/unboxing居然
: 能成为系统的瓶颈。我老给的link,是一堆常见的小算法程序shootout,咋就没有一个
: 把这个瓶颈体现出来呢?
: 我老要是谈Strong type,会去举web service这种例子,而不是boxing和性能问题。你
: 成天驴唇不对马嘴被打脸是必然的。学了个helloworld,看到某个blog自吹Android上C#
: 比java快7倍,就以为拿到令箭了。

avatar
g*g
76
那公司就是个joke。如果真有7倍,直接拿mono跟hotspot在workstation跑就可以了,
至于那么折腾吗。
Dalvik VM在过去两年有长足进步,VM优化本来就是需要时间积累的,这也是hotspot
jvm秒杀clr的原因。这个测试采用了2.0.3和4.0.3来测试本来就是很奇怪的事情。在4.
0.3存在的时候,不去测试很稳定的Android 2.3,而去测试又早了两年,连JIT都没有
的2.0.3,唯一
的解释就是2.3区别不明显。7倍的区别最大的可能是新版本没优化,而不是C#真有啥好
处。学术界这种挑选样本玩弄benchmark发垃圾paper的事情很多,这公司居然在工业界
玩。
你不服大可以在Android 4.3和 2.3上测试一下让大家看看。另外,无论是binary
tree,还是hashmap,实践中主体是访问,而不是创建,这个代码本来就不靠谱。也就
你才能鸡毛当令箭了。

【在 n*w 的大作中提到】
: 那个快7倍的比较有源代码。你有兴趣自己去下载编译。再决定要不要打自己的脸
:
: 上C#

avatar
S*g
77
trading server的linux 内核都是自己hack过的,有的数据是fpga搞的,用windows没
法搞这些trick。

好。
★ 发自iPhone App: ChineseWeb 7.8

【在 g*****g 的大作中提到】
: http://benchmarksgame.alioth.debian.org/u64q/csharp.php
: 真要对性能有兴趣,看看这个。C#性能比Java差多了。当然你可以推诿Mono实现得不好。
: 成天拿个boxing说事。就算实时trading有影响,99.99%的程序都不是实时trading,那
: 叫特例。
: 说到GC,我老倒是用Scala的Akka的时候发现大量的message造成频繁GC,为了最大化
: throughput被迫在一些地方使用object pool。完全违背了Scala FP immutable的本意
: 。你就一新手,没啥实际经验,成天JJWW一些没意义的东西。不服倒是找个自己做过的
: 实际项目来证明JVM不行呀。

avatar
n*w
78
我又不care,是你担心自己命根子java比不过了。与其又写一大篇臆想,自己去测试呀
。或者读下源代码也知道为什么了。上次有人惊讶这个7倍结果我还在解释中说java总
得来说不这样差。拿“鸡毛当令箭”不是你最常做的吗

4.

【在 g*****g 的大作中提到】
: 那公司就是个joke。如果真有7倍,直接拿mono跟hotspot在workstation跑就可以了,
: 至于那么折腾吗。
: Dalvik VM在过去两年有长足进步,VM优化本来就是需要时间积累的,这也是hotspot
: jvm秒杀clr的原因。这个测试采用了2.0.3和4.0.3来测试本来就是很奇怪的事情。在4.
: 0.3存在的时候,不去测试很稳定的Android 2.3,而去测试又早了两年,连JIT都没有
: 的2.0.3,唯一
: 的解释就是2.3区别不明显。7倍的区别最大的可能是新版本没优化,而不是C#真有啥好
: 处。学术界这种挑选样本玩弄benchmark发垃圾paper的事情很多,这公司居然在工业界
: 玩。
: 你不服大可以在Android 4.3和 2.3上测试一下让大家看看。另外,无论是binary

avatar
x*u
79
ASP.net应用不要太多。

【在 g*****g 的大作中提到】
: jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
: box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
: 经验都没有,成天装逼露怯。
:
: list

avatar
x*u
80
一样可以搞。

【在 S*********g 的大作中提到】
: trading server的linux 内核都是自己hack过的,有的数据是fpga搞的,用windows没
: 法搞这些trick。
:
: 好。
: ★ 发自iPhone App: ChineseWeb 7.8

avatar
g*g
81
打的是你的脸,你不care好像我care是的。Android上难道Java还需要证明自己的地位
不成?
还担心比不过。LOL。完全没得比好不好,啥时候C#在Android上成主流了再来比。
傻逼公司的选择性数据,没有第三方验证过的,被你当作救命稻草。我老一质疑,就成
了臆想。
我老举的一堆Java秒杀C#的benchmark,无数人跑过的,又视而不见了?
一点工作经验都没有,读了两篇blog就出来丢人。你丫写过什么大程序,成天装出一副
对性能
很care的样子。女人真是没办法。

【在 n*w 的大作中提到】
: 我又不care,是你担心自己命根子java比不过了。与其又写一大篇臆想,自己去测试呀
: 。或者读下源代码也知道为什么了。上次有人惊讶这个7倍结果我还在解释中说java总
: 得来说不这样差。拿“鸡毛当令箭”不是你最常做的吗
:
: 4.

avatar
n*w
82
又开始打自己脸了。又开始祥林嫂了。 你还可以臆想一下这里就你读了本科工作过,
别人不仅没工作过,只上幼儿园。更牛哄哄了。
里面就是写很普通如二叉树之类。谁都可以下载验证。

【在 g*****g 的大作中提到】
: 打的是你的脸,你不care好像我care是的。Android上难道Java还需要证明自己的地位
: 不成?
: 还担心比不过。LOL。完全没得比好不好,啥时候C#在Android上成主流了再来比。
: 傻逼公司的选择性数据,没有第三方验证过的,被你当作救命稻草。我老一质疑,就成
: 了臆想。
: 我老举的一堆Java秒杀C#的benchmark,无数人跑过的,又视而不见了?
: 一点工作经验都没有,读了两篇blog就出来丢人。你丫写过什么大程序,成天装出一副
: 对性能
: 很care的样子。女人真是没办法。

avatar
g*g
83
我提了一个最实在问题,为啥不测稳定的2.3,而测连JIT都没有的2.03。你丫百般抵赖
有用吗。
你不服在2.3上测试一下大家试试就知道了。你丫傻逼连Android版本的区别都不清楚,
还出来
现呢?

【在 n*w 的大作中提到】
: 又开始打自己脸了。又开始祥林嫂了。 你还可以臆想一下这里就你读了本科工作过,
: 别人不仅没工作过,只上幼儿园。更牛哄哄了。
: 里面就是写很普通如二叉树之类。谁都可以下载验证。

avatar
n*w
84
我抵赖什么,快7倍还是快10倍我不像你撒泼打滚的。你自己不说过他们测过4.0.3. 即
使稳定了有了jit速度也提高了7倍?
你越骂那个脏词越显得你就是那个词。把这个版的素质都拉低了。

【在 g*****g 的大作中提到】
: 我提了一个最实在问题,为啥不测稳定的2.3,而测连JIT都没有的2.03。你丫百般抵赖
: 有用吗。
: 你不服在2.3上测试一下大家试试就知道了。你丫傻逼连Android版本的区别都不清楚,
: 还出来
: 现呢?

avatar
g*g
85
还撑呢。2.0是09年10月出来的,4.0是11年12月出来的。文章故意去测超过两年的2.0
,不就是玩弄数据吗。4.0.3是4.0的第一个release版本,Android从2.x到4.x变化很大
,就算有点bug也很正常。你不服倒是去把2.3和4.3测一下大家瞧瞧呀。
总之说C#比Java快7倍,这种惊世骇俗的言论。需要的是更多的benchmark,涵盖各个版
本。而不是挑某个特定的小程序,挑没有优化好的版本来比。我给你的网站列的不是一
个程序,而是一堆程序,Java秒杀C#。好歹那个是第三方网站,跟Java, C#都没有利益
关系的。你去找一个做Mono的公司,不说C#好才奇怪了。自己弱智到这份上,还不明白
为啥老是被打脸?

【在 n*w 的大作中提到】
: 我抵赖什么,快7倍还是快10倍我不像你撒泼打滚的。你自己不说过他们测过4.0.3. 即
: 使稳定了有了jit速度也提高了7倍?
: 你越骂那个脏词越显得你就是那个词。把这个版的素质都拉低了。

avatar
n*w
86
又打自己脸了。那个7倍网站也是一堆程序。
我是好奇过两个网站的差别怎么这么大,当时分别看了两个网站的binary tree的那个
测试才明白。4.0.3有bug让运行时间慢7倍?没听说。

0

【在 g*****g 的大作中提到】
: 还撑呢。2.0是09年10月出来的,4.0是11年12月出来的。文章故意去测超过两年的2.0
: ,不就是玩弄数据吗。4.0.3是4.0的第一个release版本,Android从2.x到4.x变化很大
: ,就算有点bug也很正常。你不服倒是去把2.3和4.3测一下大家瞧瞧呀。
: 总之说C#比Java快7倍,这种惊世骇俗的言论。需要的是更多的benchmark,涵盖各个版
: 本。而不是挑某个特定的小程序,挑没有优化好的版本来比。我给你的网站列的不是一
: 个程序,而是一堆程序,Java秒杀C#。好歹那个是第三方网站,跟Java, C#都没有利益
: 关系的。你去找一个做Mono的公司,不说C#好才奇怪了。自己弱智到这份上,还不明白
: 为啥老是被打脸?

avatar
g*g
87
你看清楚了,那个图上只有三个程序,而且都集中在tree,map的创建上。连tree, map
的访问都不比。我给的那个网站,程序覆盖的范围可大太多了。你丫除了鸡毛当令箭还有
别的本事吗?

【在 n*w 的大作中提到】
: 又打自己脸了。那个7倍网站也是一堆程序。
: 我是好奇过两个网站的差别怎么这么大,当时分别看了两个网站的binary tree的那个
: 测试才明白。4.0.3有bug让运行时间慢7倍?没听说。
:
: 0

avatar
n*w
88
你前面不说“ 一 个程序”吗?
我很讨厌你的说话方式,能估计网下是个什么样的人。希望你不要像什么似的追在我后面

map
还有

【在 g*****g 的大作中提到】
: 你看清楚了,那个图上只有三个程序,而且都集中在tree,map的创建上。连tree, map
: 的访问都不比。我给的那个网站,程序覆盖的范围可大太多了。你丫除了鸡毛当令箭还有
: 别的本事吗?

avatar
g*g
89
LOL,你玩吹毛求疵倒是很有一套。我问你为啥不用2.3用2.0.3,你就知道顾左右而言
他。
这里一个或者三个难道有区别吗,都是同质的程序。连那张图上都只敢说generics快,
没敢
说general purpose快。你丫还不承认鸡毛当零件哪?

后面

【在 n*w 的大作中提到】
: 你前面不说“ 一 个程序”吗?
: 我很讨厌你的说话方式,能估计网下是个什么样的人。希望你不要像什么似的追在我后面
:
: map
: 还有

avatar
n*w
90
回避4.03 又描述一下自己,

【在 g*****g 的大作中提到】
: LOL,你玩吹毛求疵倒是很有一套。我问你为啥不用2.3用2.0.3,你就知道顾左右而言
: 他。
: 这里一个或者三个难道有区别吗,都是同质的程序。连那张图上都只敢说generics快,
: 没敢
: 说general purpose快。你丫还不承认鸡毛当零件哪?
:
: 后面

avatar
g*g
91
你丫长眼睛了吗?我难道没提4.0.3是第一个4.0版本,有优化问题很正常。
不服你跑个4.3大家看看呀。成天唐僧一样有用吗,C#在Android上根本没人用,
让你撸管比Java快100倍又如何?

【在 n*w 的大作中提到】
: 回避4.03 又描述一下自己,
avatar
n*w
92
又扯远,“C#在Android上根本没人用, 100”。我还真不关心这些

【在 g*****g 的大作中提到】
: 你丫长眼睛了吗?我难道没提4.0.3是第一个4.0版本,有优化问题很正常。
: 不服你跑个4.3大家看看呀。成天唐僧一样有用吗,C#在Android上根本没人用,
: 让你撸管比Java快100倍又如何?

avatar
g*g
93
play store里应用都快1M了,敢问几个是C#写的?你成天贴野鸡benchmark,
一被打脸就不关心了。LOL

【在 n*w 的大作中提到】
: 又扯远,“C#在Android上根本没人用, 100”。我还真不关心这些
avatar
x*u
94
别说C#,Java的byte code也上不了线,除非搞成G自己家的Dalvik。
安卓这东西可以说是左手打Linux,右手打Java。

【在 g*****g 的大作中提到】
: play store里应用都快1M了,敢问几个是C#写的?你成天贴野鸡benchmark,
: 一被打脸就不关心了。LOL

avatar
g*g
95
你要说打Oracle也罢。Android是对Java 1.5除awt/swing以外的API兼容的,绝大多数
第三方类库可以拿来就用。对Java开发者无非是熟悉一下GUI类库就得。

【在 x****u 的大作中提到】
: 别说C#,Java的byte code也上不了线,除非搞成G自己家的Dalvik。
: 安卓这东西可以说是左手打Linux,右手打Java。

avatar
x*u
96
你也可以说对Linux开发者也只是熟悉类库,问题是做做就知道差别多大了

【在 g*****g 的大作中提到】
: 你要说打Oracle也罢。Android是对Java 1.5除awt/swing以外的API兼容的,绝大多数
: 第三方类库可以拿来就用。对Java开发者无非是熟悉一下GUI类库就得。

avatar
n*w
97
这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
不少贴。结果来了几个大坑。为了避嫌推迟到现在。
一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
,因为要大改clr。
但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
compiler trick。觉得scala的higher kind type要么同样也只是compile-time
checking,要么在jvm上加了东西?
找到这一段“Scala runs on the JVM, which implements a very poor type system
on its own (much poorer than the CLR). It doesn’t support type parameters
of any kind, let alone type constructors. The amazing richness in the Scala
type system is accomplished using compile-time checking only, and a lot of
code transformations. The virtual machine is completely oblivious to it.”。
http://www.sparxeng.com/blog/software/an-example-of-what-higher
jvm的type system确实很弱。个人觉得一个弱type system的vm不能算一个好的vm。可
能java 9会改。这样会不会引起兼容性问题?
avatar
g*g
98
你反正也不用,就不用操心了。

system

【在 n*w 的大作中提到】
: 这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
: 不少贴。结果来了几个大坑。为了避嫌推迟到现在。
: 一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
: 语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
: ,因为要大改clr。
: 但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
: compiler trick。觉得scala的higher kind type要么同样也只是compile-time
: checking,要么在jvm上加了东西?
: 找到这一段“Scala runs on the JVM, which implements a very poor type system
: on its own (much poorer than the CLR). It doesn’t support type parameters

avatar
n*w
99
scala introduced manifests, 缓解了type erasure的部分问题?但performance
issue是不是还存在?
avatar
k*g
100

system
I know nothing about functional programming but I know at least a little
about C++ metaprogramming. Also I am very familiar with generic programming.
I have the feeling that,
(1) Unless the end-users of your language are compiler-writers or language
researchers (that is, users of your language use it to write their own
compilers or design their own languages),
(2) All other users outside this niche can have their practical programming
needs fulfilled with just generics, run-time code generation (which is a
whole new level of advancement over reflection), and run-time type creation.
http://stackoverflow.com/questions/15305804/define-generic-type

【在 n*w 的大作中提到】
: 这个贴本来几天前就要发,当时看到有几个真正对程序语言principal有了解的人发了
: 不少贴。结果来了几个大坑。为了避嫌推迟到现在。
: 一直都scala的higher-kind type很好奇。scala是我知道两个支持higher kind type的
: 语言之一。另一个是haskell。有人要求microsoft在f#中加入,ms给出的答复是不会加
: ,因为要大改clr。
: 但jvm连first order都不支持。java的generic编译后要做type erasure。只是个
: compiler trick。觉得scala的higher kind type要么同样也只是compile-time
: checking,要么在jvm上加了东西?
: 找到这一段“Scala runs on the JVM, which implements a very poor type system
: on its own (much poorer than the CLR). It doesn’t support type parameters

avatar
H*S
101
It does come with a price, so if you only care about top level information
of the type class, e.g., for List[String] only care about info about the
type constructor List[_], pass in ClassManifest instead of Manifest.

【在 n*w 的大作中提到】
: scala introduced manifests, 缓解了type erasure的部分问题?但performance
: issue是不是还存在?

avatar
n*w
102
这个倒不是一定是fp才有的东西。

programming.
language
programming
creation.

【在 k**********g 的大作中提到】
:
: system
: I know nothing about functional programming but I know at least a little
: about C++ metaprogramming. Also I am very familiar with generic programming.
: I have the feeling that,
: (1) Unless the end-users of your language are compiler-writers or language
: researchers (that is, users of your language use it to write their own
: compilers or design their own languages),
: (2) All other users outside this niche can have their practical programming
: needs fulfilled with just generics, run-time code generation (which is a

avatar
n*w
103
找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
“My understand is that if:
type T = Foo[Bar[Baz]]
then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
ClassManifest[T] only represents Foo[_]”

【在 H****S 的大作中提到】
: It does come with a price, so if you only care about top level information
: of the type class, e.g., for List[String] only care about info about the
: type constructor List[_], pass in ClassManifest instead of Manifest.

avatar
k*g
104

http://www.scala-lang.org/api/2.9.2/scala/reflect/ClassManifest
def typeArguments: List[scala.reflect.OptManifest[_]]
I don't know Scala, but from its documentation Manifest is similar to the
TypeInfo class that is in CLR Reflection.
Basically, it is a class itself that provides information (type metadata)
about other classes that the user or library provider has written.
In reflection, the type "Bar[Baz]" is said to parameterize "Foo[Bar[Baz]]".
When it is not parameterized, a placeholder is used, as in "Foo[_]"
The same logic can be applied over and over again. After getting hold of "
Bar[Baz]", one can query to see if it is still generic, and if so, access
its type parameter, which is "Baz". Baz is no longer generic.
The corresponding CLR class is TypeInfo.
http://msdn.microsoft.com/en-us/library/system.reflection.typei
http://msdn.microsoft.com/en-us/library/system.reflection.typei
http://msdn.microsoft.com/en-us/library/system.type.generictype

【在 n*w 的大作中提到】
: 找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
: “My understand is that if:
: type T = Foo[Bar[Baz]]
: then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
: ClassManifest[T] only represents Foo[_]”

avatar
H*S
105
implicit m: Manifest[T]
if ( m <: ...="" foo="">
【在 n*w 的大作中提到】
: 找到下面这段,不知道是不是正确。如果对的话怎样得到Bar[Baz]的type?
: “My understand is that if:
: type T = Foo[Bar[Baz]]
: then Manifest[T] represents the entire Foo[Bar[Baz]] type, whereas
: ClassManifest[T] only represents Foo[_]”

avatar
c*l
106
强烈同意1,码工码农根本不care 类型 这种底层问题

programming.
language
programming
creation.

【在 k**********g 的大作中提到】
:
: http://www.scala-lang.org/api/2.9.2/scala/reflect/ClassManifest
: def typeArguments: List[scala.reflect.OptManifest[_]]
: I don't know Scala, but from its documentation Manifest is similar to the
: TypeInfo class that is in CLR Reflection.
: Basically, it is a class itself that provides information (type metadata)
: about other classes that the user or library provider has written.
: In reflection, the type "Bar[Baz]" is said to parameterize "Foo[Bar[Baz]]".
: When it is not parameterized, a placeholder is used, as in "Foo[_]"
: The same logic can be applied over and over again. After getting hold of "

avatar
n*w
107
相反,type尤其higher kind type是远离硬件底层的抽象。
当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
次,改一点点来处理不同的情况。不断地repeat yourself。

【在 c********l 的大作中提到】
: 强烈同意1,码工码农根本不care 类型 这种底层问题
:
: programming.
: language
: programming
: creation.

avatar
k*g
108

Actually, nested templates (in C++) is a very common paradigm. So, I wouldn'
t say that nested templates such as the Foo < Bar < Baz > > as useless.
Quite the contrary they are essential for certain types of high-performance
libraries.
However, a competent user of generic programming will need to know what kind
of underlying code will be generated, to avoid some programming mishaps.
It is possible for a programmer to be familiar with both "higher kind type"
and also the underlying execution model.

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
c*l
109
java在generic上的宽松,恰恰没有影响复用性,
至于quality code,不好意思,我现在就在不停地纠正手下小孩写的不可重用代码

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
N*n
110

版上的井底JAVA正HIGH呢,你咋哪壶不开提哪壶?

【在 n*w 的大作中提到】
: 相反,type尤其higher kind type是远离硬件底层的抽象。
: 当然,你也可以想我见过的一个印度人,不写抽象可复用的代码,把一段代码copy很多
: 次,改一点点来处理不同的情况。不断地repeat yourself。

avatar
g*g
111
写产品出来大家瞅瞅。现实就是C#写出来的东西跟Java的比不在一个层次上。
让你多俩语法糖撸管有蛋用呀。等.Net写出个ebay, amazon, linkedin再
来吹吧。尼玛语言是个工具,不是按摩棒。连Objective C,PHP这写老古董都秒了C#,
还撸呢?
http://www.tiobe.com/index.php/content/paperinfo/tpci/index.htm

【在 N********n 的大作中提到】
:
: 版上的井底JAVA正HIGH呢,你咋哪壶不开提哪壶?

avatar
n*w
112
java的generic不是宽松。是公认的poor implementation。见过一人对list,list
重复写几次。理由是避免java generic的box/unbox的performance问题。
可重用代码很多方式,有部分是要type system的支持。

【在 c********l 的大作中提到】
: java在generic上的宽松,恰恰没有影响复用性,
: 至于quality code,不好意思,我现在就在不停地纠正手下小孩写的不可重用代码

avatar
g*g
113
jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
经验都没有,成天装逼露怯。

list

【在 n*w 的大作中提到】
: java的generic不是宽松。是公认的poor implementation。见过一人对list,list
: 重复写几次。理由是避免java generic的box/unbox的performance问题。
: 可重用代码很多方式,有部分是要type system的支持。

avatar
S*g
114
没什么稀奇的。
做实时trading的系统里边,要尽量少的制造garbage
就是要避免autoboxing和unboxing的。
container什么的都要自己写。
要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。

list

【在 n*w 的大作中提到】
: java的generic不是宽松。是公认的poor implementation。见过一人对list,list
: 重复写几次。理由是避免java generic的box/unbox的performance问题。
: 可重用代码很多方式,有部分是要type system的支持。

avatar
n*w
115
"成天装逼露怯"形容你最合适不过了。说的东西不是google出来的就是错误连天。滚一
边去。一天到晚像苍蝇一样。

【在 g*****g 的大作中提到】
: jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
: box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
: 经验都没有,成天装逼露怯。
:
: list

avatar
n*w
116
所以那个人的代码也被接受了。我意思是如果jvm当初没这个问题的话就最好了。

【在 S*********g 的大作中提到】
: 没什么稀奇的。
: 做实时trading的系统里边,要尽量少的制造garbage
: 就是要避免autoboxing和unboxing的。
: container什么的都要自己写。
: 要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。
:
: list

avatar
n*w
117
turing complete的c++的template是很强大,实现个monad也很容易。就是调试出错信
息晦涩。

wouldn'
performance
kind
"

【在 k**********g 的大作中提到】
:
: Actually, nested templates (in C++) is a very common paradigm. So, I wouldn'
: t say that nested templates such as the Foo < Bar < Baz > > as useless.
: Quite the contrary they are essential for certain types of high-performance
: libraries.
: However, a competent user of generic programming will need to know what kind
: of underlying code will be generated, to avoid some programming mishaps.
: It is possible for a programmer to be familiar with both "higher kind type"
: and also the underlying execution model.

avatar
S*g
118
你如果不那么做,在我们那里,根本不会让你过review
基本要做到一天下来gc不会被触发
要不然本来每个单子要求100us内完成的,
gc来一下就给卡个2秒,就没法活了

【在 n*w 的大作中提到】
: 所以那个人的代码也被接受了。我意思是如果jvm当初没这个问题的话就最好了。
avatar
n*w
119
这个要求很高啊。会不会用没有gc的c++等更合适?

【在 S*********g 的大作中提到】
: 你如果不那么做,在我们那里,根本不会让你过review
: 基本要做到一天下来gc不会被触发
: 要不然本来每个单子要求100us内完成的,
: gc来一下就给卡个2秒,就没法活了

avatar
s*o
120
为嘛不直接上C++?

【在 S*********g 的大作中提到】
: 你如果不那么做,在我们那里,根本不会让你过review
: 基本要做到一天下来gc不会被触发
: 要不然本来每个单子要求100us内完成的,
: gc来一下就给卡个2秒,就没法活了

avatar
S*g
121
multi-process什么的容易些吧
另外对程序员要求也低一些。
做model的要自己写code,code不能给developer看的。
java对这些人的要求会低很多的

【在 s***o 的大作中提到】
: 为嘛不直接上C++?
avatar
g*g
122
你要做实时trading,第一不非用java,第二有很多实时GC可以选择。boxing/unboxing
,扯蛋。
但凡你用Java的generics,就不能避免这个。

【在 S*********g 的大作中提到】
: 没什么稀奇的。
: 做实时trading的系统里边,要尽量少的制造garbage
: 就是要避免autoboxing和unboxing的。
: container什么的都要自己写。
: 要不然,不到半天就得激活gc,咔嚓给你卡个一秒两秒的。
:
: list

avatar
g*g
123
傻逼你有得瑟了,既然Java不合适,咋不见用C#去做实时trading呀。

【在 n*w 的大作中提到】
: "成天装逼露怯"形容你最合适不过了。说的东西不是google出来的就是错误连天。滚一
: 边去。一天到晚像苍蝇一样。

avatar
n*w
124
你骂别人的话用在自己身上最合适不过。还莫名其妙地扯出c#。

【在 g*****g 的大作中提到】
: 傻逼你有得瑟了,既然Java不合适,咋不见用C#去做实时trading呀。
avatar
g*g
125
怎么喷了粪又要吃回去了?既然CLR比JVM强多了,Boxing/Unboxing在你看来是一个
很严重的性能问题。那实时trading居然还用Java不用C#,难道不是个很正常的问题?

【在 n*w 的大作中提到】
: 你骂别人的话用在自己身上最合适不过。还莫名其妙地扯出c#。
avatar
g*g
126
http://benchmarksgame.alioth.debian.org/u64q/csharp.php
真要对性能有兴趣,看看这个。C#性能比Java差多了。当然你可以推诿Mono实现得不好。
成天拿个boxing说事。就算实时trading有影响,99.99%的程序都不是实时trading,那
叫特例。
说到GC,我老倒是用Scala的Akka的时候发现大量的message造成频繁GC,为了最大化
throughput被迫在一些地方使用object pool。完全违背了Scala FP immutable的本意
。你就一新手,没啥实际经验,成天JJWW一些没意义的东西。不服倒是找个自己做过的
实际项目来证明JVM不行呀。
avatar
n*w
127
你的第一句话自己吃吧。思维逻辑混乱,脏话连篇还出来现。 在说gc,关boxing
unboxing 什么事。如果说没boxing性能问题就意味说可以实时Trading了?没人像你把
个语言当宗教,我前面建议过c++。

【在 g*****g 的大作中提到】
: 怎么喷了粪又要吃回去了?既然CLR比JVM强多了,Boxing/Unboxing在你看来是一个
: 很严重的性能问题。那实时trading居然还用Java不用C#,难道不是个很正常的问题?

avatar
g*g
128
现在又不要谈实时trading了?很好,那你就来说说到底什么系统boxing/unboxing居然
能成为系统的瓶颈。我老给的link,是一堆常见的小算法程序shootout,咋就没有一个
把这个瓶颈体现出来呢?
我老要是谈Strong type,会去举web service这种例子,而不是boxing和性能问题。你
成天驴唇不对马嘴被打脸是必然的。学了个helloworld,看到某个blog自吹Android上C#
比java快7倍,就以为拿到令箭了。

【在 n*w 的大作中提到】
: 你的第一句话自己吃吧。思维逻辑混乱,脏话连篇还出来现。 在说gc,关boxing
: unboxing 什么事。如果说没boxing性能问题就意味说可以实时Trading了?没人像你把
: 个语言当宗教,我前面建议过c++。

avatar
n*w
129
那个快7倍的比较有源代码。你有兴趣自己去下载编译。再决定要不要打自己的脸

上C#

【在 g*****g 的大作中提到】
: 现在又不要谈实时trading了?很好,那你就来说说到底什么系统boxing/unboxing居然
: 能成为系统的瓶颈。我老给的link,是一堆常见的小算法程序shootout,咋就没有一个
: 把这个瓶颈体现出来呢?
: 我老要是谈Strong type,会去举web service这种例子,而不是boxing和性能问题。你
: 成天驴唇不对马嘴被打脸是必然的。学了个helloworld,看到某个blog自吹Android上C#
: 比java快7倍,就以为拿到令箭了。

avatar
g*g
130
那公司就是个joke。如果真有7倍,直接拿mono跟hotspot在workstation跑就可以了,
至于那么折腾吗。
Dalvik VM在过去两年有长足进步,VM优化本来就是需要时间积累的,这也是hotspot
jvm秒杀clr的原因。这个测试采用了2.0.3和4.0.3来测试本来就是很奇怪的事情。在4.
0.3存在的时候,不去测试很稳定的Android 2.3,而去测试又早了两年,连JIT都没有
的2.0.3,唯一
的解释就是2.3区别不明显。7倍的区别最大的可能是新版本没优化,而不是C#真有啥好
处。学术界这种挑选样本玩弄benchmark发垃圾paper的事情很多,这公司居然在工业界
玩。
你不服大可以在Android 4.3和 2.3上测试一下让大家看看。另外,无论是binary
tree,还是hashmap,实践中主体是访问,而不是创建,这个代码本来就不靠谱。也就
你才能鸡毛当令箭了。

【在 n*w 的大作中提到】
: 那个快7倍的比较有源代码。你有兴趣自己去下载编译。再决定要不要打自己的脸
:
: 上C#

avatar
S*g
131
trading server的linux 内核都是自己hack过的,有的数据是fpga搞的,用windows没
法搞这些trick。

好。
★ 发自iPhone App: ChineseWeb 7.8

【在 g*****g 的大作中提到】
: http://benchmarksgame.alioth.debian.org/u64q/csharp.php
: 真要对性能有兴趣,看看这个。C#性能比Java差多了。当然你可以推诿Mono实现得不好。
: 成天拿个boxing说事。就算实时trading有影响,99.99%的程序都不是实时trading,那
: 叫特例。
: 说到GC,我老倒是用Scala的Akka的时候发现大量的message造成频繁GC,为了最大化
: throughput被迫在一些地方使用object pool。完全违背了Scala FP immutable的本意
: 。你就一新手,没啥实际经验,成天JJWW一些没意义的东西。不服倒是找个自己做过的
: 实际项目来证明JVM不行呀。

avatar
n*w
132
我又不care,是你担心自己命根子java比不过了。与其又写一大篇臆想,自己去测试呀
。或者读下源代码也知道为什么了。上次有人惊讶这个7倍结果我还在解释中说java总
得来说不这样差。拿“鸡毛当令箭”不是你最常做的吗

4.

【在 g*****g 的大作中提到】
: 那公司就是个joke。如果真有7倍,直接拿mono跟hotspot在workstation跑就可以了,
: 至于那么折腾吗。
: Dalvik VM在过去两年有长足进步,VM优化本来就是需要时间积累的,这也是hotspot
: jvm秒杀clr的原因。这个测试采用了2.0.3和4.0.3来测试本来就是很奇怪的事情。在4.
: 0.3存在的时候,不去测试很稳定的Android 2.3,而去测试又早了两年,连JIT都没有
: 的2.0.3,唯一
: 的解释就是2.3区别不明显。7倍的区别最大的可能是新版本没优化,而不是C#真有啥好
: 处。学术界这种挑选样本玩弄benchmark发垃圾paper的事情很多,这公司居然在工业界
: 玩。
: 你不服大可以在Android 4.3和 2.3上测试一下让大家看看。另外,无论是binary

avatar
x*u
133
ASP.net应用不要太多。

【在 g*****g 的大作中提到】
: jvm实现再烂也秒了clr。clr都没啥相应的应用,撸管撸上天又有蛋用。
: box/unbox的性能问题。LOL。啥应用box/unbox能成为瓶颈,你丫就是一点实际
: 经验都没有,成天装逼露怯。
:
: list

avatar
x*u
134
一样可以搞。

【在 S*********g 的大作中提到】
: trading server的linux 内核都是自己hack过的,有的数据是fpga搞的,用windows没
: 法搞这些trick。
:
: 好。
: ★ 发自iPhone App: ChineseWeb 7.8

avatar
g*g
135
打的是你的脸,你不care好像我care是的。Android上难道Java还需要证明自己的地位
不成?
还担心比不过。LOL。完全没得比好不好,啥时候C#在Android上成主流了再来比。
傻逼公司的选择性数据,没有第三方验证过的,被你当作救命稻草。我老一质疑,就成
了臆想。
我老举的一堆Java秒杀C#的benchmark,无数人跑过的,又视而不见了?
一点工作经验都没有,读了两篇blog就出来丢人。你丫写过什么大程序,成天装出一副
对性能
很care的样子。女人真是没办法。

【在 n*w 的大作中提到】
: 我又不care,是你担心自己命根子java比不过了。与其又写一大篇臆想,自己去测试呀
: 。或者读下源代码也知道为什么了。上次有人惊讶这个7倍结果我还在解释中说java总
: 得来说不这样差。拿“鸡毛当令箭”不是你最常做的吗
:
: 4.

avatar
n*w
136
又开始打自己脸了。又开始祥林嫂了。 你还可以臆想一下这里就你读了本科工作过,
别人不仅没工作过,只上幼儿园。更牛哄哄了。
里面就是写很普通如二叉树之类。谁都可以下载验证。

【在 g*****g 的大作中提到】
: 打的是你的脸,你不care好像我care是的。Android上难道Java还需要证明自己的地位
: 不成?
: 还担心比不过。LOL。完全没得比好不好,啥时候C#在Android上成主流了再来比。
: 傻逼公司的选择性数据,没有第三方验证过的,被你当作救命稻草。我老一质疑,就成
: 了臆想。
: 我老举的一堆Java秒杀C#的benchmark,无数人跑过的,又视而不见了?
: 一点工作经验都没有,读了两篇blog就出来丢人。你丫写过什么大程序,成天装出一副
: 对性能
: 很care的样子。女人真是没办法。

avatar
g*g
137
我提了一个最实在问题,为啥不测稳定的2.3,而测连JIT都没有的2.03。你丫百般抵赖
有用吗。
你不服在2.3上测试一下大家试试就知道了。你丫傻逼连Android版本的区别都不清楚,
还出来
现呢?

【在 n*w 的大作中提到】
: 又开始打自己脸了。又开始祥林嫂了。 你还可以臆想一下这里就你读了本科工作过,
: 别人不仅没工作过,只上幼儿园。更牛哄哄了。
: 里面就是写很普通如二叉树之类。谁都可以下载验证。

avatar
n*w
138
我抵赖什么,快7倍还是快10倍我不像你撒泼打滚的。你自己不说过他们测过4.0.3. 即
使稳定了有了jit速度也提高了7倍?
你越骂那个脏词越显得你就是那个词。把这个版的素质都拉低了。

【在 g*****g 的大作中提到】
: 我提了一个最实在问题,为啥不测稳定的2.3,而测连JIT都没有的2.03。你丫百般抵赖
: 有用吗。
: 你不服在2.3上测试一下大家试试就知道了。你丫傻逼连Android版本的区别都不清楚,
: 还出来
: 现呢?

avatar
g*g
139
还撑呢。2.0是09年10月出来的,4.0是11年12月出来的。文章故意去测超过两年的2.0
,不就是玩弄数据吗。4.0.3是4.0的第一个release版本,Android从2.x到4.x变化很大
,就算有点bug也很正常。你不服倒是去把2.3和4.3测一下大家瞧瞧呀。
总之说C#比Java快7倍,这种惊世骇俗的言论。需要的是更多的benchmark,涵盖各个版
本。而不是挑某个特定的小程序,挑没有优化好的版本来比。我给你的网站列的不是一
个程序,而是一堆程序,Java秒杀C#。好歹那个是第三方网站,跟Java, C#都没有利益
关系的。你去找一个做Mono的公司,不说C#好才奇怪了。自己弱智到这份上,还不明白
为啥老是被打脸?

【在 n*w 的大作中提到】
: 我抵赖什么,快7倍还是快10倍我不像你撒泼打滚的。你自己不说过他们测过4.0.3. 即
: 使稳定了有了jit速度也提高了7倍?
: 你越骂那个脏词越显得你就是那个词。把这个版的素质都拉低了。

avatar
n*w
140
又打自己脸了。那个7倍网站也是一堆程序。
我是好奇过两个网站的差别怎么这么大,当时分别看了两个网站的binary tree的那个
测试才明白。4.0.3有bug让运行时间慢7倍?没听说。

0

【在 g*****g 的大作中提到】
: 还撑呢。2.0是09年10月出来的,4.0是11年12月出来的。文章故意去测超过两年的2.0
: ,不就是玩弄数据吗。4.0.3是4.0的第一个release版本,Android从2.x到4.x变化很大
: ,就算有点bug也很正常。你不服倒是去把2.3和4.3测一下大家瞧瞧呀。
: 总之说C#比Java快7倍,这种惊世骇俗的言论。需要的是更多的benchmark,涵盖各个版
: 本。而不是挑某个特定的小程序,挑没有优化好的版本来比。我给你的网站列的不是一
: 个程序,而是一堆程序,Java秒杀C#。好歹那个是第三方网站,跟Java, C#都没有利益
: 关系的。你去找一个做Mono的公司,不说C#好才奇怪了。自己弱智到这份上,还不明白
: 为啥老是被打脸?

avatar
g*g
141
你看清楚了,那个图上只有三个程序,而且都集中在tree,map的创建上。连tree, map
的访问都不比。我给的那个网站,程序覆盖的范围可大太多了。你丫除了鸡毛当令箭还有
别的本事吗?

【在 n*w 的大作中提到】
: 又打自己脸了。那个7倍网站也是一堆程序。
: 我是好奇过两个网站的差别怎么这么大,当时分别看了两个网站的binary tree的那个
: 测试才明白。4.0.3有bug让运行时间慢7倍?没听说。
:
: 0

avatar
n*w
142
你前面不说“ 一 个程序”吗?
我很讨厌你的说话方式,能估计网下是个什么样的人。希望你不要像什么似的追在我后面

map
还有

【在 g*****g 的大作中提到】
: 你看清楚了,那个图上只有三个程序,而且都集中在tree,map的创建上。连tree, map
: 的访问都不比。我给的那个网站,程序覆盖的范围可大太多了。你丫除了鸡毛当令箭还有
: 别的本事吗?

avatar
g*g
143
LOL,你玩吹毛求疵倒是很有一套。我问你为啥不用2.3用2.0.3,你就知道顾左右而言
他。
这里一个或者三个难道有区别吗,都是同质的程序。连那张图上都只敢说generics快,
没敢
说general purpose快。你丫还不承认鸡毛当零件哪?

后面

【在 n*w 的大作中提到】
: 你前面不说“ 一 个程序”吗?
: 我很讨厌你的说话方式,能估计网下是个什么样的人。希望你不要像什么似的追在我后面
:
: map
: 还有

avatar
n*w
144
回避4.03 又描述一下自己,

【在 g*****g 的大作中提到】
: LOL,你玩吹毛求疵倒是很有一套。我问你为啥不用2.3用2.0.3,你就知道顾左右而言
: 他。
: 这里一个或者三个难道有区别吗,都是同质的程序。连那张图上都只敢说generics快,
: 没敢
: 说general purpose快。你丫还不承认鸡毛当零件哪?
:
: 后面

avatar
g*g
145
你丫长眼睛了吗?我难道没提4.0.3是第一个4.0版本,有优化问题很正常。
不服你跑个4.3大家看看呀。成天唐僧一样有用吗,C#在Android上根本没人用,
让你撸管比Java快100倍又如何?

【在 n*w 的大作中提到】
: 回避4.03 又描述一下自己,
avatar
n*w
146
又扯远,“C#在Android上根本没人用, 100”。我还真不关心这些

【在 g*****g 的大作中提到】
: 你丫长眼睛了吗?我难道没提4.0.3是第一个4.0版本,有优化问题很正常。
: 不服你跑个4.3大家看看呀。成天唐僧一样有用吗,C#在Android上根本没人用,
: 让你撸管比Java快100倍又如何?

avatar
g*g
147
play store里应用都快1M了,敢问几个是C#写的?你成天贴野鸡benchmark,
一被打脸就不关心了。LOL

【在 n*w 的大作中提到】
: 又扯远,“C#在Android上根本没人用, 100”。我还真不关心这些
avatar
x*u
148
别说C#,Java的byte code也上不了线,除非搞成G自己家的Dalvik。
安卓这东西可以说是左手打Linux,右手打Java。

【在 g*****g 的大作中提到】
: play store里应用都快1M了,敢问几个是C#写的?你成天贴野鸡benchmark,
: 一被打脸就不关心了。LOL

avatar
g*g
149
你要说打Oracle也罢。Android是对Java 1.5除awt/swing以外的API兼容的,绝大多数
第三方类库可以拿来就用。对Java开发者无非是熟悉一下GUI类库就得。

【在 x****u 的大作中提到】
: 别说C#,Java的byte code也上不了线,除非搞成G自己家的Dalvik。
: 安卓这东西可以说是左手打Linux,右手打Java。

avatar
x*u
150
你也可以说对Linux开发者也只是熟悉类库,问题是做做就知道差别多大了

【在 g*****g 的大作中提到】
: 你要说打Oracle也罢。Android是对Java 1.5除awt/swing以外的API兼容的,绝大多数
: 第三方类库可以拿来就用。对Java开发者无非是熟悉一下GUI类库就得。

avatar
g*g
151
都在VM之上,用 java api, 显然 Linux开发不熟悉。

【在 x****u 的大作中提到】
: 你也可以说对Linux开发者也只是熟悉类库,问题是做做就知道差别多大了
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。