On Tuesday, 18 January 2022 at 17:37:27 UTC, H. S. Teoh wrote:
Bypassing dub and calling the raw ldc command gives no output.
What else can I do?
What does `echo $?` print immediately after you run the raw ldc
command?
T
It exits with 5. I could look for that, certainly.
This is maybe more a Windows (11) question than it is a dustmite
one. Semi-OT.
I'm trying to reduce
https://forum.dlang.org/thread/muehtdyjabmjxosmj...@forum.dlang.org, and it's Windows so I don't know what I'm doing. After multiple attempts at piecing together a batch tester script that both c
On Wednesday, 9 February 2022 at 08:12:52 UTC, Vindex wrote:
Will the loop (foreach) run at compile time? How can I make it
work at compile time?
```
import std.csv, std.stdio;
alias Record = Tuple!(string, string, string);
immutable string[][] table;
shared static this() {
string csvTex
On Saturday, 19 February 2022 at 13:12:32 UTC, MichaelBi wrote:
when running the example in the std.net.curl on my windows, got
following msg:
std.net.curl.CurlException@std\net\curl.d(4239): Failed to load
curl, tried "libcurl.dll", "curl.dll"
does it mean i don't have those dll files? thx.
On Tuesday, 1 March 2022 at 21:32:07 UTC, Ali Çehreli wrote:
Have you tried this new GC option which seems to solve the
stop-the-world issue:
https://dlang.org/changelog/2.098.0.html#forkgc
Any experience?
Ali
It didn't work well for me; the process hung in
`__memcpy_avx_unaligned_erms`
On Wednesday, 2 March 2022 at 16:38:58 UTC, M wrote:
There doesn't seem to be any docs on how to actually create
packages.
Is there a description anywhere?
https://dub.pm/getting_started.html is it, I think. It should get
you started on creating a package, and then you have
https://dub.pm/p
On Saturday, 5 March 2022 at 15:30:19 UTC, M wrote:
On Saturday, 5 March 2022 at 15:12:35 UTC, M wrote:
THE DOCS ARE INADEQUATE TO THE TASK.
I've created a directory bcm2835. Then within source/bcm2835 I
have bcm2835.d.
I run dub build, and file called libbcm2835.a gets built.
I type
On Tuesday, 8 March 2022 at 22:28:27 UTC, bauss wrote:
On Tuesday, 8 March 2022 at 20:12:40 UTC, BoQsc wrote:
I think D Language needs and lacks conditional compilation
condition and attribute of "exclude". The exclude keyword or
code block in the exclude, would be made sure to not be
imported
I'm introspecting structs, and I ran into an issue where
`__traits(derivedMembers)` includes manifest constant enums in
the returned tuple.
What is the correct way to statically detect these? The immediate
thing that springs to mind is `is(symbol == enum)`, but it's not
it.
Currently I'm t
On Saturday, 12 March 2022 at 19:01:06 UTC, Paul Backus wrote:
Typo: `.tupleof`
I use `.tupleof` otherwise, but this is old stuff from when I
didn't know of it. I'll have to refactor it some day, I had hoped
for it to be just... not yet.
On Thursday, 17 March 2022 at 14:00:45 UTC, kdevel wrote:
If ```import std.regex;``` is commented out or if
```-checkaction=context``` is removed from the cmd line the
unittest passes. Can anybody reproduce this?
https://run.dlang.io/is/GYDUBz
File an issue, I'd say. The worst thing that can
Does anyone have an example snippet code connecting to, reading
from and writing to a server using SSL under Windows with Secure
Channel? Something in a personal project you wouldn't mind
sharing a part of to let me dissect?
My project (IRC bot) supports connecting to a server using SSL,
for
I installed Git for Windows which comes with the Msys terminal,
and I noticed writeln lines aren't being flushed on linebreaks. I
had this a long time ago and thought I fixed it with the
following, but I guess I never confirmed that it actually worked.
I'm not sure where I copied it from, a TWi
On Sunday, 27 March 2022 at 18:09:30 UTC, Adam D Ruppe wrote:
Normally the IOLBF thing does help there - that means line
buffering - but my recommentation is to explicitly call
`stdout.flush()` any time it is important in your code. Then
you aren't depending on the relatively hidden config valu
On Monday, 18 April 2022 at 09:04:24 UTC, Dennis wrote:
What went wrong when you used the DMD installer? Installing
Visual Studio should not be necessary, since DMD ships with the
lld linker and MinGW Windows import libraries. If it doesn't
work out of the box, it should be fixed.
"Download a
On Tuesday, 3 May 2022 at 18:22:49 UTC, jmh530 wrote:
I was leaning towards it being something related to running out
of memory or something, but I'm using dub and I've tried
turning on and off "lowmem".
Note that dub cannot pass -lowmem to dmd.
https://issues.dlang.org/show_bug.cgi?id=20699
On Thursday, 12 May 2022 at 13:04:51 UTC, Alain De Vos wrote:
Is there a link to a webpage with some dlang exercises in order
to see if i master the language, from simple to diffucult ?
[Rosetta Code](https://www.rosettacode.org) has a bunch, with
[many](https://www.rosettacode.org/wiki/Catego
On Wednesday, 11 May 2022 at 05:41:35 UTC, Ali Çehreli wrote:
What are you stuck at? What was the most difficult features to
understand? etc.
I came from shell scripts. They grew too large and overly complex
when I wanted to do non-trivial things in a neat way, so I looked
to proper programmi
On Thursday, 12 May 2022 at 16:48:05 UTC, H. S. Teoh wrote:
static foreach isn't meant to handle large loops. Writing
`static foreach (i; 0 .. 6)` is generally a bad idea; my
suspicion is that the compiler ran out of stack space). It's
more for unfolding groups of statements or declaration
On Thursday, 12 May 2022 at 15:17:10 UTC, Adam D Ruppe wrote:
It is simpler than it looks, I wrote about it in my book and in
a post here:
https://forum.dlang.org/post/xklcgjaqggihvhctc...@forum.dlang.org
"Then commas separate the definitions of each placeholder
variable, just as if they we
Before I go on duplicating effort, does anyone have anything that
can access FTP beyond PUT and GET?
I need to read file information from a NAS so I know if I should
upload a file or not. `dlang-requests` has `Request.post` and
`Request.get`, but seemingly no way to LS.
On Sunday, 15 May 2022 at 19:13:10 UTC, ikod wrote:
Added LIST command in v2.0.8
Thanks!
What is the correct way of making this output `0 1 2`?
```d
void delegate()[] dgs;
foreach (immutable i; 0..3)
{
dgs ~= () => writeln(i);
}
foreach (dg; dgs)
{
dg(); // outputs: `2 2 2`
}
```
std.variant;
Variant v = [[1], [2], [3]];
writeln(v.type); // int[][]
typeof(v.type); // TypeInfo
assert(v.type == typeid(int[][]);
As demonstrated by the assert statement, .type returns the typeid
of the underlying type. How would I obtain the actual type such
that:
auto vb = v.base; /
On Saturday, 9 July 2022 at 14:46:36 UTC, Adam D Ruppe wrote:
Impossible; Variant's type is only known at runtime, and this
would require compile time knowledge.
Hmmm. Okay, thanks. What I really need to know is how many
dimensions an array has and the total elements per dimension so
that I
On Sunday, 10 July 2022 at 06:26:37 UTC, jfondren wrote:
```d
import std.variant : Variant;
size_t[] shape(Variant v) {
import std.variant : VariantException;
size_t[] s;
try {
while (true) {
Variant elem = v[0];
s ~= v.length;
v = elem;
On Sunday, 10 July 2022 at 18:31:46 UTC, drug007 wrote:
I'd like to say that using of exception to break loop is really
bad. Exception is exceptional thing but in the case above the
exception is ordinary completion of the loop happens on regular
basis. Don't do that.
Thanks for the advice.
On Sunday, 10 July 2022 at 19:14:34 UTC, Paul Backus wrote:
For reference, this is the more correct way:
```d
while (cast(TypeInfo_Array) v.type !is null) {
Variant elem = v[0];
// etc.
}
```
Hard to blame anyone for not coming up with that on their first
try, especially since `TypeIn
On Monday, 11 July 2022 at 05:41:40 UTC, jfondren wrote:
Oh, sorry. I didn't defend the code in any way because I
assumed that the exceptional design would be seen as obviously
bad (and that someone else would dig harder in order to find a
better solution).
And you were right. I did search
On Tuesday, 12 July 2022 at 14:17:36 UTC, ananymouse wrote:
Been racking my brain on this for hours. Please point me in the
right direction.
Thanks,
--anonymouse
My current implementation:
``` d
// Allow for indexing to read a value, e.g a[0,0,0]
T opIndex(A...)(A a) {
On Tuesday, 12 July 2022 at 14:55:47 UTC, anonymouse wrote:
I've tried using a foreach loop to achieve this but failed
miserably.
--anonymouse
Wait, I think I've got it.
This little snippet does the trick:
int index;
foreach(i, v; a) {
int t = v;
foreach(d; dims[i+
Given an array of arbitrary dimensions, I would like to
accomplish three things:
1) verify that it is rectangular (e.g. all elements have
the same length, all sub-elements have the same length, etc.)
2) flatten and return the flattened copy
3) transpose and return the
On Wednesday, 20 July 2022 at 20:47:28 UTC, ag0aep6g wrote:
(Aside: You don't need that many backticks to mark code
fragments.)
Thought I was following the instructions but it looks like I got
a bit carried away. lol.
You've got a bug there. This should pass, but fails with your
version:
On Wednesday, 20 July 2022 at 16:15:33 UTC, Salih Dincer wrote:
On Wednesday, 20 July 2022 at 09:18:29 UTC, anonymouse wrote:
Given an array of arbitrary dimensions, I would like to
accomplish three things:
1) verify that it is rectangular (e.g. all elements
have the same length, al
On Wednesday, 20 July 2022 at 09:18:29 UTC, anonymouse wrote:
As for task 3, while I understand the concept of transposing a
matrix, I'm not sure how to even begin.
By not knowing how to begin, I mean that I don't know how to
generalize the algorithm so that it applies to an array of
arbi
On Friday, 22 July 2022 at 05:17:49 UTC, anonymouse wrote:
On Wednesday, 20 July 2022 at 09:18:29 UTC, anonymouse wrote:
As for task 3, while I understand the concept of transposing a
matrix, I'm not sure how to even begin.
By not knowing how to begin, I mean that I don't know how to
gene
How do I go about tracking down what's causing the following
error:
```
Undefined symbols for architecture x86_64:
"__D3std8internal6memory12__ModuleInfoZ", referenced from:
__D3loxQe12__ModuleInfoZ in dlux.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command fa
On Wednesday, 3 August 2022 at 05:04:08 UTC, H. S. Teoh wrote:
On Wed, Aug 03, 2022 at 04:28:57AM +, anonymouse via
Digitalmars-d-learn wrote:
How do I go about tracking down what's causing the following
error:
```
Undefined symbols for architecture x
On Wednesday, 3 August 2022 at 09:39:36 UTC, ryuukk_ wrote:
Does adding ```-m64``` work
I'm using macOS so I don't think that applies. But no, it doesn't
do anything for me.
Thanks,
--anonymouse
Observe the
[implementation](https://github.com/Kriyszig/magpie/blob/master/source/magpie/axis.d) of
```d
stuct Axis(U...){}
```
More specifically, observe its usage in the unittests for [Binary
Ops on Variant
Axis](https://github.com/Kriyszig/magpie/blob/master/source/magpie/axis.d#L410-L437)
On Monday, 5 September 2022 at 10:30:32 UTC, Ali Çehreli wrote:
On 9/5/22 01:58, anonymouse wrote:
> array [1.7, 3.7, 5.7, 7.7, 9.7] in both cases, which is what
is being
> asserted by those two lines.
None of those values can be represented precisely in a floating
point type. Without looking
Thanks Paul. Gotta wrap my head around this well enough to update
that module. However, this is a great start. Thank you very much.
--anonymouse
I have some nested templated code that takes function pointers.
In many cases I pass it functions of identical signatures, except
some are `@safe` and others are `@system`. In those cases the
templates end up getting instantiated twice. I don't care about
the `@safe`-ness and I'd really like to
On Sunday, 9 October 2022 at 16:25:22 UTC, tsbockman wrote:
You might be templating more information than necessary. In
your example `foo` doesn't need to be a template at all:
```D
void foo(void function() @system fun) {
pragma(msg, typeof(fun).stringof);
}
```
Yes, it was a toy example.
On Sunday, 9 October 2022 at 17:42:57 UTC, user1234 wrote:
But surely there has to be a better way?
No.
Darn. Okay, thanks.
I'm having problems compiling my thing into an executable that
doesn't require ldc's phobos/druntime .so's. I want to distribute
it in a form where it's okay if
`/usr/lib/libphobos2-ldc-shared.so.100` and friends don't exist.
`--static` seems to do the trick in that the compiled file is no
lo
On Tuesday, 25 October 2022 at 10:55:33 UTC, Kagamin wrote:
ldc2 -link-defaultlib-shared=false or something like that
Thanks.
On Thursday, 27 October 2022 at 08:08:38 UTC, Yura wrote:
What am I doing wrong? Any way to fix it?
https://forum.dlang.org/thread/gghcyaapjwfcpnvks...@forum.dlang.org worked for
me.
[#20699](https://issues.dlang.org/show_bug.cgi?id=20699) must be
non-trivial to fix, so I'm exploring makefiles. If possible I'd
like to keep dub for dependency management though, just not for
actual compilation.
Is it at all possible (or even desireable) to construct a
makefile that builds d
I'm trying to build my thing with gdc. It (now) compiles, but
fails to link on this Manjaro/Arch laptop with gdc 12.2.0.
```
/usr/bin/ld: /tmp/ccstWTAS.o: in function
`_D3std6format8internal5write__T8getWidthTAyaZQoFNaNfQlZl':
/usr/lib/gcc/x86_64-pc-linux-gnu/12.2.0/include/d/std/format/intern
On Tuesday, 20 December 2022 at 20:55:08 UTC, Paul Backus wrote:
Apologies for the late reply.
On Tuesday, 20 December 2022 at 20:01:04 UTC, Anonymouse wrote:
What does `-allinst` even do
`-allinst` tells the compiler to generate code for all
instantiated templates, even if it thinks that c
I use `hasUDA`, `getUDAs` and `getSymbolsByUDA` fairly heavily in
my project. dmd requires some 3.2Gb to compile it, a dub
recompilation taking somewhere around 8-14 seconds, depending on
the phase of the moon. It's not too bad, admittedly.
Stuff like this, naturally taken out of all context:
On Saturday, 28 January 2023 at 17:16:07 UTC, Hipreme wrote:
[...]
Thank you. I incorporated some of these ideas and looked up how
to profile the compilation with tracy, and now dmd memory
requirements are down to ~2100 Mb. It's still a far cry from your
250 Mb, however.
I changed it to on
On Wednesday, 8 February 2023 at 17:55:03 UTC, Alexander Zhirov
wrote:
Not an easy task for me, maybe you can advise your compact
solution. There are two associative arrays of type
`string[string][int]`. It is necessary to find the differences
and return them when comparing:
Can you explain h
On Wednesday, 8 February 2023 at 19:04:15 UTC, Alexander Zhirov
wrote:
[...]
I would write a data structure and use struct members to reason
about things, but that's probably just preference.
```
import std;
struct DatabaseEntry
{
int id = -1;
string deleted;
string name;
t
On Wednesday, 22 March 2023 at 14:02:53 UTC, Alexander Zhirov
wrote:
So that i can get a more readable look:
`2023-Mar-22 16:53:42.2507395` => `2023.03.22 16:53:42`
Maybe there's a better way but I just do this.
```
import std;
void main()
{
const now = Clock.currTime();
enum pattern
On Wednesday, 22 March 2023 at 14:02:53 UTC, Alexander Zhirov
wrote:
Convert date from received time
```
Clock.currTime().toSimpleString()
```
I missed the part about receiving the time, so ignore my previous
post.
Wondering if this is possible? Ask a user at input and wait for
response:
write("Is the sky blue? ");
readf!" %s\n"(response);
If the user's response is correct, I'd like to change the color
of provided response to indicate it was correct then advance to
the next line and ask a different ques
On Thursday, 6 April 2023 at 14:51:43 UTC, Steven Schveighoffer
wrote:
On 4/6/23 4:01 AM, anonymouse wrote:
Wondering if this is possible?
[snip]
You need to use a terminal-control library, such as
`arsd.terminal`
https://github.com/adamdruppe/arsd/blob/master/terminal.d
-Steve
That works
What am I doing wrong here?
```D
import std.net.curl: Curl, CurlOption, CurlException;
import std.file: exists;
import std.stdio: File, writefln;
import core.thread: Thread;
void downloadFile(string url, string filename)
{
while (true) {
try {
File fp;
if (fil
What am I doing wrong here?
```D
import std.net.curl: Curl, CurlOption, CurlException;
import std.file: exists;
import std.stdio: File, writefln;
import core.thread: Thread;
void downloadFile(string url, string filename)
{
while (true) {
try {
File fp;
if (fil
On Friday, 19 May 2023 at 12:28:20 UTC, kdevel wrote:
On Friday, 19 May 2023 at 11:07:01 UTC, anonymouse wrote:
What am I doing wrong here?
[...]
curl.set(CurlOption.writedata, &fp);
According to [1] this line must read
```
curl.set(CurlOption.writedata, cast (void *) fp.getFP(
On Friday, 19 May 2023 at 12:28:20 UTC, kdevel wrote:
On Friday, 19 May 2023 at 11:07:01 UTC, anonymouse wrote:
What am I doing wrong here?
[...]
curl.set(CurlOption.writedata, &fp);
According to [1] this line must read
```
curl.set(CurlOption.writedata, cast (void *) fp.getFP(
On Friday, 19 May 2023 at 12:40:29 UTC, Danny Arends wrote:
On Friday, 19 May 2023 at 11:07:01 UTC, anonymouse wrote:
What am I doing wrong here?
[SNIP]
You're running the whole thing in a while(TRUE) loop,
recreating the curl object re-initiating the transfer and file
pointer, etc.
The r
On Wednesday, 24 May 2023 at 16:39:36 UTC, Ben Jones wrote:
Is there a range like iota in phobos where step is a function?
I want to specify begin/end and have the "step" be next =
fun(prev). Should be easy to write, but don't want to reinvent
the wheel.
D
import std.stdio;
import std.ra
On Saturday, 20 May 2023 at 09:20:54 UTC, kdevel wrote:
What if the internet connection is not re-established within an
reasonable amount of time? What if the resource is no longer
available on the server (HTTP eror 404 [1])? If there is an
interactive user: Wouldn't it be better have the use
On Thursday, 25 May 2023 at 00:18:44 UTC, anonymouse wrote:
On Wednesday, 24 May 2023 at 16:39:36 UTC, Ben Jones wrote:
Is there a range like iota in phobos where step is a function?
I want to specify begin/end and have the "step" be next =
fun(prev). Should be easy to write, but don't want t
On Tuesday, 13 June 2023 at 17:06:55 UTC, mw wrote:
Does anyone know how to fix it? or any work-around?
Thanks.
I don't know if it's *correct* or not, but I think I did this at
the time to work around it.
```
shared string[string] aa;
void main()
{
auto aaTemp = [ "abc" : "123" ];
On Friday, 16 June 2023 at 07:47:50 UTC, Murloc wrote:
And since classes can be declared locally inside methods, you
can also do something similar this way:
```d
import std.stdio;
import std.conv;
Object getB() {
class B {
private int field = 30;
override string toS
On Monday, 19 June 2023 at 16:43:30 UTC, Steven Schveighoffer
wrote:
In this specific case, most likely it's a stale register or
stack reference. One way I usually use to ensure such things is
to call a function that destroys the existing stack:
```d
void clobber()
{
int[2048] x;
}
```
C
How would I go about graphing time series data (specifically,
candles, moving averages, etc) in D and dynamically updating such
charts?
Thanks,
--anonymouse
On Friday, 7 July 2023 at 17:46:09 UTC, Cecil Ward wrote:
A bit of a weird question, and I’m not sure how to word it. Say
I have a module, and I’d like to list / enumerate all the
public visible things that the module exports / publishes ‘
makes visible. Is there a way of doing that ? Of gettin
On Thursday, 20 July 2023 at 04:41:48 UTC, Chris Piker wrote:
On Thursday, 20 July 2023 at 03:58:05 UTC, Andrew wrote:
I just tried ggplotd and it was easy to make it work on Linux,
only one external apt command needed, but on Windows, even that
is a deal breaker. Package management on Windows
On Monday, 28 August 2023 at 15:14:52 UTC, BrianLinuxing wrote:
Thank you that looks good :)
But is it the full installer and all of the bits?
The official [`install.sh`](https://dlang.org/install.html)
script will download ldc on ARM too, just as well as on x86. I
use it on my Pi400.
On Sunday, 1 October 2023 at 08:22:48 UTC, dhs wrote:
Hi,
What's the meaning of the dot in the call to writeln() below?
```d
.writeln("Hello there!");
```
I haven't found this in the spec or anywhere else. This is used
very often in the source code for Phobos.
Thanks,
dhs
Quote https:
On Thursday, 14 December 2023 at 03:58:37 UTC, Joel wrote:
If I get user input, for example, how do I check to see if it's
a valid path, like, file name.
```d
// something like this:
if (getUserInput.isValidPath) {
...
}
```
Is that not how it works?
https://dlang.org/phobos/std_path.html#is
I have a `shared string[int]` AA that I access from two different
threads. The function I spawn to start the second thread takes
the AA as an argument.
```d
class Foo
{
shared string[int] bucket;
Tid worker;
}
void workerFn(shared string[int] bucket)
{
while (true)
{
//
On Monday, 1 January 2024 at 19:49:28 UTC, Jonathan M Davis wrote:
[...]
Thank you. Yes, `Foo` is a class for the purposes of inheritance
-- I left that out of the example.
So a completely valid solution is to write a struct wrapper
around an AA of the type I need, overload the required ope
On Tuesday, 2 January 2024 at 11:05:33 UTC, user1234 wrote:
Do not use `shared` AA. Use `__gshared` + sync primitives.
`shared` AA will lead to all sort of bugs:
- https://issues.dlang.org/show_bug.cgi?id=20484#c1
- https://issues.dlang.org/show_bug.cgi?id=17088
- https://issues.dlang.org/show_
On Tuesday, 2 January 2024 at 18:01:55 UTC, Jonathan M Davis
wrote:
[...]
That clarifies a lot. If nothing else, I realise now I can't have
`opBinaryRight(string op : "in")` the way I had hoped.
What I have now probably doesn't cover 100% of every use-case,
but it should do for my scope. I'
On Saturday, 13 January 2024 at 12:55:27 UTC, Renato wrote:
[...]
Not a great profiling experience :). Anyone has a better
suggestion to "parse" the trace file?
As a drive-by suggestion and I hope it doesn't derail anything,
but if you have the opportunity to run it on linux, have you
tried
On Saturday, 13 January 2024 at 23:20:32 UTC, Sergey wrote:
I would suggest to rewrite in the same way as Rust implemented.
Probably you would like to try:
[...]
I would strongly argue for profiling first instead of optimising
based on conjecture. If you profile you have solid evidence on
wha
I'm increasingly using nested delegates to partition code.
```d
void foo(Thing thing)
{
void sendThing(const string where, int i)
{
send(thing, where, i);
}
sendThing("bar", 42);
}
```
...where the nested `sendThing` sometimes returns something,
sometimes doesn't. `Thin
On Tuesday, 16 January 2024 at 13:45:22 UTC, FeepingCreature
wrote:
Am I safe as long as I don't do something like, pass
`&sendThing` as an argument to `std.concurrency.receive`?
Yes.
Thank you.
And to make sure I don't misunderstand the spec; in the case I
*do* have a delegate I want to pa
On Tuesday, 16 January 2024 at 17:21:12 UTC, FeepingCreature
wrote:
Correct. [...]
Thanks, I think I understand.
On Saturday, 20 January 2024 at 16:32:42 UTC, FeepingCreature
wrote:
```
foreach (name; names)
{
dgs ~= ((name) => () => writeln(name))(name);
}
```
lol
Thanks, I'll try that.
On Monday, 22 January 2024 at 08:27:36 UTC, Joel wrote:
```d
import std;
struct Person {
string name, email;
ulong age;
auto withName(string name) { this.name=name; return this; }
auto withEmail(string email) { this.email=email; return
this; }
auto withAge(ulong age) { this
On Friday, 2 February 2024 at 08:22:42 UTC, Carl Sturtivant wrote:
It seems I cannot pass e.g. an int argument to a Variant
function parameter. What's the simplest way to work around this
restriction?
The easiest thing would be to actually pass it a `Variant` with
`someFunction(Variant(myInt)
On Saturday, 3 February 2024 at 08:04:40 UTC, Danilo wrote:
To be honest, this doesn't make sense.
`if (!is(T : Variant))` returns true for inputs like 42,
"hello", 3.14f, but the input is not a Variant but a random
type.
Yes, it's nice that it works in this case. It's just not
logical, it
On Tuesday, 11 June 2024 at 18:26:50 UTC, confuzzled wrote:
On Tuesday, 11 June 2024 at 16:41:46 UTC, confuzzled wrote:
Comparison between a Variant and an array is straightforward.
How does one accomplish the same between a SumType and an
array?
Okay, this is what I came up with. Just a sa
On Sunday, 7 July 2024 at 14:41:31 UTC, Andrey Zherikov wrote:
```d
import std.path;
// Error: no property `asNormaliedPath` for
`dirName("/sandbox/onlineapp.d")` of type `string`
auto p = __FILE_FULL_PATH__.dirName.asNormaliedPath;
```
`asNormalizedPath` is misspelled.
I've so far been using `std.typecons.Flag` *heavily* to work
around there not being named arguments in D. As soon as I wanted
to pass something a bool, I made it a `Flag` instead to make it a
bit more self-documenting. (Also in general just to idiot-proof
it a bit, since I don't trust myself no
On Thursday, 8 August 2024 at 10:51:29 UTC, IchorDev wrote:
Named template parameters were mentioned in [the
DIP](https://github.com/dlang/DIPs/blob/master/DIPs/accepted/DIP1030.md), they just haven’t been implemented yet.
Thanks! Will just wait then.
201 - 293 of 293 matches
Mail list logo