Tango 0.99.7 Dominik 今天放出
详细的发布公告:
http://www.dsource.org/projects/tango/wiki/0_99_7_release
最要紧的改进莫过于添加了新的 container 包了,不知是 tango.util.container 还是 tango.util.collection?
by oldrev 2008-07-25 浏览 (13) 回复 (0)
arcLib学习笔记——动画和绘图
从上一篇继续
首先还是需要创建Sprite和Frame animationImage是图像路径(char[])
animationFrame = new Frame(Texture(animationImage), Rect(70,496,70,124));
Rect的四个参数(起始点X坐标,起始点Y坐标,宽度,高度)单位:像素
priv ...
by redduke 2008-06-05 浏览 (287) 回复 (1)
一个生成伪log的程序……
有个朋友让我帮忙写个伪log的生成器。他提供了一个源log文件和一个配置文件,要每隔一段时间就向一个指定的路径上的log文件添加一些新生成的log。
要求是:
1、从配置文件读入参数,根据配置来决定时间间隔与输出log的路径;
2、从源log文件得到生成log的材料;
3、随机从源log里挑选几行出来,把它开头的时间信息替换成当前时间;
4、以固定的时间间隔向目标路径添加新生成的log,并要求不 ...
by RednaxelaFX 2008-05-19 浏览 (287) 回复 (0)
arcLib学习笔记——创建精灵
看了dsource上的Tank游戏源代码 基本了解代码结构 话说这arclib文档的更新速度实在是......不敢恭维
import arc.all;
import arc.scenegraph.all;
import arc.physics.all;
import arc.physics.shapes.all;
private Sprite sprite;
priva ...
by redduke 2008-05-07 浏览 (338) 回复 (3)
配置arclib Game Library
从去年开始关注起D 因为本人并不是程序员 所以唯一感兴趣的就是拿它做游戏 然后就看到了arclib 于是想装上试试 不过官网上的文档实在有点滞后 在配置上费了一些周折 我把这个过程写出来 希望对那些想要使用D和arclib的爱好者能够起到一点帮助:)
OS:windows XP SP2
需求:
...
by redduke 2008-05-04 浏览 (395) 回复 (4)
试用新版 Poseidon (trunk-r239)
以前,因为觉得一直没有这种有智能提示的IDE,想要自己写一个,也开始自己写语法分析器,后来才觉得,这种方法不可取,即使能写出兼容大多数 D 语法的分析器,然而要匹配 D 的各种版本,也是很麻烦,还不如直接使用 D 的前端来写。不过,使用 D 的前端也有一些困难,就是无法用 VC 编译,看了源代码,似乎是只支持 dmc 和 gcc 的,可能使用 gcc 编译成 dll 是一种比较好的方案。
...
by 梁利锋 2008-04-26 浏览 (452) 回复 (8)
使用C#的Generator编写并发程序
前面说地Generator编写并发程序的优势,当然它本身没有这种能力,需要为它编写调度程序。
今天抽点时间写了个简单的,还是满好玩的,它可以调度多个“友好”的并发任务,包括:
1、用户自己编写的适时交出控制权的过程
2、网络IO
由于对C#不是很熟,所以写的可能比较难看,而且IO也只支持网络,有兴趣的可以研究改进一下,比如把它改成SMP版本,增加Actor模型,处理更多的IO模式等。
实现方 ...
by qiezi 2008-04-18 浏览 (752) 回复 (1)
D新闻组里的天才代码
超猛的代码,刚才逛新闻组刚看到的,随便记录一下。
出自:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=68681
import std.stdio;
import std.traits;
//检测整数操作溢出,不过对性能的影响比较大,lazy 关键字的标 ...
by oldrev 2008-03-30 浏览 (1603) 回复 (2)
JavaScript Comment Templates 我的js模板工具
让JavaScript来做模板解析工作吧!
http://code.google.com/p/jsct/
历史:
2008.4.5 jCT 2.0 Bate 放出
by achun 2008-03-28 浏览 (546) 回复 (6)
给纯文本型编程文档加上高亮着色
作为程序员写代码还要写文档,真的很累
虽然有专业的DOCxxx工具,不过写起文档来总是和代码在一起.
如果我们要单独写个文本文档给别人看得话.一片黑乎乎的似乎很难看,
其实更多的时候是给自己看得.
想用简单的方法给自己的稳定着色么?
我这里有个简单的方法: 写个适用于编程文档的语法高亮模板就行了
怎么做?
...拿Editplus为例子...
file: dop.stx
;-------- ...
by achun 2008-03-14 浏览 (508) 回复 (1)
让人目瞪口呆的三位世界级电脑大师
1.公元1998年在我讀高二那年,那还是我用Windows 98的时候有次我系统崩溃了,
因为我那时还是个电脑白痴,我同学帮我介绍了一个电脑高手来帮我修电脑。
他看了一下电脑,问我有没有Windows 98 的光盘?,我说没有。
他想了一下,叫我把家里电话拿给他,我心里想说修电脑要电话干什么?
但人家是电脑高手,我也不好意思说什么,就把电话拔下来给他了。
他把 电话线空着的一头接在主机版的 ...
by justjavac 2008-03-10 浏览 (1038) 回复 (9)
我心中最伟大的程序员
菲利普·卡兹 2000年4月14日,在美国威斯康星州密尔沃基的一家汽车旅馆里,人们发现了一具年轻人的尸体,检查得知这个人的死因是酗酒、饮酒过量导致的死亡。死者被发现的时候,手中还握着一个空酒瓶,房间中还有五个空酒瓶。这样一个酒徒的死也许在平时只是地方小报上的一条不起眼的新闻,但这个人的死却在互联网上掀起了轩然大波。无数人在网上发表评论与文章,纪念他的离开,寄托人们的哀思,因为他不是 ...
by justjavac 2008-03-10 浏览 (1421) 回复 (9)
ANSI和Unicode练习后记
首先,再次问候大家,春节好!祝愿D语言社区兴旺发达,祝愿JavaEye蒸蒸日上!
在前文中,已经讨论了如何调用ANSI和多字节的函数。本文目的是关于在D中如何更好应用。当然,很多人认为完全可以使用宽字符的函数,但是,有时候,你要调用的函数是ANSI函数(例如WinExec,仅仅有ANSI版本,不支持Unicode,当然你可以使用麻烦的ShellExecuteEx),你就必须了解Unicode的相 ...
by ideage 2008-02-10 浏览 (636) 回复 (3)
D 语言的子集的 Z 编译器
把 D 语言的语法规则改写成 ANTLR 的语法脚本后,大概有30多K,编译的时候,出了很多的错误,最后内存溢出了。想一想,也是,一来我对 ANTLR 还不熟,二来,Digit Mars 上的 D 语言语法介绍,很多左递归,有几个没有定义的过程,两个拼写错误,一个同名不同义的过程等等。在这种情况下,30多K的语法脚本想要很快的就编译通过,是很困难的。
所以,还是决定用 ANTLR 实现一 ...
by 梁利锋 2008-01-18 浏览 (735) 回复 (3)
D语言的两个日期函数
//日期格式为数字 如 20080901
//By zsp007@gmail.com
///验证是否是有效日期
bool date_validate(T)(T date)
{
static T daysOfMonth[] = [0,31,28,31,30,31,30,31,31,30,31,30,31];
T monthDay = date % 10000;
...
by zuroc 2008-01-17 浏览 (2153) 回复 (0)
d语言写的一个简单的sql生成器
简陋的封装了一些单表操作
源代码
template eval( A... )
{
const typeof(A[0]) eval = A[0];
}
char[] escape(char[] c){
return "\""~c~"\"";
}
char[] column_def(char[] temp){
return "typeof(this) " ~ ...
by zuroc 2008-01-16 浏览 (1900) 回复 (0)
<<Learn to Tango with D>>下载
Apress.Learn.to.Tango.with.D.Jan.2008.pdf
Learn to Tango with D is a book about the D programming language and the Tango software library. It became available as an eBook 7th of January 2008, whereas ...
by zuroc 2008-01-15 浏览 (1858) 回复 (5)
用 ANTLR 做一个四则运算器
开始把 D 的语法转换为 EBNF,发现 D 还支持中文变量名,也就是所谓的 UniversalAlpha,查看了一下 dmd front end 的源代码,检查字符是否 UniversalAlpha 的函数是这样的: int isUniAlpha(unsigned u)
{
static unsigned short table[][2] =
{
{ 0x ...
by 梁利锋 2008-01-15 浏览 (806) 回复 (2)
D Parser 之前(三):Z 语言编译器
终于把 Z 语言的编译器做完了。意外的在四则运算上耽误了很多时间,发现 Grammatica 的四则运算的例子其实是右结合的,费了很大劲才解决了。现在觉得 Grammatica 的完整度好像不是很高,比如没有帮助建立抽象语法树的工具之类。也许 ANTLR 会好一点儿吧。 重新整理了目录,把生成的程序放到了 bin 目录下,建立了一个 build.bat 的批处理,用来把 z 编译 ...
by 梁利锋 2008-01-11 浏览 (630) 回复 (3)
D Parser 之前(二):汇编编译器
在《D Parser 之前:写一个简单的虚拟机》里,其中计算 1 到 100 之和的程序 add.bin,是使用十六进制编辑器直接编辑出来的。虚拟机制作完后,考虑了一下,如果直接写 Z 的编译器,难度还是不小,所以决定,先写一个汇编语言的编译器,实现从汇编代码到机器代码的编译工作。 大体来说,汇编编译基本上是一条一条对照生成,不过,行号的需求使得其中多了一些复杂性,另外,我还决定 ...
by 梁利锋 2008-01-08 浏览 (644) 回复 (0)
D Parser 之前:写一个简单的虚拟机
最近写了一点儿 D 程序,除了感觉标准库太差之外,没有一个好的 IDE 也是一个很头疼的事,特别是没有智能提示,每次调用一个函数什么的,都要查文档或者直接看源代码,实在是太费劲了。 所以决定自己尝试写一个支持智能提示的 D 的 IDE。因为 SharpDelelop 比较小,而且它对 C# 的支持也做到了智能提示、窗体编辑器等等,所以决定用它作为主框架,除了智能提示,也许还能加入 ...
by 梁利锋 2008-01-06 浏览 (1609) 回复 (26)
DMD的诡异"Previous Definition Different"错误
我用poseidon新建一个全新工程
编译参数加入-g(就是加入调试信息),
试一试如下代码,就会有如"Previous Definition Different"
代码:
import std.c.windows.windows, std.c.windows.winsock;
static this(){
WSADATA wd;
}
int main (){
htons(9 ...
by zuroc 2007-12-16 浏览 (655) 回复 (5)
D语言学习笔记(1)——编译和运行环境和hello程序
最近在CSDN上看到有提到一个D语言,仔细看了一下网上的资料之后,发现这个确实是个好东西! 这个语言集合了C、java和一些脚本语言如ruby的很多优点,同时抛弃了很多C++的缺点。感觉最直接的,一个是彻底抛弃C/C++的include 头文件,而采用了类似java的包管理机制,另外一个是彻底抛弃了C/C++的宏替换和源代码预处理过程,使得编译的速度大大提高而且减少了由于不正确使 用宏替换带来的隐 ...
by yyquick 2007-11-26 浏览 (569) 回复 (3)
mixin 模拟多继承
D1.0 代码
/** TupleMixin 演示程序, DMD2.007/GDC0.24 测试通过
Written in the D programming language 1.0
作者: oldrev
Copyrights: BSD
*/
import std.stdio;
...
by oldrev 2007-11-10 浏览 (2502) 回复 (1)
lambda之路...
DMD最近的版本号加入了闭包,感觉非常有用,虽然有些背后动作,不过我是实用派不介意这个。玩的时候忽然想到为什么没有lambda呢?AST还没影,不过可以利用D强大的模板可以使用字符串来先模拟一下。
我假想的语法是这样的:
int[] arr = [1,2,3];
int[] arr1 = arr.map(lambda!("int x -> x * x"));
上面执行的arr1结果将 ...
by qiezi 2007-11-09 浏览 (1498) 回复 (15)
简单的 C to D 转换 Ruby 脚本
今天晚上费了点脑筋写了一个简单的 C2D 转换脚本,大致实现了函数申明、全局变量、typedef、enum、struct 和数组的转换,但是还不支持预处理、union、调用约定等。
ruby 代码
#!/bin/ruby
require 'rexml/document'
  ...
by oldrev 2007-10-24 浏览 (2516) 回复 (9)
D语言的IOCP(完成端口)例子
在WindowsNT平台上,最具有伸缩性和吞吐量的网络服务器程序都使用了完成端口。为了在D中使用完成端口,我写了这个简单的例子。希望大家指正!
在DMD1.020-1.022,WindowsXP,编译测试通过。
没有使用std.socket,因为std里面的socket实现不能使用重叠IO。
D 代码
// D Program L ...
by ideage 2007-10-20 浏览 (2012) 回复 (9)
结合自己接触的编程语言,写点最近接触C#与D之后的感想
这个学期开始后,我主要使用的程序语言发生了不小的改变,从以Java为主转移到了以C#为主.然后,在国庆期间开始确实的接触D语言,阅读了语言规范与一些范例代码.生活所迫,现在实在不能继续向D语言投入更多的精力,需要暂时将它再封印起来.但这段时间所看到的和感受到的不能不记录下来,不然时间就真的是浪费了.
这里要记录的,是结合我的个人在编程方面走过的轨迹,观察Java, C#与D的一些特点.只代表从我 ...
by RednaxelaFX 2007-10-15 浏览 (3563) 回复 (20)
D1.0代码模拟 __traits(hasMember, ...)
通过1.0的代码完全模拟了 D 2.0 __traits(hasMember...) 和部分 getMember 的功能:
import std.stdio;
template HasMember(T, string member) &nbs ...
by oldrev 2007-10-08 浏览 (3674) 回复 (14)

