The digest of events from the world D No. 2

Recently, there have been many publications on Habré on the topic of Rust and Go and quite a bit about D. The main reason for this is the support of these languages ​​Mozilla and Google, which can invest a lot of money in their offspring. Behind D is not a single equally large company, however, this does not prevent the language from actively developing. Now I will briefly talk about the latest news of the language and leave for someone else the opportunity to conduct a comprehensive comparison of Rust / Go and D.

1. First and foremost. D was finally converted from C ++ to D. itself. The event is extremely significant. This was not only an important step in the development of a holistic infrastructure, but also significantly simplified the development process. not all people interested in developing D know C ++. It should be noted that there was not a simple rewrite of the code, but a semi-automatic conversion of the entire DMD code base with C ++. And these are tens of thousands of lines of code (yes, DMD is not small). About how everything went, you can see in this video:



2. D is actively moving towards facilitating integration with C ++ code, which should simplify the process of switching C ++ programmers to D. At the moment, D is the only language that can provide almost seamless integration with existing C ++ code. Neither Rust nor Go can allow this. The movement comes both from the side of the official DMD compiler, and from the side of third-party LLVM-based compilers. It is reported that Walter Bright, concurrently author of the first C ++ compiler (working without intermediate translation in C), is actively working to support the handling of C ++ exceptions in D.

Integration with C ++ code is also actively promoted by the Calypso project , the first whose public release should take place very soon. Currently available for Linux userstest build , which allows you to build even such complex libraries as Qt5 and Ogre3D. Build for Windows will be available with the first public release. So what are we waiting for.

In general, the Calypso development plan is as follows:
Improving support for C ++ exceptions -> improving support for C ++ 11 -> MSVC support -> improving magicport2 (a tool for translating C ++ code to D) -> full Calypso bustrapping (to do not write binders for Clang) -> Calypso as a library for LLVM / Clang.

3. Actively working on support for mobile platforms. At the moment, it is reported that the language runtime and the Phobos library pass almost all tests on Android devices. One cannot speak of full support for iOS development, however, thanks to the efforts of the projectLDC-iphone simple D applications for iOS can be written today.

The same goes for the main DMD compiler, which in the latest version received basic support for Obj-C .

If everything goes at such a pace, then in the coming years D will open up a huge niche for mobile devices, which should have a beneficial effect on its popularity.

4. The non-profit organization D Language Foundation was established. The mission is to promote community D. The foundation is responsible for various processes within community D, including the development of a reference DMD compiler, intellectual property management, organization of developer conferences, including DConf, and fundraising

5. After much preventive work, it came back to lifedlang.ru

6. The vibed web framework has changed several versions and continued its course on increasing modularity.

7. Several books on programming in D. are being prepared for publication at once.

D Web Development

image

Learning D

image

A few months ago a wonderful book by Ali Çehreli “Programming in D” was published in paper form . I’ll add from myself that I highly recommend this book. Its free version can be found here .

8. D was written fastest Json parser in the world fast , overtook almost twice the fastest implementation Json parser in C ++.

image

9. Released full-fledged binning to the library of graphic applications SFML.

10. Updated binding to Qt / QML DOtherSide

Only registered users can participate in the survey. Please come in.

What primarily stops you from switching to D?

  • 3.6% There is a lack of full development support for mobile devices 6
  • 13.4% Not enough native and universal GUI 22
  • 3.6% Need integration with C ++ code 6
  • 48.4% I still doubt the future of language 79
  • 9.2% Not enough various tools (full-weight ORM, etc.) 15
  • 4.9% Not enough native libraries 8
  • 6.1% Already crossed, everything suits 10
  • 4.9% D is too low for me (I write in scripting languages). 8
  • 5.5% D is too high level for me (I am writing in C / Rust) 9

Also popular now: