摘要:网址:http://learnyouahaskell.com/中文版:http://learnyouahaskell-zh-tw.csie.org/zh-cn/ready-begin.html在 Haskell 中,List 就像现实世界中的购物单一样重要。它是最常用的数据结构,并且十分强大,灵活地使用它可以解决很多问题。本节我们将对 List,字串和 list comprehension 有个初步了解。 在 Haskell 中,List 是一种单类型的数据结构,可以用来存储多个类型相同的元素。我们可以在里面装一组数字或者一组字符,但不能把字符和数字装在一起。Note: 在 ghci 下,我们 阅读全文
haskell入门
2014-03-10 18:39 by youxin, 1208 阅读, 0 推荐, 收藏,
摘要:斯坦福公开课《编程范式》中介绍了Scheme(但是不仅仅是Scheme,它只是作为函数式语言的代表),最后一课介绍了Haskell。。。“Hello World!”是学习一门语言的魔咒 :)ghc windows上面的winghci这是一个解释器环境,和python的差不多在提示符后Prelude>后面输入"Hello World"解释器返回 "Hello World",哦耶...当然,你可以输入一些你能想到的功能试试,1 + 1、7/2 ...但是试试 5 mod 3 ... 额...别忘了,童鞋们,这个是函数式语言,其构成可以写成:函数名 参数 阅读全文
MySQL全连接(Full Join)实现,union和union all用法
2014-03-10 14:45 by youxin, 26565 阅读, 1 推荐, 收藏,
摘要:MySQL本身不支持你所说的full join(全连接),但可以通过union来实现 ,下面是一个简单测试,可以看看:mysql> CREATE TABLE a(id int,name char(1));Query OK, 0 rows affected (0.00 sec)mysql> CREAT... 阅读全文
haskell 开发环境配置
2014-03-10 13:20 by youxin, 3948 阅读, 0 推荐, 收藏,
摘要:haskell是一门通用函数式语言,几乎可以进行任何种类的开发,包括命令行,GUI,数据库,Web.源代码可以跨平台: Linux,Mac, Windows, FreeBSD 等.haskell特点:函数式变成风格为主,命令式风格为辅,具有严格且方便易用的类型系统。类型检查可以帮助程序员在开发过程中避免很多错误,并辅助组织程序的结构。haskell的开发工具主要有 GHC, hugs 两种, 还有中 nhc 没用过就不说了。我们这里要安装的是 GHC,以及在 ghc 基础上的 Haskell Platform。GHC:全称: Glasgow Haskell Compiler , 包含一个高效. 阅读全文
图灵完备
2014-03-09 20:15 by youxin, 2086 阅读, 0 推荐, 收藏,
摘要:一切可计算的问题都能计算,这样的虚拟机或者编程语言就叫图灵完备的。一个能计算出每个图灵可计算函数(Turing-computable function)的计算系统被称为图灵完备的。一个语言是图灵完备的,意味着该语言的计算能力与一个通用图灵机(Universal Turing Machine)相当,这也是现代计算机语言所能拥有的最高能力。图灵完备是什么意思呢?在可计算理论中,当一组数据操作的规则(一组指令集,编程语言,或者元胞自动机)满足任意数据按照一定的顺序可以计算出结果,被称为图灵完备(turing complete)。一个有图灵完备指令集的设备被定义为通用计算机。如果是图灵完备的,它(计算 阅读全文
转:implementing cons/car/cdr without explicit storage
2014-03-09 19:06 by youxin, 275 阅读, 0 推荐, 收藏,
摘要:I know this is old wine but it’s just too cool! It elegantly demonstrates closure and higher-order functions in a dozen lines, yet retains the robustness. The “intuitive” idea of storage is totally absent, replaced by the “environment” reserved by the interpreter. The first time I saw this is in the 阅读全文
Actor模型
2014-03-09 13:49 by youxin, 1249 阅读, 0 推荐, 收藏,
摘要:Actors模型(Actor model)首先是由Carl Hewitt在1973定义, 由Erlang OTP (Open Telecom Platform) 推广,其 消息传递更加符合面向对象的原始意图。 Actors属于并发组件模型 ,通过组件方式定义并发编程范式的高级阶段,避免使用者直接接触多线程并发或线程池等基础概念。 传统多数流行的语言并发是基于多线程之间的共享内存,使用同步方法防止写争夺,Actors使用消息模型,每个Actors在同一时间处理最多一个消息,可以发送消息给其他Actors,保证了单独写原则。从而巧妙避免了多线程写争夺。 Actors模型的特点是:隔离计算实... 阅读全文
线程通信机制:共享内存 VS 消息传递
2014-03-09 13:35 by youxin, 4551 阅读, 1 推荐, 收藏,
摘要:在并发编程中,我们必须考虑的问题时如何在两个线程间进行通讯。这里的通讯指的是不同的线程之间如何交换信息。目前有两种方式:1、共享内存2、消息传递(actor 模型)共享内存:共享内存这种方式比较常见,我们经常会设置一个共享变量。然后多个线程去操作同一个共享变量。从而达到线程通讯的目的。例如,我们使用多个线程去执行页面抓取任务,我们可以使用一个共享变量count来记录任务完成的数量。每当一个线程完成抓取任务,会在原来的count上执行加1操作。这样每个线程都可以通过获取这个count变量来获得当前任务的完成情况。当然必须要考虑的是共享变量的同步问题,这也共享内存容易出错的原因所在。这种通讯模型中 阅读全文
Windows 7 mklink命令详解
2014-03-08 22:19 by youxin, 7731 阅读, 0 推荐, 收藏,
摘要:mklink是Windows 7下的一个类似于linux下In的命令,其作用是在NTFS文件系统中创建文件或目录的链接(类似于桌面快捷方式)。如果加以利用其发挥的作用是非常的大的,不仅可以帮助我们节省不少时间,而且可以使我们重装系统后不再丢失用户文件。 Windows 7下的mklink命令通过指定参数可以建立出不同形式的文件或目录链接,分为硬链接(hard link)、符号链接(symbolic link)和软链接(联接)(junction)三种。1.符号链接(symbolic link) 建立一个软链接相当于建立一个文件(或目录),这个文件(或目录)用于指向别的文件(或目录),和win.. 阅读全文
java 内存模型
2014-03-08 20:35 by youxin, 308 阅读, 0 推荐, 收藏,
摘要:系列文章:http://ifeve.com/java-memory-model-0/本文属于作者原创,原文发表于InfoQ:http://www.infoq.com/cn/articles/java-memory-model-1并发编程模型的分类在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,线程之间通过写-读内存中的公共状态来隐式进行通信。在消息传递的并发模型里,线程之间没有公共 阅读全文
浙公网安备 33010602011771号