On Tuesday, 16 November 2021 at 14:38:48 UTC, Sebastiaan Koppe
wrote:
I was reading
https://github.com/marketplace/actions/cross-platform-action#under-the-hood and have to say I am impressed. Looks like a very well done library.
Thanks. Yeah, it turned out to be quite complex to support
On Tuesday, 16 November 2021 at 14:04:12 UTC, Imperatorn wrote:
Oh, nice to see support for FreeBSD. I just added a version for
it in druntime 4 days ago. Now maybe we can test it lol
I can add older versions of FreeBSD (currently 12.2 and 13 are
supported) if there's a need for that.
# Cross-Platform GitHub Action 0.3.0
I would like to announce a new release of [Cross-Platform GitHub
Action](https://github.com/marketplace/actions/cross-platform-action), [0.3.0](https://github.com/cross-platform-actions/action/releases/tag/v0.3.0).
For those not familiar with this project,
On Thursday, 14 October 2021 at 16:14:17 UTC, Brian wrote:
Awesome! I will spend some time soon figuring it out.
Here are two real world examples:
https://github.com/jacob-carlborg/lime/blob/master/.github/workflows/ci.yml
On Tuesday, 12 October 2021 at 12:42:09 UTC, Brian wrote:
I don't think any of the free ones support OpenBSD yet :)
There is SourceHut, which does support OpenBSD CI, but I don't
think it is free to use.
You can use my GitHub action:
On Saturday, 10 July 2021 at 12:30:43 UTC, Bastiaan Veelo wrote:
Thanks for clarifying the differences.
Some other differences:
* DVM is cross-platform. Diva seems to only run on Ubuntu.
* DVM is implemented in D (with a tiny shell script wrapper).
Diva depends on Python
* DVM does not use
On Tuesday, 8 June 2021 at 20:39:45 UTC, Steven Schveighoffer
wrote:
I might have a need for it. When I moved mysql-native to github
actions, I could no longer run mysql integration tests on MacOS
or Windows, since there is no docker support for a mysql
instance on those platforms. I can
On Tuesday, 8 June 2021 at 19:40:01 UTC, kinke wrote:
Thx for sharing! Interesting; I've recently worked on something
similar, but on Linux hosts and using a kvm/qemu/libvirt stack
for running CI jobs in Windows VMs.
Yeah, this is running on macOS instead because the Linux and the
Windows
# Cross-Platform GitHub Action
I would like to announce the first version of a project I've been
working on for a while. It's not anything D specific or
implemented in D, but it can be used with D projects. This
project provides a GitHub action for running GitHub Action
workflows on multiple
On 2021-05-05 13:54, user1234 wrote:
Thanks for the explanations. BTW I had the same question for LDC backend
being c++, I guess the answer would be similar.
If I understand correctly, the Zig compiler is implemented partially in
Zig. It use the LLVM C API and some wrappers C around the C++
On 2021-05-05 12:01, user1234 wrote:
Is it possible to use libclang and more generally LLVM c++ api [directly
in D](https://dlang.org/spec/cpp_interface.html) or the Cpp interface is
too limited ?
Was this an option, have you tried ?
Yes, it's possible to use libclang. DStep [1] is using
On 2021-04-10 15:50, kinke wrote:
Thanks Jacob, I'm sure this was quite a bit of work, and opening up
proprietary SDKs for non-native systems is always welcome. Thumbs up!
Thanks.
--
/Jacob Carlborg
On 2021-04-09 11:00, rashir wrote:
Goodmorning everyone,
I'm trying to understand both Kqueue and Fiber's operation on Mac. Why
don't I get the correct data as long as I read from the socket?
It seems to be reading too early, but Kquue tells me that the socket is
readable.
```D
const
On 2021-04-08 18:36, H. S. Teoh wrote:
Thanks for this, it is very helpful.
You're welcome. I'm glad that it's useful to someone.
I just created a tag [1] (no changes yet), if I would like to make some
changes in the future.
[1]
# Docker LDC Darwin
I would like to announce a new project I'm working on:
docker-ldc-darwin [1]. The project consists of a Dockerfile for
building a Docker image which has all the necessary tools to
cross-compile D applications targeting macOS x86-64.
## Features
* Uses Apple's ld64
On 2021-04-06 21:57, Alain De Vos wrote:
Can we say tk ang gtk toolkits are alive.
But wxwidgets , fox an fltk are dead ?
Do you mean these libraries in general or D bindings to these libraries?
--
/Jacob Carlborg
On 2021-03-25 05:00, Chris Piker wrote:
I've attempted to follow all guidelines as best I understood them, but
this is my first package. It likely has some style and functionality
issues.
There's a general convention to name the top level module or package the
same as the project. To avoid
On Wednesday, 17 March 2021 at 15:16:36 UTC, Jacob Carlborg wrote:
macOS doesn't support static linking.
The proper way to solve this is to bundle the dynamic libraries
with the application. If it's a GUI application it can be located
in the application bundle. It seems like David already
On Wednesday, 17 March 2021 at 13:52:48 UTC, Guillaume Piolat
wrote:
On Sunday, 14 March 2021 at 11:33:00 UTC, David wrote:
Anyone else done this? Pointers welcome.
Sorry for delay.
Just add "dflags-osx-ldc": ["-static"],
macOS doesn't support static linking.
--
/Jacob Carlborg
On 2021-03-05 19:49, realhet wrote:
Why it works with each (or foreach), but not with map? o.O
`lockstep` is specifically designed to work with `foreach`. I think
`each` has a special case to work with `lockstep`. If you want to use
other range functions, you should use `zip` instead of
On 2021-02-23 16:34, Decabytes wrote:
ldc2 is the winner thank you! I'd like to get gdc and dmd up and running
to at some point
Unfortunately, DMD doesn't support ARM.
--
/Jacob Carlborg
On 2021-02-24 17:32, Imperatorn wrote:
What happened to utiliD? Broken link to gh
I think Mike gave up on D.
--
/Jacob Carlborg
On 2021-02-21 07:12, Jack wrote:
I've had a struct like this:
struct Attr
{
string value;
}
struct Foo
{
@(Attr("a attr"))
enum a = Foo(10);
@(Attr("b attr"))
enum b = Foo(11);
int x;
int y;
bool doY = true;
int value()
{
return
On 2021-02-20 15:03, Rumbu wrote:
- new attributes (currently ignored): RetVal, NullNullTerminated,
NotNullTerminated
Regarding the ignored attributes. You could always output these as UDAs.
It would not add any semantic meaning, but could serve as documentation.
In theory, it would be
On Sunday, 31 January 2021 at 21:48:09 UTC, Per Nordlöw wrote:
Given
char x[];
why is
typeof("a" ~ x)
`char[]` when
typeof("a" ~ x.idup)
is
`string`?
My case is
class NameLookupException : Exception
{
this(string name) {
super("Name " ~ name ~ " could not be
On Monday, 1 February 2021 at 09:40:20 UTC, Per Nordlöw wrote:
An enum only exists at compile-time, and does not occupy any
space. Each time it's referenced, a new instance of the value
is created. Why is that? Seems like a waste of resources to the
compiler.
It makes perfect sense for
On Sunday, 31 January 2021 at 20:36:43 UTC, aberba wrote:
It's finally out!
https://opensource.com/article/21/1/d-scripting
FYI, the code will compile faster if you use `dmd -run` instead
of `rdmd`. If you have multiple files that need to be compiled
you can use `dmd -i -run`.
--
/Jacob
On Sunday, 24 January 2021 at 11:00:17 UTC, vitamin wrote:
void destruct(Base base){
void[] x = (cast(void*)base)[0 ..
__traits(classInstanceSize, Base)];
writeln("deallocate: ", x.length);
theAllocator.deallocate(x);
}
You can get the dynamic size of an object using
On 2021-01-24 04:50, mori wrote:
I feel as if I came across rather... pessimistic. I do want to help.
Awesome :)
Yesterday I spent some time trying to port the (cocoa) Program class to
D using `extern (Objective-C)`. What I've got works, but the main
difference (as you'd probably know)
On 2021-01-19 05:51, mori wrote:
Sorry for the late reply. I keep forgetting to check this forum. There's
usually not much activity here.
Initially I'll try converting the manually so I can understand the
internals a little (also don't know any Scala...).
I didn't know any Scala before I
On 2021-01-18 07:22, Imperatorn wrote:
Ok, thanks for your efforts. I'm just wondering what the "official" ui
framework is considered to be, looking around
At one point DWT was named to be the official GUI framework for D :). Of
course, that didn't mean anything. No additonal contributors,
On 2021-01-18 01:11, mori wrote:
Given this, would it be correct to assume that you're not accepting pull
requests that would update DWT? Only asking because I'd be willing to
help update the GNU/Linux side.
No, I will definitely accept pull requests. It's mostly that I don't
have much
On 2021-01-13 11:50, Imperatorn wrote:
What's the current state of dwt and where can I find some toturials
and/or example applications?
The current state is that is in maintenance mode. I'm only make sure it
works on the latest version of DMD. It does not receive any other form
of updates.
On 2021-01-06 03:30, Walter Bright wrote:
The baseline Linux target does not have SSE.
What about this changelog entry:
https://dlang.org/changelog/2.087.0.html#xmm-linux-changelog ?
--
/Jacob Carlborg
On 2021-01-09 19:16, Q. Schroll wrote:
Say I have a class hierarchy like this:
class Base { }
class Derived : Base { }
A Derived object cannot be referenced as a Base object, but as a
const(Base) object. That makes sense to me.
It can:
Base b = new Derived();
One can replace Base by a
On 2021-01-07 01:01, sighoya wrote:
Thanks, reminds on swift error types which are enum cases.
Swift can throw anything that implements the Error protocol. Classes,
structs and enums can implement protocols.
Oh, no please not. Interestingly we don't use longjmp in default
exception
On 2021-01-06 22:27, H. S. Teoh wrote:
That's the whole point of Sutter's proposal: they are all unified with
the universal Error struct. There is only one "backend": normal
function return values, augmented as a tagged union to distinguish
between normal return and error return. We are
On 2021-01-06 10:21, Mike Parker wrote:
This is the discussion thread for the first round of Community Review of
DIP 1039, "Static Arrays with Inferred Length":
https://github.com/dlang/DIPs/blob/c06ce7f144b3dabf363d1896ddcd31a2a6b7c969/DIPs/DIP1039.md
There's `staticArray` to solve this
On 2021-01-05 03:02, kdevel wrote:
expected output: none. The compiler should have rejected the code after
the duplicate definition def #2. dmd 2.093.1 ignores both definitions
instead. Is this a bug or a bug?
DMD 2.095.0 now reports an error for this.
--
/Jacob Carlborg
On 2021-01-06 03:30, Walter Bright wrote:
The baseline Linux target does not have SSE.
Other compilers solve this by having a flag to specify the minimum
target CPU.
--
/Jacob Carlborg
On 2021-01-02 22:21, H. S. Teoh wrote:
Nope. Reverse-engineering is a thing. There's even tools out there to
automate this stuff.
Or you can try to prevent reverse engineering. This is both an
interesting and fun talk [1].
[1] https://www.youtube.com/watch?v=HlUe0TUHOIc
--
/Jacob
On Thursday, 24 December 2020 at 10:23:09 UTC, Dmitriy Asondo
wrote:
I expect code like this:
--
class OloloService {}
class BlablaService {}
auto servicesList = [OloloService, BlablaService];
auto serviceInstance = new servicesList[1](args);
--
On 2020-12-19 00:26, Dave P. wrote:
Looks very useful. Something strange I noticed though, it seems to be
doing the analysis in 32 bits? I had some static assertions go off due
to this which halted the program.
Wow, I haven't noticed that. That's not indented. I've created an issue
[1] and
I would like to announce a new release of DLP, 0.3.0.
For those not familiar with DLP, it's a tool collecting commands/tasks
related to processing the D programming language. It uses the DMD
frontend as a library to process D code.
The major new feature in this release a new command that has
On 2020-12-16 16:18, Dave P. wrote:
Is this a bug in the spec or in the implementation?
Yeah, that's a good question. That's always problematic with D. The spec
is incomplete.
How do we get this fixed?
The simplest would be to change the spec.
--
/Jacob Carlborg
On Wednesday, 16 December 2020 at 04:17:13 UTC, Mike Parker wrote:
So what you're asking for is a way to retain the D name
mangling on an extern C function. The way to do that is with
`pragma(mangle, "new_name")`. To match the original D function
mangling, declare the function first without
On Wednesday, 16 December 2020 at 04:17:13 UTC, Mike Parker wrote:
However, the D calling convention is defined to be identical to
the C calling convention on the host system for everything
except Windows x86.
Also keep in mind that D supports other types than C does, like D
arrays and
On Wednesday, 16 December 2020 at 04:17:13 UTC, Mike Parker wrote:
However, the D calling convention is defined to be identical to
the C calling convention on the host system for everything
except Windows x86.
That's what's specified, but that's not how DMD actually behaves.
DMD passes the
On 2020-12-14 22:59, tchaloupka wrote:
Hi,
I was missing some commonly usable HTTP parser on code.dlang.org and
after some research and work I've published httparsed[1].
This is awesome. I wanted to use picohttpparser myself and used the C
version. But if you already have created a HTTP
On Monday, 14 December 2020 at 05:51:28 UTC, Виталий Фадеев wrote:
It's parsing the `.a` in `.argb` as part of the number:
auto color = 0x00AABBCC.a rgb; // what the compiler sees
You can fix it with parentheses:
auto color = (0x00AABBCC).argb;
Thanks!
It is not perfect, but also beauty!
On Tuesday, 8 December 2020 at 01:47:51 UTC, Andrew Edwards wrote:
Thanks Jacob. The extern(C) is temporary. I'm doing a direct
port of the code to D using -betterC. Wanted to keep it as
close to the original as possible until everything compiles.
Yes, that's always a good idea. Do the
On Monday, 7 December 2020 at 04:13:16 UTC, Andrew Edwards wrote:
Given:
===
extern(C):
char*[] hldr;
enum I = (1<<0);
struct S { char* ft; char** fm; int f; }
void main(){}
===
// Error Deprecation: static constructor can only be of D
linkage
S[] s;
static this() {
On 2020-11-25 17:27, Jan Hönig wrote:
dmd has to do it somewhere as well. Although I don't know exactly where.
I do know ldc uses dmd's frontend for parsing.
https://dlang.org/phobos/dmd_parse.html
Using DMD as a library will be most accurate and up to date. Because
it's the same code as
On Friday, 16 October 2020 at 20:10:58 UTC, Marcone wrote:
How can I convert Hexadecimal to RGB Color and vice-versa?
Not sure if this is what you're looking for:
struct Color
{
private uint hex;
int red()
out(result; result >= 0 && result <= 255) // assert that the
result is
On Monday, 23 November 2020 at 13:34:14 UTC, Petar Kirov
[ZombineDev] wrote:
Thanks, I've just added the gsoc2020 label for these issues. I
will ping someone to give you permissions for the repo ;)
Shouldn't it be gsoc2021? We're already past GSoC 2020 ;)
--
/Jacob Carlborg
On Thursday, 19 November 2020 at 00:20:50 UTC, Dibyendu Majumdar
wrote:
On Thursday, 19 November 2020 at 00:18:54 UTC, rikki cattermole
You don't need the brackets to call a function (and with a
little help from UFCS):
void main() {
import std.stdio;
On 2020-11-11 06:29, WhatMeWorry wrote:
Which begs the question, how would the statement, m_State = new
BreakState() ever get executed?
class DebuggerSession
{
private BreakState m_State = new BreakState();
private UnrealCallback m_UnrealCallback;
this( )
{
}
//
On 2020-11-05 23:48, Marcone wrote:
How add class or struct member after construction? Is it possible in D?
How?
It depends on what needs you have. You can declare a free function that
takes the class/struct as the first parameter and call it like a method [1]:
class Foo
{
int a;
}
On 2020-11-08 13:39, Kagamin wrote:
Surrogate pairs are used in rules because java strings are utf-16
encoded, it doesn't make much sense for other encodings.
D supports the UTF-16 encoding as well. The compiler doesn't accept the
surrogate pairs even for UTF-16 strings.
--
/Jacob Carlborg
On Saturday, 7 November 2020 at 16:12:06 UTC, Per Nordlöw wrote:
CtoLexer_parser.d 665 57 error invalid UTF
character \Ud800
CtoLexer_parser.d 665 67 error invalid UTF
character \Udbff
CtoLexer_parser.d 666 28 error invalid UTF
character
On Friday, 6 November 2020 at 06:17:42 UTC, mw wrote:
https://wiki.dlang.org/Memory_Management#Explicit_Class_Instance_Allocation
using core.stdc.stdlib : malloc and free to manually manage
memory, I tested two scenarios:
-- malloc & free
-- malloc only
and I use Linux command `top` to
On 2020-11-03 20:02, H. S. Teoh wrote:
I believe -i behaves as though you manually typed the names of the
source files on the command line. So it would do what the compiler
would usually do in the latter case.
Yes, this is correct.
AFAIK, that means it loads everything into memory and
On 2020-11-01 11:13, Sönke Ludwig wrote:
ddb marks the vibe-d dependency as optional, so it *should* not trigger
a download by itself.
It does not trigger a download. The downside is that user of the library
needs to manually add vibe.d as a dependency.
--
/Jacob Carlborg
On Thursday, 29 October 2020 at 06:42:54 UTC, ikod wrote:
Hi,
requests 2.0.0 released with single change - support for vibe-d
moved to separate subpackage.
The goal of this update is to prevent dub from downloading
vibe-d packages for optional subConfiguration.
Another approach is to
On Wednesday, 28 October 2020 at 05:51:14 UTC, Nicholas Wilson
wrote:
but for a templated C this is tricker as I can't use a template
sequence parameter (...) unless C uses it in the same position
(I'm trying to generate a mangle from it so it needs to be
exact). Given
class
On Tuesday, 27 October 2020 at 08:33:08 UTC, Per Nordlöw wrote:
I'm looking for elegant ways of expressing expansion of
parameterized strings written to a file at run-time. My primary
use case is run-time generation of D code. In the lazy case,
something like
import std.file : write;
On Tuesday, 27 October 2020 at 09:40:33 UTC, frame wrote:
Hmm, a question of design. Is there also a convenient way to
pass the arguments to a template or get a Variant[] from it?
Convenient, no not that I know of. You can use a type safe
variadic function that takes Variant, if you want to
On Monday, 26 October 2020 at 11:14:47 UTC, frame wrote:
Is there any way to get this working? I know, I could use a
known object to feed the arguments and use that instead - but I
want to keep things simple as possible.
As Simen mentioned, templates cannot be virtual. But you don't
need to
On Monday, 26 October 2020 at 00:56:26 UTC, frame wrote:
I see that your approach can handle functions and delegates but
isn't that not equivalent like this template for a function?
auto myStuff(T)(T function() fn) {
try {
return fn();
}
catch (Exception e) {
//
On Sunday, 25 October 2020 at 16:50:09 UTC, Jack wrote:
Which build tool are you refering to? an existing one or build
one oneself to do this job?
It should work with any build tool that has hooks to execute
arbitrary commands.
--
/Jacob Carlborg
On 2020-10-20 02:16, Ali Çehreli wrote:
Everything works at least on Linux. Is this kosher, or am I using some
internal knowledge?
Yes, you're using some internal knowledge. You cannot assume it works on
any other platform or architecture. In theory, the D compiler could
choose to change
On 2020-10-23 18:42, data pulverizer wrote:
For me it's not make-or-break, it just something very useful and I think
has clear use case. Please let me know if there are aspects or
alternatives I am missing.
You could always have the build tool split up the file in multiple
smaller files and
On Tuesday, 20 October 2020 at 16:58:12 UTC, Severin Teona wrote:
Hi guys.
I have a curiosity, regarding [1] - I had encountered some
"undefined reference" errors when trying to link the druntime
(compiled for an embedded architecture) without some
implementation of the POSIX thread calls
On 2020-09-19 21:50, Per Nordlöw wrote:
On Saturday, 19 September 2020 at 18:48:31 UTC, Jacob Carlborg wrote:
A nested class seems to be able to escape the `this` reference:
Ahh, thanks.
I just realized that it can escape into other parameters without the
`scope` qualifier?
This
class
On 2020-09-19 18:07, Per Nordlöw wrote:
If an aggregate member is pure but not scope when can it escape the
`this` pointer?.
Only via return?
I'm not sure if returning the `this` pointer is considered escaping it.
The caller already had access to it. Under the hood, the `this` pointer
is
On Saturday, 19 September 2020 at 08:26:36 UTC, Imperatorn wrote:
What are some good examples of pretty large/medium size, good
structured repos in D? I'm looking for examples to learn from
Thanks!
Here are some examples of large projects:
* DWT [1]. This is one of the largest D projects
On Saturday, 19 September 2020 at 07:43:24 UTC, Russel Winder
wrote:
Doesn't that then make the whole DDoc system fairly useless,
despite it's use in Phobos?
If you use Dub, you can run `dub build -b ddox` and it will use
Ddox to build the documentation. This will include an index page
On Saturday, 19 September 2020 at 07:43:24 UTC, Russel Winder
wrote:
Doesn't that then make the whole DDoc system fairly useless,
despite it's use in Phobos?
Yes. The problem is that most things in D are compared with C or
C++. People are praising that the built-in support for unit tests
On 2020-09-19 04:45, tspike wrote:
I’ve been using D for personal projects for almost a year now and I
really love it. I recently ran across a linker error that I’m a little
confused by. Consider the following files:
platform.d:
module platform;
import app;
struct
On 2020-09-17 16:58, drathier wrote:
What's the proper way to exit with a specific exit code?
I found a bunch of old threads discussing this, making sure destructors
run and the runtime terminates properly, all of which seemingly
concluding that it's sad that there isn't a way to do this
On 2020-09-18 13:41, Russel Winder wrote:
Hi,
I am trying to get to grips with DDoc for documenting an application. Getting
the individual module HTML files seems to be the easy bit. The question is how
to get an index.html (or equivalent) so as to have an application level entry
point to the
On 2020-09-18 23:14, John Colvin wrote:
I know. But it should be.
dub.selections.json wasn't available in the initial version. I don't
remember if branches were deprecated before or after dub.selections.json
was added.
--
/Jacob Carlborg
On 2020-09-17 05:16, Paul Backus wrote:
Worth knowing that the tuples you get from enumerate actually have named
members, so you can write:
s.enumerate.each!(x => writeln(x.index, ":", x.value));
It actually works out of the box for `each`:
s.each!((index, value) => writeln(index,
On 2020-09-16 21:04, Vladimirs Nordholm wrote:
Ah, I guess it boils down to this then. Doesn't really make it "neater",
but thank you for the tip!
You only need to declare the enums ones.
--
/Jacob Carlborg
On 2020-09-17 12:10, John Colvin wrote:
I personally think it's not so bad as long as the commit gets written to
the dub.selections.json
It doesn't.
--
/Jacob Carlborg
On 2020-09-16 19:53, Vladimirs Nordholm wrote:
Hello.
I wonder if there is a better way to compile something if the current
operating system is _not_ a specific platform.
For example, I only want some code to compile if the operating system is
not Windows. Currently I do this:
On 2020-09-16 19:20, mw wrote:
Why it's deprecated? can we revive it?
It was deprecated because it's a bad idea to not lock versions. Using
`~master` would fetch the latest code from the "master" branch when
compiling. You never know which version you get. You don't get
reproducible
On 2020-09-05 07:14, 60rntogo wrote:
I wouldn't dispute that it is useful, but that's besides the point. If I
declare something private, it's usually because I want to preserve
certain invariants and I want the compiler to provide a guarantee that I
don't accidentally violate them. As it
On 2020-09-04 12:16, 60rntogo wrote:
Consider the following code.
foo.d
---
module foo;
struct Foo
{
private int i;
}
---
main.d
---
void main()
{
import std.stdio;
import foo;
auto x = Foo();
writeln(x);
// ++x.i;
++x.tupleof[0];
writeln(x);
}
---
As expected, the
On 2020-09-03 14:41, glis-glis wrote:
Yes I already tried that, but I get the error
Error: only one main allowed. Previously found main at src/scripts/copy.d
Looks like DUB doesn't like multiple binaries?
Oh, multiple binaries, I missed that. You can try to add multiple
configurations [1].
On Thursday, 3 September 2020 at 08:22:25 UTC, glis-glis wrote:
I usually would just write a makefile for that, but I thought
I'd give DUB a go. Unfortunately, the DUB-documentation is a
little thin and I cannot find a way to tell DUB
"compile all the files in the scripts folder and put the
On Thursday, 3 September 2020 at 08:40:32 UTC, aberba wrote:
The slack I have no ideas how people get in. I know there's a
number of members in there too.
Unfortunately you need to be invited. Anyone can do it, if you're
interested. We just need an email address.
--
/Jacob Carlborg
On Sunday, 30 August 2020 at 14:13:36 UTC, Mike Parker wrote:
Looking for a full-time or part-time gig? Not only is Symmetry
Investments hiring D programmers, they are also generously
funding two positions for ecosystem work under the D Language
Foundation. And they've put up a bounty for a
On Friday, 28 August 2020 at 05:38:59 UTC, novice3 wrote:
DMD x86 on Windows have no dependencies, just unpack .zip and
use.
It's a pitty, that DMD x64 depend on VS :(
It does not. If VS is not installed the MinGW provided libraries,
which are bundled, will be used.
--
/Jacob Carlborg
On Tuesday, 25 August 2020 at 20:37:38 UTC, Per Nordlöw wrote:
I'm dying to get a semantic engine that supports code
navigation to (and completion of) overloaded functions at their
call site including UFCS-calls. DCD doesn't support these two
features.
I have interest in a LSP server based
On 2020-08-07 23:03, aberba wrote:
Syntactically they look the same (although D's can do more things) so
I'm trying to understand how why in D it's called template but in
languages like C#/Java they're generics.
I guess I have fair understanding of D's code generation but isn't it
same as
On 2020-08-07 23:39, H. S. Teoh wrote:
They are *very* different.
Java generics are based on "type erasure", i.e., at the syntactic level,
containers are parametrized with the element types, but at the
implementation level, the element types are merely "erased" and replaced
with Object (a top
On 2020-08-05 09:57, cy wrote:
Well, I did find this:
https://dlang.org/blog/2017/08/01/a-dub-case-study-compiling-dmd-as-a-library/
That is more for using the frontend, not the backend for generating code.
But it's pretty advanced... probably just invoking dmd would be good...
You can
On 2020-07-27 13:43, Ali Çehreli wrote:
They should be taken care of when the program is linked with a D compiler.
Just linking with a D compiler is not sufficient. There needs to be a D
main function for the runtime to automatically be initialized. If you
make the D code a bit more
On 2020-07-27 03:03, Paul Backus wrote:
extern(C) void hello()
{
import std.stdio: writeln;
writeln("Hello from D!");
}
The D runtime needs to be initialized first [1]. Then it should be
terminated as well [2].
[1] https://dlang.org/phobos/core_runtime.html#.rt_init
[2]
1 - 100 of 3698 matches
Mail list logo