Jump to Navigation

Document

Programming articles and books.

另一种Qt的Ruby语言绑定方式

PHP中的函数式编程特性分析

一、引言
在写此文时,想起之前看过的一句话,如果要学习一门新的语言,那么就学习一门能够改变你的思维方式的语言。
本着这句对我触动比较大的一句话,一直在关注着LISP/Scheme这类直接产生函数式编程方式的语言。
在这中间看过一些相关的资料,试着编写过一些代码,却一直停留在学习试验阶段,很难写出像样的可用程序来。

在最近几年中,又是一个计算机界推出新语言高潮。比较新的有Closure,Go等。
并且一些比较老的语言像C++,Python,Perl,发展变化的步伐也变大了。
在C++11中,也添加了匿名函数的支持。nodejs的javascript语言,更是标榜着“披着C语言外衣的LISP”。
从这些变化除了让程序更高效,功能更丰富全面外,也提供了大量使用函数式思维解决程序复杂度不断上升的问题的特性。

如何在lxc容器中使用tun/tap设备

tun/tap需要用到/dev/net/tun设备文件,

默认情况下lxc不会创建/dev/net/tun设备文件。

Category:

函数式思维系列

hyperdex 不同数据类型hash算法

hyperdex使用hyperspace hashing算法对记录的每个字段做哈希, 并且所有字段的哈希值作为每个维度的值映射到多维度空间中的一个点上。

通过化分多维空间的方式,把所有的记录分布到不同的存储节点上,实现hyperdex的分布式NoSQL功能。

对于hyperdex的实现,它所支持的土原子数据类型各自有不同的哈希算法,

原子类型有float,int64,string,每种类型的哈希算法如下:

一、hyperdex数据类型

字符串,长度限制???

int64类型,

float类型,

二、hyperdex容器数据类型

list列表类型,

set集合类型,

map映射类型,

三、不同数据类型的hash值计算

字符串类型hash算法

使用cityhash算法计算该字段值的hash值。

int64类型hash算法

unpack64le 把值高字节与低字节交换位置,64位为8个字节,即1,8交换,2,7交换,3,6交换,4,5交换

配置系统进化

系统就像生物进化,从原始粗糙进化的强大灵巧。

一、从配置的起源说起

二、配置的最初阶段

三、配置的变异阶段

四、配置的变异后优化

五、配置的归类隐藏

六、配置去哪儿

平台化建设步伐

hehhe

Category:

Tox API - 开始C API

开始C API

现在给出一个简单的C客户端程序的基本结构,后面详细解释每个重要的部分。

Category:

Tox核心概念

核心概念

Tox ID

public key

以下是一个典型Tox ID,你可以把他给一个好友。它是一个public key,nospan 值和校验值连接起来的十六进制格式字符串。最终结果就是上显示的76个字符的字符串。 public key bd

Public Key

public key 是由NaCl的crypto_box_keypair函数生成的。

它的介绍在这儿 。在当前的NaCl实现中,它是32个字节(64个16进制字符)。

nospan值

nospan值是一个随机生成的追加到public key上的数字。一个未带nospan值的好友请求会被忽略。

Category:

Linux桌面添加新的分辨率

xrandr --newmode "1680x1050" 147.1 1680 1784 1968 2256 1050 1051 1054 1087 +Hsync -Vsync
xrandr --addmode LVDS1 1680x1050

原来的和控制中没有这个分辨率,通过这两个命令,添加新的分辨率
然后可在KDE的"显示与监控”配置项中找到这个新的分辨率可以使用。

也可以继续使用xrandr命令,设置当前的显示分辨率,
xrandr --output LVDS1 --mode "1680x1050"
或者,
xrandr --output LVDS1 --mode "1920x1200"

原来的1920x1200的字段实在太小了。

16:10比例的其他分辨率:
"1440x900" 106.50 1440 1528 1672 1904 900 903 909 934 -hsync +vsync

页面

订阅 RSS - Document


Main menu 2

by Dr. Radut