函数式编程语言 Futhark

ISC
Linux
2016-04-27
红薯

Futhark 是一个小型全新的函数式编程语言,可编译为高性能的 GPU 代码。使用静态类型、并行数据以及纯函数数组语言。该语言对编译器提前进行重度的优化,通过 OpenCL 生成 GPU 代码。Futhark 并非为图形编程而设计,通过使用 GPU 来加速并行的数组计算,支持常规嵌套的数据并行化处理。

Futhark 使用 Haskell 语言开发。

示例代码:

fun int max(int x, int y) =
  if x > y then x else y

fun {int,int,int,int} redOp({int,int,int,int} x,
                            {int,int,int,int} y) =
  let {mssx, misx, mcsx, tsx} = x in
  let {mssy, misy, mcsy, tsy} = y in
  { max(mssx, max(mssy, mcsx + misy))
  , max(misx, tsx+misy)
  , max(mcsy, mcsx+tsy)
  , tsx + tsy }

fun {int,int,int,int} mapOp(int x) =
  { max(x,0), max(x,0), max(x,0), x }

fun int main([int] xs) =
  let {x, _, _, _} =
    reduce(redOp, {0,0,0,0}, map(mapOp, xs)) in
  x
的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

Futhark 0.12.1 发布,Haskell 写的小型函数式编程语言

Futhark 0.12.1 发布了。Futhark 是一个小型函数式编程语言,采用 Haskell 开发,使用静态类型、并行数据以及纯函数数组,它对编译器提前进行深度优化,通过 OpenCL 生成 GPU 代码。Futhark...

08/25 07:19

Futhark 0.5.1 发布,小型全新的函数式编程语言

Futhark 0.5.1 已发布。 Futhark 是一个小型全新的函数式编程语言,可编译为高性能的 GPU 代码。使用静态类型、并行数据以及纯函数数组语言。该语言对编译器提前进行重度的优化,通过 OpenCL...

2018/06/03 08:01

Futhark 0.2.0 发布,小型全新的函数式编程语言

Futhark 0.2.0 已发布,与第一个版本相比,该版本没有添加主要的编译器优化特性,相反,该版本专注于各种提升使用体验的改进,具体更新如下: Added Run-time errors due to failed assertio...

2017/11/21 07:46

没有更多内容

加载失败,请刷新页面

没有更多内容

暂无问答

浏览器内核

浏览器主要组成部分:shell(外壳)+内核,内核又分为渲染引擎(也叫呈现引擎、排版引擎)和js引擎。 渲染引擎:负责对网页语法的解释并渲染网页。 所以,通常所谓的浏览器内核也就是浏览器所...

2018/05/06 15:55
11
0
认识javascript引擎

转自wikipedia A JavaScript engine is specialized computer software which interprets and executes JavaScript (also known as ECMAScript). Although there are several uses for a Jav...

2013/11/25 09:12
103
0
关于浏览器内核你不得不了解的事

浏览器是我们每天几乎都必须使用的软件产品,可是对于自己每天都接触的浏览器,很多同学其实对其一无所知。今天就跟大家说说关于浏览器内核的一些事儿吧,好让你了解多一点稍微内在的东西。

2016/12/03 23:11
9
0
浏览器内核的解析和对比

要搞清楚浏览器内核是什么,首先应该先搞清楚浏览器的 构成。简单来说浏览器可以分为两部分,shell+内核。其中shell的种类相对比较多,内核则比较少。Shell是指浏览器的外壳:例如菜单,工具...

2016/10/10 17:23
6
0
关于浏览器内核的一些小知识

一、浏览器内核 (排版引擎/渲染引擎) 首先解释一下浏览器内核是什么东西。英文叫做:Rendering Engine,中文翻译很多,排版引擎、解释引擎、渲染引擎,现在流行称为浏览器内核,至于为什么流...

2013/03/06 11:48
135
0
JavaScript的前世今生

JavaScript的前世今生   和CSS一样,JavaScript在各浏览器下并非完全一致,它所带来的兼容性问题时常困扰着我们,以至于现在“能否处理流行浏览器的兼容性问题”成为了检验一个程序员是否合...

2016/08/16 14:30
30
1
关于浏览器内核的一些小知识,明明白白选浏览器!

转载自:http://blog.sina.com.cn/s/blog_3e99363d0100tsmo.html 一些内容来自于我能找到的资料和我自己的理解,不保证正确,但是大致应该是没错的。 一、排版引擎 首先厘清一下浏览器内核是...

2012/11/02 15:26
188
1
科普:关于浏览器内核的一些小知识

浏览器是我们每天几乎都必须使用的软件产品,可是对于自己每天都接触的浏览器,很多同学其实对其一无所知。今天就跟大家说说关于浏览器内核的一些事儿吧,好让你了解多一点稍微内在的东西。 ...

2011/12/05 19:27
394
0

没有更多内容

加载失败,请刷新页面

没有更多内容

返回顶部
顶部