Re: Evolving the D Language
On Friday, 7 July 2023 at 22:41:38 UTC, Walter Bright wrote: The problem has a lot to do with people wanting to use 3rd party libraries, and it being impractical to upgrade those libraries when the maintainer of those libraries is no longer active. If a user's project depends on several such libraries, it places an undue burden on the user. The third party import is the biggest pain, and compiler versions/deprecations add to it. As another mentioned it is sort of a dub problem. As a user of the third party library I want my code strict, but I just want the third party to build as it was written. This has two main implication, does the compiler I'm using even know about the features the library uses, and if the library author instructed the compiler to be strict (I don't care) If the library is built with a newer compiler version their isn't much to be done but upgrade the compiler. This has the implications where I would now want to compile my code without strictness (hopefully for a short period). If the compiler has removed features then the library can't be built. This is were keeping functionality is beneficial. If the compiler depricates functionality then I don't want to hear about. Though it would be good to know "library x is using deprecated functionality". This is where the compiler and dub need to work together. Dub can build my code with strict error and the the compiler provides a flag dub uses to build the third party libraries.
Re: [i18n] Gettext 1.0.1 released
Nice. I've really enjoyed gettext in C# in my verification of an application without gettext usage.
Re: Release D 2.096.0
On Saturday, 13 March 2021 at 21:33:20 UTC, Meta wrote: // these 2 are equivalent int foo() { return 1; } int foo() => 1; The syntax allows the form => expr to replace the function body { return expr; } Amazing! I had no idea this got in. I love the syntax. Yeah, c# added this syntax awhile back and is nice to use at times, usually because I stumble on the property syntax. https://www.google.com/amp/s/csharp.christiannagel.com/2017/01/25/expressionbodiedmembers/amp/
Re: Article: the feature that makes D my favorite programming language
On Saturday, 25 July 2020 at 14:47:01 UTC, aberba wrote: On Saturday, 25 July 2020 at 13:28:34 UTC, Adam D. Ruppe wrote: On Saturday, 25 July 2020 at 11:12:16 UTC, aberba wrote: Oop! Chaining the writeln too could have increased the wow factor. I didn't see that. oh I hate it when people do that though, it just looks off to me at that point. Ha ha. If you're writing idiomatic D code, why not not all in on it? It bugs me too, though I have done it. I think the right answer of why it is odd is because writeln is void. As soon as it is placed on the end the chain is broken and you can't expand on it.
Re: Talk by Herb Sutter: Bridge to NewThingia
On Saturday, 27 June 2020 at 15:48:33 UTC, Andrei Alexandrescu wrote: How to answer "why will yours succeed, when X, Y, and Z have failed?" https://www.youtube.com/watch?v=wIHfaH9Kffs Very insightful talk. He touches on, why we should have @safe by default and the importance of the C++ call support. The challenges in this community is that everyone has their own market they would like to see D displace. C, C++, web, .Net, gnome gui...
Re: Dev.to article puller: devtoarticlator 0.1.0
On Monday, 10 February 2020 at 02:30:35 UTC, Steven Schveighoffer wrote: This makes me sad: https://gitlab.com/jessephillips/devarticlator/-/blob/6e791751c17490ebf4930af428bdd2fafa7e9a34/source/util/file.d#L16 I also feel bad because I feel like I'm skipping out on all of the benefit of iopipe.
Dev.to article puller: devtoarticlator 0.1.0
I would like to announce a project started with the intention of moving my articles into git. I've been writing[1] about the progress and today I got through pulling all of user articles. devtoarticlator 0.1.0[2] will write out you dev.to articles and their Metadata into a folder. The meta is in a separate file allowing for markdown views to format the articles without the Metadata. I will be continuing to make progress to publishing and updating articles. 1. https://dev.to/jessekphillips/hobby-project-dev-to-api-59ln 2. https://code.dlang.org/packages/devarticlator
Mini Tutorials on D and basic tools
I came across this dev related article/blog platform through Google's news feed. Recently I started building out little how to articles for D based on my recent Python searches. https://dev.to/t/dlang I have a number in my backlog to be released. Currently most everything in that tag I authored. Nothing too special, but enjoy as you desire.
Re: optional 1.0.0 beta with "or/frontOr/Throw" range utilities
On Tuesday, 30 July 2019 at 14:34:19 UTC, aliak wrote: On Tuesday, 30 July 2019 at 12:58:08 UTC, Jesse Phillips wrote: On Monday, 29 July 2019 at 22:17:20 UTC, aliak wrote: * NotNull has been removed Why was it removed. It seems like this would be nice to have for class and pointers. I personally didn't find use for it, too much friction to use. I have not gotten the impression that it's useful form others either? If people were using it I'll gladly put it back in as a subpackage or something (or just make another package). Don't worry at this point. I still need to try out this library with my own code, appears much nicer than nullible.
Re: optional 1.0.0 beta with "or/frontOr/Throw" range utilities
On Monday, 29 July 2019 at 22:17:20 UTC, aliak wrote: * NotNull has been removed Why was it removed. It seems like this would be nice to have for class and pointers.
Re: argument parsing into structure
On Wednesday, 26 June 2019 at 14:58:08 UTC, Basile B. wrote: On Wednesday, 26 June 2019 at 09:40:06 UTC, JN wrote: On Wednesday, 26 June 2019 at 05:38:32 UTC, Jesse Phillips wrote: Sometimes a good API isn't the right answer. I like getopt as it is but I wanted a little different control. So I wrote up an article on my work around. https://dev.to/jessekphillips/argument-parsing-into-structure-4p4n I have another technique for sub commands I should write about too. http://code.dlang.org/packages/argsd I think we are several having written alternative getopt() systems. I made one too last year, it allows to write tools very nicely. Recent example for a device flasher: The thing is, I didn't write an alternative, mine utilizes getopt which was the point of the article. I could build out new functionality onto a standard API which didn't support it. It isn't as robust as it could be.
Re: argument parsing into structure
On Wednesday, 26 June 2019 at 09:40:06 UTC, JN wrote: On Wednesday, 26 June 2019 at 05:38:32 UTC, Jesse Phillips wrote: Sometimes a good API isn't the right answer. I like getopt as it is but I wanted a little different control. So I wrote up an article on my work around. https://dev.to/jessekphillips/argument-parsing-into-structure-4p4n I have another technique for sub commands I should write about too. http://code.dlang.org/packages/argsd http://code.dlang.org/packages/darg
argument parsing into structure
Sometimes a good API isn't the right answer. I like getopt as it is but I wanted a little different control. So I wrote up an article on my work around. https://dev.to/jessekphillips/argument-parsing-into-structure-4p4n I have another technique for sub commands I should write about too.
Re: Phobos now compiling with -dip1000
On Saturday, 23 March 2019 at 03:06:37 UTC, Walter Bright wrote: Many thanks to Sebastian Wilzbach, Nicholas Wilson, Mike Franklin, and others! It's been a long and often frustrating endeavor, but we made it and I'm very pleased with the results. Status: Superseded https://github.com/dlang/DIPs/blob/master/DIPs/other/DIP1000.md Maybe this needs updated?
Re: Beta 2.082.0
On Wednesday, 17 October 2018 at 16:14:14 UTC, Neia Neutuladh wrote: On Wednesday, 17 October 2018 at 14:02:20 UTC, Jesse Phillips wrote: Wait, why does each get a special bailout? Doesn't until full that role? `until` is lazy. We could have `doUntil` instead, which would be eager and would return a boolean indicating whether to continue. We could all write `someRange.until!condition.each!func`. That's going to be clearer sometimes and less clear other times. So now we have options. auto arr = [10, 20, 30]; arr.until!(x=>n==20).each!(n => arr ~= n); Ok, I can see why that doesn't work.
Re: Beta 2.082.0
On Wednesday, 17 October 2018 at 12:14:55 UTC, Martin Nowak wrote: Glad to announce the first beta for the 2.083.0 release, ♥ to the 48 contributors for this release. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.083.0.html Wait, why does each get a special bailout? Doesn't until full that role?
Re: Spasm - webassembly libary for single page applications
On Friday, 12 October 2018 at 19:43:25 UTC, Sebastiaan Koppe wrote: I like to announce Spasm https://github.com/skoppe/spasm It is a webassembly library to develop single page applications and builds on my previous work This is really interesting. I don't do web development myself and haven't been doing hobby programming, but I like the idea of of webasm. It would be cool if D provided the easiest way to develop webasm first to see if it could claim that market.
Re: iopipe v0.1.0 - now with Windows support!
I plan to eventually finish the JSON parser for a releasable state, and eventually tackle XML and a few other things. -Steve You should definitely tackle xml by branching dxml. I'm really liking the api.
Re: dxml 0.3.0 released
On Friday, 20 April 2018 at 00:46:38 UTC, Jonathan M Davis wrote: Yes. I would have thought that that was clear. It throws if any of the characters or sequence of characters in the argument aren't legal in the text portion of an XML document. Those characters that can be legally present in encoded form but not in their literal form can be encoded first with encodeText. I'll try to make the documentation clearer. - Jonathan M Davis I think I just feel it is a little hidden under the exception list. A note in the general description about utilizing encodeText on text which needs encoding would be good.
Re: dxml 0.3.0 released
On Thursday, 19 April 2018 at 14:40:58 UTC, Jonathan M Davis wrote: I won't repeat everything that's in the changelog, but the biggest changes are that writer support has now been added, and it's now possible to configure how the parser handles non-standard entity references. In reference to http://jmdavisprog.com/docs/dxml/0.3.0/dxml_writer.html#.XMLWriter.writeText "XMLWritingException if the given text is not legal in the text portion of an XML document." Is this to say that the text must be encoded (dxml.util.encodeText) prior to calling this or it will throw if the text contains "<"? This should be clearer in the documentation.
Re: Documentation for any* dub package, any version
On Monday, 26 February 2018 at 14:59:07 UTC, Adam D. Ruppe wrote: I'd like to get the code.dlang.org folks to add the correct link to the main package site so people can easily discover this just put nofollow on it plz so google doesn't trigger generation of pages people don't actually need (the lazy generation + caching allows me to host this on a cheap VPS) It also would be good for you to like to the Dub page and Git Repo. Couldn't you provide a robots.txt file which Google should honor so that 'nofollow' isn't required?
Re: dxml 0.2.0 released
On Monday, 12 February 2018 at 05:36:51 UTC, Jonathan M Davis wrote: dxml 0.2.0 has now been released. Documentation: http://jmdavisprog.com/docs/dxml/0.2.0/ Github: https://github.com/jmdavis/dxml/tree/v0.2.0 Dub: http://code.dlang.org/packages/dxml - Jonathan M Davis This is absolutely awesome. It is a little low level (compared to SAX) so there is more to deal with, but having this provide a range (and flat) makes it so much clearer the ordering of elements. If I need to handle nesting then I can build that out, but if I don't I can just fly by the seat of my pants and grab the elements I want. This will definitely be my goto for XML parsing.
Re: Official Dub package for DWT
On Sunday, 11 February 2018 at 11:04:52 UTC, JN wrote: [1] https://tldrlegal.com/license/eclipse-public-license-1.0-%28epl-1.0%29 This doesn't really explain much. It's confusing. It's similar to GPL. So if I release an app using DWT, I need to release the sourcecode for my app? Or do I only need to release the code for DWT (if I did any changes to the sourcecode). Not a lawyer, but it doesn't appear to really target libraries and is more directed to a complete application. The way it is written suggest that DWT would be a derived work and any changes to it will also be derived and need to forward the EPL license. However it makes no specific statements about using libraries as part of your code, which would suggest that the code outside the EPL library is not considered "the EPL Program" and thus not a derived work.
Re: Official Dub package for DWT
On Wednesday, 7 February 2018 at 21:33:22 UTC, Jacob Carlborg wrote: This has been long overdue but I would like to announce that I've just released an official Dub package for the DWT library [1]. For a usage example, please see the GitHub page [2]. This is awesome. I don't use GUI too much with my D programs, but I've had one lingering with DFL for a while now. It took a little bit to get familiar with this framework again, but I think the conversion has been totally worth it (even seems to have made my application faster). I'll point out that this is definitely a lower level library than I usually see/use. I also hit only one documentation issue due to this being 3.4 and not 3.7 or later, but that didn't look like it would be a normal hiccup. Anyway, thank you for getting this to work with DUB as that simplifies my build.
Re: dxml 0.1.0 released
On Friday, 9 February 2018 at 21:15:33 UTC, Jonathan M Davis wrote: Hopefully, the documentation is clear enough, but obviously, I'm not the best judge of that. So, have at it. Documentation: http://jmdavisprog.com/docs/dxml/0.1.0/ Github: https://github.com/jmdavis/dxml Dub: http://code.dlang.org/packages/dxml - Jonathan M Davis This looks so nice. I can understand the concerns of the DTD, and it doesn't look like you needed to do anything special for namespaces with this parser.
Re: dmd Backend converted to Boost License
On Friday, 7 April 2017 at 19:37:14 UTC, Jonathan M Davis wrote: On Friday, April 07, 2017 08:14:40 Walter Bright via Digitalmars-d-announce wrote: https://github.com/dlang/dmd/pull/6680 Yes, this is for real! Symantec has given their permission to relicense it. Thank you, Symantec! Well, this is certainly great news. Does this make dmd the only compiler that's fully boost-licensed? Usually, licenses like the GPL or BSD license get used. I don't get the impression that the boost license is all that common - at least not for actual programs as opposed to libraries. From what I've seen, the fact that we use it so heavily in the D community is abnormal, though it's as hassle-free as you can get with an open source license, which is great. - Jonathan M Davis I was thinking the same thing. Its probably the most permissive compiler out there now. MIT almost equal though.
Re: Codebuilder with line info insertion
On Sunday, 24 July 2016 at 19:36:50 UTC, Dicebot wrote: How much of compile-time overhead does it add compared to naive string concatenation? I would expect fairly large, It only increases the amount of memory used and concatenation operations. It stores each requested string into array of structures, that later are used for concatenating together. I don't have any performance numbers, nor do I have a large amount of code generation to try and tax compile-time work. I ran ProtocolBuffer with -profile and it should the call to finalize(), ~9000 microseconds per call (runtime). I'd be happy to accept performance improvements (including breaking changes), but if you've already got long compile times due to CTFE I can't recommend using it.
Re: Codebuilder with line info insertion
On Tuesday, 10 May 2016 at 15:42:00 UTC, Jesse Phillips wrote: 1. http://code.dlang.org/packages/protocolbuffer 2. http://code.dlang.org/packages/codebuilder 3. https://github.com/JesseKPhillips/ProtocolBuffer/blob/master/conversion/dlang.d I wish to announce version 1.0.0 of CodeBuilder. As the code originally came from ProtocolBuffer I've now eat some dog food by utilizing the library within ProtocolBuffer. I've also put in unittests and a readme. The Dub package provides two configurations, one for mixins and one as a file writer. When using the file writer it is of no interest to modify the line numbers as you'll actually have a D source file to look at. http://code.dlang.org/packages/codebuilder Change Highlights * Reduced complexity. Originally I was trying to store generated code in to many different places, There was the current state, the stack that held items which would later be popped into the current state, a build so code could be structured before putting it on the stack, and the current state could be returned by asking for it's memory. All that goes away and instead another CodeBuilder can be put or pushed into another. * The string used for indentation can be specified (but is global for all code builders. * The code string isn't created while putting the string into the builder. Instead it is stored as an operation that is used to generate the string when calling finalize(). This makes indentation consistent when putting one CodeBuilder into another. I'd also like to note that Google's Protocol Buffer source has a similar need, but I like my API better :) https://github.com/google/protobuf/blob/master/src/google/protobuf/io/printer.cc https://github.com/google/protobuf/blob/master/src/google/protobuf/compiler/cpp/cpp_file.cc
Re: D-Man culture
On Monday, 20 June 2016 at 14:14:06 UTC, Martin Tschierschke wrote: On Sunday, 19 June 2016 at 15:01:33 UTC, Seb wrote: Hi, I am not sure how much you have heard about the D-Man, but in Japan there is an entire culture based on the D-Man! As I learned about this by accident (and even Walter didn't know about it), I thought I share this great movement with the DLang community! [...] Funny stuff! I found this link useful: http://dlangcomicstrips.tumblr.com/ These are awesome, recommend the read.
Re: The Official D Blog is Live
On Friday, 3 June 2016 at 19:33:31 UTC, Mike Parker wrote: The D Blog was born at DConf this year. With help from Jack Stouffer, it is now live at: http://dlang.org/blog/ I think each post should have an author displayed. While this likely will be the same person, I think it is good to have it called out repeatedly so one doesn't have to find the first post to see who is posting. It will also make it very clear when there is a guest poster.
Re: My ACCU 2016 keynote video available online
On Tuesday, 17 May 2016 at 08:42:42 UTC, Bill Hicks wrote: And here you go again with your borderline racist jokes. Not very cool. If you honestly want to find out if it's "confusing to Africans", I suggest you go to a black neighborhood and ask them. Haha, that is probably the most racist statement. When you say "black neighborhood" are you talking about in Africa or Americans in the US?
Codebuilder with line info insertion
One of the things that can be really annoying about using string mixin's, especially when there is a lot of code, is that the compile complains about syntax errors on a line within the mixin that doesn't exist in the code. While at the D Conference this issue was mention along with the file/line feature of function calls. It got me thinking about a code builder I had been using in ProtocolBuffer[1]. I just checked and found that the use of the #line language feature combined with the file/line feature allowed for providing better information about where a mixin went wrong. So I pulled out the code and packaged it for dub[2]. Documentation is lacking in examples, but is used with ProtocolBuffer[3]. It uses a put/push/pop approach to provide some freedom in organizing the code; but I'll admit doesn't help readability (the call to finalize will pop all code elements push to the stack). This package doesn't do too much to help with building code, one of the main parts it provides is pretty printing (indenting) which isn't important for a mixin. So please feel free to send of suggestions from experience trying to use it, I won't consider the API stable at this point. Since ProtocolBuffer support D1 and D2, so does this library. Instead of -- test.d-mixin-4(4): Error: semicolon expected, not '}' I get -- test.d(11): Error: semicolon expected, not '}' - import codebuilder.structure; void main() { mixin(genCode); // Line 4 } auto genCode() { auto cb = CodeBuilder(1); cb.put("struct m {"); cb.push("}"); // Line 11 cb.put("int a"); // Missing semicolon return cb.finalize; } - 1. https://github.com/JesseKPhillips/ProtocolBuffer/ 2. http://code.dlang.org/packages/codebuilder 3. https://github.com/JesseKPhillips/ProtocolBuffer/blob/master/conversion/dlang.d
Re: D-Day for DMD is today!
On Sunday, 23 August 2015 at 05:17:33 UTC, Walter Bright wrote: https://github.com/D-Programming-Language/dmd/pull/4923 We have made the switch from C++ DMD to D DMD! Many, many thanks to Daniel Murphy for slaving away for 2.5 years to make this happen. More thanks to Martin Nowak for helping shepherd it through the final stages, and to several others who have pitched in on this. This is a HUGE milestone for us. Much work remains to be done, such as rebasing existing dmd pull requests. Thanks in advance for the submitters who'll be doing that. I hope you aren't too unhappy about the extra work - it's in a good cause! Should we be looking to put out a DMD 2.069 beta to get more hands on testing it early?
Re: Scriptlike v0.8.0
On Sunday, 14 June 2015 at 01:28:18 UTC, Nick Sabalausky wrote: A bunch of new updates to Scriptlike: A library to aid in writing script-like programs in D. Home: https://github.com/Abscissa/scriptlike Dub: http://code.dlang.org/packages/scriptlike Full changelog: https://github.com/Abscissa/scriptlike/blob/master/CHANGELOG.md I've begun utilizing this in scripts I'm building, to help get things done faster and more consistently. I've combined it with dub because dub will grab the build off the web, but it also makes scripts a little heavier. I really like having the bulk of Phobos imported. I'm very fond of the new std.process, so much better than powershell
Re: Martin Nowak is our new release czar
On Thursday, 5 February 2015 at 00:07:37 UTC, Andrei Alexandrescu wrote: Andrew Edwards, our former release czar, declined his czardom because he went to college. Thanks and good luck! He left a void of power. After a period of turmoil and intestine political fights, we have a new, ruthless czar: Martin Nowak. He plans to put us on a path of regular, predictable 6-week releases, thus ending the D Middle Ages. Please throw your hat in the air with me to hail the new czar! :o) Andrei Martin, thank you for stepping up.
Re: This Week in D: Issue #4
On Monday, 2 February 2015 at 04:57:10 UTC, Adam D. Ruppe wrote: I can't believe it, but yet another week has already passed, so up late to release this again! http://arsdnet.net/this-week-in-d/feb-01.html Early bird registration open for DConf, 2015 Vision released, GUI and Windows development on the forums. Today's tip is about class destructors, and Project Spotlight makes a return to introduce simpledisplay.d, in the first in what will become a series that walks us through making a bit of a little game in D. (Expect this to not be each week, it takes me a long time to write the project spotlight and I've been very busy lately and expect to continue being busy in the coming weeks. I'll probably try to do it every other week rather than every week.) http://www.reddit.com/r/programming/comments/2uhgzr/this_week_in_d_2015_vision_released_tip_on/ https://twitter.com/adamdruppe/status/562112301248290816 I'm not sure if every week needs a post to reddit. You're likely to increase the number of people who feel it is spam: https://www.reddit.com/r/programming/comments/2uhgzr/this_week_in_d_2015_vision_released_tip_on/co8v9y5 Besides, there may be weeks we want to obtain more attraction and that can be hard to do if every week is always posted. Remember, those who have found this week interested are either following it with RSS, this forum, or /r/d_language
Re: 2015 H1 Vision
On Sunday, 1 February 2015 at 01:17:41 UTC, Andrei Alexandrescu wrote: Hello, Walter and I have been mulling for a while on a vision for the first six months of 2015. http://wiki.dlang.org/Vision/2015H1 This is stuff we consider important for D going forward and plan to work actively on. We encourage the D community to focus contributions along the same lines. While a don't see the content as disagreeable, I do find it to be a lot to focus on for the next 6 months. * Improve language stability * Memory Management * Safety * C++ integration These all seem like that could deserve their own 6 months of focus. These should all get work, but it just seems that if you're going to take priority on something it shouldn't be spread across so many large tasks. Or maybe there just needs to be a list of things not taking priority.
Re: Multiple alias this is coming.
On Thursday, 18 September 2014 at 20:11:12 UTC, IgorStepanov wrote: Do you ask about alias this or about it multiple usage. Multiple usage is similar to single, but multiple:) Just an FYI, bearophile is very knowledgeable about D and one of the oldest community members, he holds the record for most bugs opened. This doesn't mean he knows everything, but it certainly makes it clear he was asking, why would you want to use multiple alias this. As others mention kind of like why would you want to use multiple inheritance.
Re: dmd front end now switched to Boost license
On Friday, 13 June 2014 at 00:31:32 UTC, Walter Bright wrote: https://github.com/D-Programming-Language/dmd/pull/3655 Glad to hear it. Boost is such a simple license.
Re: Pushing D's mixin to the limits: Project Euler Problem 61 from Ruby to D by David Oftedal
On Thursday, 12 June 2014 at 20:35:39 UTC, Rounin wrote: Hey there! Yeah, to expect people to register on LiveJournal in this age of Facebook... Sorry about that; It must have been to deter the spammers. I don't leave comments if it is run through facebook, maybe one day. There should be settings in LJ to allow anonymous comments. Its what I've done (I also turned off approval since I've had good comments come in and no spam).
Re: Embarrassment of riches: another talk came online today
On Wednesday, 11 June 2014 at 18:06:03 UTC, justme wrote: I cannot accept 10. .iota; // The space here is unacceptable. Please have the programmer change 10. to 10.0 so that we have 10.0.iota; // Cleaner, obvious, and doesn't look like a typo. Thank you. The point wasn't about how best to fix the problem, it was about grammar parsing and what was legal/illegal. 10..iota doesn't parse 10. .ioat does 10.0.iota or 10F.iota are proper solutions for readability.
Re: Offtopic: AMA (Was: Interview at Lang.NEXT)
On Friday, 6 June 2014 at 20:27:45 UTC, Ary Borenszweig wrote: On 6/6/14, 5:25 PM, Tourist wrote: On Friday, 6 June 2014 at 19:27:35 UTC, Ary Borenszweig wrote: AMA is kinda reddit thing. http://www.reddit.com/r/IAmA/comments/1nl9at/i_am_a_member_of_facebooks_hhvm_team_a_c_and_d/ Interesting, I didn't know that. Thanks! What gets me is that there are two acronyms to learn. IAMA = I Am A AMA = Ask Me Anything So: I'm doing an IAMA, AMA. For a while, I thought people were just lazy and AMA was just the 'am a part.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Saturday, 31 May 2014 at 18:12:12 UTC, John Colvin wrote: I think you've misunderstood him. You say in the article D does not provide decltype, he is saying that this is misleading: D does but it's just called typeof instead. No, I understood and had adjusted the article with D does not provide a decltype as typeof already does the same thing; I think this is ok since I'd already made use of typeof to assert expected types without explanation. Anyway, I've got Part 6 out there and it looks like I'll have 2 more short parts which follow.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Saturday, 31 May 2014 at 07:32:22 UTC, Kagamin wrote: What do you mean D does not provide a decltype? typeof(cx) my_cx2 = cx; I'll blame this on my poor knowledge of C++, at this time typeof in C++ does not appear to compile, in the way I'm trying to use it. I thought using typeof in C++ would result in the same answer as the deduction auto provides. From that point of view, there is no need for decltype, because typeof already gives you the actual type in D (which will be the same as the type at declaration).
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Friday, 30 May 2014 at 10:56:30 UTC, Andrei Alexandrescu wrote: Nice! I'll post it tomorrow on reddit and friends. You have an unmatched brace after assert(a2[].all!(x = x == 0));. Andrei Actually a bunch of unmatched braces (formatter eats the closing one?) and at least one ;; instead of ;. -- Andrei It is not unmatched, the whole article is one big program (with the exception of the conclusion), the final brace is at the end: static int[100] a3; assert(a3[].all!(x = x == 0)); } Though the ;; is just an accident.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Friday, 30 May 2014 at 11:31:18 UTC, safety0ff wrote: On Friday, 30 May 2014 at 04:21:18 UTC, Jesse Phillips wrote: 1. http://he-the-great.livejournal.com/52333.html Note that in the following code: import core.memory : GC; int* pxprime = cast(int*)GC.malloc(int.sizeof); version(none) assert(pxprime); // possibly zero GC.malloc currently doesn't initialize the memory if NO_SCAN is specified as attribute. I expect malloc to not initialize ever, that was the point. Initialization can be done with calloc. Also, I don't understand why half of your asserts have version(none) (it's distracting.) I can't guarantee the assert to pass, as the comment mentions it is possibly zero, which would cause failure. Also note that you're not dereferencing pxprime, I'm not sure if its intentional. Thanks, was intending to dereference. Thank you for feedback.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Thursday, 29 May 2014 at 13:11:52 UTC, Steven Schveighoffer wrote: IIRC, the entire section of global TLS data is initialized, and is all contiguous memory, so it would be anti-performant to initialize all but 4 bytes. int x2; float f2; These are both TLS and they init to different values, I suppose: float f2prime = void; would mean f2prime is 0 and not float.init. Otherwise what you state is kind of what I was expecting. Note: struct X { int a; int b = void; // also initialized to 0. } This is because X must blit an init for a, and it would be silly to go through the trouble of blitting X.init to a, but not b. Especially, for instance, if you had an array of X (you'd have to blit every other int!) -Steve Thanks for the bonus example.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Thursday, 29 May 2014 at 10:41:59 UTC, Kagamin wrote: On Wednesday, 28 May 2014 at 05:40:26 UTC, Jesse Phillips wrote: When he explained why C++ inferred a const int type as int, he tripped me up because D does drop const for value types. Hmm, this bit me (doesn't compile): void f(in char[] s) { auto s1=s; s1=s; } I suppose at this point you know: void f(const(char)[] s); I understanding that expected may not be the same as simple. But you did ask for s1 to be const then tried to modify it.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Thursday, 29 May 2014 at 11:08:03 UTC, Leandro Lucarella wrote: I think void means you don't know what the value is, not is a random value or a value different from the default (which is impossible for stack values, at least if the idea behind void is to avoid the extra runtime cost ;). The language docs state, If the Initializer is void, however, the variable is not initialized. Which I suspect is false in the case of module scope and as Steven pointed out, other times doing special don't init is costly.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Wednesday, 28 May 2014 at 07:21:56 UTC, dennis luehring wrote: woudl be nice to have some sort of example by example comparison or as an extension to the page http://dlang.org/cpptod.html I've got two posts complete[1]. Since C++ and D are exactly the same for the majority of the code I'm only showing D and talk of C++'s choice. While the rules governing D's behavior are fairly simple I feel that I've expanded on the content enough to provide useful information beyond fixing C++'s problems. 1. http://he-the-great.livejournal.com/52333.html
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Wednesday, 28 May 2014 at 14:39:53 UTC, anonymous_me wrote: The first line: int x2; // (at global scope) The x2 resides in Thread Local Storage (TLS). A __gshared would put it in global scope. Still initialized to int.init which is zero. D doesn't have global scope. C++ does not do TLS but that isn't relevant to the no cost position that C++ is taking.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Wednesday, 28 May 2014 at 22:42:03 UTC, Ali Çehreli wrote: However, those expectations are based on the inside-out syntax of C. Naturally, wanting to be consistent, especially compared to C, D should deviate from that syntax. I don't get to read the original email, but I agree with the examples you pull out. D's array declaration syntax is so nice. The support for C style syntax is unfortunate though.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Wednesday, 28 May 2014 at 04:48:11 UTC, Jesse Phillips wrote: I did a translation of most of the code in the slides. http://dpaste.dzfl.pl/72b5cfcb72e4 I'm planning to transform it into blog post (or series). Right now it just has some scratch notes. Feel free to let me know everything I got wrong. Hoping someone can confirm or deny this thought. int x2prime = void; // (at global scope) Since x2prime is module variable, I would expect that the compiler will always initialize this to 0 since there isn't really a performance hit. Or is using void guarantee it won't get initialized (so much value in that guarantee)?
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Tuesday, 27 May 2014 at 16:42:35 UTC, Andrei Alexandrescu wrote: http://www.reddit.com/r/programming/comments/26m8hy/scott_meyers_dconf_2014_keynote_the_last_thing_d/ https://news.ycombinator.com/newest (search that page, if not found click More and search again) https://www.facebook.com/dlang.org/posts/855022447844771 https://twitter.com/D_Programming/status/471330026168651777 Andrei I did a translation of most of the code in the slides. http://dpaste.dzfl.pl/72b5cfcb72e4 I'm planning to transform it into blog post (or series). Right now it just has some scratch notes. Feel free to let me know everything I got wrong.
Re: Scott Meyers' DConf 2014 keynote The Last Thing D Needs
On Wednesday, 28 May 2014 at 05:30:18 UTC, Philippe Sigaud via Digitalmars-d-announce wrote: I did a translation of most of the code in the slides. http://dpaste.dzfl.pl/72b5cfcb72e4 I'm planning to transform it into blog post (or series). Right now it just has some scratch notes. Feel free to let me know everything I got wrong. That's a good idea. I think most of us did that while listening to the talk. I kept telling myself: 'oh wait, that'd simpler in D' or 'that does not exist in D'. As for the class inheritance problem, I'd also be interested in an answer. When he explained why C++ inferred a const int type as int, he tripped me up because D does drop const for value types. But D does the simple to explain thing, may not be the expected thing (seen questions about it in D.learn), but it is simple to explain.
Re: Livestreaming DConf?
On Saturday, 10 May 2014 at 17:06:47 UTC, Joakim wrote: I demand a telehuman stream: http://youtube.com/watch?v=06tV60K-npw Facebook has one of those, right? ;) Haha, I'm disappointed they didn't go all the way back to landline.
Re: D Breaks on to the TIOBE Top 20 List.
On Friday, 25 April 2014 at 19:51:22 UTC, Adam Wilson wrote: I know we don't place much value in TIOBE What do you mean, we're in the top 20! Now's the time to put value in TIOBE :)
Re: Interesting rant about Scala's issues
On Friday, 4 April 2014 at 09:16:26 UTC, Walter Bright wrote: It's supposed to be by adding your own opImplicitCast overload, but that isn't implemented yet. Wait, this is back? What else did the community get wrong when trying to interpret discussions? http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel#FutureDirections Previously proposed, but now dropped: * opImplicitCast * Separating arrays and slices (T[new]) (see NG:digitalmars.D/95225) Demise of T[new] NG:digitalmars.D/98602 * Make references and arrays library types (see NG discussion) * this() for structs. * Make array literals immutable. * Remove 'new'. * Remove C-style struct initializers.
Re: DFL can be used by D2.065
On Wednesday, 26 March 2014 at 06:35:56 UTC, FrankLike wrote: If you are programming on win32,now,DFL can be used by D2.065. Please git clone http://github.com/FrankLike/dfl Open the folder w32 -dflexe double click the 'makedflexe.bat' file,after some seconds ,press the 'Enter key' ,after some seconds,dfl.lib,dfl.exe are all in you d install folders('lib' and 'bin') ,that's all ok. Thanks Christopher E. Miller. You should make your changes into a pull request. Most people using DFL are tracking Rayerd's repo.
Re: DFL can be used by D2.065
On Thursday, 27 March 2014 at 07:39:47 UTC, Jordi Sayol wrote: Is there somebody maintaining the GTK branch of DFL? No.
Re: My D book is now officially coming soon
On Monday, 3 March 2014 at 18:39:34 UTC, bearophile wrote: Adam D. Ruppe: My goal is to act as a nice complement to Andrei's book, not to repeat it, so while I do cover a lot of language features, I try to do them in the context of bigger picture tasks. So hopefully, the books can go together and reinforce each other. Congratulations Adam :-) Now among the printed books about D there's Andrei book, the book about Tango, and your one. Plus there's Ali Çehreli online book, and probably more. Compared to other new languages like Scala there are far less books about D, but the situation is improving :-) Bye, bearophile I believe there is a Japanese book for ~0.110 http://www.prowiki.org/wiki4d/wiki.cgi?DevelopmentWithD#OtherLanguagesnon-English But the link is dead and I really couldn't/can't confirm that the book was print.
Re: Scriptlike: New lib to aid in writing script-like programs
On Tuesday, 11 February 2014 at 11:38:06 UTC, Nick Sabalausky wrote: I've released a little one-module utility, Scriptlike, to help simplify writing shell script-like programs in D: https://github.com/Abscissa/scriptlike It looks like you've covered a lot of the short comings for doing some cmdln scripting. It also sounds like it would fit right into what I was doing (I hand only covered the user input portion) https://github.com/JesseKPhillips/JPDLibs/tree/cmdln (I really probably should move it into its own project, maybe I should instead submit mine to yours? Though I use Boost License). [OT] I also want to thank those behind std.process, std.path, and std.algorithms these things have been really awesome and I use heavily (great improvements). Current Features: - A thin wrapper over std.path and std.file that provides a dedicated Path type specifically designed for managing file paths in a simple, reliable, cross-platform way. No more dealing with slashes, paths-with-spaces, calling buildPath, normalizing, or getting paths mixed up with ordinary strings. Personally I've found the new std.path makes this much easier, I'm not user how you can address paths-with-spaces as this depends on who you call, internally I don't need to worry. But maybe this simplifies it more and is still worth it. - Optionally enable automatic command echoing (including shell commands, changing/creating directories and deleting/copying/moving/linking/renaming both directories and files) by setting one simple flag: bool scriptlikeTraceCommands Command echoing, and dry run are both valuable. - Most typical Phobos modules automatically imported. Who needs rows and rows of standard lib imports for a mere script? - Less-pedantic filesystem operations for when you don't care whether it exists or not: existsAsFile, existsAsDir, existsAsSymlink, tryRename, trySymlink, tryCopy, tryMkdir, tryMkdirRecurse, tryRmdir, tryRmdirRecurse, tryRemove: All check whether the source path exists and return WITHOUT throwing if there's nothing to do. This is my biggest gripe with the current available functions! - One simple call, runShell, to run a shell command script-style (ie, synchronously with forwarded stdout/in/err) from any working directory. (Also automatically works around DMD #10863 without waiting for v2.066 - BTW, thanks all involved who fixed that.) Aside from the bug, I don't understand what this provides over execute. - One simple function, fail(string msg), to help you exit with an error message in an exception-safe way. (Does require some minor boilerplate added to your main().) I've just been using exceptions, Fail should take a return code too.
Re: Scriptlike: New lib to aid in writing script-like programs
On Wednesday, 12 February 2014 at 00:07:42 UTC, Nick Sabalausky wrote: As for the license, if you don't mind switching to zlib then great, just go ahead and submit a pull request if you'd like to. But I'm not married to zlib license or anything. My reasons for using zlib license are relatively minor, and I'm not opposed to switching to Boost, especially since it's already the Phobos license after all. What are your thoughts? I've been using Boost to be compatible Phobos. I haven't released anything which I feel needs a more restrictive license (zlib I think is permissive). So with Scriptlike, I'm hoping to avoid the need to ever deal with slashes at all, because all the clutter and meticulous care of always doing it the proper std.path-way is (hopefully) hidden behind-the-scenes via the Path type. Any hard coded paths I'll use / and buildPath for everything else. My experience so far has been positive on Windows (but maybe I still have some legacy conversions from the old days). Path.toString() automatically quotes paths correctly when they contain spaces. So you can just pass it off to spawnShell or whatever and it's automatically all ready-to-go. Don't even need to call the std.path.escape*() funcs (which I've had trouble with on windows anyway, although DMD #10863 is apparently fixed in master now, so that should at least help). Of course, if for any reason you need to keep the path un-quoted, there's Path.toRawString() for that. Ah, I use execute(char[][]) and pipeProcess(char[][]) these bypass the shell (it seems) and require that the arguments aren't quoted. I prefer these because: auto cmd = [dmd]; cmd ~= file.d;//... Is just a nice way to build a command. Do you think enabling dry run should automatically enable command echoing? Yes, I can't think of a reason I wouldn't want it to. - Less-pedantic filesystem operations for when you don't care whether it exists or not: existsAsFile, existsAsDir, existsAsSymlink, tryRename, trySymlink, tryCopy, tryMkdir, tryMkdirRecurse, tryRmdir, tryRmdirRecurse, tryRemove: All check whether the source path exists and return WITHOUT throwing if there's nothing to do. This is my biggest gripe with the current available functions! Yea, I'm constantly making wrappers for those things in my scripts. Finally decided to just toss them into a common lib. I *do* think std.file's pedantic behavior with those does make a lot of sense in the general case. I'm not sure that I'd even want std.file to relax those checks by default. But for simple shell-script-like stuff, it does tend to be more bother than benefit. Yeah, going back to being strict is harder. - One simple call, runShell, to run a shell command script-style (ie, synchronously with forwarded stdout/in/err) from any working directory. (Also automatically works around DMD #10863 without waiting for v2.066 - BTW, thanks all involved who fixed that.) Aside from the bug, I don't understand what this provides over execute. First of all, spawn(Process|Shell)().wait() is a better comparison for runShell than execute(Process|Shell). The execute functions, at least by default, hide the child's stdout/stderr. Granted, execute does capture the child's stdout, so you *could* output it yourself afterwords, but then the user doesn't see the output in real-time (and forget about anything interactive), so that's not a good solution. Hmm, I've been needing to retain the output and do things with it quite a bit. Haven't played with it, but you may be able to get interaction by using pipeProcess, but then there is just more work to make it act like spawn. - runShell optionally takes a Path to use as the initial working directory to launch the process from (and then uses scope(exit) to automatically chdir back when the process finishes). Nothing in std.process does that right now, although there is a request in bugzilla for it: http://d.puremagic.com/issues/show_bug.cgi?id=11363 That is likely quite useful. Plus there's the automatic command echoing (not that I couldn't do that in some more direct std.process wrappers, like I do for certain std.file functions). I wonder if a generic wrapper could be created to handle this.
Re: Scriptlike: New lib to aid in writing script-like programs
On Wednesday, 12 February 2014 at 00:07:42 UTC, Nick Sabalausky wrote: I think that would fit very well into Scriptlike, as long as you don't mind it all being in the same module as the rest of scriptlike, and preferably using same formatting style (not that that's strictly important, but consistency is nice of course). Forgot that I wanted to say, I think considering the goals of the files it may be reasonable to have them separate. Solving the extra import can be done with something like package.d, but maybe you also want to reduce file count for some reason?
Re: Scriptlike: New lib to aid in writing script-like programs
Personally the biggest problem I have are libraries which depend on other libraries. A few of my scripts ended up growing a library I chopped off, but I haven't come up with a way to segregate it from needing XML/ini/cmdln libraries too. On Wednesday, 12 February 2014 at 02:15:38 UTC, Nick Sabalausky wrote: 1. If you download the source files manually (maybe someone who isn't onboard with git or dub yet?), there's more to do: Either download more than one file, or download one file and unzip. Versus just download this file and use it. Personally pulling in one file or many is the same to me. If it comes in a zip, that seems reasonable for those not gitting (git provides zipping a folder, not subfolders). 2. You still have to either pass all the files to DMD, or add an extra -Ipath to your RDMD call. That is true with the single file, so I don't see why this would be relevant. What is nice about keeping them separate is that people will be able to choose what type of script they will write. And I doubt there will be any common helper functions between these to modules.
Re: Scriptlike: New lib to aid in writing script-like programs
On Wednesday, 12 February 2014 at 04:59:11 UTC, Nick Sabalausky wrote: But I may well just be paranoid about multiple files being a problem. Unless there's objections (don't seem to be so far) I may go ahead and split it up with a package.d. If it turns out to be an issue, I could just deal with it then. Ok, I'll work on a pull request following your formatting as a separate file. You can take the merging/not merging from there.
Re: dmd 2.064.2
On Thursday, 7 November 2013 at 01:12:14 UTC, Jonathan M Davis wrote: I had assumed that there was a 2.063.1 prior to 2.063.2 but clearly wasn't paying enough attention. - Jonathan M Davis Found the explanation: http://lists.puremagic.com/pipermail/dmd-internals/2013-June/006569.html The v2.063 was an aborted 'release'. 2.063.1 is what was released. (The compiler libraries are unchanged, what happened was the documentation was fixed.)
Re: Funny coverage of the recent reddit/hackernews chatter
On Tuesday, 15 October 2013 at 17:59:38 UTC, Tourist wrote: On Tuesday, 15 October 2013 at 17:47:54 UTC, Andrei Alexandrescu wrote: http://www.fastcolabs.com/3019948/more-about-d-language-and-why-facebook-is-experimenting-with-it Andrei Google shows a rise in interest as well: http://www.google.com/trends/explore?q=d+language#q=d%20languagecmpt=q And the dlang search: http://www.google.com/trends/explore?q=d+language#q=dlangcmpt=q Great article!
Re: Start of dmd 2.064 beta program
On Monday, 14 October 2013 at 10:00:01 UTC, Rory McGuire wrote: On Mon, Oct 14, 2013 at 11:35 AM, Benjamin Thaut c...@benjamin-thaut.dewrote: My bad. German dates... We write the the day first then the month and then the year. Americans seem to read dates as October 14th, 2013 which is way they write numeric dates in such an odd way :D. Since I realized that is the reason for it I've been much better at noticing the location of a person who wrote a date down. I've chosen to try writing dates using the ISO 2013-10-14 Always causes confusion, thus leading people to actually figure out the numbers. :) Of course programmers don't have an issue with it. Sadly, it can't be shortened: 13-10-14 or 10-14 I'm also ok with 2013/10/14 even though ISO isn't.
Re: Facebook is using D in production starting today
On Friday, 11 October 2013 at 00:36:12 UTC, Andrei Alexandrescu wrote: Today I committed the first 5112 lines of D code to Facebook's repository. The project is in heavy daily use at Facebook. Compared to the original version (written in C++) we've measured massive wins in all of source code size, build speed, and running speed. In all likelihood we'll follow up with a blog post describing the process. Andrei This is fantastic news! And also the time when having an upvote button would be awesome. They can be placed here though: http://www.reddit.com/r/d_language/comments/1o6p55/first_d_language_commit_at_facebook/
Re: [Library Release] dproto
On Tuesday, 8 October 2013 at 08:11:34 UTC, Kagamin wrote: On Saturday, 5 October 2013 at 20:56:21 UTC, Matt Soucy wrote: message Point { optional int32 x = 1 [default=166]; required int32 y = 2; optional string label = 3; message Coord { required int32 a = 1; required int32 b = 2; } } You can get a structure that behaves as: struct Point { int x=166; int y; string label; struct Coord { int a,b; } } Should it be really like that? If you just declare Coord struct, it doesn't place a Coord instance in Point. It is correct. A message defined in another is just namespacing as it is in D. If you want to include the type then the message needs a field of that type. Groups are a way to combine this, but they are deprecated so who'd want to support that.
Re: [Library Release] dproto
On Tuesday, 8 October 2013 at 20:50:22 UTC, Matt Soucy wrote: Thanks for the tip - I actually did find this one when I started using this, however I found it on another page that hadn't been updated (that I ironically can't find now), so I wrongfully assumed that it was abandoned. I did find the github page, but I wasn't thrilled by it. You're thinking: https://256.makerslocal.org/wiki/index.php/ProtocolBuffer I've been updating it from that Pros for opticron's: Much more idiomatic code Supports D1 Much better unit tests Pros for mine (highly based on opinion): Exposes slightly more convenient helpers (In my opinion) slightly easier to read Generated code looks like a POD struct, though with some hidden attributes (optional variables support .clean(), .exists(), instead of looking like myStruct.foo_exists()) For the D2 output I've got it really close to POD. It declares fields as Nullable!T meaning myStruct.foo.isNull would check availability. I was intending to distinguish required/optional with this, but that would remove error checking (which I don't think is there yet). Basically, mine is much more simplistic, which is both good and bad. I'd like to improve mine a bit more, and the one you pointed me at is pretty good. It gave me some things to improve on. Go for it, have fun.
Re: [Library Release] dproto
This is more of an FYI. I've been using/updating https://github.com/opticron/ProtocolBuffer Boost License And while it doesn't have any helper functions, it can generate source at compile time. Generates D1 code if requested Been using it to walk OSM data for no particular reason https://gist.github.com/JesseKPhillips/6051600
Re: I'm porting some go code to D
On Friday, 23 August 2013 at 23:54:55 UTC, Rory McGuire wrote: So I'm porting so #golang code to #dlang and there is all these blasted go statements.So I thought I'd give implmenting it in D a shot. What do you guys think? Fire away :). I'd suggest posting long snippets of code to https://gist.github.com/ or http://dpaste.dzfl.pl/ A couple lines is fine but whole implementations, definitely want a more color friendly solution.
Re: A new blog article detailing the alternative function syntax
On Thursday, 8 August 2013 at 18:53:47 UTC, Gary Willoughby wrote: I've just finished a new blog article on the subject of alternative function syntax in D. I guess this is pretty straightforward stuff to all the people here but was a major source of confusion to me (and others?) when first learning D. I personally think this is more confusing than many people think. Hopefully this will quickly arm a developer with knowledge to be able to read and understand most D code. Let me know if i've missed anything important. http://nomad.so/2013/08/alternative-function-syntax-in-d/ I'll post to reddit in the morning. The second non-member function example is part of the -property controversy. foo = 123; // called as foo(123) Not sure if you'd want that mentioned.
Re: echo: -n, the next installment
On Friday, 26 July 2013 at 00:38:46 UTC, John Colvin wrote: After a few weeks of not getting around to it, here's my second post: http://foreach-hour-life.blogspot.co.uk/2013/07/the-first-corner-n-for-echo.html BTW, std.getopt is a good way to parse arguments. Not sure if it is relevant to what you want to teach, but should generally be preferred over handwritten.
Re: Article series about patterns idioms in D
This statement kind of worries me: It seems like every minor release of D works different than previous ones. Why would you release a version if it wasn't different from the previous? It would be nice if one could give the oldest known working compiler, but there are still changes to old behavior which means some code would have more specific compiler versions needed. Work is being done, but the issue will exist for some time so process to make it less painful is being put in place.
Re: Started: Formal Review of std.serialization
On Monday, 10 June 2013 at 16:14:32 UTC, Jesse Phillips wrote: Please discuss on official thread: http://forum.dlang.org/post/adyanbsdsxsfdpvoo...@forum.dlang.org This library is authored by Jacob Carlborg and has been around through the D1/Tango days. Review is being suspended while we work out requirements for reviewing. If another member wishes to step up and be a review manager for another project, you are welcome to and begin a review. I'll being working on documenting the review process itself. http://wiki.dlang.org/Review_Queue
Re: DConf 2013 Day 3 Talk 1: Metaprogramming in the Real World by Don Clugston
On Tuesday, 11 June 2013 at 21:55:48 UTC, Adam D. Ruppe wrote: ...and if you sell it, unless you own multiple houses, you're now homeless. And housing prices are up, so getting a new house will erase the gains you got from selling the old house! So I don't think raising property values makes me wealthier at all. But when housing cost goes up the government can take more from you on anything based on your wealth. Just because you can't pay because your wealth is all chewed up in material things like a house, who cares!
Started: Formal Review of std.serialization
Please discuss on official thread: http://forum.dlang.org/post/adyanbsdsxsfdpvoo...@forum.dlang.org This library is authored by Jacob Carlborg and has been around through the D1/Tango days.
Re: dmd 2.063 released with 260 bugfixes and enhancements
On Thursday, 30 May 2013 at 15:31:36 UTC, F i L wrote: Steven Schveighoffer wrote: Holy changelog! That is awesome. Please send kudos to whoever took the time to create that. +1, excellent work on that changelog. This is a really nice changelog. The change and rational section is perfect!
Re: dmd 2.063 released with 260 bugfixes and enhancements
On Thursday, 30 May 2013 at 22:04:07 UTC, Andrej Mitrovic wrote: On 5/30/13, Andrei Alexandrescu seewebsiteforem...@erdani.org wrote: Hello, We seem to have a regression affecting the zipped release: http://d.puremagic.com/issues/show_bug.cgi?id=10215 But I can't recreate this in git-head. It must have been a specific commit the release is based on that introduced this behavior. I don't know how it went through the autotester unnoticed, this is a pretty major bug. Perfect chance to try out the new release process. Patch 2.063 and release 2.063.1.
New std.uni Approved
With a vote 15/0 the new standard std.uni is approved to replace the existing module. Several people were in favor of the name changing to std.unicode others opposed unless it was part of a Phobos restructure. Such is up to the core devs to decide. Congrads Dmitry.
Re: DConf 2013 Day 1 Talk 7: Panel with Walter Bright and Andrei Alexandrescu
On Wednesday, 22 May 2013 at 13:08:50 UTC, Andrei Alexandrescu wrote: Destroy: http://www.reddit.com/r/programming/comments/1etxqy/dconf_2013_day_1_talk_7_panel_with_walter_bright/ Andrei I'm still not sure what the plan is on this, but Kickstarter backers should be informed that these videos are posted from the Kickstarter update system: http://www.kickstarter.com/projects/2083649206/the-d-programming-language-conference-2013-0/posts
Vote started for std.uni
Please cast your vote for std.uni at: http://forum.dlang.org/post/zczqphzzqnxvjflle...@forum.dlang.org
Re: Vote started for std.uni
On Monday, 20 May 2013 at 08:15:48 UTC, deadalnix wrote: On Monday, 20 May 2013 at 06:19:29 UTC, Jesse Phillips wrote: Please cast your vote for std.uni at: http://forum.dlang.org/post/zczqphzzqnxvjflle...@forum.dlang.org Overall it looks great. I have one question l is it possible to build tries at runtime using CTFE ? Anyway, as long as this is implementable, this have my vote. Second thing, it is probably too late, but let's ask anyway. Is that possible to rename the thing as std.unicode ? Please place this in the vote thread, or it will not be counted when I get to tallying.
Re: DConf 2013 Day 1 Talk 5: Using D Alongside a Game Engine by Manu Evans
On Friday, 17 May 2013 at 13:28:20 UTC, Andrei Alexandrescu wrote: Great talk. Vote up! http://www.reddit.com/r/programming/comments/1eiku4/dconf_2013_day_1_talk_5_using_d_alongside_a_game/ Andrei These announcements should also be an update through the Kickstarter system.
Re: DConf 2013 Day 1 Talk 2: Copy and Move Semantics in D by Ali Cehreli
On Friday, 10 May 2013 at 12:08:10 UTC, Andrei Alexandrescu wrote: Enjoy! https://www.youtube.com/watch?v=mPr2UspS0fE Andrei These need to be updates on Kickstarter too.
Re: Shameless autopromotion : type safe tagged union in D
On Friday, 10 May 2013 at 17:56:14 UTC, Andrei Alexandrescu wrote: A general note about posting to reddit: it often happens that posts from infrequent posters go to spam by means of some automatic rule. When that happens you need to message the moderators and politely ask them to manually instate the post because it's legit. Once you accumulate karma and all, your posts will be auto-approved. Well that is stupid. It would be like StackOverflow closing questions of new users and waiting for people to vote to open.
Re: Formal Review of std.uni
On Sunday, 28 April 2013 at 16:59:18 UTC, Jesse Phillips wrote: Dmitry is attending Dconf, so this review will be 3 weeks (this first week being bonus). All review material should be posted to the review thread. The std.uni module provides an implementation of fundamental Unicode algorithms and data structures. http://forum.dlang.org/post/xbuphdghoyymjajpf...@forum.dlang.org Just a reminder now that the conference is over. std.uni is under review.
Formal Review of std.uni
Dmitry is attending Dconf, so this review will be 3 weeks (this first week being bonus). All review material should be posted to the review thread. The std.uni module provides an implementation of fundamental Unicode algorithms and data structures. http://forum.dlang.org/post/xbuphdghoyymjajpf...@forum.dlang.org
std.process Accepted!
The new std.process by Lars Kyllingstad and Steven Schveighoffer has been accepted with a final count 18/0 On a related note, the voting broke of into several discussions related to how to bring proposed libraries into Phobos. Specifically the issue being that a Phobos module frozen to prevent breaking changes yet these are new modules not getting the most thorough testing before inclusion. Several suggested solutions to this were made; exp/std.exp, warning the module is exp when importing, and a combination of both (place the module in exp without a warning, also place in std publicly importing and placing a warning). I'm not here to change how things are done. It didn't seem there was a consensus, but the hybrid seemed to be fairly appealing. For now I say we continue as before, and work toward this new approach. Voting thread: http://forum.dlang.org/thread/mgstnugckomjpvdgp...@forum.dlang.org
Vote started for std.process
Go here: http://forum.dlang.org/post/mgstnugckomjpvdgp...@forum.dlang.org
Re: Starting Formal Review of std.process
On Thursday, 11 April 2013 at 08:27:24 UTC, Rory McGuire wrote: Hi Jesse, Is there any example code that uses it? The docs provide examples http://www.kyllingen.net/code/std-process2/phobos-prerelease/std_process.html is there something insufficient about them?
Re: Starting Formal Review of std.process
On Thursday, 4 April 2013 at 14:31:43 UTC, Jesse Phillips wrote: The changes for std.process are under review at: http://forum.dlang.org/thread/gclsbrghhjitnfder...@forum.dlang.org std.process is improvements to the existing std.process and is a complete change to the API. The original API remains but these will be going through deprecation. The major change is support for redirecting stdin/stdout/stderr As review has been going for a month, I'm proposing we do a formal review for 1 week followed by a 1 week vote. As there has been no objection, Thursday PST will be the last Review day. Voting will start Friday/Thursday night.
Starting Formal Review of std.process
The changes for std.process are under review at: http://forum.dlang.org/thread/gclsbrghhjitnfder...@forum.dlang.org std.process is improvements to the existing std.process and is a complete change to the API. The original API remains but these will be going through deprecation. The major change is support for redirecting stdin/stdout/stderr As review has been going for a month, I'm proposing we do a formal review for 1 week followed by a 1 week vote.
Re: Crystal
On Sunday, 17 February 2013 at 06:28:09 UTC, Ary Borenszweig wrote: I'd also like to ask you: 1. Do you know whether a similar language exists? Not sure how similar all the goals are (dynamic with static benefits) but there is Magpie: http://magpie.stuffwithstuff.com/
Re: Crystal
On Thursday, 21 February 2013 at 21:59:06 UTC, Jesse Phillips wrote: Doesn't that run on the JVM? I couldn't find what it generates to. It has an interpreter in Java and C++ though. Ok, that sounds really stupid. I thought it had a compiled component, but I don't see that, just looks to be interpreted.
Re: Registration now open on dconf.org
On Thursday, 14 February 2013 at 20:08:48 UTC, Walter Bright wrote: On 2/14/2013 3:25 AM, Dejan Lekic wrote: Andrei, just to confirm, Kickstarter donors do not have to register? For the first 20 at the $250 level and all those above $375 (which includes you), you still have to register (so we know you're coming), but there's no charge. Registering in that case is just letting me know. Probably should clarify for the Kickstarter announcement: Those of you who contributed at the early bird level and above are already registered - looking forward to seeing you there!
Re: DIP22 : Private symbol visibility
On Friday, 1 February 2013 at 09:36:19 UTC, Dicebot wrote: Sorry, did not understand this part. Can you give a more code-ish example? Sorry I can't. If you see code where function is defined, and the compiler complains it is not defined, it can lead to checking imports and supplied files instead of the cause, not accessible.