Re: decimal type in d

2022-05-17 Thread vit via Digitalmars-d-learn

On Monday, 16 May 2022 at 09:59:41 UTC, bauss wrote:

On Monday, 16 May 2022 at 09:46:57 UTC, IGotD- wrote:

On Sunday, 15 May 2022 at 13:26:30 UTC, vit wrote:

[...]


This also something I wondered, it should be standard in the D 
library. Implementing it can be done straight forward with 
existing D language primitives, essentially a struct.


For those who don't know, decimal in C# is like a floating 
point value but the exponent is a power of 10 (internally 
total 16 bytes). This means that for "simple" mathematics 
rational decimal values remains rational decimals values and 
not some rounded value that would happen if you would use 
normal floating point values. The decimal type is essential 
for financial calculations.


I think D can more or less copy the C# solution.


Here's the implementation if anyone needs it:

https://referencesource.microsoft.com/#mscorlib/system/decimal.cs,1b2858baf311cbf9

Should be fairly straightforward to implement.


Thanks, but it is not full implementation of decimal, arithmetic 
operator are missing.




On Monday, 16 May 2022 at 16:41:33 UTC, Steven Schveighoffer 
wrote:

On 5/15/22 9:26 AM, vit wrote:
Hello, I want read decimal type from sql db, do some 
arithmetic operations inside D program and write it back to 
DB. Result need to be close to result as if this operations 
was performed in sql DB. Something like C# decimal.
Exists this kind of library ind D? (ideally `pure @safe @nogc 
nothrow`).


https://code.dlang.org/search?q=decimal

-Steve


Thanks, most of the packages are incomplete or too old (doesn't 
compile), but this one https://code.dlang.org/packages/decimal 
can by modified to work for my use.





Re: decimal type in d

2022-05-16 Thread Steven Schveighoffer via Digitalmars-d-learn

On 5/15/22 9:26 AM, vit wrote:
Hello, I want read decimal type from sql db, do some arithmetic 
operations inside D program and write it back to DB. Result need to be 
close to result as if this operations was performed in sql DB. Something 
like C# decimal.

Exists this kind of library ind D? (ideally `pure @safe @nogc nothrow`).


https://code.dlang.org/search?q=decimal

-Steve


Re: decimal type in d

2022-05-16 Thread bauss via Digitalmars-d-learn

On Monday, 16 May 2022 at 09:46:57 UTC, IGotD- wrote:

On Sunday, 15 May 2022 at 13:26:30 UTC, vit wrote:
Hello, I want read decimal type from sql db, do some 
arithmetic operations inside D program and write it back to 
DB. Result need to be close to result as if this operations 
was performed in sql DB. Something like C# decimal.
Exists this kind of library ind D? (ideally `pure @safe @nogc 
nothrow`).


This also something I wondered, it should be standard in the D 
library. Implementing it can be done straight forward with 
existing D language primitives, essentially a struct.


For those who don't know, decimal in C# is like a floating 
point value but the exponent is a power of 10 (internally total 
16 bytes). This means that for "simple" mathematics rational 
decimal values remains rational decimals values and not some 
rounded value that would happen if you would use normal 
floating point values. The decimal type is essential for 
financial calculations.


I think D can more or less copy the C# solution.


Here's the implementation if anyone needs it:

https://referencesource.microsoft.com/#mscorlib/system/decimal.cs,1b2858baf311cbf9

Should be fairly straightforward to implement.


Re: decimal type in d

2022-05-16 Thread IGotD- via Digitalmars-d-learn

On Sunday, 15 May 2022 at 13:26:30 UTC, vit wrote:
Hello, I want read decimal type from sql db, do some arithmetic 
operations inside D program and write it back to DB. Result 
need to be close to result as if this operations was performed 
in sql DB. Something like C# decimal.
Exists this kind of library ind D? (ideally `pure @safe @nogc 
nothrow`).


This also something I wondered, it should be standard in the D 
library. Implementing it can be done straight forward with 
existing D language primitives, essentially a struct.


For those who don't know, decimal in C# is like a floating point 
value but the exponent is a power of 10 (internally total 16 
bytes). This means that for "simple" mathematics rational decimal 
values remains rational decimals values and not some rounded 
value that would happen if you would use normal floating point 
values. The decimal type is essential for financial calculations.


I think D can more or less copy the C# solution.




decimal type in d

2022-05-15 Thread vit via Digitalmars-d-learn
Hello, I want read decimal type from sql db, do some arithmetic 
operations inside D program and write it back to DB. Result need 
to be close to result as if this operations was performed in sql 
DB. Something like C# decimal.
Exists this kind of library ind D? (ideally `pure @safe @nogc 
nothrow`).