Programming in D for Python Programmers
This section is under development, but in the meantime this link presents an independent perspective on D from the perspective of a python programmer:
- D is like Native Python
- AdRoll is known for their use of Python elsewhere, but their data scientists use D
Python's generators and list comprehensions have been thought to be two of the most difficult concepts to replicate in other languages. For the D solution to the problem solved by Python generators, see D Ranges and lazy evaluation. For list comprehensions, see UFCS.
- Theoretical article on ranges as a development of the iterator concept by the C++ guru, Dr Andrei Alexandrescu
- Introduction to Ranges by Ali Çehreli - Part I
- Introduction to Ranges by Ali Çehreli - Part II
- Introduction to D slices
- std.range structures and functions in the Phobos standard library
- std.algorithm generic functions in Phobos
- std.array
Parallel programming has become increasingly in focus as we approach the beginning of the end of the free lunch from Moore's Law. D makes multiprocessing and threading as simple as possible, but not simpler: