Re: Test

2014-07-04 Thread Iain Buclaw via Digitalmars-d-announce
On 4 Jul 2014 02:10, Andrew Edwards via Digitalmars-d-announce 
digitalmars-d-announce@puremagic.com wrote:

 Encountering issues posting the 2.066.0-b1

Ssh, don't tell anyone about it. ;)


Re: Decimal Numbers

2014-07-04 Thread Iain Buclaw via Digitalmars-d-announce
On 3 Jul 2014 23:00, Paul D Anderson via Digitalmars-d-announce 
digitalmars-d-announce@puremagic.com wrote:

 A candidate implementation of decimal numbers (arbitrary-precision
 floating-point numbers) is available for review at
 https://github.com/andersonpd/eris/tree/master/eris/decimal. This is a
 substantial rework of an earlier implementation which was located at
 https://github.com/andersonpd/decimal.

 This is a D language implementation of the General Decimal Arithmetic
 Specification (http://www.speleotrove.com/decimal/decarith.pdf), which is
 compliant with IEEE-754 and other standards as noted in the specification.

 The current implementation is not complete; there are a lot of TODOs and
NOTEs
 scattered throughout the code, but all the arithmetic and miscellaneous
 operations listed in the spec are working, along with decimal versions of
most
 of the functions and constants in std.math. I think it is far enough
along for
 effective review.

 Briefly, this software adds the capability of properly rounded
 arbitrary-precision floating-point arithmetic to the D language. All
arithmetic
 operations are governed by a context, which specifies the precision
(number of
 decimal digits) and rounding mode for the operations. This same
functionality
 exists in most modern computer languages (for example,
java.math.BigDecimal).
 Unlike Java, however, which uses function syntax for arithmetic ops
 (add(BigDecimal, BigDecimal), etc.), in D the same arithmetic operators
that
 work for floats or doubles work for decimal numbers. (Of course!)

 In this implementation decimal numbers having different contexts are
different
 types. The types are specified using template parameters for the
precision,
 maximum exponent value and rounding mode. This means that
 Decimal!(9,99,Rounding.HALF_EVEN) is a different type than
 Decimal!(19,199,Rounding.HALF_DOWN). They are largely interoperable,
however.
 Different decimal types can be cast to and from each
 other.

 There are three standard decimal structs which fit into 32-, 64- and
128-bits of
 memory, with 7, 16 and 34 digit precision, respectively. These are used
for
 compact storage; they are converted to their corresponding decimal
numbers for
 calculation. They bear the same relation to decimal numbers as Walter's
 half-float type does to floats.
 (http://www.drdobbs.com/cpp/implementing-half-floats-in-d/240146674).
 Implementation of these still needs a little work, and will be added to
github
 very shortly.

 Major TODO items:

 1) The current underlying integer type uses my own big integer struct
 (eris.integer.extended) rather than std.bigint. This was mainly due to
problems
 with constness and CTFE of BigInts. These problems have since been
resolved, but
 I didn't want to switch over to BigInts until everything was working for
fear of
 introducing new bugs.

 2) Integration of Decimal32, Decimal64 and Decimal128 structs are not
complete.
 (See above.)

 3) Conversion to and from floats, doubles and reals is currently working
but it
 is slow. (Conversion is through strings: double to string to decimal and
vice
 versa.)

 4) Still incomplete implementations of some functions in decimal.math:
expm1,
 acosh, atanh, possibly others.

 5) More unit tests (always!).

Nice job.

I would also add:

6) Rename the file decimal.d to package.d, and module eris.decimal.decimal
to eris.decimal


Re: D Hackday Round 2

2014-07-04 Thread Robert Schadek via Digitalmars-d-announce
On 07/04/2014 01:17 AM, Jonathan Crapuchettes via Digitalmars-d-announce
wrote:
 After the success of the last D hackday, EMSI is going to attempt to have 
 a D hackday once a month as close as we can to the first Friday of the 
 month. Our next round will be Friday July 11.

 Last time 24 issues were marked as resolved by the community (including 
 EMSI).

 Please join us in squashing bugs on #d.

 ---
 Jonathan Crapuchettes, Justin Whear, Brian Schott
I will have my PR rebased to master and I'll start sniffing through
bugzilla this weekend for low hanging and obsolete fruits. 


Re: D Hackday Round 2

2014-07-04 Thread Dicebot via Digitalmars-d-announce
On Thursday, 3 July 2014 at 23:17:33 UTC, Jonathan Crapuchettes 
wrote:
After the success of the last D hackday, EMSI is going to 
attempt to have
a D hackday once a month as close as we can to the first Friday 
of the

month. Our next round will be Friday July 11.

Last time 24 issues were marked as resolved by the community 
(including

EMSI).

Please join us in squashing bugs on #d.

---
Jonathan Crapuchettes, Justin Whear, Brian Schott


This is just one plain awesome initiative by EMSI. I wish more 
commercial D users did something like this!


On that topic, may I also suggest publishing short 
summaries/reports once hackday is finish?


Re: D Hackday Round 2

2014-07-04 Thread Iain Buclaw via Digitalmars-d-announce
On 4 Jul 2014 00:20, Jonathan Crapuchettes via Digitalmars-d-announce 
digitalmars-d-announce@puremagic.com wrote:

 After the success of the last D hackday, EMSI is going to attempt to have
 a D hackday once a month as close as we can to the first Friday of the
 month. Our next round will be Friday July 11.

 Last time 24 issues were marked as resolved by the community (including
 EMSI).

 Please join us in squashing bugs on #d.


Good stuff!

Might give support / join in if I'm around.

Regards
Iain


Re: Decimal Numbers

2014-07-04 Thread Paul D Anderson via Digitalmars-d-announce
On Friday, 4 July 2014 at 06:43:15 UTC, Iain Buclaw via 
Digitalmars-d-announce wrote:


6) Rename the file decimal.d to package.d, and module 
eris.decimal.decimal

to eris.decimal


Thanks, will do.

Paul


Re: Decimal Numbers

2014-07-04 Thread Remo via Digitalmars-d-announce

On Thursday, 3 July 2014 at 21:55:42 UTC, Paul D Anderson wrote:
A candidate implementation of decimal numbers 
(arbitrary-precision

floating-point numbers) is available for review at
https://github.com/andersonpd/eris/tree/master/eris/decimal. 
This is a
substantial rework of an earlier implementation which was 
located at

https://github.com/andersonpd/decimal.

This is a D language implementation of the General Decimal 
Arithmetic
Specification 
(http://www.speleotrove.com/decimal/decarith.pdf), which is
compliant with IEEE-754 and other standards as noted in the 
specification.


The current implementation is not complete; there are a lot of 
TODOs and NOTEs
scattered throughout the code, but all the arithmetic and 
miscellaneous
operations listed in the spec are working, along with decimal 
versions of most
of the functions and constants in std.math. I think it is far 
enough along for

effective review.

Briefly, this software adds the capability of properly rounded
arbitrary-precision floating-point arithmetic to the D 
language. All arithmetic
operations are governed by a context, which specifies the 
precision (number of
decimal digits) and rounding mode for the operations. This same 
functionality
exists in most modern computer languages (for example, 
java.math.BigDecimal).
Unlike Java, however, which uses function syntax for arithmetic 
ops
(add(BigDecimal, BigDecimal), etc.), in D the same arithmetic 
operators that
work for floats or doubles work for decimal numbers. (Of 
course!)


In this implementation decimal numbers having different 
contexts are different
types. The types are specified using template parameters for 
the precision,

maximum exponent value and rounding mode. This means that
Decimal!(9,99,Rounding.HALF_EVEN) is a different type than
Decimal!(19,199,Rounding.HALF_DOWN). They are largely 
interoperable, however.

Different decimal types can be cast to and from each
other.

There are three standard decimal structs which fit into 32-, 
64- and 128-bits of
memory, with 7, 16 and 34 digit precision, respectively. These 
are used for
compact storage; they are converted to their corresponding 
decimal numbers for
calculation. They bear the same relation to decimal numbers as 
Walter's

half-float type does to floats.
(http://www.drdobbs.com/cpp/implementing-half-floats-in-d/240146674).
Implementation of these still needs a little work, and will be 
added to github

very shortly.

Major TODO items:

1) The current underlying integer type uses my own big integer 
struct
(eris.integer.extended) rather than std.bigint. This was mainly 
due to problems
with constness and CTFE of BigInts. These problems have since 
been resolved, but
I didn't want to switch over to BigInts until everything was 
working for fear of

introducing new bugs.

2) Integration of Decimal32, Decimal64 and Decimal128 structs 
are not complete.

(See above.)

3) Conversion to and from floats, doubles and reals is 
currently working but it
is slow. (Conversion is through strings: double to string to 
decimal and vice

versa.)

4) Still incomplete implementations of some functions in 
decimal.math: expm1,

acosh, atanh, possibly others.

5) More unit tests (always!).



This is looking very promising!


Re: DMD 2.066.0-b1

2014-07-04 Thread klasbo via Digitalmars-d-announce

On Friday, 4 July 2014 at 01:13:24 UTC, Andrew Edwards wrote:

Your assistance in identifying and
reporting bugs are greatly appreciated.


Hi, Private here (ie neither Sergeant or Lieutenant, I 
enlisted to post this).

Where do I pose the question Is X a bug/regression?

And on the front page there's the big red text that reads 
Version 2.066 Goes Beta June 30. Should this be updated to say 
Version 2.066 Beta is live, with a link to somewhere (this 
thread?)?




Re: dimgui - A port of imgui, the immediate-mode OpenGL GUI library

2014-07-04 Thread Kiith-Sa via Digitalmars-d-announce
On Thursday, 22 May 2014 at 15:20:42 UTC, Andrej Mitrovic via 
Digitalmars-d-announce wrote:
If you need a very minimal but usable GUI library for your 
OpenGL
applications, then an immediate-mode GUI such as IMGUI could be 
just

the trick. IMGUI has been ported to D and can be found at the
following links:

https://github.com/d-gamedev-team/dimgui
http://code.dlang.org/packages/dimgui

dimgui is zlib-licensed.


I'm starting work on a (very) small tool using dimgui.

When building an example (demo), I had to explicitly tell DUB 
to link the GLFW library - shouldn't this already be handled by 
the GLFW bindings?

(Also, on Linux you have to tell it to link dl...)

I.e. I added the following to dub.json of the example:
libs: [
dl,
glfw
],

I assume it works on Windows without this? (if so, how to change 
it so it works on both?)


I'm on Linux (Mint 17 x64, similar to Ubuntu 14.04)
- btw, Mint17/Ubuntu14.04 only has GLFW2 in the repo, which 
confused me when I had GLFW but still saw unresolved symbols - 
but the next release will probably have GLFW3.



Also: it would be nice to have example/s that is completely 
standalone, can be copied by itself and works (currently examples 
depend on the DroidSans.ttf file higher up the directory tree) - 
maybe even in a separate repo.


Re: DMD 2.066.0-b1

2014-07-04 Thread Andrew Edwards via Digitalmars-d-announce

On 7/5/14, 2:42 AM, klasbo wrote:

On Friday, 4 July 2014 at 01:13:24 UTC, Andrew Edwards wrote:

Your assistance in identifying and
reporting bugs are greatly appreciated.


Hi, Private here (ie neither Sergeant or Lieutenant, I enlisted to
post this).
Where do I pose the question Is X a bug/regression?


Such questions are appropriate on the D.learn forum. Once validated, 
open an issue at issues.dlang.org.



And on the front page there's the big red text that reads Version 2.066
Goes Beta June 30. Should this be updated to say Version 2.066 Beta is
live, with a link to somewhere (this thread?)?



Done, pending update.