Re: "Competitive Advantage with D" is one of the keynotes at C++Now 2017

2017-04-23 Thread Walter Bright via Digitalmars-d-announce

On 4/23/2017 5:04 AM, Guillaume Piolat wrote:

The rules of leak-free, exception-safe C++11 aren't so hard.
- single-owneship for everything, invent fake owner if needed
- std::unique_ptr for owning pointer, raw pointers for borrowed
  (unique_ptr neatly avoids to write a RAII wrapper for everything)

When teams internalize these rules, no more leaks, no more double-free, etc.
Hence Rust that sanctified this style.


The trouble is, one cannot look at a piece of code and tell if it follows the 
rules or not.


I.e. it's not about it being possible to write memory safe code in C or C++ (it 
is), it's about verifying an arbitrary piece of code as being memory safe.


mir.array.primitives and mir.bitmanip were added

2017-04-23 Thread 9il via Digitalmars-d-announce

Mir release v0.4.12 comes with simple but powerful API additions.

mir.array.primitives [1]
===
Added empty, front, back pop*[N/Exactly], length primitives.

Difference with Phobos:

1. Do not break LDC fastmath optimisations. (because they marked 
@fastmath) This is important for sci and numeric code.


2. Strings are just common arrays without decoding. 
std.uni.byCodePoint should be used explicitly to operate strings 
as ranges of chars.


3. Has ndslice-like API, e.g. `auto l = arr.length!0;` and `auto 
x = arr.front!0`. This is useful for generic multidimensional 
code that should work with arrays as with 1-dimensional ndslices.


mir.bitmanip [2]
===

Contains modified bitfields, taggedClassRef, taggedPointer from 
std.bitmanip. Authors are Walter Bright, Andrei Alexandrescu, 
Amaury SECHET. Ping me please if I missed someone.


Difference with Phobos:

1. Generated mixins are templates. This awesome for writing 
source libraries and betterC code. For examples size of Mir CPUID 
compiled in betterC mode was reduced few times after migration to 
mir.


[1] 
http://docs.algorithm.dlang.io/latest/mir_array_primitives.html

[2] http://docs.algorithm.dlang.io/latest/mir_bitmanip.html

Best reagards,
Ilya



Release dwtlib v1.0.1

2017-04-23 Thread JamesD via Digitalmars-d-announce

dwtlib - DUB package for the D Widget Toolkit

https://code.dlang.org/packages/dwtlib

DWT is a library for creating cross-platform GUI applications.
It's a port of the SWT Java library from Eclipse.

*Status*

WORKING Tested on:

- Windows 10 Home
- Ubuntu 16.04 LTS 32-bit
- DMD32 v2.073.0
- DUB v1.2.010

TODO:

- Test current versions of DMD/DUB (had some problems with DMD 
v2.074)

- Test 64-bit



Re: "Competitive Advantage with D" is one of the keynotes at C++Now 2017

2017-04-23 Thread Jacob Carlborg via Digitalmars-d-announce

On 2017-04-22 13:35, David Nadlinger wrote:


LDC officially supports shared libraries on macOS. -David


That's great.

--
/Jacob Carlborg


Re: "Competitive Advantage with D" is one of the keynotes at C++Now 2017

2017-04-23 Thread Guillaume Piolat via Digitalmars-d-announce

On Sunday, 23 April 2017 at 12:04:08 UTC, Guillaume Piolat wrote:

Hence Rust that sanctified this style.


And why it's not that interesting to the modern C++ programmer.



Re: "Competitive Advantage with D" is one of the keynotes at C++Now 2017

2017-04-23 Thread Guillaume Piolat via Digitalmars-d-announce

On Sunday, 23 April 2017 at 10:16:14 UTC, Walter Bright wrote:

On 4/11/2017 8:10 AM, Guillaume Piolat wrote:
Newer C++ almost erased leaks and memory errors if you follow 
it.


C and C++ don't have memory leaks if you are careful. The 
trouble is, there's no checking.


The rules of leak-free, exception-safe C++11 aren't so hard.
- single-owneship for everything, invent fake owner if needed
- std::unique_ptr for owning pointer, raw pointers for borrowed
  (unique_ptr neatly avoids to write a RAII wrapper for 
everything)


When teams internalize these rules, no more leaks, no more 
double-free, etc.

Hence Rust that sanctified this style.


LDC 1.2.0 has been released!

2017-04-23 Thread Kai Nacke via Digitalmars-d-announce

Hi everyone,

LDC 1.2.0, the LLVM-based D compiler, is available for download!
This release is based on the 2.072.2 frontend and standard 
library and supports LLVM 3.5-4.0.


We provide binaries for Linux, OX X, FreeBSD, Win32 & Win64, now 
bundled with DUB. :-)


As usual, you can find links to the changelog and the binary 
packages over at digitalmars.D.ldc:

http://forum.dlang.org/post/abqvibbcqaduxblyj...@forum.dlang.org

Regards,
Kai



Re: "Competitive Advantage with D" is one of the keynotes at C++Now 2017

2017-04-23 Thread Walter Bright via Digitalmars-d-announce

On 4/11/2017 8:10 AM, Guillaume Piolat wrote:

Newer C++ almost erased leaks and memory errors if you follow it.


C and C++ don't have memory leaks if you are careful. The trouble is, there's no 
checking.