欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ICFP2006大赛结果

程序员文章站 2022-06-11 09:58:46
...
International Conference on Functional Programming 2006大赛结果:
第三名Team: Can't Spell Awesome Without ASM, from Google,使用汇编
第二名Team kuma, from Japan,使用D语言
第一名Team Smartass, from Google,使用Haskell,并辅以C++/Python/2D语言。

Haskell连续三年蝉联第一!

ICFP2006站点:http://icfpcontest.org/index.shtml
今年的题目背景是虚拟的‘计算考古学’,要求实现一个指定规范的虚拟机以执行‘古代文明代码’完成各种任务。

颁奖录像http://video.google.com/videoplay?docid=6419094369756184531
(很遗憾,在google video上,而且很不清晰)

2D语言特别介绍(from wikipedia)
2d is a programming language that appeared in the 2006 ICFP programming contest. Programs written in this language are drawn out as ASCII flowcharts using boxes and arrows, as shown in the following example.
,....................................,
:p |  *=================*            :
---#->!send[(W,S),(W,E)]!+           :
:  v  *=================*v           :
:*=============*| *===========*      :
:!case N of S,E!#>!send[(N,E)]!-------
:*=============*v *===========*      :
:      |   *=====*  *===============*:
:      +-->!use p!->!send[(Inl W,E)]!-
:          *=====*  *===============*:
,....................................,

While on the surface the language appears much like a description of a printed circuit board, it differs from physical circuits in many significant ways. In the 2d language, arbitrarily large and complex values may be passed along a wire. In addition, 2d boxes may make recursive references with the use keyword.

Participants in the contest were asked to write several programs in this language, including a 1-dimensional ray tracer. Programs were evaluated both on the correctness of their output and on their size: programs with smaller areas were worth more points.