Re: Symmetry Autumn of Code
On Sunday, 5 August 2018 at 04:47:42 UTC, tanner00 wrote: Hi, I’m interested in working on this project and just wanted to touch base. Is there any word on who will be mentoring this project? I’m entering college this fall but I’ve been programming since a very young age and enjoy systems programming. The project is mostly about creating high-performance, resource-efficient 2D software rasterizer, something like this (http://nothings.org/gamedev/rasterize/) or (https://medium.com/@raphlinus/inside-the-fastest-font-renderer-in-the-world-75ae5270c445) If that isn't enough work for the event you can build on it by creating path objects with clipping and offsetting (http://angusj.com/delphi/clipper.php), rasterizing TrueType or OpenType fonts, creating drawing primitives, and even potentially creating 2D widgets (buttons, text labels, etc.) I think it's up to you how much of it you want to take on. I proposed the idea, but I don't think I'd be a very good mentor for the project because I've never created a 2D rasterizer myself. However, I'd be happy to help anyone working on the project in an unofficial capacity, and can probably articulate the intended use case for it. Mike
Re: Symmetry Autumn of Code
On Sunday, 5 August 2018 at 04:47:42 UTC, tanner00 wrote: [...] Hi, I’m interested in working on this project and just wanted to touch base. Is there any word on who will be mentoring this project? I’m entering college this fall but I’ve been programming since a very young age and enjoy systems programming. No one has volunteered to mentor this project yet, but if you'd like to write a proposal for it we can find a mentor if you are selected.
Re: Symmetry Autumn of Code
On Sunday, 22 July 2018 at 22:07:00 UTC, Mike Franklin wrote: On Sunday, 22 July 2018 at 16:33:10 UTC, Zheng (Vic) Luo wrote: [...] I'm JinShil, the one who proposed the idea. As far as I'm concerned, if you're doing the work, you can make it into whatever you'd like, but I would consider a basic 2D, anti-aliasing rasterizer to be a success. I have in mind something like http://www.antigrain.com or Skia. A bonus would be a font renderer that leverages the aforementioned rasterizer (See also https://medium.com/@raphlinus/inside-the-fastest-font-renderer-in-the-world-75ae5270c445). [...] Hi, I’m interested in working on this project and just wanted to touch base. Is there any word on who will be mentoring this project? I’m entering college this fall but I’ve been programming since a very young age and enjoy systems programming.
dxml 0.4.0 released
dxml 0.4.0 has now been released. It doesn't have a lot of changes, but dxml.parser.getAttrs should be particularly useful. It's like getopt but for attributes. Changelog: http://jmdavisprog.com/changelog/dxml/0.4.0.html Documentation: http://jmdavisprog.com/docs/dxml/0.4.0 Github: https://github.com/jmdavis/dxml/tree/v0.4.0 Dub: http://code.dlang.org/packages/dxml For those who haven't seen it, here's a link to my dconf talk on dxml: http://dconf.org/2018/talks/davis.html - Jonathan M Davis
Re: Meson support for Mir and Lubeck
On Saturday, 4 August 2018 at 18:23:15 UTC, 9il wrote: [...] The packages have been tested in a real world project on OSX with `$ meson configure -Ddefault_library=static/`. [...] Hmm, shouldn't this be `meson --default-library=static ..`?
Re: Meson support for Mir and Lubeck
On Saturday, 4 August 2018 at 18:23:15 UTC, 9il wrote: The Meson Build system [13] support was added to the following Dub packages: asdf [1] - JSON serialisation library cblas [2] - CBLAS header for Dlang lapack [3] - LAPACK header for Dlang lubeck [4] - High level linear algebra library mir-algorithm [5] - Core algorithm library and a home for Dlang multidimensional array package - ndslice mir-blas [6] - ndslice wrapper for CBLAS mir-lapack [7] - ndslice wrapper for LAPACK mir-linux-kernel [8] - Linux headers for Dlang mir-optim [9] - Optimisation framework mir-random [10] - Advanced random number engines and random distributions [...] Neat! This will allow us to package Mir for Debian. At the moment, there is nothing using Mir in Debian (obviously) and nothing using it is planned for packaging, but adding it might be useful still, since it can also - with some limits - be used from non-D code. I only worry about potential name clashes with Mir (the display server) in Ubuntu ^^
Re: Dub support was added to Meson
On Saturday, 4 August 2018 at 19:01:50 UTC, Russel Winder wrote: Great stuff. I have failed to date finishing Dub support in SCons, I shall have to put more effort in now. :-) The single biggest problem with D and Meson is that unit-threaded doesn't work with the way Meson works. Which is why I introduced the ProgramAllAtOnce builder into SCons. If there is a plan to try and make D/unit-threaded/Meson all work together, count me in as a tester at the very least. I'll keep an eye out for that. Maybe I'll try to implement something if my free time allows it :) PS.: Sorry for the grammar errors in the original post (mainly the "the Dub" :facepalm:), I rewrote some of the sentences and I didn't properly read the whole post again. Thanks, Filipe Laíns
Re: Dub support was added to Meson
Great stuff. I have failed to date finishing Dub support in SCons, I shall have to put more effort in now. :-) The single biggest problem with D and Meson is that unit-threaded doesn't work with the way Meson works. Which is why I introduced the ProgramAllAtOnce builder into SCons. If there is a plan to try and make D/unit-threaded/Meson all work together, count me in as a tester at the very least. -- Russel. === Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Roadm: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk signature.asc Description: This is a digitally signed message part
Meson support for Mir and Lubeck
The Meson Build system [13] support was added to the following Dub packages: asdf [1] - JSON serialisation library cblas [2] - CBLAS header for Dlang lapack [3] - LAPACK header for Dlang lubeck [4] - High level linear algebra library mir-algorithm [5] - Core algorithm library and a home for Dlang multidimensional array package - ndslice mir-blas [6] - ndslice wrapper for CBLAS mir-lapack [7] - ndslice wrapper for LAPACK mir-linux-kernel [8] - Linux headers for Dlang mir-optim [9] - Optimisation framework mir-random [10] - Advanced random number engines and random distributions The packages have been tested in a real world project on OSX with `$ meson configure -Ddefault_library=static/`. They can be included into a meson project using Meson Wrap files in the `subprojects` directory. See mir-optim project for an example. This work has been sponsored by Symmetry Investments [11] and Kaleidic Associates [12]. [1] https://github.com/libmir/asdf [2] https://github.com/DlangScience/cblas [3] https://github.com/libmir/lapack [4] https://github.com/kaleidicassociates/lubeck [5] https://github.com/libmir/mir-algorithm [6] https://github.com/libmir/mir-blas [7] https://github.com/libmir/mir-lapack [8] https://github.com/libmir/mir-linux-kernel [9] https://github.com/libmir/mir-optim [10] https://github.com/libmir/mir-random [11] https://github.com/kaleidicassociates [12] http://symmetryinvestments.com [13] http://mesonbuild.com/ Best regards, Ilya Yaroshenko
Dub support was added to Meson
Hello, Dub support was finally merged to the Meson's upstream. For the ones that don't know, Meson[1] is a fast build system that uses ninja[2] as a backend. Until now it was impossible to use dependencies via the Dub and many many packages only supported Dub. Now you can import dependencies that already exist in Dub's local repo. You still need to fetch and build them though. First, you need to fetch and build the dependency. dub fetch vibe-d dub build vibe-d Then you just need to specify Dub as the dependency method. vibed_dep = dependency('vibe-d', method: 'dub') Together with this, a 'dlang' module was also merged. You can use it to automatically generate a dub.json file. Here's an example. dlang = import('dlang') # Import the module # dlang.generate_dub_file(project-name, path/to/where/to/install/the/dub/file, # arguments... ) dlang.generate_dub_file(meson.project_name().to_lower(), meson.source_root(), authors: 'Foo', description: 'Bar', copyright: 'Copyright © 2018, Foo', license: 'MIT', sourceFiles: 'foobar.d', targetType: 'executable', dependencies: vibed_dep ) If you have any issue with this, contact me at la...@archlinux.org. Thank you, Filipe Laíns [1] https://github.com/mesonbuild/meson [2] https://github.com/ninja-build/ninja
Re: Dpp on run.dlang.io
On Saturday, 4 August 2018 at 01:27:49 UTC, Laeeth Isharc wrote: Thanks to Seb and Atila it is now very easy to show a D program just #includeing C headers. If just works. Modulo bugs. In time I am hopeful Atila will start to have more of C++ headers working too. https://run.dlang.io/is/JlH3Th It now also supports multiple files (and compiling C files) with the Har format [1]: https://run.dlang.io/is/WwpvhT This should hopefully make it even more useful. [1] https://github.com/marler8997/har
Re: Dpp on run.dlang.io
On Saturday, 4 August 2018 at 01:27:49 UTC, Laeeth Isharc wrote: Thanks to Seb and Atila it is now very easy to show a D program just #includeing C headers. If just works. Modulo bugs. In time I am hopeful Atila will start to have more of C++ headers working too. https://run.dlang.io/is/JlH3Th Very cool. It seems like it's on by default with no option to turn it off. Is that a good idea? Also, it appears to have broken for me in the last couple of minutes. It worked initially, then I clicked the link again and ran it, got: Error: Could not execute `dmd onlineapp.d -ofonlineapp`: onlineapp.d(49): Error: no identifier for declarator `typedef` onlineapp.d(49): Error: semicolon expected, not `int` onlineapp.d(53): Error: semicolon expected, not `char` onlineapp.d(54): Error: semicolon expected, not `short` onlineapp.d(54): Error: no identifier for declarator `short` onlineapp.d(55): Error: semicolon expected, not `int` onlineapp.d(56): Error: semicolon expected, not `long` onlineapp.d(56): Error: no identifier for declarator `long` onlineapp.d(59): Error: semicolon expected, not `char` onlineapp.d(60): Error: semicolon expected, not `char` onlineapp.d(61): Error: semicolon expected, not `short` onlineapp.d(61): Error: no identifier for declarator `short` onlineapp.d(62): Error: semicolon expected, not `short` onlineapp.d(62): Error: no identifier for declarator `short` onlineapp.d(63): Error: semicolon expected, not `int` onlineapp.d(64): Error: semicolon expected, not `int` onlineapp.d(66): Error: semicolon expected, not `long` onlineapp.d(66): Error: no identifier for declarator `long` onlineapp.d(67): Error: semicolon expected, not `long` onlineapp.d(67): Error: no identifier for declarator `long` Program exited with code 1
Re: Dpp on run.dlang.io
On Saturday, 4 August 2018 at 02:39:23 UTC, Mike Franklin wrote: Cool! Can we now deprecate and eventually jettison C/C++ bindings from druntime, please? Why? As I understand it, they do not increase your executable size unless used. Besides, the bindings include the @trusted and scope attributes C++ headers don't, and are quicker to compile.