Re: D Contributor Tutorials Part 1 - Building the Compiler From Source

2023-01-22 Thread Nick Treleaven via Digitalmars-d-announce

On Sunday, 8 January 2023 at 19:28:59 UTC, ryuukk_ wrote:
The Wiki is outdated and mentions tools that do not exist 
https://wiki.dlang.org/Building_under_Windows


I haven't been able to build druntime on Windows. I have just 
updated the page to make it clear that DM make is needed even 
when not using Visual Studio. Which tools does it mention that 
don't exist?


I updated it with the little information i had but that still 
wasn't enough to be able to build the whole thing


I even asked on the forum for some help, wich was met with 
silence 
https://forum.dlang.org/thread/aapqglgpugyuimhof...@forum.dlang.org?page=1


Well some people replied, but it didn't really help.


Re: D Contributor Tutorials Part 1 - Building the Compiler From Source - Windows

2023-01-22 Thread Nick Treleaven via Digitalmars-d-announce

On Sunday, 8 January 2023 at 11:27:14 UTC, Mike Parker wrote:
In this first tutorial of the series, he gives an overview of 
what happens when compiling a D source file, then shows how to 
set up an environment from which to build dmd and the standard 
library/runtime binary. The next video will use this setup to 
start making changes to dmd.


Thanks, this is great (for posix builds).

However I'm not sure the Windows instructions in the video are 
correct. It is good Dennis mentioned to use DM make as the wiki 
only mentioned that for the VS build instructions (I have updated 
it to make it clear).


I tried running `make -f win32.mak` from the phobos root and got 
this:

```
Error: don't know how to make '../dmd/druntime/lib/druntime.lib'
```
So it seems on Windows druntime still does have to be built 
before that (unlike on Linux). So I ran `make -f win32.mak` from 
dmd/druntime and got this error:


```
..\compiler\..\generated\windows\release\32\dmd -c 
-of=errno_c_32omf.obj -m32omf -conf= -O -release -preview=dip1000 
-preview=fieldwise -preview=dtorfields -inline -w -Isrc -Iimport 
-v -P=-I. src\core\stdc\errno.c
predefs   DigitalMars LittleEndian D_Version2 all Windows Win32 
CRuntime_DigitalMars CppRuntime_DigitalMars D_InlineAsm 
D_InlineAsm_X86 X86 D_ModuleInfo D_Exceptions D_TypeInfo 
D_HardFloat D_Optimized

binary..\compiler\..\generated\windows\release\32\dmd.exe
version   v2.101.0-rc.1-72-g5c3dafa06f
config
DFLAGS(none)
include   src\importc.h
sppn.exe src\core\stdc\errno.c -HIsrc\importc.h -ED -oerrno.i -I.
Error: C preprocess command sppn.exe failed for file 
src\core\stdc\errno.c, exit status 1


failed launching sppn.exe src\core\stdc\errno.c -HIsrc\importc.h 
-ED -oerrno.i -I.

```

I don't know what `sppn.exe` is.

---
Before trying phobos win32.mak I also tried the win64.mak but it 
needs `cl.exe` which apparently I can get here:

https://ftp.digitalmars.com/bup.zip

But chrome says 'Your connection is not private' and won't let me 
download that even if I look under Advanced. I also tried curl:

```
curl: (60) SSL: no alternative certificate subject name matches 
target host name 'ftp.digitalmars.com'

More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore 
could not
establish a secure connection to it. To learn more about this 
situation and

how to fix it, please visit the web page mentioned above.
```


Re: D Contributor Tutorials Part 1 - Building the Compiler From Source

2023-01-22 Thread zjh via Digitalmars-d-announce

On Sunday, 8 January 2023 at 19:28:59 UTC, ryuukk_ wrote:

While this video definitely help, but i'm not going to rewind 
to find information on a 7minutes video, it should be a simple 
document, with a set of simple scripts and they should put 
accessible under the DMD repo


It shouldn't be that convoluted



Yes, the document is better. Although it takes more time to 
produce, it saves users' time, which is worthwhile for D ecology

.


Re: GDC documentation is online and 13.x development updates.

2023-01-22 Thread Iain Buclaw via Digitalmars-d-announce

On Sunday, 15 January 2023 at 19:00:50 UTC, Johan wrote:

On Tuesday, 6 December 2022 at 12:13:59 UTC, Iain Buclaw wrote:

Hi,

There is now (long overdue) expanded documentation of the 
user-facing features of GDC online on GCC's documentation site.


https://gcc.gnu.org/onlinedocs/gdc/


Just now, I had trouble finding this. I don't think there is a 
pointer on GDC's own website? (https://gdcproject.org/)




Hi Johan,

Good point, I really need to give a bit more TLC to the site 
repository.


Re: D Language Foundation Monthly Meeting Summary for December 2022

2023-01-22 Thread ryuukk_ via Digitalmars-d-announce

On Saturday, 21 January 2023 at 04:29:28 UTC, Mike Parker wrote:
Robert spoke up then to suggest deprecating @property and 
releasing a tool that removes it from a code base. Then we 
should apply that tool to create pull requests for all dub 
packages using @property, and then in a future release, we kill 
it. Anyone affected by the removal can then run the tool on 
their own code. He added that we should do this with any 
feature we decide to remove. This is the modern way of software 
development: you don't just break someone's code, you break 
their code and give them a tool to fix it.


I agree with that 100%, perhaps the feature should be built in 
into DUB, it can already detect the compilers and its version, so 
it can do all the heavy lifting already



Compile times keep getting slower. Why doesn't an LSP 
implementation come with DMD? Why don't we have a compiler 
daemon? Why aren't his build times sub one second?


All my projects  fully recompile in around 1s, i am sad when i 
see libraries that tank the compile speed to multiple seconds..


I ended up writing my own runtime and my own std, this is why i 
advocate for language enhancements rather than putting more 
template soup into the std


And i agree even more on the language server, Jan did an amazing 
work with serve-d, but it highlights 2 problems:


- slow to compile, wich makes contributing a pain
- DCD is basically too basic, doesn't even support most D 
features including templates




 SumType is really awesome, and we should really do something 
with it.



I agree, SumType is a great piece of library, it should be 
promoted as a language feature


The first involved dub's settings file, settings.json. As he 
put it, have you ever seen a program that asked you to write 
its settings using JSON? There had been some favorable 
responses to the idea of moving to YAML from some core 
contributors a few years back. It just needed someone to do it. 
He asked if we were okay with the move. Átila said we probably 
shouldn't keep JSON, but wondered if YAML was the best choice. 
What about TOML? This sparked a minor bikeshedding discussion, 
but there was no major opposition to Mathias's plan. (He has 
since opened a draft PR. Sönke Ludwig wants to see a broader 
discussion of this before finalizing it, so I expect Mathias 
will ask for community feedback at some point.)


I agree, json is not a good file format, it doesn't even support 
comments and is annoying to parse


A simple ini file would be 10x better already, no need 
complicated parsers like YAML or TML




Robert thinks Rust has won that game. We're the second person 
to the moon. Put @safe on top, disallow taking addresses of the 
stack, don't allow returning ref, and don't allow pointer 
arithmetic. That's as safe as we need to be. D's niche is on 
top of Rust and under TypeScript. That's where we need to be. 
That may not be the most popular opinion in the group, but he 
was alone in his room and no one could hurt him. He thinks C++ 
has been sinking, but it's probably going to keep sinking until 
he's dead and will never sink completely, but Rust will take 
that over. Rust is also taking over some of the web world 
because it compiles easily to web assembly.



I DISAGREE fully, Rust has not won "that game", there is a 
similar negative sentiment about rust, "too complicated", "too 
hard", "bad syntax", "slow to compile", etc


The future will be many languages, each being best at certain 
domains, we seen it with the rise of Go, doing what it do best 
with the cli/web/server/containers and nothing else


WASM? C/C++ won the game, Abobe is the perfect example, it's not 
simple hello world Rust people are doing, it's full commercial 
projects https://web.dev/ps-on-the-web/


Same with games



second edition of Build Web Apps in Vibe.d by learning from a learner

2023-01-22 Thread Rey Valeza via Digitalmars-d-announce

Hi,

I just uploaded a second edition of the tutorial I uploaded on 
Github last year. Here is the link:

https://github.com/reyvaleza/vibed/blob/main/Build%20Web%20Apps%20in%20Vibed%20second%20edition.pdf

Thanks!




Re: second edition of Build Web Apps in Vibe.d by learning from a learner

2023-01-22 Thread Tejas via Digitalmars-d-announce

On Monday, 23 January 2023 at 01:48:11 UTC, Rey Valeza wrote:

Hi,

I just uploaded a second edition of the tutorial I uploaded on 
Github last year. Here is the link:

https://github.com/reyvaleza/vibed/blob/main/Build%20Web%20Apps%20in%20Vibed%20second%20edition.pdf

Thanks!


Nice, thanks for your work

# 😃


Re: second edition of Build Web Apps in Vibe.d by learning from a learner

2023-01-22 Thread Antonio via Digitalmars-d-announce

On Monday, 23 January 2023 at 01:48:11 UTC, Rey Valeza wrote:

Hi,

I just uploaded a second edition of the tutorial I uploaded on 
Github last year. Here is the link:

https://github.com/reyvaleza/vibed/blob/main/Build%20Web%20Apps%20in%20Vibed%20second%20edition.pdf

Thanks!


First look... nice job :-)