Skip to content
0:00 / 0:00

#dlang#aliçehreli#garbage-collection

C++Now 2017: Ali Çehreli “Competitive Advantage with D"

CppNow

39K subscribers • 47 videos on Hallway • Conference channel

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by Ali Çehreli
  • Linked in the descriptionboostcon/cppnow_presentations_2017
  • An opinion. It argues one side of a question engineers disagree on.

Intermediate. Assumes working knowledge.

11K views9 years ago1 recommendation

Programming languagesSystems programmingLanguage design and type systemsPerformance and optimizationMemory management

Ali Çehreli explains how the D programming language provides productivity and performance advantages over C++ for systems programming.

cppnow.org — Presentation Slides, PDFs, Source Code and other presenter materials are available at: github.com/boostcon/cppnow_presentations_2017 — D is a systems programming language with C-like syntax and static typing. It combines efficiency, control, and modeling power with safety and programmer productivity. Producing correct programs has notoriously been expensive in systems programming. Depending on the language used, programmers face a combination of labor and time intensive issues including struggling with language peculiarities, writing boilerplate code, code generation with difficulty or with external tools, manual resource management, and having to abide by long lists of coding guidelines. Correct programs further require prototyping sometimes with auxiliary languages and unit testing with external frameworks. It is not uncommon that readability and maintainability are sacrificed in the process. D has minimal historical baggage, outstanding compile-time capabilities, useful exceptions, compiler-guaranteed memory safety, internal unit testing, and optional garbage collector as parts of an extensive feature set. Its features spanning from the lowest to the highest levels of programming paradigms generally obviate auxiliary languages in production. This talk will give a general introduction of D, focusing mainly on its compile-time features like reflection, templates, code generation, conditional compilation, and user defined attributes; and present D as a time-saving software engineering tool suited for business requirements. Because C++ is such a powerful language and because C++Now attendees are master users of it, it will be hard to argue for a single feature of D that would make one prefer D over C++. We know that one can achieve almost any programming task in C++, D, or most other languages. The killer feature of D is that the whole package it delivers makes it easier to achieve those tasks. That is the competitive advantage that it brings to D users. — Ali has been working with C, C++, and D at various networking companies in Silicon Valley since 1996. His experience includes a fun stint at WekaIO, a high performance storage company that bases its technology entirely on D. Ali is the author of the book Programming in D, the secretary and board member of The D Language Foundation, former acting president of the Silicon Valley Chapter of the ACCU, an organizer of the Silicon Valley DLang meet-up group, and a team member of the revolutionary Mill CPU. — Videos Filmed & Edited by Bash Films: BashFilms.com

Why it's here

1 person recommends this

What people say. Recommended as a great summary of how D can be used effectively without its garbage collector.

Moments people linked to

u/zombinedevin r/programming • Recommends

On “Life in the Fast Lane -- using D without the GC”

> I find it really disappointing that D can't easily function without the garbage collector. I don't understand why are you coming to that conclusion. People are writing bare-metal kernels, real-time audio plugins, etc. in D, so surely D functions well without the GC. Just use smart pointers or manual memory management like you would in other systems programming languages. Ali made a great summary on dlang in his C++Now keynote - http://ddili.org/AliCehreli_CppNow_2017_Competitive_Advantage_with_D.no_pause.pdf link to this video

u/EdWilkinsonin r/programming • Mentions

On “C++Now 2017: Competitive Advantage with D”

Forgive the noob question. At 55:14 you say some uses but not all of the comma operator are eliminated. More detail please? How can the compiler tell the "good" uses from the "bad" uses?
6View on Reddit