Re: Test
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
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
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
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
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
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
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
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
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
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.