F#之旅0 - 开端

UWP的学习告一段落,CozyRSS的UWP版本并没有做。UWP跟wpf开发几乎一模一样,然后又引入了很多针对移动设备的东西,这部分有点像android。没啥太大的意思,不难,估计坑不少,但是暂时的没太大的欲望去玩。

学一门函数式编程语言,听起来就是一件不错的事情。

函数式编程,准确的来说应该是函数式编程这种编程范式,在很多中编程语言中都可以玩的。现在流行的js、python、lua、c++、java都有闭包了,至于惰性计算、常量,也好像不那么重要。但是既然特意说学一门函数式编程语言,自然要玩专业一点的语言,比较常被讨论的有:

Lisp及其各种方言(Common Lisp、Scheme、Racket、Clojure)。Lisp很古老,也很靠谱,Emacs配置就用的Lisp,函数式比较纯,它的一些方言,比如Racket应该是很不错的,但是感觉用得不广,厂商支持不够。

Haskell貌似在数学方面用得多点,也不够广。

Scala是一个类似java的语言,很神奇,不过java我不喜欢。

Erlang在游戏服务器方面好像用得挺多的,其他方面很少听说。

F#,微软推出的开源的新语言,感觉很靠谱,就学它了。

F#之旅会包含一些F#的基础知识,高级用法,我写的一些玩具,以及一些文章翻译。F#的资料相对来说,比较少,特别是用百度搜索完全搜不到东西,google就强多了。

先贴一篇介绍文章:

函数式编程初探 - 阮一峰的网络日志

http://www.ruanyifeng.com/blog/2012/04/functional_programming.html

F#之旅0 - 开端的更多相关文章

  1. F# 之旅(上)

    写在前面的话 解答一下在上一篇文章<在Visual Studio中入门F#>中有人的提问, 1. 问:是准备写 F# 系列吗?    答:当然不是,本人也是刚刚学习 F#,只是翻译微软官方 ...

  2. F# 之旅(下)

    写在前面的话 学习 F# 一定要去体会函数式编程的特点,推荐一下阮一峰的日志<函数式编程入门教程>. 在这篇文章中 递归函数 记录和可区分联合类型 模式匹配 可选类型 度量单位 类和接口 ...

  3. F#之旅4 - 小实践之快排

    参考文章:https://swlaschin.gitbooks.io/fsharpforfunandprofit/content/posts/fvsc-quicksort.html F#之旅4 - 小 ...

  4. ffmpeg -i 10.wmv -c:v libx264 -c:a aac -strict -2 -f hls -hls_list_size 0 -hls_time 5 C:\fm\074\10\10.m3u8

    ffmpeg -i 10.wmv -c:v libx264 -c:a aac -strict -2 -f hls -hls_list_size 0 -hls_time 5 C:\fm\074\10\1 ...

  5. F#之旅3 - F# PK C#:简单的求和

    原文链接:https://swlaschin.gitbooks.io/fsharpforfunandprofit/content/posts/fvsc-sum-of-squares.html Comp ...

  6. 菜鸟的java代码审计之旅-0之java基础知识

    前言: 对于java的代码审计我就是一个小白,没有代码基础(不会java),从0开始记录我的java漏洞的审计学习之旅.对于java来说是一门很难的语言,但是不去学习就永远不会.对于一门很复杂的语言如 ...

  7. F#之旅9 - 正则表达式

    今天,cozy群有个群友发了条正则,问正则匹配相关的问题.虽然他的问题用html selector去处理可能更好,但是我也再一次发现:我忘了正则怎么写的了! 忘掉正则是有原因的,这篇文章会简单记录下F ...

  8. F#之旅8 - 图片处理应用之动画二维码

    首先,先介绍下什么是动画二维码.前些天在网上闲逛,突然看到一个开源项目,发现一种二维码的新玩法.https://github.com/sylnsfar/qrcode/blob/master/READM ...

  9. F#之旅7 - 图片处理入门

    首先,隆重介绍今天的主角:ImageProcessor(http://imageprocessor.org/).虽然我并没有在实际工作中用到这个库,但是它干净利索的使用方式打动了我,很久以前就存了下来 ...

随机推荐

  1. openstack资料相关

    https://github.com/int32bit/openstack-workflow  #openstack各种时序图 http://docs.openstack.org/developer/ ...

  2. JavaScript 中 onload 事件绑定多个方法

    当需要调用的方法较多时,我们可以进一步优化,编写一个专门用于绑定 onload事件的方法: function addLoadEvent(func) { //把现有的 window.onload 事件处 ...

  3. Python之路3【知识点】白话Python编码和文件操作

    Python文件头部模板 先说个小知识点:如何在创建文件的时候自动添加文件的头部信息! 通过:file--settings 每次都通过file--setings打开设置页面太麻烦了!可以通过:View ...

  4. VirtualBox COM对象获取失败

    问题描述: Failed to instantiate CLSID_VirtualBox w/ IVirtualBox, but CLSID_VirtualBox w/ IUnknown works. ...

  5. Visual C++ 升级到 Visual Studio

    把项目从visual C++ MFC移到visual studio 2013有许多东西需要修改,尤其是工程本身不小的时候. 到最后一步的错误: error LNK2001: unresolved ex ...

  6. 我的页面定制CSS代码(SimpleGamboge皮肤)

    我的页面定制CSS代码,针对博客园SimpleGamboge皮肤. 调整: 1.左上图片更换为自己的头像 2.扩大左侧栏宽度,缩小右侧主栏宽度宽度 3.扩大内容页面的评论区宽度,工具图标靠左 4.去广 ...

  7. Linux或Unix环境利用符号链接升级Maven

    1,解压Maven到安装目录,在解压目录同一级创建刚解压目录的符号链接,命令如下: ln -s apache-maven-3.3.9 apache-maven 2,配置环境变量,这里Maven主目录环 ...

  8. python 模块包裹

    arlenmbx@arlenmbx-ThinkPad-X130e:~$ su root 密码: root@arlenmbx-ThinkPad-X130e:/home/arlenmbx# python ...

  9. 搭建 AngularJS+Ionic+Cordova 开发环境并运行一个demo

    目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...

  10. Unity3D访问Android系统目录

    file:///sdcard/Movies/3D/互动.mp4file:///storage/emulated/0/Movies/3D/互动.mp4/storage/emulated/0/Movies ...