Re: Bug or Feature: unsigned integer overflow
On Saturday, 14 December 2019 at 07:09:30 UTC, Tobias Pankrath wrote: void main() { auto x = 9223372036854775808; // long.max + 1 } You need to tell, that this is an unsigned long literal, else the compiler treats it as an int: void main() { auto x = 9223372036854775808UL; // long.max + 1 }
Bug or Feature: unsigned integer overflow
void main() { auto x = 9223372036854775808; // long.max + 1 } onlineapp.d(3): Error: signed integer overflow According to spec x should be of type ulong and this should compile? It indeed compiles if I add the uL postfix. Is this a bug or indented behaviour?
Re: d programs conversion to c
On Wednesday, 11 December 2019 at 18:54:49 UTC, jicman wrote: Greetings! I am trying to see if there are any converters out there from d code to c. Anyone knows? Thanks. josé I don't think there would be any. The BetterC subset is as good as using C. Why specifically do you want to convert?
Re: D's equivalent List Comprehension
On Friday, 13 December 2019 at 15:20:02 UTC, Jesse Phillips wrote: I had mentioned my take on list comprehension here: https://forum.dlang.org/post/qslt0q$2dnb$1...@digitalmars.com#post-ycbohbqaygrgmidyhjma:40forum.dlang.org However someone put together a more comprehensive tutorial of its power. So I took the opportunity to demonstrate the parallel in D. https://dev.to/jessekphillips/list-comprehension-in-d-4hpi D is like writing English. Wait I thought that was supposed to be Python, maybe I am thinking ruby. It might help your blog posts to use drepl in your examples: https://code.dlang.org/packages/drepl A session: $ dub -q run drepl Welcome to D REPL. D> import std; std D> iota(10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] D> [2,45,21,45] [2, 45, 21, 45] D> [2,45,21,45].enumerate.assocArray [0:2, 3:45, 2:21, 1:45] D> iota(10).filter!(i => i % 2 == 0) [0, 2, 4, 6, 8] D> Lines without a semicolon are expressions, whose values are printed automatically. Lines with semicolons can import stuff, declare variables, define new functions, etc. Serious current limitations are: it's not aware of dub and can't import dub packages, and it can't parse dstyle braces.
D's equivalent List Comprehension
I had mentioned my take on list comprehension here: https://forum.dlang.org/post/qslt0q$2dnb$1...@digitalmars.com#post-ycbohbqaygrgmidyhjma:40forum.dlang.org However someone put together a more comprehensive tutorial of its power. So I took the opportunity to demonstrate the parallel in D. https://dev.to/jessekphillips/list-comprehension-in-d-4hpi D is like writing English. Wait I thought that was supposed to be Python, maybe I am thinking ruby.
Re: Mapping float to ulong in CTFE
Yeah, it worked (at least for %a): static assert(format!"%.3a"(1.0f) == "0x1.000p+0");
Re: Mapping float to ulong in CTFE
On Thursday, 12 December 2019 at 19:39:16 UTC, Petar Kirov [ZombineDev] wrote: You can use a C-style pointer reinterpret cast like this: uint test(float f) { return *cast(uint*) } Make sure that source and destination types have the same size. Hey, great! :-)