Re: Is D programming friendly for beginners?

2024-03-12 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 11 March 2024 at 12:30:10 UTC, Doigt wrote:

On Monday, 4 March 2024 at 13:37:53 UTC, Fidele wrote:
I want to start learning D programming language it looks 
interesting


Depends what you mean by "beginner". If you've never programmed 
before and D is your first language, then the answer is a 
definite no.


Why definitely not?

https://youtu.be/V2YwTIIMEeU?si=j3cQzzN4jsUQrN9C=682

-- Bastiaan.


Re: Fluid 0.6.0 — UI library for D

2024-01-31 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 31 January 2024 at 06:38:17 UTC, aberba wrote:

On Thursday, 25 January 2024 at 12:33:31 UTC, cookiewitch wrote:
Fluid is a library I started developing 3 years ago when I 
joined the D community, after failing to find a suitable 
library for my gamedev project.

[...]


Could you have a small documentation website? Could even be 
based on something like GitHub pages or readthedocs 
(https://readthedocs.io).


There is this https://fluid.dpldocs.info/v0.6.1/fluid.html and  
https://fluid.dpldocs.info/v0.6.1/fluid.showcase.html.


-- Bastiaan.


Re: Upcoming talk at FOSDEM 2024 - The D Programming Language for Modern Open Source Development

2024-01-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 15 January 2024 at 00:49:25 UTC, matheus wrote:

On Sunday, 14 January 2024 at 23:16:40 UTC, Mike Shah wrote:

Hi D Community,

My talk on how I'm using the D programming language and why I 
think it is an excellent language choice for open source 
projects will be featured at FOSDEM 2024 at the start of 
February 2024 in Brussels, Belgium.


Look out for the official talk schedule(in the Main Track) 
here: https://fosdem.org/2024/schedule/events/




[...]

Hi Mike are you sure the link is right, or you're on that list? 
- I tried "D Programming", your name (And only Surname) but I 
couldn't find anything.


This is the link: 
https://fosdem.org/2024/schedule/event/fosdem-2024-2092-the-d-programming-language-for-modern-open-source-development/


-- Bastiaan.



Re: Upcoming talk at FOSDEM 2024 - The D Programming Language for Modern Open Source Development

2024-01-16 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 15 January 2024 at 00:49:25 UTC, matheus wrote:

On Sunday, 14 January 2024 at 23:16:40 UTC, Mike Shah wrote:

Hi D Community,

My talk on how I'm using the D programming language and why I 
think it is an excellent language choice for open source 
projects will be featured at FOSDEM 2024 at the start of 
February 2024 in Brussels, Belgium.

[...]
Look out for the official talk schedule(in the Main Track) 
here: https://fosdem.org/2024/schedule/events/



Hi Mike are you sure the link is right, or you're on that list?


The main track in that link is still empty. Here is a link for 
just the main track, also empty: 
https://fosdem.org/2024/schedule/track/main/


You'd think the main track has been finalized by now (it is only 
18 days until the start of the conference) and since all other 
rooms have plenty of entries already, this list being empty seems 
like a malfunction to me.


-- Bastiaan.


Re: Beta 2.107.0

2024-01-06 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 2 January 2024 at 12:49:51 UTC, Iain Buclaw wrote:

http://dlang.org/changelog/2.107.0.html



**@standalone** is a new attribute that can be used to mark 
module constructors that run after druntime has been 
initialized, but do not depend on any other module constructors 
being run before it, so it will not cause a cyclic dependency 
error.


Nice!!

--Bastiaan.


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-12 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 11 December 2023 at 19:55:38 UTC, Timon Gehr wrote:

... this successfully injects alloca into the caller's scope.

```d
import core.stdc.stdlib:alloca;
import std.range:ElementType;
import core.lifetime:moveEmplace;

struct VLA(T,alias len){
T[] storage;
this(R)(R initializer,return void[] 
storage=alloca(len*T.sizeof)[0..len*T.sizeof]){

this.storage=cast(T[])storage;
foreach(ref element;this.storage){
assert(!initializer.empty);
auto init=initializer.front;
moveEmplace!T(init,element);
initializer.popFront();
}
}
ref T opIndex(size_t i)return{ return storage[i]; }
T[] opSlice()return{ return storage; }
}

auto vla(alias len,R)(R initializer,void[] 
storage=alloca(len*ElementType!R.sizeof)[0..len*ElementType!R.sizeof]){

return VLA!(ElementType!R,len)(initializer,storage);
}

void main(){
import std.stdio,std.string,std.conv,std.range;
int x=readln.strip.to!int;
writeln(vla!x(2.repeat(x))[]);
}
```


You guys are great!


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-11 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 10 December 2023 at 22:59:06 UTC, Nicholas Wilson 
wrote:
Always happy to help if you're interested in looking into using 
dcompute.


Thank you, I'll let you know!

Or you could use grep with `--output-ll` as noted by Johan 
https://github.com/ldc-developers/ldc/issues/4265#issuecomment-1376424944 although this will be with that `workaroundIssue1356` applied.


Thanks for highlighting this, as I must have forgotten. I should 
be able to create a CI job that checks this as part of the 
release. This will give us the confidence that we need.


-- Bastiaan.


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-10 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 10 December 2023 at 18:16:05 UTC, Nick Treleaven wrote:
You can call `alloca` as a default argument to a function. The 
memory will be allocated on the caller's stack before calling 
the function:

https://github.com/ntrel/stuff/blob/master/util.d#L113C1-L131C2

I've just tested and it seems it works as a constructor default 
argument too.


Clever!


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-10 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 10 December 2023 at 17:11:04 UTC, Siarhei Siamashka 
wrote:
On Sunday, 10 December 2023 at 15:08:05 UTC, Bastiaan Veelo 
wrote:
The compiler can check if `scope` delegates escape a function, 
but it only does this in `@safe` code --- and our code is long 
from being `@safe`. So it was a bit of a puzzle to find out 
which arguments needed to be `scope` and which arguments 
couldn't be `scope`.


This reminded me of 
https://forum.dlang.org/thread/myiqlzkghnnyykbyk...@forum.dlang.org
LDC has a special GC2Stack IR optimization pass, which is a 
lifesaver in many cases like this.


Interesting.

Are there some known blocker bugs, which prevent a safe usage 
of LDC in production?


This one: https://github.com/ldc-developers/ldc/issues/4265

Mike has summarized it:
LDC unfortunately had an issue that caused stack corruption on 
32-bit Windows. They'd hit it in one case and were able to work 
around it, but he couldn't be sure they wouldn't hit it 
somewhere else. He wasn't willing to risk unreliable 
computations.


He said that LDC could do the right thing, but his 
understanding from talking to Martin was that implementing it 
would have a large time cost. Since Win32 is going to 
eventually go away, he wasn't very keen on paying that cost. 
They'd spoken at DConf about the possibility of LDC raising 
compilation errors when stack corruption could occur so that 
they could then work around those cases, but he hadn't followed 
up with Martin about it.


-- Bastiaan.


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-10 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 10 December 2023 at 15:31:55 UTC, Richard (Rikki) 
Andrew Cattermole wrote:


It will be interesting to hear how dcompute will fare in your 
situation, due to it being D code it should be an incremental 
improvement once you're ready to move to D fully.


Yes, dcompute could mean another leap forward. There are so many 
great things to look forward to.


-- Bastiaan.


Re: D Language Foundation October 2023 Quarterly Meeting Summary

2023-12-10 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 6 December 2023 at 16:28:08 UTC, Mike Parker wrote:

Bastiaan reported that SARC had been testing their D codebase 
(transpiled from Pascal---[see Bastiaan's DConf 2019 
talk](https://youtu.be/HvunD0ZJqiA)). They'd found the 
multithreaded performance worse than the Pascal version. He 
said that execution time increased with more threads and that 
it didn't matter how many threads you throw at it. It's the 
latter problem he was focused on at the moment.


I have an update on this issue. But first let me clarify how 
grave this situation is (was!) for us. There are certain tasks 
that we, and our customers, need to perform that involves a 20 
logical core computer to crunch numbers for a week. This is 
painful, but it also means that a doubling of that time is 
completely unacceptable, let alone a 20-fold increase. It is the 
difference between in business and out of business.


Aside from the allocation issue, there are several other 
properties that our array implementation needs to replicate from 
Extended Pascal: being able to have non-0 starting indices, 
having value semantics, having array limits that can be 
compile-time and run-time, and function arguments that must work 
on arrays of any limits, also for multi-dimensional arrays. So 
while trying to solve one aspect, care had to be taken not to 
break any of the other aspects.


It turned out that thread contention had more than one causes, 
which made this an extra frustrating problem because just as we 
thought to have found the culprit, it did not have the effect 
that we expected.


These were the three major reasons we were seeing large thread 
contention, in no particular order:


1) Missing `scope` storage class specifiers on `delegate` 
function arguments. This can be chalked down as a beginner error, 
but also one that is easy to miss. If you didn't know: without 
`scope` the compiler cannot be sure that the delegate is not 
stored in some variable that has a longer lifetime than the stack 
frame of the (nested) function pointed to by the delegate. 
Therefore, a dynamic closure is created, which means that the 
stack is copied to new GC-allocated memory. In the majority of 
our cases, delegate arguments are simple callbacks that are only 
stored on the stack, but a select number of delegates in the GUI 
are stored for longer. The compiler can check if `scope` 
delegates escape a function, but it only does this in `@safe` 
code --- and our code is long from being `@safe`. So it was a bit 
of a puzzle to find out which arguments needed to be `scope` and 
which arguments couldn't be `scope`.
2) Allocating heap memory in the array implementation, as 
discussed in the meeting. We followed Walter's advice and now use 
`alloca`. Not directly, but using string mixin's and static 
member functions that generate the appropriate code.
3) Stale calls to `GC.addRange` and `GC.removeRange`. These were 
left over from an experiment where we tried to circumvent the 
garbage collector. Without knowing these were still in there, we 
were puzzled because we even saw contention in code that was 
marked `@nogc`. It makes sense now, because even though 
`addRange` doesn't allocate, it does need the global GC lock to 
register the range safely. Because the stack is already scanned 
by default, these calls were now superfluous and could be removed.


So now all cores are finally under full load, which is a 
magnificent sight! Speed of DMD `release-nobounds` is on par with 
our Pascal version, if not slightly faster. We are looking 
forward to being able to safely use LDC, because tests show that 
it has the potential to at least double the performance.


A big sigh of relief from us as we have solved the biggest hurdle 
(hopefully!) on our way to full adoption of D.


-- Bastiaan.


Re: New DUB documentation

2023-11-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 24 November 2023 at 11:11:53 UTC, BoQsc wrote:
Darker blending indistinct colors (dark red, dark background), 
way smaller fonts.


I see your screenshots, but that is not what it looks like for me 
in Chrome on Windows. I am seeing black text on white background 
with red links. Pretty much like the rest of the D web ux. Is 
there a dark theme you have enabled?


The font does look slightly smaller, though.

-- Bastiaan.


Re: New DUB documentation

2023-11-23 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 22 November 2023 at 21:35:34 UTC, WebFreak001 wrote:
the revamped DUB documentation I started a while ago is now 
deployed on https://dub.pm


This is very much appreciated. A job well done!

-- Bastiaan.


Re: Beta 2.103.0

2023-03-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 2 March 2023 at 16:40:12 UTC, jmh530 wrote:

Any reason why it doesn't match the options from DMD?


See the 
[changelog](https://dlang.org/changelog/2.103.0.html#colors):
The previous **automatic**, **on**, **off** values are still 
supported, but undocumented, because they are used in almost no 
other program like this. For consistency, with other Linux 
tools especially, we have implemented and switched the defaults 
to the widely-used **auto**, **never**, **always** values.


Re: Safer Linux Kernel Modules Using the D Programming Language

2023-01-07 Thread Bastiaan Veelo via Digitalmars-d-announce
On Thursday, 5 January 2023 at 20:24:07 UTC, Alexandru Militaru 
wrote:

Hi everyone,

If you remember the "D for a @safer Linux Kernel“ talk from 
DConf 2019 [1], then you might want to read our paper [2] on 
that matter that was just published in IEEE Access Journal.



[1]  https://youtu.be/weRSwbZtKu0
[2] https://ieeexplore.ieee.org/document/9987502


Kudos to you for staying on the ball on this topic. I enjoyed 
your talk back then and this article adds credibility to this 
important application of the language and addresses a wider 
audience. Well done.


Bastiaan.



Re: Beta 2.102.0

2023-01-04 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 2 January 2023 at 12:21:43 UTC, Hipreme wrote:

`pragma(lib)` seems to be broken


Can you file an issue for this please, if you've not done so yet? 
https://dlang.org/bugstats.html


-- Bastiaan.


Re: D Language Foundation October 2022 Quarterly Meeting Summary

2022-11-04 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 2 November 2022 at 18:20:42 UTC, H. S. Teoh wrote:
On Wed, Nov 02, 2022 at 06:11:12PM +, M. M. via 
Digitalmars-d-announce wrote:
Thank you to Martin Nowak for all his as release manager. 
Happy to hear that someone like Ian took over.


I'm just curious why Martin stepped down. If he doesn't mind 
sharing the reason.


From what I've heard, Martin started his own business, which 
takes up all his time.


Wishing you success, Martin!

-- Bastiaan.


Re: D Language Foundation July 2022 Quarterly Meeting Summary

2022-09-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 28 August 2022 at 10:37:03 UTC, Mike Parker wrote:

This summary is quite a bit overdue. Sorry for the delay.


Thanks for this, and for keeping all the details. Good work!

— Bastiaan.



Re: D Language Foundation July 2022 Quarterly Meeting Summary

2022-09-02 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 28 August 2022 at 11:04:45 UTC, Steven Schveighoffer 
wrote:

On 8/28/22 6:37 AM, Mike Parker wrote:
SARC has marked a major milestone in that their 500KLOC 
Extended Pascal codebase has been completely transcompiled to D


This is awesome! I remember that talk, and it was very 
interesting.


Congratulations!

-Steve


Thank you!

The process takes several times longer than anticipated, but we 
are not giving up :-)


Although it is an important milestone, it doesn’t mean we can now 
all code in D. Almost all commits still happen in Pascal. I have 
started transpiling every commit separately, to create a commit 
history in D that overlaps the Pascal history for some period.


Next week we plan on using the D versions of our software 
internally, to expose a larger surface area to testing and 
scrutiny. This is arguably a bigger milestone.


What we all look forward to the most is the last milestone 
though, where we’ll freeze the Pascal repository and switch from 
programming in Pascal to programming in D overnight.


— Bastiaan.


Re: New WIP DUB documentation

2022-08-18 Thread Bastiaan Veelo via Digitalmars-d-announce
On Thursday, 18 August 2022 at 14:00:38 UTC, Martin Tschierschke 
wrote:
What about the following idea about **comments for dub.json**: 
Allow the key "comment" inside the json file and alter DUB to 
remove all "comment" key value pairs at the beginning of 
parsing.
So the file is still valid json but comments are possible like 
in dub.sdl.

```
{
"comment" : "dub.json can contain comments,too!",
"name": "myproject",
"description": "A little web service of mine.",
"authors": ["Peter Parker", "John Doe"],
"homepage": "http://myproject.example.com;,
"license": "GPL-2.0",
"dependencies": {
"vibe-d": "~>0.9.5"
}
}
```


That's already possible, as unrecognised items are ignored. This 
is however not flexible enough, as comments are not so much 
wanted for adding explanations but much more for commenting out 
specific parts. It does work sometimes: you can for example 
disable `preBuildCommands` by editing it to 
`preBuildCommandsDISABLED`. I don't think you can comment out a 
dependency this way, and you cannot comment out an item from an 
array like

```json
{
"preBuildCommands": [
"step one",
#"step two",
"step three"
]
}
```

-- Bastiaan.


Re: New WIP DUB documentation

2022-08-18 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 15 August 2022 at 21:32:23 UTC, WebFreak001 wrote:
Hi all, I'm currently working on new revamped DUB 
documentation, check it out if you want, it currently contains 
most old documentation plus a big bunch of new documentation:


https://docs.webfreak.org/


Thank you for doing this!

Not sure if this would be the right place, or if it is addressed 
already, but I repeatedly find myself looking for the right way 
to use a local checkout of a package instead of the dub registry, 
because I keep forgetting. It would be nice to have a section 
like (assuming I got it right):


## Hacking on a local copy of a package

If your project depends on a package in which you have found a 
problem, or you would like to experiment with changes to it, you 
can force Dub to use a local copy of the package by following 
these steps:


1. Fork the git repository
2. Check out a local clone at `/path/to/the_package`
3. Let Dub know about it:
   `dub add-local /path/to/the_package`
4. Make Dub ignore any configured release tag, so you'll see the 
effect of current changes:

   `dub add-override the_package * /path/to/the_package`

Now you can go ahead and play. Once your PR has been merged and 
released, or you want to revert to upstream, undo your changes by


5. `dub remove-local /path/to/the_package`
6. `dub remove-override the_package *`


-- Bastiaan.


Re: DConf '22 Livestream Links

2022-08-01 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 1 August 2022 at 12:45:56 UTC, Matheus wrote:

On Monday, 25 July 2022 at 13:52:51 UTC, Mike Parker wrote:
For those of you who can't join us in person at DConf '22 in 
London next week, you can join us instead via each day's 
livestream link:


* Day 1: https://youtu.be/V6KFtzF2Hx8


Anyway I accessed the link and I don't know if it is a youtube 
limit, but as far I can go back, it starts with Walter talking 
about Octals. Was it the first part missing or is it a limit?


The first part is missing due to a late click on the “go live” 
button. I assume the footage is still recorded, and will be part 
of the edited video.


— Bastiaan.



Re: [i18n] Gettext 1.0.1 released

2022-07-20 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 19 July 2022 at 20:20:29 UTC, Ogi wrote:

Is this tested on Windows?


Yes, it is developed on Windows. Do the included tests work for 
you?



```
Target is a library. Skipping execution.
```
That is not right. Are you developing a library or an 
application? If you cannot get it to work, feel free to [open an 
issue](https://github.com/veelo/gettext/issues) and include your 
`dub.json`.


-- Bastiaan.


Re: Blog post on extending attribute inference to more functions

2022-07-18 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 17 July 2022 at 18:33:47 UTC, AnimusPEXUS wrote:
I've just coded something and come with the idea of 
@todo/@fixme/@issueid attributes, so compiler write messages 
each time it finds those. Just as a thought.. maybe It can be 
useful, although it's already can be done with pragma(msg, 
"txt")..


I abuse `@deprecated` for that purpose in my own code, to remind 
myself of some holes that need patching.


— Bastiaan.


[i18n] Gettext 1.0.1 released

2022-07-18 Thread Bastiaan Veelo via Digitalmars-d-announce
Two years ago, H. S. Teoh presented a proof of concept for 
[automatic extraction of gettext-style translation 
strings](https://forum.dlang.org/post/mailman.2526.1585832475.31109.digitalmar...@puremagic.com). I recently combined that idea with the existing [mofile](https://code.dlang.org/packages/mofile) package for reading translation tables in GNU gettext format, and the result is a feature rich solution for the support of multiple natural languages in D applications: https://code.dlang.org/packages/gettext. Perhaps not surprisingly, it can do more than GNU gettext itself.


I'd like to thank Steven Schveighoffer and Adam Ruppe for 
[valuable forum 
assistance](https://forum.dlang.org/post/afkbwsdrspndwgkai...@forum.dlang.org), and SARC B.V. for sponsoring. Some extracts from the [readme](https://github.com/veelo/gettext#readme) are included below:


# Features

- Concise translation markers that can be aliased to your 
preference.
- All marked strings that are seen by the compiler are extracted 
automatically.
- All (current and future) [D string literal 
formats](https://dlang.org/spec/lex.html#string_literals) are 
supported.
- Static initializers of fields, constants, immutables, manifest 
constants and anonimous enums can be marked as translatable (a D 
specialty).
- Concatenations of translatable strings, untranslated strings 
and single chars are supported, even in initializers.
- Arrays of translatable strings are supported, also when 
statically initialized.
- Plural forms are language dependent, and play nice with format 
strings.
- Multiple identical strings are translated once, unless they are 
given different contexts.
- Notes to the translator can be attached to individual 
translatable strings.

- Code occurrences of strings are communicated to the translator.
- Available languages are discovered and selected at run-time.
- Platfom independent, not linked with C libraries.
- Automated generation of the translation table template.
- Automated merging into existing translations (requires [GNU 
`gettext` utilities](https://www.gnu.org/software/gettext/)).
- Automated generation of binary translation tables (requires 
[GNU `gettext` utilities](https://www.gnu.org/software/gettext/)).

- Includes utility for listing unmarked strings in the project.

# Usage

## Marking strings

Prepend `tr!` in front of every string literal that needs to be 
translated. For instance:

```d
writeln(tr!"This string is to be translated");
writeln("This string will remain untranslated.");
```

## Plural forms

Sentences that should change in plural form depending on a number 
should supply both singlular and plural forms with the number 
like this:

```d
// Before:
writefln("%d green bottle(s) hanging on the wall", n);
// After:
writeln(tr!("one green bottle hanging on the wall",
"%d green bottles hanging on the wall")(n));
```
Note that the format specifier (`%d`, or `%s`, etc.) is optional 
in the singular form.


Many languages have not just two forms like the English language 
does, and translations in those languages can supply all the 
forms that the particular language requires. This is handled by 
the translator, and is demonstrated in [the example 
below](https://github.com/veelo/gettext#example-1).


## Custom markers

If `tr` is too verbose for you, you can change it to whatever you 
want:

```d
import gettext : _ = tr;
writeln(_!"No green bottles...");
```

## Marking format strings

Translatable strings can be format strings, used with 
`std.format` and `std.stdio.writefln` etc. These format strings 
do support plural forms, but the argument that determines the 
form must be supplied to `tr` and not to `format`. The 
corresponding format specifier will not be seen by `format` as it 
will have been replaced with a string by `tr`. Example:

```d
format(tr!("Welcome %s, you may make a wish",
   "Welcome %s, you may make %d wishes")(n), name);
```
The format specifier that selects the form is the last specifier 
in the format string (here `%d`). In many sentences, however, the 
specifier that should select the form cannot be the last. In 
these cases, format specifiers must be given a position argument, 
where the highest position determines the form:

```d
foreach (i, where; [tr!"hand", tr!"bush"])
format(tr!("One bird in the %1$s", "%2$d birds in the 
%1$s")(i + 1), where);

```
Again, the specifier with the highest position argument will 
never be seen by `format`. On a side note, some translations may 
need a reordering of words, so translators may need to use 
position arguments in their translated format strings anyway.


Note: Specifiers with and without a position argument must not be 
mixed.


## Concatenations

Translators will be able to produce the best translations if they 
get to work with full sentences, like

```d
auto message = format(tr!`Could not open the file "%s" for 
reading.`, file);

```
However, in support of legacy code, concatenations of strings do 

Re: How do I download the Windows DMD installer?

2022-07-17 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 17 July 2022 at 19:58:03 UTC, LeMondaide wrote:
When I try (https://dlang.org/ or 
https://dlang.org/download.html) I am sent here: 
https://s3.us-west-2.amazonaws.com/downloads.dlang.org/releases/2022/dmd-2.100.1.exe and get this message "AccessDeniedAccess Denied4TMZ12PKCBCER6SAQQ7FpshcuoQ3ied0qGEHZ+lSz+qD9+aJmqH24qD5pkCWrGANGD6Lk6eT5d4wAG1n3kYvhWNJsig="


I have not found an alternative download location.


The download for 2.100.1 is currently broken. Find 2.100.0 from 
http://downloads.dlang.org/releases/2022/ for now.


-- Bastiaan.


Re: cogito, cognitive complexity for D

2022-05-25 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 24 May 2022 at 21:25:38 UTC, Christian Köstlin wrote:

if the dmd frontend could be made available as a dub package,


It already is, as sub package of 
https://code.dlang.org/packages/dmd


— Bastiaan.


Re: Beta 2.100.0

2022-04-23 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 22 April 2022 at 09:24:00 UTC, Martin Nowak wrote:


http://dlang.org/changelog/2.100.0.html


It seems the list of contributors does not include the 
contributions to Dub.


— Bastiaan.


Re: D Language Foundation Monthly Meeting Summary for March 2022

2022-04-05 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 4 April 2022 at 10:59:39 UTC, Mike Parker wrote:

### D ecosystem services
While we were waiting for everyone to arrive, I gave an update 
on the status of our plans to bring all of the ecosystem 
services under our control. At that point, I had received 
information on the resource requirements of services maintained 
by Vladimir Panteleev (the D forums, D wiki, and more), Jan 
Knepper (the main dlang.org site, the newsgroup server, the D 
blog), and Petar Kirov (run.dlang.io and tour.dlang.io). I also 
had received affirmative responses from those three to my 
invitation to join our next server meeting. Since that time, I 
have also received the same from Sönke Ludwig (code.dlang.org).


The dub documentation, hosted at https://dub.pm should also be in 
that list. Currently there is a problem updating that site, see 
https://github.com/dlang/dub-docs/issues/41.


-- Bastiaan.


Re: D Language Foundation Monthly Meeting for February 2022

2022-03-05 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 5 March 2022 at 14:03:38 UTC, Mike Parker wrote:

On Saturday, 5 March 2022 at 12:39:39 UTC, Bastiaan Veelo wrote:

On Saturday, 5 March 2022 at 01:21:06 UTC, Mike Parker wrote:
But we have no reason to move the D projects away from GitHub 
to GitLab. GitLab has never entered the conversation.


Two reasons would be that
1) It already offers [an integration with 
bugzilla](https://docs.gitlab.com/ee/user/project/integrations/bugzilla.html).
2) Being open source it can be installed on your own hardware, 
which is the main argument being made for using bugzilla.


It also has integrated CI.

— Bastiaan.


I have no opinion on point #1, but for #2, I do not see that as 
a benefit. We're aiming to integrate all of our services. As I 
see it, the less we have to manage ourselves, the better. If we 
did for some reason want to migrate to GitLab, my vote would be 
to let them host us.


But my point was, GitHub has worked well for us for years. 
There's no desire to move away that I'm aware of. If it ain't 
broke, don't fix it!


Definitely. Personally I think moving the tickets to GitHub is a 
good idea, I just felt these points needed to be made for 
completeness.


— Bastiaan.


Re: D Language Foundation Monthly Meeting for February 2022

2022-03-05 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 5 March 2022 at 01:21:06 UTC, Mike Parker wrote:
But we have no reason to move the D projects away from GitHub 
to GitLab. GitLab has never entered the conversation.


Two reasons would be that
1) It already offers [an integration with 
bugzilla](https://docs.gitlab.com/ee/user/project/integrations/bugzilla.html).
2) Being open source it can be installed on your own hardware, 
which is the main argument being made for using bugzilla.


It also has integrated CI.

— Bastiaan.


Re: D Language Foundation Monthly Meeting for February 2022

2022-02-28 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 27 February 2022 at 11:53:18 UTC, Mike Parker wrote:

## Monthly Meeting
Just letting you know that it is posts like these  that I look 
forward to the most, and I very much appreciate the work that 
goes into them.


Thanks!
— Bastiaan.


Re: Printed version of the Vibe.d tutorial

2021-12-19 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 19 December 2021 at 21:57:50 UTC, Rey Valeza wrote:

Hi,

The printed version of the Vibe.d tutorial 'Build web apps in 
Vibe.d by learning from a learner' which I uploaded earlier in 
February this year is now available in  paperback at Amazon:


https://www.amazon.com/dp/B09MYTMNKF

If you find yourself printing loose pages here and there from 
the tutorial and wishing you had a book instead, this is the 
answer.


Thanks!


Should probably be in this list: https://wiki.dlang.org/Books

— Bastiaan.


Re: D Language Foundation Quarterly Meeting Summary -- July 23, 2021

2021-07-28 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 28 July 2021 at 06:37:56 UTC, Mike Parker wrote:

* Joseph Rushton Wakeling representing Frequenz


I know Joseph, but haven't heard of Frequenz. Can't find them on 
https://dlang.org/orgs-using-d.html. Is there any news to be 
announced?


-- Bastiaan.


Re: Diva - D Language Interface for Versioned Applications

2021-07-10 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 10 July 2021 at 11:29:21 UTC, pineapple wrote:

On Saturday, 10 July 2021 at 08:42:46 UTC, Bastiaan Veelo wrote:
Could it be that you have overlooked D Version Manager? 
https://code.dlang.org/packages/dvm


— Bastiaan.


Oh, I hadn't picked up on that.

That only manages DMD, though. Diva can manage DMD and LDC, as 
well as managing dub separately if you want it to. Personally 
I'll be using Diva in the future to manage my installations.


Thanks for clarifying the differences.

— Bastiaan.


Re: Diva - D Language Interface for Versioned Applications

2021-07-10 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 9 July 2021 at 23:59:55 UTC, pineapple wrote:
Basically, it's a version manager which currently supports DMD, 
LDC, and dub.


It's rough, but maybe in some ways a little less rough than 
install.sh, at https://dlang.org/install.html


https://github.com/pineapplemachine/diva


Could it be that you have overlooked D Version Manager? 
https://code.dlang.org/packages/dvm


— Bastiaan.


Dub as tool chain installer

2021-06-18 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 18 June 2021 at 06:14:03 UTC, Martin Nowak wrote:
Maybe we could recruit someone to replace the dated NSIS 
installer with a native msi installer.

https://issues.dlang.org/show_bug.cgi?id=15375
https://en.wikipedia.org/wiki/List_of_installation_software#Windows

Don't have much of a clue about Windows nowadays, maybe there 
are more suitable alternatives.


What would be the most suitable alternative in my eyes is for 
dub, based on [tool chain 
requirements](https://dub.pm/package-format-json.html#toolchain-requirements) specified in `dub.json`, to install and select compilers. Cross platform and cross vendor. I know there are compiler version managers, but I think since dub can check versions of packages and install packages, and can check compiler versions, it is only natural that it should also be able to install compilers.


Above all, it would be just so convenient. This way a compiler 
upgrade becomes part of your commit history. You can test (beta) 
compiler releases in a separate branch, resolve deprecations 
comfortably, have your CI run all tests, all without interfering 
with main development. You push the change and all team members 
upgrade their compilers automatically without even noticing it, 
and certainly without surprises. And any number of years in the 
future, when you pick up an old project that has been dormant, it 
still compiles flawlessly because dub downgrades the compiler 
automatically.


Come to think of it, maybe there should be an additional package 
category that provides build tools that can be run by dub without 
`dub run`, such as `dfmt`, `dpp`, `pegged`, and compilers and 
linters.


— Bastiaan.


Re: Dlang Setup Tutorials

2021-06-11 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 10 June 2021 at 18:11:45 UTC, Igor wrote:

Hi,

I made my first few video tutorials and they are about how to 
setup DLang development environment on Windows and Linux. 
Hopefully it can help new people quickly setup everything for 
playing around with our beautiful language :).


[YouTube 
Intro](https://www.youtube.com/watch?v=OzASFrPzil4=PLNiswfy6ptAnw_QmqAuy-Bz02oeu4pnLL)
[YouTube Windows 
install](https://www.youtube.com/watch?v=fuJBj_tgsR8=PLNiswfy6ptAnw_QmqAuy-Bz02oeu4pnLL=2)
[YouTube Ubuntu 
install](https://www.youtube.com/watch?v=fJ-u29rDVXk=PLNiswfy6ptAnw_QmqAuy-Bz02oeu4pnLL=3)
[YouTube Manjaro 
install](https://www.youtube.com/watch?v=rM6_S6Fy7aQ=PLNiswfy6ptAnw_QmqAuy-Bz02oeu4pnLL=4)


[...]

These are nicely done, bravo! Even I learned something new.

-- Bastiaan.


Re: Release D 2.097.0

2021-06-07 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 5 June 2021 at 13:00:05 UTC, evilrat wrote:

Windows installer is broken.

I have install target path excluded from Windows Defender anti 
virus checks, yet after the installation it only contains .bat 
files, uninstaller.exe, dmd2/windows/lib64 and lib32mscoff, but 
no bin and sources.


I am having issues as well, but I don't think the installer is at 
fault: I see the `C:\D\dmd2` directory get filled as the 
installer progresses, then files just disappear. It doesn't seem 
to be consistent though. After failure I tried with 
`dmd-2.096.1.exe` and the same thing happened, whereas it had 
installed fine before. I tried `dmd-2.097.0.exe` and this time 
the whole directory got wiped. I tried again and it installed 
fine.


Windows 10 Pro N version 20H2 build 19042.985.

I suspect MS cloud security scan.

-- Bastiaan.


Re: Visual D 1.1.0 released

2021-03-04 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 4 March 2021 at 13:42:47 UTC, Imperatorn wrote:

On Thursday, 4 March 2021 at 13:29:11 UTC, Imperatorn wrote:
On Tuesday, 2 March 2021 at 08:58:15 UTC, Rainer Schuetze 
wrote:

[...]


A few questions.

How hard would the following be:

1. Highlight code as dead or alive in static if

2. Show typeid when hovering over a variable

I have gifs showing what I mean. I'll post them when I get 
back to my laptop.


https://filebin.net/19gupoeedfdjx5tx

One GIF is the behaviour in C# I would like to have in D as 
well with static if, and the other is displaying typeid on 
hover.


It already does this, I would say.

1. The D equivalent of your use of `#if ... #else ... #endif` is 
`version() {...} else {...}`, which works in VisualD the same way 
as you show. `static if` is different: the condition often 
depends on the value of template parameters, so this does not 
simply translate to "dead" or "alive" in every case.


2. typeid is a runtime concept (takes inheritance into account) 
so this won't work in an editor outside of a debugging session. 
However VisualD already shows the (static) type and scope of 
variables on mouse-over, which is all you can wish for, I think.


-- Bastiaan.


Re: Visual D 1.1.0 released

2021-03-03 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 2 March 2021 at 08:58:15 UTC, Rainer Schuetze wrote:
You can find the update installer or a full installer bundled 
with latest versions of DMD and LDC here:


https://rainers.github.io/visuald/visuald/StartPage.html


For clarity, the converse is not true. If you use the official 
dmd installer (.exe) and select "Download Visual D" in it then 
you end up with only version 0.50 of VisualD.


-- Bastiaan.


Re: Visual D 1.1.0 released

2021-03-03 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 2 March 2021 at 08:58:15 UTC, Rainer Schuetze wrote:

finally the results of recent months have been released.


All very cool features, thank you very much!!

--Bastiaan.


Re: Article: Why I use the D programming language for scripting

2021-02-01 Thread Bastiaan Veelo via Digitalmars-d-announce
On Sunday, 31 January 2021 at 20:47:13 UTC, Steven Schveighoffer 
wrote:

On 1/31/21 3:36 PM, aberba wrote:

It's finally out!

https://opensource.com/article/21/1/d-scripting


Hm... right off I see the shebang is not the first line in the 
example. It has to be.


Please fix, Aberba, right now the examples don't work because of 
this...


-- Bastiaan.


Re: MIR vs. Numpy

2020-11-18 Thread Bastiaan Veelo via Digitalmars-d-announce
On Wednesday, 18 November 2020 at 10:05:06 UTC, Tobias Schmidt 
wrote:

Dear all,

to compare MIR and Numpy in the HPC context, we implemented a 
multigrid solver in Python using Numpy and in D using Mir and 
perforemd some benchmarks with them.


You can find our code and results here:
https://github.com/typohnebild/numpy-vs-mir


Nice numbers. I’m not a Python guy but I was under the impression 
that Numpy actually is written in C, so that when you benchmark 
Numpy you’re mostly benchmarking C, not Python. Therefore I had 
expected the Numpy performance to be much closer to D’s. An 
important factor I think, which I’m not sure you have discussed 
(didn’t look too closely), is the compiler backend that was used 
to compile D and Numpy. Then again, as a user one is mostly 
interested in the out-of-the-box performance, which this seems to 
be a good measure of.


— Bastiaan.


Re: LDC 1.24.0-beta1

2020-10-19 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 18 October 2020 at 23:07:26 UTC, aberba wrote:

On Sunday, 18 October 2020 at 22:47:17 UTC, Adam D. Ruppe wrote:

On Sunday, 18 October 2020 at 22:40:53 UTC, aberba wrote:
Not sure what to do with the .7z file without manual 
tinkering.


You can simply unzip it and use it directly.

That's the best way to use most D compilers actually, then any 
versions can live side by side without affecting each other.


It's what I did and added to my system path...but that's if you 
know what you're doing. An installer just like dmd etc is what 
newbies are used to.


I'm not suggesting that this fills the need of newbies, but there 
is this: https://dlang.org/install.html.


--Bastiaan.


Re: Symmetry Investments and the D Language Foundation are Hiring

2020-08-30 Thread Bastiaan Veelo via Digitalmars-d-announce

permanent position


This is huge! Thank you Symmetry!

— Bastiaan.


Re: Release D 2.093.0

2020-07-20 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 20 July 2020 at 15:10:27 UTC, jmh530 wrote:

See
https://issues.dlang.org/show_bug.cgi?id=21059


Thanks, I will look into this. I posted a workaround there, which 
involves separate steps for downloading the script and running 
the script.


--Bastiaan.


Re: Release D 2.093.0

2020-07-20 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 19 July 2020 at 19:16:29 UTC, jmh530 wrote:
I just upgraded a machine to Linux Mint 20 on a fresh install 
and tried to run the install script. It fails with

main: line 178: USERPROFILE: unbound variable

This line should only be called on Windows, which I found 
strange. It turns out that this is driven by


```
posix_terminal() {
# If this script is run on Windows cmd by passing it as 
argument to bash.exe,
# the shell level will be 1. If it is run from a POSIX 
terminal, it will be > 1.

if [ "$SHLVL" = 1 ]; then
false
else
true
fi
}
```

Running `echo $SHLVL` prints `1`

Running
```
bash
echo $SHLVL
```
prints `2`


Running `echo $SHELL` prints `/bin/bash`

The issue seems to be related to an update to Ubuntu 16:
https://askubuntu.com/questions/856532/why-is-shlvl-initially-2-in-ubuntu-16-10-but-not-earlier-versions


I don't think it is related to the Ubuntu 16.10 issue, because 
the above test does not rely on SHLVL being 2 initially. If the 
script is called from the terminal, and the terminal is running 
bash (which it seems to do according to the output of $SHELL) 
SHLVL should be at least 1 on the terminal and one higher when 
the script is run (since running a script starts a new bash). 
Maybe the script is run in a way that breaks this assumption? Is 
it run using `call`? Is it run headless, without a terminal? Is 
it not run by real bash?


There is a related conversation here, but not quite the same: 
https://github.com/dlang/installer/commit/e084815001390538bbd6fe5be7c2d4d81ee681b7#commitcomment-40487617


Please open an issue on https://issues.dlang.org/enter_bug.cgi 
and post a link here, if we need to drill deeper.


I can imagine that the current `posix_terminal()` is flawed if 
the terminal is running a shell that is not bash, for which we 
should find a solution.


--Bastiaan.


Re: Origins of the D Programming Language now published by ACM!

2020-06-14 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 13 June 2020 at 03:16:05 UTC, Walter Bright wrote:

https://dl.acm.org/doi/abs/10.1145/3386323

Many, many thanks to Mike Parker and Andrei Alexandrescu for 
their endless hours spent fixing the mess I originally wrote.


Thanks to COVID-19, access is free through June 30.

I very much enjoyed reading this paper. Thanks!

-- Bastiaan.


Re: DIP 1028 "Make @safe the Default" is dead

2020-05-29 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 29 May 2020 at 20:36:12 UTC, Walter Bright wrote:

On 5/29/2020 7:22 AM, Paul Backus wrote:
This is sad news. I was excited for @safe-by-default, and had 
hoped that the issue with extern(C) could be solved without 
throwing DIP 1028 away entirely.


I watched a documentary on Clive Davis (famous recording 
executive) the other day. He would advise his clients, like 
Kenny G, Barry Manilow, etc., on how they should arrange and 
position their songs.


Kenny G (famous clarinet player) said Davis recommended he add 
a vocal track, as that will sell more records. KG asks are you 
advising, or telling me? Davis says he's advising. KG does it 
his own way, and the record is a hit. KG triumphantly tells 
Davis what do you think of that now? Davis replies if KG had 
followed his advice, he'd have sold even more records.


I’m not sure who in this analogy is the Kenny G and who the Clive 
Davis, and we probably will never know for sure.


Off topic, and without extending the analogy, I had never heard 
about Kenny G until I came across Pat Metheny’s rant about him. 
It’s a well reasoned critique, and it seems to me that the 
expertise in our community is a lot higher than Kenny G’s musical 
expertise.

http://www.jazzoasis.com/methenyonkennyg.htm

— Bastiaan


Re: Rationale for accepting DIP 1028 as is

2020-05-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 27 May 2020 at 09:09:58 UTC, Walter Bright wrote:

On 5/26/2020 11:20 PM, Bruce Carneal wrote:
I'm not at all concerned with legacy non-compiling code of 
this nature.


Apparently you agree it is not an actual problem.


Really? I don't know if you really missed the point being made, 
or you're being provocative. Both seem unlikely to me.


-- Bastiaan.


Re: Rationale for accepting DIP 1028 as is

2020-05-26 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 26 May 2020 at 16:31:57 UTC, Bruce Carneal wrote:
Currently a machine checked @safe function calling an 
unannotated extern C routine will error out during compilation. 
This is great as the C routine was not machine checked, and 
generally can not be checked.  Post 1028, IIUC, the compilation 
will go through without complaint.  This seems quite clear.  
What am I missing?


I agree that being forced to think about a trusted interface to 
that routine can contribute to safety. Not getting this is the 
price if DIP 1028 as is. Doing it the other way bears a different 
price.


Still, it does not change the amount of code that must be vetted 
during an audit, either way.


-- Bastiaan.


Re: Rationale for accepting DIP 1028 as is

2020-05-26 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 26 May 2020 at 16:10:24 UTC, Bruce Carneal wrote:

On Tuesday, 26 May 2020 at 15:54:31 UTC, Bastiaan Veelo wrote:

On Tuesday, 26 May 2020 at 15:39:11 UTC, Bruce Carneal wrote:

On Tuesday, 26 May 2020 at 15:01:06 UTC, Bastiaan Veelo wrote:

@safe: the compiler checks


The compiler does not and cannot check inside @trusted. 
Whether or not one requires extern(C[++]) to be behind or 
within @trusted does not change what the compiler can or 
cannot check.


Completely agree but my above says nothing about @trusted.


But it matters. Even if your code is @safe, that doesn't mean it 
is completely safe. Your @safe code can call into somebody else's 
@safe code that can call @trusted code that calls @system code. 
If you want to guarantee that your code is safe, you'll have to 
find and audit the @trusted bits (as well as everything that is 
called from there).


If extern(C) is implicitly @system, you'll have to make calls 
@trusted and they are subject to auditing. If extern(C) is 
implicitly @safe, calls are still subject to auditing. Whatever 
your preference, I think the compiler can be of greater help in 
finding the bits that require auditing than grep can, and then 
the difference isn't all that important anymore. Safe wrappers 
around C libraries are still written the same way, audited the 
same way, and unsafe calls into C caught the same way.


I agree that making extern(!D) @system looks sound, like the way 
it should be. But it breaks compilation of existing code, and it 
is too easy to evade by slapping on an explicit @trusted or (God 
forbid) @safe. Or we could make extern(!D) to be anything other 
than @system an error, which would be really annoying. I think 
that what we all strive for is to reduce the strain of coding as 
well as to reduce the strain of auditing.


-- Bastiaan.


Re: Safety audit and the overlooked emergency exit

2020-05-26 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 26 May 2020 at 15:39:11 UTC, Bruce Carneal wrote:

On Tuesday, 26 May 2020 at 15:01:06 UTC, Bastiaan Veelo wrote:

[snipped an outline of tooling to mitigate 1028 damage]

I think this would be a tool that adds real practical value 
and helps to reduce the cost of audits. And not the least, 
regarding the current discussion, it diminishes the importance 
of whether extern(C[++]) declarations are actually @system or 
@safe.




Yes.  Tooling is good and will be much appreciated if 1028 
stands.  Reducing the need for tooling is even better.


@safe: the compiler checks


The compiler does not and cannot check inside @trusted. Whether 
or not one requires extern(C[++]) to be behind or within @trusted 
does not change what the compiler can or cannot check.


@safe post 1028: the compiler checks, sometimes, just not in 
the scary parts


The amount of code that requires human auditing remains the same. 
What matters is how to find that code, and how to maintain the 
validity of the audits.


-- Bastiaan.


Safety audit and the overlooked emergency exit

2020-05-26 Thread Bastiaan Veelo via Digitalmars-d-announce
I think there is an exit to the current impasse that has been 
overlooked thus far.


The key question is, during a safety audit, how to find the 
unsafe sections of code that need to be vetted thoroughly. If DIP 
1028 is kept as is, these sections can be found by `grep 
@trusted|extern\(C`. If DIP 1028 would be amended as many argue 
for, it would be `grep @trusted`. But isn't grep a rather crude 
tool, and wouldn't the compiler be able to create more useful 
reports either way?


The compiler already has options for listing gc allocations 
(-vgc) and variables that go into thread local storage (-vtls). A 
new option could be implemented to list all @trusted functions 
and all calls into extern(C[++]) functions from within safe 
sections.


It is the calls into extern(C[++]) functions that cannot be 
guaranteed to be safe, irrespective of whether the declarations 
are marked @trusted or @safe. So listing these calls is much more 
valuable than grepping for @trusted, which can be misused as 
"@trusted extern(...". If a C library has a proper D wrapper that 
defines a safe interface, only the @trusted functions in the 
wrapper would appear in the list, not the extern(C) calls that 
are made within its @trusted functions. The list could possibly 
be reduced by excluding functions that are never called, making 
it even more valuable.


@trusted is not a seal of approval. It bears no signature, nor a 
hash of the implementation. It is simply a bridge from safe 
territory into unsafe territory, and is a checkpoint that cannot 
be skipped in any certification process.


Considering this, the compiler can actually produce a hash of the 
implementation of trusted functions as part of this list. A 
certification authority can then actually use this list to 
maintain a table of sections, hashes and stamps. If a new release 
needs to renew its certification, the earlier table can be 
compared against the current list, and functions whose hash 
didn't change need not be reviewed again. Extrapolating even 
further, this could be the basis of a repository of approvals 
from various individuals and authorities representing statements 
like "I have looked at this function carefully and I believe it 
can indeed be trusted".


I think this would be a tool that adds real practical value and 
helps to reduce the cost of audits. And not the least, regarding 
the current discussion, it diminishes the importance of whether 
extern(C[++]) declarations are actually @system or @safe.


-- Bastiaan.


Re: OT: Back

2020-05-12 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 12 May 2020 at 07:48:46 UTC, Dmitry Olshansky wrote:

On Tuesday, 12 May 2020 at 07:21:43 UTC, Bastiaan Veelo wrote:

On Tuesday, 5 May 2020 at 15:39:12 UTC, Dmitry Olshansky wrote:
P.S. I'm kind of back, but very busy and my health is mostly 
great despite the COVID outrage out there.


That's great! Glad to hear that.


Bastian! Great to see you still around.

How your D stuff is going at that naval company?


First real application is running: a program for the numerical 
analysis of a ship launch at the yard. Currently testing and 
debugging. Pain points typically revolve around low level tricks 
in Pascal using arrays starting at 1 (these usually translate 
without problems, except where they don't)... Or passing strings 
to/from win32. Still committed to translate all other programs in 
our suite to D, busy times as usual.


-- Bastiaan.


OT: Back

2020-05-12 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 5 May 2020 at 15:39:12 UTC, Dmitry Olshansky wrote:
P.S. I'm kind of back, but very busy and my health is mostly 
great despite the COVID outrage out there.


That's great! Glad to hear that.

-- Bastiaan.


Re: Visual D 0.52.0 released

2020-03-23 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 23 March 2020 at 09:54:46 UTC, Rainer Schuetze wrote:

Hi,

a new version of Visual D, the Visual Studio extension that 
adds D language support to VS2008-2019, is available at


https://rainers.github.io/visuald/visuald/StartPage.html


[...]


The full version history can be found at

https://rainers.github.io/visuald/visuald/VersionHistory.html

Cheers,
Rainer


Great news!

- Bastiaan.


Re: DConf 2020 Canceled

2020-03-11 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 10 March 2020 at 18:06:53 UTC, bauss wrote:

On Sunday, 8 March 2020 at 03:56:35 UTC, Era Scarecrow wrote:

 From what i've researched,


You are very misinformed about it, not sure what your sources 
are for your "research" but you've done your research the wrong 
places.


Indeed.

I am aware that people susceptible to conspiracy theories have a 
tendency to mistrust experts, but I'll post this very informative 
interview with one such expert nonetheless.


https://www.youtube.com/watch?v=E3URhJx0NSw

Michael Osterholm is an internationally recognized expert in 
infectious disease epidemiology. He is Regents Professor, 
McKnight Presidential Endowed Chair in Public Health, the 
director of the Center for Infectious Disease Research and Policy 
(CIDRAP), Distinguished Teaching Professor in the Division of 
Environmental Health Sciences, School of Public Health, a 
professor in the Technological Leadership Institute, College of 
Science and Engineering, and an adjunct professor in the Medical 
School, all at the University of Minnesota.



Back on topic, cancelling DConf is a good call.

--Bastiaan.


Re: code.dlang.org reliability update

2020-03-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 2 March 2020 at 19:17:59 UTC, Sönke Ludwig wrote:
As of yesterday, code.dlang.org now points to a more powerful 
dedicated server that can host the DUB registry without the 
danger of freezing due to excessive swapping - this is what 
happened on the 26th last month [1].


In addition to that, the server that previously hosted the 
registry is now used to run an official mirror, reachable at 
codemirror.dlang.org. This will be configured as a built-in 
fallback server starting with DMD 2.091.0/DUB 1.12.0 and, at 
least in theory, will lead to an uptime of virtually 100%.


Excellent, thank you!

Bastiaan.



Re: FeedSpot Recognizes the GtkDcoding Blog

2020-02-07 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 7 February 2020 at 14:23:58 UTC, Andre Pany wrote:

Also from me congratulations!

GtkD (GTK) are a great piece of software and your tutorials are 
fantastic to get into it.


Now the sad part. I would like to use GtkD at work but I can't. 
The license is really dangerous for companies (you compile lGpl 
source code into your application), therefore it is a complete 
no go from the IP department. The license is a huge blocker for 
GtkD commercial usage.


This is just FUD, and not true. Did you read the license? [1] It 
explicitly states additional freedoms not present in the LGPL. 
You may even link statically without the license infecting your 
proprietary code!


It seems to me it is the incompetence of your IP department that 
is your problem, not the GtkD license.


I would like to run GTK applications in the browser (broadway 
html5). Due to the license issue I have to use the C api):


What difference does that make, legally? AFAIK the C api license 
is more restrictive than GtkD’s license.



I hope the authors of GtkD could change their mind in future.


In what way? I’d advise your IP department to talk to Mike Wey 
directly.


Bastiaan.

[1] https://github.com/gtkd-developers/GtkD/blob/master/COPYING


Re: FeedSpot Recognizes the GtkDcoding Blog

2020-02-04 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 4 February 2020 at 15:21:30 UTC, Ron Tarrant wrote:
This morning I was contacted by Anuj Agarwal, the Founder of 
Feedspot, who told me http://GtkDcoding.com has been recognized 
as one of the top 100 blogs for programmers. It's currently 
listed as #71.


Well done!

Bastiaan.


Re: dud: A dub replacement

2019-12-01 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 25 November 2019 at 18:28:55 UTC, H. S. Teoh wrote:
- lack of support for build-time code generation (i.e., build a 
subset
  of files into an executable, run the executable to generate 
.d files,
  compile output .d files plus other existing .d files into 
final

  product).


I am doing exactly that. It can be done through 
preGenerateCommands, calling either a secondary build script or 
nested dub project, optionally using excludedSourceFiles. The 
only reason it doesn’t work well is because of 
https://github.com/dlang/dub/issues/1474. But there are 
workarounds, and a poc fix.


Bastiaan.


Re: D Forum Mobile Version - Beta

2019-11-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 27 October 2019 at 02:11:50 UTC, matheus wrote:

Hi,

I use to access this Forum mainly through the WEB version, and 
so far It never bothered me when reading on my PC.


But on my phone (An old LG K4) with tiny screen it's not very 
pleasant, I use this phone when I'm on the road, I lately I 
gave up to read this Forum through it.


So, I decided to create a "wrapper" of this Forum applying 
style for small screens like in my case.


The result is here: http://www.mazeware.com/dforums.html

Here are some diffs between both versions:

https://i.imgur.com/wfmm035.png

https://i.imgur.com/LzvhrdQ.png

https://i.imgur.com/BM13xTw.png

I'm sharing this because it may be useful for some people.

Finally I'd like to know if it is possible to have this to be 
acessed direct in your server (Maybe in a new sub-domain), 
since my hosting is slow.


Matheus.


I’d recommend contacting Vladimir directly, like bachmeier said 
in 
https://forum.dlang.org/post/jnikxmmrmohsdszaf...@forum.dlang.org.


However, I tried your version and it didn’t work well for me; I’m 
on an iPhone 6. I prefer the current version in the threaded mode.


I don’t know how you implemented your version, but if you can 
make it configurable as one of the current supported view modes, 
I guess the chances of getting it accepted are higher.


Thanks for contributing.

Bastiaan.


Re: Oberon to D

2019-10-23 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 15 October 2019 at 18:02:28 UTC, Mario Kröplin wrote:

https://github.com/linkrope/oberon2d
is a simple tool that translates source code from Oberon to D.

It was intended to be thrown away after the resurrection of a 
single Oberon project.

(So, don't expect too much.)

But then, Bastiaan Veelo presented a very similar problem at 
DConf 2017.

I'm a bit late, but I hope this could help.


Thanks for sharing! Your translation module is surprisingly 
concise.


As I read up a bit on Oberon, I learned that Nicklaus Wirth is 
still maintaining his compiler[1]. I wonder what he would think 
of D.


Bastiaan.

[1] https://inf.ethz.ch/personal/wirth/news.txt


Re: CodinGame adds support for 2 new programming languages

2019-10-01 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 26 September 2019 at 15:58:46 UTC, Andre Pany wrote:

Hi,

Based on the voting results 
(https://www.codingame.com/forum/t/poll-what-programming-language-would-you-like-codingame-to-support-next) Codingame is currently adding 2 new programming languages, Type Script and D!


Thanks for your votes, they made it happen!

Kind regards
Andre


That's great, I'm looking forward to this!

Bastiaan.


Re: Chunker - Content-Defined Chunking based on Rabin Checksums

2019-09-21 Thread Bastiaan Veelo via Digitalmars-d-announce
On Saturday, 21 September 2019 at 03:11:11 UTC, Vladimir 
Panteleev wrote:

Hi,

This is a D port of a Go package implementing Content-Defined 
Chunking:


https://github.com/CyberShadow/chunker


[...]

- Significant refactorings and simplifications of the 
implementation. The original code made some sacrifices in code 
readability to work around limitations of the language and 
compiler optimization to achieve reasonable performance.


- 20% faster than the Go version (LDC release build).


Marvellous! Well done.

[...]

The original package was written by Alexander Neumann and is 
used in the restic backup program.


Sounds like D would have been the right language for Restic. 
Maybe this is enough to spark Alexander’s interest in D?


Cheers,
Bastiaan.


Re: We’re hiring Software Engineers! (D language)

2019-07-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 2 July 2019 at 08:56:42 UTC, Andrej Mitrovic wrote:

Hi!

BPF Korea is looking to increase the size of its core 
development team in Seoul, South Korea.


Congrats! You should be on this page[1] then, would you agree? 
Let me know if you need help with a PR.


Bastiaan.

[1] https://dlang.org/orgs-using-d.html


Re: Autonomous driving company is looking for D software engineers

2019-06-24 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 23 June 2019 at 20:16:52 UTC, Dragos Carp wrote:
Regarding about adding AID to the website, this will raise the 
visibility of the offer and would be great for us. Thank you!


https://github.com/dlang/dlang.org/pull/2667

Bastiaan.


Re: DConf 2019 Videos

2019-06-13 Thread Bastiaan Veelo via Digitalmars-d-announce
On Thursday, 13 June 2019 at 10:02:07 UTC, Ola Fosheim Grøstad 
wrote:
In one of the talks there was suggested that ANTLR has D 
support, but the official ANTLR distribution does not provide 
that.


Which talk?

There may be a confusion with Bison: 
https://forum.dlang.org/post/fjuvegjdvcunqqvvb...@forum.dlang.org


Bastiaan.


Re: DConf 2019 Videos

2019-06-05 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 5 June 2019 at 02:37:57 UTC, Mike Parker wrote:

The DConf 2019 playlist is available at:

https://www.youtube.com/playlist?list=PLIldXzSkPUXWORGtUrnTo2ylziTHR8_Sq

Walter's keynote is up now. Others will be available soon. 
Again, I can't predict how long until they're all up, but 
they're coming.


I just watched Walter’s talk again and this video is very well 
done. Worth the wait and money well spent!


Bastiaan.


Re: Beta 2.086.0

2019-05-01 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 1 May 2019 at 19:33:17 UTC, Martin Nowak wrote:

On Sunday, 21 April 2019 at 08:47:12 UTC, Bastiaan Veelo wrote:
The $(CONSOLE) macro seems to not be able to handle `---` in 
its argument, which wrongly starts an example.


https://github.com/dlang/dub/blob/28a0c1ee3ef7c34cf586fc32be88cf75c2912043/changelog/dub-run.dd


Clever, replacing with 

Bastiaan.


Re: Release Candidate 2.086.0 [was: Re: Beta 2.086.0]

2019-04-29 Thread Bastiaan Veelo via Digitalmars-d-announce
The list in 
https://dlang.org/changelog/2.086.0.html#copy_constructor is 
still broken by the examples inside it. Do we have a DDOC expert 
that knows how to solve that?


Bastiaan.


Re: DDeps 1.1.1

2019-04-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 27 April 2019 at 16:16:02 UTC, lempiji wrote:
Recently, I created a tool to create a module dependency graph 
for the D language.


The tool can compare two versions and visualize the 
differences. I think it's useful for source reviews.


Try it if you are interested.
Some screenshots are included in the README.


- DUB: http://code.dlang.org/packages/ddeps
- GitHub: https://github.com/lempiji/ddeps


Very nice! I’ll have to bookmark this.

Bastiaan.


Re: Beta 2.086.0

2019-04-21 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 20 April 2019 at 14:16:09 UTC, Martin Nowak wrote:
Glad to announce the first beta for the 2.086.0 release, ♥ to 
the 52 contributors.


Many thanks, Martin!

Presumably, contributors Boris Carvajal and BorisCarvajal are the 
same Boris :-)


Bastiaan.


Re: Beta 2.086.0

2019-04-21 Thread Bastiaan Veelo via Digitalmars-d-announce
On Saturday, 20 April 2019 at 18:00:02 UTC, Nick Sabalausky 
(Abscissa) wrote:
The changelog has some formatting errors in the section "dub 
run will now automatically fetch a package if it's not found 
locally".


The $(CONSOLE) macro seems to not be able to handle `---` in its 
argument, which wrongly starts an example.


There is another formatting issue in the Copy Constructor 
section, where the nested $(OL) does not handle examples well, by 
which successive $(LI) appear in the top level list instead.


Bastiaan.


Re: DC v1.0.0 - cross-platform D compiler install management tool

2019-04-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 1 April 2019 at 17:35:38 UTC, Jacob Carlborg wrote:

On 2019-04-01 12:31, Mihails wrote:

Nice, I must admit I have had my mind set about DVM as 
something that has existed for years and wasn't quite the 
right thing. Had no idea you kept improving it lately.


Yeah, I thought it was time to fix one or two bugs.


Appreciated!

Once we take D into production I plan to integrate a tool like 
dvm or dc into our build system for two main reasons:


1) to have reproducible historical builds, being able to check 
out a revision from a year or more ago and compile it without 
deprecation warnings or errors that we did not have back then, 
and including any bugs that may have been present in e.g. phobos.


2) being able to prepare the code base for a new compiler release 
(or brand), push it, so that thereafter all developers and CI 
systems start using it without further thought or administration.


This is an important gear in the drivetrain that will allow us to 
maintain a "Please break our code!" mentality so that the 
language can continue to get better and better without us being 
left behind.


So thank you.

Bastiaan.



Re: Fundraising Updates: We did it!

2019-03-26 Thread Bastiaan Veelo via Digitalmars-d-announce
On Tuesday, 26 March 2019 at 18:49:30 UTC, Vladimir Panteleev 
wrote:

Thank you, Jan, and thank you to everyone who donated.


And thank you, Vladimir!



Re: Darser: A LL(1) to Recursive Decent Parser/AST/Visitor Generator

2019-03-20 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 20 March 2019 at 21:30:29 UTC, Cym13 wrote:
On Wednesday, 20 March 2019 at 17:20:48 UTC, Robert Schadek 
wrote:

To get graphqld up and running I needed a parser/ast/visitor.
Being lazy, I created parser/ast/visitor generated for that.

[...]


This looks nice! I'm familiar with pegged which uses PEG 
grammars, could you maybe comment on the differences and 
possible benefits of Darser in comparison?


I'm interested in that too. I suppose it doesn't support 
left-recursive grammars, like Pegged does?


Re: DConf 2019 Submissions and Early-Bird Discount

2019-03-16 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 16 March 2019 at 16:02:41 UTC, Mike Parker wrote:
Essentially, if you're donating money through Flipcause, the 
more people who cover the processing fee the better, but it 
won't hurt us as bad as the PayPal fees people don't do so. But 
when registering for DConf, it's a big help when you cover the 
processing fee.


Thanks for the clarification. I'm looking forward to see you 
again soon, and all you other great people!


Bastiaan.


Re: DConf 2019 Submissions and Early-Bird Discount

2019-03-16 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 11 March 2019 at 15:04:54 UTC, Mike Parker wrote:

https://dconf.org/2019/registration.html


I clicked through the Flipcause payment procedure because I know 
that is the preferred channel, and ticked the box for "I'd like 
to cover the processing fee so 100% of my contribution goes to D 
Language Foundation." This adds $20.29 to the bill; is that 
expected? Is it still cheaper than PayPall?


Re: How is your DConf proposal looking?

2019-03-08 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 7 March 2019 at 16:57:11 UTC, Ali Çehreli wrote:

Reminder... :)

  http://dconf.org/2019/index.html

Ali


It's shaping up :-)

Bastiaan.


Re: Beta 2.085.0

2019-02-28 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 24 February 2019 at 22:31:53 UTC, Martin Nowak wrote:
On Saturday, 16 February 2019 at 15:06:51 UTC, Martin Nowak 
wrote:
Glad to announce the first beta for the 2.085.0 release, ♥ to 
the 49 contributors.


http://dlang.org/download.html#dmd_beta 
http://dlang.org/changelog/2.085.0.html


Second beta is live now.


Having an editor open during installation can be problematic.
https://issues.dlang.org/show_bug.cgi?id=19707



Re: The D Programming Language has been accepted as a GSoC 2019 organization

2019-02-27 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 26 February 2019 at 22:34:45 UTC, Seb wrote:

Hi all,

I have some very exciting news to share.

The D Language Language got accepted as a Google Summer of Code 
organization!


The official GSoC page provides a few initial pointers and 
details:


https://summerofcode.withgoogle.com/organizations/6103365956665344


You guys give a very nice description of the language on that 
page. If I didn’t already use D, I would want to now!


Bastiaan.


Re: DIP 1018--The Copy Constructor--Formal Review

2019-02-24 Thread Bastiaan Veelo via Digitalmars-d-announce

On Sunday, 24 February 2019 at 10:46:37 UTC, Mike Parker wrote:
Walter provided feedback on Razvan's implementation. When it 
reached a state with which he was satisfied, he gave the green 
light for acceptance.


The DIP:
https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1018.md


Yay! Congrats to Razvan. Was this a roadblock towards reference 
counting, or am I confused?


Re: Fireside chat with Walter Bright, the creator of the D programming language

2019-02-20 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 14 February 2019 at 23:34:40 UTC, Ali Çehreli wrote:

What specific questions would you like answered?


What are the top D related activities that you spend most time 
on? If you had more time available, how would you wish to spend 
it?


What would be the best next big thing to happen to D?

Are there specific areas in our eco system that you think stand 
out as needing improvement? If so, what would be the best way to 
go about it?


Say you had three skilled employees that you could tell what to 
do. What would you have them work on?


Has D become the language that you envisioned it to be? Has it 
surpassed it, or not yet? How would you like to see it evolve?


Are you happy with the D community?


—Bastiaan.


Re: My Meeting C++ Keynote video is now available

2019-01-12 Thread Bastiaan Veelo via Digitalmars-d-announce
On Saturday, 12 January 2019 at 15:51:03 UTC, Andrei Alexandrescu 
wrote:

https://youtube.com/watch?v=tcyb1lpEHm0

If nothing else please watch the opening story, it's true and 
quite funny :o).


Now as to the talk, as you could imagine, it touches on another 
language as well...



Andrei


Top notch, as usual.

Nice progression from “another language” through “the other 
language”, “d (other) language” to finally just “D language“ :-)


Bastiaan.


Re: Release D 2.084.0

2019-01-02 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 2 January 2019 at 13:25:25 UTC, Martin Nowak wrote:

Glad to announce D 2.084.0, ♥ to the 53 contributors.


Thanks!


Re: DConf 2019: Shepherd's Pie Edition

2018-12-24 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 24 December 2018 at 12:30:57 UTC, Vijay Nayar wrote:
Looking forward to it! The caliber of people at these 
conferences has been exceptional every year I've gone, and many 
of the ideas presented have been very valuable, whether they 
were directly related to DLang or not.


Just one small example was a 2017 talk by Bastiaan Veelo on D 
libraries implementing Parsing Expression Grammars, which I had 
never heard of at the time. But the idea ended up being very 
useful for greatly simplifying the interfaces of systems I was 
working on that year.


Thank you Vijay, that’s nice to hear!

Bastiaan.





Re: DConf 2019: Shepherd's Pie Edition

2018-12-22 Thread Bastiaan Veelo via Digitalmars-d-announce

On Saturday, 22 December 2018 at 16:57:10 UTC, Joakim wrote:
On Saturday, 22 December 2018 at 16:35:27 UTC, Johannes Loher 
wrote:
Also I don't think this is the right place for this 
discussion. If you feel that we indeed need to rediscuss this 
issue, I think it should be done in a separate thread.


I'm not trying to discuss it with you or the community. I'm 
asking the D team [...]


Then why post in the announce thread? If you don’t feel your 
previous thread got your message through, you know how to reach 
the foundation.


I don’t understand how you can argue against technical 
conferences so much if you never attended one, much less DConf. I 
know the odds are slim, but I hope to meet you there someday.


Bastiaan.


Re: I've just released Vasaro

2018-12-07 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 7 December 2018 at 07:22:18 UTC, JN wrote:

Looks nice. I'll give it a go when I plug my 3d printer.


Make sure it prints watertight before using the vase for fresh 
flowers :-)




Re: DIP 1015--Deprecation of Implicit Conversion of Int. & Char. Literals to bool--Formal Assement

2018-11-12 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 12 November 2018 at 17:49:55 UTC, Joakim wrote:
[…]
it's quite simple: they view a bool as an integral type with 
two possible values, a `bit` if you like. As such, they prefer 
to fit it into the existing scheme for integral types rather 
than special-casing booleans as Mike proposed.


I can’t say I have a strong opinion on this, but possibly it 
would be right to have an integral “bit” type to differentiate it 
from the Boolean type, just like we have a “byte” type to 
differentiate it from “char”...


Re: Backend nearly entirely converted to D

2018-11-09 Thread Bastiaan Veelo via Digitalmars-d-announce

On Thursday, 8 November 2018 at 22:21:40 UTC, welkam wrote:

On Thursday, 8 November 2018 at 18:52:02 UTC, H. S. Teoh wrote:

length is getting ridiculous


Having better editor support is nice but by "use better editor" 
you meant use vim dont you?


Please keep chatter on the announce forum to a minimum. Vim is 
not the only editor capable of limiting searches to whole words. 
Sublime Text and Visual Studio Code can do this too, as can 
probably many others.


Re: textattr library for text colors and attributes available in D

2018-11-08 Thread Bastiaan Veelo via Digitalmars-d-announce
On Thursday, 8 November 2018 at 13:37:08 UTC, Shriramana Sharma 
wrote:

https://github.com/jamadagni/textattr/

textattr is a library and command-line tool that makes adding 
color and attributes to beautify the terminal output of your 
program easier by translating human-readable specs into ANSI 
escape codes.


The library is available for C, C++, Python and D. C++ and 
Python use the C code for internal processing but the D code is 
a separate implementation for easy inclusion of textattr.d in a 
D compilation command without requiring any external linking.


Copyright: Shriramana Sharma, 2018
License: BSD-2-Clause


Cool, must remember this in case I need it one day. Do you have 
plans to add it to the dub registry?


Re: LDC 1.13.0-beta1

2018-11-03 Thread Bastiaan Veelo via Digitalmars-d-announce

On Friday, 2 November 2018 at 21:04:13 UTC, kinke wrote:

Glad to announce the first beta for LDC 1.13:

* Based on D 2.083.0.
* The Windows packages are now fully self-sufficient, i.e., a 
Visual Studio/C++ Build Tools installation isn't required 
anymore.

* Substantial debug info improvements for GDB.

Full release log and downloads: 
https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta1


Thanks to all contributors!


You ‘re quick! Great work.


Re: Add D front-end, libphobos library, and D2 testsuite... to GCC

2018-10-29 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 29 October 2018 at 03:43:49 UTC, Mike Parker wrote:
Congratulations are in order for Iain Buclaw. His efforts have 
been rewarded in a big way. Last Friday, he got the greenlight 
to move forward with submitting his changes into GCC:


https://gcc.gnu.org/ml/gcc-patches/2018-10/msg01676.html


Great work, Iain! Thanks for having such a long breath. I'm aware 
that this is not the end of your endeavour, so I wish you good 
luck on the way to your remaining milestones. It must feel great 
to have the road opened up to those!


Bastiaan.


Re: Interfacing D with C: Arrays Part 1

2018-10-18 Thread Bastiaan Veelo via Digitalmars-d-announce

On Wednesday, 17 October 2018 at 15:20:08 UTC, Mike Parker wrote:

The blog:
https://dlang.org/blog/2018/10/17/interfacing-d-with-c-arrays-part-1/


A good read! It’s always nice to discover new content on the blog.


Re: Write for the D Blog!

2018-08-13 Thread Bastiaan Veelo via Digitalmars-d-announce

On Monday, 13 August 2018 at 16:16:31 UTC, Dukc wrote:
But I want to say, that the fairly recent post about SARC 
moving to D was great stuff to read! It had so many links and 
viewpoints rarely mentioned, I was not even aware about them. 
The naval architecht viewpoint is a refresher!


That’s nice to hear, thanks a lot!
Update on that project: I have moved out from the laboratory and 
today I successfully transpiled the second real-world Pascal 
module. The next one requires more thought, as it’s interface and 
implementation are in separate files.


Morale of the story? I think that one should not be afraid to 
post there if he does not consider himself a "regular" 
programmer, because thats precisely what produces the best 
posts.


I appreciate that morale. There's definitely no reason to be shy, 
and Mike is a very helpful editor!


Re: Blogpost about parallelizing Datacat with std.parallelism

2018-07-26 Thread Bastiaan Veelo via Digitalmars-d-announce
On Thursday, 26 July 2018 at 12:13:01 UTC, Joakim Brännström 
wrote:

https://github.com/joakim-brannstrom/blog/blob/master/posts/2018-07-24.md


Nice! I /just/ decided this afternoon that it is time to do some 
profiling; thanks for the tips.




Re: Blogpost about the T.init problem

2018-07-10 Thread Bastiaan Veelo via Digitalmars-d-announce

On Tuesday, 10 July 2018 at 13:41:56 UTC, FeepingCreature wrote:

I've written up a short blogpost about the T.init issue.

It is not very enthusiastic.

https://medium.com/@feepingcreature/d-structs-dont-work-for-domain-data-c09332349f43



Have you tried giving your invariants a valid  initial value? 
Change

  string username;

into

  string username = "noname";


-Bastiaan


  1   2   >