Archive for June, 2006
Monday, June 26th, 2006
The D community has gone script crazy. Three new projects related to scripting languages have been created over at DSource recently (not to mention the discussions I’ve seen in the DSource forums and the D NG). Here’s a rundown of the new projects:
Jarrett Billingsley created MiniD. Rather than binding to an existing scripting language, he has opted to create one from scratch with an inspiration from D. Currently, MiniD has no license. Jarret is open to suggestions on licensing as well as development. Check out the project and give him your thoughts in the MiniD forum.
Kirk McDonald’s Pyd (pronounced “pied”) project is a wrapper around the Python API which aims to be for D what Boost.Python is for C++. In addition to the wrapper, the project provides a direct binding to the Python API for those who enjoy pain. I know that binding Python is no picnic, as I attempted to do so for Derelict some time ago and quickly gave up on it. If you are one of those “must… not…. use… braces” types, then give it a whirl and tell Kirk what you think.
And Anders I-Don’t-Know-His-Last-Name has started a project called DLua, for bindings to Lua 5.1. I don’t know anything about the project other than the fact that it’s there and there is source code in the repository.
There has also been talk of bindings for the Squirrel language. As soon as I hear of something concrete on that front I’ll be sure to let you know of it.
Technorati Tags: D Programming Language, Python, Lua, dsource.org, Squirrel
Posted in News | 1 Comment »
Saturday, June 24th, 2006
Build 3.02 is out, fixing some bugs that cropped up in the last couple of releases. There are still some issues on Linux, though. So if you are a Build user and know a thing or two about GCC, why not give Derek a hand?
Technorati Tags: D Programming Language, tools, utilities, Build
Posted in News | No Comments »
Friday, June 23rd, 2006
One of the reasons I was experimenting with policies earlier (1, 2) was to implement a policy-based free list I had seen in Game Programming Gems 5 in an article by Nathan Mefford of Firaxis (1.11 Improving Freelists with Policy Based Design). I’m fairly satisfied with the implementation I put together.
The implementation uses two policies as suggested in the article, one to determine how the free list should grow (the Growth Policy) and another to determine how it objects should be stored, allocated, and managed (the Allocation Policy). By default, I added two Growth policies and two Allocation policies to the freelist module. The allocation policies both store objects in a dynamic array and grow the array by manipulating its length property. The only difference between the two is how they handle object that are returned to the free list when it is full.
The two Growth policies can be combined with the two Allocation policies to cover most of the situations I could think of that I would most commonly want. I thought of several corner cases, but I didn’t implement default policies for those. If I need them later I can implement them separately on a case-by-case basis.
The module is part of a D game engine I am working on (who isn’t these days?), but having seen some talk about free lists over in the DSource forums I decided to release it here. While I will ultimately release the full engine under a BSD License, I am releasing the free list implementation in it’s current state into public domain. If you use it, be sure to add a module statement to the file to fit your project. For this release, I declared “module freelist;”. That leaves a potential for name collisions, so you should put it in your own package heirarchy. Change the name, change the implementation, do whatever you want with it. It’s public domain. Also, it hasn’t been fully tested. I tested an earlier version exhaustively, but made some heavy changes to it since. If you find any bugs in the documenation or the source, let me know if you want. I’m not supporting this release in any way, but bug fixes will help the version I evolve as part of my engine project.
Download freelist.d. I hope you find it useful.
Posted in Code | 1 Comment »
Wednesday, June 21st, 2006
bobef has reappeard in the D community with a new project at DSource, called rulesPlayer. It’s a graphical interface for the Windows version of MPlayer that he created with DWT. Give it a spin.
Technorati Tags: D Programming Language, DWT, dsource.org, MPlayer
Posted in News | No Comments »
Tuesday, June 20th, 2006
A dash of new features and a heaping helping of bug fixes. Go get it.
Technorati Tags: D Programming Language, DMD, Digital Mars, Walter Bright
Posted in DMD Releases | No Comments »