Re: What's the latest GDC stable release version?

2024-06-17 Thread Dejan Lekic via Digitalmars-d-learn

On Sunday, 16 June 2024 at 16:26:08 UTC, mw wrote:

Hi,

What's the latest GDC stable release version?


Stable release version is the same as stable GCC release version. 
Find it here: https://gcc.gnu.org/


(GDC is part of the GCC project for years)


Re: Feedback request from production of the usage of DWT

2024-06-13 Thread Dejan Lekic via Digitalmars-d-learn
On Thursday, 13 June 2024 at 06:59:49 UTC, Menjanahary R. R. 
wrote:

 How important is its adoption?

Is GUI App in D frequent?


There are quite few D GUI projects we are aware of, Tilix being 
one of the popular ones. I have few personal projects that are 
based, like Tilix, on GtkD (https://gtkd.org). I never tried DWT.


Re: How to use eventcore write an echo server?

2024-03-14 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 12 March 2024 at 05:13:26 UTC, zoujiaqing wrote:

How to fix it? than you ;)


Try the following:

```
class Connection
{
StreamSocketFD client;

ubyte[1024] buf = void;

// Add these two lines before the constructor:
nothrow:
@safe:

this(StreamSocketFD client)
```

Also you will need to either comment out calls to writeln() or 
surround them in try/catch as writeln() may throw so it can't 
really be called in nothrow code... For starters just comment all 
calls to writeln() out to make it compile, and then move from 
there.


Re: C to D: please help translate this weird macro

2023-09-20 Thread Dejan Lekic via Digitalmars-d-learn

On Wednesday, 20 September 2023 at 13:55:14 UTC, Ki Rill wrote:

On Wednesday, 20 September 2023 at 13:53:08 UTC, Ki Rill wrote:

Here is the macro:

```C
#define NK_CONTAINER_OF(ptr,type,member)\
(type*)((void*)((char*)(1 ? (ptr): &((type*)0)->member) - 
NK_OFFSETOF(type, member)))

```

I'm trying to translate the Nuklear GUI library to D 
[here](https://github.com/rillki/nuklear-d/tree/nuklear-d-translation).


Here is how `NK_OFFSETOF` is defined:
```c
#define NK_OFFSETOF(st,m) ((nk_ptr)&(((st*)0)->m))
```


NK_OFFSETOF is the same as D's struct `.offsetof` attribute.

NK_CONTAINER_OF should probably be translated to:

`cast(T*)((cast(void*)ptr - __traits(getMember, T, 
member).offsetof))`


PS. I did not invent this. My original idea was far worse than 
this. - It was suggested on IRC by a much cleverer D programmer 
than myself - Herringway@IRC


Re: C to D: please help translate this weird macro

2023-09-20 Thread Dejan Lekic via Digitalmars-d-learn

On Wednesday, 20 September 2023 at 13:55:14 UTC, Ki Rill wrote:

On Wednesday, 20 September 2023 at 13:53:08 UTC, Ki Rill wrote:

Here is the macro:

```C
#define NK_CONTAINER_OF(ptr,type,member)\
(type*)((void*)((char*)(1 ? (ptr): &((type*)0)->member) - 
NK_OFFSETOF(type, member)))

```

I'm trying to translate the Nuklear GUI library to D 
[here](https://github.com/rillki/nuklear-d/tree/nuklear-d-translation).


Here is how `NK_OFFSETOF` is defined:
```c
#define NK_OFFSETOF(st,m) ((nk_ptr)&(((st*)0)->m))
```


Looks like you are not the only one who has issue with them:

https://github.com/Immediate-Mode-UI/Nuklear/issues/94

https://github.com/Immediate-Mode-UI/Nuklear/pull/309


Re: Writing a simple text editor in D using a C tutorial

2023-08-29 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 29 August 2023 at 16:17:56 UTC, Răzvan Birișan wrote:
Is there a better way to use `termios.h` inside D? Am I missing 
the point and there is a way to set these flags in D without 
using C libraries?


I would try to use termios from druntime instead.

Try: import core.sys.posix.termios;


Re: D syntax highlighting in Nano

2023-08-10 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 8 August 2023 at 00:43:59 UTC, Doigt wrote:
Would be nice to have feedback. I made a PR for the improved 
nano syntax project because I don't have a gitlab account to 
contribute directly to the nano project, but feel free to fork 
and do it yourself if you feel it's important/good enough.


Here's the PR:
https://github.com/galenguyer/nano-syntax-highlighting/pull/2


Cool, I have one for years: https://paste.ee/p/V485T
I will definitely borrow some parts of yours!


Re: A New Era for the D Community

2023-05-26 Thread Dejan Lekic via Digitalmars-d-announce

On Wednesday, 3 May 2023 at 11:13:34 UTC, Mike Parker wrote:
Our enthusiasm is high, and we're ready to get going. I think 
you'll like where we're headed.


Good job guys!! This reinforces my belief in what you do.



Re: How to set up D and GLFW/OpenGL project on MacOS, Linux and Windows | [video]

2023-03-15 Thread Dejan Lekic via Digitalmars-d-announce

On Wednesday, 8 March 2023 at 16:45:02 UTC, Ki Rill wrote:
![D and GLFW/OpenGL 
project](https://github.com/rillki/d-glfw-opengl-project-template/blob/main/imgs/d-glfw-opengl.jpg?raw=true)


Here is the [link](https://youtu.be/wG6OG6uWyDw)


Amazing! Thanks!


Re: DConf '23 in London -- Start thinking about your talks!

2023-02-09 Thread Dejan Lekic via Digitalmars-d-announce

On Thursday, 9 February 2023 at 14:58:42 UTC, Mike Parker wrote:
I'm finally able to announce that we're going back to London 
for DConf '23! Thanks to Symmetry Investments for hosting us 
once again.


Woohoo! Can't wait! See you guys there. :)


Re: GCC 12.2 Released (D v2.100.1)

2022-08-19 Thread Dejan Lekic via Digitalmars-d-announce

On Friday, 19 August 2022 at 11:36:09 UTC, Iain Buclaw wrote:

Hi,

GCC version 12.2 has been released.

GCC 12.2 is the first bug-fix release from the GCC 12 branch 
containing important fixes for regressions and serious bugs in 
GCC 12.1 with 11 bugs fixed in GDC since the previous release.


Well-done Ian! You are my hero!


Re: DConf 2022 in London?

2022-02-15 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 15 February 2022 at 12:22:05 UTC, Mike Parker wrote:
Personally, I'm super pumped about this. I hope to see a lot of 
you in London in August!


I will definitely attend. See you there! :)


Re: Introducing the wren-port DUB package

2021-12-22 Thread Dejan Lekic via Digitalmars-d-announce
On Saturday, 18 December 2021 at 15:13:33 UTC, Guillaume Piolat 
wrote:
Wren is a small, fast, and class-based concurrent scripting 
language.
wren-port is a D transation of the Wren v0.4 programming 
language implementation, intended for embedding.
This is useful is you want a nothrow @nogc fast interpreter in 
your D application.
Our goal is not to stay compatible but tune this for use as an 
"imperative CSS" language for Dplug UIs.


Brilliant! - I also recommend reading "Crafting Interpreters" 
book by the creator of Wren.


Re: DConf Online 2021 T-Shirts

2021-11-11 Thread Dejan Lekic via Digitalmars-d-announce

On Wednesday, 20 October 2021 at 11:50:00 UTC, Mike Parker wrote:


"Entry" would imply a downward trajectory! Our thing is 
launching.


True. It is in the "launching" phase for 20 years...


Re: A GUI for DMD, the final version has been release.

2021-10-11 Thread Dejan Lekic via Digitalmars-d-announce

On Saturday, 9 October 2021 at 23:02:22 UTC, Murilo wrote:
Hi guys, I've just finished the final version of the DMD GUI, 
there is Linux and a Windows version, click on the link below 
to download it:

https://github.com/MuriloMir/DMD-GUI


It is always good to see new D projects, but why should I not 
simply use Adam's simpledisplay directly?


Re: GtkD Coding Post #0113: GTK/GIO Application IDs and Signals

2021-09-13 Thread Dejan Lekic via Digitalmars-d-announce

On Friday, 10 September 2021 at 08:18:48 UTC, Ron Tarrant wrote:

Continuation of the discussion from last week:

https://gtkdcoding.com/2021/09/10/0113-gtk-gio-application-ids-signals.html


I am glad to see GtkDCoding back in action! :)


Re: wanting to try a GUI toolkit: needing some advice on which one to choose

2021-05-27 Thread Dejan Lekic via Digitalmars-d-learn

On Thursday, 27 May 2021 at 01:17:44 UTC, someone wrote:

Yes, I know this is a question lacking a straightforward answer.

Requirements:

[...]


I humbly believe the most complete one is GtKD.

https://gtkdcoding.com/
https://gtkd.org

We all wish there was a STANDARD D GUI library out there, but 
that is a huge effort one or two individuals can't do by 
themselves (that is why all such efforts failed in the past)...


Re: Release of std.io v0.3.0

2020-08-04 Thread Dejan Lekic via Digitalmars-d-announce
On Sunday, 26 July 2020 at 17:09:07 UTC, Steven Schveighoffer 
wrote:
I have released a minor improvement to std.io [1], which adds 
support for opening the standard handles (stdin, stdout, 
stderr) [2].


I always hoped, since the stream package has been deprecated, 
that std.io will get merged into Phobos. Is that ever going to 
happen?


Re: code.dlang.org reliability update

2020-03-03 Thread Dejan Lekic 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].


Sönke, thanks a lot for all the effort you are putting into this 
over the years. Very much appreciated!


Re: dmd memory usage

2019-11-18 Thread Dejan Lekic via Digitalmars-d-learn
On Monday, 18 November 2019 at 00:20:12 UTC, Steven Schveighoffer 
wrote:
I'm fighting some out of memory problems using DMD and some 
super-template heavy code.


I have ideas on how to improve the situation, but it involves 
redesigning a large portion of the design. I want to do it 
incrementally, but I need to see things improving.


Is there a straightforward way to figure out how much memory 
the compiler uses during compilation? I though maybe 
/usr/bin/time, but I feel like I don't trust the output to be 
the true max resident size to be what I'm looking for (or that 
it's 100% accurate). Is there a sure-fire way to have DMD print 
it's footprint?


-Steve


You can wrap the whole thing in a shell script that takes PID of 
the compiler, and uses psrecord [1] Python tool to give you CPU 
and memory chart.


[1] https://pypi.org/project/psrecord/


Re: D for microservices: ldc, rdmd, dub now available on Alpine x86_64

2019-11-05 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 5 November 2019 at 02:16:28 UTC, Mathias Lang wrote:

Hi all,
Recently there have been inquiries about support for D on 
Alpine Linux, a distribution mostly used in combination with 
Docker to create lightweight container images for microservices.


At BPF Korea, we're working on a blockchain written in D, and 
wanted to be able to easily test and distribute our node using 
Alpine images, but there was no package for it yet.


I am confused... Why do you need LDC, DMD, dub, etc on Alpine? 
Can't you build it anywhere and just put the final artifact (or 
set of artifacts) inside an Alpine-based container?


Re: rapidxml for D has been ported.

2019-10-15 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 8 October 2019 at 08:56:26 UTC, zoujiaqing wrote:
RapidXml is an attempt to create the fastest XML parser 
possible, while retaining useability, portability and 
reasonable W3C compatibility. It is an in-situ parser written 
in modern C++, with parsing speed approaching that of strlen 
function executed on the same data. RapidXml has been around 
since 2006, and is being used by lots of people.


So... you ported the RapidXml code, yet you do not mention this 
project anywhere, no credits to its authors, no information about 
the original license, etc? Am I summing this up correctly?


Re: Redis client hunt-redis RC1 released

2019-07-25 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 23 July 2019 at 07:57:06 UTC, zoujiaqing wrote:

A Powerfull Redis client library for D Programming Language.

Porting from java Jedis, support redis 3.x / 4.x all features 
and 5.x

 some features.


Can it connect to AWS ElastiCache cluster endpoint?


Re: Redis client hunt-redis RC1 released

2019-07-25 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 23 July 2019 at 07:57:06 UTC, zoujiaqing wrote:

A Powerfull Redis client library for D Programming Language.

Porting from java Jedis, support redis 3.x / 4.x all features 
and 5.x

 some features.


Why? There is the excellent TinyRedis project. Does it not have 
some feature you need?


Re: I was able to write some D last week!

2019-07-09 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 9 July 2019 at 12:09:14 UTC, Greatsam4sure wrote:


All the web framework only vibe was set up with business in 
mind.


Not entirely true - there is a (pretty active) project out there 
called "Hunt Framework" - 
https://github.com/huntlabs/hunt-framework


Re: SendMessageTimeoutW requires casting string to uint?

2019-07-09 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 9 July 2019 at 10:34:54 UTC, BoQsc wrote:


All I know that there was toString16z function from tango 
project, that made it all work.




Now that I browsed the std.utf more, I realised what fits your 
need best is the https://dlang.org/phobos/std_utf.html#toUTF16z


Re: SendMessageTimeoutW requires casting string to uint?

2019-07-09 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 9 July 2019 at 10:34:54 UTC, BoQsc wrote:
I'm quite new to the programming, and I'm getting unsure how to 
make SendMessageTimeoutW to work with D lang.


Most of my attention right now resides around the Argument of 
the SendMessageTimeoutW function:

"Environment",


It seems that SendMessageTimeoutW  accepts only uint type, and 
string can't be directly used.


I think that I have to convert string characters to "C-style 0 
terminated string".

And everything should work? But I'm unsure how to do that.


All I know that there was toString16z function from tango 
project, that made it all work.




std.utf module has all encoding/decoding you need (in this case 
UTF-16). I guess You need to convert your string using toUTF16 ( 
https://dlang.org/phobos/std_utf.html#toUTF16 ). I do not do 
Windows programming so I am not 100% sure whether this will work 
or not. Give it a try.


Re: SendMessageTimeoutW requires casting string to uint?

2019-07-09 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 9 July 2019 at 11:06:54 UTC, Dejan Lekic wrote:


std.utf module has all encoding/decoding you need (in this case 
UTF-16). I guess You need to convert your string using toUTF16 
( https://dlang.org/phobos/std_utf.html#toUTF16 ). I do not do 
Windows programming so I am not 100% sure whether this will 
work or not. Give it a try.


Maybe even the straightforward to!wchar will work!?


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

2019-07-03 Thread Dejan Lekic 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. The job is on-site, and 
the company is willing to sponsor your Visa application and 
will guide you through the entire process.


I've posted this on the LinkedIn's "D Developer Network" - 
https://www.linkedin.com/groups/3923820/


Re: gtkDcoding Blog: Post #0009 - Boxes

2019-02-14 Thread Dejan Lekic via Digitalmars-d-announce

On Wednesday, 13 February 2019 at 02:42:07 UTC, DanielG wrote:

Why not just make a single thread, "gtkDecoding Blog updates", 
and always append to it? It will bump the topic back up to the 
top whenever you add something.


Maybe because it is a different topic, and he wants to start a 
new (unrelated) discussion. If you put everything in one thread 
you may end up with a mess when people reply to different things 
(no, not everyone uses news clients and threaded mode)...


Re: a van Emde Boas tree

2019-02-05 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 5 February 2019 at 15:28:04 UTC, Alex wrote:

Hi all,
my van Emde Boas tree finally reached an announceable state, at 
version 0.12.0.


vEB tree is an interesting data structure. Where is the 
implementation? - You did not provide any links...


Re: Singleton in Action?

2019-02-03 Thread Dejan Lekic via Digitalmars-d-learn

On Saturday, 2 February 2019 at 16:56:45 UTC, Ron Tarrant wrote:

Hi guys,

I ran into another snag this morning while trying to implement 
a singleton. I found all kinds of examples of singleton 
definitions, but nothing about how to put them into practice.


Can someone show me a code example for how one would actually 
use a singleton pattern in D? When I did the same thing in PHP, 
it took me forever to wrap my brain around it, so I'm hoping to 
get there a little faster this time.


I strongly suggest you find the thread started by Andrej Mitrovic 
many years ago. He compared several implementations of 
(thread-safe) singletons. I it an extremely helpful stuff, IMHO.


Re: Hunt framework 2.0.0 released

2019-01-29 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 29 January 2019 at 10:00:22 UTC, zoujiaqing wrote:
The HuntLabs team is happy to announce the release of Hunt 
Framework 2.0.


Looks impressive. I like the fact that VibeD has some competition 
- it is healthy that way. Good job guys!


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

2019-01-16 Thread Dejan Lekic via Digitalmars-d-announce
On Monday, 14 January 2019 at 10:18:34 UTC, Martin Tschierschke 
wrote:


This is exactly the argument to get a database driver 
(mysql,postgres...) and probably a webserver in std.


Absolutely not! Please...

IMHO, what needs to be in std are just APIs (modules, interfaces, 
declarations)...
Leave the implementations elsewhere please. Standard library is 
already too large for my taste!


What should be in std are just core stuff that is needed 
everywhere.


However, the REFERENCE IMPLEMENTATIONS of these APIs could be, 
and in fact SHOULD be, in a set of higher-level implementation 
libraries that should be developed by the D Foundation, and 
available on the dlang.org for downloads. (part of some kind of 
Standard Library Suite)


Re: DConf 2019: Shepherd's Pie Edition

2019-01-11 Thread Dejan Lekic via Digitalmars-d-announce

On Friday, 28 December 2018 at 16:31:01 UTC, Adam D. Ruppe wrote:

On Friday, 28 December 2018 at 07:08:19 UTC, Dejan Lekic wrote:
While I admire your persistence I fail to understand why you 
simply don't ignore stuff you do not like. If you do not like 
conferences fine - do not go there, and let us who do like 
them and think they are useful have some fun!


Some of us want to improve things for everyone else, too.

Isn't that what open source is all about? We do it initially 
because it works for us, but then share it because it helps the 
community as well.


If you actually tried these improvements, you'd probably like 
them. Even our conservative managers at the day job have 
responded positively to similar changes we made over the last 
year.


Etc...

Just to make it clear - I do not say I am against some other 
formats, web conferences, digital meetups, or whatever. I am just 
saying that there are people who still prefer DConf as it is 
(was). If a group of D enthusiasts want to try something else, by 
all means do it! But do not try to be a partybreaker like Joakim 
and whenever someone mentions DConf he starts talking crap...


I see absolutely NO problem at all if there is a regular DConf, 
and some other forms of communication that Joakim, or you, prefer!


This said - can't wait to attend the DConf in the UK!


Re: DConf 2019: Shepherd's Pie Edition

2018-12-27 Thread Dejan Lekic via Digitalmars-d-announce

On Saturday, 22 December 2018 at 13:46:39 UTC, Joakim wrote:


Given that this conference format is dying off, is there any 
explanation for why the D team wants to continue this 
antiquated ritual?


Why are you bringing this again? Are you going to talk the same 
stuff whenever someone mentions some conference here?? :) While I 
admire your persistence I fail to understand why you simply don't 
ignore stuff you do not like. If you do not like conferences fine 
- do not go there, and let us who do like them and think they are 
useful have some fun!


Re: Spasm - webassembly libary for single page applications

2018-10-15 Thread Dejan Lekic via Digitalmars-d-announce
On Sunday, 14 October 2018 at 19:04:51 UTC, Sebastiaan Koppe 
wrote:
It turns out jumping between wasm and js isn't really a big 
deal (at least not anymore), so I ditched that idea to keep 
things simple.


Plus, there is a good chance that in the near future wasm will 
be able to call the browsers' api directly.


Precisely, that is why I like this approach. Good job.


Re: Spasm - webassembly libary for single page applications

2018-10-13 Thread Dejan Lekic via Digitalmars-d-announce
On Friday, 12 October 2018 at 19:43:25 UTC, Sebastiaan Koppe 
wrote:

I like to announce Spasm https://github.com/skoppe/spasm

It is a webassembly library to develop single page applications 
and builds on my previous work 
(https://forum.dlang.org/post/eqneqstmwfzugymfe...@forum.dlang.org).


I must say even at this stage this library is awesome! Good job! 
Keep up with the good work! :)


Re: You don't like GC? Do you?

2018-10-12 Thread Dejan Lekic via Digitalmars-d
On Friday, 12 October 2018 at 16:26:49 UTC, Stanislav Blinov 
wrote:

On Thursday, 11 October 2018 at 21:22:19 UTC, aberba wrote:

"It takes care of itself
---
When writing a throwaway script...


...there's absolutely no need for a GC. In fact, the GC runtime 
will only detract from performance.


What this means is that whenever I have disregarded a block of 
information, say removed an index from an array, then that 
memory is automatically cleared and freed back up on the next 
sweep. While the process of collection and actually checking


Which is just as easily achieved with just one additional line 
of code: free the memory.



Don't be a computer. Do more with GC.


Writing a throwaway script there's nothing stopping you from 
using mmap or VirtualAlloc. The "power" of GC is in the 
language support for non-trivial types, such as strings and 
associative arrays. Plain old arrays don't benefit from it in 
the slightest.


What a bunch of nonsense! I used to talk like this some 20 years 
ago when all I saw in the computing world was C and C++...


Sure garbage collection is not for every project, depends what 
industry you are in I guess... In my case (business 
applications/services) I have never had the need to turn off 
garbage collection!


However, someone in the gaming industry, embedded or realtime 
systems would indeed need to turn off the GC...


Re: Passing $ as a function argument

2018-10-11 Thread Dejan Lekic via Digitalmars-d

On Thursday, 11 October 2018 at 06:58:08 UTC, Simen Kjærås wrote:


unittest {
auto x = fun($); // What does it even mean?
}


After some reading through the whole thread I think his "$ idea" 
can only be applied to a RandomAccessRange (and similar) where 
the size can be known...




Re: Please don't do a DConf 2018, consider alternatives

2018-10-03 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 3 October 2018 at 16:21:45 UTC, Joakim wrote:
Like most of the responses in this thread, I have no idea why 
you're stumping for in-person interaction, when all my 
suggestions were geared around having _more in-person 
interaction_.


If you're still not sure what I mean, read this long post I 
wrote fisking Adam's similar post:


https://forum.dlang.org/post/eoygemytghynpogvl...@forum.dlang.org


Perhaps you did not get my point?

- I have nothing against core D team having web-conferences as 
much as they please. It is up to them (and they may already have 
them?) how they want to communicate.


What I argued about was that, just because some antisocial geek 
argues that conferences are "dead" because we have 
web-conferencing and similar means of communication does not mean 
we all share that opinion... Everyone can record a "talk" with 
slides and put it on some video streaming site like Vimeo or 
YouTube, but I personally see that as ANOTHER way to reach the 
community, certainly NOT an alternative to a well-organised 
conference!


Do not get me wrong, I have nothing against the proposal - I 
think D community can have both good, annual conference, AND what 
web-conferencing between core D devs, and people who would record 
talks in their rooms or offices and make them public...


Re: Warn on unused imports?

2018-10-03 Thread Dejan Lekic via Digitalmars-d
On Thursday, 27 September 2018 at 18:35:58 UTC, Nick Sabalausky 
(Abscissa) wrote:

On 09/26/2018 04:37 AM, Dejan Lekic wrote:
On Tuesday, 25 September 2018 at 13:03:30 UTC, FeepingCreature 
wrote:
I'm playing with a branch of DMD that would warn on unused 
imports:


I humbly believe this does not belong to the compiler. These 
sort of things belong to a static code analyser TOOL. Think of 
checkstyle/findbugs in Java, or flake8/pep8 in Python world.


It amounts to the same thing. What you're talking about 
ultimately boils down to nothing more than the trivial 
distinction between:


toolx ...
toola --do-x ...

And if you still prefer the former, that can be trivially 
created via shell alias or a one-liner script.


OTOH, If you're talking about whether action X should be taken 
by default, than that's an entirely orthogonal matter to 
whether or not it can be included in the compiler.


IDK, I prefer things done in the UNIX way - do one thing and do 
it right. Compiler should do what its name says - COMPILE, while 
some other tool should be made for these kind of code checks. The 
code will compile no matter whether there are some unused imports 
or not, right?


Re: Please don't do a DConf 2018, consider alternatives

2018-10-03 Thread Dejan Lekic via Digitalmars-d

On Tuesday, 2 October 2018 at 06:26:30 UTC, Joakim wrote:
I'm sure some thought and planning is now going into the next 
DConf, so I'd like to make sure people are aware that the 
conference format that DConf uses is dying off, as explained 
here:


https://marco.org/2018/01/17/end-of-conference-era


It is a matter of personal preference, and a view of a modern-day 
geek, in my humble opinion... I _highly disagree_. People go to 
conferences for different reasons. You know, even though we 
"computer people" tend to be branded as antisocial, there are 
still many of us who prefer to see someone in person, talk to 
him/her, meet new people, speak to them too, build the network, 
exchange phone numbers, etc...


As usual with conferences not all people are happy - you will 
ALWAYS have people who prefer more technical stuff, and people 
who prefer more business side - people who try to promote their 
products and services. - Conferences are brilliant places for 
them.


Another group of people interested in conferences and meetups are 
recruiters. My company found few new colleagues this way...


Yet another group are people who also want to see the town where 
the conference is held - it is a form of tourism if you like.


Yes, you can have all that interaction with some 
internet-conferencing software, but not at the level when people 
interact with each other directly!


Re: Warn on unused imports?

2018-09-26 Thread Dejan Lekic via Digitalmars-d
On Tuesday, 25 September 2018 at 13:03:30 UTC, FeepingCreature 
wrote:
I'm playing with a branch of DMD that would warn on unused 
imports:


I humbly believe this does not belong to the compiler. These sort 
of things belong to a static code analyser TOOL. Think of 
checkstyle/findbugs in Java, or flake8/pep8 in Python world.


I think developing such tool as part of the D Language team group 
(GitHub) makes more sense than anything else...


Re: Copy Constructor DIP and implementation

2018-09-12 Thread Dejan Lekic via Digitalmars-d-announce
On Tuesday, 11 September 2018 at 15:22:55 UTC, rikki cattermole 
wrote:


Here is a question (that I don't think has been asked) why not 
@copy?


@copy this(ref Foo other) { }

It can be read as copy constructor, which would be excellent 
for helping people learn what it is doing (spec lookup).


Also can we really not come up with an alternative bit of code 
than the tupleof to copying wholesale? E.g. super(other);


I could not agree more. @implicit can mean many things, while 
@copy is much more specific... For what is worth I vote for @copy 
! :)


Re: Mobile is the new PC and AArch64 is the new x64

2018-09-12 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 12 September 2018 at 08:09:46 UTC, Joakim wrote:
I contacted one of the few companies putting out RISC-V dev 
boards, Sifive, a couple weeks ago with the suggestion of 
making available a paid RISC-V VPS, and one of their field 
engineers got back to me last week with a note that they're 
looking into it.


I think their model of having an open ISA with proprietary 
extensions will inevitably win out for hardware, just as a 
similar model has basically won already for software, but that 
doesn't mean that RISC-V will be the one to do it. Someone else 
might execute that model better.


I could not agree more - look at Parallella! Their model is the 
same yet it ultimately failed (unfortunately as I think Exynos is 
seriously good stuff)! :(


Re: Mobile is the new PC and AArch64 is the new x64

2018-09-11 Thread Dejan Lekic via Digitalmars-d

On Monday, 10 September 2018 at 13:43:46 UTC, Joakim wrote:
LDC recently added a linux/AArch64 CI for both its main 
branches and 64-bit ARM, ie AArch64, builds have been put out 
for both linux and Android. It does not seem that many are 
paying attention to this sea change that is going on with 
computing though, so let me lay out some evidence. ...


I mostly agree with you, Joakim. I own a very nice (but now old) 
ODROID U2 (check the ODROID XU4 or C2!) so ARM support is 
important for me...


Also, check this: 
https://www.hardkernel.com/main/products/prdt_info.php?g_code=G152875062626


HOWEVER, I think Iain is right - PPC64 and RISC-V are becoming 
more and more popular nowadays and may become more popular than 
ARM in the future but that future is unclear.


Re: What changes to D would you like to pay for?

2018-09-07 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 5 September 2018 at 07:00:49 UTC, Joakim wrote:
The D foundation is planning to add a way for us to pay for 
changes we'd like to see in D and its ecosystem, rather than 
having to code everything we need ourselves or find and hire a 
D dev to do it:


I would donate again to DFoundation towards the administration 
and proper handling of the development process. Let me clarify - 
I expect D Foundation to oversee the D development process in the 
same fashion the JCP (Java Community Process) works. - That is an 
example of how professionals handle these things.


The D Foundation should, in my humble opinion, start the design 
(and perhaps the development) of commonly used APIs that may or 
may not be part of Phobos (APIs yes, the implementation should be 
separate library).


The following APIs come first to my mind:
- Crypto API
- Networking API (supporting all major protocols, and giving nice 
set of interfaces to implement own - look at protocol handlers in 
Java, or similar)

- Graphics (2D and 3D)
- GUI API (a rock-solid, scene based like JavaFX)
- Database API
- TUI (console UI)
- Security API (Role-base Access, etc)
- VFS API (Look at Apache Commons VFS)

Again Phobos should only contain interfaces - refecence 
implementation should be in the libphobos- (example: 
libphobos-crypto.so)


The design and the development (or coordinating the development) 
of these APIs should be the D Foundation responsibility. Also 
future improvements should be part of the the improvement process 
that is also governed by the D Foundation (look at Python PEPs)...


I talked about this on IRC many times with other D programmers. 
Rich set of APIs is why languages like Java, Python, JavaScript, 
Go, etc gained so much popularity.


The more I see the D Foundation do these things, the more I will 
be willing to donate.


Re: Dicebot on leaving D: It is anarchy driven development in all its glory.

2018-08-24 Thread Dejan Lekic via Digitalmars-d

On Friday, 24 August 2018 at 13:04:28 UTC, Chris wrote:
I've been working with Java recently and although it is not an 
exciting language, it does the job and it does it well. You can 
rely on it to get the job done - and get it done fast. And you 
know that your code will still work next week, month or in 5 
years. In everyday programming life you don't care about the 
latest fancy features. Imo, D should slow down, take inventory, 
do some spring cleaning and work on useful libraries and a 
sound ecosystem. I don't care what color the bike shed is as 
long as there are bikes in there that actually work.


Atm, I'm not considering D for any important and or big 
projects.


There is exactly where I am - I am using Java (and more recently 
Python) for serious stuff.


I am however in favour of D moving fast (that is why many Java 
programmers moved to Kotlin/Scala!). The only problem with D is 
that there should be stable release of D2 (two times a year, like 
Fedora for an example), and this stable release gets only 
security updates and bug-fixes!


I know this would require someone to maintain all this (it is a 
full-time job!)...


Re: Work on ARM backend for DMD started

2018-07-06 Thread Dejan Lekic via Digitalmars-d-announce

On Thursday, 20 July 2017 at 22:08:16 UTC, Walter Bright wrote:
I wouldn't be discouraged by the nay-sayers. If you want to 
build an ARM back end for it, do it! About every project I've 
ever embarked on, including D, started with everyone nay-saying 
it.


Keep it that way and thanks for it!! :)


Re: A Case for Oxidation: A potential missed opportunity for D

2018-06-29 Thread Dejan Lekic via Digitalmars-d

On Friday, 29 June 2018 at 10:55:27 UTC, kinke wrote:
Phobos. I understand the separate 'minimal runtime' need for 
bare metal (no Type- and ModuleInfos etc.), but I can't help 
myself in seeing betterC as, nicely put, worseD. I acknowledge


I *completely* agree. However, I have nothing against betterC as 
long as people like me, who do enterprise software, are 
guaranteed to see "-betterD" option (here I actually mean - as 
long as the "regular" D is improving)...


Re: iopipe v0.1.0 - now with Windows support!

2018-06-11 Thread Dejan Lekic via Digitalmars-d-announce
On Sunday, 10 June 2018 at 20:10:31 UTC, Steven Schveighoffer 
wrote:

iopipe version 0.1.0 has been released.

iopipe is a high-performance pipe processing system that makes 
it easy to string together pipelines to process data with as 
little buffer copying as possible.


All I can say (again, like I repeated on IRC many times) is that 
iopipe should be in the current form, or another, in Phobos. I 
just love it!


Re: D on top of Hacker News!

2018-06-05 Thread Dejan Lekic via Digitalmars-d

On Sunday, 3 June 2018 at 17:40:46 UTC, I love Ice Cream wrote:
Is D really a top 20 language? I don't remember seeing it 
anywhere close to the top 20.



https://www.tiobe.com/tiobe-index/ has them in 31


Top comment is kind of depressing.


The right place to look is https://www.tiobe.com/tiobe-index/d/

I agree with other comments regarding TIOBE - they are constantly 
changing how they do statistics so they are not relevant source 
at all. Just look where Kotlin is there and that should pretty 
much tell you everything. I know at least 10 large companies that 
are moving from Java/Scala to Kotlin, yet Kotlin is at the bottom 
50 table... Ridiculous...


Re: Is D releasing too often?

2018-05-14 Thread Dejan Lekic via Digitalmars-d

On Monday, 14 May 2018 at 07:20:48 UTC, Joakim wrote:
There have been 6 major releases of dmd over the last year, 
with ldc trying to keep pace, currently only one release 
behind. This is a big jump up from the previous release 
schedule, I see 2 major releases in 2014, 3 in 2015, and 3 in 
2016.


There are obviously pros and cons to each pace, and this has 
been debated internally before, with one of the ldc devs again 
posting to the Internals mailing list today questioning the 
current speed.


I thought I'd open it up to the community: now that you've 
experienced this faster pace, as a user of the D compilers, how 
do you like it? Would you prefer a slower release schedule, say 
3-4 major releases a year?


I thought 6/year was an ambitious schedule when announced and I 
wonder if it isn't putting too much strain on our few release 
maintainers, maybe 3-4 releases/year would be a more gradual 
bump up.


I have nothing against releasing that often as long as there is a 
LTS version, and that is where the problem lies - we do not have 
it. So what I do is simply base my production code on particular 
release, and every few months allocate few days job to try to 
bring the code up-to-date with latest DMD.


Re: dxml 0.3.0 released

2018-04-20 Thread Dejan Lekic via Digitalmars-d-announce
On Thursday, 19 April 2018 at 14:40:58 UTC, Jonathan M Davis 
wrote:
Well, since I'm going to be talking about dxml at dconf, and 
it's likely that I'll be talking about stuff that was not in 
the 0.2.* releases, it seemed like I should get a new release 
out before dconf. So, here it is.


dxml 0.3.0 has now been released.

I won't repeat everything that's in the changelog, but the 
biggest changes are that writer support has now been added, and 
it's now possible to configure how the parser handles 
non-standard entity references.


Please report any bugs that you find via github.

Changelog: http://jmdavisprog.com/changelog/dxml/0.3.0.html
Documentation: http://jmdavisprog.com/docs/dxml/0.3.0/
Github: https://github.com/jmdavis/dxml/tree/v0.3.0
Dub: http://code.dlang.org/packages/dxml

- Jonathan M Davis


I am happy to see dxml moving on!
Jonathan, are the interfaces in the dom module generated from the 
IDL code from W3C?


Re: Optional parameters?

2018-04-04 Thread Dejan Lekic via Digitalmars-d-learn
On Sunday, 1 April 2018 at 15:54:16 UTC, Steven Schveighoffer 
wrote:
I currently have a situation where I want to have a function 
that accepts a parameter optionally.


This is what function overloading and/or default values are for, 
right?




Re: dmd -unittest= (same syntax as -i)

2018-03-16 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 14 March 2018 at 22:04:50 UTC, Adam D. Ruppe wrote:
On Wednesday, 14 March 2018 at 21:22:01 UTC, Timothee Cour 
wrote:
would a PR for `dmd -unittest= (same syntax as -i)` 
be welcome?


so when this came up on irc earlier (was that you?) this was 
the first thought that came to my mind. I'd support it, tho I'm 
no decision maker.


I guess it was me talking about it two days ago on IRC...

Almost exclusively I need to run unittests only in the module I 
currently work on and it really makes no sense to run other 
unittests at that point of time (unless I explicitly want to). I 
would even go further to say that we basically need to be able to 
run particular unittest.


What I do at the moment is that I developed this kind of practice 
to have a test_runner.d top-level module in every D project of 
mine that contains tests I do during the development of 
particular feature TDD style, and then once I am done, I move 
this code to appropriate unittest blocks in my final module...


There are bunch of issues with existing support for unittests 
that could be solved to make unit-testing a really pleasant 
activity.


Re: Article: Why Const Sucks

2018-03-05 Thread Dejan Lekic via Digitalmars-d-announce

On Monday, 5 March 2018 at 10:57:35 UTC, Jonathan M Davis wrote:

Here's something I wrote up on const:

http://jmdavisprog.com/articles/why-const-sucks.html

I suppose that it's not exactly the most positive article, but 
I feel that it's accurate.


- Jonathan M Davis


Brilliant article, Johathan! I feel the same...


Re: DConf 2018 Logo

2017-11-17 Thread Dejan Lekic via Digitalmars-d
On Wednesday, 15 November 2017 at 14:56:53 UTC, Andrei 
Alexandrescu wrote:
Hello, for all of you with expertise in graphics, we'd be in 
your debt if you could create a logo for DConf 2018. Proposals 
would be appreciated!


Thanks,

Andrei


Why a new logo? The last year's one is superb and should be used 
in all future DConfs, IMHO.


Re: Project Elvis

2017-11-07 Thread Dejan Lekic via Digitalmars-d

On Tuesday, 7 November 2017 at 09:42:50 UTC, Satoshi wrote:


I strongly agree with you.


As I wrote earlier int this thread. Kotlin has the `?.` operator 
for the same reason. I honestly can't think of a more obvious 
operator for that purpose...


Re: Project Elvis

2017-10-30 Thread Dejan Lekic via Digitalmars-d
On Saturday, 28 October 2017 at 11:38:52 UTC, Andrei Alexandrescu 
wrote:
Walter and I decided to kick-off project Elvis for adding the 
homonym operator to D.


Razvan Nitu has already done a good part of the work:

https://github.com/dlang/dmd/pull/7242
https://github.com/dlang/dlang.org/pull/1917
https://github.com/dlang/dlang.org/pull/1918


Is it going to be something similar (or the same) as in Kotlin? 
(Reference: 
https://kotlinlang.org/docs/reference/null-safety.html#elvis-operator )


I see from comments that different people think of it in a 
different way. I suggest them to read this section from Kotlin 
docs to understand the reasoning behind the elvis operator.


Re: Note from a donor

2017-10-24 Thread Dejan Lekic via Digitalmars-d
On Tuesday, 24 October 2017 at 13:20:10 UTC, Andrei Alexandrescu 
wrote:
A person who donated to the Foundation made a small wish list 
known. Allow me to relay it:


* RSA Digital Signature Validation in Phobos
* std.decimal in Phobos
* better dll support for Windows.


Andrei


First two are in my wish list too!



Re: Replacing Make for the DMD build

2017-06-19 Thread Dejan Lekic via Digitalmars-d

On Friday, 16 June 2017 at 06:30:01 UTC, Russel Winder wrote:

A direct question to Walter and Andrei really.

If someone, let us say Russel Winder, create a CMake/Ninja 
and/or Meson/Ninja build for DMD, is there any chance of it 
being allowed to replace the Make system?


If the answer is no, then Russel will obviously not waste his 
time doing something that will not be accepted.


Why?

Why replacing a rock-stable Make with build-system-X that most 
likely adds another dependency. I am with Walter on this one. - 
We should continue using Make unless there is a real need for 
something else. DMD's makefiles are really simple!




Re: sqlite3 vs. sqlite-d

2017-06-08 Thread Dejan Lekic via Digitalmars-d

On Thursday, 8 June 2017 at 13:37:41 UTC, Russel Winder wrote:

Exactly my point. Using SQLAlchemy made me actually enjoy 
writing database code. Which I did last year having avoided it


Using ORM like SQLAlchemy certainly has benefits but like any 
other ORM, it generates hideous SQL code, sometimes terribly 
slow...


Re: ndslice summary please

2017-04-13 Thread Dejan Lekic via Digitalmars-d-learn

On Thursday, 13 April 2017 at 10:00:43 UTC, 9il wrote:

On Thursday, 13 April 2017 at 08:47:16 UTC, Ali Çehreli wrote:
I haven't played with ndslice nor followed its deprecation 
discussions. Could someone summarize it for us please. Also, 
is it still used outside Phobos or is Ilya or someone else 
rewriting it?


Ali


The reasons to use mir-algorithm instead of std.range, 
std.algorithm, std.functional (when applicable):


1. It allows easily construct one and multidimensional random 
access ranges. You may compare `bitwise` implementation in 
mir-algorithm and Phobos. Mir's version few times smaller and 
do not have Phobos bugs like non mutable `front`. See also 
`bitpack`.

2. Mir devs are very cary about BetterC
3. Slice is universal, full featured, and multidimensional 
random access range. All RARs can be expressed through generic 
Slice struct.

4. It is faster to compile and generates less templates bloat.
For example:

slice.map!fun1.map!fun2

is the same as

slice.map!(pipe!(fun1, fun2))

`map` and `pipe` are from mir-algorithm.


It is all good, but I am sure many D programmers, myself 
included, would appreciate if shortcomings of Phobos are fixed 
instead of having a completely separate package with set of 
features that overlap... I understand ndslice was at some point 
in the `experimental` package, but again - it would be good if 
you improve existing Phobos stuff instead of providing a separate 
library that provides better implementation(s).


Re: BLAS implementation for D

2017-04-13 Thread Dejan Lekic via Digitalmars-d-announce

On Thursday, 13 April 2017 at 09:18:06 UTC, data pulverizer wrote:
I have just finished the first version of a BLAS implementation 
for D mostly done by code conversion from GSL's BLAS module 
https://github.com/dataPulverizer/dblas


It is complete functionally with respect covering all the 
functions implemented in BLAS. @9il has suggested that we 
should work to merge this library with Mir GLAS which I think 
is a good idea.


As the readme says the next phase is:

* Performance optimization
* Complete unit test coverage
* Type specific BLAS aliases

Thanks

p.s. Sorry for originally positing this in the General Forum, 
it should be here instead


---
DP


Really good stuff! I see no reason for calling it dblas (the 
package) - simple `blas` would do I think... :)





Re: Thoughts from newcommer

2017-04-13 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 12 April 2017 at 09:38:49 UTC, Russel Winder wrote:
On Tue, 2017-04-11 at 20:07 +, Stefan Koch via 
Digitalmars-d wrote:

[…]


At the risk of starting a flame war:



The memory safety is currently in the works.
We just have one std-lib now.
GC is slow, yes.


I don't care, it doesn't impact the programs I write, and the 
GC means I can be a little profligate with memory.



The short-term solution is to avoid it.


But only if you have to, if you don't have to don't worry.

Oh and measure do not guess.


(All gc-ed langauges recommend static preallocation :P)


Absolute ### 


Amen to that!


Re: pImpl in D

2017-04-04 Thread Dejan Lekic via Digitalmars-d

On Tuesday, 4 April 2017 at 12:05:15 UTC, Satoshi wrote:

Hi,
do someone have any experience with pImpl and inheritance in D?


Some parts of Phobos use it. Example: 
https://github.com/dlang/phobos/blob/master/std/stdio.d

Have a look at the struct ByLine

It has something like:

struct ByLine(Char, Terminator)
{
private:
import std.typecons : RefCounted, 
RefCountedAutoInitialize;


/* Ref-counting stops the source range's Impl
 * from getting out of sync after the range is copied, 
e.g.

 * when accessing range.front, then using std.range.take,
 * then accessing range.front again. */
alias PImpl = RefCounted!(Impl, 
RefCountedAutoInitialize.no);

PImpl impl;


RFC: patch statement

2017-04-03 Thread Dejan Lekic via Digitalmars-d
I know people her do not like to see proposals that change (add 
stuff to) the language. However, I strongly feel that for the 
testing purposes D should provide means to patch any object (no 
matter whether it is final or not!). Therefore I wonder what 
people think of adding a `patch(obj) {}` or perhaps change the 
semantics of the `with(obj) {}` so unittest writers can modify 
the object and set values.


The patch keyword would work ONLY inside unittest {} blocks AND 
inside functions annotated with @test annotation.


Imagine we have:

int myFun(Person person) { /* some logic here */ }

unittest {
  auto p = new Person() /* does not really matter which 
constructor we use */

  patch(p) {
// here we can modify ANY attribute, no matter whether it is 
private or public

p.fname = "Nikola"
p.sname = "Tesla"
  }
  auto res = myFun(p)
  // do some assertions here
}

Similarly:

@test
void test_myFun() {
  // same code as in the unittest above.
}

I do not even know if patch() {} statement is even possible, that 
is the whole point of writing this, so people can enlighten me... 
:)


As I said in the introduction paragraph, for this purpose the 
semantics of the with statement could be changed, but I prefer a 
different keyword (patch) to be honest.


Re: influxdb-dlang-wrapper v0.0.1 - D API for InfluxDB

2017-03-21 Thread Dejan Lekic via Digitalmars-d-announce

On Monday, 20 March 2017 at 19:57:03 UTC, Atila Neves wrote:

http://code.dlang.org/packages/influxdb-dlang-wrapper

InfluxDB is a database optimised for time-series data. This 
package implements a D API via the REST interface so that this 
code works:


Brilliant! I may actually need it soon! (if they let me use D for 
a project we are about to start working on)


Re: mysql-native: API Refresh RC

2017-01-30 Thread Dejan Lekic via Digitalmars-d-announce

On Monday, 30 January 2017 at 02:56:27 UTC, Nick Sabalausky wrote:
I've been working on a big refresh of mysql-native's API, to 
take care of various issues that have appeared with it. It 
involves some major breaking changes (although I've tried to 
keep old interfaces around for the moment, but marked 
deprecated), so I wanted to post it before committing to it so 
those interested have a change to take a look, give feedback, 
catch problems, etc.


It is all really nice, but I think it would be nice to have an 
API that is as close to the C API as possible, for those 
developers out there familiar with the MySQL C API.


Re: Using Dub

2017-01-16 Thread Dejan Lekic via Digitalmars-d-learn

On Monday, 16 January 2017 at 09:40:55 UTC, Russel Winder wrote:
On the one hand Cargo works wonderfully with Rust so I had 
hoped Dub would work wonderfully with D.  Sadly I am finding it 
doesn't. Possibly my fault, but still annoying.


Cargo does not have multiple Rust compilers as an option. Dub 
could look to find for compiler if it is not set, but that may 
disappoint users who have multiple compilers installed (myself 
included)...


Re: Databases and the D Standard Library

2017-01-04 Thread Dejan Lekic via Digitalmars-d

On Sunday, 1 January 2017 at 03:24:31 UTC, Adam Wilson wrote:

Hi Everyone,

I've seen a lot of talk on the forums over the past year about 
the need for database support in the D Standard Library and I 
completely agree. At the end of the day the purpose of any 
programming language and its attendant libraries is to allow 
the developer to solve their problems quickly and efficiently; 
and a large subset of those solutions require some form of 
structured data store. To my mind, this makes some form of 
interface(s) to a data-store an essential component of the D 
Standard Library. And since this is something that my 
particular problem spaces also need, I thought it would be 
useful to attempt to do something about it.



The only thing I want, database related, in the standard library 
is the API! - Nothing else! There should be a standard 
implementation of that API (libd-db.so for an example), but it 
should be separated from Phobos. In general, Phobos should only 
contain the APIs in my humble opinion.
We should handle XML processing the same way (API in Phobos, 
libd-xml.so for the reference implementation), Image processing 
the same way, GUI, etc...


Why? Phobos is enormous already!


Re: Red Hat's issues in considering the D language

2016-12-28 Thread Dejan Lekic via Digitalmars-d

On Thursday, 22 December 2016 at 08:33:55 UTC, Daniel Kozák wrote:

? I am on fedora and I have dmd, so it is not true :P

Dejan Lekic via Digitalmars-d <digitalmars-d@puremagic.com> 
napsal St, pro 21, 2016 v 6∶36 :
On Wednesday, 21 December 2016 at 16:41:56 UTC, hardreset 
wrote:


Moving the reference compiler to LLVM as was suggested in the 
list.


LDC is the only compiler on Fedora/CentOS anyway!


What I meant is that LDC is the only D compiler in the official 
Fedora/CentOS repositories.


Re: Red Hat's issues in considering the D language

2016-12-21 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 21 December 2016 at 16:41:56 UTC, hardreset wrote:


Moving the reference compiler to LLVM as was suggested in the 
list.


LDC is the only compiler on Fedora/CentOS anyway!


Re: [Semi-OT] I don't want to leave this language!

2016-12-07 Thread Dejan Lekic via Digitalmars-d-learn

On Monday, 5 December 2016 at 20:25:00 UTC, Ilya Yaroshenko wrote:
Good D code should be nothrow, @nogc, and betterC. BetterC 
means that it must not require DRuntime to link and to start. I 
started Mir as scientific/numeric project, but it is going to 
be a replacement for Phobos to use D instead/with of C/C++.


Yes, perhaps it is so in your world...
In my world I have absolutely no need for this. In fact we are 
perfectly happy with Java runtime which is many times bigger than 
druntime!


Re: DIP 1003: remove `body` as a keyword

2016-11-21 Thread Dejan Lekic via Digitalmars-d-announce

On Saturday, 19 November 2016 at 21:16:15 UTC, Dicebot wrote:
DIP 1003 is merged to the queue and open for public informal 
feedback.


Perhaps a good idea for D3...


[RFC] Runtime, interfaces and implementations.

2016-10-26 Thread Dejan Lekic via Digitalmars-d
I have mentioned this on IRC quite few times in the past years, 
as well here on the newsgroups...


I really think the D runtime should have a std.api package 
containing what I call "module interfaces" (something similar to 
how Modula-3 treats interfaces and modules), and all existing std 
modules would "implement" these interfaces.


As pointed out in one of the threads where we touched this topic, 
we already have this in gc.gcinterface and gc.impl.manual.gc !


https://github.com/dlang/druntime/blob/master/src/gc/gcinterface.d
https://github.com/dlang/druntime/blob/master/src/gc/impl/manual/gc.d

I would even go to the next level, and extend the D language to 
support this via something like:


module mylib.foo extends api.bar;

where api.bar is somewhere in ../api/bar.di file that starts with:

module interface api.bar;

Naturally, there is tight relation with "module interface" and 
the .di extension...


Re: Wait-free queue

2016-10-19 Thread Dejan Lekic via Digitalmars-d
On Tuesday, 18 October 2016 at 18:03:58 UTC, Andrei Alexandrescu 
wrote:
Interesting work: 
http://concurrencyfreaks.blogspot.com/2016/10/crturn-queue-first-mpmc-memory.html -- Andrei


I could not help but paste something from the paper: "We chose 
C++14 because

it is a native language that is supported by most recent compilers
and has a well defined memory model and atomics API, which
makes the code portable across different architectures without any
modification and without introducing CPU specific memory fences."

Conclusion:
D needs a serious document (specification) explaining the memory 
model!


Re: gdc in Linux distros recommended?

2016-10-19 Thread Dejan Lekic via Digitalmars-d

On Tuesday, 18 October 2016 at 23:02:28 UTC, Ali Çehreli wrote:

I have a friend who has started writing a library in D.

Although I recommended that he should use a recent dmd or ldc, 
he thinks gdc is a better candidate because it's "available to 
the masses" through Linux distros similar to how gcc is. 
Although he has a good point, the gdc that came with his distro 
does not even support @nogc.


Thoughts? Can you please tell him to change his mind! :p

Ali


For an example, Fedora's default repository ONLY has LDC, because 
GDC is not yet merged into GCC. The reason why Ubuntu does is 
because they have relaxed policy regarding GCC.


I think LDC is in most major distros, GDC is not, so LDC is the 
clear winner here. I build GDC myself and use it on Fedora, it is 
pretty straightforward, but I would recommend LDC to beginners. 
Once GDC is merged into GCC, it is a no-brainer - GCC/GDC all the 
way!


Re: New team member: Lucia

2016-10-14 Thread Dejan Lekic via Digitalmars-d-announce
On Thursday, 13 October 2016 at 18:15:30 UTC, Andrei Alexandrescu 
wrote:

Hello everyone,


Please join me in welcoming Lucia Lucia Cojocaru to our team. 
Lucia is a MSc student in computer security, having Razvan 
Deaconescu and Razvan Rughiniș as advisers. She just completed 
an internship at Bloomberg.


Welcome to D world! :)
I am pleased to see more people from academic circles interested 
in D.


Re: PowerNex - The Userspace update! (also first birthday)

2016-10-04 Thread Dejan Lekic via Digitalmars-d-announce

On Sunday, 2 October 2016 at 22:46:17 UTC, Wild wrote:

Hey!

To celebrate the first birthday[1] of PowerNex, my D kernel, 
I've made a new release.
This is a big release compared to the old one, because this one 
contains a userspace
mode where you can load and execute ELF executable. I've also 
implemented TLS so
userspace programs don't need to spam __gshared all over the 
place.


Congratulations!! It definitely looks promising, even though I 
really do not like the coding style, but that is just a matter of 
taste I guess.


Re: GC blessed for C++ (again)

2016-09-30 Thread Dejan Lekic via Digitalmars-d-announce
On Wednesday, 28 September 2016 at 20:50:28 UTC, Ali Çehreli 
wrote:

https://www.reddit.com/r/programming/comments/54xnbg/herb_sutters_experimental_deferred_and_unordered/

Ali


The paragraph I like the most there is: "The other important 
difference is that deferred_heap meets C++'s zero-overhead 
principle by being opt-in and granular, not default and global"


That is what I like the most about Herb's work...


Re: Go's march to low-latency GC

2016-09-26 Thread Dejan Lekic via Digitalmars-d

On Saturday, 9 July 2016 at 23:14:38 UTC, ZombineDev wrote:


https://github.com/dlang/druntime/blob/master/src/gc/gcinterface.d
https://github.com/dlang/druntime/blob/master/src/gc/impl/manual/gc.d

What else do you need to start working on a new GC 
implementation?


That is actually the only case that I know of that an interface 
was provided to be implemented by 3rd parties... My reply was 
about Phobos in general. To repeat again - Phobos should provide 
the API (interfaces) *and* reference implementations of those.


Re: Why I am switching to Go

2016-09-21 Thread Dejan Lekic via Digitalmars-d

...I could care less why you are switching to Go...


Re: ISO D

2016-08-17 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 17 August 2016 at 12:57:59 UTC, TencoDK wrote:


I dropped D once about a year ago because the new DMD version 
has broken backward compatibility. Some libraries have stopped


You could have used STABLE DMD (v1), right? Assuming that you 
*intentionally* used the unstable (v2) DMD, I would say it is 
unfair to complain...


Re: Go's march to low-latency GC

2016-07-09 Thread Dejan Lekic via Digitalmars-d
On Saturday, 9 July 2016 at 17:41:59 UTC, Andrei Alexandrescu 
wrote:
I wish we could amass the experts able to make similar things 
happen for us.


I humbly believe it is not just about amassing experts, but also 
making it easy to do experiments. Phobos/druntime should provide 
set of APIs for literally everything so people can do their own 
implementations of ANY standard library module(s). I wish D 
offered module interfaces the same way Modula-3 did...


To work on new GC in D one needs to remove the old one, and 
replace it with his/her new implementation, while with 
competition it is more/less implementation of few interfaces, and 
instructing compiler to use the new GC...


Re: First dmd nightly shipping with dub

2016-07-06 Thread Dejan Lekic via Digitalmars-d-announce

On Wednesday, 6 July 2016 at 09:28:44 UTC, Martin Nowak wrote:

This is the first nightly dmd build that includes dub binaries.
http://nightlies.dlang.org/dmd-2016-07-06/
They will also be part of the upcoming 2.072.y releases.
We will sync the dub and dmd release cycles, but not the 
versioning.


Good work!
I presume the "independent" dub packages will also be available, 
right?


Re: Build a SysTime from a string

2016-07-06 Thread Dejan Lekic via Digitalmars-d-learn

On Wednesday, 6 July 2016 at 14:15:22 UTC, Andrea Fontana wrote:
My problem is that from documentation I can't understand how to 
set +01:00 timezone on systime. I guess I'm missing something...


As far as I know, you can't do that.

Quote from the documentation:
"""
Unlike DateTime, the time zone is an integral part of SysTime 
(though for local time applications, time zones can

"""

It does make sense, right? SysTime is object representing your 
system's time, and naturally it already has timezone set to the 
right (system) value.


Re: What's the secret to static class members

2016-06-30 Thread Dejan Lekic via Digitalmars-d-learn

On Thursday, 30 June 2016 at 01:11:09 UTC, Mike Parker wrote:


I think it's safe to say this guy is just trolling and we can 
ignore him.


I was about to say the same, Mike. He is either trolling, or 
genuinely did not even bother to learn some language basics...


Re: Where is the D deep learning library?

2016-06-28 Thread Dejan Lekic via Digitalmars-d

On Monday, 27 June 2016 at 14:10:15 UTC, Guillaume Piolat wrote:
With the latest popularity of Machine Learning, and all the 
achievement we see, where is the D alternative in this area?


C++'s offering makes lot of use of meta-programming already:

https://www.reddit.com/r/programming/comments/4py875/dlib_190_clean_c11_deep_learning_api/?ref=share_source=link

Surely a touch of DbI and D's meta power could help!


Thanks for reminding me why I stopped doing C++ programming...

When I saw that...

using LeNet = loss_multiclass_log<
fc<10,
relu>;


... I got a headache...


Re: Makd (build system) and d1to2fix tool (D1->D2 conversion) released as open source

2016-06-24 Thread Dejan Lekic via Digitalmars-d-announce

On Friday, 24 June 2016 at 16:44:05 UTC, Dejan Lekic wrote:


And no, some of *still love Make*!


Well, I wanted to say that some of US still love Make! :) Pardon 
my quick typing...


Re: Makd (build system) and d1to2fix tool (D1->D2 conversion) released as open source

2016-06-24 Thread Dejan Lekic via Digitalmars-d-announce

On Friday, 24 June 2016 at 16:02:26 UTC, Leandro Lucarella wrote:
Makd is a a GNU Make library/framework to build D projects (I 
know there is a lot of hate towards Make, so I'm not sure if 
this is good or bad news for the community :-P).


https://github.com/sociomantic-tsunami/makd


Brilliant! Thanks!

And no, some of *still love Make*!


Re: Anybody still using the chm docs

2016-06-16 Thread Dejan Lekic via Digitalmars-d
What's the main difference between it and just pointing your 
browser at the downloaded html files? Search and index?


Well, seach and index are not the only operations you need.

One of the common operation with every CHM viewer is to bookmark 
something for an example. I've just checked the Zeal application 
and realised it does not have this simple feature (or I could not 
find it).


Also, I want it to open at the same place I was last time I used 
the viewer...


Simply run KChmViewer and open the CHM document from DMD package 
with it, and compare it with any other similar solution...


Re: Anybody still using the chm docs

2016-06-16 Thread Dejan Lekic via Digitalmars-d

On Thursday, 16 June 2016 at 02:32:05 UTC, Jack Stouffer wrote:

On Wednesday, 15 June 2016 at 10:58:04 UTC, Martin Nowak wrote:
So I'm wondering if in 2016 someone really needs an offline 
copy of a website shipped with a binary release?


For offline browsing, Windows and Linux users can use Zeal [1] 
which is FOSS, and macOS users can use Dash[2], which is free 
as in beer. Both of which can use this D docset [3].


So no, there's no reason to maintain the chm docs.

[1] https://zealdocs.org/
[2] https://kapeli.com/dash
[3] 
https://github.com/Kapeli/Dash-User-Contributions/tree/master/docsets/D#readme


Thanks for the Zeal, I did not know about it.
Both Gnome and KDE have their "help" tools that more/less do the 
same.


Re: Anybody still using the chm docs

2016-06-16 Thread Dejan Lekic via Digitalmars-d
I still use CHM document as it is absolutely the best solution 
compared to anything else. I think it is a mistake to compare 
CHM with PDF... They are made for different things...


I forgot to mention - I use CHM on Linux. It is not my fault that 
opensource community could not come up with a better or/and 
standardised solution... The only standard solution for this that 
Linux has are man pages - clearly not suitable this purpose! 
Other, better solutions are there, but are not adopted by all - 
Gnome has one format, KDE another, etc... CHAOS. Therefore, I 
decided to use CHM.


Re: Anybody still using the chm docs

2016-06-16 Thread Dejan Lekic via Digitalmars-d

On Wednesday, 15 June 2016 at 10:58:04 UTC, Martin Nowak wrote:

It's a huge maintenance effort for us to produce the chm files.
We no longer generate documentation on Windows, but just for 
the chm generation we have dedicated tools [¹] to create an 
index (from a json generated via ddoc) and copy the html files.
So I'm wondering if in 2016 someone really needs an offline 
copy of a website shipped with a binary release?


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

[¹]:
https://github.com/dlang/dlang.org/blob/7cc6e938154f90aa49fa6451a85b13e35ab2de99/chmgen.d


I still use CHM document as it is absolutely the best solution 
compared to anything else. I think it is a mistake to compare CHM 
with PDF... They are made for different things...


If people want to get rid of PDF, then I propose we start 
providing ePub instead of CHM. That could be the only sane 
alternative to the CHM we have.


Re: Work in Amsterdam

2016-06-15 Thread Dejan Lekic via Digitalmars-d-announce

On Monday, 13 June 2016 at 22:45:15 UTC, Márcio Martins wrote:
Forgive me if this is not the best place for this sort of 
posts, but we are looking for experienced developers willing to 
learn D to join our development team in Amsterdam. We are a 
fast-growing travel e-commerce startup focused on themed 
vacation packages.


You'll be part of our small and agile development team, working 
with D/vibe.d on a daily basis, with the occasional javascript 
for the client-side of things.


Learn more on https://www.linkedin.com/jobs2/view/140710158


LinkedIn has the D Developer Network (DDN) group with 1900 
members (at the moment of writing this post): 
https://www.linkedin.com/groups/3923820


I've posted a link to this job on the DDN's group job list few 
minutes ago.


Re: improve concurrent queue

2016-06-03 Thread Dejan Lekic via Digitalmars-d-learn

On Tuesday, 27 August 2013 at 17:35:13 UTC, qznc wrote:


I can recommand this paper (paywalled though):
http://dl.acm.org/citation.cfm?id=248106



The research paper can actually be freely downloaded from 
http://www.dtic.mil/cgi-bin/GetTRDoc?AD=ADA309412 . Good article, 
thanks!


Re: LZ4 decompression at CTFE

2016-04-27 Thread Dejan Lekic via Digitalmars-d-announce

On Tuesday, 26 April 2016 at 22:05:39 UTC, Stefan Koch wrote:

Hello,

originally I want to wait with this announcement until DConf.
But since I working on another toy. I can release this info 
early.


So as per title. you can decompress .lz4 flies created by the 
standard lz4hc commnadline tool at compile time.


No github link yet as there is a little bit of cleanup todo :)

Please comment.


That is brilliant! I need LZ4 compression for a small project I 
work on...


  1   2   3   4   5   6   7   >