你应该知道5个新的编程语言

时间:2022-05-31 11:50:12
1. GO
Go编程语言是由Google开发的,以满足由多核处理器,网络系统,计算集群和Web应用程序定义的世界的需求。
它设计为快速写入,所有现代功能,如并发和内置的垃圾收集.Go的设计还旨在使管理依赖更容易,并使应用程序更容易扩展。
数组的和和乘积 - GO程序化
package main
import“fmt”
func main(){
sum,prod:= 0,1
for _,x:= range [] int {1,2,5} {
sum + = x
prod * = x
}}
fmt.Println(sum,prod)
}}

原因:
它很容易编写Go应用程序和安装它们,因为它们被编译到单个可执行文件,而不是要求依赖关系安装在它们旁边。
Go应用程序可以利用现代多核处理器而不需要太多的修改,使其适用于创建Web应用程序供大量并发用户使用。它是由Google开发的,因此有大量的支持和积极的发展。
它可以在Windows,Linux,Mac上运行,甚至在像Raspberry Pi这样的小型设备上运行。
2. Clojure
Clojure(出生于2007年)是构建在Java的虚拟化部分(JVM)上的几种语言之一,使其与Java代码和Java运行时环境兼容。
Clojure编译为Java,还有另一个版本实现,ClojureScript,它编译为JavaScript。
Clojure看起来不像Java或JavaScript。没有花括号((((但在他们的地方有很多括号)))))。你倾向于从右到左而不是从左到右读取语句,所以要添加2和3你写(+ 2 3),并使用递归代替循环。
Clojure是一种Lisp(列表处理)语言,意味着它将数据和代码本身视为链接列表,并且倾向于大量使用宏。
此代码片段计算整数数组的和和乘积:


Clojure - 数组的和和乘积

(defn sum [vals](reduce + vals))
(defn product [vals](reduce * vals))

理由:
如果你想用函数式编程(FP)调情,但不想一路走。功能编程充分利用了现代多核处理器支持并发性的能力,但像Haskell这样的纯FP语言对于某些人来说是一个飞跃。

Clojure是一种通用的语言,如Java,它与之兼容。不像Java,语法是简单,一致和简洁。此外,您可以与正在运行的程序进行实时交互,以查看单独的函数的作用,而不必在每次更改后重新编译和运行它。


3.Rust
Rust在2016 *开发者调查中被评为最受喜爱的语言,可能是你的任务的答案。它是由Mozilla开发的替代C ++,并获得三星的支持。它被设计为具有类似于C ++的内存管理和性能的能力,但是在编译时具有更多的检查以避免由悬挂指针,缓冲区溢出等引起的昂贵的错误。这应该使代码维护在协作的长期项目中更容易。
分散式网络公司Maidsafe花费了六个月的时间,将其500,000条C ++线路的整个代码库减少到紧凑的30000条Rust线路,同时提高了稳定性。
Rust中的数组的和和乘积
#![feature(iter_arith)]
fn main(){
let arr:[i32; 9] = [1 1 32,2,3,4,5,6,7,8,9];
let sum = arr.iter()。fold(0i32,| a,&b | a + b);
let product = arr.iter()。fold(1i32,| a,&b | a * b);
println!(“the sum is {} and the product is {}”, sum, product);
}}

原因了解:
如果你是一个编写低级软件的系统开发人员,它的寿命很长,而且你想要的东西比C / C ++更安全和更现代。 Rust是一种新语言的良好支持,并且有越来越多的开发人员和图书馆。

4.Julia
这种语言的设计目的是让数据科学家和数学家用一种语言做一切,而不必求助于两个或更多。
例如,他们通常可以使用Matlab来编码线性代数,R用于紧缩统计,C用于快速迭代函数,以及通用语言(如Python)将整个事物粘合在一起,所有这些都难以扩展到大数据级别。
Julia旨在提供Python的易用性和生产力与Matlab的数学能力和C的性能,所以你可以做到一切。它支持并行分布式计算,并且可以与数据科学笔记本如Jupyter交互使用。它还支持Lisp类宏。

数组的和和乘积
julia> sum([4,6,8])
18
julia> +((1:10)...)
55
Julia+([1,2,3] ...)
6
julia> prod([4,6,8])
192

原因学习
你是一个使用大数据集的分析师或数据科学家。你知道Python已经和Julia的语法是类似的,所以没有太多的学习曲线。
这些库为Python提供了类似的机器学习和数学功能,还有一些额外的功能,如果需要,它可以调用Python函数和Fortran和C库。此外,它有一个内置的包管理器,用于安装附加功能和外部库。

5.Swift
Swift是一个通用的编程语言,由Apple创建为Objective-C的现代替代语言。它被设计为快速的系统编程,安全的错误检查和易于使用。它是开源的,并且在去年年底的苹果平台和Linux的Apache License 2.0下可用。
数组的和和乘积
let a = [1, 2, 3, 4, 5]
println(a.reduce(0, +)) // prints 15
println(a.reduce(1, *)) // prints 120

println(reduce(a, 0, +)) // prints 15
println(reduce(a, 1, *)) // prints 120

原因
你是一个iOS开发人员,你想远离Objective-C。作为一个更现代的通用语言,你最终应该能够在Swift中做更多的事情,更快,更少的错误。