m******t 发帖数: 1171 | 1 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下?
维护性好:语法简明优雅,易读
计算效率高:
可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior;
功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有
namespace
不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支
持oo和functional。
跨平台:不想重复开发。
高质量的库: python的库看着多,不过质量不行。
不要perl那种一时红的烂语言。
不要短命语言。
这里的经典语言,几乎都用过,除了Ruby(这个名字听着就很烂):
http://spectrum.ieee.org/computing/software/the-2015-top-ten-programming-languages |
f*******t 发帖数: 7549 | |
x****u 发帖数: 44466 | 3 Yin语言
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
t**r 发帖数: 3428 | |
f*******t 发帖数: 7549 | 5 没有高质量的库
【在 t**r 的大作中提到】 : go
|
m******t 发帖数: 1171 | 6 java确实在考虑之列,不过java的优点似乎没有多到让我从c++转过来。
不过我不太懂java,能否介绍下java的优势
我的拙见:
java能干的,我用c++也能干,也没有太麻烦。
而且c++11以后的新性能让c++简洁性又有提升,有了move,有了lambda,还有了
variadic template。
lambda + STL container + 各种iterator + auto
c++已经是半个functional了。
【在 f*******t 的大作中提到】 : java
|
m******t 发帖数: 1171 | 7 yin神已经不屑于开发yin了。
我等码农没有yin神搭救,真是苦海无边。
【在 x****u 的大作中提到】 : Yin语言 : : behavior;
|
m******t 发帖数: 1171 | 8 go: 看过点tutorial,我去再了解一下。
现在哪些公司再用go,除了google。
go会不会不长命?google做事没有commitment
【在 t**r 的大作中提到】 : go
|
f*******t 发帖数: 7549 | 9 java最大的优点是有强大的ide。用过intellij后再也不想碰其它语言了
【在 m******t 的大作中提到】 : java确实在考虑之列,不过java的优点似乎没有多到让我从c++转过来。 : 不过我不太懂java,能否介绍下java的优势 : 我的拙见: : java能干的,我用c++也能干,也没有太麻烦。 : 而且c++11以后的新性能让c++简洁性又有提升,有了move,有了lambda,还有了 : variadic template。 : lambda + STL container + 各种iterator + auto : c++已经是半个functional了。
|
s********8 发帖数: 33 | |
|
|
w***g 发帖数: 5958 | 11 除了语言之外可学可研究的东西太多了,干嘛非要限制在学新语言上。
C++到顶了,别的语言中很难再看到新鲜东西。
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
w********m 发帖数: 1137 | 12 FP最重要的是higher order function吧
如果是兴趣驱动的话,不妨玩玩javascript或者python |
s***o 发帖数: 2191 | 13 能干和干得好是两个不同的概念
单从兴趣出发的话,可以看看rust,这个可是跟c++直接叫板的。
wdong对rust是什么看法?有希望吗?
【在 m******t 的大作中提到】 : java确实在考虑之列,不过java的优点似乎没有多到让我从c++转过来。 : 不过我不太懂java,能否介绍下java的优势 : 我的拙见: : java能干的,我用c++也能干,也没有太麻烦。 : 而且c++11以后的新性能让c++简洁性又有提升,有了move,有了lambda,还有了 : variadic template。 : lambda + STL container + 各种iterator + auto : c++已经是半个functional了。
|
w***g 发帖数: 5958 | 14 rust不可能跟C++叫板的,不值得投时间在那上面。
第一,拼语言的时代已经过去了,现在拼的是生态系统。
第二,现在的C++不是10年前的C++了,世界对C++的需要也不是10年前那样了。
我没仔细研究过rust,只是看了眼wikipedia。
Rust强调的memory safety其实已经是个伪需求了。
我的经验是现在用C++写程序用到指针越来越少了,而且有valgrind这些
调试工具可以发现内存错误。已经N年没碰到过没法debug的指针问题了。
而且现在面向龌龊世界的服务器程序都是java/node/python这些,
C++一般只在可控的内部环境用,各种需求又基本都有很强壮的轮子,
所以memory safety并没有以前那么严重了。
其实就真有那么一个不得了的critical system要写,我觉得正常的
CTO也不会拍板用rust这么个小语言写的。
除了java, javascript, python, C++以外我不推荐别的语言。
比较好的组合是java+javascript, python + javascript + C++。
(写app我不懂,不在考虑范围内。)我写算法多,所以离不来
C++,其实就应用而言,后面那个组合C++权重最低,学起来又
最麻烦,其实都应该从推荐列表中去掉。
说兴趣,其实最好是选一个感兴趣的应用,然后找轮子搭系统,
然后iterate把它做精致。
我坐井观天,希望专家指正。
【在 s***o 的大作中提到】 : 能干和干得好是两个不同的概念 : 单从兴趣出发的话,可以看看rust,这个可是跟c++直接叫板的。 : wdong对rust是什么看法?有希望吗?
|
l*********s 发帖数: 5409 | 15 rust is c++ done right. strongly recommend. |
N*****m 发帖数: 42603 | 16 同意,我早就指出来了ecosystem最重要
【在 w***g 的大作中提到】 : rust不可能跟C++叫板的,不值得投时间在那上面。 : 第一,拼语言的时代已经过去了,现在拼的是生态系统。 : 第二,现在的C++不是10年前的C++了,世界对C++的需要也不是10年前那样了。 : 我没仔细研究过rust,只是看了眼wikipedia。 : Rust强调的memory safety其实已经是个伪需求了。 : 我的经验是现在用C++写程序用到指针越来越少了,而且有valgrind这些 : 调试工具可以发现内存错误。已经N年没碰到过没法debug的指针问题了。 : 而且现在面向龌龊世界的服务器程序都是java/node/python这些, : C++一般只在可控的内部环境用,各种需求又基本都有很强壮的轮子, : 所以memory safety并没有以前那么严重了。
|
d****i 发帖数: 4809 | 17 C++ is the best programming language, period. |
d*******r 发帖数: 3299 | 18 "用C++写程序用到指针越来越少了" ??
现在是用 C++ 那一堆 智能指针 和 RAII?
【在 w***g 的大作中提到】 : rust不可能跟C++叫板的,不值得投时间在那上面。 : 第一,拼语言的时代已经过去了,现在拼的是生态系统。 : 第二,现在的C++不是10年前的C++了,世界对C++的需要也不是10年前那样了。 : 我没仔细研究过rust,只是看了眼wikipedia。 : Rust强调的memory safety其实已经是个伪需求了。 : 我的经验是现在用C++写程序用到指针越来越少了,而且有valgrind这些 : 调试工具可以发现内存错误。已经N年没碰到过没法debug的指针问题了。 : 而且现在面向龌龊世界的服务器程序都是java/node/python这些, : C++一般只在可控的内部环境用,各种需求又基本都有很强壮的轮子, : 所以memory safety并没有以前那么严重了。
|
s*********y 发帖数: 6151 | |
H****S 发帖数: 1359 | 20 oo和fp混编的只有scala,如果你想试下f#也可以,但是f#是没法写type class的。还
有kotlin,这个和scala一样都在jvm上跑,前者还可以直接编译成javascript(当然
scala现在也可以了)。 |
|
|
m******t 发帖数: 1171 | 21 C#我很欣赏。只是被软软独占了。
软软实在是太坏了。
【在 s*********y 的大作中提到】 : 肯定c sharp 还要说吗
|
m******t 发帖数: 1171 | 22 我去看看scala
【在 H****S 的大作中提到】 : oo和fp混编的只有scala,如果你想试下f#也可以,但是f#是没法写type class的。还 : 有kotlin,这个和scala一样都在jvm上跑,前者还可以直接编译成javascript(当然 : scala现在也可以了)。
|
d******g 发帖数: 83 | 23 LZ有闲心雅致的话,不如去玩硬件吧。Arduino和open wrt/dd wrt都很好玩。
语言也就一工具而已,等到要用时自然就学的会。
【在 m******t 的大作中提到】 : C#我很欣赏。只是被软软独占了。 : 软软实在是太坏了。
|
B*G 发帖数: 3662 | |
z*******r 发帖数: 415 | 25 PPT
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
x****u 发帖数: 44466 | 26 单是焊接跑arduino一点技术含量也没有,想做出好玩的东西还要机器学习等大杀器
【在 d******g 的大作中提到】 : LZ有闲心雅致的话,不如去玩硬件吧。Arduino和open wrt/dd wrt都很好玩。 : 语言也就一工具而已,等到要用时自然就学的会。
|
m******t 发帖数: 1171 | 27 想做视频处理的线上服务,计算量大,需要分布式。
用户上传视频,在云端处理。
【在 B*G 的大作中提到】 : 没有说用来干啥,怎么推荐语言?
|
t*****d 发帖数: 525 | 28 Erlang
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
x*****a 发帖数: 610 | 29 “一直用C++(水平:精通)”
Wow,竟然看到有人敢自称精通C++,要么你对精通有误解,要么你对C++有误解
http://lbrandy.com/blog/2010/03/never-trust-a-programmer-who-says-he-knows-c/
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
m******t 发帖数: 1171 | 30 Re。ecosystem强大,就有强大历史惯性,不容易被淘汰。
纵观长寿的语言,大概两种出身:
(1) 大革新的领袖,带了很多革命性的优点,因此就很快被支持,打出自己的eco。
(2) 在原有优质语言上提升,兼容衔前辈,借助前辈的eco。
一个语言,要是不能优秀到大力打出自己的eco,或者不能借用前辈的eco,一般活不太
长。
人闯江湖也同理。
【在 N*****m 的大作中提到】 : 同意,我早就指出来了ecosystem最重要
|
|
|
E****a 发帖数: 3088 | |
c***n 发帖数: 809 | 32 哈哈,我也这样想,如果真精通就不会这么问,不过也别强求
【在 x*****a 的大作中提到】 : “一直用C++(水平:精通)” : Wow,竟然看到有人敢自称精通C++,要么你对精通有误解,要么你对C++有误解 : http://lbrandy.com/blog/2010/03/never-trust-a-programmer-who-says-he-knows-c/ : : behavior;
|
n****l 发帖数: 1739 | 33 vba + ppt, 秒杀一堆老美烙印。
学好VBA,走遍天下都不怕
【在 E****a 的大作中提到】 : 学好VBA,走遍天下都不怕
|
d******e 发帖数: 2265 | 34 看了一圈。居然没有推荐kotlin的。如果嫌弃scala 过于繁复的,可以试试这个。
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
m******t 发帖数: 1171 | 35 我是对C++有些厌倦了,虽然它很强大,即喜欢又厌倦。
我对编程的理解:
1: OO描述Object之间关系的描述,继承,变异,所有
2: Functional描述影射之间的关系,composition, deduction, etc, 比较有抽象代
数的高度
3: Future和Promise描述时间纬度的关系,把两个时间点粘在一起。
4. 数据结构的本质描述数据间的代数关系。
然后胡思乱想些:
写程序就是描述各种关系,而各种基本结构就是各种常用的关系。
那我们可不可以革命性的创造一种语言,编程的人只需要specify他要的关系的特性,
比如: 用描述array,用
>描述带自动插值的图像,描述不可并行的东西,描述可并行
的东西,用描述singleton,然后编译器根据这些property自动生成代码?
比如二叉树:
node {
data:
self;
&left;
&right;
relationship:
self >= *left;
self <= *right;
};
binary tree {
element: node;
relationship : self_repeat( node::relationship );
};
然后编译器自己能够推倒出这个数据结构的实现。
感觉好想要的代数太抽象了。
现在的编程,还是在用人肉完成许多东西。
implement占了太大比例,能不能更pure的只是design和describe
【在 d******e 的大作中提到】 : 看了一圈。居然没有推荐kotlin的。如果嫌弃scala 过于繁复的,可以试试这个。 : : behavior;
|
g*********e 发帖数: 14401 | |
p*****y 发帖数: 529 | 37 就看你对编程的理解, 完全没做过enterprise system. 如果你的goal是large scale,
distributed online video processing, 你说的这些完全用不上。
前面人对你说"精通C++"的comments有一定道理的:)
【在 m******t 的大作中提到】 : 我是对C++有些厌倦了,虽然它很强大,即喜欢又厌倦。 : 我对编程的理解: : 1: OO描述Object之间关系的描述,继承,变异,所有 : 2: Functional描述影射之间的关系,composition, deduction, etc, 比较有抽象代 : 数的高度 : 3: Future和Promise描述时间纬度的关系,把两个时间点粘在一起。 : 4. 数据结构的本质描述数据间的代数关系。 : 然后胡思乱想些: : 写程序就是描述各种关系,而各种基本结构就是各种常用的关系。 : 那我们可不可以革命性的创造一种语言,编程的人只需要specify他要的关系的特性,
|
w**z 发帖数: 8232 | 38 视频处理,还是用 c++吧。
【在 m******t 的大作中提到】 : 想做视频处理的线上服务,计算量大,需要分布式。 : 用户上传视频,在云端处理。
|
d*******r 发帖数: 3299 | 39 Java 没有牛b轮子? 我知道 wowza 是 Java 的,只不过不是开源免费的.
【在 w**z 的大作中提到】 : 视频处理,还是用 c++吧。
|
z****n 发帖数: 1933 | 40 kotlin, 满足以上所有要求
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
|
|
f*********g 发帖数: 25 | 41 Haskell 的hello world 怎么复杂了?
behavior;
【在 m******t 的大作中提到】 : 一直用C++(水平:精通),突然想学点新东西。哪位位能推荐一下? : 维护性好:语法简明优雅,易读 : 计算效率高: : 可靠性好:typed (本人厌恶没有type check的语言);尽量减少unexpected behavior; : 功能完备: 能够开发大型系统,能够写分布式程序,也能完成"hello world". 有 : namespace : 不强编程模式:haskell那种把"hello world"搞复杂的,就是强制编程模式的典型。支 : 持oo和functional。 : 跨平台:不想重复开发。 : 高质量的库: python的库看着多,不过质量不行。
|
m******t 发帖数: 1171 | 42 多谢。看来一下kotlin,很简洁,很不错。打算试试。
【在 z****n 的大作中提到】 : kotlin, 满足以上所有要求 : : behavior;
|
w**z 发帖数: 8232 | 43 别说视频,上次搞个照片处理, jni 就差点被搞死。
【在 d*******r 的大作中提到】 : Java 没有牛b轮子? 我知道 wowza 是 Java 的,只不过不是开源免费的.
|
m******t 发帖数: 1171 | 44 如果只是hello world,还可以接受。
我是指Haskell的IO monad.
【在 f*********g 的大作中提到】 : Haskell 的hello world 怎么复杂了? : : behavior;
|
s********a 发帖数: 3 | 45 竟然没人推荐 Swift。蒸蒸日上,前途无量啊
【在 m******t 的大作中提到】 : 如果只是hello world,还可以接受。 : 我是指Haskell的IO monad.
|
w*****g 发帖数: 16352 | 46 木有轮子,只有引掣,不可撸。
★ 发自iPhone App: ChineseWeb 11
【在 s********a 的大作中提到】 : 竟然没人推荐 Swift。蒸蒸日上,前途无量啊
|
w*****g 发帖数: 16352 | 47 表小看VBA,其实速度不慢,就是没人鸟,秘密书会计们又不会写代码,没有库,软软
又不推,悲剧了。
★ 发自iPhone App: ChineseWeb 11
【在 n****l 的大作中提到】 : vba + ppt, 秒杀一堆老美烙印。 : : 学好VBA,走遍天下都不怕
|
H****S 发帖数: 1359 | 48 单独也还好,不过加上monad transformer就得花点脑子了。概念即便清楚了,一开始
看也会觉得budget of working memory不够用。
【在 m******t 的大作中提到】 : 如果只是hello world,还可以接受。 : 我是指Haskell的IO monad.
|
x****u 发帖数: 44466 | 49 强烈同意!
我就不喜欢python的写法,但用的人太多,现在就是很多领域的"英语",不懂就寸步难
行,所以只能跟着用了。
【在 w***g 的大作中提到】 : rust不可能跟C++叫板的,不值得投时间在那上面。 : 第一,拼语言的时代已经过去了,现在拼的是生态系统。 : 第二,现在的C++不是10年前的C++了,世界对C++的需要也不是10年前那样了。 : 我没仔细研究过rust,只是看了眼wikipedia。 : Rust强调的memory safety其实已经是个伪需求了。 : 我的经验是现在用C++写程序用到指针越来越少了,而且有valgrind这些 : 调试工具可以发现内存错误。已经N年没碰到过没法debug的指针问题了。 : 而且现在面向龌龊世界的服务器程序都是java/node/python这些, : C++一般只在可控的内部环境用,各种需求又基本都有很强壮的轮子, : 所以memory safety并没有以前那么严重了。
|
s******3 发帖数: 344 | 50 re
【在 w***g 的大作中提到】 : rust不可能跟C++叫板的,不值得投时间在那上面。 : 第一,拼语言的时代已经过去了,现在拼的是生态系统。 : 第二,现在的C++不是10年前的C++了,世界对C++的需要也不是10年前那样了。 : 我没仔细研究过rust,只是看了眼wikipedia。 : Rust强调的memory safety其实已经是个伪需求了。 : 我的经验是现在用C++写程序用到指针越来越少了,而且有valgrind这些 : 调试工具可以发现内存错误。已经N年没碰到过没法debug的指针问题了。 : 而且现在面向龌龊世界的服务器程序都是java/node/python这些, : C++一般只在可控的内部环境用,各种需求又基本都有很强壮的轮子, : 所以memory safety并没有以前那么严重了。
|
|
|
H**r 发帖数: 10015 | 51 aglee
【在 s*********y 的大作中提到】 : 肯定c sharp 还要说吗
|
S*******n 发帖数: 305 | 52 推荐go。楼主要觉得某些库质量不高,完全可以自己重写。 |
d*****n 发帖数: 2132 | 53 third this
【在 H**r 的大作中提到】 : aglee
|
m*****n 发帖数: 3575 | 54 你喜欢什么的写法?
【在 x****u 的大作中提到】 : 强烈同意! : 我就不喜欢python的写法,但用的人太多,现在就是很多领域的"英语",不懂就寸步难 : 行,所以只能跟着用了。
|
c******3 发帖数: 6509 | 55 推荐哥一直用的两个语言,绝对满足你的要求
Assembly
Bluespec SystemVerilog |
t**********h 发帖数: 2273 | 56 这理由。。。,ruby也有ruby mine 啊,
[在 fantasist (fan) 的大作中提到:]
:java最大的优点是有强大的ide。用过intellij后再也不想碰其它语言了
:☆ 发自 iPhone 买买提 1.23 |
a9 发帖数: 21638 | 57 哈哈。
【在 f*******t 的大作中提到】 : java最大的优点是有强大的ide。用过intellij后再也不想碰其它语言了
|
s***o 发帖数: 2191 | 58 对。kotlin看上去比scala更pragmatic,最近还跟gradle联姻了
【在 m******t 的大作中提到】 : 多谢。看来一下kotlin,很简洁,很不错。打算试试。
|
z****n 发帖数: 1933 | 59 最主要是和java无缝衔接。不行还有退路。而且改动大多是java的痛点。
Java8已经接近完美了。kotlin因为没有兼容问题,补齐最后一点短板。
而且可以兼容javascript,比javascript开发大型项目会更有优势。
【在 s***o 的大作中提到】 : 对。kotlin看上去比scala更pragmatic,最近还跟gradle联姻了
|
J*****n 发帖数: 4859 | 60 Of course C#, best of all. |