anic:比C快比Java安全比shell还简单的新语言
一位ID为ultimus的程序员开发了一种名为anic的新语言,近日引起业界关注。根据Google Code上该项目的简介,该语言的正式名称是ANI,anic是这种语言的参考实现。
ANI是一种实验性、高性能、静态安全、完全隐含支持并行、面向对象的通用数据流编程语言。
anic用GNU工具链写成,因此可移植性很好,可以运行于所有主流操作系统,包括*NIX,Mac OS X和Windows(借助Cygwin)。
用anic编写的Hello World程序是这样的:
"Hello, World!" -std.out
而用C语言编写并不轻松的多线程、实时的时钟+计算器混合程序,用anic写起来将如此简洁:
@std.in;a=[[0\]]; op=[[' '\]]; b=[[0\]]; r=[[0\]];0 { clock = [[int ms]] { ("\r" + ms/1000.0 + ":" + a + op + b + "=" + r) -std.out; 1 std.delay (ms+1) clock} };inLoop = {\in-a \in-op \in-b inLoop};\\op ?? {'+': (\a+\b) '-': (\a-\b) '*': (\a*\b) '/': (\a/\b) : 0} -r;
该项目的论坛上目前已经非常热烈,其中不乏Google公司的程序员参与其中。
很酷,不是吗?赶快开始尝试吧: http://code.google.com/p/anic/
追赶技术是很困难的,但是抓住内层实质,确是可能的。
相关文档:
大家都知道在Unix/Linux中有个man命令,可以查询常用的命令,函数。可是对于我们这样只知道用"man 函数名"来查询的人来说,会遇到很多问题,比如:
man read,我想看的是ANSI C中stdio的read函数原型和说明,没想到出来的确是BASH命令的说明,这是怎么回事 ......
#include <stdio.h>
#include <stdlib.h>
#include <syslog.h>
#include <signal.h>
#include <unistd.h>
#include <string.h>
#include <getopt.h>
#define MAX_READFILE 24
#define MAX_INPUTFILE 10240
char *file ;
void time_out(){
syslog(LOG_INFO,"read inp ......
最近用installanywhere做了一个安装包,卸载的时候总是出现“载入java vm时windows出现错误:3”,很不爽,上网查看原因,原来是因为中间我重新更换过jdk的版本,现在有些软件自带VM或JDK,windows系统通过注册表来管理当前系统所使用的VM和JDK路径,因此,当安装的软件JDK版本和 ......
【IT168 技术文章】
WWJ SDK 是一种构建在 Java OpenGL (JOGL) 扩展之上的 3D
图形地球仪。WWJ 类层次结构的核心是 GLCanvas 的子类 WorldWindowGLCanvas。而 GLCanvas 是一个
Abstract Window Toolkit (AWT) 组件。
WWJ 对 AWT 的依赖性对于想在 Eclipse
应用程序中使用 WWJ 的 GIS 开发人员来讲是一个障碍。您可 ......
语法:
for ( type 变量名:集合变量名 ) { … }
注意事项:
迭代变量必须在( )中定义!
集合变量可以是数组或实现了Iterable接口的集合类
举例:
public class AdvancedFor {
public static void main(String[] arg ......