Re: Is there a nice syntax to achieve optional named parameters?

2019-01-17 Thread Matheus via Digitalmars-d-learn
On Thursday, 17 January 2019 at 16:55:33 UTC, SrMordred wrote: Yes, but there is a mistake there: alias is part of the template: foo(alias x)(){} //note extra parens than u call like an template: foo!"a"; //equivalent = foo!("a")(); foo!1; I see now and thanks. Matheus.

Re: Modulo that 'wraps' the number?

2019-01-21 Thread Matheus via Digitalmars-d-learn
On Monday, 21 January 2019 at 15:01:27 UTC, Steven Schveighoffer wrote: Probably, this optimizes into better code, but maybe the optimizer already does this with the expression above: auto tmp = n % 3; if(tmp < 0) tmp += 3; It's just not a nice single expression. -Steve I don't think

Re: Modulo that 'wraps' the number?

2019-01-21 Thread Matheus via Digitalmars-d-learn
On Monday, 21 January 2019 at 18:39:27 UTC, Steven Schveighoffer wrote: Not a Python user, just hoping to help answer questions :) Yes I know in fact I'm not the OP but from what I understood from his post, he want to replicate, but I may be wrong. If it's the case, this code may help him:

Re: Is there a nice syntax to achieve optional named parameters?

2019-01-17 Thread Matheus via Digitalmars-d-learn
On Thursday, 17 January 2019 at 01:43:42 UTC, SrMordred wrote: Let me throw this idea here: ... I usually do this too, I like to use struct and then in another language I use reflection do optimize binding. Anyway I understood all your code, except for this "alias code" auto NewWindow(

Re: How to cast arrays?

2019-03-01 Thread Matheus via Digitalmars-d-learn
On Saturday, 2 March 2019 at 02:14:01 UTC, Murilo wrote: How do I cast a ubyte[] into uint[]? It keeps raising an error, I have read the documentation saying there are restrictions for that concerning the length of the arrays. https://dlang.org/spec/expression.html#cast_expressions "Casting

Re: Struct destructor

2019-03-02 Thread Matheus via Digitalmars-d-learn
On Saturday, 2 March 2019 at 11:32:53 UTC, JN wrote: ... Is this proper behavior? I'd imagine that when doing foos.remove("bar"), Foo goes out of scope and should be immediately cleaned up rather than at the end of the scope? Or am I misunderstanding how should RAII work?

Re: How to cast arrays?

2019-03-01 Thread Matheus via Digitalmars-d-learn
On Saturday, 2 March 2019 at 02:14:01 UTC, Murilo wrote: How do I cast a ubyte[] into uint[]? It keeps raising an error, I have read the documentation saying there are restrictions for that concerning the length of the arrays. By the way here is how: void foo(){ ubyte[] x = [1,2]; auto

Re: Reuse/reset dynamic rectangular array?

2019-05-25 Thread matheus via Digitalmars-d-learn
On Saturday, 25 May 2019 at 14:28:24 UTC, Robert M. Münch wrote: How can I reset a rectangualr array without having to loop through it? int[][] myRectData = new int[][](10,10); myRectData.length = 0; myRectData[].length = 0; myRectData[][].length = 0; They all give:

Re: create and initialise array

2019-06-19 Thread matheus via Digitalmars-d-learn
On Thursday, 20 June 2019 at 01:06:09 UTC, Alex wrote: Is there a way of creating and initialising a dynamic array ? for example I am doing this: auto arr = new float[]; arr[] = 0.0f; Profiling indicates that the compiler (gdc) is spending significant time memsetting the whole array to

Re: Performance of tables slower than built in?

2019-05-21 Thread matheus via Digitalmars-d-learn
On Wednesday, 22 May 2019 at 00:55:37 UTC, Adam D. Ruppe wrote: On Wednesday, 22 May 2019 at 00:22:09 UTC, JS wrote: I am trying to create some fast sin, sinc, and exponential routines to speed up some code by using tables... but it seems it's slower than the function itself?!? There's

Re: Blog Post #0050: MVC III - ComboBoxText, Add & Remove

2019-07-05 Thread matheus via Digitalmars-d-learn
On Friday, 5 July 2019 at 09:34:08 UTC, Ron Tarrant wrote: Today is a bit of a milestone for the blog as the 50th regular post goes up. Also, the facelift is coming along nicely, the next phase of which should be ready to push by July 9th. And today's topic continues with the MVC series by

Re: Speed of Random Numbers

2019-08-03 Thread matheus via Digitalmars-d-learn
On Saturday, 3 August 2019 at 16:35:34 UTC, Giovanni Di Maria wrote: For me the "goodness of random" is NOT important. If that's the case, you could roll your own RNG: //DMD64 D Compiler 2.072.2 import std.stdio; import std.datetime; import std.array, std.random; void main(){ ubyte x;

Re: Question about ubyte x overflow, any safe way?

2019-08-04 Thread matheus via Digitalmars-d-learn
On Sunday, 4 August 2019 at 18:38:34 UTC, Paul Backus wrote: ... Use std.experimental.checkedint: import std.stdio; import std.experimental.checkedint; void main() { for(Checked!(ubyte, Throw) u = ubyte(250); u < 256; ++u) { writeln(u.get); } } An exception will be thrown when

Re: Help me decide D or C

2019-07-31 Thread matheus via Digitalmars-d-learn
On Wednesday, 31 July 2019 at 18:38:02 UTC, Alexandre wrote: ... Should I go for C and then when I become a better programmer change to D? Should I start with D right now? ... I think it depend your intent, but right now for a beginner between C and D I would go with C, because as you noted

Re: Question about ubyte x overflow, any safe way?

2019-08-05 Thread matheus via Digitalmars-d-learn
On Monday, 5 August 2019 at 01:41:06 UTC, Ali Çehreli wrote: ... Two examples with foreach and ranges. The 'ubyte.max + 1' expression is int. The compiler casts to ubyte (because we typed ubyte) in the foreach and we cast to ubyte in the range: ... Maybe it was a bad example of my part

Re: Private variables accessible from outside class

2019-08-08 Thread matheus via Digitalmars-d-learn
On Thursday, 8 August 2019 at 15:51:45 UTC, Drobet wrote: ... My question is if this is intended behavior, and if yes, why? This is true if the class is inside the same module: "Private means that only members of the enclosing class can access the member, or members and functions in the same

Re: Help me decide D or C

2019-08-01 Thread matheus via Digitalmars-d-learn
On Thursday, 1 August 2019 at 09:43:20 UTC, Kagamin wrote: On Wednesday, 31 July 2019 at 22:30:52 UTC, Alexandre wrote: 1) Improve as a programmer 2) Have fun doing programs Thats it basically. I am planning to study all "free" time I have. I am doing basically this since last year. Try

Question about ubyte x overflow, any safe way?

2019-08-04 Thread matheus via Digitalmars-d-learn
Hi, The snippet below will produce an "infinite loop" because obviously "ubyte u" will overflow after 255: import std.stdio; void main(){ ubyte u = 250; for(;u<256;++u){ writeln(u); } } Question: Is there a way (Flag) to prevent this? Matheus.

Re: Question about ubyte x overflow, any safe way?

2019-08-04 Thread matheus via Digitalmars-d-learn
On Sunday, 4 August 2019 at 18:15:30 UTC, Max Haughton wrote: What do you want to do? If you just want to count to 255 then use a foreach This was just an example, what I'd like in this code is either: Get an error (exception) when overflow or even an warning (Only if "some" flag was

Re: Help making a game with transparency

2019-09-28 Thread matheus via Digitalmars-d-learn
Ok, I took a look over my old projects and I found exactly what you want, by the way it's from 2012. It uses Derelict 2.0 bindings and will draw a PNG image where you can move around with cursor keys. If you want I can send you the whole project (Makefile, DLL's) and everything else to

Re: Help making a game with transparency

2019-09-27 Thread matheus--- via Digitalmars-d-learn
On Friday, 27 September 2019 at 16:36:14 UTC, Murilo wrote: ...Do you know the arsd library? Yes but I use mostly terminal.d and others. On the other hand I use to code games too using SDL and OpenGL. I know for example in OpenGL you can do: glEnable(GL_ALPHA_TEST); to enable alpha channel

Re: Help making a game with transparency

2019-09-27 Thread matheus via Digitalmars-d-learn
On Friday, 27 September 2019 at 21:16:07 UTC, Murilo wrote: ... Here it is, how do I make the ship have a transparent background? First: Your PNG file has transparency data information right? Second: I was Looking into the drawImage function (Line 854):

Re: Help making a game with transparency

2019-09-27 Thread matheus via Digitalmars-d-learn
On Friday, 27 September 2019 at 02:54:27 UTC, Murilo wrote: Hi guys, I am making a game but for some reason the sprites do not show with the transparent background that they were supposed to. I'm using the arsd library. Can anyone help me? Sorry this is a bit vague. I suppose you're using

Re: How to get child class Type and members from parent class?

2019-11-20 Thread Matheus via Digitalmars-d-learn
On Wednesday, 20 November 2019 at 13:46:07 UTC, Jacob Carlborg wrote: On Wednesday, 20 November 2019 at 10:05:11 UTC, zoujiaqing wrote: import std.stdio; class A { this(T)(T t) { } void write() { T _this = cast(T) this; writeln(this.v); } } class B :

Re: DConf 2017 Videos

2020-04-25 Thread matheus via Digitalmars-d-learn
On Saturday, 25 April 2020 at 11:11:07 UTC, Jacob Carlborg wrote: I have previously downloaded the DConf videos. I sent them to Mike for him to upload. Thank you very much for this.

DConf 2017 Videos

2020-04-24 Thread matheus via Digitalmars-d-learn
Hi, please could someone tell me where can I find videos from DConf 2017? I pretty sure I watched them on Youtube sometime ago, but I can't find anymore. By the way, I'm looking from one video where someone shows some "C flaws" and how to D as Better C could solve that. I think it was the

Re: DConf 2017 Videos

2020-04-24 Thread matheus via Digitalmars-d-learn
On Friday, 24 April 2020 at 21:11:48 UTC, Steven Schveighoffer wrote: ... and whomever controlled the sociomantic youtube account took down all the videos... First of all thanks for replying and... Ouch! After that I hope D Foundation learned the lesson and keep the videos themselves instead

Re: Swedish letters fuck up parsing into SQL querry

2020-03-24 Thread matheus via Digitalmars-d-learn
On Monday, 23 March 2020 at 15:41:50 UTC, Adam D. Ruppe wrote: On Monday, 23 March 2020 at 15:15:12 UTC, Anders S wrote: I'm creating a connection to the db and conn.exec(sql) It depends on the library but it is almost always easier to do it right than to do it the way you are. like with

Re: How to use this forum ?

2020-05-20 Thread matheus via Digitalmars-d-learn
On Wednesday, 20 May 2020 at 20:49:52 UTC, Vinod K Chandran wrote: Hi all, I have some questions about this forum. 1. How to edit a post ? 2. How to edit a reply ? 3. How to add some code(mostly D code) in posts & replies. 4. How to add an image in posts & replies. 5. Is there a feature to mark

Re: Compiler is calling `_memset64` in betterC

2020-10-19 Thread matheus via Digitalmars-d-learn
On Sunday, 18 October 2020 at 19:24:28 UTC, Ferhat Kurtulmuş wrote: I plan to start a project in reasonable size, I wonder if I should really use betterC... if I encounter a bug like this, will I be stuck at it? The bug report says, it is a dmd specific problem, and LDC, my favorite d

Question about: ("1.1").to!int;

2020-10-21 Thread matheus via Digitalmars-d-learn
Hi, import std.stdio, std.conv; void main(string[ ] args) { auto a = (1).to!int; // this works auto b = ("1").to!int; // this works auto c = (1.1).to!int; // this works and c = 1 auto d = ("1.1").to!int; // Doesn't work } The forth line gives me:

Re: Question about: ("1.1").to!int;

2020-10-23 Thread matheus via Digitalmars-d-learn
On Friday, 23 October 2020 at 08:09:13 UTC, Виталий Фадеев wrote: On Wednesday, 21 October 2020 at 22:50:27 UTC, matheus wrote: Hi, import std.stdio, std.conv; void main(string[ ] args) { auto a = (1).to!int; // this works auto b = ("1").to!int; // this works auto c =

Re: Question about: ("1.1").to!int;

2020-10-23 Thread matheus via Digitalmars-d-learn
On Friday, 23 October 2020 at 13:57:41 UTC, Joseph Rushton Wakeling wrote: On Wednesday, 21 October 2020 at 22:50:27 UTC, matheus wrote: Since (1.1).to!int = 1, shouldn't the string value ("1.1").to!int at least try to convert to float/double and then to int? The thing is, that's a great way

Re: Is there something I'm not getting here?

2020-10-26 Thread matheus via Digitalmars-d-learn
On Tuesday, 27 October 2020 at 01:26:56 UTC, James Blachly wrote: On 10/26/20 9:19 PM, Ruby The Roobster wrote: Following code doesn't work(it's not the actual code but it represents it). Is there some rule about function overrides that I don't know about? ... The error I keep getting no

Re: Is there something I'm not getting here?

2020-10-26 Thread matheus via Digitalmars-d-learn
On Tuesday, 27 October 2020 at 02:21:39 UTC, matheus wrote: On Tuesday, 27 October 2020 at 01:26:56 UTC, James Blachly wrote: On 10/26/20 9:19 PM, Ruby The Roobster wrote: Following code doesn't work(it's not the actual code but it represents it). Is there some rule about function overrides

Re: Question about: ("1.1").to!int;

2020-10-24 Thread matheus via Digitalmars-d-learn
On Saturday, 24 October 2020 at 04:04:18 UTC, Виталий Фадеев wrote: On Friday, 23 October 2020 at 16:59:06 UTC, matheus wrote: On Friday, 23 October 2020 at 13:57:41 UTC, Joseph Rushton Wakeling wrote: On Wednesday, 21 October 2020 at 22:50:27 UTC, matheus wrote: Well since the caller is

Re: Working with pointers/adresses

2020-07-09 Thread matheus via Digitalmars-d-learn
On Wednesday, 8 July 2020 at 20:33:39 UTC, Paul Backus wrote: import std.stdio; void main() { int i; readf("%d\n", i); // read a number ubyte* p = cast(ubyte*) i; // convert it to a pointer writeln(*p); // write the data at that address to the console } Note that this program

Re: Working with pointers/adresses

2020-07-09 Thread matheus via Digitalmars-d-learn
On Thursday, 9 July 2020 at 17:24:33 UTC, matheus wrote: On Wednesday, 8 July 2020 at 20:33:39 UTC, Paul Backus wrote: import std.stdio; void main() { int i; readf("%d\n", i); // read a number ubyte* p = cast(ubyte*) i; // convert it to a pointer writeln(*p); // write the data

Privatize a few members to allow messing with them #11353

2020-06-30 Thread matheus via Digitalmars-d-learn
Hi, I was looking the PR in DMD and I found this one: https://github.com/dlang/dmd/pull/11353/ One of the changes was: -loc.linnum += incrementLoc; +loc.linnum = loc.linnum + incrementLoc; I usually do the former and I particularly hate the later, so my question is,

Re: Privatize a few members to allow messing with them #11353

2020-06-30 Thread matheus via Digitalmars-d-learn
On Tuesday, 30 June 2020 at 20:01:43 UTC, Stanislav Blinov wrote: On Tuesday, 30 June 2020 at 19:58:05 UTC, matheus wrote: +loc.linnum = loc.linnum + incrementLoc; This works because it was declared: void linnum(uint rhs) { _linnum = rhs; } Right? Almost. Given these

Re: Privatize a few members to allow messing with them #11353

2020-06-30 Thread matheus via Digitalmars-d-learn
On Tuesday, 30 June 2020 at 19:55:56 UTC, matheus wrote: On Tuesday, 30 June 2020 at 19:46:35 UTC, Stanislav Blinov ... @safe @nogc pure @property { const uint linnum() { return _linnum; } const uint charnum() { return _charnum; } void linnum(uint rhs) { _linnum

Re: Privatize a few members to allow messing with them #11353

2020-06-30 Thread matheus via Digitalmars-d-learn
On Tuesday, 30 June 2020 at 19:46:35 UTC, Stanislav Blinov wrote: On Tuesday, 30 June 2020 at 19:42:57 UTC, matheus wrote: in this case this was more a style thing than anything else right? Or is there something I'm not able to see? Before the change, linnum and charnum are public variables,

Re: What would be the advantage of using D to port some games?

2020-06-24 Thread matheus via Digitalmars-d-learn
On Wednesday, 24 June 2020 at 19:46:55 UTC, IGotD- wrote: A previous game implementation in D would be interesting and if you do it you are welcome to write your about experiences here. It's hard to say what features you would take advantage in D as I haven't seen the code in C/C++. However,

Re: What would be the advantage of using D to port some games?

2020-06-24 Thread matheus via Digitalmars-d-learn
On Wednesday, 24 June 2020 at 19:14:48 UTC, IGotD- wrote: On Wednesday, 24 June 2020 at 18:53:34 UTC, matheus wrote: What I'd like to know from the experts is: What would be the advantage of using D to port such games? Can you elaborate your question a little bit more. Why would you

What would be the advantage of using D to port some games?

2020-06-24 Thread matheus via Digitalmars-d-learn
Hi, I currently use D for small CLI/Batch apps, before that I used to program in C. Despite of using D I usually program like C but with the advantage of: GC, AA, CTFE and a few classes here and there. As we can see there are a lot of old classic games source available like: DOOM, Duke

Development: Work vs Lazy Programmers... How do you keep sanity?

2020-12-03 Thread matheus via Digitalmars-d-learn
Hi, I didn't know where to post this and I hope this is a good place. I'm a lurker in this community and I read a lot of discussions on this forum and I think there a lot of smart people around here. So I'd like to know if any of you work with Lazy or even Dumb programmers, and If yes how

Re: What is the difference between enum and shared immutable?

2020-10-28 Thread matheus via Digitalmars-d-learn
On Wednesday, 28 October 2020 at 22:07:06 UTC, H. S. Teoh wrote: ... (This is why it's a bad idea to use enum with an array literal, because every time it's referenced you get a new copy of the array.) ... Could you please give an example (Snippet) about this? Matheus.

Re: What is the difference between enum and shared immutable?

2020-10-28 Thread matheus via Digitalmars-d-learn
On Thursday, 29 October 2020 at 01:26:38 UTC, Mike Parker wrote: enum int[] arr = [1,2,3]; someFunc(arr); This is identical to someFunc([1,2,3]); Manifest constants have no address. They are effectively aliases for their values. Hi Mike, I really didn't know about this. Thanks for the

Re: Skipping or Stepping Through an Array?

2020-10-21 Thread matheus via Digitalmars-d-learn
On Wednesday, 21 October 2020 at 12:06:00 UTC, drug wrote: There are two other way: ... // using foreach foreach (i; 0..a.length) write(a[i], ", "); ... Yes you can use foreach, but in this case will not act the way the OP wanted. In his for loop example the "i" is incremented

Re: Without multiples inheritance, how is this done?

2021-05-08 Thread matheus via Digitalmars-d-learn
On Saturday, 8 May 2021 at 18:33:35 UTC, Jack wrote: ... but the class ExtendFoo and ExtendedBaa must inherit from Foo and Baa, respectively. But how can I make it inherit the routines from DRY class too without multiples inheritance? in C++ I'd just do: class ExtendedFoo : DRY, Base { /*

Re: Need for speed

2021-04-01 Thread matheus via Digitalmars-d-learn
On Thursday, 1 April 2021 at 19:00:08 UTC, Berni44 wrote: Try using ldc2 instead of dmd: ``` ldc2 -O3 -release -boundscheck=off -flto=full -defaultlib=phobos2-ldc-lto,druntime-ldc-lto speed.d ``` should produce much better results. Since this is a "Learn" part of the Foruam, be careful

Re: D's Continous Changing

2021-03-03 Thread matheus via Digitalmars-d-learn
On Thursday, 4 March 2021 at 05:44:53 UTC, harakim wrote: ... Yes it's a problem indeed. I had the same problem and that's worse when you don't upgrade very often. But let me tell something, where I work we have software in C#, do you think that upgrading was smoothly with all the tools

Re: Wouldn't the compiler be smart with this shadowing variable?

2021-12-11 Thread Matheus via Digitalmars-d-learn
On Friday, 10 December 2021 at 21:55:17 UTC, Siarhei Siamashka wrote: ... 2. reuse the existing "j" variable. Yes. But only one of them is a correct description of what actually happens when the compiler processes this code. So it's a good thing that the compiler is smart enough to

Re: Wouldn't the compiler be smart with this shadowing variable?

2021-12-11 Thread Matheus via Digitalmars-d-learn
On Saturday, 11 December 2021 at 01:02:36 UTC, frame wrote: ... You probably want this: ```d int j; for({int i=0; j=0;} i<10; ++i){} ``` Beware, this syntax comes directly from hell Well this works! :) I'm just a bit intrigued by your last sentence. Is there anything evil this may result

Wouldn't the compiler be smart with this shadowing variable?

2021-12-10 Thread Matheus via Digitalmars-d-learn
Hi, Wouldn't the compiler be smart with this shadowing variable, example: void main(){ int j; for(int i=0,j=0;i<10;++i){} return; } onlineapp.d(3): Error: variable `j` is shadowing variable `onlineapp.main.j` So in the "for loop" shouldn't "i" be declared and "j" just be

Re: How to loop through characters of a string in D language?

2021-12-10 Thread Matheus via Digitalmars-d-learn
On Wednesday, 8 December 2021 at 11:23:45 UTC, BoQsc wrote: ... The character I want to skip: `;` My C way of thinking while using D: import std; string stripsemicolons(string input){ char[] s = input.dup; int j=0; for(int i=0;i

Re: How to remove all characters from a string, except the integers?

2022-03-04 Thread matheus via Digitalmars-d-learn
On Thursday, 3 March 2022 at 23:46:49 UTC, H. S. Teoh wrote: ... This version doesn't even allocate extra storage for the filtered digits, since no storage is actually needed (each digit is spooled directly to the output). OK but there is another problem, I tested your version and mine and

Re: How to remove all characters from a string, except the integers?

2022-03-04 Thread matheus via Digitalmars-d-learn
On Friday, 4 March 2022 at 21:20:20 UTC, Stanislav Blinov wrote: On Friday, 4 March 2022 at 19:51:44 UTC, matheus wrote: OK but there is another problem, I tested your version and mine and there is a HUGE difference in speed: string s, str = "4A0B1de!2C9~6"; Unless I did something

Re: How to remove all characters from a string, except the integers?

2022-03-04 Thread matheus via Digitalmars-d-learn
On Friday, 4 March 2022 at 20:38:11 UTC, ag0aep6g wrote: ... The second version involves auto-decoding, which isn't actually needed. You can work around it with `str.byCodeUnit.filter!...`. On my machine, times become the same then. Typical output: str: 401296 Tim(ms): 138 Tim(us): 138505

Re: How to remove all characters from a string, except the integers?

2022-03-04 Thread matheus via Digitalmars-d-learn
On Friday, 4 March 2022 at 20:33:08 UTC, H. S. Teoh wrote: On Fri, Mar 04, 2022 at 07:51:44PM +, matheus via ... I don't pay any attention to DMD when I'm doing anything remotely performance-related. Its optimizer is known to be suboptimal. :-P Yes, in fact I usually do my

Re: https://run.dlang.io/ vs All dmd compilers (2.060 - latest)

2022-02-28 Thread Matheus via Digitalmars-d-learn
On Monday, 28 February 2022 at 19:00:58 UTC, Matheus wrote: On Monday, 28 February 2022 at 17:49:36 UTC, Mike Parker wrote: ... Please try again. Testing. Matheus. It worked thanks! Matheus.

Re: https://run.dlang.io/ vs All dmd compilers (2.060 - latest)

2022-02-28 Thread Matheus via Digitalmars-d-learn
On Monday, 28 February 2022 at 17:49:36 UTC, Mike Parker wrote: ... Please try again. Testing. Matheus.

Re: https://run.dlang.io/ vs All dmd compilers (2.060 - latest)

2022-02-28 Thread Matheus via Digitalmars-d-learn
On Monday, 28 February 2022 at 02:31:57 UTC, Mike Parker wrote: ... Hey Parker, I think my IP still under surveillance, everytime I post I get: "Your message has been saved, and will be posted after being approved by a moderator." With VPN I can post without problem. Could you please

Re: https://run.dlang.io/ vs All dmd compilers (2.060 - latest)

2022-02-28 Thread Matheus via Digitalmars-d-learn
On Monday, 28 February 2022 at 08:11:15 UTC, Basile B. wrote: This was [reported before]. Apparently this would be caused by a timeout. [reported before]: https://forum.dlang.org/post/skc2dd$1o52$1...@digitalmars.com Apparently yes, but I think the return error should be clear to avoid

Re: How to remove all characters from a string, except the integers?

2022-03-03 Thread matheus via Digitalmars-d-learn
On Thursday, 3 March 2022 at 12:14:13 UTC, BoQsc wrote: I've looked around and it seems using regex is the only closest solution. I'm a simple man who uses D with the old C mentality: import std.stdio; void main(){ string s, str = "4A0B1de!2C9~6"; foreach(i;str){ if(i < '0'

Re: How to remove all characters from a string, except the integers?

2022-03-03 Thread matheus via Digitalmars-d-learn
On Thursday, 3 March 2022 at 21:03:40 UTC, H. S. Teoh wrote: ... -- void main() { string s = "blahblah123blehbleh456bluhbluh"; auto result = s.filter!(ch => ch.isDigit).to!int; assert(result == 123456); } -- Problem solved. Why write 6 lines when 3 will do?

Re: how to handle very large array?

2022-02-14 Thread Matheus via Digitalmars-d-learn
On Monday, 14 February 2022 at 13:20:45 UTC, MichaelBi wrote: thanks, you are all correct. i just change the algorithm and use the AA, previously using the naïve method...:), now solved perfectly. thanks again. You could have used a normal Int Array for this task too, you're dealing with

https://run.dlang.io/ vs All dmd compilers (2.060 - latest)

2022-02-27 Thread Matheus via Digitalmars-d-learn
Hi, In "https://run.dlang.io; is the "All dmd compilers (2.060 - latest)" not working anymore? Because I always get: "Server error:" I've been trying for like 2 weeks and I always get this "Server Error: " message. I even tried with this basic example: void main(){ import

Re: Weird bug in std.logger? Possible memory corruption

2023-11-01 Thread matheus via Digitalmars-d-learn
On Wednesday, 1 November 2023 at 17:26:42 UTC, Christian Köstlin wrote: ... It's really weird: https://run.dlang.io/is/fIBR2n Interesting because I wrote a similar test as you did. And that increment (Or lack of) called my attention, If I can I'll try and take a look at that (std.logger)

Re: Weird bug in std.logger? Possible memory corruption

2023-11-01 Thread matheus via Digitalmars-d-learn
On Tuesday, 31 October 2023 at 21:19:34 UTC, Arafel wrote: ... Assigning the value to a variable works as expected: ```d import std.logger : info; void main() { auto s = foo(); info(s); } auto foo() { info("In foo"); return "Hello, world."; } ``` ... Unless you do:

Re: Want to try out string interpolation in D?

2023-10-23 Thread matheus via Digitalmars-d-learn
On Friday, 20 October 2023 at 16:41:40 UTC, Imperatorn wrote: Here's a script to get you started ... Now try string interpolation: ```d import std.stdio; void main() { string name = "Johan"; int age = 37; int iq = 8001; int coffees = 1000;

Re: Question on shapes

2022-05-16 Thread matheus via Digitalmars-d-learn
On Tuesday, 17 May 2022 at 04:37:58 UTC, Ali Çehreli wrote: ... 2) If you want to have a shape hierarchy, then you can start by defining its interface and implement that interface by concrete shape types. Drawing is ordinarily handled by member functions: ... Hi Ali, I'm not the author but

Re: Installing DMD on linux via snap

2022-05-18 Thread matheus via Digitalmars-d-learn
On Wednesday, 18 May 2022 at 15:27:57 UTC, rikki cattermole wrote: Snap package source: https://github.com/dlang-snaps/dmd.snap/ Hasn't been updated in 3 years. I see... and even that I found my answer elsewhere, this problem was already discussed there:

Installing DMD on linux via snap

2022-05-18 Thread matheus via Digitalmars-d-learn
Hi, Even my problem is already solved, I'm passing this information because I don't know if you are aware. Yesterday I needed to install DMD on a fresh installed version of Linux, so since I was using Xubuntu I decided to use snap. sudo snap install dmd Then a warning appeared saying that

Re: Compiler switch for integer comparison/promotion to catch a simple error

2022-05-30 Thread matheus via Digitalmars-d-learn
On Monday, 30 May 2022 at 13:15:12 UTC, bauss wrote: Good luck convincing Walter that this is a mistake :) I don't think this is a matter of convincing or changing the behavior, I think that a flag for this case (If not exist) should be added as a warning. A language where some people use

Re: Compiler switch for integer comparison/promotion to catch a simple error

2022-05-29 Thread matheus via Digitalmars-d-learn
On Sunday, 29 May 2022 at 01:35:23 UTC, frame wrote: Is there a compiler switch to catch this kind of error? ```d ulong v = 1; writeln(v > -1); ``` IMHO the compiler should bail a warning if it sees a logic comparison between signed and unsigned / different integer sizes. There is 50% chance

Re: Comparing Exceptions and Errors

2022-06-05 Thread matheus via Digitalmars-d-learn
On Sunday, 5 June 2022 at 15:07:13 UTC, kdevel wrote: ... I would refactor the code: I really liked this one. The way it solves and at same time restrict the "external access" with that struct of (a,b) makes the code easier to maintain too. Glad I keep lurking around this forum. Matheus.

Re: Why allow initializers of non-static members that allocate?

2022-06-10 Thread matheus via Digitalmars-d-learn
On Friday, 10 June 2022 at 07:49:43 UTC, Mike Parker wrote: ... And it *is* documented: Struct fields are by default initialized to whatever the Initializer for the field is, and if none is supplied, to the default initializer for the field's type. The default initializers are evaluated at

Re: Why allow initializers of non-static members that allocate?

2022-06-10 Thread matheus via Digitalmars-d-learn
On Saturday, 11 June 2022 at 01:52:58 UTC, Mike Parker wrote: ... That's because static arrays are allocated as part of the instance: ... Yes I understood the problem, but the naive me was thinking that in this example: struct S{ int[] arr = new int[](5); } For some reason this would

Re: What are (were) the most difficult parts of D?

2022-05-11 Thread matheus via Digitalmars-d-learn
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. To make it more meaningful, what is your experience with other languages? Ali I don't know if this will be helpful but here it goes, my user case

Re: Library for image editing and text insertion

2022-04-27 Thread matheus via Digitalmars-d-learn
On Wednesday, 27 April 2022 at 00:03:25 UTC, Adam Ruppe wrote: ... I know about Adam Ruppe's work, I already used his terminal.d, but I think that unfortunately most people don't and I think it should be announced more in these parts. For me arsd is for D what stb is for C. I think in the

Re: How do I correctly install packages for use with Visual Studio?

2022-10-16 Thread matheus via Digitalmars-d-learn
On Sunday, 16 October 2022 at 11:09:31 UTC, Decabytes wrote: I'm trying to set up Visual Studio 2022 with Visual D, and I'm running into issues trying to get my project to build correctly. It's a double whammy because I've never used Visual Studio before (Just an Emacs Guy), but I need to

Design question regarding saving changes in the original array and/or returning a new set

2022-10-23 Thread matheus via Digitalmars-d-learn
Hi, I have a design question and I'd like to hear some advice. Let's say that I want to create a method to sort an array: arr.sort(asc); I think usually this would usually return a new set of that array but now sorted. But If I want to do this in the original, I think I would do this:

Re: Design question regarding saving changes in the original array and/or returning a new set

2022-10-23 Thread matheus via Digitalmars-d-learn
Hi H. S. Teoh, I think you misunderstood my question, since English is not my first language maybe this was a problem from my part, but anyway, I'm not talking about "sort" from main library. This example was if I had designed my "own version". Matheus.

Re: Design question regarding saving changes in the original array and/or returning a new set

2022-10-23 Thread matheus via Digitalmars-d-learn
On Sunday, 23 October 2022 at 16:16:55 UTC, Sergey wrote: On Sunday, 23 October 2022 at 15:47:27 UTC, matheus wrote: Hi H. S. Teoh, I think you misunderstood my question, since English is not my first language maybe this was a problem from my part, but anyway, I'm not talking about "sort"

Re: Design question regarding saving changes in the original array and/or returning a new set

2022-10-23 Thread matheus via Digitalmars-d-learn
On Sunday, 23 October 2022 at 17:36:25 UTC, Paul Backus wrote: On Sunday, 23 October 2022 at 13:32:44 UTC, matheus wrote: ... You say your idea is "like passing some argument", so why not actually pass an argument? For example: ... Hi, thanks for the example, and yes I'd like to do that,

Re: Is "auto t=T();" not the same as "T t;"?

2022-10-25 Thread matheus via Digitalmars-d-learn
On Tuesday, 25 October 2022 at 20:12:25 UTC, Paul Backus wrote: On Tuesday, 25 October 2022 at 17:54:16 UTC, Salih Dincer wrote: On Tuesday, 25 October 2022 at 17:18:35 UTC, Paul Backus wrote: It's not a bug. They're pointing to the exact same instance of `A` in memory: I don't understand?

Doubt about char.min/max == typeid(char)

2022-10-06 Thread matheus via Digitalmars-d-learn
Hi, Could anyone please tell me why the properties of min/max of a char returns a "char type" and not a value as an int? I just got this while playing around: void main(){ import std.stdio; writeln(char.max); // "nothing" writeln(typeid(char.max)); // "char"

Re: Doubt about char.min/max == typeid(char)

2022-10-06 Thread matheus via Digitalmars-d-learn
On Friday, 7 October 2022 at 01:02:57 UTC, torhu wrote: On Friday, 7 October 2022 at 00:13:59 UTC, matheus wrote: Hi, Could anyone please tell me why the properties of min/max of a char returns a "char type" and not a value as an int? Well, why whould the highest and lowest values of a type

Re: dChar Error

2022-12-30 Thread matheus via Digitalmars-d-learn
On Friday, 30 December 2022 at 10:03:20 UTC, Salih Dincer wrote: On Friday, 30 December 2022 at 09:29:16 UTC, novice2 wrote: On Friday, 30 December 2022 at 04:43:48 UTC, Salih Dincer wrote:  ...  // example one:  char[] str1 = "cur:€_".dup;  ...  // example two: dchar[] str2 =

Re: dChar Error

2022-12-30 Thread matheus via Digitalmars-d-learn
On Friday, 30 December 2022 at 15:28:05 UTC, Salih Dincer wrote: ... In this case, std.conv.to can be used for mutable dchars, right? For example, is this solution the right approach? ```d auto toDchar(S)(inout S str) { import std.conv : to; return str.to!(dchar[]); } void main() { auto

Re: dChar Error

2022-12-30 Thread matheus via Digitalmars-d-learn
On Friday, 30 December 2022 at 22:02:41 UTC, Ali Çehreli wrote: On 12/30/22 13:54, matheus wrote: > But yes I think it will generate a copy (mutable) based on this test: In this case it does copy but in the case of dchar[] to dchar[], there will be no copy. Similarly, there is no copy from

Re: How Can i see associative array implement , is where has pseudocode write in Dlang?

2022-12-29 Thread matheus via Digitalmars-d-learn
On Thursday, 29 December 2022 at 11:24:38 UTC, lil wrote: How Can i see associative array implement , is where has pseudocode write in Dlang? Maybe this will help: https://github.com/dlang/phobos/blob/master/std/array.d Matheus.

Re: Address of a class object

2023-01-01 Thread matheus via Digitalmars-d-learn
On Sunday, 1 January 2023 at 09:01:24 UTC, Paul wrote: ... If the size of MyClass is 9 bytes why do MyClassO1 & O2 addresses only differ by 4 bytes? Because those addresses(4FFB20 4FFB24) are the addresses of the class **variables**, not the addresses of the **objects** themselves?

Re: Coding Challenges - Dlang or Generic

2023-01-09 Thread matheus via Digitalmars-d-learn
On Tuesday, 10 January 2023 at 01:22:33 UTC, H. S. Teoh wrote: ... Here's a challenge. Given an input year, for example, "2023", write a program that outputs (for the corresponding year): ... The layout isn't like yours, I wrote this using a D Online compiler and I'm very sleepy right

Re: Coding Challenges - Dlang or Generic

2023-01-10 Thread matheus via Digitalmars-d-learn
On Tuesday, 10 January 2023 at 07:38:31 UTC, Salih Dincer wrote: On Tuesday, 10 January 2023 at 03:18:54 UTC, matheus wrote: ...` You don't need validDate. Because there is daysInMonth: ... That's really better. thanks for the info. Matheus.

Re: Coding Challenges - Dlang or Generic

2023-01-10 Thread matheus via Digitalmars-d-learn
On Tuesday, 10 January 2023 at 05:21:15 UTC, H. S. Teoh wrote: Printing it in this format is trivial, and not very interesting. The interest in the challenge is to lay it out like I posted, side-by-side,... Like I said I did it over D online compiler which unfortunately I couldn't

Re: Coding Challenges - Dlang or Generic

2023-01-10 Thread matheus via Digitalmars-d-learn
On Tuesday, 10 January 2023 at 11:23:15 UTC, drug007 wrote: 10.01.2023 13:57, matheus пишет: ... [To clarify the situation](https://wiki.dlang.org/Component_programming_with_ranges) (H S Teoh is the author of this article) Hmm very interesting (I'm at work and I just gave it a glimpse). But

Re: Coding Challenges - Dlang or Generic

2023-01-10 Thread matheus via Digitalmars-d-learn
On Tuesday, 10 January 2023 at 22:10:57 UTC, Paul wrote: ... I think you must have done a blog post or tutorial or something, Teoh, because I've seen this before. Don't let this go to your head :), but I was blown away by the presentation and solution! BTW where is it posted? ITT:

Re: Coding Challenges - Dlang or Generic

2023-01-13 Thread matheus via Digitalmars-d-learn
On Thursday, 12 January 2023 at 19:06:49 UTC, Salih Dincer wrote: ... Now, I wrote a nested class using range and copying from Matheus' code. Of course not as comprehensive as [your dcal](https://github.com/quickfur/dcal/blob/master/dcal.d). I like this one and even thought of a new

  1   2   >