作者 | Richard Kenneth Eng
译者 | 明明如月,编辑 | 郭芮
来源 | CSDN(ID:CSDNnews)
Python 和 JavaScript 是目前最火的两大编程语言。然而,他们不可能永远屹立不倒。最终,必将像其他编程语言一样跌下神坛。这很可能在接下来的十年左右上演。
那么什么编程语言将会取而代之呢? 下面给出我的候选者名单!
Dart
多亏了 Flutter 框架和 Google 的认可,该语言迅速流行开来。这和 Rails 框架让 Ruby 流行起来的原因非常相似。如果谷歌的 Fuchsia 系统能够火起来,Dart 将受益最大。
核心优势:它是一种比 JavaScript 更棒的编程语言。
主要缺点:不得不面对 JavaScript 语言和 JavaScript 的强烈拥护者的挑战。
曼德布洛特集样本:
classComplex{
double _r,_i;
Complex(this._r,this._i);
doubleget r => _r;
doubleget i => _i;
String toString() => "($r,$i)";
Complex operator +(Complex other) => new Complex(r+other.r,i+other.i);
Complex operator *(Complex other) =>
new Complex(r*other.r-i*other.i,r*other.i+other.r*i);
double abs() => r*r+i*i;
}
void main() {
double start_x=-1.5;
double start_y=-1.0;
double step_x=0.03;
double step_y=0.1;
for(int y=0;y
String line="";
for(int x=0;x
Complex c=new Complex(start_x+step_x*x,start_y+step_y*y);
Complex z=new Complex(0.0, 0.0);
for(int i=0;i
z=z*(z)+c;
if(z.abs()>2) {
break;
}
}
line+=z.abs()>2 ? " " : "*";
}
print(line);
}
}
Elixir
Elixir 是基于一种基于 Erlang 虚拟机的函数式编程语言,对并发的支持非常好。作为一个纯粹的函数式编程语言,它有望将这种范式变为主流。
核心优势:它让函数式编程变得异常简单,对并发的支持非常棒。
主要缺点:需要有 OTP 基础,但掌握 OTP 却没那么容易。
曼德布洛特集样本:
defmodule Mandelbrot do
def setdo
xsize = 59
ysize = 21
minIm = -1.0
maxIm = 1.0
minRe = -2.0
maxRe = 1.0
stepX = (maxRe - minRe) / xsize
stepY = (maxIm - minIm) / ysize
Enum.each(0..ysize, fn y ->
im = minIm + stepY * y
Enum.map(0..xsize, fn x ->
re = minRe + stepX * x
62 - loop(0, re, im, re, im, re*re+im*im)
end) |> IO.puts
4000520066 欢迎批评指正
All Rights Reserved 新浪公司 版权所有