www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.announce - trimcheck, dhcptest, RABCDAsm

reply "Vladimir Panteleev" <vladimir thecybershadow.net> writes:
Over the past few years, I've released a few programs written in 
D which I've never announced here before, since they were not 
targeted at D programmers. Some of them seem to have caught on 
with some degree of popularity.

After seeing the recent DMD download stats, I thought to check 
the stats for my downloads, and was pleasantly surprised to find 
them higher than I expected. So, it's probably as good a time as 
any to post about these programs here. Perhaps someone can find 
something useful in their source code, or use them as examples of 
D code in the wild.

1. trimcheck

This is a Windows program which attempts to provide an easy way 
to test whether the TRIM command reaches your SSD. It is useful 
for testing various driver/firmware versions and RAID 
configurations, as the TRIM command may or may not be properly 
forwarded at each layer to the next.

trimcheck has been featured on a few hardware news websites, 
including The SSD Review and TweakTown.

trimcheck currently consists of a single .d file, 468 lines long. 
It is not a very complicated program, and uses few D-specific 
features, though the scope statements were a welcome aid in 
cleanly handling Windows resources.

trimcheck is licensed under the MPL 2.0, and gets about 200 
downloads per day.

https://github.com/CyberShadow/trimcheck

2. dhcptest

dhcptest is a cross-platform DHCP client and testing tool. 
Although it started out as an interactive test tool, a stream of 
feature requests have also grown it into a non-interactive DHCP 
client (which prints received replies, as opposed to applying 
them onto the host system's network configuration).

dhcptest currently also consists of a single .d file, 711 lines 
long. std.format's capabilities were useful for presenting sent 
and received data, but otherwise it is also relatively simple.

dhcptest is licensed under the Boost Software License 1.0. The 
Windows binary is downloaded about 50 times every day.

https://github.com/CyberShadow/dhcptest

3. RABCDAsm

RABCDAsm, one of my oldest D projects, is an ABC (ActionScript 
Byte Code) assembler and disassembler. ABC is the bytecode format 
used in .swf files for compiled ActionScript 2 and 3 code, and in 
the Adobe Flash runtime, interpreted by the ActionScript Virtual 
Machine.

RABCDAsm currently consists of 10 programs across 20 modules, 
totaling 8488 lines of code. It makes use of several D features, 
including compile-time reflection and code generation for 
automatic toHash/opEquals/opCmp/toString implementations for its 
numerous data structures.

RABCDAsm has been included in the REMnux Linux distribution ("A 
Linux Toolkit for Reverse-Engineering and Analyzing Malware"), 
and is also available as an Arch Linux package (rabcdasm-git).

RABCDAsm is licensed under the GPLv3 or later. The Windows binary 
package is downloaded about 20 times per day.

https://github.com/CyberShadow/RABCDAsm

4. Very Sleepy

This is not a D project, but I would like to include it here as 
well. This is a fork of the Very Sleepy polling Windows profiler, 
previously maintained by Richard Mitton, with a number of 
improvements. Although it still chiefly targets C/C++ programs, 
I've used it for (and improved it to work better with) D code: it 
should work well with D programs compiled with PDB debug 
information (which you can create with DMD using -m64, -m32coff 
or Rainer's cv2pdb program).

The profiler is licensed under GPLv2 or newer, and enjoys a 
steady trickle of 3-4 downloads per day.

https://github.com/CyberShadow/verysleepy
Jan 16 2015
parent Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 1/16/15 7:56 AM, Vladimir Panteleev wrote:
 Over the past few years, I've released a few programs written in D which
 I've never announced here before, since they were not targeted at D
 programmers. Some of them seem to have caught on with some degree of
 popularity.

 After seeing the recent DMD download stats, I thought to check the stats
 for my downloads, and was pleasantly surprised to find them higher than
 I expected. So, it's probably as good a time as any to post about these
 programs here. Perhaps someone can find something useful in their source
 code, or use them as examples of D code in the wild.
[snip] Nice work, shared: https://www.reddit.com/r/programming/comments/2sn2cm/three_utilities_written_in_d/ https://twitter.com/D_Programming/status/556125342835159040 Andrei
Jan 16 2015