Pages

Sunday 25 March 2018

Overall Experience with D Language

The D language, more than anything, is addictive. Since embarking on D in December 2017, I have come to enjoy the language. There is no doubt that languages come and go, but for me, D will remain an important part of my programming tool sets.


To date, I have managed to achieve the following applications in D:
  • A REST server with MySQL backend (vibe.d)
  • A vibe.d based webserver with Diet templating
  • A SMTP based email sending script (CLI)
  • A PDF based report engine (CLI)

Developing all the above was as fun as programming in GoLang, Dart and even Lazarus Pascal. Incidentally, all these languages now command almost equal attention and most projects make use 2 of the languages. The language that has taken a bit of  knock is PHP - by all account D will gradually substitute PHP the codebase going forward.

Sofar all code has been developed targeting the Linux platform, in particular Ubuntu. However, some of the code is developed on Windows but compiled on Linux.

The initial challenges have been as follows:
  • Identifying a suitable IDE.
  • Figuring out the array of struct feature
  • Setting up Vibe-d environment
  • Finding information on the internet (The D Lang forums are a little difficult to follow)
  • Some unusually arcane if not painful language expressions, eg conversion of an integer to a string: to!string
Most of the coding was done in text editors. I have also made use of the Mono D plugin in the MonoDevelop IDE. Lately I am assessing the Coedit IDE (developed with object Pascal based Lazarus).

Learning D and understanding its strengths has not been always plain sailing. Having said that, the effort taken to solve any D related challenge end up being rewarding both in terms understanding its innards and as an indirect way to gain experience.
 

No comments:

Post a Comment